@acedatacloud/nexior 3.199.0 → 3.200.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/assets/{Auth-Bxu6lPJs.js → Auth-DS0_uIHf.js} +1 -1
- package/dist/assets/{BotPlaceholder-qj2YLdAp.js → BotPlaceholder-BA0YKxqp.js} +1 -1
- package/dist/assets/{Callback-BDBW_46X.js → Callback-Db_Hji8c.js} +1 -1
- package/dist/assets/Console-BZJya_fb.css +1 -0
- package/dist/assets/{Console-Cxf3qaXE.js → Console-CTFTowtj.js} +1 -1
- package/dist/assets/{Consumption-D1DmjLsj.js → Consumption-D1RmP9JZ.js} +1 -1
- package/dist/assets/{Conversation-DVRyMjZO.js → Conversation-BuBCRkJg.js} +1 -1
- package/dist/assets/{CopyToClipboard-BS0IZ5vm.js → CopyToClipboard-CVe6lcyk.js} +1 -1
- package/dist/assets/{Detail-CPKHwE0p.js → Detail-ky3ssuJg.js} +2 -2
- package/dist/assets/{Extra-Ca79F0MR.js → Extra-xCZFW86g.js} +1 -1
- package/dist/assets/{FilePreview-D62u9I_n.js → FilePreview-DafUJX5z.js} +1 -1
- package/dist/assets/{History-fu6-tYtn.js → History-TpjPt3TP.js} +1 -1
- package/dist/assets/{IconPark.vue_vue_type_script_setup_true_lang-DcudsKh_.js → IconPark.vue_vue_type_script_setup_true_lang-BP3XrfrA.js} +1 -1
- package/dist/assets/{ImagePreview-8xggEAtd.js → ImagePreview-eG-HIW6Z.js} +1 -1
- package/dist/assets/{ImageWrapper-JCiqYITj.js → ImageWrapper-DDC_4WBH.js} +1 -1
- package/dist/assets/{Index-BHrhLWTN.js → Index-5eSLjn09.js} +1 -1
- package/dist/assets/{Index-BDw62a42.js → Index-7VYrXzJy.js} +1 -1
- package/dist/assets/{Index-BoZaR7aV.js → Index-B3-HHt4Y.js} +1 -1
- package/dist/assets/{Index-BqkPugf_.js → Index-BQ7ShKbw.js} +1 -1
- package/dist/assets/{Index-D-Aw5cLX.js → Index-Bdq7kZbc.js} +1 -1
- package/dist/assets/{Index-ZAqosxvD.js → Index-BfAi22aW.js} +1 -1
- package/dist/assets/{Index-C5i12gfd.js → Index-BlESXFWQ.js} +1 -1
- package/dist/assets/{Index-CN6Cr1o2.js → Index-BykpMvJP.js} +1 -1
- package/dist/assets/{Index-l2sz3kZe.js → Index-C8qtiAOf.js} +1 -1
- package/dist/assets/{Index-BH1V1Iqn.js → Index-CQnHj1Kl.js} +1 -1
- package/dist/assets/{Index-DlnzVCW0.js → Index-CVsQhNnN.js} +1 -1
- package/dist/assets/{Index-CKjKdeA3.js → Index-CfA4BRUp.js} +1 -1
- package/dist/assets/{Index-aOGN9YGk.js → Index-CfudXEYQ.js} +1 -1
- package/dist/assets/{Index-zJAUpNDF.js → Index-DC62LsSf.js} +1 -1
- package/dist/assets/{Index-tu2qhy29.js → Index-DEMaf1s1.js} +1 -1
- package/dist/assets/{Index-BMZlZqhB.js → Index-DYRcFRu4.js} +1 -1
- package/dist/assets/{Index-CSTXd8gx.js → Index-DYWGa_Ma.js} +1 -1
- package/dist/assets/{Index-yNvxuOZ-.js → Index-D_i4ypBC.js} +1 -1
- package/dist/assets/{Index-iy2_zNpb.js → Index-Dht9bmzl.js} +1 -1
- package/dist/assets/{Index-oYrxdv5B.js → Index-DjSjvLT7.js} +1 -1
- package/dist/assets/{Index-KONl-gyR.js → Index-Dnvo3R3s.js} +1 -1
- package/dist/assets/{Index-CalCfUQZ.js → Index-GKz9CwCJ.js} +1 -1
- package/dist/assets/{Index-tX7U6ka9.js → Index-MIFR-_qM.js} +1 -1
- package/dist/assets/{Index-6_CHK7EV.js → Index-Nur52Njb.js} +1 -1
- package/dist/assets/{Invitees-ASRNDHIx.js → Invitees-C_NW-KMG.js} +1 -1
- package/dist/assets/List-C6L_fXGH.js +1 -0
- package/dist/assets/{List-CquVIuWA.js → List-DPxPzeBf.js} +1 -1
- package/dist/assets/{List-DF6W0AJb.js → List-ythrBRh-.js} +1 -1
- package/dist/assets/List-zFbDrkil.css +1 -0
- package/dist/assets/{Main-B4HQop2H.js → Main-BYYIup5y.js} +1 -1
- package/dist/assets/{Navigator-Bvklo3Gd.js → Navigator-CQ5L2B6_.js} +1 -1
- package/dist/assets/{NoTasks-YcewaUb5.js → NoTasks-rBJZcmkf.js} +1 -1
- package/dist/assets/{NotFound-D9X7oxaR.js → NotFound-CcX-tR6b.js} +1 -1
- package/dist/assets/{OAuthCallback-B-dbQ38J.js → OAuthCallback-DR2hd2-c.js} +1 -1
- package/dist/assets/{Pagination-n5DVrOdP.js → Pagination-BUCCaixA.js} +1 -1
- package/dist/assets/{Status-C26fA_fP.js → Status-BqcKoZHL.js} +1 -1
- package/dist/assets/{Subscribe-BtqjcFEx.js → Subscribe-BlTrawrh.js} +1 -1
- package/dist/assets/{VideoPlayer-CndCLmxS.js → VideoPlayer-CIDiV8W4.js} +1 -1
- package/dist/assets/{_Uint8Array-4l3jEroS.js → _Uint8Array-BIIxv3lW.js} +1 -1
- package/dist/assets/{_baseClone-Db65SBvG.js → _baseClone-Cn2yao34.js} +1 -1
- package/dist/assets/{_baseIteratee-CJ9W-nbE.js → _baseIteratee-CGsjPRhY.js} +1 -1
- package/dist/assets/{_initCloneObject-C7XzV3eb.js → _initCloneObject-CIo8XBzq.js} +1 -1
- package/dist/assets/{add-CIHMDKxi.js → add-B8UNRvc3.js} +1 -1
- package/dist/assets/{all-wallets-D7C3_H-n.js → all-wallets-C0UrEIB7.js} +1 -1
- package/dist/assets/{app-store-CPrYPJvx.js → app-store-DNknDNTC.js} +1 -1
- package/dist/assets/{apple-B8Tg1DiO.js → apple-BURy1iFK.js} +1 -1
- package/dist/assets/{arrow-bottom-DRCbehPe.js → arrow-bottom-Dc93_rRz.js} +1 -1
- package/dist/assets/{arrow-bottom-circle-BxECh6Zt.js → arrow-bottom-circle-DkTjctK8.js} +1 -1
- package/dist/assets/{arrow-left-CbzqvYhx.js → arrow-left-DiOHhAoG.js} +1 -1
- package/dist/assets/{arrow-right-BBruSVMi.js → arrow-right-CmalWc0w.js} +1 -1
- package/dist/assets/{arrow-top-B7u4UMuv.js → arrow-top-Bu6syYUZ.js} +1 -1
- package/dist/assets/{avatar-HrHY9X2h.js → avatar-6RvY7N5P.js} +1 -1
- package/dist/assets/{bank-BMz1T24_.js → bank-BkISHYvx.js} +1 -1
- package/dist/assets/{basic-CcCFvU6g.js → basic-BNMwDsxZ.js} +1 -1
- package/dist/assets/{browser-7joAQpWW.js → browser-CEcw1iOF.js} +1 -1
- package/dist/assets/{byokCredential-B4dKziVQ.js → byokCredential-C6Q2wusz.js} +1 -1
- package/dist/assets/{card-BHSdgUM6.js → card-BboBS3YF.js} +1 -1
- package/dist/assets/{castArray-FN0qIC-F.js → castArray-DZm4CKhI.js} +1 -1
- package/dist/assets/{chat-RH2FHz84.js → chat-Dg1ba5iU.js} +1 -1
- package/dist/assets/{checkmark-Bys9SwiQ.js → checkmark-CllEqwr4.js} +1 -1
- package/dist/assets/{checkmark-bold-DdZpUzBt.js → checkmark-bold-BfrloD8D.js} +1 -1
- package/dist/assets/{chevron-bottom-lsWoscTx.js → chevron-bottom-D1on8hma.js} +1 -1
- package/dist/assets/{chevron-left-BEg6k_CD.js → chevron-left-D3NO3rmG.js} +1 -1
- package/dist/assets/{chevron-right-D6_BF5Q4.js → chevron-right-CIA8pjUm.js} +1 -1
- package/dist/assets/{chevron-top-BjdcG2gi.js → chevron-top-BbshUtQe.js} +1 -1
- package/dist/assets/{chrome-store-CtCOe48X.js → chrome-store-DdO8nMpl.js} +1 -1
- package/dist/assets/{clock-DETEJMl3.js → clock-DLZGeKnF.js} +1 -1
- package/dist/assets/{close-CylhswCm.js → close-ChAZAXme.js} +1 -1
- package/dist/assets/{coinPlaceholder-C3axsC5g.js → coinPlaceholder-DYj3WeHu.js} +1 -1
- package/dist/assets/{compass-CtsJBqp1.js → compass-BorTW8IG.js} +1 -1
- package/dist/assets/{copy-CLxNORXC.js → copy-BtM71rAP.js} +1 -1
- package/dist/assets/{createTaskActions-BJSdKH5s.js → createTaskActions-Ca5kaqMh.js} +1 -1
- package/dist/assets/{cursor-z-aIOLqV.js → cursor-C0Cp7L0Z.js} +1 -1
- package/dist/assets/{cursor-transparent-DZTyR1zU.js → cursor-transparent-BH9ocYT7.js} +1 -1
- package/dist/assets/{debounce-CqzxdC1T.js → debounce-BOEGIAMg.js} +1 -1
- package/dist/assets/{desktop-TrodT5we.js → desktop-U7wja_nL.js} +1 -1
- package/dist/assets/{disconnect-BeEQ7qs9.js → disconnect-WSdbYNDt.js} +1 -1
- package/dist/assets/{discord-CwrEZrCT.js → discord-CkDInYSF.js} +1 -1
- package/dist/assets/{distribution-CCQeOooB.js → distribution-B5v1Ue70.js} +1 -1
- package/dist/assets/{dropdown-QVVKiQqM.js → dropdown-bZXQhXll.js} +1 -1
- package/dist/assets/{etherscan-WV8NdF0k.js → etherscan-DKcG1Cdx.js} +1 -1
- package/dist/assets/{exclamation-triangle-DdbSNzRo.js → exclamation-triangle-C-zaO4AC.js} +1 -1
- package/dist/assets/{extension-CuHkDgHC.js → extension-CWqTkOHm.js} +1 -1
- package/dist/assets/{external-link-BgTmHYmG.js → external-link-DMpZQvn2.js} +1 -1
- package/dist/assets/{facebook-8nr_Km5Y.js → facebook-B19Wqxkw.js} +1 -1
- package/dist/assets/{farcaster-3NnaB9KF.js → farcaster-2sWgDTGN.js} +1 -1
- package/dist/assets/{filters-CerERAFS.js → filters-Nb2fALEv.js} +1 -1
- package/dist/assets/{github-CmiBvNun.js → github-CYmkYjwQ.js} +1 -1
- package/dist/assets/{google-WIulaWE1.js → google-Z22V-eVQ.js} +1 -1
- package/dist/assets/{help-circle-2X23TR3c.js → help-circle-hI2Xd3l_.js} +1 -1
- package/dist/assets/{id-vaj7mgsv.js → id-CIJfMN1x.js} +1 -1
- package/dist/assets/{image-Cvm5qKfH.js → image-ChDatwFg.js} +1 -1
- package/dist/assets/{index-D2DtLStx.js → index--pumknqU.js} +5 -5
- package/dist/assets/{index-DLAA8qBO.js → index-2N5x11BP.js} +1 -1
- package/dist/assets/{index-6R6Zq-bb.js → index-B3OboUoc.js} +1 -1
- package/dist/assets/{index-CIPeqHrT.js → index-B4McOS0M.js} +1 -1
- package/dist/assets/{index-DuW5L2r7.js → index-BEwbP8jM.js} +1 -1
- package/dist/assets/{index-_jMWnoRc.js → index-BJguEW7S.js} +1 -1
- package/dist/assets/{index-IXbBFLGc.js → index-BO-W8gcY.js} +1 -1
- package/dist/assets/{index-D2XWlSUE.css → index-BRqmY-RG.css} +1 -1
- package/dist/assets/{index-QEi2VXNo.js → index-BSVjoIc7.js} +1 -1
- package/dist/assets/{index-CrU_5pwG.js → index-BSnUjYW0.js} +2 -2
- package/dist/assets/{index-DqqEEM06.js → index-BW-C1HoK.js} +1 -1
- package/dist/assets/{index-CCnNhz-4.js → index-BaX0kTeS.js} +1 -1
- package/dist/assets/{index-B21ZeSrS.js → index-Bcve79lL.js} +1 -1
- package/dist/assets/{index-C9b_9myH.js → index-Beu431jy.js} +1 -1
- package/dist/assets/{index-BEIVh6R9.js → index-Bev8S4VP.js} +1 -1
- package/dist/assets/{index-Dw3SeELD.js → index-BhyNkjm0.js} +1 -1
- package/dist/assets/{index-BcuAI9DN.js → index-Bjd1UhgK.js} +1 -1
- package/dist/assets/{index-Dk-srZzW.js → index-Bmg2daM8.js} +1 -1
- package/dist/assets/{index-BnYAc5a2.js → index-BplTAcLY.js} +1 -1
- package/dist/assets/{index-CYh_OAtL.js → index-BqOTRema.js} +1 -1
- package/dist/assets/{index-CbH6hylr.js → index-Bw8YhoHN.js} +1 -1
- package/dist/assets/{index-CiGGgTh3.js → index-C1orcWt1.js} +1 -1
- package/dist/assets/{index-Czz4_hx0.js → index-C2A8k-4H.js} +1 -1
- package/dist/assets/{index-DsGtRLSG.js → index-C5KDX2U_.js} +1 -1
- package/dist/assets/{index-B6QiYIzW.js → index-C9CihNKu.js} +1 -1
- package/dist/assets/{index-BE6qZqmD.js → index-C9tMiwcH.js} +1 -1
- package/dist/assets/{index-D1Pp1_Ct.js → index-CAAkkUtb.js} +1 -1
- package/dist/assets/{index-CQTjuF73.js → index-CCFPzIiz.js} +1 -1
- package/dist/assets/{index-ByRqtdbl.js → index-CIRIxjRM.js} +1 -1
- package/dist/assets/{index-DvlZSfpu.js → index-CJtKCzfo.js} +1 -1
- package/dist/assets/{index-CqFUQRch.js → index-Cad50cpk.js} +1 -1
- package/dist/assets/{index-D52tsFhQ.js → index-Cm09Eh9K.js} +1 -1
- package/dist/assets/{index-D4F0oixT.js → index-CzICEfHn.js} +1 -1
- package/dist/assets/{index-2P6neM4R.js → index-CzysM2id.js} +1 -1
- package/dist/assets/{index-NUBO-MwK.js → index-D2Ip6MW6.js} +1 -1
- package/dist/assets/{index-BwAF5fMP.js → index-D5sx3kNV.js} +1 -1
- package/dist/assets/{index-ViGPRpNP.js → index-D7-hCQtC.js} +1 -1
- package/dist/assets/{index-B2vTKKd_.js → index-D8xcWpl7.js} +1 -1
- package/dist/assets/{index-Bcs3v7-e.js → index-DEgUE9-1.js} +1 -1
- package/dist/assets/{index-B7lLMdzb.js → index-DJBGdUsj.js} +3 -3
- package/dist/assets/{index-CP6llfLN.js → index-DKYzi_JL.js} +1 -1
- package/dist/assets/{index-DTeoj4TD.js → index-DNuu7kxX.js} +1 -1
- package/dist/assets/{index-BiC7KGb5.js → index-DPGiSIg9.js} +1 -1
- package/dist/assets/{index-BT22Q2er.js → index-Di2NepyV.js} +1 -1
- package/dist/assets/{index-zQkXvP4I.js → index-Dls6nphu.js} +1 -1
- package/dist/assets/{index-pQFvUXd3.js → index-DyWi-qw9.js} +1 -1
- package/dist/assets/{index-CBlv28h_.js → index-FVKKSUIP.js} +3 -3
- package/dist/assets/{index-cN8cftWM.js → index-RiC3k0dL.js} +1 -1
- package/dist/assets/{index-CEeMrgcF.js → index-SLUhqAtl.js} +1 -1
- package/dist/assets/{index-BOBhPDDF.js → index-VfTPD815.js} +1 -1
- package/dist/assets/{index-DmDrzBI8.js → index-_BTaWQNh.js} +1 -1
- package/dist/assets/{index-BbL_4E9w.js → index-ehTvqEFs.js} +1 -1
- package/dist/assets/{index-Cke3Ztbn.js → index-fcm7YMuA.js} +1 -1
- package/dist/assets/{index-DA818bne.js → index-hz7h21Zf.js} +1 -1
- package/dist/assets/{index-CGiBnpqk.js → index-j6SYZeEP.js} +1 -1
- package/dist/assets/{index-DGwqRoPm.js → index-jO2yjXje.js} +1 -1
- package/dist/assets/{index-BF3jvRlG.js → index-kyWjBrWv.js} +1 -1
- package/dist/assets/{index-DmgFbW9M.js → index-lrmoLNNf.js} +1 -1
- package/dist/assets/{index-B-vHnqyE.js → index-s5E1DICA.js} +1 -1
- package/dist/assets/{index-B0dINqQs.js → index-vm6n9t8l.js} +1 -1
- package/dist/assets/{index-CLmaAujN.js → index-wlk_t9fN.js} +1 -1
- package/dist/assets/{index.browser.esm-BC4h3Ej2.js → index.browser.esm-BFJHq1WX.js} +1 -1
- package/dist/assets/{index.es-BGvCJe-W.js → index.es-oEqa8Vvo.js} +1 -1
- package/dist/assets/{info-ClrQ6-BU.js → info-DOdLmkhX.js} +1 -1
- package/dist/assets/{info-circle-DCijtL4A.js → info-circle-pEeNFjPF.js} +1 -1
- package/dist/assets/{isEqual-CfmBLeOp.js → isEqual-BahNgsHz.js} +1 -1
- package/dist/assets/{isPlainObject-DrfMRQvm.js → isPlainObject-BDQO-MIB.js} +1 -1
- package/dist/assets/{lightbulb-Dr1hMBEr.js → lightbulb-D_cA1YDj.js} +1 -1
- package/dist/assets/{mail-CiRR9yzg.js → mail-BGgqCVRO.js} +1 -1
- package/dist/assets/{midjourney-BHg-HxhG.js → midjourney-xe6_yTvP.js} +1 -1
- package/dist/assets/{mobile-BAK6nsfE.js → mobile-CjPEt6XW.js} +1 -1
- package/dist/assets/{more-D70nXESH.js → more-Dgqbvki6.js} +1 -1
- package/dist/assets/{network-placeholder-D6q_3JhL.js → network-placeholder-CU6Q90Ke.js} +1 -1
- package/dist/assets/{nftPlaceholder-Cq73MyuY.js → nftPlaceholder-BetIyonr.js} +1 -1
- package/dist/assets/{off-Du8xNMQV.js → off-DIfYDGNO.js} +1 -1
- package/dist/assets/{order-B9IiXfkW.js → order-CJ6IBHdt.js} +1 -1
- package/dist/assets/{pagination-DSYOIV_9.js → pagination-CIpi5fgv.js} +1 -1
- package/dist/assets/{play-store-CMM7iXUy.js → play-store-DqxNZ3HF.js} +1 -1
- package/dist/assets/{plus-jARqHv_C.js → plus-CMWqDiZC.js} +1 -1
- package/dist/assets/{price-BoiEmiVd.js → price-w0Wapj1c.js} +1 -1
- package/dist/assets/{producer-BFn8w39f.js → producer-CdXhfLpR.js} +1 -1
- package/dist/assets/{qr-code-DzsFURK2.js → qr-code-CnTlEHsb.js} +1 -1
- package/dist/assets/{recycle-horizontal-W2KoV8vw.js → recycle-horizontal-BYQ8elPC.js} +1 -1
- package/dist/assets/{refresh-WSaLf8VP.js → refresh-BVkag-ai.js} +1 -1
- package/dist/assets/{reown-logo-CEd6ZM8R.js → reown-logo-BdezFn3u.js} +1 -1
- package/dist/assets/{search-ClPkoGZw.js → search-Ba3Qaoe1.js} +1 -1
- package/dist/assets/{secp256k1-DCotto4o.js → secp256k1-CR_wvQPo.js} +1 -1
- package/dist/assets/{secp256k1-CY7zvKPZ.js → secp256k1-DG6_XID7.js} +1 -1
- package/dist/assets/{seedream-B_0r5a5d.js → seedream-DWdXXcSm.js} +1 -1
- package/dist/assets/{send-hXw22QVp.js → send-BR_WQJ2G.js} +1 -1
- package/dist/assets/{service-D6MwIonb.js → service-UQCCuguH.js} +1 -1
- package/dist/assets/{solana-wallets-D5IXk2C6.js → solana-wallets-Dl3ukSGJ.js} +2 -2
- package/dist/assets/{solana-wallets-vue-CiR9_161.js → solana-wallets-vue-CnW8Unz3.js} +1 -1
- package/dist/assets/{suno-CnYkQ41d.js → suno-CD6pJeQ9.js} +1 -1
- package/dist/assets/{swapHorizontal-C4OATJHV.js → swapHorizontal-Ddpm8B25.js} +1 -1
- package/dist/assets/{swapHorizontalBold-BcZ8qUBM.js → swapHorizontalBold-Dhuqq0K3.js} +1 -1
- package/dist/assets/{swapHorizontalMedium-DmOnPuPj.js → swapHorizontalMedium-s249L3Nd.js} +1 -1
- package/dist/assets/{swapHorizontalRoundedBold-aCMw7dgZ.js → swapHorizontalRoundedBold-DvE8_kZB.js} +1 -1
- package/dist/assets/{swapVertical-DCJHigd7.js → swapVertical-BcaeDIkV.js} +1 -1
- package/dist/assets/{telegram-B8hG-ceH.js → telegram-CctHu0Fl.js} +1 -1
- package/dist/assets/{three-dots-3PfhBNIb.js → three-dots-CavoQVD0.js} +1 -1
- package/dist/assets/{twitch-DGLW5dTV.js → twitch-CnSWkIwn.js} +1 -1
- package/dist/assets/{twitterIcon-D9shlJUo.js → twitterIcon-BbGFY_2N.js} +1 -1
- package/dist/assets/{typescript-Bj1ijDQ6.js → typescript-BmROFp5p.js} +1 -1
- package/dist/assets/{use-form-item-DZgxCtXL.js → use-form-item-CmyE7QH4.js} +1 -1
- package/dist/assets/validator-BRwslcDn.js +1 -0
- package/dist/assets/{verify-f7CMRkUd.js → verify-DCo2VTZ_.js} +1 -1
- package/dist/assets/{verify-filled-D-i_lal-.js → verify-filled-txEGnEIm.js} +1 -1
- package/dist/assets/{w3m-modal-Bg36HOCY.js → w3m-modal-9ZlkerPc.js} +1 -1
- package/dist/assets/{wallet-CWYcFf4q.js → wallet-CUBKwDFu.js} +1 -1
- package/dist/assets/{wallet-placeholder-CP4xtpLb.js → wallet-placeholder-CjNeav-0.js} +1 -1
- package/dist/assets/{walletconnect-CswCYXjf.js → walletconnect-WbPyu-Nf.js} +1 -1
- package/dist/assets/{warning-circle-Cy5pvqsS.js → warning-circle-DPksDK2M.js} +1 -1
- package/dist/assets/{web-CrK-XaC6.js → web-DbyVp-dx.js} +1 -1
- package/dist/assets/{web-BvZo9FTy.js → web-DeXVKTMf.js} +1 -1
- package/dist/assets/{x-B-62v0eX.js → x-_x1eRkU-.js} +1 -1
- package/dist/index.html +2 -2
- package/package.json +1 -1
- package/dist/assets/Console-D-SOK-Bo.css +0 -1
- package/dist/assets/List-CFBrpGZ3.js +0 -1
- package/dist/assets/List-Cj4e77Gx.css +0 -1
- package/dist/assets/validator-2sHPIwNN.js +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
import{F as P}from"./index.es-BGvCJe-W.js";import{E as U}from"./index-BF3jvRlG.js";import{E as Y}from"./index-CP6llfLN.js";import{d as b,H as i,E as r,z as L,C as a,y as p,D as n,q as t,F as l,O as E,N as T,x as m,Q as C,R as J,J as d,I as _}from"./vendor-vue-NSDaktjZ.js";import{G as k,bj as Q,co as W,aH as K,S as M,cp as Z}from"./index-B7lLMdzb.js";import{a as x,b as ee,c as oe,d as te,e as se,f as ne,g as G,h as ae,i as le,j as ie}from"./veo-Dg8Zhpd-.js";import{E as A,a as O}from"./index-B21ZeSrS.js";import{I as j,S as re,l as ce}from"./pagination-DSYOIV_9.js";import{E as de}from"./index-DvlZSfpu.js";import{V as D}from"./VideoPlayer-CndCLmxS.js";import{E as R}from"./index-zQkXvP4I.js";import{p as ue}from"./pasteUploadMixin-BurWbGNQ.js";import{I as pe}from"./ImagePreview-8xggEAtd.js";import{E as me}from"./index-2P6neM4R.js";import{E as I}from"./index-DmgFbW9M.js";import{C as ve}from"./Consumption-D1DmjLsj.js";import{a as fe}from"./price-BoiEmiVd.js";import{b as _e}from"./errorCode-Cqj9Td_Z.js";import{C as he}from"./CopyToClipboard-BS0IZ5vm.js";import{E as $e}from"./index-BiC7KGb5.js";import{E as ge}from"./index-ViGPRpNP.js";import{E as be}from"./index-DuW5L2r7.js";import{B as ke}from"./BotPlaceholder-qj2YLdAp.js";import{N as ye}from"./NoTasks-YcewaUb5.js";import"./use-form-item-DZgxCtXL.js";import"./index-BuyEbX8F.js";import"./vendor-axios-B8_nURbH.js";import"./vendor-dayjs-v0j1UNZp.js";import"./vendor-vue-router-Df5ITouH.js";import"./index-CGiBnpqk.js";import"./typescript-Bj1ijDQ6.js";import"./index-cN8cftWM.js";import"./strings-beZM2Y-f.js";import"./isEqual-CfmBLeOp.js";import"./_Uint8Array-4l3jEroS.js";import"./castArray-FN0qIC-F.js";import"./debounce-CqzxdC1T.js";import"./_baseIteratee-CJ9W-nbE.js";import"./index-CbH6hylr.js";import"./validator-2sHPIwNN.js";import"./vue-plyr-BO2nlN4c.js";import"./index-pQFvUXd3.js";import"./index-Dw3SeELD.js";import"./_baseClone-Db65SBvG.js";import"./_initCloneObject-C7XzV3eb.js";import"./index-B-vHnqyE.js";const Ve=b({name:"LayoutVeo",components:{ElDrawer:Y,ElButton:U,FontAwesomeIcon:P},data(){return{drawer:!1}}}),we={class:"main flex flex-row flex-1"},Ee={class:"config w-[320px] flex-none h-full overflow-y-auto bg-[var(--app-sidebar-bg)] border-r border-[var(--app-border-subtle)]"},Ie={class:"result h-full p-6 flex-1 flex flex-col min-w-0 overflow-x-hidden bg-[var(--app-content-bg)]"};function Te(e,o,v,f,y,V){const c=n("font-awesome-icon"),u=n("el-button"),s=n("el-drawer");return t(),i("div",we,[r("div",Ee,[L(e.$slots,"config",{},void 0,!0)]),r("div",Ie,[L(e.$slots,"result",{},void 0,!0)]),a(u,{circle:"",class:"menu",onClick:o[0]||(o[0]=w=>e.drawer=!0)},{default:p(()=>[a(c,{icon:"fa-solid fa-magic"})]),_:1}),a(s,{modelValue:e.drawer,"onUpdate:modelValue":o[1]||(o[1]=w=>e.drawer=w),direction:"ltr","with-header":!1,size:"350px"},{default:p(()=>[L(e.$slots,"config",{},void 0,!0)]),_:3},8,["modelValue"])])}const Se=k(Ve,[["render",Te],["__scopeId","data-v-9b26d591"]]),Ce=b({name:"ModelSelector",components:{ElSelect:O,ElOption:A},props:{modelValue:{type:String,default:void 0}},emits:["update:modelValue"],data(){return{options:[{value:"veo2",label:"veo2"},{value:"veo2-fast",label:"veo2-fast"},{value:"veo3",label:"veo3"},{value:"veo3-fast",label:"veo3-fast"},{value:"veo31-fast",label:"veo31-fast"},{value:"veo31",label:"veo31"},{value:"veo31-fast-ingredients",label:"veo31-fast-ingredients"}]}},computed:{value:{get(){return this.$store.state.veo?.config?.model},set(e){this.$store.commit("veo/setConfig",{...this.$store.state.veo.config,model:e})}}},mounted(){this.value||(this.value=x)}}),Ae={class:"field"},Oe={class:"title font-bold"};function Pe(e,o,v,f,y,V){const c=n("el-option"),u=n("el-select");return t(),i("div",Ae,[r("h2",Oe,l(e.$t("veo.name.model")),1),a(u,{modelValue:e.value,"onUpdate:modelValue":o[0]||(o[0]=s=>e.value=s),class:"value",placeholder:e.$t("veo.placeholder.select")},{default:p(()=>[(t(!0),i(E,null,T(e.options,s=>(t(),m(c,{key:s.value,label:s.label,value:s.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const Ue=k(Ce,[["render",Pe],["__scopeId","data-v-a59d89c9"]]),Le=b({name:"ActionSelector",components:{ElSelect:O,ElOption:A},data(){return{}},computed:{options(){return[{value:"text2video",label:this.$t("veo.button.action1")},{value:"image2video",label:this.$t("veo.button.action2")},{value:"ingredients2video",label:this.$t("veo.button.actionIngredients")},{value:"upsample",label:this.$t("veo.button.actionUpsample")},{value:"extend",label:this.$t("veo.button.actionExtend")},{value:"reshoot",label:this.$t("veo.button.actionReshoot")},{value:"object_insert",label:this.$t("veo.button.actionObjectInsert")},{value:"object_remove",label:this.$t("veo.button.actionObjectRemove")}]},value:{get(){return this.$store.state.veo?.config?.action},set(e){this.$store.commit("veo/setConfig",{...this.$store.state.veo?.config,action:e})}}},mounted(){this.value||(this.value=ee)}}),je={class:"field"},Re={class:"title font-bold"},Me={class:"float-left"};function Ge(e,o,v,f,y,V){const c=n("el-option"),u=n("el-select");return t(),i("div",je,[r("h2",Re,l(e.$t("veo.name.action")),1),a(u,{modelValue:e.value,"onUpdate:modelValue":o[0]||(o[0]=s=>e.value=s),class:"value",placeholder:e.$t("veo.placeholder.select"),clearable:""},{default:p(()=>[(t(!0),i(E,null,T(e.options,s=>(t(),m(c,{key:s.value,label:s.label,value:s.value},{default:p(()=>[r("span",Me,l(s.label),1)]),_:2},1032,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const De=k(Le,[["render",Ge],["__scopeId","data-v-f4d8785c"]]),Ne=b({name:"TranslationSelector",components:{ElSwitch:de,InfoIcon:j},computed:{value:{get(){return this.$store.state.veo?.config?.translation},set(e){console.debug("set translation",e),this.$store.commit("veo/setConfig",{...this.$store.state.veo?.config,translation:e})}}},mounted(){this.value===void 0&&(this.value=oe)}}),Fe={class:"relative"},ze={class:"flex justify-between"},Be={class:"flex justify-start items-center"},qe={class:"text-sm font-bold"},He={class:"flex justify-end items-center"};function Xe(e,o,v,f,y,V){const c=n("info-icon"),u=n("el-switch");return t(),i("div",Fe,[r("div",ze,[r("div",Be,[r("span",qe,l(e.$t("veo.name.translation")),1),a(c,{content:e.$t("veo.description.translation")},null,8,["content"])]),r("div",He,[a(u,{modelValue:e.value,"onUpdate:modelValue":o[0]||(o[0]=s=>e.value=s),class:"value"},null,8,["modelValue"])])])])}const Ye=k(Ne,[["render",Xe]]),Je=b({name:"AspectRatioSelector",data(){return{options:[{value:"1:1",label:"1:1",width:20,height:20},{value:"4:3",label:"4:3",width:20,height:15},{value:"3:4",label:"3:4",width:15,height:20},{value:"16:9",label:"16:9",width:25,height:13},{value:"9:16",label:"9:16",width:13,height:25}]}},computed:{active(){return this.options.findIndex(e=>e.value===this.value)||0},value:{get(){return this.$store.state.veo?.config?.aspect_ratio},set(e){console.debug("set aspect_ratio",e),this.$store.commit("veo/setConfig",{...this.$store.state?.veo?.config,aspect_ratio:e})}}},mounted(){this.value||(this.value=te)}}),Qe={class:"text-sm font-bold mb-2 block"},We={class:"items"},Ke=["onClick"],Ze={class:"name"};function xe(e,o,v,f,y,V){return t(),i("div",null,[r("span",Qe,l(e.$t("veo.name.ratio")),1),r("div",We,[(t(!0),i(E,null,T(e.options,(c,u)=>(t(),i("div",{key:u,class:C({active:e.active===u,item:!0}),onClick:s=>e.value=c.value},[r("div",{class:C(["preview",c.label])},[r("div",{class:"rect",style:J({width:c.width+"px",height:c.height+"px"})},null,4)],2),r("p",Ze,l(c.label),1)],10,Ke))),128))])])}const eo=k(Je,[["render",xe],["__scopeId","data-v-0f16be77"]]),oo=b({name:"VideoFromInput",components:{VideoPlayer:D},props:{modelValue:{type:Object,required:!1,default:void 0}},data(){return{options:{quality:{default:"1080p"}}}},computed:{config(){return this.$store.state.veo?.config}}}),to={class:"relative"},so={class:"flex mb-2"},no={class:"text-sm font-bold"};function ao(e,o,v,f,y,V){const c=n("video-player");return t(),i("div",to,[r("div",so,[r("span",no,l(e.$t("veo.name.action3")),1)]),r("div",null,[e.config?.video_url?(t(),m(c,{key:0,src:e.config?.video_url},null,8,["src"])):d("",!0)])])}const lo=k(oo,[["render",ao]]),io=b({name:"VideoIdInput",components:{ElInput:R},computed:{value:{get(){return this.$store.state.veo?.config?.video_id},set(e){this.$store.commit("veo/setConfig",{...this.$store.state.veo.config,video_id:e})}}}}),ro={class:"field"},co={class:"title font-bold"};function uo(e,o,v,f,y,V){const c=n("el-input");return t(),i("div",ro,[r("h2",co,l(e.$t("veo.name.videoId")),1),a(c,{modelValue:e.value,"onUpdate:modelValue":o[0]||(o[0]=u=>e.value=u),class:"value",type:"text",placeholder:e.$t("veo.placeholder.videoId"),clearable:""},null,8,["modelValue","placeholder"])])}const po=k(io,[["render",uo],["__scopeId","data-v-6eba4026"]]),mo=b({name:"StartEndImage",components:{ElUpload:me,ElButton:U,InfoIcon:j,FontAwesomeIcon:P,ImagePreview:pe},mixins:[ue],emits:["change"],data(){return{fileList:[],uploadUrl:Q()+"/api/v1/files/"}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},urls(){return this.fileList.map(e=>e?.response?.file_url)},value:{get(){return this.$store.state?.veo?.config?.image_urls},set(){}}},mounted(){this.value||(this.value=void 0),this.onSetStartEndImageUrl()},methods:{onExceed(){I.warning(this.$t("veo.message.uploadReferencesExceed"))},onError(){I.error(this.$t("veo.message.uploadReferencesError"))},onSetStartEndImageUrl(){const e=this.urls;this.$store.commit("veo/setConfig",{...this.$store.state?.veo?.config,image_urls:e})},async onSuccess(){this.onSetStartEndImageUrl()}}}),vo={class:"relative"},fo={class:"flex justify-between"},_o={class:"flex justify-start items-center"},ho={class:"text-sm font-bold"};function $o(e,o,v,f,y,V){const c=n("info-icon"),u=n("image-preview"),s=n("font-awesome-icon"),w=n("el-button"),$=n("el-upload");return t(),i("div",vo,[r("div",fo,[r("div",_o,[r("span",ho,l(e.$t("veo.name.startEndImage")),1),a(c,{content:e.$t("veo.description.uploadStartEndImage")},null,8,["content"])])]),a($,{ref:"uploader","file-list":e.fileList,"onUpdate:fileList":o[0]||(o[0]=h=>e.fileList=h),name:"file",accept:".png,.jpg,.jpeg,.gif,.bmp,.webp",limit:2,class:"upload-wrapper",multiple:!1,action:e.uploadUrl,"list-type":"picture","on-exceed":e.onExceed,"on-error":e.onError,"on-success":e.onSuccess,headers:e.headers},{file:p(({file:h})=>[h.url&&h.percentage!==void 0?(t(),m(u,{key:0,url:h.url,name:h.name,percentage:h.percentage,onRemove:S=>e.fileList.splice(e.fileList.indexOf(h),1)},null,8,["url","name","percentage","onRemove"])):d("",!0)]),default:p(()=>[a(w,{round:"",type:"primary",size:"small",class:"btn btn-upload"},{default:p(()=>[a(s,{icon:"fa-solid fa-upload",class:"icon mr-1"}),_(" "+l(e.$t("veo.button.uploadReferences")),1)]),_:1})]),_:1},8,["file-list","action","on-exceed","on-error","on-success","headers"])])}const go=k(mo,[["render",$o],["__scopeId","data-v-b8ddb8fb"]]),bo=b({name:"UpsampleActionSelector",components:{ElSelect:O,ElOption:A},computed:{options(){return ne.map(e=>({value:e,label:e}))},value:{get(){return this.$store.state.veo?.config?.upsample_action},set(e){this.$store.commit("veo/setConfig",{...this.$store.state.veo.config,upsample_action:e})}}},mounted(){this.value||(this.value=se)}}),ko={class:"field"},yo={class:"title font-bold"};function Vo(e,o,v,f,y,V){const c=n("el-option"),u=n("el-select");return t(),i("div",ko,[r("h2",yo,l(e.$t("veo.name.upsampleAction")),1),a(u,{modelValue:e.value,"onUpdate:modelValue":o[0]||(o[0]=s=>e.value=s),class:"value",placeholder:e.$t("veo.placeholder.select")},{default:p(()=>[(t(!0),i(E,null,T(e.options,s=>(t(),m(c,{key:s.value,label:s.label,value:s.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const wo=k(bo,[["render",Vo],["__scopeId","data-v-8b74a7ae"]]),Eo=b({name:"ExtendModelSelector",components:{ElSelect:O,ElOption:A},computed:{options(){return G.map(e=>({value:e,label:e}))},value:{get(){return this.$store.state.veo?.config?.model},set(e){this.$store.commit("veo/setConfig",{...this.$store.state.veo.config,model:e})}}},mounted(){(!this.value||!G.includes(this.value))&&(this.value=ae)}}),Io={class:"field"},To={class:"title font-bold"};function So(e,o,v,f,y,V){const c=n("el-option"),u=n("el-select");return t(),i("div",Io,[r("h2",To,l(e.$t("veo.name.model")),1),a(u,{modelValue:e.value,"onUpdate:modelValue":o[0]||(o[0]=s=>e.value=s),class:"value",placeholder:e.$t("veo.placeholder.select")},{default:p(()=>[(t(!0),i(E,null,T(e.options,s=>(t(),m(c,{key:s.value,label:s.label,value:s.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const Co=k(Eo,[["render",So],["__scopeId","data-v-cc3f9355"]]),Ao=b({name:"MotionTypeSelector",components:{ElSelect:O,ElOption:A},computed:{options(){return ie.map(e=>({value:e,label:e}))},value:{get(){return this.$store.state.veo?.config?.motion_type},set(e){this.$store.commit("veo/setConfig",{...this.$store.state.veo.config,motion_type:e})}}},mounted(){this.value||(this.value=le)}}),Oo={class:"field"},Po={class:"title font-bold"};function Uo(e,o,v,f,y,V){const c=n("el-option"),u=n("el-select");return t(),i("div",Oo,[r("h2",Po,l(e.$t("veo.name.motionType")),1),a(u,{modelValue:e.value,"onUpdate:modelValue":o[0]||(o[0]=s=>e.value=s),class:"value",placeholder:e.$t("veo.placeholder.select"),filterable:""},{default:p(()=>[(t(!0),i(E,null,T(e.options,s=>(t(),m(c,{key:s.value,label:s.label,value:s.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const Lo=k(Ao,[["render",Uo],["__scopeId","data-v-3affff3c"]]),jo=b({name:"ImageMaskInput",components:{ElInput:R},computed:{value:{get(){return this.$store.state.veo?.config?.image_mask},set(e){this.$store.commit("veo/setConfig",{...this.$store.state.veo.config,image_mask:e})}}}}),Ro={class:"field"},Mo={class:"title font-bold"};function Go(e,o,v,f,y,V){const c=n("el-input");return t(),i("div",Ro,[r("h2",Mo,l(e.$t("veo.name.imageMask")),1),a(c,{modelValue:e.value,"onUpdate:modelValue":o[0]||(o[0]=u=>e.value=u),class:"value",type:"text",placeholder:e.$t("veo.placeholder.imageMask"),clearable:""},null,8,["modelValue","placeholder"])])}const Do=k(jo,[["render",Go],["__scopeId","data-v-6cc27c68"]]),No="",Fo=b({name:"PromptInput",components:{ElInput:R,InfoIcon:j},computed:{prompt:{get(){return this.$store.state.veo?.config?.prompt},set(e){console.debug("set prompt",e),this.$store.commit("veo/setConfig",{...this.$store.state.veo?.config,prompt:e})}}},mounted(){this.prompt||(this.prompt=No)}}),zo={class:"field"},Bo={class:"box"},qo={class:"title font-bold"};function Ho(e,o,v,f,y,V){const c=n("info-icon"),u=n("el-input");return t(),i("div",zo,[r("div",Bo,[r("h2",qo,l(e.$t("veo.name.prompt")),1),a(c,{content:e.$t("veo.description.prompt"),class:"info"},null,8,["content"])]),a(u,{modelValue:e.prompt,"onUpdate:modelValue":o[0]||(o[0]=s=>e.prompt=s),rows:3,type:"textarea",class:"prompt",placeholder:e.$t("veo.placeholder.prompt")},null,8,["modelValue","placeholder"])])}const Xo=k(Fo,[["render",Ho],["__scopeId","data-v-84c55ea0"]]),Yo=["upsample","extend","reshoot","object_insert","object_remove","get1080p"],Jo=["text2video","image2video","ingredients2video"],Qo=b({name:"ConfigPanel",components:{ElButton:U,Consumption:ve,FontAwesomeIcon:P,PromptInput:Xo,ModelSelector:Ue,StartEndImage:go,ActionSelector:De,VideoFromInput:lo,VideoIdInput:po,UpsampleActionSelector:wo,ExtendModelSelector:Co,MotionTypeSelector:Lo,ImageMaskInput:Do,TranslationSelector:Ye,AspectRatioSelector:eo},emits:["generate"],computed:{config(){return this.$store.state.veo?.config},consumption(){return fe(this.config,this.service?.cost)},service(){return this.$store.state.veo?.service},isPostProcessing(){return Yo.includes(this.config?.action??"")},isGeneration(){return Jo.includes(this.config?.action??"")}},methods:{onGenerate(){this.$emit("generate")}}}),Wo={class:"flex flex-col h-full"},Ko={class:"flex-1 overflow-y-auto p-5"},Zo={class:"flex flex-col items-center justify-center px-5 pb-5"};function xo(e,o,v,f,y,V){const c=n("action-selector"),u=n("video-from-input"),s=n("video-id-input"),w=n("upsample-action-selector"),$=n("extend-model-selector"),h=n("prompt-input"),S=n("motion-type-selector"),g=n("image-mask-input"),N=n("translation-selector"),F=n("aspect-ratio-selector"),z=n("model-selector"),B=n("start-end-image"),q=n("consumption"),H=n("font-awesome-icon"),X=n("el-button");return t(),i("div",Wo,[r("div",Ko,[a(c,{class:"mb-4"}),e.isPostProcessing?(t(),i(E,{key:0},[e.config?.video_url?(t(),m(u,{key:0,class:"mb-4"})):d("",!0),a(s,{class:"mb-4"})],64)):d("",!0),e.config?.action==="upsample"?(t(),m(w,{key:1,class:"mb-4"})):d("",!0),e.config?.action==="extend"?(t(),m($,{key:2,class:"mb-4"})):d("",!0),e.config?.action==="extend"?(t(),m(h,{key:3,class:"mb-4"})):d("",!0),e.config?.action==="reshoot"?(t(),m(S,{key:4,class:"mb-4"})):d("",!0),e.config?.action==="object_insert"?(t(),m(h,{key:5,class:"mb-4"})):d("",!0),e.config?.action==="object_insert"||e.config?.action==="object_remove"?(t(),m(g,{key:6,class:"mb-4"})):d("",!0),e.config?.action==="object_remove"?(t(),m(h,{key:7,class:"mb-4"})):d("",!0),e.isGeneration?(t(),i(E,{key:8},[a(N,{class:"mb-4"}),a(F,{class:"mb-4"}),a(h,{class:"mb-4"}),e.config?.action!=="ingredients2video"?(t(),m(z,{key:0,class:"mb-4"})):d("",!0),e.config?.action==="image2video"||e.config?.action==="ingredients2video"?(t(),m(B,{key:1,class:"mb-2"})):d("",!0)],64)):d("",!0)]),r("div",Zo,[a(q,{value:e.consumption,service:e.service},null,8,["value","service"]),a(X,{type:"primary",class:"btn w-full",round:"",onClick:e.onGenerate},{default:p(()=>[a(H,{icon:"fa-solid fa-magic",class:"mr-2"}),_(" "+l(e.$t("veo.button.generate")),1)]),_:1},8,["onClick"])])])}const et=k(Qo,[["render",xo]]),ot=b({name:"TaskPreview",components:{ElImage:be,CopyToClipboard:he,FontAwesomeIcon:P,ElAlert:ge,VideoPlayer:D,ElTooltip:$e,ElButton:U},props:{modelValue:{type:Object,required:!0}},data(){return{}},computed:{application(){return this.$store.state.veo?.application},config(){return this.$store.state.veo?.config}},methods:{onPickAction(e,o,v,f){console.debug("seed config from preview",{action:v,upsampleAction:f,response:o}),this.$store.commit("veo/setConfig",{...this.$store.state.veo?.config,action:v,video_id:o?.data?.[0]?.id,video_url:o?.data?.[0]?.video_url,...f?{upsample_action:f}:{}})},onDownload(e,o){e.stopPropagation(),console.log("on download"),window.open(o,"_blank")},onOpenVideo(e){window.open(e,"_blank")}}}),tt={class:"preview"},st={class:"left"},nt={class:"main"},at={class:"bot"},lt={class:"datetime"},it={class:"info"},rt={key:0,class:"prompt mt-2"},ct={key:0},dt={key:1},ut={key:0,class:C({content:!0,failed:!0})},pt={key:0,class:"mb-4"},mt={key:1,class:C({operations:!0,"mt-2":!0})},vt={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},ft={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},_t={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-0"},ht={key:1,class:C({content:!0})},$t={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},gt={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},bt={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},kt={key:1,class:"text-[var(--el-text-color-regular)] text-xs mb-0"},yt={key:2,class:C({content:!0})},Vt={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},wt={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-0"};function Et(e,o,v,f,y,V){const c=n("el-image"),u=n("video-player"),s=n("el-button"),w=n("el-tooltip"),$=n("font-awesome-icon"),h=n("copy-to-clipboard"),S=n("el-alert");return t(),i("div",tt,[r("div",st,[a(c,{src:"https://cdn.acedata.cloud/8nxyy9.jpg",class:"avatar"})]),r("div",nt,[r("div",at,[_(l(e.$t("veo.name.veoBot"))+" ",1),r("span",lt,l(e.$dayjs.format(""+new Date(parseFloat((e.modelValue?.created_at||"").toString())*1e3))),1)]),r("div",it,[e.modelValue?.request?.prompt?(t(),i("p",rt,[_(l(e.modelValue?.request?.prompt)+" ",1),e.modelValue?.response?d("",!0):(t(),i("span",ct," - ("+l(e.$t("veo.status.pending"))+") ",1)),Array.isArray(e.modelValue?.response?.data)&&e.modelValue?.response?.data[0]?.state==="running"?(t(),i("span",dt," - ("+l(e.$t("veo.status.processing"))+") ",1)):d("",!0)])):d("",!0)]),e.modelValue?.response?.success===!0&&e.modelValue?.response?.data?(t(),i("div",ut,[e.modelValue?.response?.data[0]?.video_url?(t(),i("div",pt,[a(u,{src:e.modelValue?.response?.data[0]?.video_url},null,8,["src"])])):d("",!0),e.modelValue?.response.success?(t(),i("div",mt,[e.modelValue?.response?.data[0]?.video_url?(t(),m(s,{key:0,type:"info",size:"small",class:"btn-action",onClick:o[0]||(o[0]=g=>e.onPickAction(g,e.modelValue?.response,"upsample","1080p"))},{default:p(()=>[_(l(e.$t("veo.button.actionUpsample1080p")),1)]),_:1})):d("",!0),e.modelValue?.response?.data[0]?.video_url?(t(),m(s,{key:1,type:"info",size:"small",class:"btn-action",onClick:o[1]||(o[1]=g=>e.onPickAction(g,e.modelValue?.response,"upsample","4k"))},{default:p(()=>[_(l(e.$t("veo.button.actionUpsample4k")),1)]),_:1})):d("",!0),e.modelValue?.response?.data[0]?.video_url?(t(),m(s,{key:2,type:"info",size:"small",class:"btn-action",onClick:o[2]||(o[2]=g=>e.onPickAction(g,e.modelValue?.response,"upsample","gif"))},{default:p(()=>[_(l(e.$t("veo.button.actionUpsampleGif")),1)]),_:1})):d("",!0),e.modelValue?.response?.data[0]?.video_url?(t(),m(s,{key:3,type:"info",size:"small",class:"btn-action",onClick:o[3]||(o[3]=g=>e.onPickAction(g,e.modelValue?.response,"extend"))},{default:p(()=>[_(l(e.$t("veo.button.actionExtend")),1)]),_:1})):d("",!0),e.modelValue?.response?.data[0]?.video_url?(t(),m(s,{key:4,type:"info",size:"small",class:"btn-action",onClick:o[4]||(o[4]=g=>e.onPickAction(g,e.modelValue?.response,"reshoot"))},{default:p(()=>[_(l(e.$t("veo.button.actionReshoot")),1)]),_:1})):d("",!0),e.modelValue?.response?.data[0]?.video_url?(t(),m(s,{key:5,type:"info",size:"small",class:"btn-action",onClick:o[5]||(o[5]=g=>e.onPickAction(g,e.modelValue?.response,"object_insert"))},{default:p(()=>[_(l(e.$t("veo.button.actionObjectInsert")),1)]),_:1})):d("",!0),e.modelValue?.response?.data[0]?.video_url?(t(),m(s,{key:6,type:"info",size:"small",class:"btn-action",onClick:o[6]||(o[6]=g=>e.onPickAction(g,e.modelValue?.response,"object_remove"))},{default:p(()=>[_(l(e.$t("veo.button.actionObjectRemove")),1)]),_:1})):d("",!0),a(w,{class:"box-item",effect:"dark",content:e.$t("veo.message.downloadVideo"),placement:"top-start"},{default:p(()=>[e.modelValue?.response?.data[0]?.video_url?(t(),m(s,{key:0,type:"info",size:"small",class:"btn-action",onClick:o[7]||(o[7]=g=>e.onDownload(g,e.modelValue?.response?.data[0]?.video_url))},{default:p(()=>[_(l(e.$t("veo.button.download")),1)]),_:1})):d("",!0)]),_:1},8,["content"])])):d("",!0),a(S,{closable:!1,class:"mt-2 success"},{default:p(()=>[r("p",vt,[a($,{icon:"fa-solid fa-hashtag",class:"mr-1"}),_(" "+l(e.$t("veo.name.model"))+": "+l(e.modelValue?.request?.model),1)]),r("p",ft,[a($,{icon:"fa-solid fa-magic",class:"mr-1"}),_(" "+l(e.$t("veo.name.taskId"))+": "+l(e.modelValue?.id)+" ",1),a(h,{content:e.modelValue?.id},null,8,["content"])]),e.modelValue?.elapsed?(t(),i("p",_t,[a($,{icon:"fa-solid fa-clock",class:"mr-1"}),_(" "+l(e.$t("veo.name.elapsed"))+": "+l(e.modelValue?.elapsed?.toFixed(2))+"s ",1)])):d("",!0)]),_:1})])):d("",!0),e.modelValue?.response?.success===!1?(t(),i("div",ht,[a(S,{closable:!1,class:"failure"},{template:p(()=>[a($,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),_(" "+l(e.$t("veo.name.failure")),1)]),default:p(()=>[r("p",$t,[a($,{icon:"fa-solid fa-magic",class:"mr-1"}),_(" "+l(e.$t("veo.name.taskId"))+": "+l(e.modelValue?.id)+" ",1),a(h,{content:e.modelValue?.id},null,8,["content"])]),r("p",gt,[a($,{icon:"fa-solid fa-circle-info",class:"mr-1"}),_(" "+l(e.$t("veo.name.failureReason"))+": "+l(e.modelValue?.response?.error?.message)+" ",1),a(h,{content:e.modelValue?.response?.error?.message},null,8,["content"])]),e.modelValue?.elapsed?(t(),i("p",bt,[a($,{icon:"fa-solid fa-clock",class:"mr-1"}),_(" "+l(e.$t("veo.name.elapsed"))+": "+l(e.modelValue?.elapsed?.toFixed(2))+"s ",1)])):d("",!0),e.modelValue?.response?.trace_id?(t(),i("p",kt,[a($,{icon:"fa-solid fa-hashtag",class:"mr-1"}),_(" "+l(e.$t("veo.name.traceId"))+": "+l(e.modelValue?.response?.trace_id)+" ",1),a(h,{content:e.modelValue?.response?.trace_id},null,8,["content"])])):d("",!0)]),_:1})])):d("",!0),e.modelValue?.response?.success===void 0?(t(),i("div",yt,[a(S,{closable:!1,class:"info"},{template:p(()=>[a($,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),_(" "+l(e.$t("veo.name.failure")),1)]),default:p(()=>[r("p",Vt,[a($,{icon:"fa-solid fa-magic",class:"mr-1"}),_(" "+l(e.$t("veo.name.taskId"))+": "+l(e.modelValue?.id)+" ",1),a(h,{content:e.modelValue?.id},null,8,["content"])]),e.modelValue?.response?.trace_id?(t(),i("p",wt,[a($,{icon:"fa-solid fa-hashtag",class:"mr-1"}),_(" "+l(e.$t("veo.name.traceId"))+": "+l(e.modelValue?.response?.trace_id)+" ",1),a(h,{content:e.modelValue?.response?.trace_id},null,8,["content"])])):d("",!0)]),_:1})])):d("",!0)])])}const It=k(ot,[["render",Et],["__scopeId","data-v-83f2991f"]]),Tt=b({name:"RecentPanel",components:{TaskPreview:It,NoTasks:ye,BotPlaceholder:ke,ScrollList:re},props:{loading:{type:Boolean,default:!1}},emits:["reach-top"],data(){return{job:0}},computed:{tasks(){return{...this.$store.state.veo?.tasks,items:this.$store.state.veo?.tasks?.items?.slice()}}},methods:{getScrollElement(){return this.$refs.scrollList?.getScrollElement?.()}}}),St={key:0},Ct={key:2,class:"w-full h-full flex items-center justify-center"};function At(e,o,v,f,y,V){const c=n("bot-placeholder"),u=n("task-preview"),s=n("scroll-list"),w=n("no-tasks");return t(),i(E,null,[e.tasks?.items===void 0?(t(),i("div",St,[a(c)])):e.tasks?.items?.length&&e.tasks?.items?.length>0?(t(),m(s,{key:1,ref:"scrollList",class:"tasks h-full w-full overflow-y-auto",loading:e.loading,onReachTop:o[0]||(o[0]=$=>e.$emit("reach-top"))},{default:p(()=>[(t(!0),i(E,null,T(e.tasks?.items,($,h)=>(t(),m(u,{key:h,"model-value":$},null,8,["model-value"]))),128))]),_:1},8,["loading"])):d("",!0),e.tasks?.items?.length===0?(t(),i("div",Ct,[a(w)])):d("",!0)],64)}const Ot=k(Tt,[["render",At]]),Pt=Z("veo"),Ut=b({name:"VeoIndex",components:{ConfigPanel:et,Layout:Se,RecentPanel:Ot},inject:["initialized"],data(){return{task:void 0,job:0,loadingMore:!1,fetchingTasks:!1}},computed:{applicationsLoading(){return this.$store.state.veo?.status?.getApplications===M.Request},tasksLoading(){return this.$store.state.veo?.status?.getTasks===M.Request||this.fetchingTasks},credential(){return this.$store.state.veo.credential},config(){return this.$store.state.veo.config},tasks(){return this.$store.state.veo.tasks}},watch:{tasks:{handler(e,o){e?.items?.length>o?.items?.length&&console.debug("new tasks detected")},deep:!0},initialized:{async handler(e){e&&(console.debug("layout initialized"),await this.onGetTasks(),await this.onScrollDown(),this.job=window.setInterval(()=>{this.onGetTasks()},5e3))},immediate:!0}},async mounted(){await this.onGetService()},async unmounted(){window.clearInterval(this.job)},methods:{async onReachTop(){await ce({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(){console.debug("start onGetService"),await this.$store.dispatch("veo/getService"),console.debug("end onGetService")},async onGetApplication(){console.debug("start onGetApplication"),await this.$store.dispatch("veo/getApplications"),console.debug("end onGetApplication"),await this.onGetTasks()},async onScrollDown(){await this.$nextTick();const e=this.getTasksScrollElement();e&&(e.scrollTop=e.scrollHeight)},async onGetTasks(e){if(this.applicationsLoading||this.fetchingTasks){console.debug("loading");return}console.debug("start onGetTasks",e);const{limit:o=5,createdAtMin:v,createdAtMax:f}=e||{};console.debug("limit",o,"createdAtMin",v,"createdAtMax",f),this.fetchingTasks=!0;try{await this.$store.dispatch("veo/getTasks",{limit:o,createdAtMin:v,createdAtMax:f})}finally{this.fetchingTasks=!1}},async onGenerate(){const e={...this.config,callback_url:Pt},o=this.credential?.token;if(!o){console.error("no token specified");return}if(e.action==="image2video"&&!(e.image_urls&&e.image_urls.length>0)){I.warning(this.$t("veo.message.imageRequired"));return}(!e.image_urls||e.image_urls.length===0)&&delete e.image_urls,I.info(this.$t("veo.message.startingTask")),W("veo",K.generate(e,{token:o})).then(()=>{I.success(this.$t("veo.message.startTaskSuccess"))}).catch(v=>{v?.response?.data?.error?.code===_e?I.error(this.$t("veo.message.usedUp")):I.error(this.$t("veo.message.startTaskFailed"))}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})},getTasksScrollElement(){return this.$refs.recentPanel?.getScrollElement?.()}}});function Lt(e,o,v,f,y,V){const c=n("config-panel"),u=n("recent-panel"),s=n("layout");return t(),m(s,null,{config:p(()=>[a(c,{onGenerate:e.onGenerate},null,8,["onGenerate"])]),result:p(()=>[a(u,{ref:"recentPanel",loading:e.loadingMore,onReachTop:e.onReachTop},null,8,["loading","onReachTop"])]),_:1})}const Ts=k(Ut,[["render",Lt]]);export{Ts as default};
|
|
1
|
+
import{F as P}from"./index.es-oEqa8Vvo.js";import{E as U}from"./index-kyWjBrWv.js";import{E as Y}from"./index-DKYzi_JL.js";import{d as b,H as i,E as r,z as L,C as a,y as p,D as n,q as t,F as l,O as E,N as T,x as m,Q as C,R as J,J as d,I as _}from"./vendor-vue-NSDaktjZ.js";import{G as k,bj as Q,co as W,aH as K,S as M,cp as Z}from"./index-DJBGdUsj.js";import{a as x,b as ee,c as oe,d as te,e as se,f as ne,g as G,h as ae,i as le,j as ie}from"./veo-Dg8Zhpd-.js";import{E as A,a as O}from"./index-Bcve79lL.js";import{I as j,S as re,l as ce}from"./pagination-CIpi5fgv.js";import{E as de}from"./index-CJtKCzfo.js";import{V as D}from"./VideoPlayer-CIDiV8W4.js";import{E as R}from"./index-Dls6nphu.js";import{p as ue}from"./pasteUploadMixin-BurWbGNQ.js";import{I as pe}from"./ImagePreview-eG-HIW6Z.js";import{E as me}from"./index-CzysM2id.js";import{E as I}from"./index-lrmoLNNf.js";import{C as ve}from"./Consumption-D1RmP9JZ.js";import{a as fe}from"./price-w0Wapj1c.js";import{b as _e}from"./errorCode-Cqj9Td_Z.js";import{C as he}from"./CopyToClipboard-CVe6lcyk.js";import{E as $e}from"./index-DPGiSIg9.js";import{E as ge}from"./index-D7-hCQtC.js";import{E as be}from"./index-BEwbP8jM.js";import{B as ke}from"./BotPlaceholder-BA0YKxqp.js";import{N as ye}from"./NoTasks-rBJZcmkf.js";import"./use-form-item-CmyE7QH4.js";import"./index-BuyEbX8F.js";import"./vendor-axios-B8_nURbH.js";import"./vendor-dayjs-v0j1UNZp.js";import"./vendor-vue-router-Df5ITouH.js";import"./index-j6SYZeEP.js";import"./typescript-BmROFp5p.js";import"./index-RiC3k0dL.js";import"./strings-beZM2Y-f.js";import"./isEqual-BahNgsHz.js";import"./_Uint8Array-BIIxv3lW.js";import"./castArray-DZm4CKhI.js";import"./debounce-BOEGIAMg.js";import"./_baseIteratee-CGsjPRhY.js";import"./index-Bw8YhoHN.js";import"./validator-BRwslcDn.js";import"./vue-plyr-BO2nlN4c.js";import"./index-DyWi-qw9.js";import"./index-BhyNkjm0.js";import"./_baseClone-Cn2yao34.js";import"./_initCloneObject-CIo8XBzq.js";import"./index-s5E1DICA.js";const Ve=b({name:"LayoutVeo",components:{ElDrawer:Y,ElButton:U,FontAwesomeIcon:P},data(){return{drawer:!1}}}),we={class:"main flex flex-row flex-1"},Ee={class:"config w-[320px] flex-none h-full overflow-y-auto bg-[var(--app-sidebar-bg)] border-r border-[var(--app-border-subtle)]"},Ie={class:"result h-full p-6 flex-1 flex flex-col min-w-0 overflow-x-hidden bg-[var(--app-content-bg)]"};function Te(e,o,v,f,y,V){const c=n("font-awesome-icon"),u=n("el-button"),s=n("el-drawer");return t(),i("div",we,[r("div",Ee,[L(e.$slots,"config",{},void 0,!0)]),r("div",Ie,[L(e.$slots,"result",{},void 0,!0)]),a(u,{circle:"",class:"menu",onClick:o[0]||(o[0]=w=>e.drawer=!0)},{default:p(()=>[a(c,{icon:"fa-solid fa-magic"})]),_:1}),a(s,{modelValue:e.drawer,"onUpdate:modelValue":o[1]||(o[1]=w=>e.drawer=w),direction:"ltr","with-header":!1,size:"350px"},{default:p(()=>[L(e.$slots,"config",{},void 0,!0)]),_:3},8,["modelValue"])])}const Se=k(Ve,[["render",Te],["__scopeId","data-v-9b26d591"]]),Ce=b({name:"ModelSelector",components:{ElSelect:O,ElOption:A},props:{modelValue:{type:String,default:void 0}},emits:["update:modelValue"],data(){return{options:[{value:"veo2",label:"veo2"},{value:"veo2-fast",label:"veo2-fast"},{value:"veo3",label:"veo3"},{value:"veo3-fast",label:"veo3-fast"},{value:"veo31-fast",label:"veo31-fast"},{value:"veo31",label:"veo31"},{value:"veo31-fast-ingredients",label:"veo31-fast-ingredients"}]}},computed:{value:{get(){return this.$store.state.veo?.config?.model},set(e){this.$store.commit("veo/setConfig",{...this.$store.state.veo.config,model:e})}}},mounted(){this.value||(this.value=x)}}),Ae={class:"field"},Oe={class:"title font-bold"};function Pe(e,o,v,f,y,V){const c=n("el-option"),u=n("el-select");return t(),i("div",Ae,[r("h2",Oe,l(e.$t("veo.name.model")),1),a(u,{modelValue:e.value,"onUpdate:modelValue":o[0]||(o[0]=s=>e.value=s),class:"value",placeholder:e.$t("veo.placeholder.select")},{default:p(()=>[(t(!0),i(E,null,T(e.options,s=>(t(),m(c,{key:s.value,label:s.label,value:s.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const Ue=k(Ce,[["render",Pe],["__scopeId","data-v-a59d89c9"]]),Le=b({name:"ActionSelector",components:{ElSelect:O,ElOption:A},data(){return{}},computed:{options(){return[{value:"text2video",label:this.$t("veo.button.action1")},{value:"image2video",label:this.$t("veo.button.action2")},{value:"ingredients2video",label:this.$t("veo.button.actionIngredients")},{value:"upsample",label:this.$t("veo.button.actionUpsample")},{value:"extend",label:this.$t("veo.button.actionExtend")},{value:"reshoot",label:this.$t("veo.button.actionReshoot")},{value:"object_insert",label:this.$t("veo.button.actionObjectInsert")},{value:"object_remove",label:this.$t("veo.button.actionObjectRemove")}]},value:{get(){return this.$store.state.veo?.config?.action},set(e){this.$store.commit("veo/setConfig",{...this.$store.state.veo?.config,action:e})}}},mounted(){this.value||(this.value=ee)}}),je={class:"field"},Re={class:"title font-bold"},Me={class:"float-left"};function Ge(e,o,v,f,y,V){const c=n("el-option"),u=n("el-select");return t(),i("div",je,[r("h2",Re,l(e.$t("veo.name.action")),1),a(u,{modelValue:e.value,"onUpdate:modelValue":o[0]||(o[0]=s=>e.value=s),class:"value",placeholder:e.$t("veo.placeholder.select"),clearable:""},{default:p(()=>[(t(!0),i(E,null,T(e.options,s=>(t(),m(c,{key:s.value,label:s.label,value:s.value},{default:p(()=>[r("span",Me,l(s.label),1)]),_:2},1032,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const De=k(Le,[["render",Ge],["__scopeId","data-v-f4d8785c"]]),Ne=b({name:"TranslationSelector",components:{ElSwitch:de,InfoIcon:j},computed:{value:{get(){return this.$store.state.veo?.config?.translation},set(e){console.debug("set translation",e),this.$store.commit("veo/setConfig",{...this.$store.state.veo?.config,translation:e})}}},mounted(){this.value===void 0&&(this.value=oe)}}),Fe={class:"relative"},ze={class:"flex justify-between"},Be={class:"flex justify-start items-center"},qe={class:"text-sm font-bold"},He={class:"flex justify-end items-center"};function Xe(e,o,v,f,y,V){const c=n("info-icon"),u=n("el-switch");return t(),i("div",Fe,[r("div",ze,[r("div",Be,[r("span",qe,l(e.$t("veo.name.translation")),1),a(c,{content:e.$t("veo.description.translation")},null,8,["content"])]),r("div",He,[a(u,{modelValue:e.value,"onUpdate:modelValue":o[0]||(o[0]=s=>e.value=s),class:"value"},null,8,["modelValue"])])])])}const Ye=k(Ne,[["render",Xe]]),Je=b({name:"AspectRatioSelector",data(){return{options:[{value:"1:1",label:"1:1",width:20,height:20},{value:"4:3",label:"4:3",width:20,height:15},{value:"3:4",label:"3:4",width:15,height:20},{value:"16:9",label:"16:9",width:25,height:13},{value:"9:16",label:"9:16",width:13,height:25}]}},computed:{active(){return this.options.findIndex(e=>e.value===this.value)||0},value:{get(){return this.$store.state.veo?.config?.aspect_ratio},set(e){console.debug("set aspect_ratio",e),this.$store.commit("veo/setConfig",{...this.$store.state?.veo?.config,aspect_ratio:e})}}},mounted(){this.value||(this.value=te)}}),Qe={class:"text-sm font-bold mb-2 block"},We={class:"items"},Ke=["onClick"],Ze={class:"name"};function xe(e,o,v,f,y,V){return t(),i("div",null,[r("span",Qe,l(e.$t("veo.name.ratio")),1),r("div",We,[(t(!0),i(E,null,T(e.options,(c,u)=>(t(),i("div",{key:u,class:C({active:e.active===u,item:!0}),onClick:s=>e.value=c.value},[r("div",{class:C(["preview",c.label])},[r("div",{class:"rect",style:J({width:c.width+"px",height:c.height+"px"})},null,4)],2),r("p",Ze,l(c.label),1)],10,Ke))),128))])])}const eo=k(Je,[["render",xe],["__scopeId","data-v-0f16be77"]]),oo=b({name:"VideoFromInput",components:{VideoPlayer:D},props:{modelValue:{type:Object,required:!1,default:void 0}},data(){return{options:{quality:{default:"1080p"}}}},computed:{config(){return this.$store.state.veo?.config}}}),to={class:"relative"},so={class:"flex mb-2"},no={class:"text-sm font-bold"};function ao(e,o,v,f,y,V){const c=n("video-player");return t(),i("div",to,[r("div",so,[r("span",no,l(e.$t("veo.name.action3")),1)]),r("div",null,[e.config?.video_url?(t(),m(c,{key:0,src:e.config?.video_url},null,8,["src"])):d("",!0)])])}const lo=k(oo,[["render",ao]]),io=b({name:"VideoIdInput",components:{ElInput:R},computed:{value:{get(){return this.$store.state.veo?.config?.video_id},set(e){this.$store.commit("veo/setConfig",{...this.$store.state.veo.config,video_id:e})}}}}),ro={class:"field"},co={class:"title font-bold"};function uo(e,o,v,f,y,V){const c=n("el-input");return t(),i("div",ro,[r("h2",co,l(e.$t("veo.name.videoId")),1),a(c,{modelValue:e.value,"onUpdate:modelValue":o[0]||(o[0]=u=>e.value=u),class:"value",type:"text",placeholder:e.$t("veo.placeholder.videoId"),clearable:""},null,8,["modelValue","placeholder"])])}const po=k(io,[["render",uo],["__scopeId","data-v-6eba4026"]]),mo=b({name:"StartEndImage",components:{ElUpload:me,ElButton:U,InfoIcon:j,FontAwesomeIcon:P,ImagePreview:pe},mixins:[ue],emits:["change"],data(){return{fileList:[],uploadUrl:Q()+"/api/v1/files/"}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},urls(){return this.fileList.map(e=>e?.response?.file_url)},value:{get(){return this.$store.state?.veo?.config?.image_urls},set(){}}},mounted(){this.value||(this.value=void 0),this.onSetStartEndImageUrl()},methods:{onExceed(){I.warning(this.$t("veo.message.uploadReferencesExceed"))},onError(){I.error(this.$t("veo.message.uploadReferencesError"))},onSetStartEndImageUrl(){const e=this.urls;this.$store.commit("veo/setConfig",{...this.$store.state?.veo?.config,image_urls:e})},async onSuccess(){this.onSetStartEndImageUrl()}}}),vo={class:"relative"},fo={class:"flex justify-between"},_o={class:"flex justify-start items-center"},ho={class:"text-sm font-bold"};function $o(e,o,v,f,y,V){const c=n("info-icon"),u=n("image-preview"),s=n("font-awesome-icon"),w=n("el-button"),$=n("el-upload");return t(),i("div",vo,[r("div",fo,[r("div",_o,[r("span",ho,l(e.$t("veo.name.startEndImage")),1),a(c,{content:e.$t("veo.description.uploadStartEndImage")},null,8,["content"])])]),a($,{ref:"uploader","file-list":e.fileList,"onUpdate:fileList":o[0]||(o[0]=h=>e.fileList=h),name:"file",accept:".png,.jpg,.jpeg,.gif,.bmp,.webp",limit:2,class:"upload-wrapper",multiple:!1,action:e.uploadUrl,"list-type":"picture","on-exceed":e.onExceed,"on-error":e.onError,"on-success":e.onSuccess,headers:e.headers},{file:p(({file:h})=>[h.url&&h.percentage!==void 0?(t(),m(u,{key:0,url:h.url,name:h.name,percentage:h.percentage,onRemove:S=>e.fileList.splice(e.fileList.indexOf(h),1)},null,8,["url","name","percentage","onRemove"])):d("",!0)]),default:p(()=>[a(w,{round:"",type:"primary",size:"small",class:"btn btn-upload"},{default:p(()=>[a(s,{icon:"fa-solid fa-upload",class:"icon mr-1"}),_(" "+l(e.$t("veo.button.uploadReferences")),1)]),_:1})]),_:1},8,["file-list","action","on-exceed","on-error","on-success","headers"])])}const go=k(mo,[["render",$o],["__scopeId","data-v-b8ddb8fb"]]),bo=b({name:"UpsampleActionSelector",components:{ElSelect:O,ElOption:A},computed:{options(){return ne.map(e=>({value:e,label:e}))},value:{get(){return this.$store.state.veo?.config?.upsample_action},set(e){this.$store.commit("veo/setConfig",{...this.$store.state.veo.config,upsample_action:e})}}},mounted(){this.value||(this.value=se)}}),ko={class:"field"},yo={class:"title font-bold"};function Vo(e,o,v,f,y,V){const c=n("el-option"),u=n("el-select");return t(),i("div",ko,[r("h2",yo,l(e.$t("veo.name.upsampleAction")),1),a(u,{modelValue:e.value,"onUpdate:modelValue":o[0]||(o[0]=s=>e.value=s),class:"value",placeholder:e.$t("veo.placeholder.select")},{default:p(()=>[(t(!0),i(E,null,T(e.options,s=>(t(),m(c,{key:s.value,label:s.label,value:s.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const wo=k(bo,[["render",Vo],["__scopeId","data-v-8b74a7ae"]]),Eo=b({name:"ExtendModelSelector",components:{ElSelect:O,ElOption:A},computed:{options(){return G.map(e=>({value:e,label:e}))},value:{get(){return this.$store.state.veo?.config?.model},set(e){this.$store.commit("veo/setConfig",{...this.$store.state.veo.config,model:e})}}},mounted(){(!this.value||!G.includes(this.value))&&(this.value=ae)}}),Io={class:"field"},To={class:"title font-bold"};function So(e,o,v,f,y,V){const c=n("el-option"),u=n("el-select");return t(),i("div",Io,[r("h2",To,l(e.$t("veo.name.model")),1),a(u,{modelValue:e.value,"onUpdate:modelValue":o[0]||(o[0]=s=>e.value=s),class:"value",placeholder:e.$t("veo.placeholder.select")},{default:p(()=>[(t(!0),i(E,null,T(e.options,s=>(t(),m(c,{key:s.value,label:s.label,value:s.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const Co=k(Eo,[["render",So],["__scopeId","data-v-cc3f9355"]]),Ao=b({name:"MotionTypeSelector",components:{ElSelect:O,ElOption:A},computed:{options(){return ie.map(e=>({value:e,label:e}))},value:{get(){return this.$store.state.veo?.config?.motion_type},set(e){this.$store.commit("veo/setConfig",{...this.$store.state.veo.config,motion_type:e})}}},mounted(){this.value||(this.value=le)}}),Oo={class:"field"},Po={class:"title font-bold"};function Uo(e,o,v,f,y,V){const c=n("el-option"),u=n("el-select");return t(),i("div",Oo,[r("h2",Po,l(e.$t("veo.name.motionType")),1),a(u,{modelValue:e.value,"onUpdate:modelValue":o[0]||(o[0]=s=>e.value=s),class:"value",placeholder:e.$t("veo.placeholder.select"),filterable:""},{default:p(()=>[(t(!0),i(E,null,T(e.options,s=>(t(),m(c,{key:s.value,label:s.label,value:s.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const Lo=k(Ao,[["render",Uo],["__scopeId","data-v-3affff3c"]]),jo=b({name:"ImageMaskInput",components:{ElInput:R},computed:{value:{get(){return this.$store.state.veo?.config?.image_mask},set(e){this.$store.commit("veo/setConfig",{...this.$store.state.veo.config,image_mask:e})}}}}),Ro={class:"field"},Mo={class:"title font-bold"};function Go(e,o,v,f,y,V){const c=n("el-input");return t(),i("div",Ro,[r("h2",Mo,l(e.$t("veo.name.imageMask")),1),a(c,{modelValue:e.value,"onUpdate:modelValue":o[0]||(o[0]=u=>e.value=u),class:"value",type:"text",placeholder:e.$t("veo.placeholder.imageMask"),clearable:""},null,8,["modelValue","placeholder"])])}const Do=k(jo,[["render",Go],["__scopeId","data-v-6cc27c68"]]),No="",Fo=b({name:"PromptInput",components:{ElInput:R,InfoIcon:j},computed:{prompt:{get(){return this.$store.state.veo?.config?.prompt},set(e){console.debug("set prompt",e),this.$store.commit("veo/setConfig",{...this.$store.state.veo?.config,prompt:e})}}},mounted(){this.prompt||(this.prompt=No)}}),zo={class:"field"},Bo={class:"box"},qo={class:"title font-bold"};function Ho(e,o,v,f,y,V){const c=n("info-icon"),u=n("el-input");return t(),i("div",zo,[r("div",Bo,[r("h2",qo,l(e.$t("veo.name.prompt")),1),a(c,{content:e.$t("veo.description.prompt"),class:"info"},null,8,["content"])]),a(u,{modelValue:e.prompt,"onUpdate:modelValue":o[0]||(o[0]=s=>e.prompt=s),rows:3,type:"textarea",class:"prompt",placeholder:e.$t("veo.placeholder.prompt")},null,8,["modelValue","placeholder"])])}const Xo=k(Fo,[["render",Ho],["__scopeId","data-v-84c55ea0"]]),Yo=["upsample","extend","reshoot","object_insert","object_remove","get1080p"],Jo=["text2video","image2video","ingredients2video"],Qo=b({name:"ConfigPanel",components:{ElButton:U,Consumption:ve,FontAwesomeIcon:P,PromptInput:Xo,ModelSelector:Ue,StartEndImage:go,ActionSelector:De,VideoFromInput:lo,VideoIdInput:po,UpsampleActionSelector:wo,ExtendModelSelector:Co,MotionTypeSelector:Lo,ImageMaskInput:Do,TranslationSelector:Ye,AspectRatioSelector:eo},emits:["generate"],computed:{config(){return this.$store.state.veo?.config},consumption(){return fe(this.config,this.service?.cost)},service(){return this.$store.state.veo?.service},isPostProcessing(){return Yo.includes(this.config?.action??"")},isGeneration(){return Jo.includes(this.config?.action??"")}},methods:{onGenerate(){this.$emit("generate")}}}),Wo={class:"flex flex-col h-full"},Ko={class:"flex-1 overflow-y-auto p-5"},Zo={class:"flex flex-col items-center justify-center px-5 pb-5"};function xo(e,o,v,f,y,V){const c=n("action-selector"),u=n("video-from-input"),s=n("video-id-input"),w=n("upsample-action-selector"),$=n("extend-model-selector"),h=n("prompt-input"),S=n("motion-type-selector"),g=n("image-mask-input"),N=n("translation-selector"),F=n("aspect-ratio-selector"),z=n("model-selector"),B=n("start-end-image"),q=n("consumption"),H=n("font-awesome-icon"),X=n("el-button");return t(),i("div",Wo,[r("div",Ko,[a(c,{class:"mb-4"}),e.isPostProcessing?(t(),i(E,{key:0},[e.config?.video_url?(t(),m(u,{key:0,class:"mb-4"})):d("",!0),a(s,{class:"mb-4"})],64)):d("",!0),e.config?.action==="upsample"?(t(),m(w,{key:1,class:"mb-4"})):d("",!0),e.config?.action==="extend"?(t(),m($,{key:2,class:"mb-4"})):d("",!0),e.config?.action==="extend"?(t(),m(h,{key:3,class:"mb-4"})):d("",!0),e.config?.action==="reshoot"?(t(),m(S,{key:4,class:"mb-4"})):d("",!0),e.config?.action==="object_insert"?(t(),m(h,{key:5,class:"mb-4"})):d("",!0),e.config?.action==="object_insert"||e.config?.action==="object_remove"?(t(),m(g,{key:6,class:"mb-4"})):d("",!0),e.config?.action==="object_remove"?(t(),m(h,{key:7,class:"mb-4"})):d("",!0),e.isGeneration?(t(),i(E,{key:8},[a(N,{class:"mb-4"}),a(F,{class:"mb-4"}),a(h,{class:"mb-4"}),e.config?.action!=="ingredients2video"?(t(),m(z,{key:0,class:"mb-4"})):d("",!0),e.config?.action==="image2video"||e.config?.action==="ingredients2video"?(t(),m(B,{key:1,class:"mb-2"})):d("",!0)],64)):d("",!0)]),r("div",Zo,[a(q,{value:e.consumption,service:e.service},null,8,["value","service"]),a(X,{type:"primary",class:"btn w-full",round:"",onClick:e.onGenerate},{default:p(()=>[a(H,{icon:"fa-solid fa-magic",class:"mr-2"}),_(" "+l(e.$t("veo.button.generate")),1)]),_:1},8,["onClick"])])])}const et=k(Qo,[["render",xo]]),ot=b({name:"TaskPreview",components:{ElImage:be,CopyToClipboard:he,FontAwesomeIcon:P,ElAlert:ge,VideoPlayer:D,ElTooltip:$e,ElButton:U},props:{modelValue:{type:Object,required:!0}},data(){return{}},computed:{application(){return this.$store.state.veo?.application},config(){return this.$store.state.veo?.config}},methods:{onPickAction(e,o,v,f){console.debug("seed config from preview",{action:v,upsampleAction:f,response:o}),this.$store.commit("veo/setConfig",{...this.$store.state.veo?.config,action:v,video_id:o?.data?.[0]?.id,video_url:o?.data?.[0]?.video_url,...f?{upsample_action:f}:{}})},onDownload(e,o){e.stopPropagation(),console.log("on download"),window.open(o,"_blank")},onOpenVideo(e){window.open(e,"_blank")}}}),tt={class:"preview"},st={class:"left"},nt={class:"main"},at={class:"bot"},lt={class:"datetime"},it={class:"info"},rt={key:0,class:"prompt mt-2"},ct={key:0},dt={key:1},ut={key:0,class:C({content:!0,failed:!0})},pt={key:0,class:"mb-4"},mt={key:1,class:C({operations:!0,"mt-2":!0})},vt={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},ft={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},_t={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-0"},ht={key:1,class:C({content:!0})},$t={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},gt={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},bt={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},kt={key:1,class:"text-[var(--el-text-color-regular)] text-xs mb-0"},yt={key:2,class:C({content:!0})},Vt={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},wt={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-0"};function Et(e,o,v,f,y,V){const c=n("el-image"),u=n("video-player"),s=n("el-button"),w=n("el-tooltip"),$=n("font-awesome-icon"),h=n("copy-to-clipboard"),S=n("el-alert");return t(),i("div",tt,[r("div",st,[a(c,{src:"https://cdn.acedata.cloud/8nxyy9.jpg",class:"avatar"})]),r("div",nt,[r("div",at,[_(l(e.$t("veo.name.veoBot"))+" ",1),r("span",lt,l(e.$dayjs.format(""+new Date(parseFloat((e.modelValue?.created_at||"").toString())*1e3))),1)]),r("div",it,[e.modelValue?.request?.prompt?(t(),i("p",rt,[_(l(e.modelValue?.request?.prompt)+" ",1),e.modelValue?.response?d("",!0):(t(),i("span",ct," - ("+l(e.$t("veo.status.pending"))+") ",1)),Array.isArray(e.modelValue?.response?.data)&&e.modelValue?.response?.data[0]?.state==="running"?(t(),i("span",dt," - ("+l(e.$t("veo.status.processing"))+") ",1)):d("",!0)])):d("",!0)]),e.modelValue?.response?.success===!0&&e.modelValue?.response?.data?(t(),i("div",ut,[e.modelValue?.response?.data[0]?.video_url?(t(),i("div",pt,[a(u,{src:e.modelValue?.response?.data[0]?.video_url},null,8,["src"])])):d("",!0),e.modelValue?.response.success?(t(),i("div",mt,[e.modelValue?.response?.data[0]?.video_url?(t(),m(s,{key:0,type:"info",size:"small",class:"btn-action",onClick:o[0]||(o[0]=g=>e.onPickAction(g,e.modelValue?.response,"upsample","1080p"))},{default:p(()=>[_(l(e.$t("veo.button.actionUpsample1080p")),1)]),_:1})):d("",!0),e.modelValue?.response?.data[0]?.video_url?(t(),m(s,{key:1,type:"info",size:"small",class:"btn-action",onClick:o[1]||(o[1]=g=>e.onPickAction(g,e.modelValue?.response,"upsample","4k"))},{default:p(()=>[_(l(e.$t("veo.button.actionUpsample4k")),1)]),_:1})):d("",!0),e.modelValue?.response?.data[0]?.video_url?(t(),m(s,{key:2,type:"info",size:"small",class:"btn-action",onClick:o[2]||(o[2]=g=>e.onPickAction(g,e.modelValue?.response,"upsample","gif"))},{default:p(()=>[_(l(e.$t("veo.button.actionUpsampleGif")),1)]),_:1})):d("",!0),e.modelValue?.response?.data[0]?.video_url?(t(),m(s,{key:3,type:"info",size:"small",class:"btn-action",onClick:o[3]||(o[3]=g=>e.onPickAction(g,e.modelValue?.response,"extend"))},{default:p(()=>[_(l(e.$t("veo.button.actionExtend")),1)]),_:1})):d("",!0),e.modelValue?.response?.data[0]?.video_url?(t(),m(s,{key:4,type:"info",size:"small",class:"btn-action",onClick:o[4]||(o[4]=g=>e.onPickAction(g,e.modelValue?.response,"reshoot"))},{default:p(()=>[_(l(e.$t("veo.button.actionReshoot")),1)]),_:1})):d("",!0),e.modelValue?.response?.data[0]?.video_url?(t(),m(s,{key:5,type:"info",size:"small",class:"btn-action",onClick:o[5]||(o[5]=g=>e.onPickAction(g,e.modelValue?.response,"object_insert"))},{default:p(()=>[_(l(e.$t("veo.button.actionObjectInsert")),1)]),_:1})):d("",!0),e.modelValue?.response?.data[0]?.video_url?(t(),m(s,{key:6,type:"info",size:"small",class:"btn-action",onClick:o[6]||(o[6]=g=>e.onPickAction(g,e.modelValue?.response,"object_remove"))},{default:p(()=>[_(l(e.$t("veo.button.actionObjectRemove")),1)]),_:1})):d("",!0),a(w,{class:"box-item",effect:"dark",content:e.$t("veo.message.downloadVideo"),placement:"top-start"},{default:p(()=>[e.modelValue?.response?.data[0]?.video_url?(t(),m(s,{key:0,type:"info",size:"small",class:"btn-action",onClick:o[7]||(o[7]=g=>e.onDownload(g,e.modelValue?.response?.data[0]?.video_url))},{default:p(()=>[_(l(e.$t("veo.button.download")),1)]),_:1})):d("",!0)]),_:1},8,["content"])])):d("",!0),a(S,{closable:!1,class:"mt-2 success"},{default:p(()=>[r("p",vt,[a($,{icon:"fa-solid fa-hashtag",class:"mr-1"}),_(" "+l(e.$t("veo.name.model"))+": "+l(e.modelValue?.request?.model),1)]),r("p",ft,[a($,{icon:"fa-solid fa-magic",class:"mr-1"}),_(" "+l(e.$t("veo.name.taskId"))+": "+l(e.modelValue?.id)+" ",1),a(h,{content:e.modelValue?.id},null,8,["content"])]),e.modelValue?.elapsed?(t(),i("p",_t,[a($,{icon:"fa-solid fa-clock",class:"mr-1"}),_(" "+l(e.$t("veo.name.elapsed"))+": "+l(e.modelValue?.elapsed?.toFixed(2))+"s ",1)])):d("",!0)]),_:1})])):d("",!0),e.modelValue?.response?.success===!1?(t(),i("div",ht,[a(S,{closable:!1,class:"failure"},{template:p(()=>[a($,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),_(" "+l(e.$t("veo.name.failure")),1)]),default:p(()=>[r("p",$t,[a($,{icon:"fa-solid fa-magic",class:"mr-1"}),_(" "+l(e.$t("veo.name.taskId"))+": "+l(e.modelValue?.id)+" ",1),a(h,{content:e.modelValue?.id},null,8,["content"])]),r("p",gt,[a($,{icon:"fa-solid fa-circle-info",class:"mr-1"}),_(" "+l(e.$t("veo.name.failureReason"))+": "+l(e.modelValue?.response?.error?.message)+" ",1),a(h,{content:e.modelValue?.response?.error?.message},null,8,["content"])]),e.modelValue?.elapsed?(t(),i("p",bt,[a($,{icon:"fa-solid fa-clock",class:"mr-1"}),_(" "+l(e.$t("veo.name.elapsed"))+": "+l(e.modelValue?.elapsed?.toFixed(2))+"s ",1)])):d("",!0),e.modelValue?.response?.trace_id?(t(),i("p",kt,[a($,{icon:"fa-solid fa-hashtag",class:"mr-1"}),_(" "+l(e.$t("veo.name.traceId"))+": "+l(e.modelValue?.response?.trace_id)+" ",1),a(h,{content:e.modelValue?.response?.trace_id},null,8,["content"])])):d("",!0)]),_:1})])):d("",!0),e.modelValue?.response?.success===void 0?(t(),i("div",yt,[a(S,{closable:!1,class:"info"},{template:p(()=>[a($,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),_(" "+l(e.$t("veo.name.failure")),1)]),default:p(()=>[r("p",Vt,[a($,{icon:"fa-solid fa-magic",class:"mr-1"}),_(" "+l(e.$t("veo.name.taskId"))+": "+l(e.modelValue?.id)+" ",1),a(h,{content:e.modelValue?.id},null,8,["content"])]),e.modelValue?.response?.trace_id?(t(),i("p",wt,[a($,{icon:"fa-solid fa-hashtag",class:"mr-1"}),_(" "+l(e.$t("veo.name.traceId"))+": "+l(e.modelValue?.response?.trace_id)+" ",1),a(h,{content:e.modelValue?.response?.trace_id},null,8,["content"])])):d("",!0)]),_:1})])):d("",!0)])])}const It=k(ot,[["render",Et],["__scopeId","data-v-83f2991f"]]),Tt=b({name:"RecentPanel",components:{TaskPreview:It,NoTasks:ye,BotPlaceholder:ke,ScrollList:re},props:{loading:{type:Boolean,default:!1}},emits:["reach-top"],data(){return{job:0}},computed:{tasks(){return{...this.$store.state.veo?.tasks,items:this.$store.state.veo?.tasks?.items?.slice()}}},methods:{getScrollElement(){return this.$refs.scrollList?.getScrollElement?.()}}}),St={key:0},Ct={key:2,class:"w-full h-full flex items-center justify-center"};function At(e,o,v,f,y,V){const c=n("bot-placeholder"),u=n("task-preview"),s=n("scroll-list"),w=n("no-tasks");return t(),i(E,null,[e.tasks?.items===void 0?(t(),i("div",St,[a(c)])):e.tasks?.items?.length&&e.tasks?.items?.length>0?(t(),m(s,{key:1,ref:"scrollList",class:"tasks h-full w-full overflow-y-auto",loading:e.loading,onReachTop:o[0]||(o[0]=$=>e.$emit("reach-top"))},{default:p(()=>[(t(!0),i(E,null,T(e.tasks?.items,($,h)=>(t(),m(u,{key:h,"model-value":$},null,8,["model-value"]))),128))]),_:1},8,["loading"])):d("",!0),e.tasks?.items?.length===0?(t(),i("div",Ct,[a(w)])):d("",!0)],64)}const Ot=k(Tt,[["render",At]]),Pt=Z("veo"),Ut=b({name:"VeoIndex",components:{ConfigPanel:et,Layout:Se,RecentPanel:Ot},inject:["initialized"],data(){return{task:void 0,job:0,loadingMore:!1,fetchingTasks:!1}},computed:{applicationsLoading(){return this.$store.state.veo?.status?.getApplications===M.Request},tasksLoading(){return this.$store.state.veo?.status?.getTasks===M.Request||this.fetchingTasks},credential(){return this.$store.state.veo.credential},config(){return this.$store.state.veo.config},tasks(){return this.$store.state.veo.tasks}},watch:{tasks:{handler(e,o){e?.items?.length>o?.items?.length&&console.debug("new tasks detected")},deep:!0},initialized:{async handler(e){e&&(console.debug("layout initialized"),await this.onGetTasks(),await this.onScrollDown(),this.job=window.setInterval(()=>{this.onGetTasks()},5e3))},immediate:!0}},async mounted(){await this.onGetService()},async unmounted(){window.clearInterval(this.job)},methods:{async onReachTop(){await ce({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(){console.debug("start onGetService"),await this.$store.dispatch("veo/getService"),console.debug("end onGetService")},async onGetApplication(){console.debug("start onGetApplication"),await this.$store.dispatch("veo/getApplications"),console.debug("end onGetApplication"),await this.onGetTasks()},async onScrollDown(){await this.$nextTick();const e=this.getTasksScrollElement();e&&(e.scrollTop=e.scrollHeight)},async onGetTasks(e){if(this.applicationsLoading||this.fetchingTasks){console.debug("loading");return}console.debug("start onGetTasks",e);const{limit:o=5,createdAtMin:v,createdAtMax:f}=e||{};console.debug("limit",o,"createdAtMin",v,"createdAtMax",f),this.fetchingTasks=!0;try{await this.$store.dispatch("veo/getTasks",{limit:o,createdAtMin:v,createdAtMax:f})}finally{this.fetchingTasks=!1}},async onGenerate(){const e={...this.config,callback_url:Pt},o=this.credential?.token;if(!o){console.error("no token specified");return}if(e.action==="image2video"&&!(e.image_urls&&e.image_urls.length>0)){I.warning(this.$t("veo.message.imageRequired"));return}(!e.image_urls||e.image_urls.length===0)&&delete e.image_urls,I.info(this.$t("veo.message.startingTask")),W("veo",K.generate(e,{token:o})).then(()=>{I.success(this.$t("veo.message.startTaskSuccess"))}).catch(v=>{v?.response?.data?.error?.code===_e?I.error(this.$t("veo.message.usedUp")):I.error(this.$t("veo.message.startTaskFailed"))}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})},getTasksScrollElement(){return this.$refs.recentPanel?.getScrollElement?.()}}});function Lt(e,o,v,f,y,V){const c=n("config-panel"),u=n("recent-panel"),s=n("layout");return t(),m(s,null,{config:p(()=>[a(c,{onGenerate:e.onGenerate},null,8,["onGenerate"])]),result:p(()=>[a(u,{ref:"recentPanel",loading:e.loadingMore,onReachTop:e.onReachTop},null,8,["loading","onReachTop"])]),_:1})}const Ts=k(Ut,[["render",Lt]]);export{Ts as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{F as q}from"./index.es-BGvCJe-W.js";import{E as P}from"./index-BF3jvRlG.js";import{E as oe}from"./index-CP6llfLN.js";import{d as k,H as c,E as l,z as U,C as s,y as $,D as a,q as n,F as r,I as g,O as y,N as A,J as v,x as E,M as ae,Q as D}from"./vendor-vue-NSDaktjZ.js";import{G as S,de as O,df as R,dg as j,dh as L,di as G,dj as W,dk as F,dl as H,dm as J,dn as Q,bj as ne,dp as re,dq as K,dr as le,ds as ie,dt as ce,du as Z,dv as de,dw as me,dx as Y,co as ue,S as X,cp as pe}from"./index-B7lLMdzb.js";import{I,S as fe,l as _e}from"./pagination-DSYOIV_9.js";import{E as ge}from"./index-zQkXvP4I.js";import{p as he}from"./pasteUploadMixin-BurWbGNQ.js";import{I as ee}from"./ImagePreview-8xggEAtd.js";import{E as $e}from"./index-2P6neM4R.js";import{E as z}from"./index-DmgFbW9M.js";import{C as ve}from"./Consumption-D1DmjLsj.js";import{a as be}from"./price-BoiEmiVd.js";import{E as B,a as x,b as Ee}from"./index-B21ZeSrS.js";import{E as ke}from"./index-B2vTKKd_.js";import{E as N}from"./index-Cke3Ztbn.js";import{E as Se}from"./index-DvlZSfpu.js";import{b as ye}from"./errorCode-Cqj9Td_Z.js";import{s as we}from"./seedream-B_0r5a5d.js";import{C as Ie}from"./CopyToClipboard-BS0IZ5vm.js";import{I as Ae}from"./ImageWrapper-JCiqYITj.js";import{E as Ve}from"./index-BiC7KGb5.js";import{E as ze}from"./index-ViGPRpNP.js";import{E as Me}from"./index-DuW5L2r7.js";import{B as Te}from"./BotPlaceholder-qj2YLdAp.js";import{N as Re}from"./NoTasks-YcewaUb5.js";import"./use-form-item-DZgxCtXL.js";import"./index-BuyEbX8F.js";import"./vendor-axios-B8_nURbH.js";import"./vendor-dayjs-v0j1UNZp.js";import"./vendor-vue-router-Df5ITouH.js";import"./typescript-Bj1ijDQ6.js";import"./index-cN8cftWM.js";import"./index-pQFvUXd3.js";import"./index-Dw3SeELD.js";import"./_baseClone-Db65SBvG.js";import"./_Uint8Array-4l3jEroS.js";import"./_initCloneObject-C7XzV3eb.js";import"./isEqual-CfmBLeOp.js";import"./index-CGiBnpqk.js";import"./strings-beZM2Y-f.js";import"./castArray-FN0qIC-F.js";import"./debounce-CqzxdC1T.js";import"./_baseIteratee-CJ9W-nbE.js";import"./index-CbH6hylr.js";import"./validator-2sHPIwNN.js";import"./index-Cu41y2Fl.js";import"./index-B-vHnqyE.js";const Le=k({name:"LayoutSeedream",components:{ElDrawer:oe,ElButton:P,FontAwesomeIcon:q},data(){return{drawer:!1}}}),De={class:"main flex flex-row flex-1"},Ce={class:"config w-[320px] h-full overflow-y-auto bg-[var(--app-sidebar-bg)] border-r border-[var(--app-border-subtle)]"},qe={class:"result h-full p-6 flex-1 flex flex-col bg-[var(--app-content-bg)]"};function Pe(e,t,d,o,m,p){const u=a("font-awesome-icon"),f=a("el-button"),i=a("el-drawer");return n(),c("div",De,[l("div",Ce,[U(e.$slots,"config",{},void 0,!0)]),l("div",qe,[U(e.$slots,"result",{},void 0,!0)]),s(f,{circle:"",class:"menu",onClick:t[0]||(t[0]=_=>e.drawer=!0)},{default:$(()=>[s(u,{icon:"fa-solid fa-magic"})]),_:1}),s(i,{modelValue:e.drawer,"onUpdate:modelValue":t[1]||(t[1]=_=>e.drawer=_),direction:"ltr","with-header":!1,size:"340px",class:"drawer"},{default:$(()=>[U(e.$slots,"config",{},void 0,!0)]),_:3},8,["modelValue"])])}const Ue=S(Le,[["render",Pe],["__scopeId","data-v-f2a6eb9e"]]),Ge="",Fe=k({name:"SeedreamPromptInput",components:{ElInput:ge,InfoIcon:I},computed:{prompt:{get(){return this.$store.state.seedream?.config?.prompt},set(e){console.debug("set prompt",e),this.$store.commit("seedream/setConfig",{...this.$store.state.seedream?.config,prompt:e})}}},mounted(){this.prompt||(this.prompt=Ge)}}),Oe={class:"field"},je={class:"box"},Be={class:"title font-bold"};function xe(e,t,d,o,m,p){const u=a("info-icon"),f=a("el-input");return n(),c("div",Oe,[l("div",je,[l("h2",Be,r(e.$t("seedream.name.prompt")),1),s(u,{content:e.$t("seedream.description.prompt"),class:"info"},null,8,["content"])]),s(f,{modelValue:e.prompt,"onUpdate:modelValue":t[0]||(t[0]=i=>e.prompt=i),rows:3,type:"textarea",class:"prompt",placeholder:e.$t("seedream.placeholder.prompt")},null,8,["modelValue","placeholder"])])}const Ne=S(Fe,[["render",xe],["__scopeId","data-v-5559520a"]]),We={image:!0,imageRequired:!1,sizeTiers:[O,R,j,L],sizeAdaptive:!0,sizePixel:!0,sizePixelDefault:void 0,groupGeneration:!1,seed:!1,guidanceScale:!1,outputFormat:!1,tools:!1};function w(e){switch(e){case Q:return{image:!0,imageRequired:!1,sizeTiers:[R,j,L],sizeAdaptive:!0,sizePixel:!0,groupGeneration:!0,seed:!1,guidanceScale:!1,outputFormat:!0,tools:!0};case J:return{image:!0,imageRequired:!1,sizeTiers:[R,L],sizeAdaptive:!0,sizePixel:!0,groupGeneration:!0,seed:!1,guidanceScale:!1,outputFormat:!1,tools:!1};case H:return{image:!0,imageRequired:!1,sizeTiers:[O,R,L],sizeAdaptive:!0,sizePixel:!0,groupGeneration:!0,seed:!1,guidanceScale:!1,outputFormat:!1,tools:!1};case F:return{image:!1,imageRequired:!1,sizeTiers:[],sizeAdaptive:!1,sizePixel:!0,sizePixelDefault:"1024x1024",groupGeneration:!1,seed:!0,guidanceScale:!0,guidanceScaleDefault:W[F],outputFormat:!1,tools:!1};case G:return{image:!0,imageRequired:!0,sizeTiers:[],sizeAdaptive:!1,sizePixel:!0,sizePixelDefault:"1024x1024",groupGeneration:!1,seed:!1,guidanceScale:!0,guidanceScaleDefault:W[G],outputFormat:!1,tools:!1};default:return We}}const Ke=[O,R,j,L];function Ze(e,t){if(!e)return[];const d=t.model??e.model;if(!d)return[];const o=w(d),m=[];Array.isArray(e.image)&&e.image.length>0&&!o.image&&m.push({field:"image",i18nLabel:"seedream.name.imageUrls"});const p=typeof e.size=="string"?e.size:void 0;if(p){const u=p.toUpperCase();Ke.includes(u)&&!o.sizeTiers.includes(u)?m.push({field:"size",i18nLabel:"seedream.name.size"}):p==="adaptive"&&!o.sizeAdaptive&&m.push({field:"size",i18nLabel:"seedream.name.size"})}return e.sequential_image_generation==="auto"&&!o.groupGeneration&&m.push({field:"sequential_image_generation",i18nLabel:"seedream.name.maxImages"}),e.seed!==void 0&&e.seed!==null&&!o.seed&&m.push({field:"seed",i18nLabel:"seedream.name.seed"}),e.guidance_scale!==void 0&&e.guidance_scale!==null&&!o.guidanceScale&&m.push({field:"guidance_scale",i18nLabel:"seedream.name.guidanceScale"}),e.output_format&&!o.outputFormat&&m.push({field:"output_format",i18nLabel:"seedream.name.outputFormat"}),Array.isArray(e.tools)&&e.tools.length>0&&!o.tools&&m.push({field:"tools",i18nLabel:"seedream.name.tools"}),m}function Xe(e,t,d){const o={...e},m=d.model??e.model,p=w(m);for(const u of t)switch(u.field){case"image":delete o.image;break;case"size":p.sizePixelDefault?o.size=p.sizePixelDefault:delete o.size;break;case"sequential_image_generation":o.sequential_image_generation="disabled",delete o.sequential_image_generation_options;break;case"seed":delete o.seed;break;case"guidance_scale":delete o.guidance_scale;break;case"output_format":delete o.output_format;break;case"tools":delete o.tools;break}return o}const He=k({name:"SeedreamImageInput",components:{ElUpload:$e,ElButton:P,InfoIcon:I,ImagePreview:ee,FontAwesomeIcon:q},mixins:[he],data(){return{fileList:[],uploadUrl:ne()+"/api/v1/files/",suppressWatch:!1}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},urls(){return this.fileList.map(e=>e?.response?.file_url).filter(e=>!!e)},value(){return this.$store.state.seedream?.config?.image},model(){return this.$store.state.seedream?.config?.model},supported(){return w(this.model).image}},watch:{value:{immediate:!0,handler(e){if(this.suppressWatch)return;if(!e||e.length===0){const o=(this.fileList||[]).filter(m=>!m?.response?.file_url);this.fileList=o.length?o:[];return}const t=[];e.forEach(o=>{const m=this.fileList.find(p=>p?.response?.file_url===o||p?.url===o);m?t.push(m):t.push({name:o.split("/").pop()||o,url:o,status:"success",percentage:100,response:{file_url:o}})}),(this.fileList||[]).filter(o=>!o?.response?.file_url).forEach(o=>{t.some(p=>p===o||p?.url===o?.url||p?.response?.file_url===o?.response?.file_url)||t.push(o)}),this.fileList=t}}},methods:{onChange(e){if(!e?.url&&e?.raw)try{e.url=URL.createObjectURL(e.raw)}catch{}},onRemove(e){if(e?.url&&typeof e.url=="string"&&e.url.startsWith("blob:"))try{URL.revokeObjectURL(e.url)}catch{}this.onSetImages()},onExceed(){z.warning(this.$t("seedream.message.uploadImageExceed"))},onError(){z.error(this.$t("seedream.message.uploadImageError"))},onSetImages(){const e=this.urls;this.suppressWatch=!0,this.$store.commit("seedream/setConfig",{...this.$store.state.seedream?.config,image:e}),this.$nextTick(()=>{this.suppressWatch=!1})},async onSuccess(e,t){e?.file_url&&(t.url=e.file_url,t.response=e),this.onSetImages()},onRemovePreview(e,t){if(this.fileList.splice(e,1),t?.url&&typeof t.url=="string"&&t.url.startsWith("blob:"))try{URL.revokeObjectURL(t.url)}catch{}this.onSetImages()}}}),Je={key:0},Qe={class:"field"},Ye={class:"label"},et={class:"box"},tt={class:"title font-bold"},st={class:"value"},ot={class:"file-list mt-2 flex flex-wrap gap-[10px]"};function at(e,t,d,o,m,p){const u=a("info-icon"),f=a("font-awesome-icon"),i=a("el-button"),_=a("el-upload"),h=a("image-preview");return e.supported?(n(),c("div",Je,[l("div",Qe,[l("div",Ye,[l("div",et,[l("h2",tt,r(e.$t("seedream.name.imageUrls")),1),s(u,{content:e.$t("seedream.description.imageUrls"),class:"info"},null,8,["content"])])]),l("div",st,[s(_,{ref:"uploader","file-list":e.fileList,"onUpdate:fileList":t[0]||(t[0]=b=>e.fileList=b),accept:".png,.jpg,.jpeg,.gif,.bmp,.webp",name:"file",limit:14,multiple:!0,"show-file-list":!1,action:e.uploadUrl,"on-exceed":e.onExceed,"on-error":e.onError,"on-success":e.onSuccess,"on-change":e.onChange,"on-remove":e.onRemove,headers:e.headers},{default:$(()=>[s(i,{size:"small",type:"primary",round:""},{default:$(()=>[s(f,{icon:"fa-solid fa-upload",class:"mr-1"}),g(" "+r(e.$t("seedream.button.uploadImageUrls")),1)]),_:1})]),_:1},8,["file-list","action","on-exceed","on-error","on-success","on-change","on-remove","headers"])])]),l("div",ot,[(n(!0),c(y,null,A(e.fileList,(b,M)=>(n(),E(h,{key:b.uid||b?.response?.file_url||b.url||M,url:b.url||b?.response?.file_url,name:b.name,percentage:b.percentage,onRemove:C=>e.onRemovePreview(M,b)},null,8,["url","name","percentage","onRemove"]))),128))])])):v("",!0)}const nt=S(He,[["render",at],["__scopeId","data-v-2aa4829c"]]),rt=k({name:"SeedreamModelSelector",components:{ElSelect:x,ElOption:B,InfoIcon:I},data(){return{revertKey:0,options:[{value:Q,label:this.$t("seedream.model.seedream50")},{value:J,label:this.$t("seedream.model.seedream45")},{value:H,label:this.$t("seedream.model.seedream40")},{value:F,label:this.$t("seedream.model.seedream30t2i")},{value:G,label:this.$t("seedream.model.seededit30i2i")}]}},computed:{value(){return this.$store.state.seedream?.config?.model}},mounted(){this.value||this.applyModel(re)},methods:{async onChange(e){const t=this.$store.state.seedream?.config||{},d=Ze(t,{model:e});if(d.length===0){this.applyModel(e);return}const o=d.map(m=>this.$t(m.i18nLabel)).join("、");try{await ke.confirm(this.$t("seedream.message.featureNotSupportedBody",{fields:o}),this.$t("seedream.message.featureNotSupportedTitle"),{confirmButtonText:this.$t("seedream.button.confirmContinue"),cancelButtonText:this.$t("seedream.button.cancelSwitch"),type:"warning"});const m=Xe({...t,model:e},d,{model:e});this.$store.commit("seedream/setConfig",m),z.success(this.$t("seedream.message.featureRemovedNotice",{fields:o}))}catch{this.revertKey+=1}},applyModel(e){this.$store.commit("seedream/setConfig",{...this.$store.state.seedream?.config,model:e})}}}),lt={class:"field"},it={class:"label"},ct={class:"box"},dt={class:"title font-bold"};function mt(e,t,d,o,m,p){const u=a("info-icon"),f=a("el-option"),i=a("el-select");return n(),c("div",lt,[l("div",it,[l("div",ct,[l("h2",dt,r(e.$t("seedream.name.model")),1),s(u,{content:e.$t("seedream.description.model"),class:"info"},null,8,["content"])])]),(n(),E(i,{key:e.revertKey,"model-value":e.value,class:"value",placeholder:e.$t("seedream.placeholder.select"),onChange:e.onChange},{default:$(()=>[(n(!0),c(y,null,A(e.options,_=>(n(),E(f,{key:_.value,label:_.label,value:_.value},null,8,["label","value"]))),128))]),_:1},8,["model-value","placeholder","onChange"]))])}const ut=S(rt,[["render",mt],["__scopeId","data-v-8892a12c"]]),pt=k({name:"SeedreamSizeSelector",components:{ElSelect:x,ElOption:B,ElOptionGroup:Ee,InfoIcon:I},data(){return{SEEDREAM_SIZE_ADAPTIVE:ie,pixelOptions:le}},computed:{model(){return this.$store.state.seedream?.config?.model},capabilities(){return w(this.model)},value:{get(){return this.$store.state.seedream?.config?.size},set(e){this.$store.commit("seedream/setConfig",{...this.$store.state.seedream?.config,size:e})}}},watch:{model:{immediate:!0,handler(){if(this.value)return;const e=this.capabilities;e.sizeTiers.length?this.value=e.sizeTiers.includes(K)?K:e.sizeTiers[0]:e.sizePixelDefault&&(this.value=e.sizePixelDefault)}}}}),ft={class:"field"},_t={class:"label"},gt={class:"box"},ht={class:"title font-bold"};function $t(e,t,d,o,m,p){const u=a("info-icon"),f=a("el-option"),i=a("el-option-group"),_=a("el-select");return n(),c("div",ft,[l("div",_t,[l("div",gt,[l("h2",ht,r(e.$t("seedream.name.size")),1),s(u,{content:e.$t("seedream.description.size"),class:"info"},null,8,["content"])])]),s(_,{modelValue:e.value,"onUpdate:modelValue":t[0]||(t[0]=h=>e.value=h),class:"value",placeholder:e.$t("seedream.placeholder.size"),filterable:"","allow-create":"","default-first-option":""},{default:$(()=>[e.capabilities.sizeTiers.length?(n(),E(i,{key:0,label:e.$t("seedream.size.group.tier")},{default:$(()=>[(n(!0),c(y,null,A(e.capabilities.sizeTiers,h=>(n(),E(f,{key:h,label:h,value:h},null,8,["label","value"]))),128))]),_:1},8,["label"])):v("",!0),e.capabilities.sizeAdaptive?(n(),E(i,{key:1,label:e.$t("seedream.size.group.adaptive")},{default:$(()=>[(n(),E(f,{key:e.SEEDREAM_SIZE_ADAPTIVE,label:e.$t("seedream.size.adaptive"),value:e.SEEDREAM_SIZE_ADAPTIVE},null,8,["label","value"]))]),_:1},8,["label"])):v("",!0),s(i,{label:e.$t("seedream.size.group.pixel")},{default:$(()=>[(n(!0),c(y,null,A(e.pixelOptions,h=>(n(),E(f,{key:h.value,label:`${h.value} (${h.ratio})`,value:h.value},null,8,["label","value"]))),128))]),_:1},8,["label"])]),_:1},8,["modelValue","placeholder"])])}const vt=S(pt,[["render",$t],["__scopeId","data-v-dd7bd021"]]),bt=k({name:"SeedreamMaxImagesSelector",components:{ElInputNumber:N,InfoIcon:I},computed:{config(){return this.$store.state.seedream?.config||{}},supported(){return w(this.config?.model).groupGeneration},referenceImageCount(){const e=this.config?.image;return Array.isArray(e)?e.length:0},effectiveMax(){const e=Z-this.referenceImageCount;return Math.max(1,Math.min(Z,e))},value:{get(){const e=this.config?.sequential_image_generation_options?.max_images;return typeof e=="number"&&e>=1?e:ce},set(e){const t={...this.config||{}},d=Math.max(1,Math.min(this.effectiveMax,Math.floor(e||1)));d>1?(t.sequential_image_generation="auto",t.sequential_image_generation_options={...t.sequential_image_generation_options||{},max_images:d}):(t.sequential_image_generation="disabled",t.sequential_image_generation_options&&delete t.sequential_image_generation_options),this.$store.commit("seedream/setConfig",t)}}},watch:{effectiveMax(e){this.value>e&&(this.value=e)}}}),Et={key:0,class:"field"},kt={class:"label"},St={class:"box"},yt={class:"title font-bold"},wt={class:"value"};function It(e,t,d,o,m,p){const u=a("info-icon"),f=a("el-input-number");return e.supported?(n(),c("div",Et,[l("div",kt,[l("div",St,[l("h2",yt,r(e.$t("seedream.name.maxImages")),1),s(u,{content:e.$t("seedream.description.maxImages"),class:"info"},null,8,["content"])])]),l("div",wt,[s(f,{modelValue:e.value,"onUpdate:modelValue":t[0]||(t[0]=i=>e.value=i),min:1,max:e.effectiveMax,step:1,size:"default","controls-position":"right",class:"counter"},null,8,["modelValue","max"])])])):v("",!0)}const At=S(bt,[["render",It],["__scopeId","data-v-f079fd20"]]),Vt=k({name:"SeedreamOutputFormatSelector",components:{ElSelect:x,ElOption:B,InfoIcon:I},data(){return{options:[...de]}},computed:{config(){return this.$store.state.seedream?.config||{}},supported(){return w(this.config?.model).outputFormat},value:{get(){return this.config?.output_format},set(e){const t={...this.config||{}};t.output_format=e,this.$store.commit("seedream/setConfig",t)}}}}),zt={key:0,class:"field"},Mt={class:"label"},Tt={class:"box"},Rt={class:"title font-bold"};function Lt(e,t,d,o,m,p){const u=a("info-icon"),f=a("el-option"),i=a("el-select");return e.supported?(n(),c("div",zt,[l("div",Mt,[l("div",Tt,[l("h2",Rt,r(e.$t("seedream.name.outputFormat")),1),s(u,{content:e.$t("seedream.description.outputFormat"),class:"info"},null,8,["content"])])]),s(i,{modelValue:e.value,"onUpdate:modelValue":t[0]||(t[0]=_=>e.value=_),class:"value",placeholder:e.$t("seedream.placeholder.select")},{default:$(()=>[(n(!0),c(y,null,A(e.options,_=>(n(),E(f,{key:_,label:_.toUpperCase(),value:_},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])):v("",!0)}const Dt=S(Vt,[["render",Lt],["__scopeId","data-v-69ea4c07"]]),Ct=k({name:"SeedreamSeedInput",components:{ElInputNumber:N,InfoIcon:I},computed:{config(){return this.$store.state.seedream?.config||{}},supported(){return w(this.config?.model).seed},value:{get(){const e=this.config?.seed;return typeof e=="number"?e:-1},set(e){const t={...this.config||{}},d=typeof e=="number"&&Number.isInteger(e)?e:-1;t.seed=d,this.$store.commit("seedream/setConfig",t)}}}}),qt={key:0,class:"field"},Pt={class:"label"},Ut={class:"box"},Gt={class:"title font-bold"},Ft={class:"value"};function Ot(e,t,d,o,m,p){const u=a("info-icon"),f=a("el-input-number");return e.supported?(n(),c("div",qt,[l("div",Pt,[l("div",Ut,[l("h2",Gt,r(e.$t("seedream.name.seed")),1),s(u,{content:e.$t("seedream.description.seed"),class:"info"},null,8,["content"])])]),l("div",Ft,[s(f,{modelValue:e.value,"onUpdate:modelValue":t[0]||(t[0]=i=>e.value=i),min:-1,max:2147483647,step:1,size:"default","controls-position":"right",class:"counter"},null,8,["modelValue"])])])):v("",!0)}const jt=S(Ct,[["render",Ot],["__scopeId","data-v-10cdc1e0"]]),Bt=k({name:"SeedreamGuidanceScaleInput",components:{ElInputNumber:N,InfoIcon:I},computed:{config(){return this.$store.state.seedream?.config||{}},supported(){return w(this.config?.model).guidanceScale},defaultValue(){return w(this.config?.model).guidanceScaleDefault??2.5},value:{get(){const e=this.config?.guidance_scale;return typeof e=="number"?e:this.defaultValue},set(e){const t={...this.config||{}},d=typeof e=="number"&&e>=1&&e<=10?e:this.defaultValue;t.guidance_scale=d,this.$store.commit("seedream/setConfig",t)}}}}),xt={key:0,class:"field"},Nt={class:"label"},Wt={class:"box"},Kt={class:"title font-bold"},Zt={class:"value"};function Xt(e,t,d,o,m,p){const u=a("info-icon"),f=a("el-input-number");return e.supported?(n(),c("div",xt,[l("div",Nt,[l("div",Wt,[l("h2",Kt,r(e.$t("seedream.name.guidanceScale")),1),s(u,{content:e.$t("seedream.description.guidanceScale"),class:"info"},null,8,["content"])])]),l("div",Zt,[s(f,{modelValue:e.value,"onUpdate:modelValue":t[0]||(t[0]=i=>e.value=i),min:1,max:10,step:.1,precision:1,size:"default","controls-position":"right",class:"counter"},null,8,["modelValue"])])])):v("",!0)}const Ht=S(Bt,[["render",Xt],["__scopeId","data-v-7386f064"]]),Jt=k({name:"SeedreamWatermarkSwitch",components:{ElSwitch:Se,InfoIcon:I},computed:{value:{get(){const e=this.$store.state.seedream?.config?.watermark;return e===void 0?me:!!e},set(e){this.$store.commit("seedream/setConfig",{...this.$store.state.seedream?.config,watermark:e})}}}}),Qt={class:"field"},Yt={class:"label"},es={class:"box"},ts={class:"title font-bold"},ss={class:"value"};function os(e,t,d,o,m,p){const u=a("info-icon"),f=a("el-switch");return n(),c("div",Qt,[l("div",Yt,[l("div",es,[l("h2",ts,r(e.$t("seedream.name.watermark")),1),s(u,{content:e.$t("seedream.description.watermark"),class:"info"},null,8,["content"])])]),l("div",ss,[s(f,{modelValue:e.value,"onUpdate:modelValue":t[0]||(t[0]=i=>e.value=i)},null,8,["modelValue"])])])}const as=S(Jt,[["render",os],["__scopeId","data-v-9e2abf0f"]]),ns=k({name:"SeedreamConfigPanel",components:{ElButton:P,FontAwesomeIcon:q,PromptInput:Ne,Consumption:ve,ImageInput:nt,ModelSelector:ut,SizeSelector:vt,MaxImagesSelector:At,OutputFormatSelector:Dt,SeedInput:jt,GuidanceScaleInput:Ht,WatermarkSwitch:as},emits:["generate"],computed:{config(){return this.$store.state.seedream?.config},consumption(){const e={...this.config||{}},t=Array.isArray(e?.image)&&e.image.length>0,d=e?.sequential_image_generation==="auto"?Math.max(1,Math.floor(e?.sequential_image_generation_options?.max_images||1)):1;return be({...e,action:t?"edit":"generate",model:Y(e?.model),count:d},this.service?.cost)},service(){return this.$store.state.seedream?.service}},methods:{onGenerate(){this.$emit("generate")}}}),rs={class:"flex flex-col h-full"},ls={class:"flex-1 overflow-y-auto p-5"},is={class:"flex flex-col items-center justify-center px-5 pb-5"};function cs(e,t,d,o,m,p){const u=a("model-selector"),f=a("size-selector"),i=a("max-images-selector"),_=a("output-format-selector"),h=a("seed-input"),b=a("guidance-scale-input"),M=a("watermark-switch"),C=a("prompt-input"),V=a("image-input"),T=a("consumption"),te=a("font-awesome-icon"),se=a("el-button");return n(),c("div",rs,[l("div",ls,[s(u,{class:"mb-4"}),s(f,{class:"mb-4"}),s(i,{class:"mb-4"}),s(_,{class:"mb-4"}),s(h,{class:"mb-4"}),s(b,{class:"mb-4"}),s(M,{class:"mb-4"}),s(C,{class:"mb-4"}),s(V,{class:"mb-4"})]),l("div",is,[s(T,{value:e.consumption,service:e.service},null,8,["value","service"]),s(se,{type:"primary",class:"btn w-full",round:"",onClick:e.onGenerate},{default:$(()=>[s(te,{icon:"fa-solid fa-magic",class:"mr-2"}),g(" "+r(e.$t("seedream.button.generate")),1)]),_:1},8,["onClick"])])])}const ds=S(ns,[["render",cs]]),ms=k({name:"SeedreamTaskPreview",components:{ElImage:Me,CopyToClipboard:Ie,FontAwesomeIcon:q,ElAlert:ze,ImageWrapper:Ae,ElButton:P,ElTooltip:Ve,ImagePreview:ee},props:{modelValue:{type:Object,required:!0}},computed:{isEdit(){return Array.isArray(this.modelValue?.request?.image)&&(this.modelValue?.request?.image?.length||0)>0},images(){const e=[];return Array.isArray(this.modelValue?.response?.data)&&this.modelValue?.response?.data?.forEach(t=>{e.push(t)}),e}},methods:{shortModel(e){return Y(e)||e},onEdit(e){if(!e)return;console.debug("Edit image:",e);const t={...this.$store.state.seedream?.config||{}};t.image=[e],this.$store.commit("seedream/setConfig",t)}}}),us={class:"preview"},ps={class:"left"},fs={class:"main"},_s={class:"bot"},gs={class:"datetime"},hs={class:"info"},$s={key:0,class:"flex justify-start items-center gap-2 mt-2 w-full overflow-x-auto"},vs={key:1,class:"prompt mt-2"},bs={key:0},Es={key:0,class:D({content:!0})},ks={class:"text-[var(--el-text-color-regular)] text-xs mb-0"},Ss={key:1,class:D({content:!0,failed:!0})},ys={class:"flex justify-start items-center gap-4 w-full overflow-x-auto"},ws={class:D({operations:!0,"mt-2":!0,"mb-2":!0})},Is={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},As={key:1,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Vs={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},zs={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Ms={key:2,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Ts={key:3,class:"text-[var(--el-text-color-regular)] text-xs mb-0"},Rs={key:2,class:D({content:!0})},Ls={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Ds={key:1,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Cs={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},qs={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Ps={key:2,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Us={key:3,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Gs={key:4,class:"text-[var(--el-text-color-regular)] text-xs mb-0"},Fs={key:3,class:D({content:!0})},Os={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},js={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-0"};function Bs(e,t,d,o,m,p){const u=a("el-image"),f=a("image-preview"),i=a("font-awesome-icon"),_=a("copy-to-clipboard"),h=a("el-alert"),b=a("image-wrapper"),M=a("el-button"),C=a("el-tooltip");return n(),c("div",us,[l("div",ps,[s(u,{src:"https://cdn.acedata.cloud/9egrbn.png",class:"avatar"})]),l("div",fs,[l("div",_s,[g(r(e.$t("seedream.name.seedreamBot"))+" ",1),l("span",gs,r(e.$dayjs.format(""+new Date(parseFloat((e.modelValue?.created_at||"").toString())*1e3))),1)]),l("div",hs,[Array.isArray(e.modelValue?.request?.image)&&e.modelValue?.request?.image.length>0?(n(),c("div",$s,[(n(!0),c(y,null,A(e.modelValue?.request?.image,(V,T)=>(n(),E(f,{key:T,url:V,name:`image-${T+1}`,closable:!1},null,8,["url","name"]))),128))])):v("",!0),e.modelValue?.request?.prompt?(n(),c("p",vs,[g(r(e.modelValue?.request?.prompt)+" ",1),e.modelValue?.response?v("",!0):(n(),c("span",bs," - ("+r(e.$t("seedream.status.pending"))+") ",1))])):v("",!0)]),e.modelValue?.response?e.modelValue?.response?.success===!0?(n(),c("div",Ss,[l("div",ys,[(n(!0),c(y,null,A(e.images,(V,T)=>(n(),E(b,{key:T,src:V?.image_url,"raw-src":V?.image_url},null,8,["src","raw-src"]))),128))]),l("div",ws,[s(C,{class:"box-item",effect:"dark",content:e.$t("common.button.edit"),placement:"top-start"},{default:$(()=>[s(M,{type:"info",size:"small",class:"btn-action",onClick:t[0]||(t[0]=ae(V=>e.onEdit(e.images?.[0]?.image_url),["stop"]))},{default:$(()=>[g(r(e.$t("common.button.edit")),1)]),_:1})]),_:1},8,["content"])]),s(h,{closable:!1,class:"mt-2 success"},{default:$(()=>[e.modelValue?.request?.model?(n(),c("p",Is,[s(i,{icon:"fa-solid fa-cube",class:"mr-1"}),g(" "+r(e.$t("seedream.name.model"))+": "+r(e.shortModel(e.modelValue?.request?.model)),1)])):v("",!0),e.modelValue?.request?.size?(n(),c("p",As,[s(i,{icon:"fa-solid fa-image",class:"mr-1"}),g(" "+r(e.$t("seedream.name.size"))+": "+r(e.modelValue?.request?.size),1)])):v("",!0),l("p",Vs,[s(i,{icon:"fa-solid fa-bolt",class:"mr-1"}),g(" "+r(e.$t("seedream.name.task"))+": "+r(e.isEdit?e.$t("seedream.name.edits"):e.$t("seedream.name.generate")),1)]),l("p",zs,[s(i,{icon:"fa-solid fa-magic",class:"mr-1"}),g(" "+r(e.$t("seedream.name.taskId"))+": "+r(e.modelValue?.id)+" ",1),s(_,{content:e.modelValue?.id,class:"btn-copy inline-block"},null,8,["content"])]),e.modelValue?.elapsed?(n(),c("p",Ms,[s(i,{icon:"fa-solid fa-clock",class:"mr-1"}),g(" "+r(e.$t("seedream.name.elapsed"))+": "+r(e.modelValue?.elapsed?.toFixed(2))+"s ",1)])):v("",!0),e.modelValue?.response?.trace_id?(n(),c("p",Ts,[s(i,{icon:"fa-solid fa-hashtag",class:"mr-1"}),g(" "+r(e.$t("seedream.name.traceId"))+": "+r(e.modelValue?.response?.trace_id)+" ",1),s(_,{content:e.modelValue?.response?.trace_id,class:"btn-copy inline-block"},null,8,["content"])])):v("",!0)]),_:1})])):e.modelValue?.response?.success===!1?(n(),c("div",Rs,[s(h,{closable:!1,class:"failure"},{template:$(()=>[s(i,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),g(" "+r(e.$t("seedream.name.failure")),1)]),default:$(()=>[e.modelValue?.request?.model?(n(),c("p",Ls,[s(i,{icon:"fa-solid fa-cube",class:"mr-1"}),g(" "+r(e.$t("seedream.name.model"))+": "+r(e.shortModel(e.modelValue?.request?.model)),1)])):v("",!0),e.modelValue?.request?.size?(n(),c("p",Ds,[s(i,{icon:"fa-solid fa-image",class:"mr-1"}),g(" "+r(e.$t("seedream.name.size"))+": "+r(e.modelValue?.request?.size),1)])):v("",!0),l("p",Cs,[s(i,{icon:"fa-solid fa-bolt",class:"mr-1"}),g(" "+r(e.$t("seedream.name.task"))+": "+r(e.isEdit?e.$t("seedream.name.edits"):e.$t("seedream.name.generate")),1)]),l("p",qs,[s(i,{icon:"fa-solid fa-magic",class:"mr-1"}),g(" "+r(e.$t("seedream.name.taskId"))+": "+r(e.modelValue?.id)+" ",1),s(_,{content:e.modelValue?.id,class:"btn-copy"},null,8,["content"])]),e.modelValue?.response?.error?.message?(n(),c("p",Ps,[s(i,{icon:"fa-solid fa-circle-info",class:"mr-1"}),g(" "+r(e.$t("seedream.name.failureReason"))+": "+r(e.modelValue?.response?.error?.message)+" ",1),s(_,{content:e.modelValue?.response?.error?.message,class:"btn-copy"},null,8,["content"])])):v("",!0),e.modelValue?.elapsed?(n(),c("p",Us,[s(i,{icon:"fa-solid fa-clock",class:"mr-1"}),g(" "+r(e.$t("seedream.name.elapsed"))+": "+r(e.modelValue?.elapsed?.toFixed(2))+"s ",1)])):v("",!0),e.modelValue?.response?.trace_id?(n(),c("p",Gs,[s(i,{icon:"fa-solid fa-hashtag",class:"mr-1"}),g(" "+r(e.$t("seedream.name.traceId"))+": "+r(e.modelValue?.response?.trace_id)+" ",1),s(_,{content:e.modelValue?.response?.trace_id,class:"btn-copy"},null,8,["content"])])):v("",!0)]),_:1})])):(n(),c("div",Fs,[s(h,{closable:!1,class:"info"},{template:$(()=>[s(i,{icon:"fa-solid fa-circle-info",class:"mr-1"}),g(" "+r(e.$t("seedream.name.status")),1)]),default:$(()=>[l("p",Os,[s(i,{icon:"fa-solid fa-magic",class:"mr-1"}),g(" "+r(e.$t("seedream.name.taskId"))+": "+r(e.modelValue?.id)+" ",1),s(_,{content:e.modelValue?.id,class:"btn-copy"},null,8,["content"])]),e.modelValue?.response?.trace_id?(n(),c("p",js,[s(i,{icon:"fa-solid fa-hashtag",class:"mr-1"}),g(" "+r(e.$t("seedream.name.traceId"))+": "+r(e.modelValue?.response?.trace_id)+" ",1),s(_,{content:e.modelValue?.response?.trace_id,class:"btn-copy"},null,8,["content"])])):v("",!0)]),_:1})])):(n(),c("div",Es,[s(h,{closable:!1,class:"info"},{template:$(()=>[s(i,{icon:"fa-regular fa-clock",class:"mr-1"}),g(" "+r(e.$t("seedream.status.pending")),1)]),default:$(()=>[l("p",ks,[s(i,{icon:"fa-solid fa-magic",class:"mr-1"}),g(" "+r(e.$t("seedream.name.taskId"))+": "+r(e.modelValue?.id)+" ",1),s(_,{content:e.modelValue?.id,class:"btn-copy inline-block"},null,8,["content"])])]),_:1})]))])])}const xs=S(ms,[["render",Bs],["__scopeId","data-v-0dfc6a09"]]),Ns=k({name:"SeedreamRecentPanel",components:{TaskPreview:xs,BotPlaceholder:Te,NoTasks:Re,ScrollList:fe},props:{loading:{type:Boolean,default:!1}},emits:["reach-top"],computed:{tasks(){return{...this.$store.state.seedream?.tasks,items:this.$store.state.seedream?.tasks?.items?.slice()}}},methods:{getScrollElement(){return this.$refs.scrollList?.getScrollElement?.()}}}),Ws={key:0},Ks={key:2,class:"w-full h-full flex items-center justify-center"};function Zs(e,t,d,o,m,p){const u=a("bot-placeholder"),f=a("task-preview"),i=a("scroll-list"),_=a("no-tasks");return n(),c(y,null,[e.tasks?.items===void 0?(n(),c("div",Ws,[s(u)])):e.tasks?.items?.length&&e.tasks?.items?.length>0?(n(),E(i,{key:1,ref:"scrollList",class:"tasks h-full w-full overflow-y-auto",loading:e.loading,onReachTop:t[0]||(t[0]=h=>e.$emit("reach-top"))},{default:$(()=>[(n(!0),c(y,null,A(e.tasks?.items,h=>(n(),E(f,{key:h.id,"model-value":h},null,8,["model-value"]))),128))]),_:1},8,["loading"])):v("",!0),e.tasks?.items?.length===0?(n(),c("div",Ks,[s(_)])):v("",!0)],64)}const Xs=S(Ns,[["render",Zs]]),Hs=pe("seedream"),Js=k({name:"SeedreamIndex",components:{ConfigPanel:ds,Layout:Ue,RecentPanel:Xs},inject:["initialized"],data(){return{task:void 0,job:0,loading:!1}},computed:{applicationsLoading(){return this.$store.state.seedream?.status?.getApplications===X.Request},tasksLoading(){return this.$store.state.seedream?.status?.getTasks===X.Request},credential(){return this.$store.state.seedream?.credential},config(){return this.$store.state.seedream?.config},application(){return this.$store.state.seedream?.application},tasks(){return this.$store.state.seedream?.tasks}},watch:{tasks:{handler(e,t){e?.items?.length>t?.items?.length&&console.debug("new tasks detected")},deep:!0},initialized:{async handler(e){e&&(console.debug("layout initialized"),await this.onGetTasks(),await this.onScrollDown(),this.job=window.setInterval(()=>{this.onGetTasks()},5e3))},immediate:!0}},async mounted(){await this.onGetService()},async unmounted(){window.clearInterval(this.job)},methods:{async onReachTop(){await _e({tasks:this.tasks,getTasks:()=>this.tasks,loading:this.loading,setLoading:e=>this.loading=e,isBlocked:()=>this.tasksLoading,fetch:e=>this.onGetTasks({createdAtMax:e}),getScrollElement:()=>this.getTasksScrollElement()})},async onGetService(){console.debug("start onGetService"),await this.$store.dispatch("seedream/getService"),console.debug("end onGetService")},async onGetApplication(){console.debug("start onGetApplication"),await this.$store.dispatch("seedream/getApplications"),console.debug("end onGetApplication"),await this.onGetTasks()},async onScrollDown(){await this.$nextTick();const e=this.getTasksScrollElement();e&&(e.scrollTop=e.scrollHeight)},async onGetTasks(e){if(this.applicationsLoading||this.tasksLoading){console.debug("loading");return}console.debug("start onGetTasks",e);const{limit:t=20,createdAtMin:d,createdAtMax:o}=e||{};console.debug("limit",t,"createdAtMin",d,"createdAtMax",o),await this.$store.dispatch("seedream/getTasks",{limit:t,createdAtMin:d,createdAtMax:o})},async onGenerate(){const e={...this.config||{}};!(Array.isArray(e?.image)&&e.image.length>0)&&"image"in e&&delete e.image,e?.size||delete e.size;const d={...e,callback_url:Hs},o=this.credential?.token;if(!o){console.error("no token specified");return}z.info(this.$t("seedream.message.startingTask")),ue("seedream",we.generate(d,{token:o})).then(()=>{z.success(this.$t("seedream.message.startTaskSuccess"))}).catch(m=>{const p=m?.response?.data;p?.error?.code===ye?z.error(this.$t("seedream.message.usedUp")):z.error(this.$t("seedream.message.startTaskFailed")+(p?.error?.message||""))}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})},getTasksScrollElement(){return this.$refs.recentPanel?.getScrollElement?.()}}});function Qs(e,t,d,o,m,p){const u=a("config-panel"),f=a("recent-panel"),i=a("layout");return n(),E(i,null,{config:$(()=>[s(u,{onGenerate:e.onGenerate},null,8,["onGenerate"])]),result:$(()=>[s(f,{ref:"recentPanel",loading:e.loading,onReachTop:e.onReachTop},null,8,["loading","onReachTop"])]),_:1})}const Zo=S(Js,[["render",Qs]]);export{Zo as default};
|
|
1
|
+
import{F as q}from"./index.es-oEqa8Vvo.js";import{E as P}from"./index-kyWjBrWv.js";import{E as oe}from"./index-DKYzi_JL.js";import{d as k,H as c,E as l,z as U,C as s,y as $,D as a,q as n,F as r,I as g,O as y,N as A,J as v,x as E,M as ae,Q as D}from"./vendor-vue-NSDaktjZ.js";import{G as S,de as O,df as R,dg as j,dh as L,di as G,dj as W,dk as F,dl as H,dm as J,dn as Q,bj as ne,dp as re,dq as K,dr as le,ds as ie,dt as ce,du as Z,dv as de,dw as me,dx as Y,co as ue,S as X,cp as pe}from"./index-DJBGdUsj.js";import{I,S as fe,l as _e}from"./pagination-CIpi5fgv.js";import{E as ge}from"./index-Dls6nphu.js";import{p as he}from"./pasteUploadMixin-BurWbGNQ.js";import{I as ee}from"./ImagePreview-eG-HIW6Z.js";import{E as $e}from"./index-CzysM2id.js";import{E as z}from"./index-lrmoLNNf.js";import{C as ve}from"./Consumption-D1RmP9JZ.js";import{a as be}from"./price-w0Wapj1c.js";import{E as B,a as x,b as Ee}from"./index-Bcve79lL.js";import{E as ke}from"./index-D8xcWpl7.js";import{E as N}from"./index-fcm7YMuA.js";import{E as Se}from"./index-CJtKCzfo.js";import{b as ye}from"./errorCode-Cqj9Td_Z.js";import{s as we}from"./seedream-DWdXXcSm.js";import{C as Ie}from"./CopyToClipboard-CVe6lcyk.js";import{I as Ae}from"./ImageWrapper-DDC_4WBH.js";import{E as Ve}from"./index-DPGiSIg9.js";import{E as ze}from"./index-D7-hCQtC.js";import{E as Me}from"./index-BEwbP8jM.js";import{B as Te}from"./BotPlaceholder-BA0YKxqp.js";import{N as Re}from"./NoTasks-rBJZcmkf.js";import"./use-form-item-CmyE7QH4.js";import"./index-BuyEbX8F.js";import"./vendor-axios-B8_nURbH.js";import"./vendor-dayjs-v0j1UNZp.js";import"./vendor-vue-router-Df5ITouH.js";import"./typescript-BmROFp5p.js";import"./index-RiC3k0dL.js";import"./index-DyWi-qw9.js";import"./index-BhyNkjm0.js";import"./_baseClone-Cn2yao34.js";import"./_Uint8Array-BIIxv3lW.js";import"./_initCloneObject-CIo8XBzq.js";import"./isEqual-BahNgsHz.js";import"./index-j6SYZeEP.js";import"./strings-beZM2Y-f.js";import"./castArray-DZm4CKhI.js";import"./debounce-BOEGIAMg.js";import"./_baseIteratee-CGsjPRhY.js";import"./index-Bw8YhoHN.js";import"./validator-BRwslcDn.js";import"./index-Cu41y2Fl.js";import"./index-s5E1DICA.js";const Le=k({name:"LayoutSeedream",components:{ElDrawer:oe,ElButton:P,FontAwesomeIcon:q},data(){return{drawer:!1}}}),De={class:"main flex flex-row flex-1"},Ce={class:"config w-[320px] h-full overflow-y-auto bg-[var(--app-sidebar-bg)] border-r border-[var(--app-border-subtle)]"},qe={class:"result h-full p-6 flex-1 flex flex-col bg-[var(--app-content-bg)]"};function Pe(e,t,d,o,m,p){const u=a("font-awesome-icon"),f=a("el-button"),i=a("el-drawer");return n(),c("div",De,[l("div",Ce,[U(e.$slots,"config",{},void 0,!0)]),l("div",qe,[U(e.$slots,"result",{},void 0,!0)]),s(f,{circle:"",class:"menu",onClick:t[0]||(t[0]=_=>e.drawer=!0)},{default:$(()=>[s(u,{icon:"fa-solid fa-magic"})]),_:1}),s(i,{modelValue:e.drawer,"onUpdate:modelValue":t[1]||(t[1]=_=>e.drawer=_),direction:"ltr","with-header":!1,size:"340px",class:"drawer"},{default:$(()=>[U(e.$slots,"config",{},void 0,!0)]),_:3},8,["modelValue"])])}const Ue=S(Le,[["render",Pe],["__scopeId","data-v-f2a6eb9e"]]),Ge="",Fe=k({name:"SeedreamPromptInput",components:{ElInput:ge,InfoIcon:I},computed:{prompt:{get(){return this.$store.state.seedream?.config?.prompt},set(e){console.debug("set prompt",e),this.$store.commit("seedream/setConfig",{...this.$store.state.seedream?.config,prompt:e})}}},mounted(){this.prompt||(this.prompt=Ge)}}),Oe={class:"field"},je={class:"box"},Be={class:"title font-bold"};function xe(e,t,d,o,m,p){const u=a("info-icon"),f=a("el-input");return n(),c("div",Oe,[l("div",je,[l("h2",Be,r(e.$t("seedream.name.prompt")),1),s(u,{content:e.$t("seedream.description.prompt"),class:"info"},null,8,["content"])]),s(f,{modelValue:e.prompt,"onUpdate:modelValue":t[0]||(t[0]=i=>e.prompt=i),rows:3,type:"textarea",class:"prompt",placeholder:e.$t("seedream.placeholder.prompt")},null,8,["modelValue","placeholder"])])}const Ne=S(Fe,[["render",xe],["__scopeId","data-v-5559520a"]]),We={image:!0,imageRequired:!1,sizeTiers:[O,R,j,L],sizeAdaptive:!0,sizePixel:!0,sizePixelDefault:void 0,groupGeneration:!1,seed:!1,guidanceScale:!1,outputFormat:!1,tools:!1};function w(e){switch(e){case Q:return{image:!0,imageRequired:!1,sizeTiers:[R,j,L],sizeAdaptive:!0,sizePixel:!0,groupGeneration:!0,seed:!1,guidanceScale:!1,outputFormat:!0,tools:!0};case J:return{image:!0,imageRequired:!1,sizeTiers:[R,L],sizeAdaptive:!0,sizePixel:!0,groupGeneration:!0,seed:!1,guidanceScale:!1,outputFormat:!1,tools:!1};case H:return{image:!0,imageRequired:!1,sizeTiers:[O,R,L],sizeAdaptive:!0,sizePixel:!0,groupGeneration:!0,seed:!1,guidanceScale:!1,outputFormat:!1,tools:!1};case F:return{image:!1,imageRequired:!1,sizeTiers:[],sizeAdaptive:!1,sizePixel:!0,sizePixelDefault:"1024x1024",groupGeneration:!1,seed:!0,guidanceScale:!0,guidanceScaleDefault:W[F],outputFormat:!1,tools:!1};case G:return{image:!0,imageRequired:!0,sizeTiers:[],sizeAdaptive:!1,sizePixel:!0,sizePixelDefault:"1024x1024",groupGeneration:!1,seed:!1,guidanceScale:!0,guidanceScaleDefault:W[G],outputFormat:!1,tools:!1};default:return We}}const Ke=[O,R,j,L];function Ze(e,t){if(!e)return[];const d=t.model??e.model;if(!d)return[];const o=w(d),m=[];Array.isArray(e.image)&&e.image.length>0&&!o.image&&m.push({field:"image",i18nLabel:"seedream.name.imageUrls"});const p=typeof e.size=="string"?e.size:void 0;if(p){const u=p.toUpperCase();Ke.includes(u)&&!o.sizeTiers.includes(u)?m.push({field:"size",i18nLabel:"seedream.name.size"}):p==="adaptive"&&!o.sizeAdaptive&&m.push({field:"size",i18nLabel:"seedream.name.size"})}return e.sequential_image_generation==="auto"&&!o.groupGeneration&&m.push({field:"sequential_image_generation",i18nLabel:"seedream.name.maxImages"}),e.seed!==void 0&&e.seed!==null&&!o.seed&&m.push({field:"seed",i18nLabel:"seedream.name.seed"}),e.guidance_scale!==void 0&&e.guidance_scale!==null&&!o.guidanceScale&&m.push({field:"guidance_scale",i18nLabel:"seedream.name.guidanceScale"}),e.output_format&&!o.outputFormat&&m.push({field:"output_format",i18nLabel:"seedream.name.outputFormat"}),Array.isArray(e.tools)&&e.tools.length>0&&!o.tools&&m.push({field:"tools",i18nLabel:"seedream.name.tools"}),m}function Xe(e,t,d){const o={...e},m=d.model??e.model,p=w(m);for(const u of t)switch(u.field){case"image":delete o.image;break;case"size":p.sizePixelDefault?o.size=p.sizePixelDefault:delete o.size;break;case"sequential_image_generation":o.sequential_image_generation="disabled",delete o.sequential_image_generation_options;break;case"seed":delete o.seed;break;case"guidance_scale":delete o.guidance_scale;break;case"output_format":delete o.output_format;break;case"tools":delete o.tools;break}return o}const He=k({name:"SeedreamImageInput",components:{ElUpload:$e,ElButton:P,InfoIcon:I,ImagePreview:ee,FontAwesomeIcon:q},mixins:[he],data(){return{fileList:[],uploadUrl:ne()+"/api/v1/files/",suppressWatch:!1}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},urls(){return this.fileList.map(e=>e?.response?.file_url).filter(e=>!!e)},value(){return this.$store.state.seedream?.config?.image},model(){return this.$store.state.seedream?.config?.model},supported(){return w(this.model).image}},watch:{value:{immediate:!0,handler(e){if(this.suppressWatch)return;if(!e||e.length===0){const o=(this.fileList||[]).filter(m=>!m?.response?.file_url);this.fileList=o.length?o:[];return}const t=[];e.forEach(o=>{const m=this.fileList.find(p=>p?.response?.file_url===o||p?.url===o);m?t.push(m):t.push({name:o.split("/").pop()||o,url:o,status:"success",percentage:100,response:{file_url:o}})}),(this.fileList||[]).filter(o=>!o?.response?.file_url).forEach(o=>{t.some(p=>p===o||p?.url===o?.url||p?.response?.file_url===o?.response?.file_url)||t.push(o)}),this.fileList=t}}},methods:{onChange(e){if(!e?.url&&e?.raw)try{e.url=URL.createObjectURL(e.raw)}catch{}},onRemove(e){if(e?.url&&typeof e.url=="string"&&e.url.startsWith("blob:"))try{URL.revokeObjectURL(e.url)}catch{}this.onSetImages()},onExceed(){z.warning(this.$t("seedream.message.uploadImageExceed"))},onError(){z.error(this.$t("seedream.message.uploadImageError"))},onSetImages(){const e=this.urls;this.suppressWatch=!0,this.$store.commit("seedream/setConfig",{...this.$store.state.seedream?.config,image:e}),this.$nextTick(()=>{this.suppressWatch=!1})},async onSuccess(e,t){e?.file_url&&(t.url=e.file_url,t.response=e),this.onSetImages()},onRemovePreview(e,t){if(this.fileList.splice(e,1),t?.url&&typeof t.url=="string"&&t.url.startsWith("blob:"))try{URL.revokeObjectURL(t.url)}catch{}this.onSetImages()}}}),Je={key:0},Qe={class:"field"},Ye={class:"label"},et={class:"box"},tt={class:"title font-bold"},st={class:"value"},ot={class:"file-list mt-2 flex flex-wrap gap-[10px]"};function at(e,t,d,o,m,p){const u=a("info-icon"),f=a("font-awesome-icon"),i=a("el-button"),_=a("el-upload"),h=a("image-preview");return e.supported?(n(),c("div",Je,[l("div",Qe,[l("div",Ye,[l("div",et,[l("h2",tt,r(e.$t("seedream.name.imageUrls")),1),s(u,{content:e.$t("seedream.description.imageUrls"),class:"info"},null,8,["content"])])]),l("div",st,[s(_,{ref:"uploader","file-list":e.fileList,"onUpdate:fileList":t[0]||(t[0]=b=>e.fileList=b),accept:".png,.jpg,.jpeg,.gif,.bmp,.webp",name:"file",limit:14,multiple:!0,"show-file-list":!1,action:e.uploadUrl,"on-exceed":e.onExceed,"on-error":e.onError,"on-success":e.onSuccess,"on-change":e.onChange,"on-remove":e.onRemove,headers:e.headers},{default:$(()=>[s(i,{size:"small",type:"primary",round:""},{default:$(()=>[s(f,{icon:"fa-solid fa-upload",class:"mr-1"}),g(" "+r(e.$t("seedream.button.uploadImageUrls")),1)]),_:1})]),_:1},8,["file-list","action","on-exceed","on-error","on-success","on-change","on-remove","headers"])])]),l("div",ot,[(n(!0),c(y,null,A(e.fileList,(b,M)=>(n(),E(h,{key:b.uid||b?.response?.file_url||b.url||M,url:b.url||b?.response?.file_url,name:b.name,percentage:b.percentage,onRemove:C=>e.onRemovePreview(M,b)},null,8,["url","name","percentage","onRemove"]))),128))])])):v("",!0)}const nt=S(He,[["render",at],["__scopeId","data-v-2aa4829c"]]),rt=k({name:"SeedreamModelSelector",components:{ElSelect:x,ElOption:B,InfoIcon:I},data(){return{revertKey:0,options:[{value:Q,label:this.$t("seedream.model.seedream50")},{value:J,label:this.$t("seedream.model.seedream45")},{value:H,label:this.$t("seedream.model.seedream40")},{value:F,label:this.$t("seedream.model.seedream30t2i")},{value:G,label:this.$t("seedream.model.seededit30i2i")}]}},computed:{value(){return this.$store.state.seedream?.config?.model}},mounted(){this.value||this.applyModel(re)},methods:{async onChange(e){const t=this.$store.state.seedream?.config||{},d=Ze(t,{model:e});if(d.length===0){this.applyModel(e);return}const o=d.map(m=>this.$t(m.i18nLabel)).join("、");try{await ke.confirm(this.$t("seedream.message.featureNotSupportedBody",{fields:o}),this.$t("seedream.message.featureNotSupportedTitle"),{confirmButtonText:this.$t("seedream.button.confirmContinue"),cancelButtonText:this.$t("seedream.button.cancelSwitch"),type:"warning"});const m=Xe({...t,model:e},d,{model:e});this.$store.commit("seedream/setConfig",m),z.success(this.$t("seedream.message.featureRemovedNotice",{fields:o}))}catch{this.revertKey+=1}},applyModel(e){this.$store.commit("seedream/setConfig",{...this.$store.state.seedream?.config,model:e})}}}),lt={class:"field"},it={class:"label"},ct={class:"box"},dt={class:"title font-bold"};function mt(e,t,d,o,m,p){const u=a("info-icon"),f=a("el-option"),i=a("el-select");return n(),c("div",lt,[l("div",it,[l("div",ct,[l("h2",dt,r(e.$t("seedream.name.model")),1),s(u,{content:e.$t("seedream.description.model"),class:"info"},null,8,["content"])])]),(n(),E(i,{key:e.revertKey,"model-value":e.value,class:"value",placeholder:e.$t("seedream.placeholder.select"),onChange:e.onChange},{default:$(()=>[(n(!0),c(y,null,A(e.options,_=>(n(),E(f,{key:_.value,label:_.label,value:_.value},null,8,["label","value"]))),128))]),_:1},8,["model-value","placeholder","onChange"]))])}const ut=S(rt,[["render",mt],["__scopeId","data-v-8892a12c"]]),pt=k({name:"SeedreamSizeSelector",components:{ElSelect:x,ElOption:B,ElOptionGroup:Ee,InfoIcon:I},data(){return{SEEDREAM_SIZE_ADAPTIVE:ie,pixelOptions:le}},computed:{model(){return this.$store.state.seedream?.config?.model},capabilities(){return w(this.model)},value:{get(){return this.$store.state.seedream?.config?.size},set(e){this.$store.commit("seedream/setConfig",{...this.$store.state.seedream?.config,size:e})}}},watch:{model:{immediate:!0,handler(){if(this.value)return;const e=this.capabilities;e.sizeTiers.length?this.value=e.sizeTiers.includes(K)?K:e.sizeTiers[0]:e.sizePixelDefault&&(this.value=e.sizePixelDefault)}}}}),ft={class:"field"},_t={class:"label"},gt={class:"box"},ht={class:"title font-bold"};function $t(e,t,d,o,m,p){const u=a("info-icon"),f=a("el-option"),i=a("el-option-group"),_=a("el-select");return n(),c("div",ft,[l("div",_t,[l("div",gt,[l("h2",ht,r(e.$t("seedream.name.size")),1),s(u,{content:e.$t("seedream.description.size"),class:"info"},null,8,["content"])])]),s(_,{modelValue:e.value,"onUpdate:modelValue":t[0]||(t[0]=h=>e.value=h),class:"value",placeholder:e.$t("seedream.placeholder.size"),filterable:"","allow-create":"","default-first-option":""},{default:$(()=>[e.capabilities.sizeTiers.length?(n(),E(i,{key:0,label:e.$t("seedream.size.group.tier")},{default:$(()=>[(n(!0),c(y,null,A(e.capabilities.sizeTiers,h=>(n(),E(f,{key:h,label:h,value:h},null,8,["label","value"]))),128))]),_:1},8,["label"])):v("",!0),e.capabilities.sizeAdaptive?(n(),E(i,{key:1,label:e.$t("seedream.size.group.adaptive")},{default:$(()=>[(n(),E(f,{key:e.SEEDREAM_SIZE_ADAPTIVE,label:e.$t("seedream.size.adaptive"),value:e.SEEDREAM_SIZE_ADAPTIVE},null,8,["label","value"]))]),_:1},8,["label"])):v("",!0),s(i,{label:e.$t("seedream.size.group.pixel")},{default:$(()=>[(n(!0),c(y,null,A(e.pixelOptions,h=>(n(),E(f,{key:h.value,label:`${h.value} (${h.ratio})`,value:h.value},null,8,["label","value"]))),128))]),_:1},8,["label"])]),_:1},8,["modelValue","placeholder"])])}const vt=S(pt,[["render",$t],["__scopeId","data-v-dd7bd021"]]),bt=k({name:"SeedreamMaxImagesSelector",components:{ElInputNumber:N,InfoIcon:I},computed:{config(){return this.$store.state.seedream?.config||{}},supported(){return w(this.config?.model).groupGeneration},referenceImageCount(){const e=this.config?.image;return Array.isArray(e)?e.length:0},effectiveMax(){const e=Z-this.referenceImageCount;return Math.max(1,Math.min(Z,e))},value:{get(){const e=this.config?.sequential_image_generation_options?.max_images;return typeof e=="number"&&e>=1?e:ce},set(e){const t={...this.config||{}},d=Math.max(1,Math.min(this.effectiveMax,Math.floor(e||1)));d>1?(t.sequential_image_generation="auto",t.sequential_image_generation_options={...t.sequential_image_generation_options||{},max_images:d}):(t.sequential_image_generation="disabled",t.sequential_image_generation_options&&delete t.sequential_image_generation_options),this.$store.commit("seedream/setConfig",t)}}},watch:{effectiveMax(e){this.value>e&&(this.value=e)}}}),Et={key:0,class:"field"},kt={class:"label"},St={class:"box"},yt={class:"title font-bold"},wt={class:"value"};function It(e,t,d,o,m,p){const u=a("info-icon"),f=a("el-input-number");return e.supported?(n(),c("div",Et,[l("div",kt,[l("div",St,[l("h2",yt,r(e.$t("seedream.name.maxImages")),1),s(u,{content:e.$t("seedream.description.maxImages"),class:"info"},null,8,["content"])])]),l("div",wt,[s(f,{modelValue:e.value,"onUpdate:modelValue":t[0]||(t[0]=i=>e.value=i),min:1,max:e.effectiveMax,step:1,size:"default","controls-position":"right",class:"counter"},null,8,["modelValue","max"])])])):v("",!0)}const At=S(bt,[["render",It],["__scopeId","data-v-f079fd20"]]),Vt=k({name:"SeedreamOutputFormatSelector",components:{ElSelect:x,ElOption:B,InfoIcon:I},data(){return{options:[...de]}},computed:{config(){return this.$store.state.seedream?.config||{}},supported(){return w(this.config?.model).outputFormat},value:{get(){return this.config?.output_format},set(e){const t={...this.config||{}};t.output_format=e,this.$store.commit("seedream/setConfig",t)}}}}),zt={key:0,class:"field"},Mt={class:"label"},Tt={class:"box"},Rt={class:"title font-bold"};function Lt(e,t,d,o,m,p){const u=a("info-icon"),f=a("el-option"),i=a("el-select");return e.supported?(n(),c("div",zt,[l("div",Mt,[l("div",Tt,[l("h2",Rt,r(e.$t("seedream.name.outputFormat")),1),s(u,{content:e.$t("seedream.description.outputFormat"),class:"info"},null,8,["content"])])]),s(i,{modelValue:e.value,"onUpdate:modelValue":t[0]||(t[0]=_=>e.value=_),class:"value",placeholder:e.$t("seedream.placeholder.select")},{default:$(()=>[(n(!0),c(y,null,A(e.options,_=>(n(),E(f,{key:_,label:_.toUpperCase(),value:_},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])):v("",!0)}const Dt=S(Vt,[["render",Lt],["__scopeId","data-v-69ea4c07"]]),Ct=k({name:"SeedreamSeedInput",components:{ElInputNumber:N,InfoIcon:I},computed:{config(){return this.$store.state.seedream?.config||{}},supported(){return w(this.config?.model).seed},value:{get(){const e=this.config?.seed;return typeof e=="number"?e:-1},set(e){const t={...this.config||{}},d=typeof e=="number"&&Number.isInteger(e)?e:-1;t.seed=d,this.$store.commit("seedream/setConfig",t)}}}}),qt={key:0,class:"field"},Pt={class:"label"},Ut={class:"box"},Gt={class:"title font-bold"},Ft={class:"value"};function Ot(e,t,d,o,m,p){const u=a("info-icon"),f=a("el-input-number");return e.supported?(n(),c("div",qt,[l("div",Pt,[l("div",Ut,[l("h2",Gt,r(e.$t("seedream.name.seed")),1),s(u,{content:e.$t("seedream.description.seed"),class:"info"},null,8,["content"])])]),l("div",Ft,[s(f,{modelValue:e.value,"onUpdate:modelValue":t[0]||(t[0]=i=>e.value=i),min:-1,max:2147483647,step:1,size:"default","controls-position":"right",class:"counter"},null,8,["modelValue"])])])):v("",!0)}const jt=S(Ct,[["render",Ot],["__scopeId","data-v-10cdc1e0"]]),Bt=k({name:"SeedreamGuidanceScaleInput",components:{ElInputNumber:N,InfoIcon:I},computed:{config(){return this.$store.state.seedream?.config||{}},supported(){return w(this.config?.model).guidanceScale},defaultValue(){return w(this.config?.model).guidanceScaleDefault??2.5},value:{get(){const e=this.config?.guidance_scale;return typeof e=="number"?e:this.defaultValue},set(e){const t={...this.config||{}},d=typeof e=="number"&&e>=1&&e<=10?e:this.defaultValue;t.guidance_scale=d,this.$store.commit("seedream/setConfig",t)}}}}),xt={key:0,class:"field"},Nt={class:"label"},Wt={class:"box"},Kt={class:"title font-bold"},Zt={class:"value"};function Xt(e,t,d,o,m,p){const u=a("info-icon"),f=a("el-input-number");return e.supported?(n(),c("div",xt,[l("div",Nt,[l("div",Wt,[l("h2",Kt,r(e.$t("seedream.name.guidanceScale")),1),s(u,{content:e.$t("seedream.description.guidanceScale"),class:"info"},null,8,["content"])])]),l("div",Zt,[s(f,{modelValue:e.value,"onUpdate:modelValue":t[0]||(t[0]=i=>e.value=i),min:1,max:10,step:.1,precision:1,size:"default","controls-position":"right",class:"counter"},null,8,["modelValue"])])])):v("",!0)}const Ht=S(Bt,[["render",Xt],["__scopeId","data-v-7386f064"]]),Jt=k({name:"SeedreamWatermarkSwitch",components:{ElSwitch:Se,InfoIcon:I},computed:{value:{get(){const e=this.$store.state.seedream?.config?.watermark;return e===void 0?me:!!e},set(e){this.$store.commit("seedream/setConfig",{...this.$store.state.seedream?.config,watermark:e})}}}}),Qt={class:"field"},Yt={class:"label"},es={class:"box"},ts={class:"title font-bold"},ss={class:"value"};function os(e,t,d,o,m,p){const u=a("info-icon"),f=a("el-switch");return n(),c("div",Qt,[l("div",Yt,[l("div",es,[l("h2",ts,r(e.$t("seedream.name.watermark")),1),s(u,{content:e.$t("seedream.description.watermark"),class:"info"},null,8,["content"])])]),l("div",ss,[s(f,{modelValue:e.value,"onUpdate:modelValue":t[0]||(t[0]=i=>e.value=i)},null,8,["modelValue"])])])}const as=S(Jt,[["render",os],["__scopeId","data-v-9e2abf0f"]]),ns=k({name:"SeedreamConfigPanel",components:{ElButton:P,FontAwesomeIcon:q,PromptInput:Ne,Consumption:ve,ImageInput:nt,ModelSelector:ut,SizeSelector:vt,MaxImagesSelector:At,OutputFormatSelector:Dt,SeedInput:jt,GuidanceScaleInput:Ht,WatermarkSwitch:as},emits:["generate"],computed:{config(){return this.$store.state.seedream?.config},consumption(){const e={...this.config||{}},t=Array.isArray(e?.image)&&e.image.length>0,d=e?.sequential_image_generation==="auto"?Math.max(1,Math.floor(e?.sequential_image_generation_options?.max_images||1)):1;return be({...e,action:t?"edit":"generate",model:Y(e?.model),count:d},this.service?.cost)},service(){return this.$store.state.seedream?.service}},methods:{onGenerate(){this.$emit("generate")}}}),rs={class:"flex flex-col h-full"},ls={class:"flex-1 overflow-y-auto p-5"},is={class:"flex flex-col items-center justify-center px-5 pb-5"};function cs(e,t,d,o,m,p){const u=a("model-selector"),f=a("size-selector"),i=a("max-images-selector"),_=a("output-format-selector"),h=a("seed-input"),b=a("guidance-scale-input"),M=a("watermark-switch"),C=a("prompt-input"),V=a("image-input"),T=a("consumption"),te=a("font-awesome-icon"),se=a("el-button");return n(),c("div",rs,[l("div",ls,[s(u,{class:"mb-4"}),s(f,{class:"mb-4"}),s(i,{class:"mb-4"}),s(_,{class:"mb-4"}),s(h,{class:"mb-4"}),s(b,{class:"mb-4"}),s(M,{class:"mb-4"}),s(C,{class:"mb-4"}),s(V,{class:"mb-4"})]),l("div",is,[s(T,{value:e.consumption,service:e.service},null,8,["value","service"]),s(se,{type:"primary",class:"btn w-full",round:"",onClick:e.onGenerate},{default:$(()=>[s(te,{icon:"fa-solid fa-magic",class:"mr-2"}),g(" "+r(e.$t("seedream.button.generate")),1)]),_:1},8,["onClick"])])])}const ds=S(ns,[["render",cs]]),ms=k({name:"SeedreamTaskPreview",components:{ElImage:Me,CopyToClipboard:Ie,FontAwesomeIcon:q,ElAlert:ze,ImageWrapper:Ae,ElButton:P,ElTooltip:Ve,ImagePreview:ee},props:{modelValue:{type:Object,required:!0}},computed:{isEdit(){return Array.isArray(this.modelValue?.request?.image)&&(this.modelValue?.request?.image?.length||0)>0},images(){const e=[];return Array.isArray(this.modelValue?.response?.data)&&this.modelValue?.response?.data?.forEach(t=>{e.push(t)}),e}},methods:{shortModel(e){return Y(e)||e},onEdit(e){if(!e)return;console.debug("Edit image:",e);const t={...this.$store.state.seedream?.config||{}};t.image=[e],this.$store.commit("seedream/setConfig",t)}}}),us={class:"preview"},ps={class:"left"},fs={class:"main"},_s={class:"bot"},gs={class:"datetime"},hs={class:"info"},$s={key:0,class:"flex justify-start items-center gap-2 mt-2 w-full overflow-x-auto"},vs={key:1,class:"prompt mt-2"},bs={key:0},Es={key:0,class:D({content:!0})},ks={class:"text-[var(--el-text-color-regular)] text-xs mb-0"},Ss={key:1,class:D({content:!0,failed:!0})},ys={class:"flex justify-start items-center gap-4 w-full overflow-x-auto"},ws={class:D({operations:!0,"mt-2":!0,"mb-2":!0})},Is={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},As={key:1,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Vs={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},zs={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Ms={key:2,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Ts={key:3,class:"text-[var(--el-text-color-regular)] text-xs mb-0"},Rs={key:2,class:D({content:!0})},Ls={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Ds={key:1,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Cs={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},qs={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Ps={key:2,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Us={key:3,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Gs={key:4,class:"text-[var(--el-text-color-regular)] text-xs mb-0"},Fs={key:3,class:D({content:!0})},Os={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},js={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-0"};function Bs(e,t,d,o,m,p){const u=a("el-image"),f=a("image-preview"),i=a("font-awesome-icon"),_=a("copy-to-clipboard"),h=a("el-alert"),b=a("image-wrapper"),M=a("el-button"),C=a("el-tooltip");return n(),c("div",us,[l("div",ps,[s(u,{src:"https://cdn.acedata.cloud/9egrbn.png",class:"avatar"})]),l("div",fs,[l("div",_s,[g(r(e.$t("seedream.name.seedreamBot"))+" ",1),l("span",gs,r(e.$dayjs.format(""+new Date(parseFloat((e.modelValue?.created_at||"").toString())*1e3))),1)]),l("div",hs,[Array.isArray(e.modelValue?.request?.image)&&e.modelValue?.request?.image.length>0?(n(),c("div",$s,[(n(!0),c(y,null,A(e.modelValue?.request?.image,(V,T)=>(n(),E(f,{key:T,url:V,name:`image-${T+1}`,closable:!1},null,8,["url","name"]))),128))])):v("",!0),e.modelValue?.request?.prompt?(n(),c("p",vs,[g(r(e.modelValue?.request?.prompt)+" ",1),e.modelValue?.response?v("",!0):(n(),c("span",bs," - ("+r(e.$t("seedream.status.pending"))+") ",1))])):v("",!0)]),e.modelValue?.response?e.modelValue?.response?.success===!0?(n(),c("div",Ss,[l("div",ys,[(n(!0),c(y,null,A(e.images,(V,T)=>(n(),E(b,{key:T,src:V?.image_url,"raw-src":V?.image_url},null,8,["src","raw-src"]))),128))]),l("div",ws,[s(C,{class:"box-item",effect:"dark",content:e.$t("common.button.edit"),placement:"top-start"},{default:$(()=>[s(M,{type:"info",size:"small",class:"btn-action",onClick:t[0]||(t[0]=ae(V=>e.onEdit(e.images?.[0]?.image_url),["stop"]))},{default:$(()=>[g(r(e.$t("common.button.edit")),1)]),_:1})]),_:1},8,["content"])]),s(h,{closable:!1,class:"mt-2 success"},{default:$(()=>[e.modelValue?.request?.model?(n(),c("p",Is,[s(i,{icon:"fa-solid fa-cube",class:"mr-1"}),g(" "+r(e.$t("seedream.name.model"))+": "+r(e.shortModel(e.modelValue?.request?.model)),1)])):v("",!0),e.modelValue?.request?.size?(n(),c("p",As,[s(i,{icon:"fa-solid fa-image",class:"mr-1"}),g(" "+r(e.$t("seedream.name.size"))+": "+r(e.modelValue?.request?.size),1)])):v("",!0),l("p",Vs,[s(i,{icon:"fa-solid fa-bolt",class:"mr-1"}),g(" "+r(e.$t("seedream.name.task"))+": "+r(e.isEdit?e.$t("seedream.name.edits"):e.$t("seedream.name.generate")),1)]),l("p",zs,[s(i,{icon:"fa-solid fa-magic",class:"mr-1"}),g(" "+r(e.$t("seedream.name.taskId"))+": "+r(e.modelValue?.id)+" ",1),s(_,{content:e.modelValue?.id,class:"btn-copy inline-block"},null,8,["content"])]),e.modelValue?.elapsed?(n(),c("p",Ms,[s(i,{icon:"fa-solid fa-clock",class:"mr-1"}),g(" "+r(e.$t("seedream.name.elapsed"))+": "+r(e.modelValue?.elapsed?.toFixed(2))+"s ",1)])):v("",!0),e.modelValue?.response?.trace_id?(n(),c("p",Ts,[s(i,{icon:"fa-solid fa-hashtag",class:"mr-1"}),g(" "+r(e.$t("seedream.name.traceId"))+": "+r(e.modelValue?.response?.trace_id)+" ",1),s(_,{content:e.modelValue?.response?.trace_id,class:"btn-copy inline-block"},null,8,["content"])])):v("",!0)]),_:1})])):e.modelValue?.response?.success===!1?(n(),c("div",Rs,[s(h,{closable:!1,class:"failure"},{template:$(()=>[s(i,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),g(" "+r(e.$t("seedream.name.failure")),1)]),default:$(()=>[e.modelValue?.request?.model?(n(),c("p",Ls,[s(i,{icon:"fa-solid fa-cube",class:"mr-1"}),g(" "+r(e.$t("seedream.name.model"))+": "+r(e.shortModel(e.modelValue?.request?.model)),1)])):v("",!0),e.modelValue?.request?.size?(n(),c("p",Ds,[s(i,{icon:"fa-solid fa-image",class:"mr-1"}),g(" "+r(e.$t("seedream.name.size"))+": "+r(e.modelValue?.request?.size),1)])):v("",!0),l("p",Cs,[s(i,{icon:"fa-solid fa-bolt",class:"mr-1"}),g(" "+r(e.$t("seedream.name.task"))+": "+r(e.isEdit?e.$t("seedream.name.edits"):e.$t("seedream.name.generate")),1)]),l("p",qs,[s(i,{icon:"fa-solid fa-magic",class:"mr-1"}),g(" "+r(e.$t("seedream.name.taskId"))+": "+r(e.modelValue?.id)+" ",1),s(_,{content:e.modelValue?.id,class:"btn-copy"},null,8,["content"])]),e.modelValue?.response?.error?.message?(n(),c("p",Ps,[s(i,{icon:"fa-solid fa-circle-info",class:"mr-1"}),g(" "+r(e.$t("seedream.name.failureReason"))+": "+r(e.modelValue?.response?.error?.message)+" ",1),s(_,{content:e.modelValue?.response?.error?.message,class:"btn-copy"},null,8,["content"])])):v("",!0),e.modelValue?.elapsed?(n(),c("p",Us,[s(i,{icon:"fa-solid fa-clock",class:"mr-1"}),g(" "+r(e.$t("seedream.name.elapsed"))+": "+r(e.modelValue?.elapsed?.toFixed(2))+"s ",1)])):v("",!0),e.modelValue?.response?.trace_id?(n(),c("p",Gs,[s(i,{icon:"fa-solid fa-hashtag",class:"mr-1"}),g(" "+r(e.$t("seedream.name.traceId"))+": "+r(e.modelValue?.response?.trace_id)+" ",1),s(_,{content:e.modelValue?.response?.trace_id,class:"btn-copy"},null,8,["content"])])):v("",!0)]),_:1})])):(n(),c("div",Fs,[s(h,{closable:!1,class:"info"},{template:$(()=>[s(i,{icon:"fa-solid fa-circle-info",class:"mr-1"}),g(" "+r(e.$t("seedream.name.status")),1)]),default:$(()=>[l("p",Os,[s(i,{icon:"fa-solid fa-magic",class:"mr-1"}),g(" "+r(e.$t("seedream.name.taskId"))+": "+r(e.modelValue?.id)+" ",1),s(_,{content:e.modelValue?.id,class:"btn-copy"},null,8,["content"])]),e.modelValue?.response?.trace_id?(n(),c("p",js,[s(i,{icon:"fa-solid fa-hashtag",class:"mr-1"}),g(" "+r(e.$t("seedream.name.traceId"))+": "+r(e.modelValue?.response?.trace_id)+" ",1),s(_,{content:e.modelValue?.response?.trace_id,class:"btn-copy"},null,8,["content"])])):v("",!0)]),_:1})])):(n(),c("div",Es,[s(h,{closable:!1,class:"info"},{template:$(()=>[s(i,{icon:"fa-regular fa-clock",class:"mr-1"}),g(" "+r(e.$t("seedream.status.pending")),1)]),default:$(()=>[l("p",ks,[s(i,{icon:"fa-solid fa-magic",class:"mr-1"}),g(" "+r(e.$t("seedream.name.taskId"))+": "+r(e.modelValue?.id)+" ",1),s(_,{content:e.modelValue?.id,class:"btn-copy inline-block"},null,8,["content"])])]),_:1})]))])])}const xs=S(ms,[["render",Bs],["__scopeId","data-v-0dfc6a09"]]),Ns=k({name:"SeedreamRecentPanel",components:{TaskPreview:xs,BotPlaceholder:Te,NoTasks:Re,ScrollList:fe},props:{loading:{type:Boolean,default:!1}},emits:["reach-top"],computed:{tasks(){return{...this.$store.state.seedream?.tasks,items:this.$store.state.seedream?.tasks?.items?.slice()}}},methods:{getScrollElement(){return this.$refs.scrollList?.getScrollElement?.()}}}),Ws={key:0},Ks={key:2,class:"w-full h-full flex items-center justify-center"};function Zs(e,t,d,o,m,p){const u=a("bot-placeholder"),f=a("task-preview"),i=a("scroll-list"),_=a("no-tasks");return n(),c(y,null,[e.tasks?.items===void 0?(n(),c("div",Ws,[s(u)])):e.tasks?.items?.length&&e.tasks?.items?.length>0?(n(),E(i,{key:1,ref:"scrollList",class:"tasks h-full w-full overflow-y-auto",loading:e.loading,onReachTop:t[0]||(t[0]=h=>e.$emit("reach-top"))},{default:$(()=>[(n(!0),c(y,null,A(e.tasks?.items,h=>(n(),E(f,{key:h.id,"model-value":h},null,8,["model-value"]))),128))]),_:1},8,["loading"])):v("",!0),e.tasks?.items?.length===0?(n(),c("div",Ks,[s(_)])):v("",!0)],64)}const Xs=S(Ns,[["render",Zs]]),Hs=pe("seedream"),Js=k({name:"SeedreamIndex",components:{ConfigPanel:ds,Layout:Ue,RecentPanel:Xs},inject:["initialized"],data(){return{task:void 0,job:0,loading:!1}},computed:{applicationsLoading(){return this.$store.state.seedream?.status?.getApplications===X.Request},tasksLoading(){return this.$store.state.seedream?.status?.getTasks===X.Request},credential(){return this.$store.state.seedream?.credential},config(){return this.$store.state.seedream?.config},application(){return this.$store.state.seedream?.application},tasks(){return this.$store.state.seedream?.tasks}},watch:{tasks:{handler(e,t){e?.items?.length>t?.items?.length&&console.debug("new tasks detected")},deep:!0},initialized:{async handler(e){e&&(console.debug("layout initialized"),await this.onGetTasks(),await this.onScrollDown(),this.job=window.setInterval(()=>{this.onGetTasks()},5e3))},immediate:!0}},async mounted(){await this.onGetService()},async unmounted(){window.clearInterval(this.job)},methods:{async onReachTop(){await _e({tasks:this.tasks,getTasks:()=>this.tasks,loading:this.loading,setLoading:e=>this.loading=e,isBlocked:()=>this.tasksLoading,fetch:e=>this.onGetTasks({createdAtMax:e}),getScrollElement:()=>this.getTasksScrollElement()})},async onGetService(){console.debug("start onGetService"),await this.$store.dispatch("seedream/getService"),console.debug("end onGetService")},async onGetApplication(){console.debug("start onGetApplication"),await this.$store.dispatch("seedream/getApplications"),console.debug("end onGetApplication"),await this.onGetTasks()},async onScrollDown(){await this.$nextTick();const e=this.getTasksScrollElement();e&&(e.scrollTop=e.scrollHeight)},async onGetTasks(e){if(this.applicationsLoading||this.tasksLoading){console.debug("loading");return}console.debug("start onGetTasks",e);const{limit:t=20,createdAtMin:d,createdAtMax:o}=e||{};console.debug("limit",t,"createdAtMin",d,"createdAtMax",o),await this.$store.dispatch("seedream/getTasks",{limit:t,createdAtMin:d,createdAtMax:o})},async onGenerate(){const e={...this.config||{}};!(Array.isArray(e?.image)&&e.image.length>0)&&"image"in e&&delete e.image,e?.size||delete e.size;const d={...e,callback_url:Hs},o=this.credential?.token;if(!o){console.error("no token specified");return}z.info(this.$t("seedream.message.startingTask")),ue("seedream",we.generate(d,{token:o})).then(()=>{z.success(this.$t("seedream.message.startTaskSuccess"))}).catch(m=>{const p=m?.response?.data;p?.error?.code===ye?z.error(this.$t("seedream.message.usedUp")):z.error(this.$t("seedream.message.startTaskFailed")+(p?.error?.message||""))}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})},getTasksScrollElement(){return this.$refs.recentPanel?.getScrollElement?.()}}});function Qs(e,t,d,o,m,p){const u=a("config-panel"),f=a("recent-panel"),i=a("layout");return n(),E(i,null,{config:$(()=>[s(u,{onGenerate:e.onGenerate},null,8,["onGenerate"])]),result:$(()=>[s(f,{ref:"recentPanel",loading:e.loading,onReachTop:e.onReachTop},null,8,["loading","onReachTop"])]),_:1})}const Zo=S(Js,[["render",Qs]]);export{Zo as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{F as T}from"./index.es-BGvCJe-W.js";import{E as q}from"./index-BF3jvRlG.js";import{E as W}from"./index-CP6llfLN.js";import{d as k,H as l,E as c,z as C,C as a,y as g,D as s,q as n,F as o,I as u,O as V,N,x as A,J as p,M as K,Q as O}from"./vendor-vue-NSDaktjZ.js";import{G as y,bj as H,cL as Q,cM as z,cN as P,cO as J,cP as S,cQ as M,cR as j,cS as D,co as X,aT as Y,S as F,cp as Z}from"./index-B7lLMdzb.js";import{I as U,S as ee,l as te}from"./pagination-DSYOIV_9.js";import{E as ae}from"./index-zQkXvP4I.js";import{p as oe}from"./pasteUploadMixin-BurWbGNQ.js";import{I as x}from"./ImagePreview-8xggEAtd.js";import{E as ne}from"./index-2P6neM4R.js";import{E as R}from"./index-DmgFbW9M.js";import{E as B,a as G}from"./index-B21ZeSrS.js";import{C as se}from"./Consumption-D1DmjLsj.js";import{a as le}from"./price-BoiEmiVd.js";import{b as re}from"./errorCode-Cqj9Td_Z.js";import{C as ie}from"./CopyToClipboard-BS0IZ5vm.js";import{I as ce}from"./ImageWrapper-JCiqYITj.js";import{E as ue}from"./index-BiC7KGb5.js";import{E as me}from"./index-ViGPRpNP.js";import{E as de}from"./index-DuW5L2r7.js";import{B as pe}from"./BotPlaceholder-qj2YLdAp.js";import{N as fe}from"./NoTasks-YcewaUb5.js";import"./use-form-item-DZgxCtXL.js";import"./index-BuyEbX8F.js";import"./vendor-axios-B8_nURbH.js";import"./vendor-dayjs-v0j1UNZp.js";import"./vendor-vue-router-Df5ITouH.js";import"./typescript-Bj1ijDQ6.js";import"./index-cN8cftWM.js";import"./index-pQFvUXd3.js";import"./index-Dw3SeELD.js";import"./_baseClone-Db65SBvG.js";import"./_Uint8Array-4l3jEroS.js";import"./_initCloneObject-C7XzV3eb.js";import"./isEqual-CfmBLeOp.js";import"./index-CGiBnpqk.js";import"./strings-beZM2Y-f.js";import"./castArray-FN0qIC-F.js";import"./debounce-CqzxdC1T.js";import"./_baseIteratee-CJ9W-nbE.js";import"./index-CbH6hylr.js";import"./index-B-vHnqyE.js";const he=k({name:"LayoutNanobanana",components:{ElDrawer:W,ElButton:q,FontAwesomeIcon:T},data(){return{drawer:!1}}}),_e={class:"main flex flex-row flex-1"},ge={class:"config w-[320px] flex-none h-full overflow-y-auto bg-[var(--app-sidebar-bg)] border-r border-[var(--app-border-subtle)]"},be={class:"result h-full p-6 flex-1 flex flex-col min-w-0 overflow-x-hidden bg-[var(--app-content-bg)]"};function $e(e,t,$,i,b,f){const h=s("font-awesome-icon"),_=s("el-button"),m=s("el-drawer");return n(),l("div",_e,[c("div",ge,[C(e.$slots,"config",{},void 0,!0)]),c("div",be,[C(e.$slots,"result",{},void 0,!0)]),a(_,{circle:"",class:"menu",onClick:t[0]||(t[0]=d=>e.drawer=!0)},{default:g(()=>[a(h,{icon:"fa-solid fa-magic"})]),_:1}),a(m,{modelValue:e.drawer,"onUpdate:modelValue":t[1]||(t[1]=d=>e.drawer=d),direction:"ltr","with-header":!1,size:"340px",class:"drawer"},{default:g(()=>[C(e.$slots,"config",{},void 0,!0)]),_:3},8,["modelValue"])])}const ve=y(he,[["render",$e],["__scopeId","data-v-8ca1c212"]]),ke="",ye=k({name:"PromptInput",components:{ElInput:ae,InfoIcon:U},computed:{prompt:{get(){return this.$store.state.nanobanana?.config?.prompt},set(e){console.debug("set prompt",e),this.$store.commit("nanobanana/setConfig",{...this.$store.state.nanobanana?.config,prompt:e})}}},mounted(){this.prompt||(this.prompt=ke)}}),we={class:"field"},Ve={class:"box"},Ae={class:"title font-bold"};function Ne(e,t,$,i,b,f){const h=s("info-icon"),_=s("el-input");return n(),l("div",we,[c("div",Ve,[c("h2",Ae,o(e.$t("nanobanana.name.prompt")),1),a(h,{content:e.$t("nanobanana.description.prompt"),class:"info"},null,8,["content"])]),a(_,{modelValue:e.prompt,"onUpdate:modelValue":t[0]||(t[0]=m=>e.prompt=m),rows:3,type:"textarea",class:"prompt",placeholder:e.$t("nanobanana.placeholder.prompt")},null,8,["modelValue","placeholder"])])}const Ee=y(ye,[["render",Ne],["__scopeId","data-v-2331e197"]]),Re=k({name:"ImageUrlsInput",components:{ElUpload:ne,ElButton:q,InfoIcon:U,ImagePreview:x,FontAwesomeIcon:T},mixins:[oe],data(){return{fileList:[],uploadUrl:H()+"/api/v1/files/",suppressWatch:!1}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},urls(){return this.fileList.map(e=>e?.response?.file_url).filter(e=>!!e)},value(){return this.$store.state.nanobanana?.config?.image_urls}},watch:{value:{immediate:!0,handler(e){if(this.suppressWatch)return;if(!e||e.length===0){const i=(this.fileList||[]).filter(b=>!b?.response?.file_url);this.fileList=i.length?i:[];return}const t=[];e.forEach(i=>{const b=this.fileList.find(f=>f?.response?.file_url===i||f?.url===i);b?t.push(b):t.push({name:i.split("/").pop()||i,url:i,status:"success",percentage:100,response:{file_url:i}})}),(this.fileList||[]).filter(i=>!i?.response?.file_url).forEach(i=>{t.some(f=>f===i||f?.url===i?.url||f?.response?.file_url===i?.response?.file_url)||t.push(i)}),this.fileList=t}}},mounted(){},methods:{onChange(e){if(!e?.url&&e?.raw)try{e.url=URL.createObjectURL(e.raw)}catch{}},onRemove(e){if(e?.url&&typeof e.url=="string"&&e.url.startsWith("blob:"))try{URL.revokeObjectURL(e.url)}catch{}this.onSetImageUrls()},onExceed(){R.warning(this.$t("nanobanana.message.uploadImageExceed"))},onError(){R.error(this.$t("nanobanana.message.uploadImageError"))},onSetImageUrls(){const e=this.urls;this.suppressWatch=!0,this.$store.commit("nanobanana/setConfig",{...this.$store.state.nanobanana?.config,image_urls:e}),this.$nextTick(()=>{this.suppressWatch=!1})},async onSuccess(e,t){e?.file_url&&(t.url=e.file_url,t.response=e),this.onSetImageUrls()},onRemovePreview(e,t){if(this.fileList.splice(e,1),t?.url&&typeof t.url=="string"&&t.url.startsWith("blob:"))try{URL.revokeObjectURL(t.url)}catch{}this.onSetImageUrls()}}}),Ie={class:"field flex items-center justify-between"},Le={class:"title font-bold text-[14px] mb-[10px]"},Se={class:"upload-wrapper flex flex-col items-start gap-[8px]"},Te={class:"controls flex items-center"},qe={class:"file-list flex flex-wrap gap-[10px]"};function Oe(e,t,$,i,b,f){const h=s("font-awesome-icon"),_=s("el-button"),m=s("el-upload"),d=s("info-icon"),w=s("image-preview");return n(),l(V,null,[c("div",Ie,[c("h2",Le,o(e.$t("nanobanana.name.imageUrls")),1),c("div",Se,[c("div",Te,[a(m,{ref:"uploader","file-list":e.fileList,"onUpdate:fileList":t[0]||(t[0]=r=>e.fileList=r),accept:".png,.jpg,.jpeg,.gif,.bmp,.webp",name:"file",class:"value",limit:5,multiple:!0,"show-file-list":!1,action:e.uploadUrl,"on-exceed":e.onExceed,"on-error":e.onError,"on-success":e.onSuccess,"on-change":e.onChange,"on-remove":e.onRemove,headers:e.headers},{default:g(()=>[a(_,{size:"small",type:"primary",round:""},{default:g(()=>[a(h,{icon:"fa-solid fa-upload",class:"mr-1"}),u(" "+o(e.$t("nanobanana.button.uploadImageUrls")),1)]),_:1})]),_:1},8,["file-list","action","on-exceed","on-error","on-success","on-change","on-remove","headers"]),a(d,{content:e.$t("nanobanana.description.imageUrls"),class:"ml-2"},null,8,["content"])])])]),c("div",qe,[(n(!0),l(V,null,N(e.fileList,(r,v)=>(n(),A(w,{key:r.uid||r?.response?.file_url||r.url||v,url:r.url||r?.response?.file_url,name:r.name,percentage:r.percentage,onRemove:E=>e.onRemovePreview(v,r)},null,8,["url","name","percentage","onRemove"]))),128))])],64)}const Ue=y(Re,[["render",Oe]]),Ce=k({name:"AspectRatioSelector",components:{ElSelect:G,ElOption:B},data(){return{options:["1:1","3:2","2:3","16:9","9:16","4:3","3:4"]}},computed:{value:{get(){return this.$store.state.nanobanana?.config?.aspect_ratio},set(e){console.debug("set aspect_ratio",e);const t={...this.$store.state.nanobanana?.config||{}};e?t.aspect_ratio=e:delete t.aspect_ratio,this.$store.commit("nanobanana/setConfig",t)}}}}),Pe={class:"field"},Be={class:"title font-bold"};function Ge(e,t,$,i,b,f){const h=s("el-option"),_=s("el-select");return n(),l("div",Pe,[c("h2",Be,o(e.$t("nanobanana.name.aspectRatio")),1),a(_,{modelValue:e.value,"onUpdate:modelValue":t[0]||(t[0]=m=>e.value=m),class:"value",clearable:"",placeholder:e.$t("nanobanana.placeholder.select")},{default:g(()=>[(n(!0),l(V,null,N(e.options,m=>(n(),A(h,{key:m,label:m,value:m},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const Me=y(Ce,[["render",Ge],["__scopeId","data-v-67f08a08"]]),je=k({name:"NanobananaModelSelector",components:{ElSelect:G,ElOption:B,InfoIcon:U},data(){return{options:[{value:z,label:this.$t("nanobanana.model.nanoBanana")},{value:P,label:this.$t("nanobanana.model.nanoBananaPro")},{value:J,label:this.$t("nanobanana.model.nanoBanana2")}]}},computed:{value:{get(){return this.$store.state.nanobanana?.config?.model},set(e){this.$store.commit("nanobanana/setConfig",{...this.$store.state.nanobanana?.config,model:e})}},modelDescription(){return this.$t("nanobanana.description.model")}},mounted(){this.value||(this.value=Q)}}),De={class:"field"},Fe={class:"label"},ze={class:"box"},xe={class:"title font-bold"};function We(e,t,$,i,b,f){const h=s("info-icon"),_=s("el-option"),m=s("el-select");return n(),l("div",De,[c("div",Fe,[c("div",ze,[c("h2",xe,o(e.$t("nanobanana.name.model")),1),a(h,{content:e.modelDescription,class:"info"},null,8,["content"])])]),a(m,{modelValue:e.value,"onUpdate:modelValue":t[0]||(t[0]=d=>e.value=d),class:"value",placeholder:e.$t("nanobanana.placeholder.select")},{default:g(()=>[(n(!0),l(V,null,N(e.options,d=>(n(),A(_,{key:d.value,label:d.label,value:d.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const Ke=y(je,[["render",We],["__scopeId","data-v-94304d73"]]),He=k({name:"NanobananaResolutionSelector",components:{ElSelect:G,ElOption:B,InfoIcon:U},data(){return{cachedResolution:S,options:[{value:M,label:M},{value:j,label:j},{value:D,label:D}]}},computed:{value:{get(){return this.$store.state.nanobanana?.config?.resolution},set(e){this.$store.commit("nanobanana/setConfig",{...this.$store.state.nanobanana?.config,resolution:e})}},isProModel(){return this.$store.state.nanobanana?.config?.model!==z}},watch:{value(e){this.isProModel&&e&&(this.cachedResolution=e)},isProModel(e){e?this.value||(this.value=this.cachedResolution||S):(this.value&&(this.cachedResolution=this.value),this.$store.commit("nanobanana/setConfig",{...this.$store.state.nanobanana?.config,resolution:void 0}))}},mounted(){this.isProModel&&!this.value&&(this.value=S),!this.isProModel&&this.value&&(this.cachedResolution=this.value,this.$store.commit("nanobanana/setConfig",{...this.$store.state.nanobanana?.config,resolution:void 0}))}}),Qe={class:"field"},Je={class:"label"},Xe={class:"box"},Ye={class:"title font-bold"};function Ze(e,t,$,i,b,f){const h=s("info-icon"),_=s("el-option"),m=s("el-select");return n(),l("div",Qe,[c("div",Je,[c("div",Xe,[c("h2",Ye,o(e.$t("nanobanana.name.resolution")),1),a(h,{content:e.$t("nanobanana.description.resolutionProOnly"),class:"info"},null,8,["content"])])]),a(m,{modelValue:e.value,"onUpdate:modelValue":t[0]||(t[0]=d=>e.value=d),class:"value",placeholder:e.$t("nanobanana.placeholder.select"),disabled:!e.isProModel},{default:g(()=>[(n(!0),l(V,null,N(e.options,d=>(n(),A(_,{key:d.value,label:d.label,value:d.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder","disabled"])])}const et=y(He,[["render",Ze],["__scopeId","data-v-fd5ab393"]]),tt=k({name:"ConfigPanel",components:{ElButton:q,FontAwesomeIcon:T,PromptInput:Ee,Consumption:se,ImageUrlsInput:Ue,AspectRatioSelector:Me,ModelSelector:Ke,ResolutionSelector:et},emits:["generate"],computed:{config(){return this.$store.state.nanobanana?.config},consumption(){const e={...this.config||{}},t=Array.isArray(e?.image_urls)&&e.image_urls.length>0;return le({...e,action:t?"edit":"generate"},this.service?.cost)},service(){return this.$store.state.nanobanana?.service}},methods:{onGenerate(){this.$emit("generate")}}}),at={class:"flex flex-col h-full"},ot={class:"flex-1 overflow-y-auto p-5"},nt={class:"flex flex-col items-center justify-center px-5 pb-5"};function st(e,t,$,i,b,f){const h=s("model-selector"),_=s("resolution-selector"),m=s("prompt-input"),d=s("aspect-ratio-selector"),w=s("image-urls-input"),r=s("consumption"),v=s("font-awesome-icon"),E=s("el-button");return n(),l("div",at,[c("div",ot,[a(h,{class:"mb-4"}),a(_,{class:"mb-4"}),a(m,{class:"mb-4"}),a(d,{class:"mb-4"}),a(w,{class:"mb-4"})]),c("div",nt,[a(r,{value:e.consumption,service:e.service},null,8,["value","service"]),a(E,{type:"primary",class:"btn w-full",round:"",onClick:e.onGenerate},{default:g(()=>[a(v,{icon:"fa-solid fa-magic",class:"mr-2"}),u(" "+o(e.$t("nanobanana.button.generate")),1)]),_:1},8,["onClick"])])])}const lt=y(tt,[["render",st]]),rt=k({name:"TaskPreview",components:{ElImage:de,CopyToClipboard:ie,FontAwesomeIcon:T,ElAlert:me,ImageWrapper:ce,ElButton:q,ElTooltip:ue,ImagePreview:x},props:{modelValue:{type:Object,required:!0}},computed:{images(){const e=[];return Array.isArray(this.modelValue?.response?.data)&&this.modelValue?.response?.data?.forEach(t=>{e.push(t)}),e}},methods:{onEdit(e){if(!e)return;console.debug("Edit image:",e);const t={...this.$store.state.nanobanana?.config||{}};delete t.action,t.image_urls=[e],this.$store.commit("nanobanana/setConfig",t)}}}),it={class:"preview"},ct={class:"left"},ut={class:"main"},mt={class:"bot"},dt={class:"datetime"},pt={class:"info"},ft={key:0,class:"flex justify-start items-center gap-2 mt-2 w-full overflow-x-auto"},ht={key:1,class:"prompt mt-2"},_t={key:0},gt={key:0,class:O({content:!0,failed:!0})},bt={class:"flex justify-start items-center gap-4 w-full overflow-x-auto"},$t={class:O({operations:!0,"mt-2":!0,"mb-2":!0})},vt={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},kt={key:1,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},yt={key:2,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},wt={key:3,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Vt={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},At={key:4,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Nt={key:5,class:"text-[var(--el-text-color-regular)] text-xs mb-0"},Et={key:1,class:O({content:!0})},Rt={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},It={key:1,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Lt={key:2,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},St={key:3,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Tt={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},qt={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Ot={key:4,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Ut={key:5,class:"text-[var(--el-text-color-regular)] text-xs mb-0"},Ct={key:2,class:O({content:!0})},Pt={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Bt={key:1,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Gt={key:2,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Mt={key:3,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},jt={class:"text-[var(--el-text-color-regular)] text-xs mb-2"};function Dt(e,t,$,i,b,f){const h=s("el-image"),_=s("image-preview"),m=s("image-wrapper"),d=s("el-button"),w=s("el-tooltip"),r=s("font-awesome-icon"),v=s("copy-to-clipboard"),E=s("el-alert");return n(),l("div",it,[c("div",ct,[a(h,{src:"https://cdn.acedata.cloud/859plc.jpg",class:"avatar"})]),c("div",ut,[c("div",mt,[u(o(e.$t("nanobanana.name.nanobananaBot"))+" ",1),c("span",dt,o(e.$dayjs.format(""+new Date(parseFloat((e.modelValue?.created_at||"").toString())*1e3))),1)]),c("div",pt,[e.modelValue?.request?.image_urls&&e.modelValue?.request?.image_urls.length>0?(n(),l("div",ft,[(n(!0),l(V,null,N(e.modelValue?.request?.image_urls,(I,L)=>(n(),A(_,{key:L,url:I,name:`image-${L+1}`,closable:!1},null,8,["url","name"]))),128))])):p("",!0),e.modelValue?.request?.prompt?(n(),l("p",ht,[u(o(e.modelValue?.request?.prompt)+" ",1),e.modelValue?.response?p("",!0):(n(),l("span",_t," - ("+o(e.$t("nanobanana.status.pending"))+") ",1))])):p("",!0)]),e.modelValue?.response?.success===!0?(n(),l("div",gt,[c("div",bt,[(n(!0),l(V,null,N(e.images,(I,L)=>(n(),A(m,{key:L,src:I?.image_url,"raw-src":I?.image_url},null,8,["src","raw-src"]))),128))]),c("div",$t,[a(w,{class:"box-item",effect:"dark",content:e.$t("common.button.edit"),placement:"top-start"},{default:g(()=>[a(d,{type:"info",size:"small",class:"btn-action",onClick:t[0]||(t[0]=K(I=>e.onEdit(e.images?.[0]?.image_url),["stop"]))},{default:g(()=>[u(o(e.$t("common.button.edit")),1)]),_:1})]),_:1},8,["content"])]),a(E,{closable:!1,class:"mt-2 success"},{default:g(()=>[e.modelValue?.request?.model?(n(),l("p",vt,[a(r,{icon:"fa-solid fa-cube",class:"mr-1"}),u(" "+o(e.$t("nanobanana.name.model"))+": "+o(e.modelValue?.request?.model),1)])):p("",!0),e.modelValue?.request?.resolution?(n(),l("p",kt,[a(r,{icon:"fa-solid fa-image",class:"mr-1"}),u(" "+o(e.$t("nanobanana.name.resolution"))+": "+o(e.modelValue?.request?.resolution),1)])):p("",!0),e.modelValue?.request?.aspect_ratio?(n(),l("p",yt,[a(r,{icon:"fa-solid fa-up-right-from-square",class:"mr-1"}),u(" "+o(e.$t("nanobanana.name.aspectRatio"))+": "+o(e.modelValue?.request?.aspect_ratio),1)])):p("",!0),e.modelValue?.request?.action?(n(),l("p",wt,[a(r,{icon:"fa-solid fa-bolt",class:"mr-1"}),u(" "+o(e.$t("nanobanana.name.task"))+": "+o(e.modelValue?.request?.action==="generate"?e.$t("nanobanana.name.generate"):e.$t("nanobanana.name.edits")),1)])):p("",!0),c("p",Vt,[a(r,{icon:"fa-solid fa-magic",class:"mr-1"}),u(" "+o(e.$t("nanobanana.name.taskId"))+": "+o(e.modelValue?.id)+" ",1),a(v,{content:e.modelValue?.id,class:"btn-copy inline-block"},null,8,["content"])]),e.modelValue?.elapsed?(n(),l("p",At,[a(r,{icon:"fa-solid fa-clock",class:"mr-1"}),u(" "+o(e.$t("nanobanana.name.elapsed"))+": "+o(e.modelValue?.elapsed?.toFixed(2))+"s ",1)])):p("",!0),e.modelValue?.response?.trace_id?(n(),l("p",Nt,[a(r,{icon:"fa-solid fa-hashtag",class:"mr-1"}),u(" "+o(e.$t("nanobanana.name.traceId"))+": "+o(e.modelValue?.response?.trace_id)+" ",1),a(v,{content:e.modelValue?.response?.trace_id,class:"btn-copy inline-block"},null,8,["content"])])):p("",!0)]),_:1})])):e.modelValue?.response?.success===!1?(n(),l("div",Et,[a(E,{closable:!1,class:"failure"},{template:g(()=>[a(r,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),u(" "+o(e.$t("nanobanana.name.failure")),1)]),default:g(()=>[e.modelValue?.request?.model?(n(),l("p",Rt,[a(r,{icon:"fa-solid fa-cube",class:"mr-1"}),u(" "+o(e.$t("nanobanana.name.model"))+": "+o(e.modelValue?.request?.model),1)])):p("",!0),e.modelValue?.request?.resolution?(n(),l("p",It,[a(r,{icon:"fa-solid fa-image",class:"mr-1"}),u(" "+o(e.$t("nanobanana.name.resolution"))+": "+o(e.modelValue?.request?.resolution),1)])):p("",!0),e.modelValue?.request?.aspect_ratio?(n(),l("p",Lt,[a(r,{icon:"fa-solid fa-up-right-from-square",class:"mr-1"}),u(" "+o(e.$t("nanobanana.name.aspectRatio"))+": "+o(e.modelValue?.request?.aspect_ratio),1)])):p("",!0),e.modelValue?.request?.action?(n(),l("p",St,[a(r,{icon:"fa-solid fa-bolt",class:"mr-1"}),u(" "+o(e.$t("nanobanana.name.task"))+": "+o(e.modelValue?.request?.action==="generate"?e.$t("nanobanana.name.generate"):e.$t("nanobanana.name.edits")),1)])):p("",!0),c("p",Tt,[a(r,{icon:"fa-solid fa-magic",class:"mr-1"}),u(" "+o(e.$t("nanobanana.name.taskId"))+": "+o(e.modelValue?.id)+" ",1),a(v,{content:e.modelValue?.id,class:"btn-copy"},null,8,["content"])]),c("p",qt,[a(r,{icon:"fa-solid fa-circle-info",class:"mr-1"}),u(" "+o(e.$t("nanobanana.name.failureReason"))+": "+o(e.modelValue?.response?.error?.message)+" ",1),a(v,{content:e.modelValue?.response?.error?.message,class:"btn-copy"},null,8,["content"])]),e.modelValue?.elapsed?(n(),l("p",Ot,[a(r,{icon:"fa-solid fa-clock",class:"mr-1"}),u(" "+o(e.$t("nanobanana.name.elapsed"))+": "+o(e.modelValue?.elapsed?.toFixed(2))+"s ",1)])):p("",!0),e.modelValue?.response?.trace_id?(n(),l("p",Ut,[a(r,{icon:"fa-solid fa-hashtag",class:"mr-1"}),u(" "+o(e.$t("nanobanana.name.traceId"))+": "+o(e.modelValue?.response?.trace_id)+" ",1),a(v,{content:e.modelValue?.response?.trace_id,class:"btn-copy"},null,8,["content"])])):p("",!0)]),_:1})])):(n(),l("div",Ct,[a(E,{closable:!1,class:"info"},{template:g(()=>[a(r,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),u(" "+o(e.$t("nanobanana.name.failure")),1)]),default:g(()=>[e.modelValue?.request?.model?(n(),l("p",Pt,[a(r,{icon:"fa-solid fa-cube",class:"mr-1"}),u(" "+o(e.$t("nanobanana.name.model"))+": "+o(e.modelValue?.request?.model),1)])):p("",!0),e.modelValue?.request?.resolution?(n(),l("p",Bt,[a(r,{icon:"fa-solid fa-image",class:"mr-1"}),u(" "+o(e.$t("nanobanana.name.resolution"))+": "+o(e.modelValue?.request?.resolution),1)])):p("",!0),e.modelValue?.request?.aspect_ratio?(n(),l("p",Gt,[a(r,{icon:"fa-solid fa-up-right-from-square",class:"mr-1"}),u(" "+o(e.$t("nanobanana.name.aspectRatio"))+": "+o(e.modelValue?.request?.aspect_ratio),1)])):p("",!0),e.modelValue?.request?.action?(n(),l("p",Mt,[a(r,{icon:"fa-solid fa-bolt",class:"mr-1"}),u(" "+o(e.$t("nanobanana.name.task"))+": "+o(e.modelValue?.request?.action==="generate"?e.$t("nanobanana.name.generate"):e.$t("nanobanana.name.edits")),1)])):p("",!0),c("p",jt,[a(r,{icon:"fa-solid fa-magic",class:"mr-1"}),u(" "+o(e.$t("nanobanana.name.taskId"))+": "+o(e.modelValue?.id)+" ",1),a(v,{content:e.modelValue?.id,class:"btn-copy"},null,8,["content"])])]),_:1})]))])])}const Ft=y(rt,[["render",Dt],["__scopeId","data-v-8d5f4fff"]]),zt=k({name:"RecentPanel",components:{TaskPreview:Ft,BotPlaceholder:pe,NoTasks:fe,ScrollList:ee},props:{loading:{type:Boolean,default:!1}},emits:["reach-top"],data(){return{job:0}},computed:{tasks(){return{...this.$store.state.nanobanana?.tasks,items:this.$store.state.nanobanana?.tasks?.items?.slice()}}},methods:{getScrollElement(){return this.$refs.scrollList?.getScrollElement?.()}}}),xt={key:0},Wt={key:2,class:"w-full h-full flex items-center justify-center"};function Kt(e,t,$,i,b,f){const h=s("bot-placeholder"),_=s("task-preview"),m=s("scroll-list"),d=s("no-tasks");return n(),l(V,null,[e.tasks?.items===void 0?(n(),l("div",xt,[a(h)])):e.tasks?.items?.length&&e.tasks?.items?.length>0?(n(),A(m,{key:1,ref:"scrollList",class:"tasks h-full w-full overflow-y-auto",loading:e.loading,onReachTop:t[0]||(t[0]=w=>e.$emit("reach-top"))},{default:g(()=>[(n(!0),l(V,null,N(e.tasks?.items,w=>(n(),A(_,{key:w.id,"model-value":w},null,8,["model-value"]))),128))]),_:1},8,["loading"])):p("",!0),e.tasks?.items?.length===0?(n(),l("div",Wt,[a(d)])):p("",!0)],64)}const Ht=y(zt,[["render",Kt]]),Qt=Z("nanobanana"),Jt=k({name:"NanobananaIndex",components:{ConfigPanel:lt,Layout:ve,RecentPanel:Ht},inject:["initialized"],data(){return{task:void 0,job:0,loading:!1}},computed:{applicationsLoading(){return this.$store.state.nanobanana?.status?.getApplications===F.Request},tasksLoading(){return this.$store.state.nanobanana?.status?.getTasks===F.Request},credential(){return this.$store.state.nanobanana?.credential},config(){return this.$store.state.nanobanana?.config},application(){return this.$store.state.nanobanana?.application},tasks(){return this.$store.state.nanobanana?.tasks}},watch:{tasks:{handler(e,t){e?.items?.length>t?.items?.length&&console.debug("new tasks detected")},deep:!0},initialized:{async handler(e){e&&(console.debug("layout initialized"),await this.onGetTasks(),await this.onScrollDown(),this.job=window.setInterval(()=>{this.onGetTasks()},5e3))},immediate:!0}},async mounted(){await this.onGetService()},async unmounted(){window.clearInterval(this.job)},methods:{async onReachTop(){await te({tasks:this.tasks,getTasks:()=>this.tasks,loading:this.loading,setLoading:e=>this.loading=e,isBlocked:()=>this.tasksLoading,fetch:e=>this.onGetTasks({createdAtMax:e}),getScrollElement:()=>this.getTasksScrollElement()})},async onGetService(){console.debug("start onGetService"),await this.$store.dispatch("nanobanana/getService"),console.debug("end onGetService")},async onGetApplication(){console.debug("start onGetApplication"),await this.$store.dispatch("nanobanana/getApplications"),console.debug("end onGetApplication"),await this.onGetTasks()},async onScrollDown(){await this.$nextTick();const e=this.getTasksScrollElement();e&&(e.scrollTop=e.scrollHeight)},async onGetTasks(e){if(this.applicationsLoading||this.tasksLoading){console.debug("loading");return}console.debug("start onGetTasks",e);const{limit:t=20,createdAtMin:$,createdAtMax:i}=e||{};console.debug("limit",t,"createdAtMin",$,"createdAtMax",i),await this.$store.dispatch("nanobanana/getTasks",{limit:t,createdAtMin:$,createdAtMax:i})},async onGenerate(){const e={...this.config||{}},t=Array.isArray(e?.image_urls)&&e.image_urls.length>0;delete e.action,!t&&"image_urls"in e&&delete e.image_urls,e?.aspect_ratio||delete e.aspect_ratio,e?.model!==P&&"resolution"in e&&delete e.resolution,e?.model===P&&!e?.resolution&&(e.resolution=S);const $={...e,action:t?"edit":"generate",callback_url:Qt},i=this.credential?.token;if(!i){console.error("no token specified");return}R.info(this.$t("nanobanana.message.startingTask")),X("nanobanana",Y.generate($,{token:i})).then(()=>{R.success(this.$t("nanobanana.message.startTaskSuccess"))}).catch(b=>{const f=b?.response?.data;f?.error?.code===re?R.error(this.$t("nanobanana.message.usedUp")):R.error(this.$t("nanobanana.message.startTaskFailed")+(f?.error?.message||""))}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})},getTasksScrollElement(){return this.$refs.recentPanel?.getScrollElement?.()}}});function Xt(e,t,$,i,b,f){const h=s("config-panel"),_=s("recent-panel"),m=s("layout");return n(),A(m,null,{config:g(()=>[a(h,{onGenerate:e.onGenerate},null,8,["onGenerate"])]),result:g(()=>[a(_,{ref:"recentPanel",loading:e.loading,onReachTop:e.onReachTop},null,8,["loading","onReachTop"])]),_:1})}const Ma=y(Jt,[["render",Xt]]);export{Ma as default};
|
|
1
|
+
import{F as T}from"./index.es-oEqa8Vvo.js";import{E as q}from"./index-kyWjBrWv.js";import{E as W}from"./index-DKYzi_JL.js";import{d as k,H as l,E as c,z as C,C as a,y as g,D as s,q as n,F as o,I as u,O as V,N,x as A,J as p,M as K,Q as O}from"./vendor-vue-NSDaktjZ.js";import{G as y,bj as H,cL as Q,cM as z,cN as P,cO as J,cP as S,cQ as M,cR as j,cS as D,co as X,aT as Y,S as F,cp as Z}from"./index-DJBGdUsj.js";import{I as U,S as ee,l as te}from"./pagination-CIpi5fgv.js";import{E as ae}from"./index-Dls6nphu.js";import{p as oe}from"./pasteUploadMixin-BurWbGNQ.js";import{I as x}from"./ImagePreview-eG-HIW6Z.js";import{E as ne}from"./index-CzysM2id.js";import{E as R}from"./index-lrmoLNNf.js";import{E as B,a as G}from"./index-Bcve79lL.js";import{C as se}from"./Consumption-D1RmP9JZ.js";import{a as le}from"./price-w0Wapj1c.js";import{b as re}from"./errorCode-Cqj9Td_Z.js";import{C as ie}from"./CopyToClipboard-CVe6lcyk.js";import{I as ce}from"./ImageWrapper-DDC_4WBH.js";import{E as ue}from"./index-DPGiSIg9.js";import{E as me}from"./index-D7-hCQtC.js";import{E as de}from"./index-BEwbP8jM.js";import{B as pe}from"./BotPlaceholder-BA0YKxqp.js";import{N as fe}from"./NoTasks-rBJZcmkf.js";import"./use-form-item-CmyE7QH4.js";import"./index-BuyEbX8F.js";import"./vendor-axios-B8_nURbH.js";import"./vendor-dayjs-v0j1UNZp.js";import"./vendor-vue-router-Df5ITouH.js";import"./typescript-BmROFp5p.js";import"./index-RiC3k0dL.js";import"./index-DyWi-qw9.js";import"./index-BhyNkjm0.js";import"./_baseClone-Cn2yao34.js";import"./_Uint8Array-BIIxv3lW.js";import"./_initCloneObject-CIo8XBzq.js";import"./isEqual-BahNgsHz.js";import"./index-j6SYZeEP.js";import"./strings-beZM2Y-f.js";import"./castArray-DZm4CKhI.js";import"./debounce-BOEGIAMg.js";import"./_baseIteratee-CGsjPRhY.js";import"./index-Bw8YhoHN.js";import"./index-s5E1DICA.js";const he=k({name:"LayoutNanobanana",components:{ElDrawer:W,ElButton:q,FontAwesomeIcon:T},data(){return{drawer:!1}}}),_e={class:"main flex flex-row flex-1"},ge={class:"config w-[320px] flex-none h-full overflow-y-auto bg-[var(--app-sidebar-bg)] border-r border-[var(--app-border-subtle)]"},be={class:"result h-full p-6 flex-1 flex flex-col min-w-0 overflow-x-hidden bg-[var(--app-content-bg)]"};function $e(e,t,$,i,b,f){const h=s("font-awesome-icon"),_=s("el-button"),m=s("el-drawer");return n(),l("div",_e,[c("div",ge,[C(e.$slots,"config",{},void 0,!0)]),c("div",be,[C(e.$slots,"result",{},void 0,!0)]),a(_,{circle:"",class:"menu",onClick:t[0]||(t[0]=d=>e.drawer=!0)},{default:g(()=>[a(h,{icon:"fa-solid fa-magic"})]),_:1}),a(m,{modelValue:e.drawer,"onUpdate:modelValue":t[1]||(t[1]=d=>e.drawer=d),direction:"ltr","with-header":!1,size:"340px",class:"drawer"},{default:g(()=>[C(e.$slots,"config",{},void 0,!0)]),_:3},8,["modelValue"])])}const ve=y(he,[["render",$e],["__scopeId","data-v-8ca1c212"]]),ke="",ye=k({name:"PromptInput",components:{ElInput:ae,InfoIcon:U},computed:{prompt:{get(){return this.$store.state.nanobanana?.config?.prompt},set(e){console.debug("set prompt",e),this.$store.commit("nanobanana/setConfig",{...this.$store.state.nanobanana?.config,prompt:e})}}},mounted(){this.prompt||(this.prompt=ke)}}),we={class:"field"},Ve={class:"box"},Ae={class:"title font-bold"};function Ne(e,t,$,i,b,f){const h=s("info-icon"),_=s("el-input");return n(),l("div",we,[c("div",Ve,[c("h2",Ae,o(e.$t("nanobanana.name.prompt")),1),a(h,{content:e.$t("nanobanana.description.prompt"),class:"info"},null,8,["content"])]),a(_,{modelValue:e.prompt,"onUpdate:modelValue":t[0]||(t[0]=m=>e.prompt=m),rows:3,type:"textarea",class:"prompt",placeholder:e.$t("nanobanana.placeholder.prompt")},null,8,["modelValue","placeholder"])])}const Ee=y(ye,[["render",Ne],["__scopeId","data-v-2331e197"]]),Re=k({name:"ImageUrlsInput",components:{ElUpload:ne,ElButton:q,InfoIcon:U,ImagePreview:x,FontAwesomeIcon:T},mixins:[oe],data(){return{fileList:[],uploadUrl:H()+"/api/v1/files/",suppressWatch:!1}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},urls(){return this.fileList.map(e=>e?.response?.file_url).filter(e=>!!e)},value(){return this.$store.state.nanobanana?.config?.image_urls}},watch:{value:{immediate:!0,handler(e){if(this.suppressWatch)return;if(!e||e.length===0){const i=(this.fileList||[]).filter(b=>!b?.response?.file_url);this.fileList=i.length?i:[];return}const t=[];e.forEach(i=>{const b=this.fileList.find(f=>f?.response?.file_url===i||f?.url===i);b?t.push(b):t.push({name:i.split("/").pop()||i,url:i,status:"success",percentage:100,response:{file_url:i}})}),(this.fileList||[]).filter(i=>!i?.response?.file_url).forEach(i=>{t.some(f=>f===i||f?.url===i?.url||f?.response?.file_url===i?.response?.file_url)||t.push(i)}),this.fileList=t}}},mounted(){},methods:{onChange(e){if(!e?.url&&e?.raw)try{e.url=URL.createObjectURL(e.raw)}catch{}},onRemove(e){if(e?.url&&typeof e.url=="string"&&e.url.startsWith("blob:"))try{URL.revokeObjectURL(e.url)}catch{}this.onSetImageUrls()},onExceed(){R.warning(this.$t("nanobanana.message.uploadImageExceed"))},onError(){R.error(this.$t("nanobanana.message.uploadImageError"))},onSetImageUrls(){const e=this.urls;this.suppressWatch=!0,this.$store.commit("nanobanana/setConfig",{...this.$store.state.nanobanana?.config,image_urls:e}),this.$nextTick(()=>{this.suppressWatch=!1})},async onSuccess(e,t){e?.file_url&&(t.url=e.file_url,t.response=e),this.onSetImageUrls()},onRemovePreview(e,t){if(this.fileList.splice(e,1),t?.url&&typeof t.url=="string"&&t.url.startsWith("blob:"))try{URL.revokeObjectURL(t.url)}catch{}this.onSetImageUrls()}}}),Ie={class:"field flex items-center justify-between"},Le={class:"title font-bold text-[14px] mb-[10px]"},Se={class:"upload-wrapper flex flex-col items-start gap-[8px]"},Te={class:"controls flex items-center"},qe={class:"file-list flex flex-wrap gap-[10px]"};function Oe(e,t,$,i,b,f){const h=s("font-awesome-icon"),_=s("el-button"),m=s("el-upload"),d=s("info-icon"),w=s("image-preview");return n(),l(V,null,[c("div",Ie,[c("h2",Le,o(e.$t("nanobanana.name.imageUrls")),1),c("div",Se,[c("div",Te,[a(m,{ref:"uploader","file-list":e.fileList,"onUpdate:fileList":t[0]||(t[0]=r=>e.fileList=r),accept:".png,.jpg,.jpeg,.gif,.bmp,.webp",name:"file",class:"value",limit:5,multiple:!0,"show-file-list":!1,action:e.uploadUrl,"on-exceed":e.onExceed,"on-error":e.onError,"on-success":e.onSuccess,"on-change":e.onChange,"on-remove":e.onRemove,headers:e.headers},{default:g(()=>[a(_,{size:"small",type:"primary",round:""},{default:g(()=>[a(h,{icon:"fa-solid fa-upload",class:"mr-1"}),u(" "+o(e.$t("nanobanana.button.uploadImageUrls")),1)]),_:1})]),_:1},8,["file-list","action","on-exceed","on-error","on-success","on-change","on-remove","headers"]),a(d,{content:e.$t("nanobanana.description.imageUrls"),class:"ml-2"},null,8,["content"])])])]),c("div",qe,[(n(!0),l(V,null,N(e.fileList,(r,v)=>(n(),A(w,{key:r.uid||r?.response?.file_url||r.url||v,url:r.url||r?.response?.file_url,name:r.name,percentage:r.percentage,onRemove:E=>e.onRemovePreview(v,r)},null,8,["url","name","percentage","onRemove"]))),128))])],64)}const Ue=y(Re,[["render",Oe]]),Ce=k({name:"AspectRatioSelector",components:{ElSelect:G,ElOption:B},data(){return{options:["1:1","3:2","2:3","16:9","9:16","4:3","3:4"]}},computed:{value:{get(){return this.$store.state.nanobanana?.config?.aspect_ratio},set(e){console.debug("set aspect_ratio",e);const t={...this.$store.state.nanobanana?.config||{}};e?t.aspect_ratio=e:delete t.aspect_ratio,this.$store.commit("nanobanana/setConfig",t)}}}}),Pe={class:"field"},Be={class:"title font-bold"};function Ge(e,t,$,i,b,f){const h=s("el-option"),_=s("el-select");return n(),l("div",Pe,[c("h2",Be,o(e.$t("nanobanana.name.aspectRatio")),1),a(_,{modelValue:e.value,"onUpdate:modelValue":t[0]||(t[0]=m=>e.value=m),class:"value",clearable:"",placeholder:e.$t("nanobanana.placeholder.select")},{default:g(()=>[(n(!0),l(V,null,N(e.options,m=>(n(),A(h,{key:m,label:m,value:m},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const Me=y(Ce,[["render",Ge],["__scopeId","data-v-67f08a08"]]),je=k({name:"NanobananaModelSelector",components:{ElSelect:G,ElOption:B,InfoIcon:U},data(){return{options:[{value:z,label:this.$t("nanobanana.model.nanoBanana")},{value:P,label:this.$t("nanobanana.model.nanoBananaPro")},{value:J,label:this.$t("nanobanana.model.nanoBanana2")}]}},computed:{value:{get(){return this.$store.state.nanobanana?.config?.model},set(e){this.$store.commit("nanobanana/setConfig",{...this.$store.state.nanobanana?.config,model:e})}},modelDescription(){return this.$t("nanobanana.description.model")}},mounted(){this.value||(this.value=Q)}}),De={class:"field"},Fe={class:"label"},ze={class:"box"},xe={class:"title font-bold"};function We(e,t,$,i,b,f){const h=s("info-icon"),_=s("el-option"),m=s("el-select");return n(),l("div",De,[c("div",Fe,[c("div",ze,[c("h2",xe,o(e.$t("nanobanana.name.model")),1),a(h,{content:e.modelDescription,class:"info"},null,8,["content"])])]),a(m,{modelValue:e.value,"onUpdate:modelValue":t[0]||(t[0]=d=>e.value=d),class:"value",placeholder:e.$t("nanobanana.placeholder.select")},{default:g(()=>[(n(!0),l(V,null,N(e.options,d=>(n(),A(_,{key:d.value,label:d.label,value:d.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const Ke=y(je,[["render",We],["__scopeId","data-v-94304d73"]]),He=k({name:"NanobananaResolutionSelector",components:{ElSelect:G,ElOption:B,InfoIcon:U},data(){return{cachedResolution:S,options:[{value:M,label:M},{value:j,label:j},{value:D,label:D}]}},computed:{value:{get(){return this.$store.state.nanobanana?.config?.resolution},set(e){this.$store.commit("nanobanana/setConfig",{...this.$store.state.nanobanana?.config,resolution:e})}},isProModel(){return this.$store.state.nanobanana?.config?.model!==z}},watch:{value(e){this.isProModel&&e&&(this.cachedResolution=e)},isProModel(e){e?this.value||(this.value=this.cachedResolution||S):(this.value&&(this.cachedResolution=this.value),this.$store.commit("nanobanana/setConfig",{...this.$store.state.nanobanana?.config,resolution:void 0}))}},mounted(){this.isProModel&&!this.value&&(this.value=S),!this.isProModel&&this.value&&(this.cachedResolution=this.value,this.$store.commit("nanobanana/setConfig",{...this.$store.state.nanobanana?.config,resolution:void 0}))}}),Qe={class:"field"},Je={class:"label"},Xe={class:"box"},Ye={class:"title font-bold"};function Ze(e,t,$,i,b,f){const h=s("info-icon"),_=s("el-option"),m=s("el-select");return n(),l("div",Qe,[c("div",Je,[c("div",Xe,[c("h2",Ye,o(e.$t("nanobanana.name.resolution")),1),a(h,{content:e.$t("nanobanana.description.resolutionProOnly"),class:"info"},null,8,["content"])])]),a(m,{modelValue:e.value,"onUpdate:modelValue":t[0]||(t[0]=d=>e.value=d),class:"value",placeholder:e.$t("nanobanana.placeholder.select"),disabled:!e.isProModel},{default:g(()=>[(n(!0),l(V,null,N(e.options,d=>(n(),A(_,{key:d.value,label:d.label,value:d.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder","disabled"])])}const et=y(He,[["render",Ze],["__scopeId","data-v-fd5ab393"]]),tt=k({name:"ConfigPanel",components:{ElButton:q,FontAwesomeIcon:T,PromptInput:Ee,Consumption:se,ImageUrlsInput:Ue,AspectRatioSelector:Me,ModelSelector:Ke,ResolutionSelector:et},emits:["generate"],computed:{config(){return this.$store.state.nanobanana?.config},consumption(){const e={...this.config||{}},t=Array.isArray(e?.image_urls)&&e.image_urls.length>0;return le({...e,action:t?"edit":"generate"},this.service?.cost)},service(){return this.$store.state.nanobanana?.service}},methods:{onGenerate(){this.$emit("generate")}}}),at={class:"flex flex-col h-full"},ot={class:"flex-1 overflow-y-auto p-5"},nt={class:"flex flex-col items-center justify-center px-5 pb-5"};function st(e,t,$,i,b,f){const h=s("model-selector"),_=s("resolution-selector"),m=s("prompt-input"),d=s("aspect-ratio-selector"),w=s("image-urls-input"),r=s("consumption"),v=s("font-awesome-icon"),E=s("el-button");return n(),l("div",at,[c("div",ot,[a(h,{class:"mb-4"}),a(_,{class:"mb-4"}),a(m,{class:"mb-4"}),a(d,{class:"mb-4"}),a(w,{class:"mb-4"})]),c("div",nt,[a(r,{value:e.consumption,service:e.service},null,8,["value","service"]),a(E,{type:"primary",class:"btn w-full",round:"",onClick:e.onGenerate},{default:g(()=>[a(v,{icon:"fa-solid fa-magic",class:"mr-2"}),u(" "+o(e.$t("nanobanana.button.generate")),1)]),_:1},8,["onClick"])])])}const lt=y(tt,[["render",st]]),rt=k({name:"TaskPreview",components:{ElImage:de,CopyToClipboard:ie,FontAwesomeIcon:T,ElAlert:me,ImageWrapper:ce,ElButton:q,ElTooltip:ue,ImagePreview:x},props:{modelValue:{type:Object,required:!0}},computed:{images(){const e=[];return Array.isArray(this.modelValue?.response?.data)&&this.modelValue?.response?.data?.forEach(t=>{e.push(t)}),e}},methods:{onEdit(e){if(!e)return;console.debug("Edit image:",e);const t={...this.$store.state.nanobanana?.config||{}};delete t.action,t.image_urls=[e],this.$store.commit("nanobanana/setConfig",t)}}}),it={class:"preview"},ct={class:"left"},ut={class:"main"},mt={class:"bot"},dt={class:"datetime"},pt={class:"info"},ft={key:0,class:"flex justify-start items-center gap-2 mt-2 w-full overflow-x-auto"},ht={key:1,class:"prompt mt-2"},_t={key:0},gt={key:0,class:O({content:!0,failed:!0})},bt={class:"flex justify-start items-center gap-4 w-full overflow-x-auto"},$t={class:O({operations:!0,"mt-2":!0,"mb-2":!0})},vt={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},kt={key:1,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},yt={key:2,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},wt={key:3,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Vt={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},At={key:4,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Nt={key:5,class:"text-[var(--el-text-color-regular)] text-xs mb-0"},Et={key:1,class:O({content:!0})},Rt={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},It={key:1,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Lt={key:2,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},St={key:3,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Tt={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},qt={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Ot={key:4,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Ut={key:5,class:"text-[var(--el-text-color-regular)] text-xs mb-0"},Ct={key:2,class:O({content:!0})},Pt={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Bt={key:1,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Gt={key:2,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Mt={key:3,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},jt={class:"text-[var(--el-text-color-regular)] text-xs mb-2"};function Dt(e,t,$,i,b,f){const h=s("el-image"),_=s("image-preview"),m=s("image-wrapper"),d=s("el-button"),w=s("el-tooltip"),r=s("font-awesome-icon"),v=s("copy-to-clipboard"),E=s("el-alert");return n(),l("div",it,[c("div",ct,[a(h,{src:"https://cdn.acedata.cloud/859plc.jpg",class:"avatar"})]),c("div",ut,[c("div",mt,[u(o(e.$t("nanobanana.name.nanobananaBot"))+" ",1),c("span",dt,o(e.$dayjs.format(""+new Date(parseFloat((e.modelValue?.created_at||"").toString())*1e3))),1)]),c("div",pt,[e.modelValue?.request?.image_urls&&e.modelValue?.request?.image_urls.length>0?(n(),l("div",ft,[(n(!0),l(V,null,N(e.modelValue?.request?.image_urls,(I,L)=>(n(),A(_,{key:L,url:I,name:`image-${L+1}`,closable:!1},null,8,["url","name"]))),128))])):p("",!0),e.modelValue?.request?.prompt?(n(),l("p",ht,[u(o(e.modelValue?.request?.prompt)+" ",1),e.modelValue?.response?p("",!0):(n(),l("span",_t," - ("+o(e.$t("nanobanana.status.pending"))+") ",1))])):p("",!0)]),e.modelValue?.response?.success===!0?(n(),l("div",gt,[c("div",bt,[(n(!0),l(V,null,N(e.images,(I,L)=>(n(),A(m,{key:L,src:I?.image_url,"raw-src":I?.image_url},null,8,["src","raw-src"]))),128))]),c("div",$t,[a(w,{class:"box-item",effect:"dark",content:e.$t("common.button.edit"),placement:"top-start"},{default:g(()=>[a(d,{type:"info",size:"small",class:"btn-action",onClick:t[0]||(t[0]=K(I=>e.onEdit(e.images?.[0]?.image_url),["stop"]))},{default:g(()=>[u(o(e.$t("common.button.edit")),1)]),_:1})]),_:1},8,["content"])]),a(E,{closable:!1,class:"mt-2 success"},{default:g(()=>[e.modelValue?.request?.model?(n(),l("p",vt,[a(r,{icon:"fa-solid fa-cube",class:"mr-1"}),u(" "+o(e.$t("nanobanana.name.model"))+": "+o(e.modelValue?.request?.model),1)])):p("",!0),e.modelValue?.request?.resolution?(n(),l("p",kt,[a(r,{icon:"fa-solid fa-image",class:"mr-1"}),u(" "+o(e.$t("nanobanana.name.resolution"))+": "+o(e.modelValue?.request?.resolution),1)])):p("",!0),e.modelValue?.request?.aspect_ratio?(n(),l("p",yt,[a(r,{icon:"fa-solid fa-up-right-from-square",class:"mr-1"}),u(" "+o(e.$t("nanobanana.name.aspectRatio"))+": "+o(e.modelValue?.request?.aspect_ratio),1)])):p("",!0),e.modelValue?.request?.action?(n(),l("p",wt,[a(r,{icon:"fa-solid fa-bolt",class:"mr-1"}),u(" "+o(e.$t("nanobanana.name.task"))+": "+o(e.modelValue?.request?.action==="generate"?e.$t("nanobanana.name.generate"):e.$t("nanobanana.name.edits")),1)])):p("",!0),c("p",Vt,[a(r,{icon:"fa-solid fa-magic",class:"mr-1"}),u(" "+o(e.$t("nanobanana.name.taskId"))+": "+o(e.modelValue?.id)+" ",1),a(v,{content:e.modelValue?.id,class:"btn-copy inline-block"},null,8,["content"])]),e.modelValue?.elapsed?(n(),l("p",At,[a(r,{icon:"fa-solid fa-clock",class:"mr-1"}),u(" "+o(e.$t("nanobanana.name.elapsed"))+": "+o(e.modelValue?.elapsed?.toFixed(2))+"s ",1)])):p("",!0),e.modelValue?.response?.trace_id?(n(),l("p",Nt,[a(r,{icon:"fa-solid fa-hashtag",class:"mr-1"}),u(" "+o(e.$t("nanobanana.name.traceId"))+": "+o(e.modelValue?.response?.trace_id)+" ",1),a(v,{content:e.modelValue?.response?.trace_id,class:"btn-copy inline-block"},null,8,["content"])])):p("",!0)]),_:1})])):e.modelValue?.response?.success===!1?(n(),l("div",Et,[a(E,{closable:!1,class:"failure"},{template:g(()=>[a(r,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),u(" "+o(e.$t("nanobanana.name.failure")),1)]),default:g(()=>[e.modelValue?.request?.model?(n(),l("p",Rt,[a(r,{icon:"fa-solid fa-cube",class:"mr-1"}),u(" "+o(e.$t("nanobanana.name.model"))+": "+o(e.modelValue?.request?.model),1)])):p("",!0),e.modelValue?.request?.resolution?(n(),l("p",It,[a(r,{icon:"fa-solid fa-image",class:"mr-1"}),u(" "+o(e.$t("nanobanana.name.resolution"))+": "+o(e.modelValue?.request?.resolution),1)])):p("",!0),e.modelValue?.request?.aspect_ratio?(n(),l("p",Lt,[a(r,{icon:"fa-solid fa-up-right-from-square",class:"mr-1"}),u(" "+o(e.$t("nanobanana.name.aspectRatio"))+": "+o(e.modelValue?.request?.aspect_ratio),1)])):p("",!0),e.modelValue?.request?.action?(n(),l("p",St,[a(r,{icon:"fa-solid fa-bolt",class:"mr-1"}),u(" "+o(e.$t("nanobanana.name.task"))+": "+o(e.modelValue?.request?.action==="generate"?e.$t("nanobanana.name.generate"):e.$t("nanobanana.name.edits")),1)])):p("",!0),c("p",Tt,[a(r,{icon:"fa-solid fa-magic",class:"mr-1"}),u(" "+o(e.$t("nanobanana.name.taskId"))+": "+o(e.modelValue?.id)+" ",1),a(v,{content:e.modelValue?.id,class:"btn-copy"},null,8,["content"])]),c("p",qt,[a(r,{icon:"fa-solid fa-circle-info",class:"mr-1"}),u(" "+o(e.$t("nanobanana.name.failureReason"))+": "+o(e.modelValue?.response?.error?.message)+" ",1),a(v,{content:e.modelValue?.response?.error?.message,class:"btn-copy"},null,8,["content"])]),e.modelValue?.elapsed?(n(),l("p",Ot,[a(r,{icon:"fa-solid fa-clock",class:"mr-1"}),u(" "+o(e.$t("nanobanana.name.elapsed"))+": "+o(e.modelValue?.elapsed?.toFixed(2))+"s ",1)])):p("",!0),e.modelValue?.response?.trace_id?(n(),l("p",Ut,[a(r,{icon:"fa-solid fa-hashtag",class:"mr-1"}),u(" "+o(e.$t("nanobanana.name.traceId"))+": "+o(e.modelValue?.response?.trace_id)+" ",1),a(v,{content:e.modelValue?.response?.trace_id,class:"btn-copy"},null,8,["content"])])):p("",!0)]),_:1})])):(n(),l("div",Ct,[a(E,{closable:!1,class:"info"},{template:g(()=>[a(r,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),u(" "+o(e.$t("nanobanana.name.failure")),1)]),default:g(()=>[e.modelValue?.request?.model?(n(),l("p",Pt,[a(r,{icon:"fa-solid fa-cube",class:"mr-1"}),u(" "+o(e.$t("nanobanana.name.model"))+": "+o(e.modelValue?.request?.model),1)])):p("",!0),e.modelValue?.request?.resolution?(n(),l("p",Bt,[a(r,{icon:"fa-solid fa-image",class:"mr-1"}),u(" "+o(e.$t("nanobanana.name.resolution"))+": "+o(e.modelValue?.request?.resolution),1)])):p("",!0),e.modelValue?.request?.aspect_ratio?(n(),l("p",Gt,[a(r,{icon:"fa-solid fa-up-right-from-square",class:"mr-1"}),u(" "+o(e.$t("nanobanana.name.aspectRatio"))+": "+o(e.modelValue?.request?.aspect_ratio),1)])):p("",!0),e.modelValue?.request?.action?(n(),l("p",Mt,[a(r,{icon:"fa-solid fa-bolt",class:"mr-1"}),u(" "+o(e.$t("nanobanana.name.task"))+": "+o(e.modelValue?.request?.action==="generate"?e.$t("nanobanana.name.generate"):e.$t("nanobanana.name.edits")),1)])):p("",!0),c("p",jt,[a(r,{icon:"fa-solid fa-magic",class:"mr-1"}),u(" "+o(e.$t("nanobanana.name.taskId"))+": "+o(e.modelValue?.id)+" ",1),a(v,{content:e.modelValue?.id,class:"btn-copy"},null,8,["content"])])]),_:1})]))])])}const Ft=y(rt,[["render",Dt],["__scopeId","data-v-8d5f4fff"]]),zt=k({name:"RecentPanel",components:{TaskPreview:Ft,BotPlaceholder:pe,NoTasks:fe,ScrollList:ee},props:{loading:{type:Boolean,default:!1}},emits:["reach-top"],data(){return{job:0}},computed:{tasks(){return{...this.$store.state.nanobanana?.tasks,items:this.$store.state.nanobanana?.tasks?.items?.slice()}}},methods:{getScrollElement(){return this.$refs.scrollList?.getScrollElement?.()}}}),xt={key:0},Wt={key:2,class:"w-full h-full flex items-center justify-center"};function Kt(e,t,$,i,b,f){const h=s("bot-placeholder"),_=s("task-preview"),m=s("scroll-list"),d=s("no-tasks");return n(),l(V,null,[e.tasks?.items===void 0?(n(),l("div",xt,[a(h)])):e.tasks?.items?.length&&e.tasks?.items?.length>0?(n(),A(m,{key:1,ref:"scrollList",class:"tasks h-full w-full overflow-y-auto",loading:e.loading,onReachTop:t[0]||(t[0]=w=>e.$emit("reach-top"))},{default:g(()=>[(n(!0),l(V,null,N(e.tasks?.items,w=>(n(),A(_,{key:w.id,"model-value":w},null,8,["model-value"]))),128))]),_:1},8,["loading"])):p("",!0),e.tasks?.items?.length===0?(n(),l("div",Wt,[a(d)])):p("",!0)],64)}const Ht=y(zt,[["render",Kt]]),Qt=Z("nanobanana"),Jt=k({name:"NanobananaIndex",components:{ConfigPanel:lt,Layout:ve,RecentPanel:Ht},inject:["initialized"],data(){return{task:void 0,job:0,loading:!1}},computed:{applicationsLoading(){return this.$store.state.nanobanana?.status?.getApplications===F.Request},tasksLoading(){return this.$store.state.nanobanana?.status?.getTasks===F.Request},credential(){return this.$store.state.nanobanana?.credential},config(){return this.$store.state.nanobanana?.config},application(){return this.$store.state.nanobanana?.application},tasks(){return this.$store.state.nanobanana?.tasks}},watch:{tasks:{handler(e,t){e?.items?.length>t?.items?.length&&console.debug("new tasks detected")},deep:!0},initialized:{async handler(e){e&&(console.debug("layout initialized"),await this.onGetTasks(),await this.onScrollDown(),this.job=window.setInterval(()=>{this.onGetTasks()},5e3))},immediate:!0}},async mounted(){await this.onGetService()},async unmounted(){window.clearInterval(this.job)},methods:{async onReachTop(){await te({tasks:this.tasks,getTasks:()=>this.tasks,loading:this.loading,setLoading:e=>this.loading=e,isBlocked:()=>this.tasksLoading,fetch:e=>this.onGetTasks({createdAtMax:e}),getScrollElement:()=>this.getTasksScrollElement()})},async onGetService(){console.debug("start onGetService"),await this.$store.dispatch("nanobanana/getService"),console.debug("end onGetService")},async onGetApplication(){console.debug("start onGetApplication"),await this.$store.dispatch("nanobanana/getApplications"),console.debug("end onGetApplication"),await this.onGetTasks()},async onScrollDown(){await this.$nextTick();const e=this.getTasksScrollElement();e&&(e.scrollTop=e.scrollHeight)},async onGetTasks(e){if(this.applicationsLoading||this.tasksLoading){console.debug("loading");return}console.debug("start onGetTasks",e);const{limit:t=20,createdAtMin:$,createdAtMax:i}=e||{};console.debug("limit",t,"createdAtMin",$,"createdAtMax",i),await this.$store.dispatch("nanobanana/getTasks",{limit:t,createdAtMin:$,createdAtMax:i})},async onGenerate(){const e={...this.config||{}},t=Array.isArray(e?.image_urls)&&e.image_urls.length>0;delete e.action,!t&&"image_urls"in e&&delete e.image_urls,e?.aspect_ratio||delete e.aspect_ratio,e?.model!==P&&"resolution"in e&&delete e.resolution,e?.model===P&&!e?.resolution&&(e.resolution=S);const $={...e,action:t?"edit":"generate",callback_url:Qt},i=this.credential?.token;if(!i){console.error("no token specified");return}R.info(this.$t("nanobanana.message.startingTask")),X("nanobanana",Y.generate($,{token:i})).then(()=>{R.success(this.$t("nanobanana.message.startTaskSuccess"))}).catch(b=>{const f=b?.response?.data;f?.error?.code===re?R.error(this.$t("nanobanana.message.usedUp")):R.error(this.$t("nanobanana.message.startTaskFailed")+(f?.error?.message||""))}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})},getTasksScrollElement(){return this.$refs.recentPanel?.getScrollElement?.()}}});function Xt(e,t,$,i,b,f){const h=s("config-panel"),_=s("recent-panel"),m=s("layout");return n(),A(m,null,{config:g(()=>[a(h,{onGenerate:e.onGenerate},null,8,["onGenerate"])]),result:g(()=>[a(_,{ref:"recentPanel",loading:e.loading,onReachTop:e.onReachTop},null,8,["loading","onReachTop"])]),_:1})}const Ma=y(Jt,[["render",Xt]]);export{Ma as default};
|