@acedatacloud/nexior 3.165.0 → 3.167.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-QFl8wvov.js → Auth-BYDwGwaF.js} +1 -1
- package/dist/assets/{BotPlaceholder-teJQgw1R.js → BotPlaceholder-BqeR06y3.js} +1 -1
- package/dist/assets/{Callback-DUG_0nL9.js → Callback--SyBMjm7.js} +1 -1
- package/dist/assets/{Console-C4ni_K8l.js → Console-WixW6BSu.js} +1 -1
- package/dist/assets/{Consumption-DTqKtl19.js → Consumption-CL3WRYVN.js} +1 -1
- package/dist/assets/{Conversation-B1nlcCj3.js → Conversation-Brvaxxml.js} +1 -1
- package/dist/assets/{CopyToClipboard-CHIfP83C.js → CopyToClipboard-TC6O9s7V.js} +1 -1
- package/dist/assets/{Detail-CpZay6En.js → Detail-oRAPiSXy.js} +2 -2
- package/dist/assets/{EditArray-fTlZytbV.js → EditArray-Cr1IK11e.js} +1 -1
- package/dist/assets/{Extra-hWv_Zh-w.js → Extra-9TZNXkOm.js} +1 -1
- package/dist/assets/{FilePreview-ZxOIpkjO.js → FilePreview-BHbzMFA3.js} +1 -1
- package/dist/assets/{History-C0ckJn8X.js → History-DArAVdnl.js} +1 -1
- package/dist/assets/{IconPark.vue_vue_type_script_setup_true_lang-ChnszgHA.js → IconPark.vue_vue_type_script_setup_true_lang-VGkf-8vn.js} +1 -1
- package/dist/assets/{ImagePreview-Bdb0i-UY.js → ImagePreview-CATcaSwT.js} +1 -1
- package/dist/assets/{ImageWrapper-DQ4mprTG.js → ImageWrapper-C-2wIJYB.js} +1 -1
- package/dist/assets/{Index-H53x6bs-.js → Index-6O25pgqo.js} +1 -1
- package/dist/assets/{Index-D4AU2wLY.js → Index-BGjqeGFj.js} +1 -1
- package/dist/assets/{Index-z92kW0LQ.js → Index-BKgJVlqc.js} +1 -1
- package/dist/assets/{Index-BJKR_l5i.js → Index-BQL51iA5.js} +1 -1
- package/dist/assets/{Index-Dihiqk3n.js → Index-BQQpmfdB.js} +1 -1
- package/dist/assets/{Index-BDIOWR2s.js → Index-BUxrI5H9.js} +1 -1
- package/dist/assets/{Index-kkNkz_os.js → Index-BZkdecyf.js} +1 -1
- package/dist/assets/{Index-BRtxGRTG.js → Index-Ba9ChGUK.js} +1 -1
- package/dist/assets/{Index-DW6bQp-A.css → Index-BaRagseA.css} +1 -1
- package/dist/assets/{Index-CHr-S8VL.js → Index-BmLW9xeN.js} +1 -1
- package/dist/assets/{Index-CBaFV7Km.js → Index-Bvrq7JLb.js} +1 -1
- package/dist/assets/{Index-CahgxOO6.js → Index-C01475yx.js} +1 -1
- package/dist/assets/{Index-C5QNZoPE.js → Index-C3f-qhzZ.js} +1 -1
- package/dist/assets/{Index-C8PSwcv8.js → Index-C5HV03FO.js} +1 -1
- package/dist/assets/{Index-D8naCCGX.js → Index-Cl3Lz1dF.js} +1 -1
- package/dist/assets/Index-CofV8BK0.js +1 -0
- package/dist/assets/{Index-w1fclgzE.js → Index-CwVq3Ycf.js} +1 -1
- package/dist/assets/{Index-JQGxDvVx.js → Index-DBlvbTmY.js} +1 -1
- package/dist/assets/{Index-D62cd0vK.js → Index-DIF8W8Uc.js} +1 -1
- package/dist/assets/{Index-CVQSictr.js → Index-DZl1YUel.js} +1 -1
- package/dist/assets/{Index-BAbLvO0T.js → Index-DbBMgNaM.js} +1 -1
- package/dist/assets/{Index-CKF-bPuL.js → Index-Dh9rUBhI.js} +1 -1
- package/dist/assets/{Index-BS6gQkGg.js → Index-eTNf6k_N.js} +1 -1
- package/dist/assets/Index-hZRJDvDU.css +1 -0
- package/dist/assets/{Index-GAyX8JLL.js → Index-ip063XOA.js} +1 -1
- package/dist/assets/Index-ogoTClu0.js +1 -0
- package/dist/assets/{Invitees-Cpyz-GEF.js → Invitees-Cc3NpC2g.js} +1 -1
- package/dist/assets/{List-CuVqG93t.js → List-B4p4ZhQE.js} +1 -1
- package/dist/assets/{List-CRr2Ebvy.js → List-D7DfvKQy.js} +1 -1
- package/dist/assets/{List-D7mcU_w0.js → List-DvSsX3Z0.js} +1 -1
- package/dist/assets/{Main-B5NCR5Tx.js → Main-BVKGaNZg.js} +1 -1
- package/dist/assets/{Navigator-CDg5_jXD.js → Navigator-9ddEoj7J.js} +1 -1
- package/dist/assets/{NoTasks-Dro6OdxD.js → NoTasks-C3t8bmtA.js} +1 -1
- package/dist/assets/{NotFound-BhS5F53U.js → NotFound-Hnpwk4F4.js} +1 -1
- package/dist/assets/{OAuthCallback-1nC4_les.js → OAuthCallback-COGnrcdn.js} +1 -1
- package/dist/assets/{Pagination-CGK6TLMi.js → Pagination-wNLMuHeO.js} +1 -1
- package/dist/assets/{Status-B2CODnvr.js → Status-CIYhFNcJ.js} +1 -1
- package/dist/assets/{Subscribe-Cmosa6qP.js → Subscribe-lEko0pof.js} +1 -1
- package/dist/assets/{VideoPlayer-Cy3-ZAWg.js → VideoPlayer-c9dt-3yZ.js} +1 -1
- package/dist/assets/{_Uint8Array-JndvkAwf.js → _Uint8Array-BP4C5DZm.js} +1 -1
- package/dist/assets/{_baseClone-BywLfCY-.js → _baseClone-Bmu_sg3j.js} +1 -1
- package/dist/assets/{_baseIteratee-BaTk7Xco.js → _baseIteratee-lG75D4iw.js} +1 -1
- package/dist/assets/{_initCloneObject-D5P_u5bs.js → _initCloneObject-C-Q8oqTt.js} +1 -1
- package/dist/assets/{add-MHM5adot.js → add-6LL9G5Z5.js} +1 -1
- package/dist/assets/{all-wallets-DghbU6pB.js → all-wallets-aEppbPWX.js} +1 -1
- package/dist/assets/{app-store-B5d2ke5R.js → app-store-DID464Wp.js} +1 -1
- package/dist/assets/{apple-DcWUSF7H.js → apple-DORiIW02.js} +1 -1
- package/dist/assets/{arrow-bottom-CAFMTIro.js → arrow-bottom-CmCVBSrV.js} +1 -1
- package/dist/assets/{arrow-bottom-circle-C7pglfhV.js → arrow-bottom-circle-dyY9qLpT.js} +1 -1
- package/dist/assets/{arrow-left-Ca5HiJyU.js → arrow-left-BaoMx2wj.js} +1 -1
- package/dist/assets/{arrow-right-BHK6x0D0.js → arrow-right-6ZIR8uWG.js} +1 -1
- package/dist/assets/{arrow-top-M7zp-rH1.js → arrow-top-DV5TBwIJ.js} +1 -1
- package/dist/assets/{avatar-DgwLY0F2.js → avatar-CZpCU7-m.js} +1 -1
- package/dist/assets/{bank-SSDifLcO.js → bank-DYz2uXPn.js} +1 -1
- package/dist/assets/{basic-Be21SJ4t.js → basic-CH4UgvMg.js} +1 -1
- package/dist/assets/{browser-CUJm8BoS.js → browser-CKmIG2h_.js} +1 -1
- package/dist/assets/{byokCredential-Np5spQbA.js → byokCredential-BdY2oFpq.js} +1 -1
- package/dist/assets/{card-CSSyeeL5.js → card-3UfZE5zt.js} +1 -1
- package/dist/assets/{castArray-BzRYTmyg.js → castArray-YvIMFTc9.js} +1 -1
- package/dist/assets/{chat-CO5_buPC.js → chat-CpxTF3jE.js} +1 -1
- package/dist/assets/{checkmark-DHknSf9L.js → checkmark-BWZoFv2_.js} +1 -1
- package/dist/assets/{checkmark-bold-BRynkBu_.js → checkmark-bold-CEX8QndR.js} +1 -1
- package/dist/assets/{chevron-bottom-CxoghWFm.js → chevron-bottom-BI142s1X.js} +1 -1
- package/dist/assets/{chevron-left--wPz3w6Z.js → chevron-left-tLzTrSXr.js} +1 -1
- package/dist/assets/{chevron-right-saEXbUGn.js → chevron-right-Dyf_ffQQ.js} +1 -1
- package/dist/assets/{chevron-top-DS7eYYgl.js → chevron-top-DPDBxfl4.js} +1 -1
- package/dist/assets/{chrome-store-DYuG5PcW.js → chrome-store-D5SW-iy-.js} +1 -1
- package/dist/assets/{clock-CBdDJ5Df.js → clock-CKF6goQf.js} +1 -1
- package/dist/assets/{close-BjPE_-aP.js → close-De8y1RWE.js} +1 -1
- package/dist/assets/{coinPlaceholder-BiVzICb3.js → coinPlaceholder-Dkkrmbg7.js} +1 -1
- package/dist/assets/{compass-PMZMMq0Z.js → compass-cqEFwAme.js} +1 -1
- package/dist/assets/{copy-Uj5cKBl8.js → copy-Es56qz4c.js} +1 -1
- package/dist/assets/{createTaskActions-CU8q3u1r.js → createTaskActions-BXbGVAyn.js} +1 -1
- package/dist/assets/{cursor-C6BXinQj.js → cursor-Cq5X5f50.js} +1 -1
- package/dist/assets/{cursor-transparent-DsTmLChU.js → cursor-transparent-xlWXmwGt.js} +1 -1
- package/dist/assets/{debounce-D7YINRDE.js → debounce-BpWk7nuI.js} +1 -1
- package/dist/assets/{desktop-DVhIgZOr.js → desktop-D1J2Uie2.js} +1 -1
- package/dist/assets/{disconnect-CuUhUKSv.js → disconnect-Cks823Of.js} +1 -1
- package/dist/assets/{discord-BVTnwzNj.js → discord-zkmftcBQ.js} +1 -1
- package/dist/assets/{distribution-CqMjpTR8.js → distribution-o7xqSpRT.js} +1 -1
- package/dist/assets/{dropdown-B9aMQjZh.js → dropdown-Bvb4dRSD.js} +1 -1
- package/dist/assets/{etherscan-C0uYoQGL.js → etherscan-I41foa4d.js} +1 -1
- package/dist/assets/{exclamation-triangle-BwC-OFyl.js → exclamation-triangle-DoIkNHiW.js} +1 -1
- package/dist/assets/{extension-CIOTKKOf.js → extension-C2DGwOS2.js} +1 -1
- package/dist/assets/{external-link-CYMLf0Ns.js → external-link-B2ZBFNNw.js} +1 -1
- package/dist/assets/{facebook-DyaS9rXQ.js → facebook-CO7UwlKf.js} +1 -1
- package/dist/assets/{farcaster-0IbvFQrl.js → farcaster-DFerNXVJ.js} +1 -1
- package/dist/assets/{filters-CvFHkNa0.js → filters-Cq5-UFL3.js} +1 -1
- package/dist/assets/{github-BqnwncTz.js → github-BOpdRs3D.js} +1 -1
- package/dist/assets/{google-SQuxevK_.js → google-B1iBXSb_.js} +1 -1
- package/dist/assets/{help-circle-DYG8MQQG.js → help-circle-FMe2_GKk.js} +1 -1
- package/dist/assets/{id-XQhzrZqg.js → id-B8JtAbxm.js} +1 -1
- package/dist/assets/{image-BXv_qOZO.js → image-B7X95LW6.js} +1 -1
- package/dist/assets/{index-udv8oHBR.js → index--FfOeMhK.js} +1 -1
- package/dist/assets/{index-CdNNDZgX.js → index--MBG5Bxw.js} +1 -1
- package/dist/assets/{index-MJt9uRMV.js → index--UH2lqMs.js} +1 -1
- package/dist/assets/{index-nLjkUfZa.js → index-0u_G2kSj.js} +1 -1
- package/dist/assets/{index-DfHMyt1g.js → index-5PCSoafl.js} +2 -2
- package/dist/assets/{index-U7KDLTxZ.js → index-8jmQ7jsv.js} +1 -1
- package/dist/assets/{index-5zp5rRSg.js → index-B05MCcWV.js} +1 -1
- package/dist/assets/{index-DSAaysXY.js → index-BD55w4j0.js} +1 -1
- package/dist/assets/{index-dLkFe5tp.js → index-BMe4XQdI.js} +1 -1
- package/dist/assets/{index-D8r95ZCp.js → index-BPRTWZ0b.js} +1 -1
- package/dist/assets/{index-D0svo0N2.js → index-BVZShYNY.js} +1 -1
- package/dist/assets/{index-CWtgQWA5.js → index-BXuYZoDz.js} +1 -1
- package/dist/assets/{index-1aVfodJV.js → index-BbcE4PaG.js} +1 -1
- package/dist/assets/{index-D51AeHP9.js → index-BiXpC_cY.js} +1 -1
- package/dist/assets/{index-CAOsMXTW.js → index-BkvfyPBC.js} +1 -1
- package/dist/assets/{index-Bwh4uhxH.js → index-BzRVav2J.js} +4 -4
- package/dist/assets/{index-Cdu2CINy.js → index-C3GoyrG4.js} +1 -1
- package/dist/assets/{index-ZaB33foX.js → index-C8WbvFlX.js} +1 -1
- package/dist/assets/{index-Boh3hilg.js → index-CD8qf4tY.js} +1 -1
- package/dist/assets/{index-CWm6OdeE.js → index-CIdZDW4_.js} +3 -3
- package/dist/assets/{index-CD3hMCXK.js → index-CMTPLs4z.js} +1 -1
- package/dist/assets/{index-BgDIlmz8.js → index-CMexzqoP.js} +1 -1
- package/dist/assets/{index-CaE4JHcH.js → index-COPlSq-K.js} +1 -1
- package/dist/assets/{index-Biwor0fW.js → index-CP6lS__f.js} +1 -1
- package/dist/assets/{index-ByGJSI5C.js → index-CTspmpeX.js} +1 -1
- package/dist/assets/{index-ByjQrnzD.js → index-CVzcynKu.js} +1 -1
- package/dist/assets/{index-KJ_Bm-Sb.js → index-CbnoagxV.js} +1 -1
- package/dist/assets/{index-CWWZeClw.js → index-Cjg_OuWc.js} +1 -1
- package/dist/assets/{index-Bs4QQKmj.js → index-CmMnj3Xx.js} +1 -1
- package/dist/assets/{index-BpgdZsBs.js → index-CniEO1Oz.js} +1 -1
- package/dist/assets/{index-Df-EZV4-.js → index-D5ReSuuO.js} +1 -1
- package/dist/assets/{index-DG93bVkv.js → index-D7b8OrcI.js} +1 -1
- package/dist/assets/{index-4fUmHLSf.js → index-DC9KLk-Y.js} +1 -1
- package/dist/assets/{index-DWKjA_D8.js → index-DEcBa7gX.js} +1 -1
- package/dist/assets/{index-Dy5k6Duv.js → index-DLlZmkfC.js} +1 -1
- package/dist/assets/{index-COvldWeP.js → index-DSRawDTE.js} +1 -1
- package/dist/assets/{index-CghmaEfO.js → index-DTbz6TSn.js} +1 -1
- package/dist/assets/{index-BhAfU2EN.js → index-DTq8xdm6.js} +1 -1
- package/dist/assets/{index-BcqWtXWM.js → index-DWkcw7l1.js} +1 -1
- package/dist/assets/{index-BbRzjoyH.js → index-DYXoPIXH.js} +1 -1
- package/dist/assets/{index-Ck-GkfGu.js → index-DZXPcke9.js} +1 -1
- package/dist/assets/{index-CLC3F3zh.js → index-De-wy4Tc.js} +1 -1
- package/dist/assets/{index-DjsIiC0Y.js → index-Df86EZ4H.js} +1 -1
- package/dist/assets/{index-B3qBkdOQ.js → index-DqHEB8wJ.js} +1 -1
- package/dist/assets/{index-CZoz3sTY.js → index-Dt0xHpag.js} +1 -1
- package/dist/assets/{index-BPugvnwC.js → index-DtaZfQsb.js} +1 -1
- package/dist/assets/{index-DutPYY3x.js → index-DvJO3nj9.js} +1 -1
- package/dist/assets/{index-BSoor3tO.js → index-DzqsLvLw.js} +1 -1
- package/dist/assets/{index-CMCb9_bq.js → index-F7u9olkI.js} +1 -1
- package/dist/assets/{index-Beb7n_xY.js → index-HTtxGNNR.js} +1 -1
- package/dist/assets/{index-BRqPnPCL.js → index-SAsUj7Pk.js} +1 -1
- package/dist/assets/{index-DDM_letT.js → index-XpcsQaS3.js} +1 -1
- package/dist/assets/{index-IQO2FhFE.js → index-ZhVk9kkG.js} +5 -5
- package/dist/assets/{index-DvfuPWbJ.js → index-bUBBPa9N.js} +1 -1
- package/dist/assets/{index-CEeWvdaB.js → index-cnvaHQUI.js} +1 -1
- package/dist/assets/{index-CaMEIrh2.js → index-gQH-ITVc.js} +1 -1
- package/dist/assets/{index-BUOjw5KN.js → index-karJESpY.js} +1 -1
- package/dist/assets/{index-BiZZIfOf.js → index-qJmkBTaB.js} +1 -1
- package/dist/assets/{index-Bj-EDfAG.js → index-ruJel4IC.js} +1 -1
- package/dist/assets/{index-BipWEOw7.js → index-yXdj_vJc.js} +1 -1
- package/dist/assets/{index.browser.esm-DwXBoLOX.js → index.browser.esm-DkzdYcbc.js} +1 -1
- package/dist/assets/{index.es-DoDsyBxd.js → index.es-C_WLtS18.js} +1 -1
- package/dist/assets/{info-Dnpt2U_5.js → info-CWQKBayg.js} +1 -1
- package/dist/assets/{info-circle-Bt1w-pCz.js → info-circle-xZWu29E_.js} +1 -1
- package/dist/assets/{isEqual-CgVTCLh1.js → isEqual-yYS0dh2f.js} +1 -1
- package/dist/assets/{isPlainObject-DrlQ5Pnc.js → isPlainObject-CRl4nmqU.js} +1 -1
- package/dist/assets/{kling-DOOG08lq.js → kling-CFlrhlVc.js} +1 -1
- package/dist/assets/{kling-CFHGJQbi.js → kling-DCFW6ga_.js} +1 -1
- package/dist/assets/{lightbulb-aD-dsBxv.js → lightbulb-DDxET3cE.js} +1 -1
- package/dist/assets/{mail-7R5Js7B2.js → mail-CFH0lanX.js} +1 -1
- package/dist/assets/{midjourney-CtxD1PH8.js → midjourney-DRsfJ6XL.js} +1 -1
- package/dist/assets/{mobile-BtkxgoTF.js → mobile-ikIUiDOY.js} +1 -1
- package/dist/assets/{more-DAvhe9VU.js → more-BOWsr6fH.js} +1 -1
- package/dist/assets/{network-placeholder-CCkyDJeN.js → network-placeholder-WAP_pG5W.js} +1 -1
- package/dist/assets/{nftPlaceholder-CIJHDSVd.js → nftPlaceholder-mS2qsTTR.js} +1 -1
- package/dist/assets/{off-BwoZGGFO.js → off-DgdEkHnP.js} +1 -1
- package/dist/assets/{order-BZjOBAha.js → order-Cb2RT6uu.js} +1 -1
- package/dist/assets/{pagination-DuUw6h7L.js → pagination-mZXKDVMd.js} +1 -1
- package/dist/assets/{play-store-CwQNyCN6.js → play-store-8C4ifU8u.js} +1 -1
- package/dist/assets/{plus-BbAuv3hx.js → plus-FPrDhto7.js} +1 -1
- package/dist/assets/{price-Dq6B3nmI.js → price-Cr67gCty.js} +1 -1
- package/dist/assets/producer-Br_uIp1_.js +7 -0
- package/dist/assets/producer-Dz_QexIx.js +7 -0
- package/dist/assets/{producer-CI1GeNU0.js → producer-Q-cOb_Ne.js} +1 -1
- package/dist/assets/{qr-code-oGfaJIYm.js → qr-code-DRShCRVn.js} +1 -1
- package/dist/assets/{recycle-horizontal-CIMdWX63.js → recycle-horizontal-C8dBoRZt.js} +1 -1
- package/dist/assets/{refresh-CETVZsJS.js → refresh-CImlMCgq.js} +1 -1
- package/dist/assets/{reown-logo-CLmHzqhX.js → reown-logo-4ZKneMrf.js} +1 -1
- package/dist/assets/{search-Buv7Cq2F.js → search-CGNtTO4W.js} +1 -1
- package/dist/assets/{secp256k1-DZFSOuaq.js → secp256k1-BWP6UeVl.js} +1 -1
- package/dist/assets/{secp256k1-CWhf6TH4.js → secp256k1-C2CXj9YW.js} +1 -1
- package/dist/assets/{seedream-BpNX1g1O.js → seedream-DpE59ZMf.js} +1 -1
- package/dist/assets/{send-BSMhw9Xa.js → send-DCL9Yk32.js} +1 -1
- package/dist/assets/{service-CIPDs5an.js → service-BJ-ypgj8.js} +1 -1
- package/dist/assets/{solana-wallets-vue-CieCmGxz.js → solana-wallets-vue-C8Fkxc_p.js} +1 -1
- package/dist/assets/{solana-wallets-RAxh0-qX.js → solana-wallets-yxjVsaPt.js} +2 -2
- package/dist/assets/{suno-DFaKmajK.js → suno-BZWrSxwO.js} +1 -1
- package/dist/assets/{swapHorizontal-Cs-Nsa-N.js → swapHorizontal-Bfn7eZ90.js} +1 -1
- package/dist/assets/{swapHorizontalBold-C_g3Z5YY.js → swapHorizontalBold-DGPhnPkP.js} +1 -1
- package/dist/assets/{swapHorizontalMedium-Cni6iZGc.js → swapHorizontalMedium-DqzPWlW6.js} +1 -1
- package/dist/assets/{swapHorizontalRoundedBold-BIHXs_Kn.js → swapHorizontalRoundedBold-DPpuDpww.js} +1 -1
- package/dist/assets/{swapVertical-B2X4zH4b.js → swapVertical--7_aleOl.js} +1 -1
- package/dist/assets/{telegram-C_umRltj.js → telegram-DkMIuO8p.js} +1 -1
- package/dist/assets/{three-dots-in7LQz0m.js → three-dots-DIIrfSEt.js} +1 -1
- package/dist/assets/{twitch-BhlPlBfi.js → twitch-CiiHF84Y.js} +1 -1
- package/dist/assets/{twitterIcon-CrxI95_1.js → twitterIcon-ocXCXtXI.js} +1 -1
- package/dist/assets/{typescript-C7vXUz1j.js → typescript-D6sat8h_.js} +1 -1
- package/dist/assets/{use-form-item-CkUvjro6.js → use-form-item-B5rZE33a.js} +1 -1
- package/dist/assets/validator-DGv8iqeP.js +1 -0
- package/dist/assets/{verify-D6DQIx4j.js → verify-BNbMn2WA.js} +1 -1
- package/dist/assets/{verify-filled-FR7cKPze.js → verify-filled-BYrl9ds5.js} +1 -1
- package/dist/assets/{w3m-modal-B5HAb7kJ.js → w3m-modal-1D4qbzJa.js} +1 -1
- package/dist/assets/{wallet-CDX0DAit.js → wallet-FOzEXpqB.js} +1 -1
- package/dist/assets/{wallet-placeholder-BRABXVV_.js → wallet-placeholder-B68god-e.js} +1 -1
- package/dist/assets/{walletconnect-1VhScNHL.js → walletconnect-BgAZqbXg.js} +1 -1
- package/dist/assets/{warning-circle-DDJ5i3sU.js → warning-circle-OFLJWcAI.js} +1 -1
- package/dist/assets/{web-BV6i-IiK.js → web-DWdZiDY7.js} +1 -1
- package/dist/assets/{web-BfkNWdqt.js → web-MzbMqkc3.js} +1 -1
- package/dist/assets/{x-Cl7CMuoB.js → x-CIb6zO-n.js} +1 -1
- package/dist/index.html +1 -1
- package/package.json +1 -1
- package/dist/assets/Index-B0JQUqqM.js +0 -1
- package/dist/assets/Index-CWGuNkuR.js +0 -1
- package/dist/assets/Index-DMHyDsV2.css +0 -1
- package/dist/assets/producer-BpQVWNsN.js +0 -7
- package/dist/assets/producer-CmjvX-Jw.js +0 -7
- package/dist/assets/validator-BYlyQQaq.js +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
import{F as C}from"./index.es-DoDsyBxd.js";import{E as q}from"./index-CghmaEfO.js";import{E as N}from"./index-BRqPnPCL.js";import{d as E,H as i,E as l,z as D,C as s,y as g,D as n,q as a,F as o,I as u,O as y,N as V,x as w,J as $,M as Z,Q as A}from"./vendor-vue-NSDaktjZ.js";import{G as k,bl as K,cW as X,cX as H,cY as J,cZ as Q,c_ as Y,c$ as ee,d0 as te,d1 as U,d2 as z,d3 as G,d4 as P,d5 as se,d6 as O,d7 as oe,d8 as B,cr as ae,S as j,cs as ne}from"./index-Bwh4uhxH.js";import{I as L,S as re,l as le}from"./pagination-DuUw6h7L.js";import{E as ie}from"./index-Df-EZV4-.js";import{p as ce}from"./pasteUploadMixin-BurWbGNQ.js";import{I as F}from"./ImagePreview-Bdb0i-UY.js";import{E as me}from"./index-CZoz3sTY.js";import{E as I}from"./index-CD3hMCXK.js";import{C as de}from"./Consumption-DTqKtl19.js";import{a as ue}from"./price-Dq6B3nmI.js";import{E as x,a as W}from"./index-Bs4QQKmj.js";import{E as pe}from"./index-udv8oHBR.js";import{b as fe}from"./errorCode-Cqj9Td_Z.js";import{s as _e}from"./seedream-BpNX1g1O.js";import{C as ge}from"./CopyToClipboard-CHIfP83C.js";import{I as he}from"./ImageWrapper-DQ4mprTG.js";import{E as $e}from"./index-CdNNDZgX.js";import{E as ve}from"./index-CLC3F3zh.js";import{E as be}from"./index-Cdu2CINy.js";import{B as Ee}from"./BotPlaceholder-teJQgw1R.js";import{N as ke}from"./NoTasks-Dro6OdxD.js";import"./use-form-item-CkUvjro6.js";import"./index-BuyEbX8F.js";import"./vendor-axios-B8_nURbH.js";import"./vendor-dayjs-v0j1UNZp.js";import"./vendor-vue-router-Kg6s1a65.js";import"./typescript-C7vXUz1j.js";import"./index-CWWZeClw.js";import"./index-nLjkUfZa.js";import"./index-DSAaysXY.js";import"./_baseClone-BywLfCY-.js";import"./_Uint8Array-JndvkAwf.js";import"./_initCloneObject-D5P_u5bs.js";import"./isEqual-CgVTCLh1.js";import"./index-Boh3hilg.js";import"./strings-beZM2Y-f.js";import"./castArray-BzRYTmyg.js";import"./debounce-D7YINRDE.js";import"./_baseIteratee-BaTk7Xco.js";import"./index-Dy5k6Duv.js";import"./index-Cu41y2Fl.js";import"./index-ByGJSI5C.js";const ye=E({name:"LayoutSeedream",components:{ElDrawer:N,ElButton:q,FontAwesomeIcon:C},data(){return{drawer:!1}}}),we={class:"main flex flex-row flex-1"},Se={class:"config w-[320px] 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 bg-[var(--app-content-bg)]"};function Ve(e,t,d,c,h,p){const f=n("font-awesome-icon"),_=n("el-button"),r=n("el-drawer");return a(),i("div",we,[l("div",Se,[D(e.$slots,"config",{},void 0,!0)]),l("div",Ie,[D(e.$slots,"result",{},void 0,!0)]),s(_,{circle:"",class:"menu",onClick:t[0]||(t[0]=m=>e.drawer=!0)},{default:g(()=>[s(f,{icon:"fa-solid fa-magic"})]),_:1}),s(r,{modelValue:e.drawer,"onUpdate:modelValue":t[1]||(t[1]=m=>e.drawer=m),direction:"ltr","with-header":!1,size:"340px",class:"drawer"},{default:g(()=>[D(e.$slots,"config",{},void 0,!0)]),_:3},8,["modelValue"])])}const Me=k(ye,[["render",Ve],["__scopeId","data-v-5ff0c320"]]),Ae="",Le=E({name:"SeedreamPromptInput",components:{ElInput:ie,InfoIcon:L},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=Ae)}}),Re={class:"field"},Te={class:"box"},Ce={class:"title font-bold"};function qe(e,t,d,c,h,p){const f=n("info-icon"),_=n("el-input");return a(),i("div",Re,[l("div",Te,[l("h2",Ce,o(e.$t("seedream.name.prompt")),1),s(f,{content:e.$t("seedream.description.prompt"),class:"info"},null,8,["content"])]),s(_,{modelValue:e.prompt,"onUpdate:modelValue":t[0]||(t[0]=r=>e.prompt=r),rows:3,type:"textarea",class:"prompt",placeholder:e.$t("seedream.placeholder.prompt")},null,8,["modelValue","placeholder"])])}const De=k(Le,[["render",qe],["__scopeId","data-v-5559520a"]]),Ue=E({name:"SeedreamImageInput",components:{ElUpload:me,ElButton:q,InfoIcon:L,ImagePreview:F,FontAwesomeIcon:C},mixins:[ce],data(){return{fileList:[],uploadUrl:K()+"/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}},watch:{value:{immediate:!0,handler(e){if(this.suppressWatch)return;if(!e||e.length===0){const c=(this.fileList||[]).filter(h=>!h?.response?.file_url);this.fileList=c.length?c:[];return}const t=[];e.forEach(c=>{const h=this.fileList.find(p=>p?.response?.file_url===c||p?.url===c);h?t.push(h):t.push({name:c.split("/").pop()||c,url:c,status:"success",percentage:100,response:{file_url:c}})}),(this.fileList||[]).filter(c=>!c?.response?.file_url).forEach(c=>{t.some(p=>p===c||p?.url===c?.url||p?.response?.file_url===c?.response?.file_url)||t.push(c)}),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(){I.warning(this.$t("seedream.message.uploadImageExceed"))},onError(){I.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()}}}),ze={class:"field"},Ge={class:"label"},Pe={class:"box"},Oe={class:"title font-bold"},je={class:"value"},Be={class:"file-list mt-2 flex flex-wrap gap-[10px]"};function Fe(e,t,d,c,h,p){const f=n("info-icon"),_=n("font-awesome-icon"),r=n("el-button"),m=n("el-upload"),b=n("image-preview");return a(),i(y,null,[l("div",ze,[l("div",Ge,[l("div",Pe,[l("h2",Oe,o(e.$t("seedream.name.imageUrls")),1),s(f,{content:e.$t("seedream.description.imageUrls"),class:"info"},null,8,["content"])])]),l("div",je,[s(m,{ref:"uploader","file-list":e.fileList,"onUpdate:fileList":t[0]||(t[0]=v=>e.fileList=v),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:g(()=>[s(r,{size:"small",type:"primary",round:""},{default:g(()=>[s(_,{icon:"fa-solid fa-upload",class:"mr-1"}),u(" "+o(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",Be,[(a(!0),i(y,null,V(e.fileList,(v,S)=>(a(),w(b,{key:v.uid||v?.response?.file_url||v.url||S,url:v.url||v?.response?.file_url,name:v.name,percentage:v.percentage,onRemove:R=>e.onRemovePreview(S,v)},null,8,["url","name","percentage","onRemove"]))),128))])],64)}const xe=k(Ue,[["render",Fe],["__scopeId","data-v-dc18c674"]]),We=E({name:"SeedreamModelSelector",components:{ElSelect:W,ElOption:x,InfoIcon:L},data(){return{options:[{value:H,label:this.$t("seedream.model.seedream50")},{value:J,label:this.$t("seedream.model.seedream45")},{value:Q,label:this.$t("seedream.model.seedream40")},{value:Y,label:this.$t("seedream.model.seedream30t2i")},{value:ee,label:this.$t("seedream.model.seededit30i2i")}]}},computed:{value:{get(){return this.$store.state.seedream?.config?.model},set(e){this.$store.commit("seedream/setConfig",{...this.$store.state.seedream?.config,model:e})}}},mounted(){this.value||(this.value=X)}}),Ne={class:"field"},Ze={class:"label"},Ke={class:"box"},Xe={class:"title font-bold"};function He(e,t,d,c,h,p){const f=n("info-icon"),_=n("el-option"),r=n("el-select");return a(),i("div",Ne,[l("div",Ze,[l("div",Ke,[l("h2",Xe,o(e.$t("seedream.name.model")),1),s(f,{content:e.$t("seedream.description.model"),class:"info"},null,8,["content"])])]),s(r,{modelValue:e.value,"onUpdate:modelValue":t[0]||(t[0]=m=>e.value=m),class:"value",placeholder:e.$t("seedream.placeholder.select")},{default:g(()=>[(a(!0),i(y,null,V(e.options,m=>(a(),w(_,{key:m.value,label:m.label,value:m.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const Je=k(We,[["render",He],["__scopeId","data-v-609ade55"]]),Qe=E({name:"SeedreamSizeSelector",components:{ElSelect:W,ElOption:x,InfoIcon:L},data(){return{options:[{value:U,label:U},{value:z,label:z},{value:G,label:G},{value:P,label:P}]}},computed:{value:{get(){return this.$store.state.seedream?.config?.size},set(e){this.$store.commit("seedream/setConfig",{...this.$store.state.seedream?.config,size:e})}}},mounted(){this.value||(this.value=te)}}),Ye={class:"field"},et={class:"label"},tt={class:"box"},st={class:"title font-bold"};function ot(e,t,d,c,h,p){const f=n("info-icon"),_=n("el-option"),r=n("el-select");return a(),i("div",Ye,[l("div",et,[l("div",tt,[l("h2",st,o(e.$t("seedream.name.size")),1),s(f,{content:e.$t("seedream.description.size"),class:"info"},null,8,["content"])])]),s(r,{modelValue:e.value,"onUpdate:modelValue":t[0]||(t[0]=m=>e.value=m),class:"value",placeholder:e.$t("seedream.placeholder.select"),filterable:"","allow-create":"","default-first-option":""},{default:g(()=>[(a(!0),i(y,null,V(e.options,m=>(a(),w(_,{key:m.value,label:m.label,value:m.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const at=k(Qe,[["render",ot],["__scopeId","data-v-44d5c9d9"]]),nt=E({name:"SeedreamMaxImagesSelector",components:{ElInputNumber:pe,InfoIcon:L},computed:{config(){return this.$store.state.seedream?.config||{}},supported(){return oe(this.config?.model)},referenceImageCount(){const e=this.config?.image;return Array.isArray(e)?e.length:0},effectiveMax(){const e=O-this.referenceImageCount;return Math.max(1,Math.min(O,e))},value:{get(){const e=this.config?.sequential_image_generation_options?.max_images;return typeof e=="number"&&e>=1?e:se},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:{supported:{immediate:!0,handler(e){if(e)return;const t={...this.config||{}};let d=!1;t.sequential_image_generation&&(delete t.sequential_image_generation,d=!0),t.sequential_image_generation_options&&(delete t.sequential_image_generation_options,d=!0),d&&this.$store.commit("seedream/setConfig",t)}},effectiveMax(e){this.value>e&&(this.value=e)}}}),rt={key:0,class:"field"},lt={class:"label"},it={class:"box"},ct={class:"title font-bold"},mt={class:"value"};function dt(e,t,d,c,h,p){const f=n("info-icon"),_=n("el-input-number");return e.supported?(a(),i("div",rt,[l("div",lt,[l("div",it,[l("h2",ct,o(e.$t("seedream.name.maxImages")),1),s(f,{content:e.$t("seedream.description.maxImages"),class:"info"},null,8,["content"])])]),l("div",mt,[s(_,{modelValue:e.value,"onUpdate:modelValue":t[0]||(t[0]=r=>e.value=r),min:1,max:e.effectiveMax,step:1,size:"default","controls-position":"right",class:"counter"},null,8,["modelValue","max"])])])):$("",!0)}const ut=k(nt,[["render",dt],["__scopeId","data-v-17ef8d1a"]]),pt=E({name:"SeedreamConfigPanel",components:{ElButton:q,FontAwesomeIcon:C,PromptInput:De,Consumption:de,ImageInput:xe,ModelSelector:Je,SizeSelector:at,MaxImagesSelector:ut},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 ue({...e,action:t?"edit":"generate",model:B(e?.model),count:d},this.service?.cost)},service(){return this.$store.state.seedream?.service}},methods:{onGenerate(){this.$emit("generate")}}}),ft={class:"flex flex-col h-full"},_t={class:"flex-1 overflow-y-auto p-5"},gt={class:"flex flex-col items-center justify-center px-5 pb-5"};function ht(e,t,d,c,h,p){const f=n("model-selector"),_=n("size-selector"),r=n("max-images-selector"),m=n("prompt-input"),b=n("image-input"),v=n("consumption"),S=n("font-awesome-icon"),R=n("el-button");return a(),i("div",ft,[l("div",_t,[s(f,{class:"mb-4"}),s(_,{class:"mb-4"}),s(r,{class:"mb-4"}),s(m,{class:"mb-4"}),s(b,{class:"mb-4"})]),l("div",gt,[s(v,{value:e.consumption,service:e.service},null,8,["value","service"]),s(R,{type:"primary",class:"btn w-full",round:"",onClick:e.onGenerate},{default:g(()=>[s(S,{icon:"fa-solid fa-magic",class:"mr-2"}),u(" "+o(e.$t("seedream.button.generate")),1)]),_:1},8,["onClick"])])])}const $t=k(pt,[["render",ht]]),vt=E({name:"SeedreamTaskPreview",components:{ElImage:be,CopyToClipboard:ge,FontAwesomeIcon:C,ElAlert:ve,ImageWrapper:he,ElButton:q,ElTooltip:$e,ImagePreview:F},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 B(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)}}}),bt={class:"preview"},Et={class:"left"},kt={class:"main"},yt={class:"bot"},wt={class:"datetime"},St={class:"info"},It={key:0,class:"flex justify-start items-center gap-2 mt-2 w-full overflow-x-auto"},Vt={key:1,class:"prompt mt-2"},Mt={key:0},At={key:0,class:A({content:!0})},Lt={class:"text-[var(--el-text-color-regular)] text-xs mb-0"},Rt={key:1,class:A({content:!0,failed:!0})},Tt={class:"flex justify-start items-center gap-4 w-full overflow-x-auto"},Ct={class:A({operations:!0,"mt-2":!0,"mb-2":!0})},qt={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Dt={key:1,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Ut={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},zt={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"},Pt={key:3,class:"text-[var(--el-text-color-regular)] text-xs mb-0"},Ot={key:2,class:A({content:!0})},jt={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"},Ft={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},xt={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Wt={key:2,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Nt={key:3,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Zt={key:4,class:"text-[var(--el-text-color-regular)] text-xs mb-0"},Kt={key:3,class:A({content:!0})},Xt={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Ht={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-0"};function Jt(e,t,d,c,h,p){const f=n("el-image"),_=n("image-preview"),r=n("font-awesome-icon"),m=n("copy-to-clipboard"),b=n("el-alert"),v=n("image-wrapper"),S=n("el-button"),R=n("el-tooltip");return a(),i("div",bt,[l("div",Et,[s(f,{src:"https://cdn.acedata.cloud/9egrbn.png",class:"avatar"})]),l("div",kt,[l("div",yt,[u(o(e.$t("seedream.name.seedreamBot"))+" ",1),l("span",wt,o(e.$dayjs.format(""+new Date(parseFloat((e.modelValue?.created_at||"").toString())*1e3))),1)]),l("div",St,[Array.isArray(e.modelValue?.request?.image)&&e.modelValue?.request?.image.length>0?(a(),i("div",It,[(a(!0),i(y,null,V(e.modelValue?.request?.image,(M,T)=>(a(),w(_,{key:T,url:M,name:`image-${T+1}`,closable:!1},null,8,["url","name"]))),128))])):$("",!0),e.modelValue?.request?.prompt?(a(),i("p",Vt,[u(o(e.modelValue?.request?.prompt)+" ",1),e.modelValue?.response?$("",!0):(a(),i("span",Mt," - ("+o(e.$t("seedream.status.pending"))+") ",1))])):$("",!0)]),e.modelValue?.response?e.modelValue?.response?.success===!0?(a(),i("div",Rt,[l("div",Tt,[(a(!0),i(y,null,V(e.images,(M,T)=>(a(),w(v,{key:T,src:M?.image_url,"raw-src":M?.image_url},null,8,["src","raw-src"]))),128))]),l("div",Ct,[s(R,{class:"box-item",effect:"dark",content:e.$t("common.button.edit"),placement:"top-start"},{default:g(()=>[s(S,{type:"info",size:"small",class:"btn-action",onClick:t[0]||(t[0]=Z(M=>e.onEdit(e.images?.[0]?.image_url),["stop"]))},{default:g(()=>[u(o(e.$t("common.button.edit")),1)]),_:1})]),_:1},8,["content"])]),s(b,{closable:!1,class:"mt-2 success"},{default:g(()=>[e.modelValue?.request?.model?(a(),i("p",qt,[s(r,{icon:"fa-solid fa-cube",class:"mr-1"}),u(" "+o(e.$t("seedream.name.model"))+": "+o(e.shortModel(e.modelValue?.request?.model)),1)])):$("",!0),e.modelValue?.request?.size?(a(),i("p",Dt,[s(r,{icon:"fa-solid fa-image",class:"mr-1"}),u(" "+o(e.$t("seedream.name.size"))+": "+o(e.modelValue?.request?.size),1)])):$("",!0),l("p",Ut,[s(r,{icon:"fa-solid fa-bolt",class:"mr-1"}),u(" "+o(e.$t("seedream.name.task"))+": "+o(e.isEdit?e.$t("seedream.name.edits"):e.$t("seedream.name.generate")),1)]),l("p",zt,[s(r,{icon:"fa-solid fa-magic",class:"mr-1"}),u(" "+o(e.$t("seedream.name.taskId"))+": "+o(e.modelValue?.id)+" ",1),s(m,{content:e.modelValue?.id,class:"btn-copy inline-block"},null,8,["content"])]),e.modelValue?.elapsed?(a(),i("p",Gt,[s(r,{icon:"fa-solid fa-clock",class:"mr-1"}),u(" "+o(e.$t("seedream.name.elapsed"))+": "+o(e.modelValue?.elapsed?.toFixed(2))+"s ",1)])):$("",!0),e.modelValue?.response?.trace_id?(a(),i("p",Pt,[s(r,{icon:"fa-solid fa-hashtag",class:"mr-1"}),u(" "+o(e.$t("seedream.name.traceId"))+": "+o(e.modelValue?.response?.trace_id)+" ",1),s(m,{content:e.modelValue?.response?.trace_id,class:"btn-copy inline-block"},null,8,["content"])])):$("",!0)]),_:1})])):e.modelValue?.response?.success===!1?(a(),i("div",Ot,[s(b,{closable:!1,class:"failure"},{template:g(()=>[s(r,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),u(" "+o(e.$t("seedream.name.failure")),1)]),default:g(()=>[e.modelValue?.request?.model?(a(),i("p",jt,[s(r,{icon:"fa-solid fa-cube",class:"mr-1"}),u(" "+o(e.$t("seedream.name.model"))+": "+o(e.shortModel(e.modelValue?.request?.model)),1)])):$("",!0),e.modelValue?.request?.size?(a(),i("p",Bt,[s(r,{icon:"fa-solid fa-image",class:"mr-1"}),u(" "+o(e.$t("seedream.name.size"))+": "+o(e.modelValue?.request?.size),1)])):$("",!0),l("p",Ft,[s(r,{icon:"fa-solid fa-bolt",class:"mr-1"}),u(" "+o(e.$t("seedream.name.task"))+": "+o(e.isEdit?e.$t("seedream.name.edits"):e.$t("seedream.name.generate")),1)]),l("p",xt,[s(r,{icon:"fa-solid fa-magic",class:"mr-1"}),u(" "+o(e.$t("seedream.name.taskId"))+": "+o(e.modelValue?.id)+" ",1),s(m,{content:e.modelValue?.id,class:"btn-copy"},null,8,["content"])]),e.modelValue?.response?.error?.message?(a(),i("p",Wt,[s(r,{icon:"fa-solid fa-circle-info",class:"mr-1"}),u(" "+o(e.$t("seedream.name.failureReason"))+": "+o(e.modelValue?.response?.error?.message)+" ",1),s(m,{content:e.modelValue?.response?.error?.message,class:"btn-copy"},null,8,["content"])])):$("",!0),e.modelValue?.elapsed?(a(),i("p",Nt,[s(r,{icon:"fa-solid fa-clock",class:"mr-1"}),u(" "+o(e.$t("seedream.name.elapsed"))+": "+o(e.modelValue?.elapsed?.toFixed(2))+"s ",1)])):$("",!0),e.modelValue?.response?.trace_id?(a(),i("p",Zt,[s(r,{icon:"fa-solid fa-hashtag",class:"mr-1"}),u(" "+o(e.$t("seedream.name.traceId"))+": "+o(e.modelValue?.response?.trace_id)+" ",1),s(m,{content:e.modelValue?.response?.trace_id,class:"btn-copy"},null,8,["content"])])):$("",!0)]),_:1})])):(a(),i("div",Kt,[s(b,{closable:!1,class:"info"},{template:g(()=>[s(r,{icon:"fa-solid fa-circle-info",class:"mr-1"}),u(" "+o(e.$t("seedream.name.status")),1)]),default:g(()=>[l("p",Xt,[s(r,{icon:"fa-solid fa-magic",class:"mr-1"}),u(" "+o(e.$t("seedream.name.taskId"))+": "+o(e.modelValue?.id)+" ",1),s(m,{content:e.modelValue?.id,class:"btn-copy"},null,8,["content"])]),e.modelValue?.response?.trace_id?(a(),i("p",Ht,[s(r,{icon:"fa-solid fa-hashtag",class:"mr-1"}),u(" "+o(e.$t("seedream.name.traceId"))+": "+o(e.modelValue?.response?.trace_id)+" ",1),s(m,{content:e.modelValue?.response?.trace_id,class:"btn-copy"},null,8,["content"])])):$("",!0)]),_:1})])):(a(),i("div",At,[s(b,{closable:!1,class:"info"},{template:g(()=>[s(r,{icon:"fa-regular fa-clock",class:"mr-1"}),u(" "+o(e.$t("seedream.status.pending")),1)]),default:g(()=>[l("p",Lt,[s(r,{icon:"fa-solid fa-magic",class:"mr-1"}),u(" "+o(e.$t("seedream.name.taskId"))+": "+o(e.modelValue?.id)+" ",1),s(m,{content:e.modelValue?.id,class:"btn-copy inline-block"},null,8,["content"])])]),_:1})]))])])}const Qt=k(vt,[["render",Jt],["__scopeId","data-v-0dfc6a09"]]),Yt=E({name:"SeedreamRecentPanel",components:{TaskPreview:Qt,BotPlaceholder:Ee,NoTasks:ke,ScrollList:re},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?.()}}}),es={key:0},ts={key:2,class:"w-full h-full flex items-center justify-center"};function ss(e,t,d,c,h,p){const f=n("bot-placeholder"),_=n("task-preview"),r=n("scroll-list"),m=n("no-tasks");return a(),i(y,null,[e.tasks?.items===void 0?(a(),i("div",es,[s(f)])):e.tasks?.items?.length&&e.tasks?.items?.length>0?(a(),w(r,{key:1,ref:"scrollList",class:"tasks h-full w-full overflow-y-auto",loading:e.loading,onReachTop:t[0]||(t[0]=b=>e.$emit("reach-top"))},{default:g(()=>[(a(!0),i(y,null,V(e.tasks?.items,b=>(a(),w(_,{key:b.id,"model-value":b},null,8,["model-value"]))),128))]),_:1},8,["loading"])):$("",!0),e.tasks?.items?.length===0?(a(),i("div",ts,[s(m)])):$("",!0)],64)}const os=k(Yt,[["render",ss]]),as=ne("seedream"),ns=E({name:"SeedreamIndex",components:{ConfigPanel:$t,Layout:Me,RecentPanel:os},inject:["initialized"],data(){return{task:void 0,job:0,loading:!1}},computed:{applicationsLoading(){return this.$store.state.seedream?.status?.getApplications===j.Request},tasksLoading(){return this.$store.state.seedream?.status?.getTasks===j.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 le({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:c}=e||{};console.debug("limit",t,"createdAtMin",d,"createdAtMax",c),await this.$store.dispatch("seedream/getTasks",{limit:t,createdAtMin:d,createdAtMax:c})},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:as},c=this.credential?.token;if(!c){console.error("no token specified");return}I.info(this.$t("seedream.message.startingTask")),ae("seedream",_e.generate(d,{token:c})).then(()=>{I.success(this.$t("seedream.message.startTaskSuccess"))}).catch(h=>{const p=h?.response?.data;p?.error?.code===fe?I.error(this.$t("seedream.message.usedUp")):I.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 rs(e,t,d,c,h,p){const f=n("config-panel"),_=n("recent-panel"),r=n("layout");return a(),w(r,null,{config:g(()=>[s(f,{onGenerate:e.onGenerate},null,8,["onGenerate"])]),result:g(()=>[s(_,{ref:"recentPanel",loading:e.loading,onReachTop:e.onReachTop},null,8,["loading","onReachTop"])]),_:1})}const Qs=k(ns,[["render",rs]]);export{Qs as default};
|
|
1
|
+
import{F as C}from"./index.es-C_WLtS18.js";import{E as q}from"./index-DTbz6TSn.js";import{E as N}from"./index-SAsUj7Pk.js";import{d as E,H as i,E as l,z as D,C as s,y as g,D as n,q as a,F as o,I as u,O as y,N as V,x as w,J as $,M as Z,Q as A}from"./vendor-vue-NSDaktjZ.js";import{G as k,bl as K,cW as X,cX as H,cY as J,cZ as Q,c_ as Y,c$ as ee,d0 as te,d1 as U,d2 as z,d3 as G,d4 as P,d5 as se,d6 as O,d7 as oe,d8 as B,cr as ae,S as j,cs as ne}from"./index-BzRVav2J.js";import{I as L,S as re,l as le}from"./pagination-mZXKDVMd.js";import{E as ie}from"./index-D5ReSuuO.js";import{p as ce}from"./pasteUploadMixin-BurWbGNQ.js";import{I as F}from"./ImagePreview-CATcaSwT.js";import{E as me}from"./index-Dt0xHpag.js";import{E as I}from"./index-CMTPLs4z.js";import{C as de}from"./Consumption-CL3WRYVN.js";import{a as ue}from"./price-Cr67gCty.js";import{E as x,a as W}from"./index-CmMnj3Xx.js";import{E as pe}from"./index--FfOeMhK.js";import{b as fe}from"./errorCode-Cqj9Td_Z.js";import{s as _e}from"./seedream-DpE59ZMf.js";import{C as ge}from"./CopyToClipboard-TC6O9s7V.js";import{I as he}from"./ImageWrapper-C-2wIJYB.js";import{E as $e}from"./index--MBG5Bxw.js";import{E as ve}from"./index-De-wy4Tc.js";import{E as be}from"./index-C3GoyrG4.js";import{B as Ee}from"./BotPlaceholder-BqeR06y3.js";import{N as ke}from"./NoTasks-C3t8bmtA.js";import"./use-form-item-B5rZE33a.js";import"./index-BuyEbX8F.js";import"./vendor-axios-B8_nURbH.js";import"./vendor-dayjs-v0j1UNZp.js";import"./vendor-vue-router-Kg6s1a65.js";import"./typescript-D6sat8h_.js";import"./index-Cjg_OuWc.js";import"./index-0u_G2kSj.js";import"./index-BD55w4j0.js";import"./_baseClone-Bmu_sg3j.js";import"./_Uint8Array-BP4C5DZm.js";import"./_initCloneObject-C-Q8oqTt.js";import"./isEqual-yYS0dh2f.js";import"./index-CD8qf4tY.js";import"./strings-beZM2Y-f.js";import"./castArray-YvIMFTc9.js";import"./debounce-BpWk7nuI.js";import"./_baseIteratee-lG75D4iw.js";import"./index-DLlZmkfC.js";import"./index-Cu41y2Fl.js";import"./index-CTspmpeX.js";const ye=E({name:"LayoutSeedream",components:{ElDrawer:N,ElButton:q,FontAwesomeIcon:C},data(){return{drawer:!1}}}),we={class:"main flex flex-row flex-1"},Se={class:"config w-[320px] 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 bg-[var(--app-content-bg)]"};function Ve(e,t,d,c,h,p){const f=n("font-awesome-icon"),_=n("el-button"),r=n("el-drawer");return a(),i("div",we,[l("div",Se,[D(e.$slots,"config",{},void 0,!0)]),l("div",Ie,[D(e.$slots,"result",{},void 0,!0)]),s(_,{circle:"",class:"menu",onClick:t[0]||(t[0]=m=>e.drawer=!0)},{default:g(()=>[s(f,{icon:"fa-solid fa-magic"})]),_:1}),s(r,{modelValue:e.drawer,"onUpdate:modelValue":t[1]||(t[1]=m=>e.drawer=m),direction:"ltr","with-header":!1,size:"340px",class:"drawer"},{default:g(()=>[D(e.$slots,"config",{},void 0,!0)]),_:3},8,["modelValue"])])}const Me=k(ye,[["render",Ve],["__scopeId","data-v-5ff0c320"]]),Ae="",Le=E({name:"SeedreamPromptInput",components:{ElInput:ie,InfoIcon:L},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=Ae)}}),Re={class:"field"},Te={class:"box"},Ce={class:"title font-bold"};function qe(e,t,d,c,h,p){const f=n("info-icon"),_=n("el-input");return a(),i("div",Re,[l("div",Te,[l("h2",Ce,o(e.$t("seedream.name.prompt")),1),s(f,{content:e.$t("seedream.description.prompt"),class:"info"},null,8,["content"])]),s(_,{modelValue:e.prompt,"onUpdate:modelValue":t[0]||(t[0]=r=>e.prompt=r),rows:3,type:"textarea",class:"prompt",placeholder:e.$t("seedream.placeholder.prompt")},null,8,["modelValue","placeholder"])])}const De=k(Le,[["render",qe],["__scopeId","data-v-5559520a"]]),Ue=E({name:"SeedreamImageInput",components:{ElUpload:me,ElButton:q,InfoIcon:L,ImagePreview:F,FontAwesomeIcon:C},mixins:[ce],data(){return{fileList:[],uploadUrl:K()+"/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}},watch:{value:{immediate:!0,handler(e){if(this.suppressWatch)return;if(!e||e.length===0){const c=(this.fileList||[]).filter(h=>!h?.response?.file_url);this.fileList=c.length?c:[];return}const t=[];e.forEach(c=>{const h=this.fileList.find(p=>p?.response?.file_url===c||p?.url===c);h?t.push(h):t.push({name:c.split("/").pop()||c,url:c,status:"success",percentage:100,response:{file_url:c}})}),(this.fileList||[]).filter(c=>!c?.response?.file_url).forEach(c=>{t.some(p=>p===c||p?.url===c?.url||p?.response?.file_url===c?.response?.file_url)||t.push(c)}),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(){I.warning(this.$t("seedream.message.uploadImageExceed"))},onError(){I.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()}}}),ze={class:"field"},Ge={class:"label"},Pe={class:"box"},Oe={class:"title font-bold"},je={class:"value"},Be={class:"file-list mt-2 flex flex-wrap gap-[10px]"};function Fe(e,t,d,c,h,p){const f=n("info-icon"),_=n("font-awesome-icon"),r=n("el-button"),m=n("el-upload"),b=n("image-preview");return a(),i(y,null,[l("div",ze,[l("div",Ge,[l("div",Pe,[l("h2",Oe,o(e.$t("seedream.name.imageUrls")),1),s(f,{content:e.$t("seedream.description.imageUrls"),class:"info"},null,8,["content"])])]),l("div",je,[s(m,{ref:"uploader","file-list":e.fileList,"onUpdate:fileList":t[0]||(t[0]=v=>e.fileList=v),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:g(()=>[s(r,{size:"small",type:"primary",round:""},{default:g(()=>[s(_,{icon:"fa-solid fa-upload",class:"mr-1"}),u(" "+o(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",Be,[(a(!0),i(y,null,V(e.fileList,(v,S)=>(a(),w(b,{key:v.uid||v?.response?.file_url||v.url||S,url:v.url||v?.response?.file_url,name:v.name,percentage:v.percentage,onRemove:R=>e.onRemovePreview(S,v)},null,8,["url","name","percentage","onRemove"]))),128))])],64)}const xe=k(Ue,[["render",Fe],["__scopeId","data-v-dc18c674"]]),We=E({name:"SeedreamModelSelector",components:{ElSelect:W,ElOption:x,InfoIcon:L},data(){return{options:[{value:H,label:this.$t("seedream.model.seedream50")},{value:J,label:this.$t("seedream.model.seedream45")},{value:Q,label:this.$t("seedream.model.seedream40")},{value:Y,label:this.$t("seedream.model.seedream30t2i")},{value:ee,label:this.$t("seedream.model.seededit30i2i")}]}},computed:{value:{get(){return this.$store.state.seedream?.config?.model},set(e){this.$store.commit("seedream/setConfig",{...this.$store.state.seedream?.config,model:e})}}},mounted(){this.value||(this.value=X)}}),Ne={class:"field"},Ze={class:"label"},Ke={class:"box"},Xe={class:"title font-bold"};function He(e,t,d,c,h,p){const f=n("info-icon"),_=n("el-option"),r=n("el-select");return a(),i("div",Ne,[l("div",Ze,[l("div",Ke,[l("h2",Xe,o(e.$t("seedream.name.model")),1),s(f,{content:e.$t("seedream.description.model"),class:"info"},null,8,["content"])])]),s(r,{modelValue:e.value,"onUpdate:modelValue":t[0]||(t[0]=m=>e.value=m),class:"value",placeholder:e.$t("seedream.placeholder.select")},{default:g(()=>[(a(!0),i(y,null,V(e.options,m=>(a(),w(_,{key:m.value,label:m.label,value:m.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const Je=k(We,[["render",He],["__scopeId","data-v-609ade55"]]),Qe=E({name:"SeedreamSizeSelector",components:{ElSelect:W,ElOption:x,InfoIcon:L},data(){return{options:[{value:U,label:U},{value:z,label:z},{value:G,label:G},{value:P,label:P}]}},computed:{value:{get(){return this.$store.state.seedream?.config?.size},set(e){this.$store.commit("seedream/setConfig",{...this.$store.state.seedream?.config,size:e})}}},mounted(){this.value||(this.value=te)}}),Ye={class:"field"},et={class:"label"},tt={class:"box"},st={class:"title font-bold"};function ot(e,t,d,c,h,p){const f=n("info-icon"),_=n("el-option"),r=n("el-select");return a(),i("div",Ye,[l("div",et,[l("div",tt,[l("h2",st,o(e.$t("seedream.name.size")),1),s(f,{content:e.$t("seedream.description.size"),class:"info"},null,8,["content"])])]),s(r,{modelValue:e.value,"onUpdate:modelValue":t[0]||(t[0]=m=>e.value=m),class:"value",placeholder:e.$t("seedream.placeholder.select"),filterable:"","allow-create":"","default-first-option":""},{default:g(()=>[(a(!0),i(y,null,V(e.options,m=>(a(),w(_,{key:m.value,label:m.label,value:m.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const at=k(Qe,[["render",ot],["__scopeId","data-v-44d5c9d9"]]),nt=E({name:"SeedreamMaxImagesSelector",components:{ElInputNumber:pe,InfoIcon:L},computed:{config(){return this.$store.state.seedream?.config||{}},supported(){return oe(this.config?.model)},referenceImageCount(){const e=this.config?.image;return Array.isArray(e)?e.length:0},effectiveMax(){const e=O-this.referenceImageCount;return Math.max(1,Math.min(O,e))},value:{get(){const e=this.config?.sequential_image_generation_options?.max_images;return typeof e=="number"&&e>=1?e:se},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:{supported:{immediate:!0,handler(e){if(e)return;const t={...this.config||{}};let d=!1;t.sequential_image_generation&&(delete t.sequential_image_generation,d=!0),t.sequential_image_generation_options&&(delete t.sequential_image_generation_options,d=!0),d&&this.$store.commit("seedream/setConfig",t)}},effectiveMax(e){this.value>e&&(this.value=e)}}}),rt={key:0,class:"field"},lt={class:"label"},it={class:"box"},ct={class:"title font-bold"},mt={class:"value"};function dt(e,t,d,c,h,p){const f=n("info-icon"),_=n("el-input-number");return e.supported?(a(),i("div",rt,[l("div",lt,[l("div",it,[l("h2",ct,o(e.$t("seedream.name.maxImages")),1),s(f,{content:e.$t("seedream.description.maxImages"),class:"info"},null,8,["content"])])]),l("div",mt,[s(_,{modelValue:e.value,"onUpdate:modelValue":t[0]||(t[0]=r=>e.value=r),min:1,max:e.effectiveMax,step:1,size:"default","controls-position":"right",class:"counter"},null,8,["modelValue","max"])])])):$("",!0)}const ut=k(nt,[["render",dt],["__scopeId","data-v-17ef8d1a"]]),pt=E({name:"SeedreamConfigPanel",components:{ElButton:q,FontAwesomeIcon:C,PromptInput:De,Consumption:de,ImageInput:xe,ModelSelector:Je,SizeSelector:at,MaxImagesSelector:ut},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 ue({...e,action:t?"edit":"generate",model:B(e?.model),count:d},this.service?.cost)},service(){return this.$store.state.seedream?.service}},methods:{onGenerate(){this.$emit("generate")}}}),ft={class:"flex flex-col h-full"},_t={class:"flex-1 overflow-y-auto p-5"},gt={class:"flex flex-col items-center justify-center px-5 pb-5"};function ht(e,t,d,c,h,p){const f=n("model-selector"),_=n("size-selector"),r=n("max-images-selector"),m=n("prompt-input"),b=n("image-input"),v=n("consumption"),S=n("font-awesome-icon"),R=n("el-button");return a(),i("div",ft,[l("div",_t,[s(f,{class:"mb-4"}),s(_,{class:"mb-4"}),s(r,{class:"mb-4"}),s(m,{class:"mb-4"}),s(b,{class:"mb-4"})]),l("div",gt,[s(v,{value:e.consumption,service:e.service},null,8,["value","service"]),s(R,{type:"primary",class:"btn w-full",round:"",onClick:e.onGenerate},{default:g(()=>[s(S,{icon:"fa-solid fa-magic",class:"mr-2"}),u(" "+o(e.$t("seedream.button.generate")),1)]),_:1},8,["onClick"])])])}const $t=k(pt,[["render",ht]]),vt=E({name:"SeedreamTaskPreview",components:{ElImage:be,CopyToClipboard:ge,FontAwesomeIcon:C,ElAlert:ve,ImageWrapper:he,ElButton:q,ElTooltip:$e,ImagePreview:F},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 B(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)}}}),bt={class:"preview"},Et={class:"left"},kt={class:"main"},yt={class:"bot"},wt={class:"datetime"},St={class:"info"},It={key:0,class:"flex justify-start items-center gap-2 mt-2 w-full overflow-x-auto"},Vt={key:1,class:"prompt mt-2"},Mt={key:0},At={key:0,class:A({content:!0})},Lt={class:"text-[var(--el-text-color-regular)] text-xs mb-0"},Rt={key:1,class:A({content:!0,failed:!0})},Tt={class:"flex justify-start items-center gap-4 w-full overflow-x-auto"},Ct={class:A({operations:!0,"mt-2":!0,"mb-2":!0})},qt={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Dt={key:1,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Ut={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},zt={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"},Pt={key:3,class:"text-[var(--el-text-color-regular)] text-xs mb-0"},Ot={key:2,class:A({content:!0})},jt={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"},Ft={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},xt={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Wt={key:2,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Nt={key:3,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Zt={key:4,class:"text-[var(--el-text-color-regular)] text-xs mb-0"},Kt={key:3,class:A({content:!0})},Xt={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Ht={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-0"};function Jt(e,t,d,c,h,p){const f=n("el-image"),_=n("image-preview"),r=n("font-awesome-icon"),m=n("copy-to-clipboard"),b=n("el-alert"),v=n("image-wrapper"),S=n("el-button"),R=n("el-tooltip");return a(),i("div",bt,[l("div",Et,[s(f,{src:"https://cdn.acedata.cloud/9egrbn.png",class:"avatar"})]),l("div",kt,[l("div",yt,[u(o(e.$t("seedream.name.seedreamBot"))+" ",1),l("span",wt,o(e.$dayjs.format(""+new Date(parseFloat((e.modelValue?.created_at||"").toString())*1e3))),1)]),l("div",St,[Array.isArray(e.modelValue?.request?.image)&&e.modelValue?.request?.image.length>0?(a(),i("div",It,[(a(!0),i(y,null,V(e.modelValue?.request?.image,(M,T)=>(a(),w(_,{key:T,url:M,name:`image-${T+1}`,closable:!1},null,8,["url","name"]))),128))])):$("",!0),e.modelValue?.request?.prompt?(a(),i("p",Vt,[u(o(e.modelValue?.request?.prompt)+" ",1),e.modelValue?.response?$("",!0):(a(),i("span",Mt," - ("+o(e.$t("seedream.status.pending"))+") ",1))])):$("",!0)]),e.modelValue?.response?e.modelValue?.response?.success===!0?(a(),i("div",Rt,[l("div",Tt,[(a(!0),i(y,null,V(e.images,(M,T)=>(a(),w(v,{key:T,src:M?.image_url,"raw-src":M?.image_url},null,8,["src","raw-src"]))),128))]),l("div",Ct,[s(R,{class:"box-item",effect:"dark",content:e.$t("common.button.edit"),placement:"top-start"},{default:g(()=>[s(S,{type:"info",size:"small",class:"btn-action",onClick:t[0]||(t[0]=Z(M=>e.onEdit(e.images?.[0]?.image_url),["stop"]))},{default:g(()=>[u(o(e.$t("common.button.edit")),1)]),_:1})]),_:1},8,["content"])]),s(b,{closable:!1,class:"mt-2 success"},{default:g(()=>[e.modelValue?.request?.model?(a(),i("p",qt,[s(r,{icon:"fa-solid fa-cube",class:"mr-1"}),u(" "+o(e.$t("seedream.name.model"))+": "+o(e.shortModel(e.modelValue?.request?.model)),1)])):$("",!0),e.modelValue?.request?.size?(a(),i("p",Dt,[s(r,{icon:"fa-solid fa-image",class:"mr-1"}),u(" "+o(e.$t("seedream.name.size"))+": "+o(e.modelValue?.request?.size),1)])):$("",!0),l("p",Ut,[s(r,{icon:"fa-solid fa-bolt",class:"mr-1"}),u(" "+o(e.$t("seedream.name.task"))+": "+o(e.isEdit?e.$t("seedream.name.edits"):e.$t("seedream.name.generate")),1)]),l("p",zt,[s(r,{icon:"fa-solid fa-magic",class:"mr-1"}),u(" "+o(e.$t("seedream.name.taskId"))+": "+o(e.modelValue?.id)+" ",1),s(m,{content:e.modelValue?.id,class:"btn-copy inline-block"},null,8,["content"])]),e.modelValue?.elapsed?(a(),i("p",Gt,[s(r,{icon:"fa-solid fa-clock",class:"mr-1"}),u(" "+o(e.$t("seedream.name.elapsed"))+": "+o(e.modelValue?.elapsed?.toFixed(2))+"s ",1)])):$("",!0),e.modelValue?.response?.trace_id?(a(),i("p",Pt,[s(r,{icon:"fa-solid fa-hashtag",class:"mr-1"}),u(" "+o(e.$t("seedream.name.traceId"))+": "+o(e.modelValue?.response?.trace_id)+" ",1),s(m,{content:e.modelValue?.response?.trace_id,class:"btn-copy inline-block"},null,8,["content"])])):$("",!0)]),_:1})])):e.modelValue?.response?.success===!1?(a(),i("div",Ot,[s(b,{closable:!1,class:"failure"},{template:g(()=>[s(r,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),u(" "+o(e.$t("seedream.name.failure")),1)]),default:g(()=>[e.modelValue?.request?.model?(a(),i("p",jt,[s(r,{icon:"fa-solid fa-cube",class:"mr-1"}),u(" "+o(e.$t("seedream.name.model"))+": "+o(e.shortModel(e.modelValue?.request?.model)),1)])):$("",!0),e.modelValue?.request?.size?(a(),i("p",Bt,[s(r,{icon:"fa-solid fa-image",class:"mr-1"}),u(" "+o(e.$t("seedream.name.size"))+": "+o(e.modelValue?.request?.size),1)])):$("",!0),l("p",Ft,[s(r,{icon:"fa-solid fa-bolt",class:"mr-1"}),u(" "+o(e.$t("seedream.name.task"))+": "+o(e.isEdit?e.$t("seedream.name.edits"):e.$t("seedream.name.generate")),1)]),l("p",xt,[s(r,{icon:"fa-solid fa-magic",class:"mr-1"}),u(" "+o(e.$t("seedream.name.taskId"))+": "+o(e.modelValue?.id)+" ",1),s(m,{content:e.modelValue?.id,class:"btn-copy"},null,8,["content"])]),e.modelValue?.response?.error?.message?(a(),i("p",Wt,[s(r,{icon:"fa-solid fa-circle-info",class:"mr-1"}),u(" "+o(e.$t("seedream.name.failureReason"))+": "+o(e.modelValue?.response?.error?.message)+" ",1),s(m,{content:e.modelValue?.response?.error?.message,class:"btn-copy"},null,8,["content"])])):$("",!0),e.modelValue?.elapsed?(a(),i("p",Nt,[s(r,{icon:"fa-solid fa-clock",class:"mr-1"}),u(" "+o(e.$t("seedream.name.elapsed"))+": "+o(e.modelValue?.elapsed?.toFixed(2))+"s ",1)])):$("",!0),e.modelValue?.response?.trace_id?(a(),i("p",Zt,[s(r,{icon:"fa-solid fa-hashtag",class:"mr-1"}),u(" "+o(e.$t("seedream.name.traceId"))+": "+o(e.modelValue?.response?.trace_id)+" ",1),s(m,{content:e.modelValue?.response?.trace_id,class:"btn-copy"},null,8,["content"])])):$("",!0)]),_:1})])):(a(),i("div",Kt,[s(b,{closable:!1,class:"info"},{template:g(()=>[s(r,{icon:"fa-solid fa-circle-info",class:"mr-1"}),u(" "+o(e.$t("seedream.name.status")),1)]),default:g(()=>[l("p",Xt,[s(r,{icon:"fa-solid fa-magic",class:"mr-1"}),u(" "+o(e.$t("seedream.name.taskId"))+": "+o(e.modelValue?.id)+" ",1),s(m,{content:e.modelValue?.id,class:"btn-copy"},null,8,["content"])]),e.modelValue?.response?.trace_id?(a(),i("p",Ht,[s(r,{icon:"fa-solid fa-hashtag",class:"mr-1"}),u(" "+o(e.$t("seedream.name.traceId"))+": "+o(e.modelValue?.response?.trace_id)+" ",1),s(m,{content:e.modelValue?.response?.trace_id,class:"btn-copy"},null,8,["content"])])):$("",!0)]),_:1})])):(a(),i("div",At,[s(b,{closable:!1,class:"info"},{template:g(()=>[s(r,{icon:"fa-regular fa-clock",class:"mr-1"}),u(" "+o(e.$t("seedream.status.pending")),1)]),default:g(()=>[l("p",Lt,[s(r,{icon:"fa-solid fa-magic",class:"mr-1"}),u(" "+o(e.$t("seedream.name.taskId"))+": "+o(e.modelValue?.id)+" ",1),s(m,{content:e.modelValue?.id,class:"btn-copy inline-block"},null,8,["content"])])]),_:1})]))])])}const Qt=k(vt,[["render",Jt],["__scopeId","data-v-0dfc6a09"]]),Yt=E({name:"SeedreamRecentPanel",components:{TaskPreview:Qt,BotPlaceholder:Ee,NoTasks:ke,ScrollList:re},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?.()}}}),es={key:0},ts={key:2,class:"w-full h-full flex items-center justify-center"};function ss(e,t,d,c,h,p){const f=n("bot-placeholder"),_=n("task-preview"),r=n("scroll-list"),m=n("no-tasks");return a(),i(y,null,[e.tasks?.items===void 0?(a(),i("div",es,[s(f)])):e.tasks?.items?.length&&e.tasks?.items?.length>0?(a(),w(r,{key:1,ref:"scrollList",class:"tasks h-full w-full overflow-y-auto",loading:e.loading,onReachTop:t[0]||(t[0]=b=>e.$emit("reach-top"))},{default:g(()=>[(a(!0),i(y,null,V(e.tasks?.items,b=>(a(),w(_,{key:b.id,"model-value":b},null,8,["model-value"]))),128))]),_:1},8,["loading"])):$("",!0),e.tasks?.items?.length===0?(a(),i("div",ts,[s(m)])):$("",!0)],64)}const os=k(Yt,[["render",ss]]),as=ne("seedream"),ns=E({name:"SeedreamIndex",components:{ConfigPanel:$t,Layout:Me,RecentPanel:os},inject:["initialized"],data(){return{task:void 0,job:0,loading:!1}},computed:{applicationsLoading(){return this.$store.state.seedream?.status?.getApplications===j.Request},tasksLoading(){return this.$store.state.seedream?.status?.getTasks===j.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 le({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:c}=e||{};console.debug("limit",t,"createdAtMin",d,"createdAtMax",c),await this.$store.dispatch("seedream/getTasks",{limit:t,createdAtMin:d,createdAtMax:c})},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:as},c=this.credential?.token;if(!c){console.error("no token specified");return}I.info(this.$t("seedream.message.startingTask")),ae("seedream",_e.generate(d,{token:c})).then(()=>{I.success(this.$t("seedream.message.startTaskSuccess"))}).catch(h=>{const p=h?.response?.data;p?.error?.code===fe?I.error(this.$t("seedream.message.usedUp")):I.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 rs(e,t,d,c,h,p){const f=n("config-panel"),_=n("recent-panel"),r=n("layout");return a(),w(r,null,{config:g(()=>[s(f,{onGenerate:e.onGenerate},null,8,["onGenerate"])]),result:g(()=>[s(_,{ref:"recentPanel",loading:e.loading,onReachTop:e.onReachTop},null,8,["loading","onReachTop"])]),_:1})}const Qs=k(ns,[["render",rs]]);export{Qs as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{F as I}from"./index.es-DoDsyBxd.js";import{E as F}from"./index-CghmaEfO.js";import{E as W}from"./index-BRqPnPCL.js";import{d as E,H as l,E as i,z as N,C as s,y as _,D as t,q as o,F as n,O as V,N as A,x as y,J as v,I as h,M as J,Q as C}from"./vendor-vue-NSDaktjZ.js";import{G as k,dj as K,dk as Q,dl as X,dm as j,dn as Y,dp as Z,dq as x,dr as ee,bl as B,ds as se,dt as te,du as oe,dv as ne,dw as ae,cr as le,b1 as re,S as G,cs as ie}from"./index-Bwh4uhxH.js";import{I as S,S as ce,l as de}from"./pagination-DuUw6h7L.js";import{E as me}from"./index-Df-EZV4-.js";import{E as O,a as P}from"./index-Bs4QQKmj.js";import{E as q}from"./index-DDM_letT.js";import{p as z}from"./pasteUploadMixin-BurWbGNQ.js";import{I as M}from"./ImagePreview-Bdb0i-UY.js";import{E as H}from"./index-CZoz3sTY.js";import{E as w}from"./index-CD3hMCXK.js";import{C as ue}from"./Consumption-DTqKtl19.js";import{a as pe}from"./price-Dq6B3nmI.js";import{C as fe}from"./CopyToClipboard-CHIfP83C.js";import{V as _e}from"./VideoPlayer-Cy3-ZAWg.js";import{I as he}from"./ImageWrapper-DQ4mprTG.js";import{E as ve}from"./index-CdNNDZgX.js";import{E as $e}from"./index-CLC3F3zh.js";import{E as ge}from"./index-Cdu2CINy.js";import{B as be}from"./BotPlaceholder-teJQgw1R.js";import{N as Ee}from"./NoTasks-Dro6OdxD.js";import{b as ke}from"./errorCode-Cqj9Td_Z.js";import"./use-form-item-CkUvjro6.js";import"./index-BuyEbX8F.js";import"./vendor-axios-B8_nURbH.js";import"./vendor-dayjs-v0j1UNZp.js";import"./vendor-vue-router-Kg6s1a65.js";import"./typescript-C7vXUz1j.js";import"./index-CWWZeClw.js";import"./index-nLjkUfZa.js";import"./index-Boh3hilg.js";import"./strings-beZM2Y-f.js";import"./isEqual-CgVTCLh1.js";import"./_Uint8Array-JndvkAwf.js";import"./castArray-BzRYTmyg.js";import"./debounce-D7YINRDE.js";import"./_baseIteratee-BaTk7Xco.js";import"./index-Dy5k6Duv.js";import"./validator-BYlyQQaq.js";import"./index-DSAaysXY.js";import"./_baseClone-BywLfCY-.js";import"./_initCloneObject-D5P_u5bs.js";import"./vue-plyr-BO2nlN4c.js";import"./index-ByGJSI5C.js";const ye=E({name:"LayoutSeedance",components:{ElDrawer:W,ElButton:F,FontAwesomeIcon:I},data(){return{drawer:!1}}}),we={class:"main flex flex-row flex-1"},Se={class:"config w-[320px] flex-none h-full overflow-y-auto bg-[var(--app-sidebar-bg)] border-r border-[var(--app-border-subtle)]"},Ve={class:"result h-full p-6 flex-1 flex flex-col min-w-0 overflow-x-hidden bg-[var(--app-content-bg)]"};function Le(e,a,m,f,u,g){const d=t("font-awesome-icon"),p=t("el-button"),r=t("el-drawer");return o(),l("div",we,[i("div",Se,[N(e.$slots,"config",{},void 0,!0)]),i("div",Ve,[N(e.$slots,"result",{},void 0,!0)]),s(p,{circle:"",class:"menu",onClick:a[0]||(a[0]=c=>e.drawer=!0)},{default:_(()=>[s(d,{icon:"fa-solid fa-magic"})]),_:1}),s(r,{modelValue:e.drawer,"onUpdate:modelValue":a[1]||(a[1]=c=>e.drawer=c),direction:"ltr","with-header":!1,size:"350px"},{default:_(()=>[N(e.$slots,"config",{},void 0,!0)]),_:3},8,["modelValue"])])}const Te=k(ye,[["render",Le],["__scopeId","data-v-02e4e4b3"]]),Ie="",Fe=E({name:"SeedancePromptInput",components:{ElInput:me,InfoIcon:S},computed:{prompt:{get(){return this.$store.state.seedance?.config?.prompt},set(e){this.$store.commit("seedance/setConfig",{...this.$store.state.seedance?.config,prompt:e})}}},mounted(){this.prompt||(this.prompt=Ie)}}),Ae={class:"field"},Ce={class:"box"},De={class:"title font-bold"};function Re(e,a,m,f,u,g){const d=t("info-icon"),p=t("el-input");return o(),l("div",Ae,[i("div",Ce,[i("h2",De,n(e.$t("seedance.name.prompt")),1),s(d,{content:e.$t("seedance.description.prompt"),class:"info"},null,8,["content"])]),s(p,{modelValue:e.prompt,"onUpdate:modelValue":a[0]||(a[0]=r=>e.prompt=r),rows:4,type:"textarea",class:"prompt",placeholder:e.$t("seedance.placeholder.prompt")},null,8,["modelValue","placeholder"])])}const Ue=k(Fe,[["render",Re],["__scopeId","data-v-865909f4"]]),Ne=E({name:"SeedanceModelSelector",components:{ElSelect:P,ElOption:O,InfoIcon:S},data(){return{options:[{value:Q,label:this.$t("seedance.model.seedance10pro")},{value:X,label:this.$t("seedance.model.seedance10proFast")},{value:j,label:this.$t("seedance.model.seedance15pro")},{value:Y,label:this.$t("seedance.model.seedance10liteT2v")},{value:Z,label:this.$t("seedance.model.seedance10liteI2v")}]}},computed:{value:{get(){return this.$store.state.seedance?.config?.model},set(e){this.$store.commit("seedance/setConfig",{...this.$store.state.seedance?.config,model:e})}}},mounted(){this.value||(this.value=K)}}),Oe={class:"field"},Pe={class:"label"},Me={class:"box"},Ge={class:"title font-bold"};function je(e,a,m,f,u,g){const d=t("info-icon"),p=t("el-option"),r=t("el-select");return o(),l("div",Oe,[i("div",Pe,[i("div",Me,[i("h2",Ge,n(e.$t("seedance.name.model")),1),s(d,{content:e.$t("seedance.description.model"),class:"info"},null,8,["content"])])]),s(r,{modelValue:e.value,"onUpdate:modelValue":a[0]||(a[0]=c=>e.value=c),class:"value",placeholder:e.$t("seedance.placeholder.select")},{default:_(()=>[(o(!0),l(V,null,A(e.options,c=>(o(),y(p,{key:c.value,label:c.label,value:c.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const Be=k(Ne,[["render",je],["__scopeId","data-v-eaa1425a"]]),qe=E({name:"SeedanceDurationSelector",components:{ElSelect:P,ElOption:O,InfoIcon:S},data(){return{options:[{value:2,label:"2s"},{value:3,label:"3s"},{value:4,label:"4s"},{value:5,label:"5s"},{value:6,label:"6s"},{value:7,label:"7s"},{value:8,label:"8s"},{value:9,label:"9s"},{value:10,label:"10s"},{value:11,label:"11s"},{value:12,label:"12s"}]}},computed:{value:{get(){return this.$store.state.seedance?.config?.duration},set(e){this.$store.commit("seedance/setConfig",{...this.$store.state.seedance?.config,duration:e})}}},mounted(){this.value||(this.value=x)}}),ze={class:"field"},He={class:"label"},We={class:"box"},Je={class:"title font-bold"};function Ke(e,a,m,f,u,g){const d=t("info-icon"),p=t("el-option"),r=t("el-select");return o(),l("div",ze,[i("div",He,[i("div",We,[i("h2",Je,n(e.$t("seedance.name.duration")),1),s(d,{content:e.$t("seedance.description.duration"),class:"info"},null,8,["content"])])]),s(r,{modelValue:e.value,"onUpdate:modelValue":a[0]||(a[0]=c=>e.value=c),class:"value",placeholder:e.$t("seedance.placeholder.select")},{default:_(()=>[(o(!0),l(V,null,A(e.options,c=>(o(),y(p,{key:c.value,label:c.label,value:c.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const Qe=k(qe,[["render",Ke],["__scopeId","data-v-5c809a72"]]),Xe=E({name:"SeedanceGenerateAudioSwitch",components:{ElSwitch:q,InfoIcon:S},computed:{isSupported(){return this.$store.state.seedance?.config?.model===j},value:{get(){return this.$store.state.seedance?.config?.generate_audio??!1},set(e){this.$store.commit("seedance/setConfig",{...this.$store.state.seedance?.config,generate_audio:e})}}},watch:{isSupported(e){!e&&this.value&&(this.value=!1)}},mounted(){this.value===void 0&&(this.value=ee)}}),Ye={key:0,class:"field"},Ze={class:"label"},xe={class:"box"},es={class:"title font-bold"},ss={class:"value"};function ts(e,a,m,f,u,g){const d=t("info-icon"),p=t("el-switch");return e.isSupported?(o(),l("div",Ye,[i("div",Ze,[i("div",xe,[i("h2",es,n(e.$t("seedance.name.generateAudio")),1),s(d,{content:e.$t("seedance.description.generateAudio"),class:"info"},null,8,["content"])])]),i("div",ss,[s(p,{modelValue:e.value,"onUpdate:modelValue":a[0]||(a[0]=r=>e.value=r),"inline-prompt":"","active-text":e.$t("seedance.button.on"),"inactive-text":e.$t("seedance.button.off")},null,8,["modelValue","active-text","inactive-text"])])])):v("",!0)}const os=k(Xe,[["render",ts],["__scopeId","data-v-8d716dcc"]]),ns=E({name:"SeedanceFirstFrameImage",components:{ElUpload:H,ElButton:F,InfoIcon:S,FontAwesomeIcon:I,ImagePreview:M},mixins:[z],data(){return{fileList:[],uploadUrl:B()+"/api/v1/files/"}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},urls(){return this.fileList.map(e=>e?.response?.file_url)}},methods:{onExceed(){w.warning(this.$t("seedance.message.uploadExceed"))},onError(){w.error(this.$t("seedance.message.uploadError"))},onSetFirstFrameUrl(){const e=this.urls?.[0],m=(this.$store.state.seedance?.config?.images||[]).filter(f=>f?.role!=="first_frame");e&&m.push({url:e,role:"first_frame"}),this.$store.commit("seedance/setConfig",{...this.$store.state.seedance?.config,images:m.length>0?m:void 0})},async onSuccess(){this.onSetFirstFrameUrl()},async onRemove(){this.onSetFirstFrameUrl()}}}),as={class:"relative"},ls={class:"flex justify-between"},rs={class:"flex justify-start items-center"},is={class:"text-sm font-bold"};function cs(e,a,m,f,u,g){const d=t("info-icon"),p=t("image-preview"),r=t("font-awesome-icon"),c=t("el-button"),b=t("el-upload");return o(),l("div",as,[i("div",ls,[i("div",rs,[i("span",is,n(e.$t("seedance.name.firstFrame")),1),s(d,{content:e.$t("seedance.description.firstFrame")},null,8,["content"])])]),s(b,{ref:"uploader","file-list":e.fileList,"onUpdate:fileList":a[0]||(a[0]=$=>e.fileList=$),name:"file",accept:".png,.jpg,.jpeg,.gif,.bmp,.webp",limit:1,class:"upload-wrapper",multiple:!1,action:e.uploadUrl,"list-type":"picture","on-exceed":e.onExceed,"on-error":e.onError,"on-success":e.onSuccess,"on-remove":e.onRemove,headers:e.headers},{file:_(({file:$})=>[$.url&&$.percentage!==void 0?(o(),y(p,{key:0,url:$.url,name:$.name,percentage:$.percentage,onRemove:L=>e.fileList.splice(e.fileList.indexOf($),1)},null,8,["url","name","percentage","onRemove"])):v("",!0)]),default:_(()=>[s(c,{round:"",type:"primary",size:"small",class:"btn btn-upload"},{default:_(()=>[s(r,{icon:"fa-solid fa-upload",class:"icon mr-1"}),h(" "+n(e.$t("seedance.button.upload")),1)]),_:1})]),_:1},8,["file-list","action","on-exceed","on-error","on-success","on-remove","headers"])])}const ds=k(ns,[["render",cs],["__scopeId","data-v-5294baf8"]]),ms=E({name:"SeedanceLastFrameImage",components:{ElUpload:H,ElButton:F,ImagePreview:M,InfoIcon:S,FontAwesomeIcon:I},mixins:[z],data(){return{fileList:[],uploadUrl:B()+"/api/v1/files/"}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},urls(){return this.fileList.map(e=>e?.response?.file_url)}},methods:{onExceed(){w.warning(this.$t("seedance.message.uploadExceed"))},onError(){w.error(this.$t("seedance.message.uploadError"))},onSetLastFrameUrl(){const e=this.urls?.[0],m=(this.$store.state.seedance?.config?.images||[]).filter(f=>f?.role!=="last_frame");e&&m.push({url:e,role:"last_frame"}),this.$store.commit("seedance/setConfig",{...this.$store.state.seedance?.config,images:m.length>0?m:void 0})},async onSuccess(){this.onSetLastFrameUrl()},async onRemove(){this.onSetLastFrameUrl()}}}),us={class:"relative"},ps={class:"flex justify-between"},fs={class:"flex justify-start items-center"},_s={class:"text-sm font-bold"};function hs(e,a,m,f,u,g){const d=t("info-icon"),p=t("image-preview"),r=t("font-awesome-icon"),c=t("el-button"),b=t("el-upload");return o(),l("div",us,[i("div",ps,[i("div",fs,[i("span",_s,n(e.$t("seedance.name.lastFrame")),1),s(d,{content:e.$t("seedance.description.lastFrame")},null,8,["content"])])]),s(b,{ref:"uploader","file-list":e.fileList,"onUpdate:fileList":a[0]||(a[0]=$=>e.fileList=$),name:"file",accept:".png,.jpg,.jpeg,.gif,.bmp,.webp",limit:1,class:"upload-wrapper",multiple:!1,action:e.uploadUrl,"list-type":"picture","on-exceed":e.onExceed,"on-error":e.onError,"on-success":e.onSuccess,"on-remove":e.onRemove,headers:e.headers},{file:_(({file:$})=>[$.url&&$.percentage!==void 0?(o(),y(p,{key:0,url:$.url,name:$.name,percentage:$.percentage,onRemove:L=>e.fileList.splice(e.fileList.indexOf($),1)},null,8,["url","name","percentage","onRemove"])):v("",!0)]),default:_(()=>[s(c,{round:"",type:"primary",size:"small",class:"btn btn-upload"},{default:_(()=>[s(r,{icon:"fa-solid fa-upload",class:"icon mr-1"}),h(" "+n(e.$t("seedance.button.upload")),1)]),_:1})]),_:1},8,["file-list","action","on-exceed","on-error","on-success","on-remove","headers"])])}const vs=k(ms,[["render",hs],["__scopeId","data-v-f423739f"]]),$s=E({name:"SeedanceServiceTierSelector",components:{ElSelect:P,ElOption:O,InfoIcon:S},data(){return{options:[{value:te,label:this.$t("seedance.serviceTier.default")},{value:oe,label:this.$t("seedance.serviceTier.flex")}]}},computed:{value:{get(){return this.$store.state.seedance?.config?.service_tier},set(e){this.$store.commit("seedance/setConfig",{...this.$store.state.seedance?.config,service_tier:e})}}},mounted(){this.value||(this.value=se)}}),gs={class:"field"},bs={class:"label"},Es={class:"box"},ks={class:"title font-bold"};function ys(e,a,m,f,u,g){const d=t("info-icon"),p=t("el-option"),r=t("el-select");return o(),l("div",gs,[i("div",bs,[i("div",Es,[i("h2",ks,n(e.$t("seedance.name.serviceTier")),1),s(d,{content:e.$t("seedance.description.serviceTier"),class:"info"},null,8,["content"])])]),s(r,{modelValue:e.value,"onUpdate:modelValue":a[0]||(a[0]=c=>e.value=c),class:"value",placeholder:e.$t("seedance.placeholder.select")},{default:_(()=>[(o(!0),l(V,null,A(e.options,c=>(o(),y(p,{key:c.value,label:c.label,value:c.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const ws=k($s,[["render",ys],["__scopeId","data-v-cc938de2"]]),Ss=E({name:"SeedanceReturnLastFrameSwitch",components:{ElSwitch:q,InfoIcon:S},computed:{value:{get(){return this.$store.state.seedance?.config?.return_last_frame},set(e){this.$store.commit("seedance/setConfig",{...this.$store.state.seedance?.config,return_last_frame:e})}}},mounted(){this.value===void 0&&(this.value=ne)}}),Vs={class:"field"},Ls={class:"label"},Ts={class:"box"},Is={class:"title font-bold"},Fs={class:"value"};function As(e,a,m,f,u,g){const d=t("info-icon"),p=t("el-switch");return o(),l("div",Vs,[i("div",Ls,[i("div",Ts,[i("h2",Is,n(e.$t("seedance.name.returnLastFrame")),1),s(d,{content:e.$t("seedance.description.returnLastFrame"),class:"info"},null,8,["content"])])]),i("div",Fs,[s(p,{modelValue:e.value,"onUpdate:modelValue":a[0]||(a[0]=r=>e.value=r),"inline-prompt":"","active-text":e.$t("seedance.button.on"),"inactive-text":e.$t("seedance.button.off")},null,8,["modelValue","active-text","inactive-text"])])])}const Cs=k(Ss,[["render",As],["__scopeId","data-v-cd179b1c"]]),Ds=E({name:"SeedanceConfigPanel",components:{ElButton:F,FontAwesomeIcon:I,PromptInput:Ue,ModelSelector:Be,DurationSelector:Qe,GenerateAudioSwitch:os,ServiceTierSelector:ws,ReturnLastFrameSwitch:Cs,FirstFrameImage:ds,LastFrameImage:vs,Consumption:ue},emits:["generate"],computed:{config(){return this.$store.state.seedance?.config},consumption(){return pe(this.config,this.service?.cost)},service(){return this.$store.state.seedance?.service}},methods:{onGenerate(){this.$emit("generate")}}}),Rs={class:"flex flex-col h-full"},Us={class:"flex-1 overflow-y-auto p-5"},Ns={class:"flex flex-col items-center justify-center px-5 pb-5"};function Os(e,a,m,f,u,g){const d=t("prompt-input"),p=t("model-selector"),r=t("duration-selector"),c=t("generate-audio-switch"),b=t("service-tier-selector"),$=t("return-last-frame-switch"),L=t("first-frame-image"),D=t("last-frame-image"),R=t("consumption"),T=t("font-awesome-icon"),U=t("el-button");return o(),l("div",Rs,[i("div",Us,[s(d,{class:"mb-4"}),s(p,{class:"mb-4"}),s(r,{class:"mb-4"}),s(c,{class:"mb-4"}),s(b,{class:"mb-4"}),s($,{class:"mb-4"}),s(L,{class:"mb-2"}),s(D,{class:"mb-2"})]),i("div",Ns,[s(R,{value:e.consumption,service:e.service},null,8,["value","service"]),s(U,{type:"primary",class:"btn w-full",round:"",onClick:e.onGenerate},{default:_(()=>[s(T,{icon:"fa-solid fa-magic",class:"mr-2"}),h(" "+n(e.$t("seedance.button.generate")),1)]),_:1},8,["onClick"])])])}const Ps=k(Ds,[["render",Os]]),Ms=E({name:"SeedanceTaskPreview",components:{ElImage:ge,CopyToClipboard:fe,FontAwesomeIcon:I,ElAlert:$e,VideoPlayer:_e,ElTooltip:ve,ElButton:F,ImageWrapper:he,ImagePreview:M},props:{modelValue:{type:Object,required:!0}},data(){return{seedanceLogo:ae}},computed:{video(){return this.modelValue?.response?.data},referenceImages(){const e=this.modelValue?.request?.images;if(!Array.isArray(e))return[];const a=[],m=e.find(u=>u?.role==="first_frame");m?.url&&a.push({url:m.url,name:"first-frame"});const f=e.find(u=>u?.role==="last_frame");return f?.url&&a.push({url:f.url,name:"last-frame"}),e.forEach((u,g)=>{u?.url&&u.role!=="first_frame"&&u.role!=="last_frame"&&a.push({url:u.url,name:u.role||`image-${g}`})}),a}},methods:{onDownload(e){window.open(e,"_blank")}}}),Gs={class:"preview"},js={class:"left"},Bs={class:"main"},qs={class:"bot"},zs={class:"datetime"},Hs={class:"info"},Ws={key:0,class:"flex justify-start items-center gap-2 mt-2 w-full overflow-x-auto"},Js={key:1,class:"prompt mt-2"},Ks={key:0},Qs={key:1},Xs={key:0,class:C({content:!0})},Ys={class:"text-[var(--el-text-color-regular)] text-xs mb-0"},Zs={key:1,class:C({content:!0})},xs={key:0,class:"mb-4"},et={key:1,class:"mb-4"},st={key:2,class:C({operations:!0,"mt-2":!0,"mb-2":!0})},tt={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},ot={key:1,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},nt={key:2,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},at={key:0},lt={key:1},rt={key:3,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},it={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},ct={key:4,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},dt={key:5,class:"text-[var(--el-text-color-regular)] text-xs mb-0"},mt={key:2,class:C({content:!0})},ut={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},pt={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},ft={key:1,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},_t={key:2,class:"text-[var(--el-text-color-regular)] text-xs mb-0"},ht={key:3,class:C({content:!0})},vt={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"};function gt(e,a,m,f,u,g){const d=t("el-image"),p=t("image-preview"),r=t("font-awesome-icon"),c=t("copy-to-clipboard"),b=t("el-alert"),$=t("video-player"),L=t("image-wrapper"),D=t("el-button"),R=t("el-tooltip");return o(),l("div",Gs,[i("div",js,[s(d,{src:e.seedanceLogo,class:"avatar"},null,8,["src"])]),i("div",Bs,[i("div",qs,[h(n(e.$t("seedance.name.seedanceBot"))+" ",1),i("span",zs,n(e.$dayjs.format(""+new Date(parseFloat((e.modelValue?.created_at||"").toString())*1e3))),1)]),i("div",Hs,[e.referenceImages.length>0?(o(),l("div",Ws,[(o(!0),l(V,null,A(e.referenceImages,(T,U)=>(o(),y(p,{key:U,url:T.url,name:T.name,closable:!1},null,8,["url","name"]))),128))])):v("",!0),e.modelValue?.request?.prompt?(o(),l("p",Js,[h(n(e.modelValue?.request?.prompt)+" ",1),e.modelValue?.response?e.video?.status==="processing"||e.video?.status==="pending"?(o(),l("span",Qs," - ("+n(e.$t("seedance.status.processing"))+") ",1)):v("",!0):(o(),l("span",Ks," - ("+n(e.$t("seedance.status.pending"))+") ",1))])):v("",!0)]),e.modelValue?.response?e.modelValue?.response?.success===!0?(o(),l("div",Zs,[e.video?.video_url?(o(),l("div",xs,[s($,{src:e.video?.video_url},null,8,["src"])])):v("",!0),e.video?.last_frame_url?(o(),l("div",et,[s(L,{src:e.video?.last_frame_url,"raw-src":e.video?.last_frame_url},null,8,["src","raw-src"])])):v("",!0),e.video?.video_url?(o(),l("div",st,[s(R,{class:"box-item",effect:"dark",content:e.$t("seedance.message.downloadVideo"),placement:"top-start"},{default:_(()=>[s(D,{type:"info",size:"small",class:"btn-action",onClick:a[0]||(a[0]=J(T=>e.onDownload(e.video?.video_url),["stop"]))},{default:_(()=>[h(n(e.$t("seedance.button.download")),1)]),_:1})]),_:1},8,["content"])])):v("",!0),s(b,{closable:!1,class:"mt-2 success"},{default:_(()=>[e.modelValue?.request?.model?(o(),l("p",tt,[s(r,{icon:"fa-solid fa-cube",class:"mr-1"}),h(" "+n(e.$t("seedance.name.model"))+": "+n(e.modelValue?.request?.model),1)])):v("",!0),e.video?.duration?(o(),l("p",ot,[s(r,{icon:"fa-solid fa-clock",class:"mr-1"}),h(" "+n(e.$t("seedance.name.duration"))+": "+n(e.video?.duration)+"s ",1)])):v("",!0),e.video?.resolution?(o(),l("p",nt,[s(r,{icon:"fa-solid fa-expand",class:"mr-1"}),h(" "+n(e.$t("seedance.name.resolution"))+": "+n(e.video?.resolution)+" ",1),e.video?.ratio?(o(),l("span",at," · "+n(e.video?.ratio),1)):v("",!0),e.video?.framespersecond?(o(),l("span",lt," · "+n(e.video?.framespersecond)+"fps",1)):v("",!0)])):v("",!0),e.modelValue?.request?.generate_audio?(o(),l("p",rt,[s(r,{icon:"fa-solid fa-volume-up",class:"mr-1"}),h(" "+n(e.$t("seedance.name.generateAudio"))+": "+n(e.$t("seedance.button.on")),1)])):v("",!0),i("p",it,[s(r,{icon:"fa-solid fa-magic",class:"mr-1"}),h(" "+n(e.$t("seedance.name.taskId"))+": "+n(e.modelValue?.id)+" ",1),s(c,{content:e.modelValue?.id,class:"btn-copy inline-block"},null,8,["content"])]),e.modelValue?.elapsed?(o(),l("p",ct,[s(r,{icon:"fa-solid fa-clock",class:"mr-1"}),h(" "+n(e.$t("seedance.name.elapsed"))+": "+n(e.modelValue?.elapsed?.toFixed(2))+"s ",1)])):v("",!0),e.modelValue?.response?.trace_id?(o(),l("p",dt,[s(r,{icon:"fa-solid fa-hashtag",class:"mr-1"}),h(" "+n(e.$t("seedance.name.traceId"))+": "+n(e.modelValue?.response?.trace_id)+" ",1),s(c,{content:e.modelValue?.response?.trace_id,class:"btn-copy inline-block"},null,8,["content"])])):v("",!0)]),_:1})])):e.modelValue?.response?.success===!1?(o(),l("div",mt,[s(b,{closable:!1,class:"failure"},{template:_(()=>[s(r,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),h(" "+n(e.$t("seedance.name.failure")),1)]),default:_(()=>[i("p",ut,[s(r,{icon:"fa-solid fa-magic",class:"mr-1"}),h(" "+n(e.$t("seedance.name.taskId"))+": "+n(e.modelValue?.id)+" ",1),s(c,{content:e.modelValue?.id,class:"btn-copy inline-block"},null,8,["content"])]),e.modelValue?.response?.error?.message?(o(),l("p",pt,[s(r,{icon:"fa-solid fa-circle-info",class:"mr-1"}),h(" "+n(e.$t("seedance.name.failureReason"))+": "+n(e.modelValue?.response?.error?.message)+" ",1),s(c,{content:e.modelValue?.response?.error?.message,class:"btn-copy inline-block"},null,8,["content"])])):v("",!0),e.modelValue?.elapsed?(o(),l("p",ft,[s(r,{icon:"fa-solid fa-clock",class:"mr-1"}),h(" "+n(e.$t("seedance.name.elapsed"))+": "+n(e.modelValue?.elapsed?.toFixed(2))+"s ",1)])):v("",!0),e.modelValue?.response?.trace_id?(o(),l("p",_t,[s(r,{icon:"fa-solid fa-hashtag",class:"mr-1"}),h(" "+n(e.$t("seedance.name.traceId"))+": "+n(e.modelValue?.response?.trace_id)+" ",1),s(c,{content:e.modelValue?.response?.trace_id,class:"btn-copy inline-block"},null,8,["content"])])):v("",!0)]),_:1})])):(o(),l("div",ht,[s(b,{closable:!1,class:"info"},{template:_(()=>[s(r,{icon:"fa-solid fa-circle-info",class:"mr-1"}),h(" "+n(e.$t("seedance.name.status")),1)]),default:_(()=>[i("p",vt,[s(r,{icon:"fa-solid fa-magic",class:"mr-1"}),h(" "+n(e.$t("seedance.name.taskId"))+": "+n(e.modelValue?.id)+" ",1),s(c,{content:e.modelValue?.id,class:"btn-copy inline-block"},null,8,["content"])]),e.modelValue?.response?.trace_id?(o(),l("p",$t,[s(r,{icon:"fa-solid fa-hashtag",class:"mr-1"}),h(" "+n(e.$t("seedance.name.traceId"))+": "+n(e.modelValue?.response?.trace_id)+" ",1),s(c,{content:e.modelValue?.response?.trace_id,class:"btn-copy inline-block"},null,8,["content"])])):v("",!0)]),_:1})])):(o(),l("div",Xs,[s(b,{closable:!1,class:"info"},{template:_(()=>[s(r,{icon:"fa-regular fa-clock",class:"mr-1"}),h(" "+n(e.$t("seedance.status.pending")),1)]),default:_(()=>[i("p",Ys,[s(r,{icon:"fa-solid fa-magic",class:"mr-1"}),h(" "+n(e.$t("seedance.name.taskId"))+": "+n(e.modelValue?.id)+" ",1),s(c,{content:e.modelValue?.id,class:"btn-copy inline-block"},null,8,["content"])])]),_:1})]))])])}const bt=k(Ms,[["render",gt],["__scopeId","data-v-6b9d75ed"]]),Et=E({name:"SeedanceRecentPanel",components:{TaskPreview:bt,BotPlaceholder:be,NoTasks:Ee,ScrollList:ce},props:{loading:{type:Boolean,default:!1}},emits:["reach-top"],computed:{tasks(){return{...this.$store.state.seedance?.tasks,items:this.$store.state.seedance?.tasks?.items?.slice()}}},methods:{getScrollElement(){return this.$refs.scrollList?.getScrollElement?.()}}}),kt={key:0},yt={key:2,class:"w-full h-full flex items-center justify-center"};function wt(e,a,m,f,u,g){const d=t("bot-placeholder"),p=t("task-preview"),r=t("scroll-list"),c=t("no-tasks");return o(),l(V,null,[e.tasks?.items===void 0?(o(),l("div",kt,[s(d)])):e.tasks?.items?.length&&e.tasks?.items?.length>0?(o(),y(r,{key:1,ref:"scrollList",class:"tasks w-full h-full overflow-y-auto",loading:e.loading,onReachTop:a[0]||(a[0]=b=>e.$emit("reach-top"))},{default:_(()=>[(o(!0),l(V,null,A(e.tasks?.items,b=>(o(),y(p,{key:b.id,"model-value":b},null,8,["model-value"]))),128))]),_:1},8,["loading"])):v("",!0),e.tasks?.items?.length===0?(o(),l("div",yt,[s(c)])):v("",!0)],64)}const St=k(Et,[["render",wt]]),Vt=ie("seedance"),Lt=E({name:"SeedanceIndex",components:{ConfigPanel:Ps,Layout:Te,RecentPanel:St},inject:["initialized"],data(){return{task:void 0,job:0,loadingMore:!1,fetchingTasks:!1}},computed:{applicationsLoading(){return this.$store.state.seedance?.status?.getApplications===G.Request},tasksLoading(){return this.$store.state.seedance?.status?.getTasks===G.Request||this.fetchingTasks},credential(){return this.$store.state.seedance?.credential},config(){return this.$store.state.seedance?.config},tasks(){return this.$store.state.seedance?.tasks}},watch:{initialized:{async handler(e){e&&(await this.onGetTasks(),await this.onScrollDown(),this.job=window.setInterval(()=>{this.onGetTasks()},5e3))},immediate:!0}},async mounted(){await this.onGetService()},async unmounted(){window.clearInterval(this.job)},methods:{async onReachTop(){await de({tasks:this.tasks,loading:this.loadingMore,setLoading:e=>this.loadingMore=e,isBlocked:()=>this.tasksLoading||this.applicationsLoading,fetch:e=>this.onGetTasks({createdAtMax:e}),getScrollElement:()=>this.getTasksScrollElement()})},async onGetService(){await this.$store.dispatch("seedance/getService")},async onScrollDown(){await this.$nextTick();const e=this.getTasksScrollElement();e&&(e.scrollTop=e.scrollHeight)},async onGetTasks(e){if(this.applicationsLoading||this.fetchingTasks)return;const{limit:a=5,createdAtMin:m,createdAtMax:f}=e||{};this.fetchingTasks=!0;try{await this.$store.dispatch("seedance/getTasks",{limit:a,createdAtMin:m,createdAtMax:f})}finally{this.fetchingTasks=!1}},async onGenerate(){const e={...this.config||{}};if(typeof e?.prompt=="string"&&(e.prompt=e.prompt.trim(),e.prompt||delete e.prompt),Array.isArray(e?.images)){e.images=e.images.filter(d=>!!d?.url);const u=e.images.some(d=>d?.role==="first_frame"),g=e.images.some(d=>d?.role==="last_frame");!u&&g&&(e.images=e.images.map(d=>d?.role==="last_frame"?{...d,role:"first_frame"}:d))}!(Array.isArray(e?.images)&&e.images.length>0)&&"images"in e&&delete e.images;const m={...e,callback_url:Vt},f=this.credential?.token;if(!f){console.error("no token specified");return}w.info(this.$t("seedance.message.startingTask")),le("seedance",re.generate(m,{token:f})).then(()=>{w.success(this.$t("seedance.message.startTaskSuccess"))}).catch(u=>{const g=u?.response?.data;g?.error?.code===ke?w.error(this.$t("seedance.message.usedUp")):w.error(this.$t("seedance.message.startTaskFailed")+(g?.error?.message||""))}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})},getTasksScrollElement(){return this.$refs.recentPanel?.getScrollElement?.()}}});function Tt(e,a,m,f,u,g){const d=t("config-panel"),p=t("recent-panel"),r=t("layout");return o(),y(r,null,{config:_(()=>[s(d,{onGenerate:e.onGenerate},null,8,["onGenerate"])]),result:_(()=>[s(p,{ref:"recentPanel",loading:e.loadingMore,onReachTop:e.onReachTop},null,8,["loading","onReachTop"])]),_:1})}const ko=k(Lt,[["render",Tt]]);export{ko as default};
|
|
1
|
+
import{F as I}from"./index.es-C_WLtS18.js";import{E as F}from"./index-DTbz6TSn.js";import{E as W}from"./index-SAsUj7Pk.js";import{d as E,H as l,E as i,z as N,C as s,y as _,D as t,q as o,F as n,O as V,N as A,x as y,J as v,I as h,M as J,Q as C}from"./vendor-vue-NSDaktjZ.js";import{G as k,dj as K,dk as Q,dl as X,dm as j,dn as Y,dp as Z,dq as x,dr as ee,bl as B,ds as se,dt as te,du as oe,dv as ne,dw as ae,cr as le,b1 as re,S as G,cs as ie}from"./index-BzRVav2J.js";import{I as S,S as ce,l as de}from"./pagination-mZXKDVMd.js";import{E as me}from"./index-D5ReSuuO.js";import{E as O,a as P}from"./index-CmMnj3Xx.js";import{E as q}from"./index-XpcsQaS3.js";import{p as z}from"./pasteUploadMixin-BurWbGNQ.js";import{I as M}from"./ImagePreview-CATcaSwT.js";import{E as H}from"./index-Dt0xHpag.js";import{E as w}from"./index-CMTPLs4z.js";import{C as ue}from"./Consumption-CL3WRYVN.js";import{a as pe}from"./price-Cr67gCty.js";import{C as fe}from"./CopyToClipboard-TC6O9s7V.js";import{V as _e}from"./VideoPlayer-c9dt-3yZ.js";import{I as he}from"./ImageWrapper-C-2wIJYB.js";import{E as ve}from"./index--MBG5Bxw.js";import{E as $e}from"./index-De-wy4Tc.js";import{E as ge}from"./index-C3GoyrG4.js";import{B as be}from"./BotPlaceholder-BqeR06y3.js";import{N as Ee}from"./NoTasks-C3t8bmtA.js";import{b as ke}from"./errorCode-Cqj9Td_Z.js";import"./use-form-item-B5rZE33a.js";import"./index-BuyEbX8F.js";import"./vendor-axios-B8_nURbH.js";import"./vendor-dayjs-v0j1UNZp.js";import"./vendor-vue-router-Kg6s1a65.js";import"./typescript-D6sat8h_.js";import"./index-Cjg_OuWc.js";import"./index-0u_G2kSj.js";import"./index-CD8qf4tY.js";import"./strings-beZM2Y-f.js";import"./isEqual-yYS0dh2f.js";import"./_Uint8Array-BP4C5DZm.js";import"./castArray-YvIMFTc9.js";import"./debounce-BpWk7nuI.js";import"./_baseIteratee-lG75D4iw.js";import"./index-DLlZmkfC.js";import"./validator-DGv8iqeP.js";import"./index-BD55w4j0.js";import"./_baseClone-Bmu_sg3j.js";import"./_initCloneObject-C-Q8oqTt.js";import"./vue-plyr-BO2nlN4c.js";import"./index-CTspmpeX.js";const ye=E({name:"LayoutSeedance",components:{ElDrawer:W,ElButton:F,FontAwesomeIcon:I},data(){return{drawer:!1}}}),we={class:"main flex flex-row flex-1"},Se={class:"config w-[320px] flex-none h-full overflow-y-auto bg-[var(--app-sidebar-bg)] border-r border-[var(--app-border-subtle)]"},Ve={class:"result h-full p-6 flex-1 flex flex-col min-w-0 overflow-x-hidden bg-[var(--app-content-bg)]"};function Le(e,a,m,f,u,g){const d=t("font-awesome-icon"),p=t("el-button"),r=t("el-drawer");return o(),l("div",we,[i("div",Se,[N(e.$slots,"config",{},void 0,!0)]),i("div",Ve,[N(e.$slots,"result",{},void 0,!0)]),s(p,{circle:"",class:"menu",onClick:a[0]||(a[0]=c=>e.drawer=!0)},{default:_(()=>[s(d,{icon:"fa-solid fa-magic"})]),_:1}),s(r,{modelValue:e.drawer,"onUpdate:modelValue":a[1]||(a[1]=c=>e.drawer=c),direction:"ltr","with-header":!1,size:"350px"},{default:_(()=>[N(e.$slots,"config",{},void 0,!0)]),_:3},8,["modelValue"])])}const Te=k(ye,[["render",Le],["__scopeId","data-v-02e4e4b3"]]),Ie="",Fe=E({name:"SeedancePromptInput",components:{ElInput:me,InfoIcon:S},computed:{prompt:{get(){return this.$store.state.seedance?.config?.prompt},set(e){this.$store.commit("seedance/setConfig",{...this.$store.state.seedance?.config,prompt:e})}}},mounted(){this.prompt||(this.prompt=Ie)}}),Ae={class:"field"},Ce={class:"box"},De={class:"title font-bold"};function Re(e,a,m,f,u,g){const d=t("info-icon"),p=t("el-input");return o(),l("div",Ae,[i("div",Ce,[i("h2",De,n(e.$t("seedance.name.prompt")),1),s(d,{content:e.$t("seedance.description.prompt"),class:"info"},null,8,["content"])]),s(p,{modelValue:e.prompt,"onUpdate:modelValue":a[0]||(a[0]=r=>e.prompt=r),rows:4,type:"textarea",class:"prompt",placeholder:e.$t("seedance.placeholder.prompt")},null,8,["modelValue","placeholder"])])}const Ue=k(Fe,[["render",Re],["__scopeId","data-v-865909f4"]]),Ne=E({name:"SeedanceModelSelector",components:{ElSelect:P,ElOption:O,InfoIcon:S},data(){return{options:[{value:Q,label:this.$t("seedance.model.seedance10pro")},{value:X,label:this.$t("seedance.model.seedance10proFast")},{value:j,label:this.$t("seedance.model.seedance15pro")},{value:Y,label:this.$t("seedance.model.seedance10liteT2v")},{value:Z,label:this.$t("seedance.model.seedance10liteI2v")}]}},computed:{value:{get(){return this.$store.state.seedance?.config?.model},set(e){this.$store.commit("seedance/setConfig",{...this.$store.state.seedance?.config,model:e})}}},mounted(){this.value||(this.value=K)}}),Oe={class:"field"},Pe={class:"label"},Me={class:"box"},Ge={class:"title font-bold"};function je(e,a,m,f,u,g){const d=t("info-icon"),p=t("el-option"),r=t("el-select");return o(),l("div",Oe,[i("div",Pe,[i("div",Me,[i("h2",Ge,n(e.$t("seedance.name.model")),1),s(d,{content:e.$t("seedance.description.model"),class:"info"},null,8,["content"])])]),s(r,{modelValue:e.value,"onUpdate:modelValue":a[0]||(a[0]=c=>e.value=c),class:"value",placeholder:e.$t("seedance.placeholder.select")},{default:_(()=>[(o(!0),l(V,null,A(e.options,c=>(o(),y(p,{key:c.value,label:c.label,value:c.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const Be=k(Ne,[["render",je],["__scopeId","data-v-eaa1425a"]]),qe=E({name:"SeedanceDurationSelector",components:{ElSelect:P,ElOption:O,InfoIcon:S},data(){return{options:[{value:2,label:"2s"},{value:3,label:"3s"},{value:4,label:"4s"},{value:5,label:"5s"},{value:6,label:"6s"},{value:7,label:"7s"},{value:8,label:"8s"},{value:9,label:"9s"},{value:10,label:"10s"},{value:11,label:"11s"},{value:12,label:"12s"}]}},computed:{value:{get(){return this.$store.state.seedance?.config?.duration},set(e){this.$store.commit("seedance/setConfig",{...this.$store.state.seedance?.config,duration:e})}}},mounted(){this.value||(this.value=x)}}),ze={class:"field"},He={class:"label"},We={class:"box"},Je={class:"title font-bold"};function Ke(e,a,m,f,u,g){const d=t("info-icon"),p=t("el-option"),r=t("el-select");return o(),l("div",ze,[i("div",He,[i("div",We,[i("h2",Je,n(e.$t("seedance.name.duration")),1),s(d,{content:e.$t("seedance.description.duration"),class:"info"},null,8,["content"])])]),s(r,{modelValue:e.value,"onUpdate:modelValue":a[0]||(a[0]=c=>e.value=c),class:"value",placeholder:e.$t("seedance.placeholder.select")},{default:_(()=>[(o(!0),l(V,null,A(e.options,c=>(o(),y(p,{key:c.value,label:c.label,value:c.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const Qe=k(qe,[["render",Ke],["__scopeId","data-v-5c809a72"]]),Xe=E({name:"SeedanceGenerateAudioSwitch",components:{ElSwitch:q,InfoIcon:S},computed:{isSupported(){return this.$store.state.seedance?.config?.model===j},value:{get(){return this.$store.state.seedance?.config?.generate_audio??!1},set(e){this.$store.commit("seedance/setConfig",{...this.$store.state.seedance?.config,generate_audio:e})}}},watch:{isSupported(e){!e&&this.value&&(this.value=!1)}},mounted(){this.value===void 0&&(this.value=ee)}}),Ye={key:0,class:"field"},Ze={class:"label"},xe={class:"box"},es={class:"title font-bold"},ss={class:"value"};function ts(e,a,m,f,u,g){const d=t("info-icon"),p=t("el-switch");return e.isSupported?(o(),l("div",Ye,[i("div",Ze,[i("div",xe,[i("h2",es,n(e.$t("seedance.name.generateAudio")),1),s(d,{content:e.$t("seedance.description.generateAudio"),class:"info"},null,8,["content"])])]),i("div",ss,[s(p,{modelValue:e.value,"onUpdate:modelValue":a[0]||(a[0]=r=>e.value=r),"inline-prompt":"","active-text":e.$t("seedance.button.on"),"inactive-text":e.$t("seedance.button.off")},null,8,["modelValue","active-text","inactive-text"])])])):v("",!0)}const os=k(Xe,[["render",ts],["__scopeId","data-v-8d716dcc"]]),ns=E({name:"SeedanceFirstFrameImage",components:{ElUpload:H,ElButton:F,InfoIcon:S,FontAwesomeIcon:I,ImagePreview:M},mixins:[z],data(){return{fileList:[],uploadUrl:B()+"/api/v1/files/"}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},urls(){return this.fileList.map(e=>e?.response?.file_url)}},methods:{onExceed(){w.warning(this.$t("seedance.message.uploadExceed"))},onError(){w.error(this.$t("seedance.message.uploadError"))},onSetFirstFrameUrl(){const e=this.urls?.[0],m=(this.$store.state.seedance?.config?.images||[]).filter(f=>f?.role!=="first_frame");e&&m.push({url:e,role:"first_frame"}),this.$store.commit("seedance/setConfig",{...this.$store.state.seedance?.config,images:m.length>0?m:void 0})},async onSuccess(){this.onSetFirstFrameUrl()},async onRemove(){this.onSetFirstFrameUrl()}}}),as={class:"relative"},ls={class:"flex justify-between"},rs={class:"flex justify-start items-center"},is={class:"text-sm font-bold"};function cs(e,a,m,f,u,g){const d=t("info-icon"),p=t("image-preview"),r=t("font-awesome-icon"),c=t("el-button"),b=t("el-upload");return o(),l("div",as,[i("div",ls,[i("div",rs,[i("span",is,n(e.$t("seedance.name.firstFrame")),1),s(d,{content:e.$t("seedance.description.firstFrame")},null,8,["content"])])]),s(b,{ref:"uploader","file-list":e.fileList,"onUpdate:fileList":a[0]||(a[0]=$=>e.fileList=$),name:"file",accept:".png,.jpg,.jpeg,.gif,.bmp,.webp",limit:1,class:"upload-wrapper",multiple:!1,action:e.uploadUrl,"list-type":"picture","on-exceed":e.onExceed,"on-error":e.onError,"on-success":e.onSuccess,"on-remove":e.onRemove,headers:e.headers},{file:_(({file:$})=>[$.url&&$.percentage!==void 0?(o(),y(p,{key:0,url:$.url,name:$.name,percentage:$.percentage,onRemove:L=>e.fileList.splice(e.fileList.indexOf($),1)},null,8,["url","name","percentage","onRemove"])):v("",!0)]),default:_(()=>[s(c,{round:"",type:"primary",size:"small",class:"btn btn-upload"},{default:_(()=>[s(r,{icon:"fa-solid fa-upload",class:"icon mr-1"}),h(" "+n(e.$t("seedance.button.upload")),1)]),_:1})]),_:1},8,["file-list","action","on-exceed","on-error","on-success","on-remove","headers"])])}const ds=k(ns,[["render",cs],["__scopeId","data-v-5294baf8"]]),ms=E({name:"SeedanceLastFrameImage",components:{ElUpload:H,ElButton:F,ImagePreview:M,InfoIcon:S,FontAwesomeIcon:I},mixins:[z],data(){return{fileList:[],uploadUrl:B()+"/api/v1/files/"}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},urls(){return this.fileList.map(e=>e?.response?.file_url)}},methods:{onExceed(){w.warning(this.$t("seedance.message.uploadExceed"))},onError(){w.error(this.$t("seedance.message.uploadError"))},onSetLastFrameUrl(){const e=this.urls?.[0],m=(this.$store.state.seedance?.config?.images||[]).filter(f=>f?.role!=="last_frame");e&&m.push({url:e,role:"last_frame"}),this.$store.commit("seedance/setConfig",{...this.$store.state.seedance?.config,images:m.length>0?m:void 0})},async onSuccess(){this.onSetLastFrameUrl()},async onRemove(){this.onSetLastFrameUrl()}}}),us={class:"relative"},ps={class:"flex justify-between"},fs={class:"flex justify-start items-center"},_s={class:"text-sm font-bold"};function hs(e,a,m,f,u,g){const d=t("info-icon"),p=t("image-preview"),r=t("font-awesome-icon"),c=t("el-button"),b=t("el-upload");return o(),l("div",us,[i("div",ps,[i("div",fs,[i("span",_s,n(e.$t("seedance.name.lastFrame")),1),s(d,{content:e.$t("seedance.description.lastFrame")},null,8,["content"])])]),s(b,{ref:"uploader","file-list":e.fileList,"onUpdate:fileList":a[0]||(a[0]=$=>e.fileList=$),name:"file",accept:".png,.jpg,.jpeg,.gif,.bmp,.webp",limit:1,class:"upload-wrapper",multiple:!1,action:e.uploadUrl,"list-type":"picture","on-exceed":e.onExceed,"on-error":e.onError,"on-success":e.onSuccess,"on-remove":e.onRemove,headers:e.headers},{file:_(({file:$})=>[$.url&&$.percentage!==void 0?(o(),y(p,{key:0,url:$.url,name:$.name,percentage:$.percentage,onRemove:L=>e.fileList.splice(e.fileList.indexOf($),1)},null,8,["url","name","percentage","onRemove"])):v("",!0)]),default:_(()=>[s(c,{round:"",type:"primary",size:"small",class:"btn btn-upload"},{default:_(()=>[s(r,{icon:"fa-solid fa-upload",class:"icon mr-1"}),h(" "+n(e.$t("seedance.button.upload")),1)]),_:1})]),_:1},8,["file-list","action","on-exceed","on-error","on-success","on-remove","headers"])])}const vs=k(ms,[["render",hs],["__scopeId","data-v-f423739f"]]),$s=E({name:"SeedanceServiceTierSelector",components:{ElSelect:P,ElOption:O,InfoIcon:S},data(){return{options:[{value:te,label:this.$t("seedance.serviceTier.default")},{value:oe,label:this.$t("seedance.serviceTier.flex")}]}},computed:{value:{get(){return this.$store.state.seedance?.config?.service_tier},set(e){this.$store.commit("seedance/setConfig",{...this.$store.state.seedance?.config,service_tier:e})}}},mounted(){this.value||(this.value=se)}}),gs={class:"field"},bs={class:"label"},Es={class:"box"},ks={class:"title font-bold"};function ys(e,a,m,f,u,g){const d=t("info-icon"),p=t("el-option"),r=t("el-select");return o(),l("div",gs,[i("div",bs,[i("div",Es,[i("h2",ks,n(e.$t("seedance.name.serviceTier")),1),s(d,{content:e.$t("seedance.description.serviceTier"),class:"info"},null,8,["content"])])]),s(r,{modelValue:e.value,"onUpdate:modelValue":a[0]||(a[0]=c=>e.value=c),class:"value",placeholder:e.$t("seedance.placeholder.select")},{default:_(()=>[(o(!0),l(V,null,A(e.options,c=>(o(),y(p,{key:c.value,label:c.label,value:c.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const ws=k($s,[["render",ys],["__scopeId","data-v-cc938de2"]]),Ss=E({name:"SeedanceReturnLastFrameSwitch",components:{ElSwitch:q,InfoIcon:S},computed:{value:{get(){return this.$store.state.seedance?.config?.return_last_frame},set(e){this.$store.commit("seedance/setConfig",{...this.$store.state.seedance?.config,return_last_frame:e})}}},mounted(){this.value===void 0&&(this.value=ne)}}),Vs={class:"field"},Ls={class:"label"},Ts={class:"box"},Is={class:"title font-bold"},Fs={class:"value"};function As(e,a,m,f,u,g){const d=t("info-icon"),p=t("el-switch");return o(),l("div",Vs,[i("div",Ls,[i("div",Ts,[i("h2",Is,n(e.$t("seedance.name.returnLastFrame")),1),s(d,{content:e.$t("seedance.description.returnLastFrame"),class:"info"},null,8,["content"])])]),i("div",Fs,[s(p,{modelValue:e.value,"onUpdate:modelValue":a[0]||(a[0]=r=>e.value=r),"inline-prompt":"","active-text":e.$t("seedance.button.on"),"inactive-text":e.$t("seedance.button.off")},null,8,["modelValue","active-text","inactive-text"])])])}const Cs=k(Ss,[["render",As],["__scopeId","data-v-cd179b1c"]]),Ds=E({name:"SeedanceConfigPanel",components:{ElButton:F,FontAwesomeIcon:I,PromptInput:Ue,ModelSelector:Be,DurationSelector:Qe,GenerateAudioSwitch:os,ServiceTierSelector:ws,ReturnLastFrameSwitch:Cs,FirstFrameImage:ds,LastFrameImage:vs,Consumption:ue},emits:["generate"],computed:{config(){return this.$store.state.seedance?.config},consumption(){return pe(this.config,this.service?.cost)},service(){return this.$store.state.seedance?.service}},methods:{onGenerate(){this.$emit("generate")}}}),Rs={class:"flex flex-col h-full"},Us={class:"flex-1 overflow-y-auto p-5"},Ns={class:"flex flex-col items-center justify-center px-5 pb-5"};function Os(e,a,m,f,u,g){const d=t("prompt-input"),p=t("model-selector"),r=t("duration-selector"),c=t("generate-audio-switch"),b=t("service-tier-selector"),$=t("return-last-frame-switch"),L=t("first-frame-image"),D=t("last-frame-image"),R=t("consumption"),T=t("font-awesome-icon"),U=t("el-button");return o(),l("div",Rs,[i("div",Us,[s(d,{class:"mb-4"}),s(p,{class:"mb-4"}),s(r,{class:"mb-4"}),s(c,{class:"mb-4"}),s(b,{class:"mb-4"}),s($,{class:"mb-4"}),s(L,{class:"mb-2"}),s(D,{class:"mb-2"})]),i("div",Ns,[s(R,{value:e.consumption,service:e.service},null,8,["value","service"]),s(U,{type:"primary",class:"btn w-full",round:"",onClick:e.onGenerate},{default:_(()=>[s(T,{icon:"fa-solid fa-magic",class:"mr-2"}),h(" "+n(e.$t("seedance.button.generate")),1)]),_:1},8,["onClick"])])])}const Ps=k(Ds,[["render",Os]]),Ms=E({name:"SeedanceTaskPreview",components:{ElImage:ge,CopyToClipboard:fe,FontAwesomeIcon:I,ElAlert:$e,VideoPlayer:_e,ElTooltip:ve,ElButton:F,ImageWrapper:he,ImagePreview:M},props:{modelValue:{type:Object,required:!0}},data(){return{seedanceLogo:ae}},computed:{video(){return this.modelValue?.response?.data},referenceImages(){const e=this.modelValue?.request?.images;if(!Array.isArray(e))return[];const a=[],m=e.find(u=>u?.role==="first_frame");m?.url&&a.push({url:m.url,name:"first-frame"});const f=e.find(u=>u?.role==="last_frame");return f?.url&&a.push({url:f.url,name:"last-frame"}),e.forEach((u,g)=>{u?.url&&u.role!=="first_frame"&&u.role!=="last_frame"&&a.push({url:u.url,name:u.role||`image-${g}`})}),a}},methods:{onDownload(e){window.open(e,"_blank")}}}),Gs={class:"preview"},js={class:"left"},Bs={class:"main"},qs={class:"bot"},zs={class:"datetime"},Hs={class:"info"},Ws={key:0,class:"flex justify-start items-center gap-2 mt-2 w-full overflow-x-auto"},Js={key:1,class:"prompt mt-2"},Ks={key:0},Qs={key:1},Xs={key:0,class:C({content:!0})},Ys={class:"text-[var(--el-text-color-regular)] text-xs mb-0"},Zs={key:1,class:C({content:!0})},xs={key:0,class:"mb-4"},et={key:1,class:"mb-4"},st={key:2,class:C({operations:!0,"mt-2":!0,"mb-2":!0})},tt={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},ot={key:1,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},nt={key:2,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},at={key:0},lt={key:1},rt={key:3,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},it={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},ct={key:4,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},dt={key:5,class:"text-[var(--el-text-color-regular)] text-xs mb-0"},mt={key:2,class:C({content:!0})},ut={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},pt={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},ft={key:1,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},_t={key:2,class:"text-[var(--el-text-color-regular)] text-xs mb-0"},ht={key:3,class:C({content:!0})},vt={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"};function gt(e,a,m,f,u,g){const d=t("el-image"),p=t("image-preview"),r=t("font-awesome-icon"),c=t("copy-to-clipboard"),b=t("el-alert"),$=t("video-player"),L=t("image-wrapper"),D=t("el-button"),R=t("el-tooltip");return o(),l("div",Gs,[i("div",js,[s(d,{src:e.seedanceLogo,class:"avatar"},null,8,["src"])]),i("div",Bs,[i("div",qs,[h(n(e.$t("seedance.name.seedanceBot"))+" ",1),i("span",zs,n(e.$dayjs.format(""+new Date(parseFloat((e.modelValue?.created_at||"").toString())*1e3))),1)]),i("div",Hs,[e.referenceImages.length>0?(o(),l("div",Ws,[(o(!0),l(V,null,A(e.referenceImages,(T,U)=>(o(),y(p,{key:U,url:T.url,name:T.name,closable:!1},null,8,["url","name"]))),128))])):v("",!0),e.modelValue?.request?.prompt?(o(),l("p",Js,[h(n(e.modelValue?.request?.prompt)+" ",1),e.modelValue?.response?e.video?.status==="processing"||e.video?.status==="pending"?(o(),l("span",Qs," - ("+n(e.$t("seedance.status.processing"))+") ",1)):v("",!0):(o(),l("span",Ks," - ("+n(e.$t("seedance.status.pending"))+") ",1))])):v("",!0)]),e.modelValue?.response?e.modelValue?.response?.success===!0?(o(),l("div",Zs,[e.video?.video_url?(o(),l("div",xs,[s($,{src:e.video?.video_url},null,8,["src"])])):v("",!0),e.video?.last_frame_url?(o(),l("div",et,[s(L,{src:e.video?.last_frame_url,"raw-src":e.video?.last_frame_url},null,8,["src","raw-src"])])):v("",!0),e.video?.video_url?(o(),l("div",st,[s(R,{class:"box-item",effect:"dark",content:e.$t("seedance.message.downloadVideo"),placement:"top-start"},{default:_(()=>[s(D,{type:"info",size:"small",class:"btn-action",onClick:a[0]||(a[0]=J(T=>e.onDownload(e.video?.video_url),["stop"]))},{default:_(()=>[h(n(e.$t("seedance.button.download")),1)]),_:1})]),_:1},8,["content"])])):v("",!0),s(b,{closable:!1,class:"mt-2 success"},{default:_(()=>[e.modelValue?.request?.model?(o(),l("p",tt,[s(r,{icon:"fa-solid fa-cube",class:"mr-1"}),h(" "+n(e.$t("seedance.name.model"))+": "+n(e.modelValue?.request?.model),1)])):v("",!0),e.video?.duration?(o(),l("p",ot,[s(r,{icon:"fa-solid fa-clock",class:"mr-1"}),h(" "+n(e.$t("seedance.name.duration"))+": "+n(e.video?.duration)+"s ",1)])):v("",!0),e.video?.resolution?(o(),l("p",nt,[s(r,{icon:"fa-solid fa-expand",class:"mr-1"}),h(" "+n(e.$t("seedance.name.resolution"))+": "+n(e.video?.resolution)+" ",1),e.video?.ratio?(o(),l("span",at," · "+n(e.video?.ratio),1)):v("",!0),e.video?.framespersecond?(o(),l("span",lt," · "+n(e.video?.framespersecond)+"fps",1)):v("",!0)])):v("",!0),e.modelValue?.request?.generate_audio?(o(),l("p",rt,[s(r,{icon:"fa-solid fa-volume-up",class:"mr-1"}),h(" "+n(e.$t("seedance.name.generateAudio"))+": "+n(e.$t("seedance.button.on")),1)])):v("",!0),i("p",it,[s(r,{icon:"fa-solid fa-magic",class:"mr-1"}),h(" "+n(e.$t("seedance.name.taskId"))+": "+n(e.modelValue?.id)+" ",1),s(c,{content:e.modelValue?.id,class:"btn-copy inline-block"},null,8,["content"])]),e.modelValue?.elapsed?(o(),l("p",ct,[s(r,{icon:"fa-solid fa-clock",class:"mr-1"}),h(" "+n(e.$t("seedance.name.elapsed"))+": "+n(e.modelValue?.elapsed?.toFixed(2))+"s ",1)])):v("",!0),e.modelValue?.response?.trace_id?(o(),l("p",dt,[s(r,{icon:"fa-solid fa-hashtag",class:"mr-1"}),h(" "+n(e.$t("seedance.name.traceId"))+": "+n(e.modelValue?.response?.trace_id)+" ",1),s(c,{content:e.modelValue?.response?.trace_id,class:"btn-copy inline-block"},null,8,["content"])])):v("",!0)]),_:1})])):e.modelValue?.response?.success===!1?(o(),l("div",mt,[s(b,{closable:!1,class:"failure"},{template:_(()=>[s(r,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),h(" "+n(e.$t("seedance.name.failure")),1)]),default:_(()=>[i("p",ut,[s(r,{icon:"fa-solid fa-magic",class:"mr-1"}),h(" "+n(e.$t("seedance.name.taskId"))+": "+n(e.modelValue?.id)+" ",1),s(c,{content:e.modelValue?.id,class:"btn-copy inline-block"},null,8,["content"])]),e.modelValue?.response?.error?.message?(o(),l("p",pt,[s(r,{icon:"fa-solid fa-circle-info",class:"mr-1"}),h(" "+n(e.$t("seedance.name.failureReason"))+": "+n(e.modelValue?.response?.error?.message)+" ",1),s(c,{content:e.modelValue?.response?.error?.message,class:"btn-copy inline-block"},null,8,["content"])])):v("",!0),e.modelValue?.elapsed?(o(),l("p",ft,[s(r,{icon:"fa-solid fa-clock",class:"mr-1"}),h(" "+n(e.$t("seedance.name.elapsed"))+": "+n(e.modelValue?.elapsed?.toFixed(2))+"s ",1)])):v("",!0),e.modelValue?.response?.trace_id?(o(),l("p",_t,[s(r,{icon:"fa-solid fa-hashtag",class:"mr-1"}),h(" "+n(e.$t("seedance.name.traceId"))+": "+n(e.modelValue?.response?.trace_id)+" ",1),s(c,{content:e.modelValue?.response?.trace_id,class:"btn-copy inline-block"},null,8,["content"])])):v("",!0)]),_:1})])):(o(),l("div",ht,[s(b,{closable:!1,class:"info"},{template:_(()=>[s(r,{icon:"fa-solid fa-circle-info",class:"mr-1"}),h(" "+n(e.$t("seedance.name.status")),1)]),default:_(()=>[i("p",vt,[s(r,{icon:"fa-solid fa-magic",class:"mr-1"}),h(" "+n(e.$t("seedance.name.taskId"))+": "+n(e.modelValue?.id)+" ",1),s(c,{content:e.modelValue?.id,class:"btn-copy inline-block"},null,8,["content"])]),e.modelValue?.response?.trace_id?(o(),l("p",$t,[s(r,{icon:"fa-solid fa-hashtag",class:"mr-1"}),h(" "+n(e.$t("seedance.name.traceId"))+": "+n(e.modelValue?.response?.trace_id)+" ",1),s(c,{content:e.modelValue?.response?.trace_id,class:"btn-copy inline-block"},null,8,["content"])])):v("",!0)]),_:1})])):(o(),l("div",Xs,[s(b,{closable:!1,class:"info"},{template:_(()=>[s(r,{icon:"fa-regular fa-clock",class:"mr-1"}),h(" "+n(e.$t("seedance.status.pending")),1)]),default:_(()=>[i("p",Ys,[s(r,{icon:"fa-solid fa-magic",class:"mr-1"}),h(" "+n(e.$t("seedance.name.taskId"))+": "+n(e.modelValue?.id)+" ",1),s(c,{content:e.modelValue?.id,class:"btn-copy inline-block"},null,8,["content"])])]),_:1})]))])])}const bt=k(Ms,[["render",gt],["__scopeId","data-v-6b9d75ed"]]),Et=E({name:"SeedanceRecentPanel",components:{TaskPreview:bt,BotPlaceholder:be,NoTasks:Ee,ScrollList:ce},props:{loading:{type:Boolean,default:!1}},emits:["reach-top"],computed:{tasks(){return{...this.$store.state.seedance?.tasks,items:this.$store.state.seedance?.tasks?.items?.slice()}}},methods:{getScrollElement(){return this.$refs.scrollList?.getScrollElement?.()}}}),kt={key:0},yt={key:2,class:"w-full h-full flex items-center justify-center"};function wt(e,a,m,f,u,g){const d=t("bot-placeholder"),p=t("task-preview"),r=t("scroll-list"),c=t("no-tasks");return o(),l(V,null,[e.tasks?.items===void 0?(o(),l("div",kt,[s(d)])):e.tasks?.items?.length&&e.tasks?.items?.length>0?(o(),y(r,{key:1,ref:"scrollList",class:"tasks w-full h-full overflow-y-auto",loading:e.loading,onReachTop:a[0]||(a[0]=b=>e.$emit("reach-top"))},{default:_(()=>[(o(!0),l(V,null,A(e.tasks?.items,b=>(o(),y(p,{key:b.id,"model-value":b},null,8,["model-value"]))),128))]),_:1},8,["loading"])):v("",!0),e.tasks?.items?.length===0?(o(),l("div",yt,[s(c)])):v("",!0)],64)}const St=k(Et,[["render",wt]]),Vt=ie("seedance"),Lt=E({name:"SeedanceIndex",components:{ConfigPanel:Ps,Layout:Te,RecentPanel:St},inject:["initialized"],data(){return{task:void 0,job:0,loadingMore:!1,fetchingTasks:!1}},computed:{applicationsLoading(){return this.$store.state.seedance?.status?.getApplications===G.Request},tasksLoading(){return this.$store.state.seedance?.status?.getTasks===G.Request||this.fetchingTasks},credential(){return this.$store.state.seedance?.credential},config(){return this.$store.state.seedance?.config},tasks(){return this.$store.state.seedance?.tasks}},watch:{initialized:{async handler(e){e&&(await this.onGetTasks(),await this.onScrollDown(),this.job=window.setInterval(()=>{this.onGetTasks()},5e3))},immediate:!0}},async mounted(){await this.onGetService()},async unmounted(){window.clearInterval(this.job)},methods:{async onReachTop(){await de({tasks:this.tasks,loading:this.loadingMore,setLoading:e=>this.loadingMore=e,isBlocked:()=>this.tasksLoading||this.applicationsLoading,fetch:e=>this.onGetTasks({createdAtMax:e}),getScrollElement:()=>this.getTasksScrollElement()})},async onGetService(){await this.$store.dispatch("seedance/getService")},async onScrollDown(){await this.$nextTick();const e=this.getTasksScrollElement();e&&(e.scrollTop=e.scrollHeight)},async onGetTasks(e){if(this.applicationsLoading||this.fetchingTasks)return;const{limit:a=5,createdAtMin:m,createdAtMax:f}=e||{};this.fetchingTasks=!0;try{await this.$store.dispatch("seedance/getTasks",{limit:a,createdAtMin:m,createdAtMax:f})}finally{this.fetchingTasks=!1}},async onGenerate(){const e={...this.config||{}};if(typeof e?.prompt=="string"&&(e.prompt=e.prompt.trim(),e.prompt||delete e.prompt),Array.isArray(e?.images)){e.images=e.images.filter(d=>!!d?.url);const u=e.images.some(d=>d?.role==="first_frame"),g=e.images.some(d=>d?.role==="last_frame");!u&&g&&(e.images=e.images.map(d=>d?.role==="last_frame"?{...d,role:"first_frame"}:d))}!(Array.isArray(e?.images)&&e.images.length>0)&&"images"in e&&delete e.images;const m={...e,callback_url:Vt},f=this.credential?.token;if(!f){console.error("no token specified");return}w.info(this.$t("seedance.message.startingTask")),le("seedance",re.generate(m,{token:f})).then(()=>{w.success(this.$t("seedance.message.startTaskSuccess"))}).catch(u=>{const g=u?.response?.data;g?.error?.code===ke?w.error(this.$t("seedance.message.usedUp")):w.error(this.$t("seedance.message.startTaskFailed")+(g?.error?.message||""))}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})},getTasksScrollElement(){return this.$refs.recentPanel?.getScrollElement?.()}}});function Tt(e,a,m,f,u,g){const d=t("config-panel"),p=t("recent-panel"),r=t("layout");return o(),y(r,null,{config:_(()=>[s(d,{onGenerate:e.onGenerate},null,8,["onGenerate"])]),result:_(()=>[s(p,{ref:"recentPanel",loading:e.loadingMore,onReachTop:e.onReachTop},null,8,["loading","onReachTop"])]),_:1})}const ko=k(Lt,[["render",Tt]]);export{ko as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{F as T}from"./index.es-DoDsyBxd.js";import{E as q}from"./index-CghmaEfO.js";import{E as W}from"./index-BRqPnPCL.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 U}from"./vendor-vue-NSDaktjZ.js";import{G as y,bl as H,cO as Q,cP as z,cQ as P,cR as J,cS as S,cT as M,cU as j,cV as D,cr as X,aV as Y,S as F,cs as Z}from"./index-Bwh4uhxH.js";import{I as O,S as ee,l as te}from"./pagination-DuUw6h7L.js";import{E as ae}from"./index-Df-EZV4-.js";import{p as oe}from"./pasteUploadMixin-BurWbGNQ.js";import{I as x}from"./ImagePreview-Bdb0i-UY.js";import{E as ne}from"./index-CZoz3sTY.js";import{E as R}from"./index-CD3hMCXK.js";import{E as B,a as G}from"./index-Bs4QQKmj.js";import{C as se}from"./Consumption-DTqKtl19.js";import{a as le}from"./price-Dq6B3nmI.js";import{b as re}from"./errorCode-Cqj9Td_Z.js";import{C as ie}from"./CopyToClipboard-CHIfP83C.js";import{I as ce}from"./ImageWrapper-DQ4mprTG.js";import{E as ue}from"./index-CdNNDZgX.js";import{E as me}from"./index-CLC3F3zh.js";import{E as de}from"./index-Cdu2CINy.js";import{B as pe}from"./BotPlaceholder-teJQgw1R.js";import{N as fe}from"./NoTasks-Dro6OdxD.js";import"./use-form-item-CkUvjro6.js";import"./index-BuyEbX8F.js";import"./vendor-axios-B8_nURbH.js";import"./vendor-dayjs-v0j1UNZp.js";import"./vendor-vue-router-Kg6s1a65.js";import"./typescript-C7vXUz1j.js";import"./index-CWWZeClw.js";import"./index-nLjkUfZa.js";import"./index-DSAaysXY.js";import"./_baseClone-BywLfCY-.js";import"./_Uint8Array-JndvkAwf.js";import"./_initCloneObject-D5P_u5bs.js";import"./isEqual-CgVTCLh1.js";import"./index-Boh3hilg.js";import"./strings-beZM2Y-f.js";import"./castArray-BzRYTmyg.js";import"./debounce-D7YINRDE.js";import"./_baseIteratee-BaTk7Xco.js";import"./index-Dy5k6Duv.js";import"./index-ByGJSI5C.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-9fbc8a5c"]]),ke="",ye=k({name:"PromptInput",components:{ElInput:ae,InfoIcon:O},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:O,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 Ue(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 Oe=y(Re,[["render",Ue]]),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:O},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:O},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:Oe,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:U({content:!0,failed:!0})},bt={class:"flex justify-start items-center gap-4 w-full overflow-x-auto"},$t={class:U({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:U({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"},Ut={key:4,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Ot={key:5,class:"text-[var(--el-text-color-regular)] text-xs mb-0"},Ct={key:2,class:U({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",Ut,[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",Ot,[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-C_WLtS18.js";import{E as q}from"./index-DTbz6TSn.js";import{E as W}from"./index-SAsUj7Pk.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 U}from"./vendor-vue-NSDaktjZ.js";import{G as y,bl as H,cO as Q,cP as z,cQ as P,cR as J,cS as S,cT as M,cU as j,cV as D,cr as X,aV as Y,S as F,cs as Z}from"./index-BzRVav2J.js";import{I as O,S as ee,l as te}from"./pagination-mZXKDVMd.js";import{E as ae}from"./index-D5ReSuuO.js";import{p as oe}from"./pasteUploadMixin-BurWbGNQ.js";import{I as x}from"./ImagePreview-CATcaSwT.js";import{E as ne}from"./index-Dt0xHpag.js";import{E as R}from"./index-CMTPLs4z.js";import{E as B,a as G}from"./index-CmMnj3Xx.js";import{C as se}from"./Consumption-CL3WRYVN.js";import{a as le}from"./price-Cr67gCty.js";import{b as re}from"./errorCode-Cqj9Td_Z.js";import{C as ie}from"./CopyToClipboard-TC6O9s7V.js";import{I as ce}from"./ImageWrapper-C-2wIJYB.js";import{E as ue}from"./index--MBG5Bxw.js";import{E as me}from"./index-De-wy4Tc.js";import{E as de}from"./index-C3GoyrG4.js";import{B as pe}from"./BotPlaceholder-BqeR06y3.js";import{N as fe}from"./NoTasks-C3t8bmtA.js";import"./use-form-item-B5rZE33a.js";import"./index-BuyEbX8F.js";import"./vendor-axios-B8_nURbH.js";import"./vendor-dayjs-v0j1UNZp.js";import"./vendor-vue-router-Kg6s1a65.js";import"./typescript-D6sat8h_.js";import"./index-Cjg_OuWc.js";import"./index-0u_G2kSj.js";import"./index-BD55w4j0.js";import"./_baseClone-Bmu_sg3j.js";import"./_Uint8Array-BP4C5DZm.js";import"./_initCloneObject-C-Q8oqTt.js";import"./isEqual-yYS0dh2f.js";import"./index-CD8qf4tY.js";import"./strings-beZM2Y-f.js";import"./castArray-YvIMFTc9.js";import"./debounce-BpWk7nuI.js";import"./_baseIteratee-lG75D4iw.js";import"./index-DLlZmkfC.js";import"./index-CTspmpeX.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-9fbc8a5c"]]),ke="",ye=k({name:"PromptInput",components:{ElInput:ae,InfoIcon:O},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:O,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 Ue(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 Oe=y(Re,[["render",Ue]]),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:O},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:O},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:Oe,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:U({content:!0,failed:!0})},bt={class:"flex justify-start items-center gap-4 w-full overflow-x-auto"},$t={class:U({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:U({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"},Ut={key:4,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Ot={key:5,class:"text-[var(--el-text-color-regular)] text-xs mb-0"},Ct={key:2,class:U({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",Ut,[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",Ot,[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};
|