@acedatacloud/nexior 3.150.0 → 3.151.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-W8GW-GDm.js → Auth-IW4p46L3.js} +1 -1
- package/dist/assets/{BotPlaceholder-D689G_E8.js → BotPlaceholder-T1JnFchM.js} +1 -1
- package/dist/assets/{Callback-B-RHwAO0.js → Callback-DZpL7SXU.js} +1 -1
- package/dist/assets/{Console-B_yJ_mG_.js → Console-Dzj1R1XE.js} +1 -1
- package/dist/assets/{Consumption-Ddq_1dsG.js → Consumption-D5MPVVSr.js} +1 -1
- package/dist/assets/{Conversation-dILeDaMk.js → Conversation-vSkRjEQR.js} +1 -1
- package/dist/assets/{CopyToClipboard-CDbXsPpE.js → CopyToClipboard-6msgbpJQ.js} +1 -1
- package/dist/assets/{Detail-CBhgksxU.js → Detail-BlJR1KH0.js} +2 -2
- package/dist/assets/{EditArray-Cz-dHw2Z.js → EditArray-RWm7mnEU.js} +1 -1
- package/dist/assets/{Extra-BMyAOEQ0.js → Extra-DBx8BLAN.js} +1 -1
- package/dist/assets/{FilePreview-CUuA49zH.js → FilePreview-D0RSGfej.js} +1 -1
- package/dist/assets/{History-7nunF3Nk.js → History-CD7QjkBt.js} +1 -1
- package/dist/assets/{IconPark.vue_vue_type_script_setup_true_lang-WxSr67sW.js → IconPark.vue_vue_type_script_setup_true_lang-BwGTLkUK.js} +1 -1
- package/dist/assets/{ImagePreview-LoZpT38c.js → ImagePreview-BwVG4xnq.js} +1 -1
- package/dist/assets/{ImageWrapper-CeIntWtS.js → ImageWrapper-fMrdkLXq.js} +1 -1
- package/dist/assets/{Index-CAl3nTMN.js → Index-AN9ex6Xt.js} +1 -1
- package/dist/assets/{Index-DqUsLzyy.js → Index-B21qPHOv.js} +1 -1
- package/dist/assets/{Index-BRz_NmQz.js → Index-B5na7_yk.js} +1 -1
- package/dist/assets/{Index-CrMQx2kT.js → Index-BPhPX9bS.js} +1 -1
- package/dist/assets/{Index-BLhSb684.js → Index-BgUpBrqX.js} +1 -1
- package/dist/assets/{Index-DwRwYab8.js → Index-BhH9mKdz.js} +1 -1
- package/dist/assets/{Index-DJ1Fk0TF.js → Index-BkPfXezd.js} +1 -1
- package/dist/assets/{Index-OUvBIQcH.js → Index-BuzCdZZQ.js} +1 -1
- package/dist/assets/{Index-sc--ZS4A.js → Index-BvAJNWOC.js} +1 -1
- package/dist/assets/{Index-CXvGtjzb.js → Index-CI8sMx5-.js} +1 -1
- package/dist/assets/{Index-CH3gp7_J.js → Index-CjK0DQSB.js} +1 -1
- package/dist/assets/{Index-CBG-GkRJ.js → Index-CxptMB1N.js} +1 -1
- package/dist/assets/Index-D339DAO3.js +4 -0
- package/dist/assets/{Index-BDTXaOU5.js → Index-D5ZlRdKz.js} +1 -1
- package/dist/assets/{Index-BjeZob1n.js → Index-DN3QcXm9.js} +1 -1
- package/dist/assets/{Index-DulZ6Ios.js → Index-DVfjg8Di.js} +1 -1
- package/dist/assets/Index-DhgkZiHZ.css +1 -0
- package/dist/assets/{Index-D_Ci4AvM.js → Index-Dos1Dsdr.js} +1 -1
- package/dist/assets/{Index-D0FnNl9I.js → Index-Dpeull2n.js} +1 -1
- package/dist/assets/{Index-CBKuJcXu.js → Index-DqhmurZ3.js} +1 -1
- package/dist/assets/{Index-z75ZCAgY.js → Index-Dwa_SRdi.js} +1 -1
- package/dist/assets/{Index-SEZtecy1.js → Index-K4Z9iTaE.js} +1 -1
- package/dist/assets/{Index-sdkt8wDy.js → Index-LcNO6a4K.js} +1 -1
- package/dist/assets/{Index-C0S4cSHQ.js → Index-aPj5352f.js} +1 -1
- package/dist/assets/{Index-ddFSM2lm.js → Index-nqpU6mNL.js} +1 -1
- package/dist/assets/{Invitees-l-YnXQk6.js → Invitees-Dps7WsXH.js} +1 -1
- package/dist/assets/{List-CsCHWZfR.js → List-Dv_uNXCi.js} +1 -1
- package/dist/assets/{List-BKnSlpvs.js → List-Omdv5kgz.js} +1 -1
- package/dist/assets/{List-9NE9X5xw.js → List-uwx33X7a.js} +1 -1
- package/dist/assets/{Main-BmlSfwFe.js → Main-C5cn0znX.js} +1 -1
- package/dist/assets/{Navigator-DhIdWTC7.js → Navigator-Ci2f2XkT.js} +1 -1
- package/dist/assets/{NoTasks-BL9-0YOm.js → NoTasks-DKhvXOog.js} +1 -1
- package/dist/assets/{NotFound-B206I0ye.js → NotFound-B-kP2wTa.js} +1 -1
- package/dist/assets/{OAuthCallback-BUFAisr1.js → OAuthCallback-tDbQvOP3.js} +1 -1
- package/dist/assets/{Pagination-Cs2yd3in.js → Pagination-Dmvf8sBr.js} +1 -1
- package/dist/assets/{Status-D6b9MaoH.js → Status-C_XbhQF0.js} +1 -1
- package/dist/assets/{Subscribe-D82evcT7.js → Subscribe-Zaf-hMj0.js} +1 -1
- package/dist/assets/{VideoPlayer-DH10Nw7l.js → VideoPlayer-B3iDYyIj.js} +1 -1
- package/dist/assets/{_Uint8Array-BndSMjzA.js → _Uint8Array-BeRfpqL7.js} +1 -1
- package/dist/assets/{_baseClone-CaNqBOJq.js → _baseClone-DquV2Mnx.js} +1 -1
- package/dist/assets/{_baseIteratee-B6KL1Ia9.js → _baseIteratee-DuHUzj8X.js} +1 -1
- package/dist/assets/{_initCloneObject-D3DOodS1.js → _initCloneObject-9PUJFEMx.js} +1 -1
- package/dist/assets/{add-wnSEQAf8.js → add-749h5WaZ.js} +1 -1
- package/dist/assets/{all-wallets-B4B6c5-P.js → all-wallets-Dg7SoSdi.js} +1 -1
- package/dist/assets/{app-store-CBNqXlCb.js → app-store-DEOmNkJF.js} +1 -1
- package/dist/assets/{apple-B-j5VL3o.js → apple-C5Q8VTnL.js} +1 -1
- package/dist/assets/{arrow-bottom-Cci7CP97.js → arrow-bottom-CcpU3-jy.js} +1 -1
- package/dist/assets/{arrow-bottom-circle-Cs3E_fGs.js → arrow-bottom-circle-D9I_u6-f.js} +1 -1
- package/dist/assets/{arrow-left-DZQymsq9.js → arrow-left-14k15Es2.js} +1 -1
- package/dist/assets/{arrow-right-BXuyy3kE.js → arrow-right-tabS5fOU.js} +1 -1
- package/dist/assets/{arrow-top-CLZiWtfX.js → arrow-top-Bzjm8_fQ.js} +1 -1
- package/dist/assets/{avatar-qkSiXAGA.js → avatar-GoazyYZC.js} +1 -1
- package/dist/assets/{bank-BvwT8bKH.js → bank-D8slqZcY.js} +1 -1
- package/dist/assets/{basic-ls6MWyfs.js → basic-ib0zx_R6.js} +1 -1
- package/dist/assets/{browser-Dr6NGrOw.js → browser-D3T4Qxmu.js} +1 -1
- package/dist/assets/{byokCredential-D0ZWf5xM.js → byokCredential-C444ihHU.js} +1 -1
- package/dist/assets/{card-Yu2wU8D2.js → card-wgzi2_K3.js} +1 -1
- package/dist/assets/{castArray-D_LQYGBx.js → castArray-278F4M9m.js} +1 -1
- package/dist/assets/{chat-CYQ-xCYR.js → chat-Beqa711x.js} +1 -1
- package/dist/assets/{checkmark-DClMiLYp.js → checkmark-YfgLhX0a.js} +1 -1
- package/dist/assets/{checkmark-bold-CRE6BIos.js → checkmark-bold-C0QOMGqK.js} +1 -1
- package/dist/assets/{chevron-bottom-DZu2sxsf.js → chevron-bottom-DM8wShkR.js} +1 -1
- package/dist/assets/{chevron-left-BE13runL.js → chevron-left-BOqtomeY.js} +1 -1
- package/dist/assets/{chevron-right--u0K90Hq.js → chevron-right-BlXJLGf3.js} +1 -1
- package/dist/assets/{chevron-top-BrNJXL1K.js → chevron-top-CZZtUbqX.js} +1 -1
- package/dist/assets/{chrome-store-CMsYkMSo.js → chrome-store-DemBQCh4.js} +1 -1
- package/dist/assets/{clock-XEYOr6AD.js → clock-DzoriQ7e.js} +1 -1
- package/dist/assets/{close-DHRXdzB9.js → close-DNkI7Hoj.js} +1 -1
- package/dist/assets/{coinPlaceholder-D7kkcaiZ.js → coinPlaceholder-BHV1kB0q.js} +1 -1
- package/dist/assets/{compass-COAh5sDS.js → compass-BXwccwCc.js} +1 -1
- package/dist/assets/{copy-DkNWLUKr.js → copy-DcYHLBXe.js} +1 -1
- package/dist/assets/{cursor-CD0-vqOx.js → cursor-BSu3MxsP.js} +1 -1
- package/dist/assets/{cursor-transparent-BTxxvET0.js → cursor-transparent-BBN4rW12.js} +1 -1
- package/dist/assets/{debounce-Q951B-04.js → debounce-CnPBB63_.js} +1 -1
- package/dist/assets/{desktop-D4H4PBcz.js → desktop-B_910BSl.js} +1 -1
- package/dist/assets/{disconnect-i9ZYp-Jk.js → disconnect-M-CWCAts.js} +1 -1
- package/dist/assets/{discord-CTTP9nNr.js → discord-De9ru4ub.js} +1 -1
- package/dist/assets/{distribution-BLLesJ9A.js → distribution-t88XJU6n.js} +1 -1
- package/dist/assets/{dropdown-BxxFE-4o.js → dropdown-DsiaFkVQ.js} +1 -1
- package/dist/assets/{etherscan-CKR_x1bE.js → etherscan-DUyJ-j3y.js} +1 -1
- package/dist/assets/{exclamation-triangle-D3GHAhxI.js → exclamation-triangle-D5XmHy0Q.js} +1 -1
- package/dist/assets/{extension-Cg2cZtJT.js → extension-BDe8RDat.js} +1 -1
- package/dist/assets/{external-link-Ce9oTbAr.js → external-link-Dj83m2Tn.js} +1 -1
- package/dist/assets/{facebook-BOfSP8a-.js → facebook-DTXZWUPL.js} +1 -1
- package/dist/assets/{farcaster-BMC6TV1e.js → farcaster-B4ywG9kN.js} +1 -1
- package/dist/assets/{filters-YSD1TQBe.js → filters-KhMH9xMD.js} +1 -1
- package/dist/assets/{flux-CMjql7XW.js → flux-CvJ11x9W.js} +1 -1
- package/dist/assets/{github-D4CLxVOl.js → github-CXXeZ_Kw.js} +1 -1
- package/dist/assets/{google-BoUV4Cvk.js → google-BsIi8wyP.js} +1 -1
- package/dist/assets/{hailuo-DJC92ae-.js → hailuo-QzKr-VaK.js} +1 -1
- package/dist/assets/{headshots-DsSmcysy.js → headshots-LEA5j4eI.js} +1 -1
- package/dist/assets/{help-circle-B7HaqKAM.js → help-circle-EmqU81Ca.js} +1 -1
- package/dist/assets/{id-C2HcCaKs.js → id-v24Dlyyx.js} +1 -1
- package/dist/assets/{image-WOM9cj0w.js → image-CW_VC-BP.js} +1 -1
- package/dist/assets/{index-DABtE8Kg.js → index-4fr3w0JV.js} +1 -1
- package/dist/assets/{index-BhYfKF9B.js → index-6Sl08ozG.js} +1 -1
- package/dist/assets/{index-8wdN2CVl.js → index-7N7m57AB.js} +1 -1
- package/dist/assets/{index-ghtwKyp5.js → index-8pgYKRxD.js} +1 -1
- package/dist/assets/{index-CENmXkEH.js → index-B4wQAP5g.js} +1 -1
- package/dist/assets/{index-BER5GLYf.js → index-BCps6OLj.js} +1 -1
- package/dist/assets/{index-CvKWKElQ.js → index-BJ8z356Q.js} +1 -1
- package/dist/assets/{index-wNJRYy43.js → index-BT5uG3nT.js} +1 -1
- package/dist/assets/{index-D8enB3pc.js → index-BeTHuND8.js} +1 -1
- package/dist/assets/{index-Chv0_uti.js → index-BfzztZ3C.js} +1 -1
- package/dist/assets/{index-MjbV39N3.js → index-BjURKchk.js} +1 -1
- package/dist/assets/{index-DGD-ZdYv.js → index-Blv6QaIk.js} +1 -1
- package/dist/assets/{index-B2fjG9pt.js → index-BynkfymK.js} +1 -1
- package/dist/assets/{index-wq679Ja0.js → index-C0A5tXrS.js} +1 -1
- package/dist/assets/{index-BRq9Qxe7.js → index-C4AqIojV.js} +1 -1
- package/dist/assets/{index-erzegoOv.js → index-C88z658e.js} +1 -1
- package/dist/assets/{index-C7YZwThL.js → index-CIHBGnWH.js} +1 -1
- package/dist/assets/{index-D29qI8YC.js → index-CIYBrWl1.js} +1 -1
- package/dist/assets/{index-CDE0P5Mz.js → index-CNDbe5I7.js} +1 -1
- package/dist/assets/{index-DuFa2upU.js → index-CNr3cL-X.js} +1 -1
- package/dist/assets/{index-CuwmZbiT.js → index-CPETW0B-.js} +1 -1
- package/dist/assets/{index-z8UjZ-D6.js → index-CX7Ebwoy.js} +1 -1
- package/dist/assets/{index-2ujDGB3I.js → index-C_buhEqX.js} +1 -1
- package/dist/assets/{index-exzQytIQ.js → index-Cdxyx1g2.js} +1 -1
- package/dist/assets/{index-Ca6sg_R5.js → index-ChPPFHWB.js} +1 -1
- package/dist/assets/{index-H9W12Q1V.js → index-CjRED359.js} +1 -1
- package/dist/assets/{index-C5mj_UQP.js → index-CsHz-uZs.js} +1 -1
- package/dist/assets/{index-CdN-RSFo.js → index-Csdbp49a.js} +1 -1
- package/dist/assets/{index-7nG1mAiU.js → index-CxG5ioHr.js} +1 -1
- package/dist/assets/{index-BoZCTCj-.js → index-D20nK0rh.js} +5 -5
- package/dist/assets/{index-CvYaN3Sr.js → index-D3T5KIo9.js} +1 -1
- package/dist/assets/{index-CGOzi3CN.js → index-D3jddmZ3.js} +1 -1
- package/dist/assets/{index-CL9b57Qt.js → index-D9WB_FIQ.js} +1 -1
- package/dist/assets/{index-CUYwPErF.js → index-DAGo6502.js} +1 -1
- package/dist/assets/{index-bNG4qRSn.js → index-DKxUcPQb.js} +1 -1
- package/dist/assets/{index-CM3keCyh.js → index-DPm01hu4.js} +1 -1
- package/dist/assets/{index-_8XrioVn.js → index-DQYZ_GtK.js} +1 -1
- package/dist/assets/{index-eEZgCgxz.js → index-DRmqH2DV.js} +1 -1
- package/dist/assets/{index-HXiSR2EH.js → index-DZa1Dmz4.js} +1 -1
- package/dist/assets/{index-B6WtGxiK.js → index-DgVbYko9.js} +1 -1
- package/dist/assets/{index-BzueuBi_.js → index-DgZFp1tl.js} +3 -3
- package/dist/assets/{index-BPL82gwt.js → index-DjP71bdI.js} +1 -1
- package/dist/assets/{index-32edyhra.js → index-DlBU2sRW.js} +1 -1
- package/dist/assets/{index-D0GM_1ZF.js → index-Dm0MxC20.js} +1 -1
- package/dist/assets/{index-zFiz41F1.js → index-DnX3iGId.js} +1 -1
- package/dist/assets/{index-BHWp6bRR.js → index-Dt3sdSti.js} +1 -1
- package/dist/assets/{index-DnKNQOKq.js → index-DuxWRWiB.js} +1 -1
- package/dist/assets/{index-8PMbXyxV.js → index-Dx8VSsv9.js} +1 -1
- package/dist/assets/{index-2tHwsFmK.js → index-GcNUxMuw.js} +1 -1
- package/dist/assets/{index-DTlEzSfV.js → index-H9tv5CGK.js} +1 -1
- package/dist/assets/{index-C7bC5Zyg.js → index-HqBS33mo.js} +1 -1
- package/dist/assets/{index-HpF2hGVR.js → index-MeXqAg39.js} +1 -1
- package/dist/assets/{index-8b7758X2.js → index-X_xat7xF.js} +1 -1
- package/dist/assets/{index-DLyOQfa5.js → index-aB7y_QWB.js} +1 -1
- package/dist/assets/{index-BSii-ySb.js → index-jw2b7c0m.js} +1 -1
- package/dist/assets/{index-C1t3zEik.js → index-n3ttmqbC.js} +2 -2
- package/dist/assets/{index-DTTgiRJO.js → index-r1WlQTkd.js} +1 -1
- package/dist/assets/{index-C1XlU4PJ.js → index-tspOPlR8.js} +3 -3
- package/dist/assets/{index-iYmNuXNi.js → index-xmDVAsJN.js} +1 -1
- package/dist/assets/{index-CHU1WLpe.js → index-xsqbwBtd.js} +1 -1
- package/dist/assets/{index.browser.esm-AJjKsrkH.js → index.browser.esm-CGJ9CRCU.js} +1 -1
- package/dist/assets/{index.es-Cj7JhB9l.js → index.es-BDOMZBHy.js} +1 -1
- package/dist/assets/{info-CtYUOW2b.js → info-XR00I-oO.js} +1 -1
- package/dist/assets/{info-circle-I-tg_JB0.js → info-circle-CCCEF-RV.js} +1 -1
- package/dist/assets/{isEqual-CAlLUdzO.js → isEqual-CRG_uQtW.js} +1 -1
- package/dist/assets/{isPlainObject-DftgPqzf.js → isPlainObject-eZxKDVqq.js} +1 -1
- package/dist/assets/{kling-w9kmKF5H.js → kling-B6TGjz_d.js} +1 -1
- package/dist/assets/{lightbulb-CqdkAURs.js → lightbulb-qMJha2UV.js} +1 -1
- package/dist/assets/{luma-CtPiCzmT.js → luma-CavTBkcx.js} +1 -1
- package/dist/assets/{mail-f9797AH0.js → mail-CDUHBELa.js} +1 -1
- package/dist/assets/{midjourney-CTDUXSs-.js → midjourney-CJKpkJZD.js} +1 -1
- package/dist/assets/{mobile-U3LCpn7z.js → mobile-CkDJWMBw.js} +1 -1
- package/dist/assets/{more-xoaSpumH.js → more-COpJz5uH.js} +1 -1
- package/dist/assets/{nanobanana-3IRvpMZA.js → nanobanana-BxT0wXzK.js} +1 -1
- package/dist/assets/{network-placeholder-DdhBvB7j.js → network-placeholder-CiJpRps3.js} +1 -1
- package/dist/assets/{nftPlaceholder-Z8MOgP96.js → nftPlaceholder-znEa5PAZ.js} +1 -1
- package/dist/assets/{off-DGZVyPsI.js → off-B7CrDGyD.js} +1 -1
- package/dist/assets/{openaiimage-DohLc_wV.js → openaiimage-Dbes_Vs4.js} +1 -1
- package/dist/assets/{order-DijgFZEz.js → order-DhhOiI0E.js} +1 -1
- package/dist/assets/{pagination-781R2MGE.js → pagination-DEnicVya.js} +1 -1
- package/dist/assets/{pika-BjzeOhLm.js → pika-BPoPkkGj.js} +1 -1
- package/dist/assets/{pixverse-DAR5soul.js → pixverse-DYt5He4G.js} +1 -1
- package/dist/assets/{play-store-CMAyC6Ur.js → play-store-xKKd8X5F.js} +1 -1
- package/dist/assets/{plus-D7gPL2E4.js → plus-Dx28_E-Q.js} +1 -1
- package/dist/assets/{price-DmDMgPIs.js → price-kWAt8zxX.js} +1 -1
- package/dist/assets/{producer-1J203KMp.js → producer-BXowpSi3.js} +1 -1
- package/dist/assets/{qr-code-C98nDSBI.js → qr-code-m7N3oFAD.js} +1 -1
- package/dist/assets/{qrart-LHv0TIhz.js → qrart-CHaysam6.js} +1 -1
- package/dist/assets/{recycle-horizontal-PrdG35YB.js → recycle-horizontal-DDXgzaAY.js} +1 -1
- package/dist/assets/{refresh-D3C8VK1v.js → refresh-LgyLUes7.js} +1 -1
- package/dist/assets/{reown-logo-jgWqHA6_.js → reown-logo-CkvQLZzl.js} +1 -1
- package/dist/assets/{search-Cvv69ufn.js → search-CTf1SeSv.js} +1 -1
- package/dist/assets/{secp256k1-DO8xukug.js → secp256k1-BTpVhM_m.js} +1 -1
- package/dist/assets/{secp256k1-B-u65EIl.js → secp256k1-CNdXyQHR.js} +1 -1
- package/dist/assets/{seedance-C5F8rvrf.js → seedance-Drvwshel.js} +1 -1
- package/dist/assets/{seedream-C6UWyMfO.js → seedream-Bp_B6_q7.js} +1 -1
- package/dist/assets/{send-DIdoa2bc.js → send-Di9e-410.js} +1 -1
- package/dist/assets/{service-CYdwDlv6.js → service-Ba2U6I3k.js} +1 -1
- package/dist/assets/{solana-wallets-rretdvIM.js → solana-wallets-C9-nHWg6.js} +2 -2
- package/dist/assets/{solana-wallets-vue-Bcolo3PJ.js → solana-wallets-vue-v2vlesUk.js} +1 -1
- package/dist/assets/{sora-BX4pTksl.js → sora-BR4Ve51x.js} +1 -1
- package/dist/assets/{suno-DK262lff.js → suno-D0MT1lkL.js} +1 -1
- package/dist/assets/{swapHorizontal-CskL56Yv.js → swapHorizontal-zaiHanOz.js} +1 -1
- package/dist/assets/{swapHorizontalBold-BuUIOPAm.js → swapHorizontalBold-DQXWfau9.js} +1 -1
- package/dist/assets/{swapHorizontalMedium-BPw-_TdB.js → swapHorizontalMedium-ZDw5Mo24.js} +1 -1
- package/dist/assets/{swapHorizontalRoundedBold-tC1pU8e0.js → swapHorizontalRoundedBold-DchBfN54.js} +1 -1
- package/dist/assets/{swapVertical-OinxYLDX.js → swapVertical-BwEeDCkJ.js} +1 -1
- package/dist/assets/{telegram-5SNxmVDO.js → telegram-79iqGO1e.js} +1 -1
- package/dist/assets/{three-dots-c3MfJxg5.js → three-dots-B8fGWYhK.js} +1 -1
- package/dist/assets/{twitch-BrDe8I52.js → twitch-BH8XG9JM.js} +1 -1
- package/dist/assets/{twitterIcon-DnPfGlm_.js → twitterIcon-BUNaVT2Y.js} +1 -1
- package/dist/assets/{typescript-DCNCCMox.js → typescript-VAjzYBVV.js} +1 -1
- package/dist/assets/{use-form-item-RrqgHY2m.js → use-form-item-CiGuYlwo.js} +1 -1
- package/dist/assets/validator-DruHczS_.js +1 -0
- package/dist/assets/{veo-Dm_XHtPV.js → veo-BThctip4.js} +1 -1
- package/dist/assets/{verify-BrAYkOc5.js → verify-CJVopDQE.js} +1 -1
- package/dist/assets/{verify-filled-DuS2pRA3.js → verify-filled-ATC6I0Y_.js} +1 -1
- package/dist/assets/{w3m-modal-BoFyRMdn.js → w3m-modal-CXzRqLSL.js} +1 -1
- package/dist/assets/{wallet-7ZIfce4o.js → wallet-BVG7gwu4.js} +1 -1
- package/dist/assets/{wallet-placeholder-CJnKkcqa.js → wallet-placeholder-Bd153rJq.js} +1 -1
- package/dist/assets/{walletconnect-CbVsEj0v.js → walletconnect-Dn4STW44.js} +1 -1
- package/dist/assets/{wan-TL_E7-70.js → wan-DqK9nL9r.js} +1 -1
- package/dist/assets/{warning-circle-DN9kfa_m.js → warning-circle-CL4r1SS-.js} +1 -1
- package/dist/assets/{web-NGVV4NXn.js → web-I_XATx91.js} +1 -1
- package/dist/assets/{web-DEpC-mnN.js → web-jWaF3GsK.js} +1 -1
- package/dist/assets/{x-CE857r5d.js → x-CuG12d0t.js} +1 -1
- package/dist/index.html +1 -1
- package/package.json +1 -1
- package/dist/assets/Index-BiQ4xtTO.js +0 -4
- package/dist/assets/Index-DD_3SAvG.css +0 -1
- package/dist/assets/validator-CKXSZi1B.js +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
import{F as T}from"./index.es-Cj7JhB9l.js";import{E as q}from"./index-DTTgiRJO.js";import{E as W}from"./index-DGD-ZdYv.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 A,N,x as V,J as p,M as K,Q as U}from"./vendor-vue-NSDaktjZ.js";import{E as y,b7 as H,cu as J,cv as z,cw as P,cx as Q,cy as S,cz as M,cA as j,cB as D,cd as X,aw as F,ce as Y}from"./index-C1XlU4PJ.js";import{I as O,S as Z,l as ee}from"./pagination-781R2MGE.js";import{E as te}from"./index-CL9b57Qt.js";import{p as ae}from"./pasteUploadMixin-BurWbGNQ.js";import{I as x}from"./ImagePreview-LoZpT38c.js";import{E as oe}from"./index-zFiz41F1.js";import{E as R}from"./index-CvKWKElQ.js";import{E as B,a as G}from"./index-HXiSR2EH.js";import{C as ne}from"./Consumption-Ddq_1dsG.js";import{a as se}from"./price-DmDMgPIs.js";import{b as le}from"./errorCode-Cqj9Td_Z.js";import{n as re}from"./nanobanana-3IRvpMZA.js";import{C as ie}from"./CopyToClipboard-CDbXsPpE.js";import{I as ce}from"./ImageWrapper-CeIntWtS.js";import{E as ue}from"./index-BER5GLYf.js";import{E as me}from"./index-Chv0_uti.js";import{E as de}from"./index-CDE0P5Mz.js";import{B as pe}from"./BotPlaceholder-D689G_E8.js";import{N as fe}from"./NoTasks-BL9-0YOm.js";import"./use-form-item-RrqgHY2m.js";import"./index-BuyEbX8F.js";import"./vendor-axios-B8_nURbH.js";import"./vendor-dayjs-v0j1UNZp.js";import"./vendor-vue-router-Kg6s1a65.js";import"./typescript-DCNCCMox.js";import"./index-H9W12Q1V.js";import"./index-CuwmZbiT.js";import"./index-C7bC5Zyg.js";import"./_baseClone-CaNqBOJq.js";import"./_Uint8Array-BndSMjzA.js";import"./_initCloneObject-D3DOodS1.js";import"./isEqual-CAlLUdzO.js";import"./index-HpF2hGVR.js";import"./strings-beZM2Y-f.js";import"./castArray-D_LQYGBx.js";import"./debounce-Q951B-04.js";import"./_baseIteratee-B6KL1Ia9.js";import"./index-C7YZwThL.js";import"./index-BHWp6bRR.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:te,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"},Ae={class:"box"},Ve={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",Ae,[c("h2",Ve,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:oe,ElButton:q,InfoIcon:O,ImagePreview:x,FontAwesomeIcon:T},mixins:[ae],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(A,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(A,null,N(e.fileList,(r,v)=>(n(),V(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(A,null,N(e.options,m=>(n(),V(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:Q,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=J)}}),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(A,null,N(e.options,d=>(n(),V(_,{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}))}}),Je={class:"field"},Qe={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",Je,[c("div",Qe,[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(A,null,N(e.options,d=>(n(),V(_,{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:ne,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 se({...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"},At={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Vt={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(A,null,N(e.modelValue?.request?.image_urls,(I,L)=>(n(),V(_,{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(A,null,N(e.images,(I,L)=>(n(),V(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",At,[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",Vt,[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:Z},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(A,null,[e.tasks?.items===void 0?(n(),l("div",xt,[a(h)])):e.tasks?.items?.length&&e.tasks?.items?.length>0?(n(),V(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(A,null,N(e.tasks?.items,w=>(n(),V(_,{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]]),Jt=Y("nanobanana"),Qt=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 ee({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:Jt},i=this.credential?.token;if(!i){console.error("no token specified");return}R.info(this.$t("nanobanana.message.startingTask")),X("nanobanana",re.generate($,{token:i})).then(()=>{R.success(this.$t("nanobanana.message.startTaskSuccess"))}).catch(b=>{const f=b?.response?.data;f?.error?.code===le?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(),V(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 ja=y(Qt,[["render",Xt]]);export{ja as default};
|
|
1
|
+
import{F as T}from"./index.es-BDOMZBHy.js";import{E as q}from"./index-r1WlQTkd.js";import{E as W}from"./index-Blv6QaIk.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 A,N,x as V,J as p,M as K,Q as U}from"./vendor-vue-NSDaktjZ.js";import{E as y,b7 as H,cu as J,cv as z,cw as P,cx as Q,cy as S,cz as M,cA as j,cB as D,cd as X,aw as F,ce as Y}from"./index-tspOPlR8.js";import{I as O,S as Z,l as ee}from"./pagination-DEnicVya.js";import{E as te}from"./index-D9WB_FIQ.js";import{p as ae}from"./pasteUploadMixin-BurWbGNQ.js";import{I as x}from"./ImagePreview-BwVG4xnq.js";import{E as oe}from"./index-DnX3iGId.js";import{E as R}from"./index-BJ8z356Q.js";import{E as B,a as G}from"./index-DZa1Dmz4.js";import{C as ne}from"./Consumption-D5MPVVSr.js";import{a as se}from"./price-kWAt8zxX.js";import{b as le}from"./errorCode-Cqj9Td_Z.js";import{n as re}from"./nanobanana-BxT0wXzK.js";import{C as ie}from"./CopyToClipboard-6msgbpJQ.js";import{I as ce}from"./ImageWrapper-fMrdkLXq.js";import{E as ue}from"./index-BCps6OLj.js";import{E as me}from"./index-BfzztZ3C.js";import{E as de}from"./index-CNDbe5I7.js";import{B as pe}from"./BotPlaceholder-T1JnFchM.js";import{N as fe}from"./NoTasks-DKhvXOog.js";import"./use-form-item-CiGuYlwo.js";import"./index-BuyEbX8F.js";import"./vendor-axios-B8_nURbH.js";import"./vendor-dayjs-v0j1UNZp.js";import"./vendor-vue-router-Kg6s1a65.js";import"./typescript-VAjzYBVV.js";import"./index-CjRED359.js";import"./index-CPETW0B-.js";import"./index-HqBS33mo.js";import"./_baseClone-DquV2Mnx.js";import"./_Uint8Array-BeRfpqL7.js";import"./_initCloneObject-9PUJFEMx.js";import"./isEqual-CRG_uQtW.js";import"./index-MeXqAg39.js";import"./strings-beZM2Y-f.js";import"./castArray-278F4M9m.js";import"./debounce-CnPBB63_.js";import"./_baseIteratee-DuHUzj8X.js";import"./index-CIHBGnWH.js";import"./index-Dt3sdSti.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:te,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"},Ae={class:"box"},Ve={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",Ae,[c("h2",Ve,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:oe,ElButton:q,InfoIcon:O,ImagePreview:x,FontAwesomeIcon:T},mixins:[ae],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(A,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(A,null,N(e.fileList,(r,v)=>(n(),V(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(A,null,N(e.options,m=>(n(),V(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:Q,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=J)}}),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(A,null,N(e.options,d=>(n(),V(_,{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}))}}),Je={class:"field"},Qe={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",Je,[c("div",Qe,[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(A,null,N(e.options,d=>(n(),V(_,{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:ne,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 se({...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"},At={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Vt={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(A,null,N(e.modelValue?.request?.image_urls,(I,L)=>(n(),V(_,{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(A,null,N(e.images,(I,L)=>(n(),V(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",At,[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",Vt,[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:Z},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(A,null,[e.tasks?.items===void 0?(n(),l("div",xt,[a(h)])):e.tasks?.items?.length&&e.tasks?.items?.length>0?(n(),V(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(A,null,N(e.tasks?.items,w=>(n(),V(_,{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]]),Jt=Y("nanobanana"),Qt=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 ee({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:Jt},i=this.credential?.token;if(!i){console.error("no token specified");return}R.info(this.$t("nanobanana.message.startingTask")),X("nanobanana",re.generate($,{token:i})).then(()=>{R.success(this.$t("nanobanana.message.startTaskSuccess"))}).catch(b=>{const f=b?.response?.data;f?.error?.code===le?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(),V(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 ja=y(Qt,[["render",Xt]]);export{ja as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{F as T}from"./index.es-Cj7JhB9l.js";import{E as I}from"./index-DTTgiRJO.js";import{E as W}from"./index-DGD-ZdYv.js";import{d as b,H as i,E as r,z as D,C as s,y as u,D as t,q as n,F as o,O as L,N as F,x as w,J as _,I as f,M as J,Q as C}from"./vendor-vue-NSDaktjZ.js";import{E,c$ as K,d0 as Q,d1 as X,d2 as P,d3 as Y,d4 as Z,d5 as x,d6 as ee,b7 as M,d7 as se,d8 as te,d9 as oe,da as ne,db as ae,cd as le,aw as O,ce as ie}from"./index-C1XlU4PJ.js";import{I as S,S as re,l as ce}from"./pagination-781R2MGE.js";import{E as de}from"./index-CL9b57Qt.js";import{E as R,a as U}from"./index-HXiSR2EH.js";import{E as G}from"./index-D0GM_1ZF.js";import{p as j}from"./pasteUploadMixin-BurWbGNQ.js";import{I as B}from"./ImagePreview-LoZpT38c.js";import{E as q}from"./index-zFiz41F1.js";import{E as y}from"./index-CvKWKElQ.js";import{C as me}from"./Consumption-Ddq_1dsG.js";import{a as pe}from"./price-DmDMgPIs.js";import{C as ue}from"./CopyToClipboard-CDbXsPpE.js";import{V as fe}from"./VideoPlayer-DH10Nw7l.js";import{I as _e}from"./ImageWrapper-CeIntWtS.js";import{E as he}from"./index-BER5GLYf.js";import{E as ve}from"./index-Chv0_uti.js";import{E as $e}from"./index-CDE0P5Mz.js";import{B as ge}from"./BotPlaceholder-D689G_E8.js";import{N as be}from"./NoTasks-BL9-0YOm.js";import{b as Ee}from"./errorCode-Cqj9Td_Z.js";import{s as ke}from"./seedance-C5F8rvrf.js";import"./use-form-item-RrqgHY2m.js";import"./index-BuyEbX8F.js";import"./vendor-axios-B8_nURbH.js";import"./vendor-dayjs-v0j1UNZp.js";import"./vendor-vue-router-Kg6s1a65.js";import"./typescript-DCNCCMox.js";import"./index-H9W12Q1V.js";import"./index-CuwmZbiT.js";import"./index-HpF2hGVR.js";import"./strings-beZM2Y-f.js";import"./isEqual-CAlLUdzO.js";import"./_Uint8Array-BndSMjzA.js";import"./castArray-D_LQYGBx.js";import"./debounce-Q951B-04.js";import"./_baseIteratee-B6KL1Ia9.js";import"./index-C7YZwThL.js";import"./validator-CKXSZi1B.js";import"./index-C7bC5Zyg.js";import"./_baseClone-CaNqBOJq.js";import"./_initCloneObject-D3DOodS1.js";import"./vue-plyr-BO2nlN4c.js";import"./index-BHWp6bRR.js";const ye=b({name:"LayoutSeedance",components:{ElDrawer:W,ElButton:I,FontAwesomeIcon:T},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,p,h,g,$){const c=t("font-awesome-icon"),l=t("el-button"),m=t("el-drawer");return n(),i("div",we,[r("div",Se,[D(e.$slots,"config",{},void 0,!0)]),r("div",Ve,[D(e.$slots,"result",{},void 0,!0)]),s(l,{circle:"",class:"menu",onClick:a[0]||(a[0]=d=>e.drawer=!0)},{default:u(()=>[s(c,{icon:"fa-solid fa-magic"})]),_:1}),s(m,{modelValue:e.drawer,"onUpdate:modelValue":a[1]||(a[1]=d=>e.drawer=d),direction:"ltr","with-header":!1,size:"350px"},{default:u(()=>[D(e.$slots,"config",{},void 0,!0)]),_:3},8,["modelValue"])])}const Te=E(ye,[["render",Le],["__scopeId","data-v-02e4e4b3"]]),Ie="",Ce=b({name:"SeedancePromptInput",components:{ElInput:de,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)}}),Fe={class:"field"},Ae={class:"box"},De={class:"title font-bold"};function Re(e,a,p,h,g,$){const c=t("info-icon"),l=t("el-input");return n(),i("div",Fe,[r("div",Ae,[r("h2",De,o(e.$t("seedance.name.prompt")),1),s(c,{content:e.$t("seedance.description.prompt"),class:"info"},null,8,["content"])]),s(l,{modelValue:e.prompt,"onUpdate:modelValue":a[0]||(a[0]=m=>e.prompt=m),rows:4,type:"textarea",class:"prompt",placeholder:e.$t("seedance.placeholder.prompt")},null,8,["modelValue","placeholder"])])}const Ue=E(Ce,[["render",Re],["__scopeId","data-v-865909f4"]]),Ne=b({name:"SeedanceModelSelector",components:{ElSelect:U,ElOption:R,InfoIcon:S},data(){return{options:[{value:Q,label:this.$t("seedance.model.seedance10pro")},{value:X,label:this.$t("seedance.model.seedance10proFast")},{value:P,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,p,h,g,$){const c=t("info-icon"),l=t("el-option"),m=t("el-select");return n(),i("div",Oe,[r("div",Pe,[r("div",Me,[r("h2",Ge,o(e.$t("seedance.name.model")),1),s(c,{content:e.$t("seedance.description.model"),class:"info"},null,8,["content"])])]),s(m,{modelValue:e.value,"onUpdate:modelValue":a[0]||(a[0]=d=>e.value=d),class:"value",placeholder:e.$t("seedance.placeholder.select")},{default:u(()=>[(n(!0),i(L,null,F(e.options,d=>(n(),w(l,{key:d.value,label:d.label,value:d.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const Be=E(Ne,[["render",je],["__scopeId","data-v-eaa1425a"]]),qe=b({name:"SeedanceDurationSelector",components:{ElSelect:U,ElOption:R,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,p,h,g,$){const c=t("info-icon"),l=t("el-option"),m=t("el-select");return n(),i("div",ze,[r("div",He,[r("div",We,[r("h2",Je,o(e.$t("seedance.name.duration")),1),s(c,{content:e.$t("seedance.description.duration"),class:"info"},null,8,["content"])])]),s(m,{modelValue:e.value,"onUpdate:modelValue":a[0]||(a[0]=d=>e.value=d),class:"value",placeholder:e.$t("seedance.placeholder.select")},{default:u(()=>[(n(!0),i(L,null,F(e.options,d=>(n(),w(l,{key:d.value,label:d.label,value:d.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const Qe=E(qe,[["render",Ke],["__scopeId","data-v-5c809a72"]]),Xe=b({name:"SeedanceGenerateAudioSwitch",components:{ElSwitch:G,InfoIcon:S},computed:{isSupported(){return this.$store.state.seedance?.config?.model===P},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,p,h,g,$){const c=t("info-icon"),l=t("el-switch");return e.isSupported?(n(),i("div",Ye,[r("div",Ze,[r("div",xe,[r("h2",es,o(e.$t("seedance.name.generateAudio")),1),s(c,{content:e.$t("seedance.description.generateAudio"),class:"info"},null,8,["content"])])]),r("div",ss,[s(l,{modelValue:e.value,"onUpdate:modelValue":a[0]||(a[0]=m=>e.value=m),"inline-prompt":"","active-text":e.$t("seedance.button.on"),"inactive-text":e.$t("seedance.button.off")},null,8,["modelValue","active-text","inactive-text"])])])):_("",!0)}const os=E(Xe,[["render",ts],["__scopeId","data-v-8d716dcc"]]),ns=b({name:"SeedanceFirstFrameImage",components:{ElUpload:q,ElButton:I,InfoIcon:S,FontAwesomeIcon:T,ImagePreview:B},mixins:[j],data(){return{fileList:[],uploadUrl:M()+"/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(){y.warning(this.$t("seedance.message.uploadExceed"))},onError(){y.error(this.$t("seedance.message.uploadError"))},onSetFirstFrameUrl(){const e=this.urls?.[0],p=(this.$store.state.seedance?.config?.images||[]).filter(h=>h?.role!=="first_frame");e&&p.push({url:e,role:"first_frame"}),this.$store.commit("seedance/setConfig",{...this.$store.state.seedance?.config,images:p.length>0?p:void 0})},async onSuccess(){this.onSetFirstFrameUrl()},async onRemove(){this.onSetFirstFrameUrl()}}}),as={class:"relative"},ls={class:"flex justify-between"},is={class:"flex justify-start items-center"},rs={class:"text-sm font-bold"};function cs(e,a,p,h,g,$){const c=t("info-icon"),l=t("image-preview"),m=t("font-awesome-icon"),d=t("el-button"),k=t("el-upload");return n(),i("div",as,[r("div",ls,[r("div",is,[r("span",rs,o(e.$t("seedance.name.firstFrame")),1),s(c,{content:e.$t("seedance.description.firstFrame")},null,8,["content"])])]),s(k,{ref:"uploader","file-list":e.fileList,"onUpdate:fileList":a[0]||(a[0]=v=>e.fileList=v),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:u(({file:v})=>[v.url&&v.percentage!==void 0?(n(),w(l,{key:0,url:v.url,name:v.name,percentage:v.percentage,onRemove:V=>e.fileList.splice(e.fileList.indexOf(v),1)},null,8,["url","name","percentage","onRemove"])):_("",!0)]),default:u(()=>[s(d,{round:"",type:"primary",size:"small",class:"btn btn-upload"},{default:u(()=>[s(m,{icon:"fa-solid fa-upload",class:"icon mr-1"}),f(" "+o(e.$t("seedance.button.upload")),1)]),_:1})]),_:1},8,["file-list","action","on-exceed","on-error","on-success","on-remove","headers"])])}const ds=E(ns,[["render",cs],["__scopeId","data-v-5294baf8"]]),ms=b({name:"SeedanceLastFrameImage",components:{ElUpload:q,ElButton:I,ImagePreview:B,InfoIcon:S,FontAwesomeIcon:T},mixins:[j],data(){return{fileList:[],uploadUrl:M()+"/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(){y.warning(this.$t("seedance.message.uploadExceed"))},onError(){y.error(this.$t("seedance.message.uploadError"))},onSetLastFrameUrl(){const e=this.urls?.[0],p=(this.$store.state.seedance?.config?.images||[]).filter(h=>h?.role!=="last_frame");e&&p.push({url:e,role:"last_frame"}),this.$store.commit("seedance/setConfig",{...this.$store.state.seedance?.config,images:p.length>0?p:void 0})},async onSuccess(){this.onSetLastFrameUrl()},async onRemove(){this.onSetLastFrameUrl()}}}),ps={class:"relative"},us={class:"flex justify-between"},fs={class:"flex justify-start items-center"},_s={class:"text-sm font-bold"};function hs(e,a,p,h,g,$){const c=t("info-icon"),l=t("image-preview"),m=t("font-awesome-icon"),d=t("el-button"),k=t("el-upload");return n(),i("div",ps,[r("div",us,[r("div",fs,[r("span",_s,o(e.$t("seedance.name.lastFrame")),1),s(c,{content:e.$t("seedance.description.lastFrame")},null,8,["content"])])]),s(k,{ref:"uploader","file-list":e.fileList,"onUpdate:fileList":a[0]||(a[0]=v=>e.fileList=v),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:u(({file:v})=>[v.url&&v.percentage!==void 0?(n(),w(l,{key:0,url:v.url,name:v.name,percentage:v.percentage,onRemove:V=>e.fileList.splice(e.fileList.indexOf(v),1)},null,8,["url","name","percentage","onRemove"])):_("",!0)]),default:u(()=>[s(d,{round:"",type:"primary",size:"small",class:"btn btn-upload"},{default:u(()=>[s(m,{icon:"fa-solid fa-upload",class:"icon mr-1"}),f(" "+o(e.$t("seedance.button.upload")),1)]),_:1})]),_:1},8,["file-list","action","on-exceed","on-error","on-success","on-remove","headers"])])}const vs=E(ms,[["render",hs],["__scopeId","data-v-f423739f"]]),$s=b({name:"SeedanceServiceTierSelector",components:{ElSelect:U,ElOption:R,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,p,h,g,$){const c=t("info-icon"),l=t("el-option"),m=t("el-select");return n(),i("div",gs,[r("div",bs,[r("div",Es,[r("h2",ks,o(e.$t("seedance.name.serviceTier")),1),s(c,{content:e.$t("seedance.description.serviceTier"),class:"info"},null,8,["content"])])]),s(m,{modelValue:e.value,"onUpdate:modelValue":a[0]||(a[0]=d=>e.value=d),class:"value",placeholder:e.$t("seedance.placeholder.select")},{default:u(()=>[(n(!0),i(L,null,F(e.options,d=>(n(),w(l,{key:d.value,label:d.label,value:d.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const ws=E($s,[["render",ys],["__scopeId","data-v-a62125ec"]]),Ss=b({name:"SeedanceReturnLastFrameSwitch",components:{ElSwitch:G,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"},Cs={class:"value"};function Fs(e,a,p,h,g,$){const c=t("info-icon"),l=t("el-switch");return n(),i("div",Vs,[r("div",Ls,[r("div",Ts,[r("h2",Is,o(e.$t("seedance.name.returnLastFrame")),1),s(c,{content:e.$t("seedance.description.returnLastFrame"),class:"info"},null,8,["content"])])]),r("div",Cs,[s(l,{modelValue:e.value,"onUpdate:modelValue":a[0]||(a[0]=m=>e.value=m),"inline-prompt":"","active-text":e.$t("seedance.button.on"),"inactive-text":e.$t("seedance.button.off")},null,8,["modelValue","active-text","inactive-text"])])])}const As=E(Ss,[["render",Fs],["__scopeId","data-v-cd179b1c"]]),Ds=b({name:"SeedanceConfigPanel",components:{ElButton:I,FontAwesomeIcon:T,PromptInput:Ue,ModelSelector:Be,DurationSelector:Qe,GenerateAudioSwitch:os,ServiceTierSelector:ws,ReturnLastFrameSwitch:As,FirstFrameImage:ds,LastFrameImage:vs,Consumption:me},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,p,h,g,$){const c=t("prompt-input"),l=t("model-selector"),m=t("duration-selector"),d=t("generate-audio-switch"),k=t("service-tier-selector"),v=t("return-last-frame-switch"),V=t("first-frame-image"),A=t("last-frame-image"),N=t("consumption"),z=t("font-awesome-icon"),H=t("el-button");return n(),i("div",Rs,[r("div",Us,[s(c,{class:"mb-4"}),s(l,{class:"mb-4"}),s(m,{class:"mb-4"}),s(d,{class:"mb-4"}),s(k,{class:"mb-4"}),s(v,{class:"mb-4"}),s(V,{class:"mb-2"}),s(A,{class:"mb-2"})]),r("div",Ns,[s(N,{value:e.consumption,service:e.service},null,8,["value","service"]),s(H,{type:"primary",class:"btn w-full",round:"",onClick:e.onGenerate},{default:u(()=>[s(z,{icon:"fa-solid fa-magic",class:"mr-2"}),f(" "+o(e.$t("seedance.button.generate")),1)]),_:1},8,["onClick"])])])}const Ps=E(Ds,[["render",Os]]),Ms=b({name:"SeedanceTaskPreview",components:{ElImage:$e,CopyToClipboard:ue,FontAwesomeIcon:T,ElAlert:ve,VideoPlayer:fe,ElTooltip:he,ElButton:I,ImageWrapper:_e},props:{modelValue:{type:Object,required:!0}},data(){return{seedanceLogo:ae}},computed:{video(){return this.modelValue?.response?.data}},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:"prompt mt-2"},Js={key:0},Ks={key:1},Qs={key:0,class:C({content:!0})},Xs={class:"text-[var(--el-text-color-regular)] text-xs mb-0"},Ys={key:1,class:C({content:!0})},Zs={key:0,class:"mb-4"},xs={key:1,class:"mb-4"},et={key:2,class:C({operations:!0,"mt-2":!0,"mb-2":!0})},st={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},tt={key:1,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},ot={key:2,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},nt={key:0},at={key:1},lt={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"},rt={key:4,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},ct={key:5,class:"text-[var(--el-text-color-regular)] text-xs mb-0"},dt={key:2,class:C({content:!0})},mt={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"},ut={key:1,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},ft={key:2,class:"text-[var(--el-text-color-regular)] text-xs mb-0"},_t={key:3,class:C({content:!0})},ht={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},vt={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-0"};function $t(e,a,p,h,g,$){const c=t("el-image"),l=t("font-awesome-icon"),m=t("copy-to-clipboard"),d=t("el-alert"),k=t("video-player"),v=t("image-wrapper"),V=t("el-button"),A=t("el-tooltip");return n(),i("div",Gs,[r("div",js,[s(c,{src:e.seedanceLogo,class:"avatar"},null,8,["src"])]),r("div",Bs,[r("div",qs,[f(o(e.$t("seedance.name.seedanceBot"))+" ",1),r("span",zs,o(e.$dayjs.format(""+new Date(parseFloat((e.modelValue?.created_at||"").toString())*1e3))),1)]),r("div",Hs,[e.modelValue?.request?.prompt?(n(),i("p",Ws,[f(o(e.modelValue?.request?.prompt)+" ",1),e.modelValue?.response?e.video?.status==="processing"||e.video?.status==="pending"?(n(),i("span",Ks," - ("+o(e.$t("seedance.status.processing"))+") ",1)):_("",!0):(n(),i("span",Js," - ("+o(e.$t("seedance.status.pending"))+") ",1))])):_("",!0)]),e.modelValue?.response?e.modelValue?.response?.success===!0?(n(),i("div",Ys,[e.video?.video_url?(n(),i("div",Zs,[s(k,{src:e.video?.video_url},null,8,["src"])])):_("",!0),e.video?.last_frame_url?(n(),i("div",xs,[s(v,{src:e.video?.last_frame_url,"raw-src":e.video?.last_frame_url},null,8,["src","raw-src"])])):_("",!0),e.video?.video_url?(n(),i("div",et,[s(A,{class:"box-item",effect:"dark",content:e.$t("seedance.message.downloadVideo"),placement:"top-start"},{default:u(()=>[s(V,{type:"info",size:"small",class:"btn-action",onClick:a[0]||(a[0]=J(N=>e.onDownload(e.video?.video_url),["stop"]))},{default:u(()=>[f(o(e.$t("seedance.button.download")),1)]),_:1})]),_:1},8,["content"])])):_("",!0),s(d,{closable:!1,class:"mt-2 success"},{default:u(()=>[e.modelValue?.request?.model?(n(),i("p",st,[s(l,{icon:"fa-solid fa-cube",class:"mr-1"}),f(" "+o(e.$t("seedance.name.model"))+": "+o(e.modelValue?.request?.model),1)])):_("",!0),e.video?.duration?(n(),i("p",tt,[s(l,{icon:"fa-solid fa-clock",class:"mr-1"}),f(" "+o(e.$t("seedance.name.duration"))+": "+o(e.video?.duration)+"s ",1)])):_("",!0),e.video?.resolution?(n(),i("p",ot,[s(l,{icon:"fa-solid fa-expand",class:"mr-1"}),f(" "+o(e.$t("seedance.name.resolution"))+": "+o(e.video?.resolution)+" ",1),e.video?.ratio?(n(),i("span",nt," · "+o(e.video?.ratio),1)):_("",!0),e.video?.framespersecond?(n(),i("span",at," · "+o(e.video?.framespersecond)+"fps",1)):_("",!0)])):_("",!0),e.modelValue?.request?.generate_audio?(n(),i("p",lt,[s(l,{icon:"fa-solid fa-volume-up",class:"mr-1"}),f(" "+o(e.$t("seedance.name.generateAudio"))+": "+o(e.$t("seedance.button.on")),1)])):_("",!0),r("p",it,[s(l,{icon:"fa-solid fa-magic",class:"mr-1"}),f(" "+o(e.$t("seedance.name.taskId"))+": "+o(e.modelValue?.id)+" ",1),s(m,{content:e.modelValue?.id,class:"btn-copy inline-block"},null,8,["content"])]),e.modelValue?.elapsed?(n(),i("p",rt,[s(l,{icon:"fa-solid fa-clock",class:"mr-1"}),f(" "+o(e.$t("seedance.name.elapsed"))+": "+o(e.modelValue?.elapsed?.toFixed(2))+"s ",1)])):_("",!0),e.modelValue?.response?.trace_id?(n(),i("p",ct,[s(l,{icon:"fa-solid fa-hashtag",class:"mr-1"}),f(" "+o(e.$t("seedance.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?(n(),i("div",dt,[s(d,{closable:!1,class:"failure"},{template:u(()=>[s(l,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),f(" "+o(e.$t("seedance.name.failure")),1)]),default:u(()=>[r("p",mt,[s(l,{icon:"fa-solid fa-magic",class:"mr-1"}),f(" "+o(e.$t("seedance.name.taskId"))+": "+o(e.modelValue?.id)+" ",1),s(m,{content:e.modelValue?.id,class:"btn-copy inline-block"},null,8,["content"])]),e.modelValue?.response?.error?.message?(n(),i("p",pt,[s(l,{icon:"fa-solid fa-circle-info",class:"mr-1"}),f(" "+o(e.$t("seedance.name.failureReason"))+": "+o(e.modelValue?.response?.error?.message)+" ",1),s(m,{content:e.modelValue?.response?.error?.message,class:"btn-copy inline-block"},null,8,["content"])])):_("",!0),e.modelValue?.elapsed?(n(),i("p",ut,[s(l,{icon:"fa-solid fa-clock",class:"mr-1"}),f(" "+o(e.$t("seedance.name.elapsed"))+": "+o(e.modelValue?.elapsed?.toFixed(2))+"s ",1)])):_("",!0),e.modelValue?.response?.trace_id?(n(),i("p",ft,[s(l,{icon:"fa-solid fa-hashtag",class:"mr-1"}),f(" "+o(e.$t("seedance.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})])):(n(),i("div",_t,[s(d,{closable:!1,class:"info"},{template:u(()=>[s(l,{icon:"fa-solid fa-circle-info",class:"mr-1"}),f(" "+o(e.$t("seedance.name.status")),1)]),default:u(()=>[r("p",ht,[s(l,{icon:"fa-solid fa-magic",class:"mr-1"}),f(" "+o(e.$t("seedance.name.taskId"))+": "+o(e.modelValue?.id)+" ",1),s(m,{content:e.modelValue?.id,class:"btn-copy inline-block"},null,8,["content"])]),e.modelValue?.response?.trace_id?(n(),i("p",vt,[s(l,{icon:"fa-solid fa-hashtag",class:"mr-1"}),f(" "+o(e.$t("seedance.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})])):(n(),i("div",Qs,[s(d,{closable:!1,class:"info"},{template:u(()=>[s(l,{icon:"fa-regular fa-clock",class:"mr-1"}),f(" "+o(e.$t("seedance.status.pending")),1)]),default:u(()=>[r("p",Xs,[s(l,{icon:"fa-solid fa-magic",class:"mr-1"}),f(" "+o(e.$t("seedance.name.taskId"))+": "+o(e.modelValue?.id)+" ",1),s(m,{content:e.modelValue?.id,class:"btn-copy inline-block"},null,8,["content"])])]),_:1})]))])])}const gt=E(Ms,[["render",$t],["__scopeId","data-v-55180a54"]]),bt=b({name:"SeedanceRecentPanel",components:{TaskPreview:gt,BotPlaceholder:ge,NoTasks:be,ScrollList:re},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?.()}}}),Et={key:0},kt={key:2,class:"w-full h-full flex items-center justify-center"};function yt(e,a,p,h,g,$){const c=t("bot-placeholder"),l=t("task-preview"),m=t("scroll-list"),d=t("no-tasks");return n(),i(L,null,[e.tasks?.items===void 0?(n(),i("div",Et,[s(c)])):e.tasks?.items?.length&&e.tasks?.items?.length>0?(n(),w(m,{key:1,ref:"scrollList",class:"tasks w-full h-full overflow-y-auto",loading:e.loading,onReachTop:a[0]||(a[0]=k=>e.$emit("reach-top"))},{default:u(()=>[(n(!0),i(L,null,F(e.tasks?.items,k=>(n(),w(l,{key:k.id,"model-value":k},null,8,["model-value"]))),128))]),_:1},8,["loading"])):_("",!0),e.tasks?.items?.length===0?(n(),i("div",kt,[s(d)])):_("",!0)],64)}const wt=E(bt,[["render",yt]]),St=ie("seedance"),Vt=b({name:"SeedanceIndex",components:{ConfigPanel:Ps,Layout:Te,RecentPanel:wt},inject:["initialized"],data(){return{task:void 0,job:0,loadingMore:!1,fetchingTasks:!1}},computed:{applicationsLoading(){return this.$store.state.seedance?.status?.getApplications===O.Request},tasksLoading(){return this.$store.state.seedance?.status?.getTasks===O.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 ce({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:p,createdAtMax:h}=e||{};this.fetchingTasks=!0;try{await this.$store.dispatch("seedance/getTasks",{limit:a,createdAtMin:p,createdAtMax:h})}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(c=>!!c?.url);const g=e.images.some(c=>c?.role==="first_frame"),$=e.images.some(c=>c?.role==="last_frame");!g&&$&&(e.images=e.images.map(c=>c?.role==="last_frame"?{...c,role:"first_frame"}:c))}!(Array.isArray(e?.images)&&e.images.length>0)&&"images"in e&&delete e.images;const p={...e,callback_url:St},h=this.credential?.token;if(!h){console.error("no token specified");return}y.info(this.$t("seedance.message.startingTask")),le("seedance",ke.generate(p,{token:h})).then(()=>{y.success(this.$t("seedance.message.startTaskSuccess"))}).catch(g=>{const $=g?.response?.data;$?.error?.code===Ee?y.error(this.$t("seedance.message.usedUp")):y.error(this.$t("seedance.message.startTaskFailed")+($?.error?.message||""))}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})},getTasksScrollElement(){return this.$refs.recentPanel?.getScrollElement?.()}}});function Lt(e,a,p,h,g,$){const c=t("config-panel"),l=t("recent-panel"),m=t("layout");return n(),w(m,null,{config:u(()=>[s(c,{onGenerate:e.onGenerate},null,8,["onGenerate"])]),result:u(()=>[s(l,{ref:"recentPanel",loading:e.loadingMore,onReachTop:e.onReachTop},null,8,["loading","onReachTop"])]),_:1})}const ko=E(Vt,[["render",Lt]]);export{ko as default};
|
|
1
|
+
import{F as T}from"./index.es-BDOMZBHy.js";import{E as I}from"./index-r1WlQTkd.js";import{E as W}from"./index-Blv6QaIk.js";import{d as b,H as i,E as r,z as D,C as s,y as u,D as t,q as n,F as o,O as L,N as F,x as w,J as _,I as f,M as J,Q as C}from"./vendor-vue-NSDaktjZ.js";import{E,c$ as K,d0 as Q,d1 as X,d2 as P,d3 as Y,d4 as Z,d5 as x,d6 as ee,b7 as M,d7 as se,d8 as te,d9 as oe,da as ne,db as ae,cd as le,aw as O,ce as ie}from"./index-tspOPlR8.js";import{I as S,S as re,l as ce}from"./pagination-DEnicVya.js";import{E as de}from"./index-D9WB_FIQ.js";import{E as R,a as U}from"./index-DZa1Dmz4.js";import{E as G}from"./index-Dm0MxC20.js";import{p as j}from"./pasteUploadMixin-BurWbGNQ.js";import{I as B}from"./ImagePreview-BwVG4xnq.js";import{E as q}from"./index-DnX3iGId.js";import{E as y}from"./index-BJ8z356Q.js";import{C as me}from"./Consumption-D5MPVVSr.js";import{a as pe}from"./price-kWAt8zxX.js";import{C as ue}from"./CopyToClipboard-6msgbpJQ.js";import{V as fe}from"./VideoPlayer-B3iDYyIj.js";import{I as _e}from"./ImageWrapper-fMrdkLXq.js";import{E as he}from"./index-BCps6OLj.js";import{E as ve}from"./index-BfzztZ3C.js";import{E as $e}from"./index-CNDbe5I7.js";import{B as ge}from"./BotPlaceholder-T1JnFchM.js";import{N as be}from"./NoTasks-DKhvXOog.js";import{b as Ee}from"./errorCode-Cqj9Td_Z.js";import{s as ke}from"./seedance-Drvwshel.js";import"./use-form-item-CiGuYlwo.js";import"./index-BuyEbX8F.js";import"./vendor-axios-B8_nURbH.js";import"./vendor-dayjs-v0j1UNZp.js";import"./vendor-vue-router-Kg6s1a65.js";import"./typescript-VAjzYBVV.js";import"./index-CjRED359.js";import"./index-CPETW0B-.js";import"./index-MeXqAg39.js";import"./strings-beZM2Y-f.js";import"./isEqual-CRG_uQtW.js";import"./_Uint8Array-BeRfpqL7.js";import"./castArray-278F4M9m.js";import"./debounce-CnPBB63_.js";import"./_baseIteratee-DuHUzj8X.js";import"./index-CIHBGnWH.js";import"./validator-DruHczS_.js";import"./index-HqBS33mo.js";import"./_baseClone-DquV2Mnx.js";import"./_initCloneObject-9PUJFEMx.js";import"./vue-plyr-BO2nlN4c.js";import"./index-Dt3sdSti.js";const ye=b({name:"LayoutSeedance",components:{ElDrawer:W,ElButton:I,FontAwesomeIcon:T},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,p,h,g,$){const c=t("font-awesome-icon"),l=t("el-button"),m=t("el-drawer");return n(),i("div",we,[r("div",Se,[D(e.$slots,"config",{},void 0,!0)]),r("div",Ve,[D(e.$slots,"result",{},void 0,!0)]),s(l,{circle:"",class:"menu",onClick:a[0]||(a[0]=d=>e.drawer=!0)},{default:u(()=>[s(c,{icon:"fa-solid fa-magic"})]),_:1}),s(m,{modelValue:e.drawer,"onUpdate:modelValue":a[1]||(a[1]=d=>e.drawer=d),direction:"ltr","with-header":!1,size:"350px"},{default:u(()=>[D(e.$slots,"config",{},void 0,!0)]),_:3},8,["modelValue"])])}const Te=E(ye,[["render",Le],["__scopeId","data-v-02e4e4b3"]]),Ie="",Ce=b({name:"SeedancePromptInput",components:{ElInput:de,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)}}),Fe={class:"field"},Ae={class:"box"},De={class:"title font-bold"};function Re(e,a,p,h,g,$){const c=t("info-icon"),l=t("el-input");return n(),i("div",Fe,[r("div",Ae,[r("h2",De,o(e.$t("seedance.name.prompt")),1),s(c,{content:e.$t("seedance.description.prompt"),class:"info"},null,8,["content"])]),s(l,{modelValue:e.prompt,"onUpdate:modelValue":a[0]||(a[0]=m=>e.prompt=m),rows:4,type:"textarea",class:"prompt",placeholder:e.$t("seedance.placeholder.prompt")},null,8,["modelValue","placeholder"])])}const Ue=E(Ce,[["render",Re],["__scopeId","data-v-865909f4"]]),Ne=b({name:"SeedanceModelSelector",components:{ElSelect:U,ElOption:R,InfoIcon:S},data(){return{options:[{value:Q,label:this.$t("seedance.model.seedance10pro")},{value:X,label:this.$t("seedance.model.seedance10proFast")},{value:P,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,p,h,g,$){const c=t("info-icon"),l=t("el-option"),m=t("el-select");return n(),i("div",Oe,[r("div",Pe,[r("div",Me,[r("h2",Ge,o(e.$t("seedance.name.model")),1),s(c,{content:e.$t("seedance.description.model"),class:"info"},null,8,["content"])])]),s(m,{modelValue:e.value,"onUpdate:modelValue":a[0]||(a[0]=d=>e.value=d),class:"value",placeholder:e.$t("seedance.placeholder.select")},{default:u(()=>[(n(!0),i(L,null,F(e.options,d=>(n(),w(l,{key:d.value,label:d.label,value:d.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const Be=E(Ne,[["render",je],["__scopeId","data-v-eaa1425a"]]),qe=b({name:"SeedanceDurationSelector",components:{ElSelect:U,ElOption:R,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,p,h,g,$){const c=t("info-icon"),l=t("el-option"),m=t("el-select");return n(),i("div",ze,[r("div",He,[r("div",We,[r("h2",Je,o(e.$t("seedance.name.duration")),1),s(c,{content:e.$t("seedance.description.duration"),class:"info"},null,8,["content"])])]),s(m,{modelValue:e.value,"onUpdate:modelValue":a[0]||(a[0]=d=>e.value=d),class:"value",placeholder:e.$t("seedance.placeholder.select")},{default:u(()=>[(n(!0),i(L,null,F(e.options,d=>(n(),w(l,{key:d.value,label:d.label,value:d.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const Qe=E(qe,[["render",Ke],["__scopeId","data-v-5c809a72"]]),Xe=b({name:"SeedanceGenerateAudioSwitch",components:{ElSwitch:G,InfoIcon:S},computed:{isSupported(){return this.$store.state.seedance?.config?.model===P},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,p,h,g,$){const c=t("info-icon"),l=t("el-switch");return e.isSupported?(n(),i("div",Ye,[r("div",Ze,[r("div",xe,[r("h2",es,o(e.$t("seedance.name.generateAudio")),1),s(c,{content:e.$t("seedance.description.generateAudio"),class:"info"},null,8,["content"])])]),r("div",ss,[s(l,{modelValue:e.value,"onUpdate:modelValue":a[0]||(a[0]=m=>e.value=m),"inline-prompt":"","active-text":e.$t("seedance.button.on"),"inactive-text":e.$t("seedance.button.off")},null,8,["modelValue","active-text","inactive-text"])])])):_("",!0)}const os=E(Xe,[["render",ts],["__scopeId","data-v-8d716dcc"]]),ns=b({name:"SeedanceFirstFrameImage",components:{ElUpload:q,ElButton:I,InfoIcon:S,FontAwesomeIcon:T,ImagePreview:B},mixins:[j],data(){return{fileList:[],uploadUrl:M()+"/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(){y.warning(this.$t("seedance.message.uploadExceed"))},onError(){y.error(this.$t("seedance.message.uploadError"))},onSetFirstFrameUrl(){const e=this.urls?.[0],p=(this.$store.state.seedance?.config?.images||[]).filter(h=>h?.role!=="first_frame");e&&p.push({url:e,role:"first_frame"}),this.$store.commit("seedance/setConfig",{...this.$store.state.seedance?.config,images:p.length>0?p:void 0})},async onSuccess(){this.onSetFirstFrameUrl()},async onRemove(){this.onSetFirstFrameUrl()}}}),as={class:"relative"},ls={class:"flex justify-between"},is={class:"flex justify-start items-center"},rs={class:"text-sm font-bold"};function cs(e,a,p,h,g,$){const c=t("info-icon"),l=t("image-preview"),m=t("font-awesome-icon"),d=t("el-button"),k=t("el-upload");return n(),i("div",as,[r("div",ls,[r("div",is,[r("span",rs,o(e.$t("seedance.name.firstFrame")),1),s(c,{content:e.$t("seedance.description.firstFrame")},null,8,["content"])])]),s(k,{ref:"uploader","file-list":e.fileList,"onUpdate:fileList":a[0]||(a[0]=v=>e.fileList=v),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:u(({file:v})=>[v.url&&v.percentage!==void 0?(n(),w(l,{key:0,url:v.url,name:v.name,percentage:v.percentage,onRemove:V=>e.fileList.splice(e.fileList.indexOf(v),1)},null,8,["url","name","percentage","onRemove"])):_("",!0)]),default:u(()=>[s(d,{round:"",type:"primary",size:"small",class:"btn btn-upload"},{default:u(()=>[s(m,{icon:"fa-solid fa-upload",class:"icon mr-1"}),f(" "+o(e.$t("seedance.button.upload")),1)]),_:1})]),_:1},8,["file-list","action","on-exceed","on-error","on-success","on-remove","headers"])])}const ds=E(ns,[["render",cs],["__scopeId","data-v-5294baf8"]]),ms=b({name:"SeedanceLastFrameImage",components:{ElUpload:q,ElButton:I,ImagePreview:B,InfoIcon:S,FontAwesomeIcon:T},mixins:[j],data(){return{fileList:[],uploadUrl:M()+"/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(){y.warning(this.$t("seedance.message.uploadExceed"))},onError(){y.error(this.$t("seedance.message.uploadError"))},onSetLastFrameUrl(){const e=this.urls?.[0],p=(this.$store.state.seedance?.config?.images||[]).filter(h=>h?.role!=="last_frame");e&&p.push({url:e,role:"last_frame"}),this.$store.commit("seedance/setConfig",{...this.$store.state.seedance?.config,images:p.length>0?p:void 0})},async onSuccess(){this.onSetLastFrameUrl()},async onRemove(){this.onSetLastFrameUrl()}}}),ps={class:"relative"},us={class:"flex justify-between"},fs={class:"flex justify-start items-center"},_s={class:"text-sm font-bold"};function hs(e,a,p,h,g,$){const c=t("info-icon"),l=t("image-preview"),m=t("font-awesome-icon"),d=t("el-button"),k=t("el-upload");return n(),i("div",ps,[r("div",us,[r("div",fs,[r("span",_s,o(e.$t("seedance.name.lastFrame")),1),s(c,{content:e.$t("seedance.description.lastFrame")},null,8,["content"])])]),s(k,{ref:"uploader","file-list":e.fileList,"onUpdate:fileList":a[0]||(a[0]=v=>e.fileList=v),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:u(({file:v})=>[v.url&&v.percentage!==void 0?(n(),w(l,{key:0,url:v.url,name:v.name,percentage:v.percentage,onRemove:V=>e.fileList.splice(e.fileList.indexOf(v),1)},null,8,["url","name","percentage","onRemove"])):_("",!0)]),default:u(()=>[s(d,{round:"",type:"primary",size:"small",class:"btn btn-upload"},{default:u(()=>[s(m,{icon:"fa-solid fa-upload",class:"icon mr-1"}),f(" "+o(e.$t("seedance.button.upload")),1)]),_:1})]),_:1},8,["file-list","action","on-exceed","on-error","on-success","on-remove","headers"])])}const vs=E(ms,[["render",hs],["__scopeId","data-v-f423739f"]]),$s=b({name:"SeedanceServiceTierSelector",components:{ElSelect:U,ElOption:R,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,p,h,g,$){const c=t("info-icon"),l=t("el-option"),m=t("el-select");return n(),i("div",gs,[r("div",bs,[r("div",Es,[r("h2",ks,o(e.$t("seedance.name.serviceTier")),1),s(c,{content:e.$t("seedance.description.serviceTier"),class:"info"},null,8,["content"])])]),s(m,{modelValue:e.value,"onUpdate:modelValue":a[0]||(a[0]=d=>e.value=d),class:"value",placeholder:e.$t("seedance.placeholder.select")},{default:u(()=>[(n(!0),i(L,null,F(e.options,d=>(n(),w(l,{key:d.value,label:d.label,value:d.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const ws=E($s,[["render",ys],["__scopeId","data-v-a62125ec"]]),Ss=b({name:"SeedanceReturnLastFrameSwitch",components:{ElSwitch:G,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"},Cs={class:"value"};function Fs(e,a,p,h,g,$){const c=t("info-icon"),l=t("el-switch");return n(),i("div",Vs,[r("div",Ls,[r("div",Ts,[r("h2",Is,o(e.$t("seedance.name.returnLastFrame")),1),s(c,{content:e.$t("seedance.description.returnLastFrame"),class:"info"},null,8,["content"])])]),r("div",Cs,[s(l,{modelValue:e.value,"onUpdate:modelValue":a[0]||(a[0]=m=>e.value=m),"inline-prompt":"","active-text":e.$t("seedance.button.on"),"inactive-text":e.$t("seedance.button.off")},null,8,["modelValue","active-text","inactive-text"])])])}const As=E(Ss,[["render",Fs],["__scopeId","data-v-cd179b1c"]]),Ds=b({name:"SeedanceConfigPanel",components:{ElButton:I,FontAwesomeIcon:T,PromptInput:Ue,ModelSelector:Be,DurationSelector:Qe,GenerateAudioSwitch:os,ServiceTierSelector:ws,ReturnLastFrameSwitch:As,FirstFrameImage:ds,LastFrameImage:vs,Consumption:me},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,p,h,g,$){const c=t("prompt-input"),l=t("model-selector"),m=t("duration-selector"),d=t("generate-audio-switch"),k=t("service-tier-selector"),v=t("return-last-frame-switch"),V=t("first-frame-image"),A=t("last-frame-image"),N=t("consumption"),z=t("font-awesome-icon"),H=t("el-button");return n(),i("div",Rs,[r("div",Us,[s(c,{class:"mb-4"}),s(l,{class:"mb-4"}),s(m,{class:"mb-4"}),s(d,{class:"mb-4"}),s(k,{class:"mb-4"}),s(v,{class:"mb-4"}),s(V,{class:"mb-2"}),s(A,{class:"mb-2"})]),r("div",Ns,[s(N,{value:e.consumption,service:e.service},null,8,["value","service"]),s(H,{type:"primary",class:"btn w-full",round:"",onClick:e.onGenerate},{default:u(()=>[s(z,{icon:"fa-solid fa-magic",class:"mr-2"}),f(" "+o(e.$t("seedance.button.generate")),1)]),_:1},8,["onClick"])])])}const Ps=E(Ds,[["render",Os]]),Ms=b({name:"SeedanceTaskPreview",components:{ElImage:$e,CopyToClipboard:ue,FontAwesomeIcon:T,ElAlert:ve,VideoPlayer:fe,ElTooltip:he,ElButton:I,ImageWrapper:_e},props:{modelValue:{type:Object,required:!0}},data(){return{seedanceLogo:ae}},computed:{video(){return this.modelValue?.response?.data}},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:"prompt mt-2"},Js={key:0},Ks={key:1},Qs={key:0,class:C({content:!0})},Xs={class:"text-[var(--el-text-color-regular)] text-xs mb-0"},Ys={key:1,class:C({content:!0})},Zs={key:0,class:"mb-4"},xs={key:1,class:"mb-4"},et={key:2,class:C({operations:!0,"mt-2":!0,"mb-2":!0})},st={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},tt={key:1,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},ot={key:2,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},nt={key:0},at={key:1},lt={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"},rt={key:4,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},ct={key:5,class:"text-[var(--el-text-color-regular)] text-xs mb-0"},dt={key:2,class:C({content:!0})},mt={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"},ut={key:1,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},ft={key:2,class:"text-[var(--el-text-color-regular)] text-xs mb-0"},_t={key:3,class:C({content:!0})},ht={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},vt={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-0"};function $t(e,a,p,h,g,$){const c=t("el-image"),l=t("font-awesome-icon"),m=t("copy-to-clipboard"),d=t("el-alert"),k=t("video-player"),v=t("image-wrapper"),V=t("el-button"),A=t("el-tooltip");return n(),i("div",Gs,[r("div",js,[s(c,{src:e.seedanceLogo,class:"avatar"},null,8,["src"])]),r("div",Bs,[r("div",qs,[f(o(e.$t("seedance.name.seedanceBot"))+" ",1),r("span",zs,o(e.$dayjs.format(""+new Date(parseFloat((e.modelValue?.created_at||"").toString())*1e3))),1)]),r("div",Hs,[e.modelValue?.request?.prompt?(n(),i("p",Ws,[f(o(e.modelValue?.request?.prompt)+" ",1),e.modelValue?.response?e.video?.status==="processing"||e.video?.status==="pending"?(n(),i("span",Ks," - ("+o(e.$t("seedance.status.processing"))+") ",1)):_("",!0):(n(),i("span",Js," - ("+o(e.$t("seedance.status.pending"))+") ",1))])):_("",!0)]),e.modelValue?.response?e.modelValue?.response?.success===!0?(n(),i("div",Ys,[e.video?.video_url?(n(),i("div",Zs,[s(k,{src:e.video?.video_url},null,8,["src"])])):_("",!0),e.video?.last_frame_url?(n(),i("div",xs,[s(v,{src:e.video?.last_frame_url,"raw-src":e.video?.last_frame_url},null,8,["src","raw-src"])])):_("",!0),e.video?.video_url?(n(),i("div",et,[s(A,{class:"box-item",effect:"dark",content:e.$t("seedance.message.downloadVideo"),placement:"top-start"},{default:u(()=>[s(V,{type:"info",size:"small",class:"btn-action",onClick:a[0]||(a[0]=J(N=>e.onDownload(e.video?.video_url),["stop"]))},{default:u(()=>[f(o(e.$t("seedance.button.download")),1)]),_:1})]),_:1},8,["content"])])):_("",!0),s(d,{closable:!1,class:"mt-2 success"},{default:u(()=>[e.modelValue?.request?.model?(n(),i("p",st,[s(l,{icon:"fa-solid fa-cube",class:"mr-1"}),f(" "+o(e.$t("seedance.name.model"))+": "+o(e.modelValue?.request?.model),1)])):_("",!0),e.video?.duration?(n(),i("p",tt,[s(l,{icon:"fa-solid fa-clock",class:"mr-1"}),f(" "+o(e.$t("seedance.name.duration"))+": "+o(e.video?.duration)+"s ",1)])):_("",!0),e.video?.resolution?(n(),i("p",ot,[s(l,{icon:"fa-solid fa-expand",class:"mr-1"}),f(" "+o(e.$t("seedance.name.resolution"))+": "+o(e.video?.resolution)+" ",1),e.video?.ratio?(n(),i("span",nt," · "+o(e.video?.ratio),1)):_("",!0),e.video?.framespersecond?(n(),i("span",at," · "+o(e.video?.framespersecond)+"fps",1)):_("",!0)])):_("",!0),e.modelValue?.request?.generate_audio?(n(),i("p",lt,[s(l,{icon:"fa-solid fa-volume-up",class:"mr-1"}),f(" "+o(e.$t("seedance.name.generateAudio"))+": "+o(e.$t("seedance.button.on")),1)])):_("",!0),r("p",it,[s(l,{icon:"fa-solid fa-magic",class:"mr-1"}),f(" "+o(e.$t("seedance.name.taskId"))+": "+o(e.modelValue?.id)+" ",1),s(m,{content:e.modelValue?.id,class:"btn-copy inline-block"},null,8,["content"])]),e.modelValue?.elapsed?(n(),i("p",rt,[s(l,{icon:"fa-solid fa-clock",class:"mr-1"}),f(" "+o(e.$t("seedance.name.elapsed"))+": "+o(e.modelValue?.elapsed?.toFixed(2))+"s ",1)])):_("",!0),e.modelValue?.response?.trace_id?(n(),i("p",ct,[s(l,{icon:"fa-solid fa-hashtag",class:"mr-1"}),f(" "+o(e.$t("seedance.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?(n(),i("div",dt,[s(d,{closable:!1,class:"failure"},{template:u(()=>[s(l,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),f(" "+o(e.$t("seedance.name.failure")),1)]),default:u(()=>[r("p",mt,[s(l,{icon:"fa-solid fa-magic",class:"mr-1"}),f(" "+o(e.$t("seedance.name.taskId"))+": "+o(e.modelValue?.id)+" ",1),s(m,{content:e.modelValue?.id,class:"btn-copy inline-block"},null,8,["content"])]),e.modelValue?.response?.error?.message?(n(),i("p",pt,[s(l,{icon:"fa-solid fa-circle-info",class:"mr-1"}),f(" "+o(e.$t("seedance.name.failureReason"))+": "+o(e.modelValue?.response?.error?.message)+" ",1),s(m,{content:e.modelValue?.response?.error?.message,class:"btn-copy inline-block"},null,8,["content"])])):_("",!0),e.modelValue?.elapsed?(n(),i("p",ut,[s(l,{icon:"fa-solid fa-clock",class:"mr-1"}),f(" "+o(e.$t("seedance.name.elapsed"))+": "+o(e.modelValue?.elapsed?.toFixed(2))+"s ",1)])):_("",!0),e.modelValue?.response?.trace_id?(n(),i("p",ft,[s(l,{icon:"fa-solid fa-hashtag",class:"mr-1"}),f(" "+o(e.$t("seedance.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})])):(n(),i("div",_t,[s(d,{closable:!1,class:"info"},{template:u(()=>[s(l,{icon:"fa-solid fa-circle-info",class:"mr-1"}),f(" "+o(e.$t("seedance.name.status")),1)]),default:u(()=>[r("p",ht,[s(l,{icon:"fa-solid fa-magic",class:"mr-1"}),f(" "+o(e.$t("seedance.name.taskId"))+": "+o(e.modelValue?.id)+" ",1),s(m,{content:e.modelValue?.id,class:"btn-copy inline-block"},null,8,["content"])]),e.modelValue?.response?.trace_id?(n(),i("p",vt,[s(l,{icon:"fa-solid fa-hashtag",class:"mr-1"}),f(" "+o(e.$t("seedance.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})])):(n(),i("div",Qs,[s(d,{closable:!1,class:"info"},{template:u(()=>[s(l,{icon:"fa-regular fa-clock",class:"mr-1"}),f(" "+o(e.$t("seedance.status.pending")),1)]),default:u(()=>[r("p",Xs,[s(l,{icon:"fa-solid fa-magic",class:"mr-1"}),f(" "+o(e.$t("seedance.name.taskId"))+": "+o(e.modelValue?.id)+" ",1),s(m,{content:e.modelValue?.id,class:"btn-copy inline-block"},null,8,["content"])])]),_:1})]))])])}const gt=E(Ms,[["render",$t],["__scopeId","data-v-55180a54"]]),bt=b({name:"SeedanceRecentPanel",components:{TaskPreview:gt,BotPlaceholder:ge,NoTasks:be,ScrollList:re},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?.()}}}),Et={key:0},kt={key:2,class:"w-full h-full flex items-center justify-center"};function yt(e,a,p,h,g,$){const c=t("bot-placeholder"),l=t("task-preview"),m=t("scroll-list"),d=t("no-tasks");return n(),i(L,null,[e.tasks?.items===void 0?(n(),i("div",Et,[s(c)])):e.tasks?.items?.length&&e.tasks?.items?.length>0?(n(),w(m,{key:1,ref:"scrollList",class:"tasks w-full h-full overflow-y-auto",loading:e.loading,onReachTop:a[0]||(a[0]=k=>e.$emit("reach-top"))},{default:u(()=>[(n(!0),i(L,null,F(e.tasks?.items,k=>(n(),w(l,{key:k.id,"model-value":k},null,8,["model-value"]))),128))]),_:1},8,["loading"])):_("",!0),e.tasks?.items?.length===0?(n(),i("div",kt,[s(d)])):_("",!0)],64)}const wt=E(bt,[["render",yt]]),St=ie("seedance"),Vt=b({name:"SeedanceIndex",components:{ConfigPanel:Ps,Layout:Te,RecentPanel:wt},inject:["initialized"],data(){return{task:void 0,job:0,loadingMore:!1,fetchingTasks:!1}},computed:{applicationsLoading(){return this.$store.state.seedance?.status?.getApplications===O.Request},tasksLoading(){return this.$store.state.seedance?.status?.getTasks===O.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 ce({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:p,createdAtMax:h}=e||{};this.fetchingTasks=!0;try{await this.$store.dispatch("seedance/getTasks",{limit:a,createdAtMin:p,createdAtMax:h})}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(c=>!!c?.url);const g=e.images.some(c=>c?.role==="first_frame"),$=e.images.some(c=>c?.role==="last_frame");!g&&$&&(e.images=e.images.map(c=>c?.role==="last_frame"?{...c,role:"first_frame"}:c))}!(Array.isArray(e?.images)&&e.images.length>0)&&"images"in e&&delete e.images;const p={...e,callback_url:St},h=this.credential?.token;if(!h){console.error("no token specified");return}y.info(this.$t("seedance.message.startingTask")),le("seedance",ke.generate(p,{token:h})).then(()=>{y.success(this.$t("seedance.message.startTaskSuccess"))}).catch(g=>{const $=g?.response?.data;$?.error?.code===Ee?y.error(this.$t("seedance.message.usedUp")):y.error(this.$t("seedance.message.startTaskFailed")+($?.error?.message||""))}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})},getTasksScrollElement(){return this.$refs.recentPanel?.getScrollElement?.()}}});function Lt(e,a,p,h,g,$){const c=t("config-panel"),l=t("recent-panel"),m=t("layout");return n(),w(m,null,{config:u(()=>[s(c,{onGenerate:e.onGenerate},null,8,["onGenerate"])]),result:u(()=>[s(l,{ref:"recentPanel",loading:e.loadingMore,onReachTop:e.onReachTop},null,8,["loading","onReachTop"])]),_:1})}const ko=E(Vt,[["render",Lt]]);export{ko as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{F as C}from"./index.es-Cj7JhB9l.js";import{E as D}from"./index-DTTgiRJO.js";import{E as W}from"./index-DGD-ZdYv.js";import{d as E,H as i,E as l,z as q,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 K,Q as A}from"./vendor-vue-NSDaktjZ.js";import{E as k,b7 as Z,cC as H,cD as J,cE as Q,cF as X,cG as Y,cH as ee,cI as te,cJ as U,cK as z,cL as G,cM as P,cN as se,cO as O,cP as oe,cQ as F,cd as ae,aw as j,ce as ne}from"./index-C1XlU4PJ.js";import{I as L,S as re,l as le}from"./pagination-781R2MGE.js";import{E as ie}from"./index-CL9b57Qt.js";import{p as ce}from"./pasteUploadMixin-BurWbGNQ.js";import{I as B}from"./ImagePreview-LoZpT38c.js";import{E as me}from"./index-zFiz41F1.js";import{E as I}from"./index-CvKWKElQ.js";import{C as de}from"./Consumption-Ddq_1dsG.js";import{a as ue}from"./price-DmDMgPIs.js";import{E as x,a as N}from"./index-HXiSR2EH.js";import{E as pe}from"./index-2ujDGB3I.js";import{b as fe}from"./errorCode-Cqj9Td_Z.js";import{s as _e}from"./seedream-C6UWyMfO.js";import{C as ge}from"./CopyToClipboard-CDbXsPpE.js";import{I as he}from"./ImageWrapper-CeIntWtS.js";import{E as $e}from"./index-BER5GLYf.js";import{E as ve}from"./index-Chv0_uti.js";import{E as be}from"./index-CDE0P5Mz.js";import{B as Ee}from"./BotPlaceholder-D689G_E8.js";import{N as ke}from"./NoTasks-BL9-0YOm.js";import"./use-form-item-RrqgHY2m.js";import"./index-BuyEbX8F.js";import"./vendor-axios-B8_nURbH.js";import"./vendor-dayjs-v0j1UNZp.js";import"./vendor-vue-router-Kg6s1a65.js";import"./typescript-DCNCCMox.js";import"./index-H9W12Q1V.js";import"./index-CuwmZbiT.js";import"./index-C7bC5Zyg.js";import"./_baseClone-CaNqBOJq.js";import"./_Uint8Array-BndSMjzA.js";import"./_initCloneObject-D3DOodS1.js";import"./isEqual-CAlLUdzO.js";import"./index-HpF2hGVR.js";import"./strings-beZM2Y-f.js";import"./castArray-D_LQYGBx.js";import"./debounce-Q951B-04.js";import"./_baseIteratee-B6KL1Ia9.js";import"./index-C7YZwThL.js";import"./index-Cu41y2Fl.js";import"./index-BHWp6bRR.js";const ye=E({name:"LayoutSeedream",components:{ElDrawer:W,ElButton:D,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,[q(e.$slots,"config",{},void 0,!0)]),l("div",Ie,[q(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(()=>[q(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 De(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 qe=k(Le,[["render",De],["__scopeId","data-v-5559520a"]]),Ue=E({name:"SeedreamImageInput",components:{ElUpload:me,ElButton:D,InfoIcon:L,ImagePreview:B,FontAwesomeIcon:C},mixins:[ce],data(){return{fileList:[],uploadUrl:Z()+"/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"},Fe={class:"file-list mt-2 flex flex-wrap gap-[10px]"};function Be(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",Fe,[(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",Be],["__scopeId","data-v-dc18c674"]]),Ne=E({name:"SeedreamModelSelector",components:{ElSelect:N,ElOption:x,InfoIcon:L},data(){return{options:[{value:J,label:this.$t("seedream.model.seedream50")},{value:Q,label:this.$t("seedream.model.seedream45")},{value:X,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=H)}}),We={class:"field"},Ke={class:"label"},Ze={class:"box"},He={class:"title font-bold"};function Je(e,t,d,c,h,p){const f=n("info-icon"),_=n("el-option"),r=n("el-select");return a(),i("div",We,[l("div",Ke,[l("div",Ze,[l("h2",He,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 Qe=k(Ne,[["render",Je],["__scopeId","data-v-609ade55"]]),Xe=E({name:"SeedreamSizeSelector",components:{ElSelect:N,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(Xe,[["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:D,FontAwesomeIcon:C,PromptInput:qe,Consumption:de,ImageInput:xe,ModelSelector:Qe,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:F(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:D,ElTooltip:$e,ImagePreview:B},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 F(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})},Dt={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},qt={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"},Ft={key:1,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Bt={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},xt={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"},Wt={key:3,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Kt={key:4,class:"text-[var(--el-text-color-regular)] text-xs mb-0"},Zt={key:3,class:A({content:!0})},Ht={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Jt={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-0"};function Qt(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]=K(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",Dt,[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",qt,[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",Ft,[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",Bt,[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",Nt,[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",Wt,[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",Kt,[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",Zt,[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",Ht,[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",Jt,[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 Xt=k(vt,[["render",Qt],["__scopeId","data-v-0dfc6a09"]]),Yt=E({name:"SeedreamRecentPanel",components:{TaskPreview:Xt,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 Xs=k(ns,[["render",rs]]);export{Xs as default};
|
|
1
|
+
import{F as C}from"./index.es-BDOMZBHy.js";import{E as D}from"./index-r1WlQTkd.js";import{E as W}from"./index-Blv6QaIk.js";import{d as E,H as i,E as l,z as q,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 K,Q as A}from"./vendor-vue-NSDaktjZ.js";import{E as k,b7 as Z,cC as H,cD as J,cE as Q,cF as X,cG as Y,cH as ee,cI as te,cJ as U,cK as z,cL as G,cM as P,cN as se,cO as O,cP as oe,cQ as F,cd as ae,aw as j,ce as ne}from"./index-tspOPlR8.js";import{I as L,S as re,l as le}from"./pagination-DEnicVya.js";import{E as ie}from"./index-D9WB_FIQ.js";import{p as ce}from"./pasteUploadMixin-BurWbGNQ.js";import{I as B}from"./ImagePreview-BwVG4xnq.js";import{E as me}from"./index-DnX3iGId.js";import{E as I}from"./index-BJ8z356Q.js";import{C as de}from"./Consumption-D5MPVVSr.js";import{a as ue}from"./price-kWAt8zxX.js";import{E as x,a as N}from"./index-DZa1Dmz4.js";import{E as pe}from"./index-C_buhEqX.js";import{b as fe}from"./errorCode-Cqj9Td_Z.js";import{s as _e}from"./seedream-Bp_B6_q7.js";import{C as ge}from"./CopyToClipboard-6msgbpJQ.js";import{I as he}from"./ImageWrapper-fMrdkLXq.js";import{E as $e}from"./index-BCps6OLj.js";import{E as ve}from"./index-BfzztZ3C.js";import{E as be}from"./index-CNDbe5I7.js";import{B as Ee}from"./BotPlaceholder-T1JnFchM.js";import{N as ke}from"./NoTasks-DKhvXOog.js";import"./use-form-item-CiGuYlwo.js";import"./index-BuyEbX8F.js";import"./vendor-axios-B8_nURbH.js";import"./vendor-dayjs-v0j1UNZp.js";import"./vendor-vue-router-Kg6s1a65.js";import"./typescript-VAjzYBVV.js";import"./index-CjRED359.js";import"./index-CPETW0B-.js";import"./index-HqBS33mo.js";import"./_baseClone-DquV2Mnx.js";import"./_Uint8Array-BeRfpqL7.js";import"./_initCloneObject-9PUJFEMx.js";import"./isEqual-CRG_uQtW.js";import"./index-MeXqAg39.js";import"./strings-beZM2Y-f.js";import"./castArray-278F4M9m.js";import"./debounce-CnPBB63_.js";import"./_baseIteratee-DuHUzj8X.js";import"./index-CIHBGnWH.js";import"./index-Cu41y2Fl.js";import"./index-Dt3sdSti.js";const ye=E({name:"LayoutSeedream",components:{ElDrawer:W,ElButton:D,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,[q(e.$slots,"config",{},void 0,!0)]),l("div",Ie,[q(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(()=>[q(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 De(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 qe=k(Le,[["render",De],["__scopeId","data-v-5559520a"]]),Ue=E({name:"SeedreamImageInput",components:{ElUpload:me,ElButton:D,InfoIcon:L,ImagePreview:B,FontAwesomeIcon:C},mixins:[ce],data(){return{fileList:[],uploadUrl:Z()+"/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"},Fe={class:"file-list mt-2 flex flex-wrap gap-[10px]"};function Be(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",Fe,[(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",Be],["__scopeId","data-v-dc18c674"]]),Ne=E({name:"SeedreamModelSelector",components:{ElSelect:N,ElOption:x,InfoIcon:L},data(){return{options:[{value:J,label:this.$t("seedream.model.seedream50")},{value:Q,label:this.$t("seedream.model.seedream45")},{value:X,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=H)}}),We={class:"field"},Ke={class:"label"},Ze={class:"box"},He={class:"title font-bold"};function Je(e,t,d,c,h,p){const f=n("info-icon"),_=n("el-option"),r=n("el-select");return a(),i("div",We,[l("div",Ke,[l("div",Ze,[l("h2",He,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 Qe=k(Ne,[["render",Je],["__scopeId","data-v-609ade55"]]),Xe=E({name:"SeedreamSizeSelector",components:{ElSelect:N,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(Xe,[["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:D,FontAwesomeIcon:C,PromptInput:qe,Consumption:de,ImageInput:xe,ModelSelector:Qe,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:F(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:D,ElTooltip:$e,ImagePreview:B},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 F(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})},Dt={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},qt={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"},Ft={key:1,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Bt={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},xt={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"},Wt={key:3,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Kt={key:4,class:"text-[var(--el-text-color-regular)] text-xs mb-0"},Zt={key:3,class:A({content:!0})},Ht={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Jt={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-0"};function Qt(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]=K(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",Dt,[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",qt,[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",Ft,[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",Bt,[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",Nt,[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",Wt,[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",Kt,[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",Zt,[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",Ht,[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",Jt,[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 Xt=k(vt,[["render",Qt],["__scopeId","data-v-0dfc6a09"]]),Yt=E({name:"SeedreamRecentPanel",components:{TaskPreview:Xt,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 Xs=k(ns,[["render",rs]]);export{Xs as default};
|