@acedatacloud/nexior 3.32.4 → 3.32.6
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-DYFA1Zzt.js → Auth-CbhdXVlZ.js} +1 -1
- package/dist/assets/{BotPlaceholder-BJhJ0msN.js → BotPlaceholder-4xqKcsb2.js} +1 -1
- package/dist/assets/{Callback-BNPpP1tB.js → Callback-BbjpoZdI.js} +1 -1
- package/dist/assets/{Console-DT0S3aVY.js → Console-B7jDE8W1.js} +1 -1
- package/dist/assets/{Conversation-D5pRsQC3.js → Conversation-BJ1BUNqc.js} +1 -1
- package/dist/assets/{CopyToClipboard-BLbqw9nl.js → CopyToClipboard-jWxr3xe-.js} +1 -1
- package/dist/assets/{Detail-DseOq2S9.js → Detail-CZma9h9c.js} +2 -2
- package/dist/assets/{EditArray-qHlQF7rP.js → EditArray-BcoTXdg2.js} +1 -1
- package/dist/assets/{Extra-Dw2CrEZu.js → Extra-Do_PGoRW.js} +1 -1
- package/dist/assets/{FilePreview-BjsX8WfW.js → FilePreview-CBNy_XWe.js} +1 -1
- package/dist/assets/{History-Bnd72qti.js → History-Dyfl6UOR.js} +1 -1
- package/dist/assets/{ImagePreview-D-H4d4jU.js → ImagePreview-YbDjRoDP.js} +1 -1
- package/dist/assets/{ImageWrapper-BRaL0q-A.js → ImageWrapper-_o2mlETS.js} +1 -1
- package/dist/assets/{Index-Yb45BxJz.js → Index-BCnf9SsH.js} +1 -1
- package/dist/assets/{Index-DicdfjBU.js → Index-BNwdn1-M.js} +1 -1
- package/dist/assets/{Index-BzyzGFCk.js → Index-B_etggd0.js} +1 -1
- package/dist/assets/{Index-7kHRJX1f.js → Index-CMk0BUUc.js} +1 -1
- package/dist/assets/{Index-NGjnc38V.js → Index-CqRTbw9q.js} +1 -1
- package/dist/assets/{Index-l7Xs56vt.js → Index-Cqga3cf6.js} +1 -1
- package/dist/assets/{Index-CVrpBoqE.js → Index-Csg_YxRf.js} +1 -1
- package/dist/assets/{Index-CKL7pA88.js → Index-D6vX9YPr.js} +1 -1
- package/dist/assets/{Index-DbrCdp2X.js → Index-D9_k7mYF.js} +1 -1
- package/dist/assets/{Index-DzvDLu21.js → Index-DCPx2hVg.js} +1 -1
- package/dist/assets/{Index-XGOkY1zY.js → Index-DGq7Vo9b.js} +1 -1
- package/dist/assets/{Index-DLeWH4dR.js → Index-DHJRxyQQ.js} +1 -1
- package/dist/assets/{Index-C3AYvYo0.js → Index-DqnR_09A.js} +1 -1
- package/dist/assets/{Index-DjrwHYI0.js → Index-Dw5_3UPH.js} +1 -1
- package/dist/assets/{Index-CM2P7KVf.js → Index-Dyj124ko.js} +1 -1
- package/dist/assets/{Index-CfxkOk_2.js → Index-E2hjs4Sq.js} +1 -1
- package/dist/assets/{Index-CtGQ26YS.js → Index-R4Fh-Ngl.js} +1 -1
- package/dist/assets/{Index-COqvi-TP.js → Index-WBRrf-rU.js} +1 -1
- package/dist/assets/{Index-B5Cj9iRW.js → Index-m_4JhRPQ.js} +1 -1
- package/dist/assets/{Index-wP_Lyyil.js → Index-vC6EKi7O.js} +1 -1
- package/dist/assets/{Invitees-Dn0E8qJC.js → Invitees-B4LVPYs2.js} +1 -1
- package/dist/assets/{List-DzBdFw8I.js → List-CICnDfqP.js} +1 -1
- package/dist/assets/{List-BV_IzyX2.js → List-CIgrsqwb.js} +1 -1
- package/dist/assets/{List-NozEP18m.js → List-CpB-1MBq.js} +1 -1
- package/dist/assets/{Main-CD9T2N3l.js → Main-Sredtjx5.js} +1 -1
- package/dist/assets/{Navigator-BNJXI3hc.js → Navigator-CfXc0GO3.js} +1 -1
- package/dist/assets/{NoTasks-Cm0AqqsF.js → NoTasks-Dpxe4xfM.js} +1 -1
- package/dist/assets/{Pagination-C47FX5oY.js → Pagination-B-MXR0Z7.js} +1 -1
- package/dist/assets/{ScrollList-DRWz9jW6.js → ScrollList-BGZ0Fkh5.js} +1 -1
- package/dist/assets/{Status-FhPzRnWL.js → Status-BGKg_G7N.js} +1 -1
- package/dist/assets/{Subscribe-21L-6Z4O.js → Subscribe-Dh1UoDCs.js} +1 -1
- package/dist/assets/{TransportWebHID-B_3EAMYS.js → TransportWebHID-BMKas6kS.js} +1 -1
- package/dist/assets/{VideoPlayer-C8wcdJbG.js → VideoPlayer-CfppHbtZ.js} +1 -1
- package/dist/assets/{avatar-BpcmM_BW.js → avatar-Cp2nQHJG.js} +1 -1
- package/dist/assets/{bignumber-ILNjViFu.js → bignumber-BDPO6KDj.js} +1 -1
- package/dist/assets/chat-1g0bgYFI.js +1 -0
- package/dist/assets/chat-8uDKI-zS.js +1 -0
- package/dist/assets/chat-B91pl-y-.js +1 -0
- package/dist/assets/chat-BDyJtcnn.js +1 -0
- package/dist/assets/chat-BdzpOmc7.js +1 -0
- package/dist/assets/chat-Bro-uoHQ.js +1 -0
- package/dist/assets/chat-CDkXQpzo.js +1 -0
- package/dist/assets/chat-CHHe_Pye.js +1 -0
- package/dist/assets/chat-CVKTJfze.js +1 -0
- package/dist/assets/chat-CdUgDfh3.js +1 -0
- package/dist/assets/chat-DicMBG2O.js +1 -0
- package/dist/assets/chat-DlQqlDLq.js +1 -0
- package/dist/assets/chat-DvkI0CcW.js +1 -0
- package/dist/assets/chat-Dzkk13eH.js +1 -0
- package/dist/assets/chat-MgkN7r1L.js +1 -0
- package/dist/assets/chat-NKlg3qJd.js +1 -0
- package/dist/assets/chat-xza8nfuJ.js +1 -0
- package/dist/assets/common-3Pg61o6G.js +1 -0
- package/dist/assets/common-B8_Eb5IW.js +1 -0
- package/dist/assets/common-Bj9oNp8q.js +1 -0
- package/dist/assets/common-CEc4vS1f.js +1 -0
- package/dist/assets/common-CLSGXaJd.js +1 -0
- package/dist/assets/common-CL_-d-go.js +1 -0
- package/dist/assets/common-CUB3pCfH.js +1 -0
- package/dist/assets/common-CeFwYjid.js +1 -0
- package/dist/assets/common-DP81pwvO.js +1 -0
- package/dist/assets/common-DTy2PGv4.js +1 -0
- package/dist/assets/common-DWpgU1IT.js +1 -0
- package/dist/assets/common-Db1-wqDl.js +1 -0
- package/dist/assets/common-Dd-si0ye.js +1 -0
- package/dist/assets/common-EuUt8iDT.js +1 -0
- package/dist/assets/common-G4FV4g0I.js +1 -0
- package/dist/assets/common-ZKrTz1O9.js +1 -0
- package/dist/assets/common-k5yR_AUi.js +1 -0
- package/dist/assets/{distribution-DmCB36oc.js → distribution-CIiS3Bxb.js} +1 -1
- package/dist/assets/hailuo-B5STl3xi.js +1 -0
- package/dist/assets/hailuo-B8Wij-Oz.js +1 -0
- package/dist/assets/hailuo-CKb-vhXt.js +1 -0
- package/dist/assets/hailuo-CLBqynJI.js +1 -0
- package/dist/assets/hailuo-CSutXhAB.js +1 -0
- package/dist/assets/hailuo-CWfb1Oqx.js +1 -0
- package/dist/assets/hailuo-CXyQAncN.js +1 -0
- package/dist/assets/hailuo-CbV-wE3A.js +1 -0
- package/dist/assets/hailuo-CbqS5hVf.js +1 -0
- package/dist/assets/hailuo-CloZKI-a.js +1 -0
- package/dist/assets/hailuo-CyqqaoD8.js +1 -0
- package/dist/assets/hailuo-DV2zKef9.js +1 -0
- package/dist/assets/hailuo-DVDM-rW3.js +1 -0
- package/dist/assets/hailuo-TPI5HzbE.js +1 -0
- package/dist/assets/hailuo-W5OBmY5R.js +1 -0
- package/dist/assets/hailuo-Zh8ZzYrJ.js +1 -0
- package/dist/assets/hailuo-zdsLvEUi.js +1 -0
- package/dist/assets/{index-BoGx3CmB.js → index-BgDGDofP.js} +1 -1
- package/dist/assets/{index-Cbt_RUrY.css → index-CNFbfADX.css} +1 -1
- package/dist/assets/{index-CKKGs5h1.js → index-CdlFEyD2.js} +1 -1
- package/dist/assets/{index-D9sJC6gW.js → index-Cg12Puws.js} +1 -1
- package/dist/assets/{index-Eolh8-ZS.js → index-CqL6zWO4.js} +5 -5
- package/dist/assets/{index-8EKPvmnj.js → index-CyXksVZ4.js} +1 -1
- package/dist/assets/{index-D2TydFHF.js → index-DOTDDv__.js} +1 -1
- package/dist/assets/{index-BRGDNp-C.js → index-kv1ttZgM.js} +1 -1
- package/dist/assets/{index-CyO8tXO2.js → index-vB21LY8A.js} +1 -1
- package/dist/assets/{index.es-ByZsSMmo.js → index.es-vNwt4sbI.js} +1 -1
- package/dist/assets/midjourney-BFITzVKB.js +1 -0
- package/dist/assets/midjourney-BSYpft7W.js +1 -0
- package/dist/assets/midjourney-Bokdgi5z.js +1 -0
- package/dist/assets/midjourney-C-jIPqBK.js +1 -0
- package/dist/assets/midjourney-CHbKsgG3.js +1 -0
- package/dist/assets/midjourney-CLRM-RRm.js +1 -0
- package/dist/assets/midjourney-CTprsD9_.js +1 -0
- package/dist/assets/midjourney-CVcLgD9A.js +1 -0
- package/dist/assets/midjourney-CmqnU6qc.js +1 -0
- package/dist/assets/midjourney-Csrcun4w.js +1 -0
- package/dist/assets/midjourney-Cv3IT6Tb.js +1 -0
- package/dist/assets/midjourney-D4Cnt_rw.js +1 -0
- package/dist/assets/midjourney-DOblNcoo.js +1 -0
- package/dist/assets/midjourney-DQIseJPm.js +1 -0
- package/dist/assets/midjourney-DezNNCBe.js +1 -0
- package/dist/assets/midjourney-KfKcVT7I.js +1 -0
- package/dist/assets/midjourney-iC01w_m6.js +1 -0
- package/dist/assets/order-5qA_Tyh8.js +1 -0
- package/dist/assets/order-9nfJ8A90.js +1 -0
- package/dist/assets/order-BN3dpqvG.js +1 -0
- package/dist/assets/order-BTmBLJaK.js +1 -0
- package/dist/assets/{order-BCSpOmEp.js → order-BbLF8ipn.js} +1 -1
- package/dist/assets/order-BftLdFGm.js +1 -0
- package/dist/assets/order-BjTLjJLs.js +1 -0
- package/dist/assets/order-BoZk92NC.js +1 -0
- package/dist/assets/order-BtQos6TQ.js +1 -0
- package/dist/assets/order-C-eebXs4.js +1 -0
- package/dist/assets/order-C1LbxCIE.js +1 -0
- package/dist/assets/order-CFConAaV.js +1 -0
- package/dist/assets/order-DDY8y6pc.js +1 -0
- package/dist/assets/order-DKULBrBK.js +1 -0
- package/dist/assets/order-LsX4lEG_.js +1 -0
- package/dist/assets/order-RVok9vvs.js +1 -0
- package/dist/assets/order-RkmomuXc.js +1 -0
- package/dist/assets/order-xKN_YBy7.js +1 -0
- package/dist/assets/{price-B3IiQ6GV.js → price-C8BXaFbS.js} +1 -1
- package/dist/assets/seedance-BCbPJdHI.js +1 -0
- package/dist/assets/seedance-CVG6IOXI.js +1 -0
- package/dist/assets/seedance-D8HJGAis.js +1 -0
- package/dist/assets/seedance-DICJhTnA.js +1 -0
- package/dist/assets/seedance-DtvM9JfA.js +1 -0
- package/dist/assets/{solana-wallets-BlAPmkC0.js → solana-wallets-B2tH0ked.js} +2 -2
- package/dist/assets/{solanaEmbed.esm-DMhNKlrp.js → solanaEmbed.esm-DUeZW4Dp.js} +1 -1
- package/dist/assets/{string_decoder-D3sR9f7y.js → string_decoder-CLvB3Ip0.js} +1 -1
- package/dist/assets/suno--6VcR04-.js +7 -0
- package/dist/assets/suno-9iqbxF4A.js +7 -0
- package/dist/assets/suno-B2N7k4ag.js +7 -0
- package/dist/assets/{suno-B6J742Fo.js → suno-BN0-fpVZ.js} +1 -1
- package/dist/assets/{suno-CO3QsQOg.js → suno-BO4l5Hqa.js} +2 -2
- package/dist/assets/suno-BrO0g2kg.js +7 -0
- package/dist/assets/suno-C3ri5VQr.js +7 -0
- package/dist/assets/suno-C43u7ROi.js +7 -0
- package/dist/assets/suno-CGHbYOAC.js +7 -0
- package/dist/assets/suno-CIBIrbMD.js +7 -0
- package/dist/assets/suno-D77ebmh0.js +7 -0
- package/dist/assets/{suno-Dyr3BJr2.js → suno-DS59HGEa.js} +2 -2
- package/dist/assets/suno-DUhouAsK.js +7 -0
- package/dist/assets/suno-DaSqz5Ru.js +7 -0
- package/dist/assets/{suno-CDE5lAPt.js → suno-GqDcO0YU.js} +2 -2
- package/dist/assets/suno-OZVZeVhI.js +7 -0
- package/dist/assets/{vendor-web3-DH4JU5BG.js → vendor-web3-BT8AOwfJ.js} +4 -4
- package/dist/assets/{web-Bq9K0ccN.js → web-0G0qMWRK.js} +1 -1
- package/dist/assets/{web-DPMzAm_p.js → web-DmXk_g8Z.js} +1 -1
- package/dist/index.html +3 -3
- package/package.json +1 -1
- package/dist/assets/chat-1wdicyKD.js +0 -1
- package/dist/assets/chat-B-uKFtD7.js +0 -1
- package/dist/assets/chat-BEDsBWut.js +0 -1
- package/dist/assets/chat-BQnI3ESW.js +0 -1
- package/dist/assets/chat-BiV3N1L7.js +0 -1
- package/dist/assets/chat-C9BP-9pH.js +0 -1
- package/dist/assets/chat-CIFszBeW.js +0 -1
- package/dist/assets/chat-CSy-anRg.js +0 -1
- package/dist/assets/chat-Cdd0Zncj.js +0 -1
- package/dist/assets/chat-ChvajOsf.js +0 -1
- package/dist/assets/chat-CxVvavJQ.js +0 -1
- package/dist/assets/chat-DHFEiySY.js +0 -1
- package/dist/assets/chat-DU4P7SnG.js +0 -1
- package/dist/assets/chat-DX4gOtIG.js +0 -1
- package/dist/assets/chat-Dh7cMtaE.js +0 -1
- package/dist/assets/chat-IdMAYo0v.js +0 -1
- package/dist/assets/chat-mMqO_p2Y.js +0 -1
- package/dist/assets/common-2iCqJUYS.js +0 -1
- package/dist/assets/common-B06MFMQf.js +0 -1
- package/dist/assets/common-BRAtmRsJ.js +0 -1
- package/dist/assets/common-B_3m6buh.js +0 -1
- package/dist/assets/common-Byo6dAD4.js +0 -1
- package/dist/assets/common-C3IcqE8H.js +0 -1
- package/dist/assets/common-CJCw-vr8.js +0 -1
- package/dist/assets/common-CKY-0a3p.js +0 -1
- package/dist/assets/common-CoMaFFWX.js +0 -1
- package/dist/assets/common-DBDoN2vb.js +0 -1
- package/dist/assets/common-DsjfBo3C.js +0 -1
- package/dist/assets/common-Dz3-yCD-.js +0 -1
- package/dist/assets/common-QjLqEtxc.js +0 -1
- package/dist/assets/common-Ug6XoAMF.js +0 -1
- package/dist/assets/common-XtvWbkCC.js +0 -1
- package/dist/assets/common-npA49Z8g.js +0 -1
- package/dist/assets/common-rd-6seH4.js +0 -1
- package/dist/assets/hailuo-BM8Zb9tM.js +0 -1
- package/dist/assets/hailuo-BQt1d1O3.js +0 -1
- package/dist/assets/hailuo-BTz1l03a.js +0 -1
- package/dist/assets/hailuo-BW-py-iC.js +0 -1
- package/dist/assets/hailuo-BetkXkF7.js +0 -1
- package/dist/assets/hailuo-CtjbxtZg.js +0 -1
- package/dist/assets/hailuo-CuPAsaLK.js +0 -1
- package/dist/assets/hailuo-CxU6ifF9.js +0 -1
- package/dist/assets/hailuo-DHHrp9_h.js +0 -1
- package/dist/assets/hailuo-DPLP4ZfQ.js +0 -1
- package/dist/assets/hailuo-DquHPVRM.js +0 -1
- package/dist/assets/hailuo-DuMmmmEQ.js +0 -1
- package/dist/assets/hailuo-HvSBabx1.js +0 -1
- package/dist/assets/hailuo-Ls1nqE13.js +0 -1
- package/dist/assets/hailuo-Y_XixcQP.js +0 -1
- package/dist/assets/hailuo-e03mE7Om.js +0 -1
- package/dist/assets/hailuo-xgGk4uQk.js +0 -1
- package/dist/assets/midjourney-7qNi1gDF.js +0 -1
- package/dist/assets/midjourney-AZSr0dUI.js +0 -1
- package/dist/assets/midjourney-BA9N9EzD.js +0 -1
- package/dist/assets/midjourney-BELjzcp_.js +0 -1
- package/dist/assets/midjourney-BXioF2pd.js +0 -1
- package/dist/assets/midjourney-BertSXin.js +0 -1
- package/dist/assets/midjourney-C9mIk6WS.js +0 -1
- package/dist/assets/midjourney-CD2E4s8K.js +0 -1
- package/dist/assets/midjourney-CJ_sZW8R.js +0 -1
- package/dist/assets/midjourney-CTHpnRlb.js +0 -1
- package/dist/assets/midjourney-CZZTzaNU.js +0 -1
- package/dist/assets/midjourney-CZybL7nq.js +0 -1
- package/dist/assets/midjourney-D0jbNv1J.js +0 -1
- package/dist/assets/midjourney-D7EOsHLu.js +0 -1
- package/dist/assets/midjourney-H5Wuq1-p.js +0 -1
- package/dist/assets/midjourney-HSS4vV-y.js +0 -1
- package/dist/assets/midjourney-NmlOsMCS.js +0 -1
- package/dist/assets/order-2938TXeL.js +0 -1
- package/dist/assets/order-7yDEF-wE.js +0 -1
- package/dist/assets/order-BDWVwDAn.js +0 -1
- package/dist/assets/order-BIslMDZP.js +0 -1
- package/dist/assets/order-Bqc53rmv.js +0 -1
- package/dist/assets/order-CESPqprA.js +0 -1
- package/dist/assets/order-CH4FTZdz.js +0 -1
- package/dist/assets/order-CL6RqSCE.js +0 -1
- package/dist/assets/order-C_9poK2b.js +0 -1
- package/dist/assets/order-CfKXYzuo.js +0 -1
- package/dist/assets/order-CjpgvCGB.js +0 -1
- package/dist/assets/order-Cx9acmu9.js +0 -1
- package/dist/assets/order-DQmJSByk.js +0 -1
- package/dist/assets/order-DdMK7tK_.js +0 -1
- package/dist/assets/order-DqKzccXP.js +0 -1
- package/dist/assets/order-DxbjGnCv.js +0 -1
- package/dist/assets/order-yEiwj_v2.js +0 -1
- package/dist/assets/seedance-ClhqHARJ.js +0 -1
- package/dist/assets/seedance-DNyJQURN.js +0 -1
- package/dist/assets/seedance-RKVqYt_e.js +0 -1
- package/dist/assets/seedance-fVb-ffa9.js +0 -1
- package/dist/assets/seedance-wjrAwBhs.js +0 -1
- package/dist/assets/suno-2kZeX0SQ.js +0 -7
- package/dist/assets/suno-B5c1_QMK.js +0 -7
- package/dist/assets/suno-BCDSe33m.js +0 -7
- package/dist/assets/suno-BYLAqYbi.js +0 -7
- package/dist/assets/suno-CW7PL610.js +0 -7
- package/dist/assets/suno-D9sWL4Gy.js +0 -7
- package/dist/assets/suno-NFdoRO-U.js +0 -7
- package/dist/assets/suno-PaSB1jMT.js +0 -7
- package/dist/assets/suno-aZGZNio8.js +0 -7
- package/dist/assets/suno-gAW2-3QC.js +0 -7
- package/dist/assets/suno-ql0IUND1.js +0 -7
- package/dist/assets/suno-xyIB74FR.js +0 -7
|
@@ -1 +1 @@
|
|
|
1
|
-
import{F as L}from"./index.es-ByZsSMmo.js";import{l as U,S as q,k as j,t as R,u as E,s as N,p as H,G as K,j as J}from"./vendor-element-plus-B4FTqxj4.js";import{d as b,C as m,G as n,T as o,E as C,K as c,ai as s,D as a,R as i,Q as g,J as v,O as _,M as T,X as M,S as B,ag as Q}from"./vendor-vue-1w_NBnjl.js";import{_ as w,bp as X,bq as W,br as Y,aj as A,bs as Z,aB as x,ay as z}from"./index-Eolh8-ZS.js";import{I as S,S as ee}from"./ScrollList-DRWz9jW6.js";import{I as D}from"./ImagePreview-D-H4d4jU.js";import{F as te}from"./FilePreview-BjsX8WfW.js";import{V as F}from"./VideoPlayer-C8wcdJbG.js";import{C as oe,N as se}from"./NoTasks-Cm0AqqsF.js";import{a as ne}from"./price-B3IiQ6GV.js";import{C as ae}from"./CopyToClipboard-BLbqw9nl.js";import{B as le}from"./BotPlaceholder-BJhJ0msN.js";import{l as ie}from"./pagination-CihAE3FS.js";import"./vendor-dayjs-CzbnksQQ.js";import"./vendor-web3-DH4JU5BG.js";import"./vendor-axios-NIGUFBhG.js";import"./vendor-vue-router-Dj5bcX0v.js";import"./vue-plyr-QZFBikSk.js";const re=b({name:"LayoutLuma",components:{ElDrawer:q,ElButton:U,FontAwesomeIcon:L},data(){return{drawer:!1}}}),ce={class:"main flex flex-row flex-1"},ue={class:"config w-[320px] flex-none h-full overflow-y-auto bg-[var(--app-sidebar-bg)] border-r border-[var(--app-border-subtle)]"},de={class:"result h-full p-6 flex-1 flex flex-col min-w-0 overflow-x-hidden bg-[var(--app-content-bg)]"};function me(e,t,p,h,k,y){const r=s("font-awesome-icon"),d=s("el-button"),u=s("el-drawer");return a(),m("div",ce,[n("div",ue,[C(e.$slots,"config",{},void 0,!0)]),n("div",de,[C(e.$slots,"result",{},void 0,!0)]),o(d,{circle:"",class:"menu",onClick:t[0]||(t[0]=$=>e.drawer=!0)},{default:c(()=>[o(r,{icon:"fa-solid fa-magic"})]),_:1}),o(u,{modelValue:e.drawer,"onUpdate:modelValue":t[1]||(t[1]=$=>e.drawer=$),direction:"ltr","with-header":!1,size:"350px",class:"drawer"},{default:c(()=>[C(e.$slots,"config",{},void 0,!0)]),_:3},8,["modelValue"])])}const pe=w(re,[["render",me],["__scopeId","data-v-7be1f25b"]]),fe=b({name:"EnhancementSelector",components:{ElSwitch:j,InfoIcon:S},computed:{value:{get(){return this.$store.state.luma?.config?.enhancement},set(e){console.debug("set enhancement",e),this.$store.commit("luma/setConfig",{...this.$store.state.luma?.config,enhancement:e})}}},mounted(){this.value===void 0&&(this.value=X)}}),_e={class:"relative"},he={class:"flex justify-between"},$e={class:"flex justify-start items-center"},ge={class:"text-sm font-bold"},ve={class:"flex justify-end items-center"};function be(e,t,p,h,k,y){const r=s("info-icon"),d=s("el-switch");return a(),m("div",_e,[n("div",he,[n("div",$e,[n("span",ge,i(e.$t("luma.name.enhancement")),1),o(r,{content:e.$t("luma.description.enhancement")},null,8,["content"])]),n("div",ve,[o(d,{modelValue:e.value,"onUpdate:modelValue":t[0]||(t[0]=u=>e.value=u),class:"value"},null,8,["modelValue"])])])])}const we=w(fe,[["render",be]]),ke=b({name:"CustomSelector",components:{ElSwitch:j,InfoIcon:S},computed:{value:{get(){return this.$store.state.luma?.config?.custom},set(e){console.debug("set custom",e),this.$store.commit("luma/setConfig",{...this.$store.state.luma?.config,custom:e})}}},mounted(){this.value===void 0&&(this.value=W)}}),ye={class:"relative"},Ee={class:"flex justify-between"},Ve={class:"flex justify-start items-center"},Se={class:"text-sm font-bold"},Le={class:"flex justify-end items-center"};function Ue(e,t,p,h,k,y){const r=s("info-icon"),d=s("el-switch");return a(),m("div",ye,[n("div",Ee,[n("div",Ve,[n("span",Se,i(e.$t("luma.name.custom")),1),o(r,{content:e.$t("luma.description.custom")},null,8,["content"])]),n("div",Le,[o(d,{modelValue:e.value,"onUpdate:modelValue":t[0]||(t[0]=u=>e.value=u),class:"value"},null,8,["modelValue"])])])])}const Ie=w(ke,[["render",Ue]]),Te=b({name:"LoopSelector",components:{ElSwitch:j,InfoIcon:S},computed:{value:{get(){return this.$store.state.luma?.config?.loop},set(e){console.debug("set loop",e),this.$store.commit("luma/setConfig",{...this.$store.state.luma?.config,loop:e})}}},mounted(){this.value===void 0&&(this.value=Y)}}),Ce={class:"relative"},je={class:"flex justify-between"},Re={class:"flex justify-start items-center"},Ae={class:"text-sm font-bold"},Ge={class:"flex justify-end items-center"};function Pe(e,t,p,h,k,y){const r=s("info-icon"),d=s("el-switch");return a(),m("div",Ce,[n("div",je,[n("div",Re,[n("span",Ae,i(e.$t("luma.name.loop")),1),o(r,{content:e.$t("luma.description.loop")},null,8,["content"])]),n("div",Ge,[o(d,{modelValue:e.value,"onUpdate:modelValue":t[0]||(t[0]=u=>e.value=u),class:"value"},null,8,["modelValue"])])])])}const Me=w(Te,[["render",Pe]]),Be=b({name:"EndImage",components:{ElUpload:R,ElButton:U,ImagePreview:D,InfoIcon:S,FontAwesomeIcon:L},data(){return{fileList:[],uploadUrl:A()+"/api/v1/files/"}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},urls(){return this.fileList.map(e=>e?.response?.file_url)},value:{get(){return this.$store.state?.luma?.config?.start_image_url},set(){}}},mounted(){this.value||(this.value=void 0),this.onSetEndImageUrl()},methods:{onExceed(){E.warning(this.$t("luma.message.uploadReferencesExceed"))},onError(){E.error(this.$t("luma.message.uploadReferencesError"))},onSetEndImageUrl(){const e=this.urls?.[0];this.$store.commit("luma/setConfig",{...this.$store.state.luma?.config,end_image_url:e})},async onSuccess(){this.onSetEndImageUrl()}}}),ze={class:"relative"},De={class:"flex justify-between"},Fe={class:"flex justify-start items-center"},Oe={class:"text-sm font-bold"};function qe(e,t,p,h,k,y){const r=s("info-icon"),d=s("image-preview"),u=s("font-awesome-icon"),$=s("el-button"),f=s("el-upload");return a(),m("div",ze,[n("div",De,[n("div",Fe,[n("span",Oe,i(e.$t("luma.name.endImageUrl")),1),o(r,{content:e.$t("luma.description.endImageUrl")},null,8,["content"])])]),o(f,{"file-list":e.fileList,"onUpdate:fileList":t[0]||(t[0]=l=>e.fileList=l),name:"file",accept:".png,.jpg,.jpeg,.gif,.bmp,.webp",limit:5,class:"upload-wrapper",multiple:!1,action:e.uploadUrl,"list-type":"picture","on-exceed":e.onExceed,"on-error":e.onError,"on-success":e.onSuccess,headers:e.headers},{file:c(({file:l})=>[l.url&&l.percentage!==void 0?(a(),v(d,{key:0,url:l.url,name:l.name,percentage:l.percentage,onRemove:V=>e.fileList.splice(e.fileList.indexOf(l),1)},null,8,["url","name","percentage","onRemove"])):_("",!0)]),default:c(()=>[o($,{round:"",type:"primary",size:"small",class:"btn btn-upload"},{default:c(()=>[o(u,{icon:"fa-solid fa-upload",class:"icon mr-1"}),g(" "+i(e.$t("luma.button.uploadEndImageUrl")),1)]),_:1})]),_:1},8,["file-list","action","on-exceed","on-error","on-success","headers"])])}const Ne=w(Be,[["render",qe],["__scopeId","data-v-7ab78c3e"]]),He=b({name:"StartImage",components:{ElUpload:R,ElButton:U,ImagePreview:D,InfoIcon:S,FontAwesomeIcon:L},data(){return{fileList:[],uploadUrl:A()+"/api/v1/files/"}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},urls(){return this.fileList.map(e=>e?.response?.file_url)},value:{get(){return this.$store.state?.luma?.config?.start_image_url},set(){}}},mounted(){this.value||(this.value=void 0),this.onSetStartImageUrl()},methods:{onExceed(){E.warning(this.$t("luma.message.uploadReferencesExceed"))},onError(){E.error(this.$t("luma.message.uploadReferencesError"))},onSetStartImageUrl(){const e=this.urls?.[0];this.$store.commit("luma/setConfig",{...this.$store.state.luma?.config,start_image_url:e})},async onSuccess(){this.onSetStartImageUrl()}}}),Ke={class:"relative"},Je={class:"flex justify-between"},Qe={class:"flex justify-start items-center"},Xe={class:"text-sm font-bold"};function We(e,t,p,h,k,y){const r=s("info-icon"),d=s("image-preview"),u=s("font-awesome-icon"),$=s("el-button"),f=s("el-upload");return a(),m("div",Ke,[n("div",Je,[n("div",Qe,[n("span",Xe,i(e.$t("luma.name.startImageUrl")),1),o(r,{content:e.$t("luma.description.startImageUrl")},null,8,["content"])])]),o(f,{"file-list":e.fileList,"onUpdate:fileList":t[0]||(t[0]=l=>e.fileList=l),name:"file",accept:".png,.jpg,.jpeg,.gif,.bmp,.webp",limit:5,class:"upload-wrapper",multiple:!1,action:e.uploadUrl,"list-type":"picture","on-exceed":e.onExceed,"on-error":e.onError,"on-success":e.onSuccess,headers:e.headers},{file:c(({file:l})=>[l.percentage!=null?(a(),v(d,{key:0,url:l.url||l.response.file_url,name:l.name,percentage:l.percentage,onRemove:V=>e.fileList.splice(e.fileList.indexOf(l),1)},null,8,["url","name","percentage","onRemove"])):_("",!0)]),default:c(()=>[o($,{round:"",type:"primary",size:"small",class:"btn btn-upload"},{default:c(()=>[o(u,{icon:"fa-solid fa-upload",class:"icon mr-1"}),g(" "+i(e.$t("luma.button.uploadStartImageUrl")),1)]),_:1})]),_:1},8,["file-list","action","on-exceed","on-error","on-success","headers"])])}const Ye=w(He,[["render",We],["__scopeId","data-v-425a8cec"]]),Ze=b({name:"UploadVideo",components:{ElUpload:R,ElButton:U,InfoIcon:S,FilePreview:te,FontAwesomeIcon:L},data(){return{fileList:[],uploadUrl:A()+"/api/v1/files/"}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},urls(){return this.fileList.map(e=>e?.response?.file_url)},value:{get(){return this.$store.state.luma?.config?.video_url},set(){const e=this.urls?.[0];this.$store.commit("luma/setConfig",{...this.$store.state.luma?.config,video_url:e})}}},mounted(){this.value||(this.value=void 0)},methods:{onExceed(){E.warning(this.$t("luma.message.uploadVideoExceed"))},onError(){E.error(this.$t("luma.message.uploadVideoError"))},beforeUpload(e){const t=e.type==="video/mp4",p=e.size/1024/1024<10;return t?p?!0:(E.error(this.$t("luma.message.uploadVideoSizeExceed")),!1):(E.error(this.$t("luma.message.uploadVideoTypeFailed")),!1)},onSetVideoUrl(){const e=this.urls?.[0];this.$store.commit("luma/setConfig",{...this.$store.state.luma?.config,video_url:e,action:"extend"})},async onSuccess(){this.onSetVideoUrl()}}}),xe={class:"relative"},et={class:"flex justify-between"},tt={class:"flex justify-start items-center"},ot={class:"text-sm font-bold"};function st(e,t,p,h,k,y){const r=s("info-icon"),d=s("file-preview"),u=s("font-awesome-icon"),$=s("el-button"),f=s("el-upload");return a(),m("div",xe,[n("div",et,[n("div",tt,[n("span",ot,i(e.$t("luma.name.videoUrl")),1),o(r,{content:e.$t("luma.description.videoUrl")},null,8,["content"])])]),o(f,{"file-list":e.fileList,"onUpdate:fileList":t[0]||(t[0]=l=>e.fileList=l),accept:".mp4",name:"file",class:"value","show-file-list":!0,limit:1,multiple:!1,action:e.uploadUrl,"before-upload":e.beforeUpload,"on-exceed":e.onExceed,"on-error":e.onError,"on-success":e.onSuccess,headers:e.headers},{file:c(({file:l})=>[l.percentage!=null?(a(),v(d,{key:0,url:l.url||l.response?.file_url,name:l.name,percentage:l.percentage,onRemove:V=>e.fileList.splice(e.fileList.indexOf(l),1)},null,8,["url","name","percentage","onRemove"])):_("",!0)]),default:c(()=>[o($,{round:"",type:"primary",size:"small",class:"btn btn-upload"},{default:c(()=>[o(u,{icon:"fa-solid fa-upload",class:"icon mr-1"}),g(" "+i(e.$t("luma.button.uploadVideoUrl")),1)]),_:1})]),_:1},8,["file-list","action","before-upload","on-exceed","on-error","on-success","headers"])])}const nt=w(Ze,[["render",st],["__scopeId","data-v-74e51526"]]),at="",lt=b({name:"PromptInput",components:{ElInput:N,InfoIcon:S},computed:{prompt:{get(){return this.$store.state.luma?.config?.prompt},set(e){console.debug("set prompt",e),this.$store.commit("luma/setConfig",{...this.$store.state.luma?.config,prompt:e})}}},mounted(){this.prompt||(this.prompt=at)}}),it={class:"field"},rt={class:"box"},ct={class:"title font-bold"};function ut(e,t,p,h,k,y){const r=s("info-icon"),d=s("el-input");return a(),m("div",it,[n("div",rt,[n("h2",ct,i(e.$t("luma.name.prompt")),1),o(r,{content:e.$t("luma.description.prompt"),class:"info"},null,8,["content"])]),o(d,{modelValue:e.prompt,"onUpdate:modelValue":t[0]||(t[0]=u=>e.prompt=u),rows:3,type:"textarea",class:"prompt",placeholder:e.$t("luma.placeholder.prompt")},null,8,["modelValue","placeholder"])])}const dt=w(lt,[["render",ut],["__scopeId","data-v-281baab8"]]),mt=b({name:"ExtendFromInput",components:{VideoPlayer:F},props:{modelValue:{type:Object,required:!1,default:void 0}},data(){return{options:{quality:{default:"1080p"}}}},computed:{config(){return this.$store.state.luma?.config}}}),pt={class:"relative"},ft={class:"flex mb-2"},_t={class:"text-sm font-bold"};function ht(e,t,p,h,k,y){const r=s("video-player");return a(),m("div",pt,[n("div",ft,[n("span",_t,i(e.$t("luma.name.extend")),1)]),n("div",null,[e.config?.video_url?(a(),v(r,{key:0,src:e.config?.video_url},null,8,["src"])):_("",!0)])])}const $t=w(mt,[["render",ht]]),gt=b({name:"ConfigPanel",components:{LoopSelector:Me,StartImageInput:Ye,EndImageInput:Ne,EnhancementSelector:we,ElButton:U,FontAwesomeIcon:L,PromptInput:dt,ExtendFromInput:$t,CustomSelector:Ie,UploadVideo:nt,Consumption:oe},emits:["generate"],computed:{config(){return this.$store.state.luma?.config},consumption(){return ne(this.config,this.service?.cost)},service(){return this.$store.state.luma?.service}},methods:{onGenerate(){this.$emit("generate")}}}),vt={class:"flex flex-col h-full"},bt={class:"flex-1 overflow-y-auto p-5"},wt={class:"flex flex-col items-center justify-center px-5 pb-5"};function kt(e,t,p,h,k,y){const r=s("extend-from-input"),d=s("prompt-input"),u=s("custom-selector"),$=s("upload-video"),f=s("start-image-input"),l=s("end-image-input"),V=s("enhancement-selector"),I=s("loop-selector"),O=s("consumption"),G=s("font-awesome-icon"),P=s("el-button");return a(),m("div",vt,[n("div",bt,[e.config?.video_id||e.config?.video_url?(a(),v(r,{key:0,class:"mb-4"})):_("",!0),o(d,{class:"mb-4"}),e.config?.video_id?_("",!0):(a(),v(u,{key:1,class:"mb-4"})),e.config?.custom?(a(),v($,{key:2,class:"mb-4"})):_("",!0),!(e.config?.video_id||e.config?.video_url)&&!e.config?.custom?(a(),v(f,{key:3,class:"mb-4"})):_("",!0),o(l,{class:"mb-4"}),o(V,{class:"mb-4"}),o(I,{class:"mb-4"})]),n("div",wt,[o(O,{value:e.consumption,service:e.service},null,8,["value","service"]),e.config?.video_url!==void 0||e.config?.custom?(a(),v(P,{key:0,type:"primary",class:"btn w-full",round:"",onClick:e.onGenerate},{default:c(()=>[o(G,{icon:"fa-solid fa-magic",class:"mr-2"}),g(" "+i(e.$t("luma.button.extend")),1)]),_:1},8,["onClick"])):(a(),v(P,{key:1,type:"primary",class:"btn w-full",round:"",onClick:e.onGenerate},{default:c(()=>[o(G,{icon:"fa-solid fa-magic",class:"mr-2"}),g(" "+i(e.$t("luma.button.generate")),1)]),_:1},8,["onClick"]))])])}const yt=w(gt,[["render",kt]]),Et=b({name:"TaskPreview",components:{ElImage:J,CopyToClipboard:ae,FontAwesomeIcon:L,ElAlert:K,VideoPlayer:F,ElTooltip:H,ElButton:U},props:{modelValue:{type:Object,required:!0}},emits:["extend"],data(){return{}},computed:{application(){return this.$store.state.luma?.application},config(){return this.$store.state.luma?.config}},methods:{onExtend(e,t){console.debug("set config",t),this.$store.commit("luma/setConfig",{...this.$store.state.luma?.config,video_id:t.video_id,prompt:t.prompt,action:"extend",thumbnail_url:t.thumbnail_url,video_url:t.video_url}),this.$emit("extend")},onDownload(e){window.open(e,"_blank")}}}),Vt={class:"preview"},St={class:"left"},Lt={class:"main"},Ut={class:"bot"},It={class:"datetime"},Tt={class:"info"},Ct={key:0,class:"prompt mt-2"},jt={key:0},Rt={key:1},At={key:0,class:T({content:!0,failed:!0})},Gt={key:0,class:"mb-4"},Pt={key:1,class:T({operations:!0,"mt-2":!0,"mb-4":!0})},Mt={class:"text-[var(--el-text-color-regular)] text-xs mb-0"},Bt={key:1,class:T({content:!0})},zt={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Dt={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Ft={class:"text-[var(--el-text-color-regular)] text-xs mb-0"},Ot={key:2,class:T({content:!0})},qt={class:"text-[var(--el-text-color-regular)] text-xs mb-0"};function Nt(e,t,p,h,k,y){const r=s("el-image"),d=s("video-player"),u=s("el-button"),$=s("el-tooltip"),f=s("font-awesome-icon"),l=s("copy-to-clipboard"),V=s("el-alert");return a(),m("div",Vt,[n("div",St,[o(r,{src:"https://cdn.acedata.cloud/ahjfwi.png",class:"avatar"})]),n("div",Lt,[n("div",Ut,[g(i(e.$t("luma.name.lumaBot"))+" ",1),n("span",It,i(e.$dayjs.format(""+new Date(parseFloat((e.modelValue?.created_at||"").toString())*1e3))),1)]),n("div",Tt,[e.modelValue?.request?.prompt?(a(),m("p",Ct,[g(i(e.modelValue?.request?.prompt)+" ",1),e.modelValue?.response?_("",!0):(a(),m("span",jt," - ("+i(e.$t("luma.status.pending"))+") ",1)),e.modelValue?.response?.state==="processing"||e.modelValue?.response?.state==="pending"?(a(),m("span",Rt," - ("+i(e.$t("luma.status.processing"))+") ",1)):_("",!0)])):_("",!0)]),e.modelValue?.response?.success===!0?(a(),m("div",At,[e.modelValue.response.video_url?(a(),m("div",Gt,[o(d,{src:e.modelValue.response.video_url},null,8,["src"])])):_("",!0),e.modelValue?.response&&!e.config?.custom?(a(),m("div",Pt,[o($,{class:"box-item",effect:"dark",content:e.$t("luma.message.extendVideo"),placement:"top-start"},{default:c(()=>[o(u,{type:"info",size:"small",class:"btn-action",onClick:t[0]||(t[0]=M(I=>e.onExtend(I,e.modelValue?.response),["stop"]))},{default:c(()=>[g(i(e.$t("luma.button.extend")),1)]),_:1})]),_:1},8,["content"]),o($,{class:"box-item",effect:"dark",content:e.$t("luma.message.downloadVideo"),placement:"top-start"},{default:c(()=>[o(u,{type:"info",size:"small",class:"btn-action",onClick:t[1]||(t[1]=M(I=>e.onDownload(e.modelValue?.response?.video_url),["stop"]))},{default:c(()=>[g(i(e.$t("luma.button.download")),1)]),_:1})]),_:1},8,["content"])])):_("",!0),o(V,{closable:!1,class:"mt-2 success"},{default:c(()=>[n("p",Mt,[o(f,{icon:"fa-solid fa-magic",class:"mr-1"}),g(" "+i(e.$t("luma.name.taskId"))+": "+i(e.modelValue?.id)+" ",1),o(l,{content:e.modelValue?.id},null,8,["content"])])]),_:1})])):_("",!0),e.modelValue?.response?.state==="failed"||e.modelValue?.response?.success===!1?(a(),m("div",Bt,[o(V,{closable:!1,class:"failure"},{template:c(()=>[o(f,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),g(" "+i(e.$t("luma.name.failure")),1)]),default:c(()=>[n("p",zt,[o(f,{icon:"fa-solid fa-magic",class:"mr-1"}),g(" "+i(e.$t("luma.name.taskId"))+": "+i(e.modelValue?.id)+" ",1),o(l,{content:e.modelValue?.id},null,8,["content"])]),n("p",Dt,[o(f,{icon:"fa-solid fa-circle-info",class:"mr-1"}),g(" "+i(e.$t("luma.name.failureReason"))+": "+i(e.modelValue?.response?.error?.message)+" ",1),o(l,{content:e.modelValue?.response?.error?.message},null,8,["content"])]),n("p",Ft,[o(f,{icon:"fa-solid fa-hashtag",class:"mr-1"}),g(" "+i(e.$t("luma.name.traceId"))+": "+i(e.modelValue?.trace_id)+" ",1),o(l,{content:e.modelValue?.response?.trace_id},null,8,["content"])])]),_:1})])):_("",!0),!e.modelValue?.response||e.modelValue?.response?.state==="processing"||e.modelValue?.response?.state==="pending"?(a(),m("div",Ot,[o(V,{closable:!1,class:"info"},{template:c(()=>[o(f,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),g(" "+i(e.$t("luma.name.failure")),1)]),default:c(()=>[n("p",qt,[o(f,{icon:"fa-solid fa-magic",class:"mr-1"}),g(" "+i(e.$t("luma.name.taskId"))+": "+i(e.modelValue?.id)+" ",1),o(l,{content:e.modelValue?.id},null,8,["content"])])]),_:1})])):_("",!0)])])}const Ht=w(Et,[["render",Nt],["__scopeId","data-v-a63c76a8"]]),Kt=b({name:"RecentPanel",components:{BotPlaceholder:le,TaskPreview:Ht,NoTasks:se,ScrollList:ee},props:{loading:{type:Boolean,default:!1}},emits:["reach-top","extend"],data(){return{job:0}},computed:{tasks(){return{...this.$store.state.luma?.tasks,items:this.$store.state.luma?.tasks?.items?.slice()}}},methods:{getScrollElement(){return this.$refs.scrollList?.getScrollElement?.()}}}),Jt={key:0},Qt={key:2,class:"w-full h-full flex items-center justify-center"};function Xt(e,t,p,h,k,y){const r=s("bot-placeholder"),d=s("task-preview"),u=s("scroll-list"),$=s("no-tasks");return a(),m(B,null,[e.tasks?.items===void 0?(a(),m("div",Jt,[o(r)])):e.tasks?.items?.length&&e.tasks?.items?.length>0?(a(),v(u,{key:1,ref:"scrollList",class:"tasks w-full h-full overflow-y-auto",loading:e.loading,onReachTop:t[1]||(t[1]=f=>e.$emit("reach-top"))},{default:c(()=>[(a(!0),m(B,null,Q(e.tasks?.items,f=>(a(),v(d,{key:f.id,"model-value":f,onExtend:t[0]||(t[0]=l=>e.$emit("extend"))},null,8,["model-value"]))),128))]),_:1},8,["loading"])):_("",!0),e.tasks?.items?.length===0?(a(),m("div",Qt,[o($)])):_("",!0)],64)}const Wt=w(Kt,[["render",Xt]]),Yt="https://webhook.acedata.cloud/luma",Zt=b({name:"LumaIndex",components:{ConfigPanel:yt,Layout:pe,RecentPanel:Wt},inject:["initialized"],emits:["extend"],data(){return{task:void 0,job:0,loadingMore:!1,fetchingTasks:!1}},computed:{applicationsLoading(){return this.$store.state.luma?.status?.getApplications===z.Request},tasksLoading(){return this.$store.state.luma?.status?.getTasks===z.Request||this.fetchingTasks},credential(){return this.$store.state.luma.credential},config(){return this.$store.state.luma.config},application(){return this.$store.state.luma.application},tasks(){return this.$store.state.luma.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 ie({tasks:this.tasks,getTasks:()=>this.tasks,loading:this.loadingMore,setLoading:e=>this.loadingMore=e,isBlocked:()=>this.tasksLoading||this.applicationsLoading,fetch:e=>this.onGetTasks({createdAtMax:e}),getScrollElement:()=>this.getTasksScrollElement()})},async onGetService(){console.debug("start onGetService"),await this.$store.dispatch("luma/getService"),console.debug("end onGetService")},async onGetApplication(){console.debug("start onGetApplication"),await this.$store.dispatch("luma/getApplications"),console.debug("end onGetApplication"),await this.onGetTasks()},async onScrollDown(){console.debug("scrolling down"),await this.$nextTick();const e=this.getTasksScrollElement();e&&(e.scrollTop=e.scrollHeight)},async onGetTasks(e){if(this.applicationsLoading||this.fetchingTasks){console.debug("loading");return}console.debug("start onGetTasks",e);const{limit:t=5,createdAtMin:p,createdAtMax:h}=e||{};console.debug("limit",t,"createdAtMin",p,"createdAtMax",h),this.fetchingTasks=!0;try{await this.$store.dispatch("luma/getTasks",{limit:t,createdAtMin:p,createdAtMax:h})}finally{this.fetchingTasks=!1}},async onGenerate(){const e={...this.config,callback_url:Yt},t=this.credential?.token;if(!t){console.error("no token specified");return}E.info(this.$t("luma.message.startingTask")),Z.generate(e,{token:t}).then(()=>{E.success(this.$t("luma.message.startTaskSuccess"))}).catch(p=>{p?.response?.data?.error?.code===x?E.error(this.$t("luma.message.usedUp")):E.error(this.$t("luma.message.startTaskFailed"))}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})},getTasksScrollElement(){return this.$refs.recentPanel?.getScrollElement?.()}}});function xt(e,t,p,h,k,y){const r=s("config-panel"),d=s("recent-panel"),u=s("layout");return a(),v(u,null,{config:c(()=>[o(r,{onGenerate:e.onGenerate},null,8,["onGenerate"])]),result:c(()=>[o(d,{ref:"recentPanel",loading:e.loadingMore,onReachTop:e.onReachTop,onExtend:t[0]||(t[0]=$=>e.$emit("extend"))},null,8,["loading","onReachTop"])]),_:1})}const vo=w(Zt,[["render",xt]]);export{vo as default};
|
|
1
|
+
import{F as L}from"./index.es-vNwt4sbI.js";import{l as U,S as q,k as j,t as R,u as E,s as N,p as H,G as K,j as J}from"./vendor-element-plus-B4FTqxj4.js";import{d as b,C as m,G as n,T as o,E as C,K as c,ai as s,D as a,R as i,Q as g,J as v,O as _,M as T,X as M,S as B,ag as Q}from"./vendor-vue-1w_NBnjl.js";import{_ as w,bp as X,bq as W,br as Y,aj as A,bs as Z,aB as x,ay as z}from"./index-CqL6zWO4.js";import{I as S,S as ee}from"./ScrollList-BGZ0Fkh5.js";import{I as D}from"./ImagePreview-YbDjRoDP.js";import{F as te}from"./FilePreview-CBNy_XWe.js";import{V as F}from"./VideoPlayer-CfppHbtZ.js";import{C as oe,N as se}from"./NoTasks-Dpxe4xfM.js";import{a as ne}from"./price-C8BXaFbS.js";import{C as ae}from"./CopyToClipboard-jWxr3xe-.js";import{B as le}from"./BotPlaceholder-4xqKcsb2.js";import{l as ie}from"./pagination-CihAE3FS.js";import"./vendor-dayjs-CzbnksQQ.js";import"./vendor-web3-BT8AOwfJ.js";import"./vendor-axios-NIGUFBhG.js";import"./vendor-vue-router-Dj5bcX0v.js";import"./vue-plyr-QZFBikSk.js";const re=b({name:"LayoutLuma",components:{ElDrawer:q,ElButton:U,FontAwesomeIcon:L},data(){return{drawer:!1}}}),ce={class:"main flex flex-row flex-1"},ue={class:"config w-[320px] flex-none h-full overflow-y-auto bg-[var(--app-sidebar-bg)] border-r border-[var(--app-border-subtle)]"},de={class:"result h-full p-6 flex-1 flex flex-col min-w-0 overflow-x-hidden bg-[var(--app-content-bg)]"};function me(e,t,p,h,k,y){const r=s("font-awesome-icon"),d=s("el-button"),u=s("el-drawer");return a(),m("div",ce,[n("div",ue,[C(e.$slots,"config",{},void 0,!0)]),n("div",de,[C(e.$slots,"result",{},void 0,!0)]),o(d,{circle:"",class:"menu",onClick:t[0]||(t[0]=$=>e.drawer=!0)},{default:c(()=>[o(r,{icon:"fa-solid fa-magic"})]),_:1}),o(u,{modelValue:e.drawer,"onUpdate:modelValue":t[1]||(t[1]=$=>e.drawer=$),direction:"ltr","with-header":!1,size:"350px",class:"drawer"},{default:c(()=>[C(e.$slots,"config",{},void 0,!0)]),_:3},8,["modelValue"])])}const pe=w(re,[["render",me],["__scopeId","data-v-7be1f25b"]]),fe=b({name:"EnhancementSelector",components:{ElSwitch:j,InfoIcon:S},computed:{value:{get(){return this.$store.state.luma?.config?.enhancement},set(e){console.debug("set enhancement",e),this.$store.commit("luma/setConfig",{...this.$store.state.luma?.config,enhancement:e})}}},mounted(){this.value===void 0&&(this.value=X)}}),_e={class:"relative"},he={class:"flex justify-between"},$e={class:"flex justify-start items-center"},ge={class:"text-sm font-bold"},ve={class:"flex justify-end items-center"};function be(e,t,p,h,k,y){const r=s("info-icon"),d=s("el-switch");return a(),m("div",_e,[n("div",he,[n("div",$e,[n("span",ge,i(e.$t("luma.name.enhancement")),1),o(r,{content:e.$t("luma.description.enhancement")},null,8,["content"])]),n("div",ve,[o(d,{modelValue:e.value,"onUpdate:modelValue":t[0]||(t[0]=u=>e.value=u),class:"value"},null,8,["modelValue"])])])])}const we=w(fe,[["render",be]]),ke=b({name:"CustomSelector",components:{ElSwitch:j,InfoIcon:S},computed:{value:{get(){return this.$store.state.luma?.config?.custom},set(e){console.debug("set custom",e),this.$store.commit("luma/setConfig",{...this.$store.state.luma?.config,custom:e})}}},mounted(){this.value===void 0&&(this.value=W)}}),ye={class:"relative"},Ee={class:"flex justify-between"},Ve={class:"flex justify-start items-center"},Se={class:"text-sm font-bold"},Le={class:"flex justify-end items-center"};function Ue(e,t,p,h,k,y){const r=s("info-icon"),d=s("el-switch");return a(),m("div",ye,[n("div",Ee,[n("div",Ve,[n("span",Se,i(e.$t("luma.name.custom")),1),o(r,{content:e.$t("luma.description.custom")},null,8,["content"])]),n("div",Le,[o(d,{modelValue:e.value,"onUpdate:modelValue":t[0]||(t[0]=u=>e.value=u),class:"value"},null,8,["modelValue"])])])])}const Ie=w(ke,[["render",Ue]]),Te=b({name:"LoopSelector",components:{ElSwitch:j,InfoIcon:S},computed:{value:{get(){return this.$store.state.luma?.config?.loop},set(e){console.debug("set loop",e),this.$store.commit("luma/setConfig",{...this.$store.state.luma?.config,loop:e})}}},mounted(){this.value===void 0&&(this.value=Y)}}),Ce={class:"relative"},je={class:"flex justify-between"},Re={class:"flex justify-start items-center"},Ae={class:"text-sm font-bold"},Ge={class:"flex justify-end items-center"};function Pe(e,t,p,h,k,y){const r=s("info-icon"),d=s("el-switch");return a(),m("div",Ce,[n("div",je,[n("div",Re,[n("span",Ae,i(e.$t("luma.name.loop")),1),o(r,{content:e.$t("luma.description.loop")},null,8,["content"])]),n("div",Ge,[o(d,{modelValue:e.value,"onUpdate:modelValue":t[0]||(t[0]=u=>e.value=u),class:"value"},null,8,["modelValue"])])])])}const Me=w(Te,[["render",Pe]]),Be=b({name:"EndImage",components:{ElUpload:R,ElButton:U,ImagePreview:D,InfoIcon:S,FontAwesomeIcon:L},data(){return{fileList:[],uploadUrl:A()+"/api/v1/files/"}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},urls(){return this.fileList.map(e=>e?.response?.file_url)},value:{get(){return this.$store.state?.luma?.config?.start_image_url},set(){}}},mounted(){this.value||(this.value=void 0),this.onSetEndImageUrl()},methods:{onExceed(){E.warning(this.$t("luma.message.uploadReferencesExceed"))},onError(){E.error(this.$t("luma.message.uploadReferencesError"))},onSetEndImageUrl(){const e=this.urls?.[0];this.$store.commit("luma/setConfig",{...this.$store.state.luma?.config,end_image_url:e})},async onSuccess(){this.onSetEndImageUrl()}}}),ze={class:"relative"},De={class:"flex justify-between"},Fe={class:"flex justify-start items-center"},Oe={class:"text-sm font-bold"};function qe(e,t,p,h,k,y){const r=s("info-icon"),d=s("image-preview"),u=s("font-awesome-icon"),$=s("el-button"),f=s("el-upload");return a(),m("div",ze,[n("div",De,[n("div",Fe,[n("span",Oe,i(e.$t("luma.name.endImageUrl")),1),o(r,{content:e.$t("luma.description.endImageUrl")},null,8,["content"])])]),o(f,{"file-list":e.fileList,"onUpdate:fileList":t[0]||(t[0]=l=>e.fileList=l),name:"file",accept:".png,.jpg,.jpeg,.gif,.bmp,.webp",limit:5,class:"upload-wrapper",multiple:!1,action:e.uploadUrl,"list-type":"picture","on-exceed":e.onExceed,"on-error":e.onError,"on-success":e.onSuccess,headers:e.headers},{file:c(({file:l})=>[l.url&&l.percentage!==void 0?(a(),v(d,{key:0,url:l.url,name:l.name,percentage:l.percentage,onRemove:V=>e.fileList.splice(e.fileList.indexOf(l),1)},null,8,["url","name","percentage","onRemove"])):_("",!0)]),default:c(()=>[o($,{round:"",type:"primary",size:"small",class:"btn btn-upload"},{default:c(()=>[o(u,{icon:"fa-solid fa-upload",class:"icon mr-1"}),g(" "+i(e.$t("luma.button.uploadEndImageUrl")),1)]),_:1})]),_:1},8,["file-list","action","on-exceed","on-error","on-success","headers"])])}const Ne=w(Be,[["render",qe],["__scopeId","data-v-7ab78c3e"]]),He=b({name:"StartImage",components:{ElUpload:R,ElButton:U,ImagePreview:D,InfoIcon:S,FontAwesomeIcon:L},data(){return{fileList:[],uploadUrl:A()+"/api/v1/files/"}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},urls(){return this.fileList.map(e=>e?.response?.file_url)},value:{get(){return this.$store.state?.luma?.config?.start_image_url},set(){}}},mounted(){this.value||(this.value=void 0),this.onSetStartImageUrl()},methods:{onExceed(){E.warning(this.$t("luma.message.uploadReferencesExceed"))},onError(){E.error(this.$t("luma.message.uploadReferencesError"))},onSetStartImageUrl(){const e=this.urls?.[0];this.$store.commit("luma/setConfig",{...this.$store.state.luma?.config,start_image_url:e})},async onSuccess(){this.onSetStartImageUrl()}}}),Ke={class:"relative"},Je={class:"flex justify-between"},Qe={class:"flex justify-start items-center"},Xe={class:"text-sm font-bold"};function We(e,t,p,h,k,y){const r=s("info-icon"),d=s("image-preview"),u=s("font-awesome-icon"),$=s("el-button"),f=s("el-upload");return a(),m("div",Ke,[n("div",Je,[n("div",Qe,[n("span",Xe,i(e.$t("luma.name.startImageUrl")),1),o(r,{content:e.$t("luma.description.startImageUrl")},null,8,["content"])])]),o(f,{"file-list":e.fileList,"onUpdate:fileList":t[0]||(t[0]=l=>e.fileList=l),name:"file",accept:".png,.jpg,.jpeg,.gif,.bmp,.webp",limit:5,class:"upload-wrapper",multiple:!1,action:e.uploadUrl,"list-type":"picture","on-exceed":e.onExceed,"on-error":e.onError,"on-success":e.onSuccess,headers:e.headers},{file:c(({file:l})=>[l.percentage!=null?(a(),v(d,{key:0,url:l.url||l.response.file_url,name:l.name,percentage:l.percentage,onRemove:V=>e.fileList.splice(e.fileList.indexOf(l),1)},null,8,["url","name","percentage","onRemove"])):_("",!0)]),default:c(()=>[o($,{round:"",type:"primary",size:"small",class:"btn btn-upload"},{default:c(()=>[o(u,{icon:"fa-solid fa-upload",class:"icon mr-1"}),g(" "+i(e.$t("luma.button.uploadStartImageUrl")),1)]),_:1})]),_:1},8,["file-list","action","on-exceed","on-error","on-success","headers"])])}const Ye=w(He,[["render",We],["__scopeId","data-v-425a8cec"]]),Ze=b({name:"UploadVideo",components:{ElUpload:R,ElButton:U,InfoIcon:S,FilePreview:te,FontAwesomeIcon:L},data(){return{fileList:[],uploadUrl:A()+"/api/v1/files/"}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},urls(){return this.fileList.map(e=>e?.response?.file_url)},value:{get(){return this.$store.state.luma?.config?.video_url},set(){const e=this.urls?.[0];this.$store.commit("luma/setConfig",{...this.$store.state.luma?.config,video_url:e})}}},mounted(){this.value||(this.value=void 0)},methods:{onExceed(){E.warning(this.$t("luma.message.uploadVideoExceed"))},onError(){E.error(this.$t("luma.message.uploadVideoError"))},beforeUpload(e){const t=e.type==="video/mp4",p=e.size/1024/1024<10;return t?p?!0:(E.error(this.$t("luma.message.uploadVideoSizeExceed")),!1):(E.error(this.$t("luma.message.uploadVideoTypeFailed")),!1)},onSetVideoUrl(){const e=this.urls?.[0];this.$store.commit("luma/setConfig",{...this.$store.state.luma?.config,video_url:e,action:"extend"})},async onSuccess(){this.onSetVideoUrl()}}}),xe={class:"relative"},et={class:"flex justify-between"},tt={class:"flex justify-start items-center"},ot={class:"text-sm font-bold"};function st(e,t,p,h,k,y){const r=s("info-icon"),d=s("file-preview"),u=s("font-awesome-icon"),$=s("el-button"),f=s("el-upload");return a(),m("div",xe,[n("div",et,[n("div",tt,[n("span",ot,i(e.$t("luma.name.videoUrl")),1),o(r,{content:e.$t("luma.description.videoUrl")},null,8,["content"])])]),o(f,{"file-list":e.fileList,"onUpdate:fileList":t[0]||(t[0]=l=>e.fileList=l),accept:".mp4",name:"file",class:"value","show-file-list":!0,limit:1,multiple:!1,action:e.uploadUrl,"before-upload":e.beforeUpload,"on-exceed":e.onExceed,"on-error":e.onError,"on-success":e.onSuccess,headers:e.headers},{file:c(({file:l})=>[l.percentage!=null?(a(),v(d,{key:0,url:l.url||l.response?.file_url,name:l.name,percentage:l.percentage,onRemove:V=>e.fileList.splice(e.fileList.indexOf(l),1)},null,8,["url","name","percentage","onRemove"])):_("",!0)]),default:c(()=>[o($,{round:"",type:"primary",size:"small",class:"btn btn-upload"},{default:c(()=>[o(u,{icon:"fa-solid fa-upload",class:"icon mr-1"}),g(" "+i(e.$t("luma.button.uploadVideoUrl")),1)]),_:1})]),_:1},8,["file-list","action","before-upload","on-exceed","on-error","on-success","headers"])])}const nt=w(Ze,[["render",st],["__scopeId","data-v-74e51526"]]),at="",lt=b({name:"PromptInput",components:{ElInput:N,InfoIcon:S},computed:{prompt:{get(){return this.$store.state.luma?.config?.prompt},set(e){console.debug("set prompt",e),this.$store.commit("luma/setConfig",{...this.$store.state.luma?.config,prompt:e})}}},mounted(){this.prompt||(this.prompt=at)}}),it={class:"field"},rt={class:"box"},ct={class:"title font-bold"};function ut(e,t,p,h,k,y){const r=s("info-icon"),d=s("el-input");return a(),m("div",it,[n("div",rt,[n("h2",ct,i(e.$t("luma.name.prompt")),1),o(r,{content:e.$t("luma.description.prompt"),class:"info"},null,8,["content"])]),o(d,{modelValue:e.prompt,"onUpdate:modelValue":t[0]||(t[0]=u=>e.prompt=u),rows:3,type:"textarea",class:"prompt",placeholder:e.$t("luma.placeholder.prompt")},null,8,["modelValue","placeholder"])])}const dt=w(lt,[["render",ut],["__scopeId","data-v-281baab8"]]),mt=b({name:"ExtendFromInput",components:{VideoPlayer:F},props:{modelValue:{type:Object,required:!1,default:void 0}},data(){return{options:{quality:{default:"1080p"}}}},computed:{config(){return this.$store.state.luma?.config}}}),pt={class:"relative"},ft={class:"flex mb-2"},_t={class:"text-sm font-bold"};function ht(e,t,p,h,k,y){const r=s("video-player");return a(),m("div",pt,[n("div",ft,[n("span",_t,i(e.$t("luma.name.extend")),1)]),n("div",null,[e.config?.video_url?(a(),v(r,{key:0,src:e.config?.video_url},null,8,["src"])):_("",!0)])])}const $t=w(mt,[["render",ht]]),gt=b({name:"ConfigPanel",components:{LoopSelector:Me,StartImageInput:Ye,EndImageInput:Ne,EnhancementSelector:we,ElButton:U,FontAwesomeIcon:L,PromptInput:dt,ExtendFromInput:$t,CustomSelector:Ie,UploadVideo:nt,Consumption:oe},emits:["generate"],computed:{config(){return this.$store.state.luma?.config},consumption(){return ne(this.config,this.service?.cost)},service(){return this.$store.state.luma?.service}},methods:{onGenerate(){this.$emit("generate")}}}),vt={class:"flex flex-col h-full"},bt={class:"flex-1 overflow-y-auto p-5"},wt={class:"flex flex-col items-center justify-center px-5 pb-5"};function kt(e,t,p,h,k,y){const r=s("extend-from-input"),d=s("prompt-input"),u=s("custom-selector"),$=s("upload-video"),f=s("start-image-input"),l=s("end-image-input"),V=s("enhancement-selector"),I=s("loop-selector"),O=s("consumption"),G=s("font-awesome-icon"),P=s("el-button");return a(),m("div",vt,[n("div",bt,[e.config?.video_id||e.config?.video_url?(a(),v(r,{key:0,class:"mb-4"})):_("",!0),o(d,{class:"mb-4"}),e.config?.video_id?_("",!0):(a(),v(u,{key:1,class:"mb-4"})),e.config?.custom?(a(),v($,{key:2,class:"mb-4"})):_("",!0),!(e.config?.video_id||e.config?.video_url)&&!e.config?.custom?(a(),v(f,{key:3,class:"mb-4"})):_("",!0),o(l,{class:"mb-4"}),o(V,{class:"mb-4"}),o(I,{class:"mb-4"})]),n("div",wt,[o(O,{value:e.consumption,service:e.service},null,8,["value","service"]),e.config?.video_url!==void 0||e.config?.custom?(a(),v(P,{key:0,type:"primary",class:"btn w-full",round:"",onClick:e.onGenerate},{default:c(()=>[o(G,{icon:"fa-solid fa-magic",class:"mr-2"}),g(" "+i(e.$t("luma.button.extend")),1)]),_:1},8,["onClick"])):(a(),v(P,{key:1,type:"primary",class:"btn w-full",round:"",onClick:e.onGenerate},{default:c(()=>[o(G,{icon:"fa-solid fa-magic",class:"mr-2"}),g(" "+i(e.$t("luma.button.generate")),1)]),_:1},8,["onClick"]))])])}const yt=w(gt,[["render",kt]]),Et=b({name:"TaskPreview",components:{ElImage:J,CopyToClipboard:ae,FontAwesomeIcon:L,ElAlert:K,VideoPlayer:F,ElTooltip:H,ElButton:U},props:{modelValue:{type:Object,required:!0}},emits:["extend"],data(){return{}},computed:{application(){return this.$store.state.luma?.application},config(){return this.$store.state.luma?.config}},methods:{onExtend(e,t){console.debug("set config",t),this.$store.commit("luma/setConfig",{...this.$store.state.luma?.config,video_id:t.video_id,prompt:t.prompt,action:"extend",thumbnail_url:t.thumbnail_url,video_url:t.video_url}),this.$emit("extend")},onDownload(e){window.open(e,"_blank")}}}),Vt={class:"preview"},St={class:"left"},Lt={class:"main"},Ut={class:"bot"},It={class:"datetime"},Tt={class:"info"},Ct={key:0,class:"prompt mt-2"},jt={key:0},Rt={key:1},At={key:0,class:T({content:!0,failed:!0})},Gt={key:0,class:"mb-4"},Pt={key:1,class:T({operations:!0,"mt-2":!0,"mb-4":!0})},Mt={class:"text-[var(--el-text-color-regular)] text-xs mb-0"},Bt={key:1,class:T({content:!0})},zt={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Dt={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Ft={class:"text-[var(--el-text-color-regular)] text-xs mb-0"},Ot={key:2,class:T({content:!0})},qt={class:"text-[var(--el-text-color-regular)] text-xs mb-0"};function Nt(e,t,p,h,k,y){const r=s("el-image"),d=s("video-player"),u=s("el-button"),$=s("el-tooltip"),f=s("font-awesome-icon"),l=s("copy-to-clipboard"),V=s("el-alert");return a(),m("div",Vt,[n("div",St,[o(r,{src:"https://cdn.acedata.cloud/ahjfwi.png",class:"avatar"})]),n("div",Lt,[n("div",Ut,[g(i(e.$t("luma.name.lumaBot"))+" ",1),n("span",It,i(e.$dayjs.format(""+new Date(parseFloat((e.modelValue?.created_at||"").toString())*1e3))),1)]),n("div",Tt,[e.modelValue?.request?.prompt?(a(),m("p",Ct,[g(i(e.modelValue?.request?.prompt)+" ",1),e.modelValue?.response?_("",!0):(a(),m("span",jt," - ("+i(e.$t("luma.status.pending"))+") ",1)),e.modelValue?.response?.state==="processing"||e.modelValue?.response?.state==="pending"?(a(),m("span",Rt," - ("+i(e.$t("luma.status.processing"))+") ",1)):_("",!0)])):_("",!0)]),e.modelValue?.response?.success===!0?(a(),m("div",At,[e.modelValue.response.video_url?(a(),m("div",Gt,[o(d,{src:e.modelValue.response.video_url},null,8,["src"])])):_("",!0),e.modelValue?.response&&!e.config?.custom?(a(),m("div",Pt,[o($,{class:"box-item",effect:"dark",content:e.$t("luma.message.extendVideo"),placement:"top-start"},{default:c(()=>[o(u,{type:"info",size:"small",class:"btn-action",onClick:t[0]||(t[0]=M(I=>e.onExtend(I,e.modelValue?.response),["stop"]))},{default:c(()=>[g(i(e.$t("luma.button.extend")),1)]),_:1})]),_:1},8,["content"]),o($,{class:"box-item",effect:"dark",content:e.$t("luma.message.downloadVideo"),placement:"top-start"},{default:c(()=>[o(u,{type:"info",size:"small",class:"btn-action",onClick:t[1]||(t[1]=M(I=>e.onDownload(e.modelValue?.response?.video_url),["stop"]))},{default:c(()=>[g(i(e.$t("luma.button.download")),1)]),_:1})]),_:1},8,["content"])])):_("",!0),o(V,{closable:!1,class:"mt-2 success"},{default:c(()=>[n("p",Mt,[o(f,{icon:"fa-solid fa-magic",class:"mr-1"}),g(" "+i(e.$t("luma.name.taskId"))+": "+i(e.modelValue?.id)+" ",1),o(l,{content:e.modelValue?.id},null,8,["content"])])]),_:1})])):_("",!0),e.modelValue?.response?.state==="failed"||e.modelValue?.response?.success===!1?(a(),m("div",Bt,[o(V,{closable:!1,class:"failure"},{template:c(()=>[o(f,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),g(" "+i(e.$t("luma.name.failure")),1)]),default:c(()=>[n("p",zt,[o(f,{icon:"fa-solid fa-magic",class:"mr-1"}),g(" "+i(e.$t("luma.name.taskId"))+": "+i(e.modelValue?.id)+" ",1),o(l,{content:e.modelValue?.id},null,8,["content"])]),n("p",Dt,[o(f,{icon:"fa-solid fa-circle-info",class:"mr-1"}),g(" "+i(e.$t("luma.name.failureReason"))+": "+i(e.modelValue?.response?.error?.message)+" ",1),o(l,{content:e.modelValue?.response?.error?.message},null,8,["content"])]),n("p",Ft,[o(f,{icon:"fa-solid fa-hashtag",class:"mr-1"}),g(" "+i(e.$t("luma.name.traceId"))+": "+i(e.modelValue?.trace_id)+" ",1),o(l,{content:e.modelValue?.response?.trace_id},null,8,["content"])])]),_:1})])):_("",!0),!e.modelValue?.response||e.modelValue?.response?.state==="processing"||e.modelValue?.response?.state==="pending"?(a(),m("div",Ot,[o(V,{closable:!1,class:"info"},{template:c(()=>[o(f,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),g(" "+i(e.$t("luma.name.failure")),1)]),default:c(()=>[n("p",qt,[o(f,{icon:"fa-solid fa-magic",class:"mr-1"}),g(" "+i(e.$t("luma.name.taskId"))+": "+i(e.modelValue?.id)+" ",1),o(l,{content:e.modelValue?.id},null,8,["content"])])]),_:1})])):_("",!0)])])}const Ht=w(Et,[["render",Nt],["__scopeId","data-v-a63c76a8"]]),Kt=b({name:"RecentPanel",components:{BotPlaceholder:le,TaskPreview:Ht,NoTasks:se,ScrollList:ee},props:{loading:{type:Boolean,default:!1}},emits:["reach-top","extend"],data(){return{job:0}},computed:{tasks(){return{...this.$store.state.luma?.tasks,items:this.$store.state.luma?.tasks?.items?.slice()}}},methods:{getScrollElement(){return this.$refs.scrollList?.getScrollElement?.()}}}),Jt={key:0},Qt={key:2,class:"w-full h-full flex items-center justify-center"};function Xt(e,t,p,h,k,y){const r=s("bot-placeholder"),d=s("task-preview"),u=s("scroll-list"),$=s("no-tasks");return a(),m(B,null,[e.tasks?.items===void 0?(a(),m("div",Jt,[o(r)])):e.tasks?.items?.length&&e.tasks?.items?.length>0?(a(),v(u,{key:1,ref:"scrollList",class:"tasks w-full h-full overflow-y-auto",loading:e.loading,onReachTop:t[1]||(t[1]=f=>e.$emit("reach-top"))},{default:c(()=>[(a(!0),m(B,null,Q(e.tasks?.items,f=>(a(),v(d,{key:f.id,"model-value":f,onExtend:t[0]||(t[0]=l=>e.$emit("extend"))},null,8,["model-value"]))),128))]),_:1},8,["loading"])):_("",!0),e.tasks?.items?.length===0?(a(),m("div",Qt,[o($)])):_("",!0)],64)}const Wt=w(Kt,[["render",Xt]]),Yt="https://webhook.acedata.cloud/luma",Zt=b({name:"LumaIndex",components:{ConfigPanel:yt,Layout:pe,RecentPanel:Wt},inject:["initialized"],emits:["extend"],data(){return{task:void 0,job:0,loadingMore:!1,fetchingTasks:!1}},computed:{applicationsLoading(){return this.$store.state.luma?.status?.getApplications===z.Request},tasksLoading(){return this.$store.state.luma?.status?.getTasks===z.Request||this.fetchingTasks},credential(){return this.$store.state.luma.credential},config(){return this.$store.state.luma.config},application(){return this.$store.state.luma.application},tasks(){return this.$store.state.luma.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 ie({tasks:this.tasks,getTasks:()=>this.tasks,loading:this.loadingMore,setLoading:e=>this.loadingMore=e,isBlocked:()=>this.tasksLoading||this.applicationsLoading,fetch:e=>this.onGetTasks({createdAtMax:e}),getScrollElement:()=>this.getTasksScrollElement()})},async onGetService(){console.debug("start onGetService"),await this.$store.dispatch("luma/getService"),console.debug("end onGetService")},async onGetApplication(){console.debug("start onGetApplication"),await this.$store.dispatch("luma/getApplications"),console.debug("end onGetApplication"),await this.onGetTasks()},async onScrollDown(){console.debug("scrolling down"),await this.$nextTick();const e=this.getTasksScrollElement();e&&(e.scrollTop=e.scrollHeight)},async onGetTasks(e){if(this.applicationsLoading||this.fetchingTasks){console.debug("loading");return}console.debug("start onGetTasks",e);const{limit:t=5,createdAtMin:p,createdAtMax:h}=e||{};console.debug("limit",t,"createdAtMin",p,"createdAtMax",h),this.fetchingTasks=!0;try{await this.$store.dispatch("luma/getTasks",{limit:t,createdAtMin:p,createdAtMax:h})}finally{this.fetchingTasks=!1}},async onGenerate(){const e={...this.config,callback_url:Yt},t=this.credential?.token;if(!t){console.error("no token specified");return}E.info(this.$t("luma.message.startingTask")),Z.generate(e,{token:t}).then(()=>{E.success(this.$t("luma.message.startTaskSuccess"))}).catch(p=>{p?.response?.data?.error?.code===x?E.error(this.$t("luma.message.usedUp")):E.error(this.$t("luma.message.startTaskFailed"))}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})},getTasksScrollElement(){return this.$refs.recentPanel?.getScrollElement?.()}}});function xt(e,t,p,h,k,y){const r=s("config-panel"),d=s("recent-panel"),u=s("layout");return a(),v(u,null,{config:c(()=>[o(r,{onGenerate:e.onGenerate},null,8,["onGenerate"])]),result:c(()=>[o(d,{ref:"recentPanel",loading:e.loadingMore,onReachTop:e.onReachTop,onExtend:t[0]||(t[0]=$=>e.$emit("extend"))},null,8,["loading","onReachTop"])]),_:1})}const vo=w(Zt,[["render",xt]]);export{vo as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{ap as _,_ as g}from"./index-
|
|
1
|
+
import{ap as _,_ as g}from"./index-CqL6zWO4.js";import{l as h}from"./vendor-element-plus-B4FTqxj4.js";import{d as b,C as r,G as o,R as e,J as m,O as c,T as d,K as t,Q as l,ai as p,D as i}from"./vendor-vue-1w_NBnjl.js";import"./vendor-web3-BT8AOwfJ.js";import"./vendor-dayjs-CzbnksQQ.js";import"./vendor-axios-NIGUFBhG.js";import"./vendor-vue-router-Dj5bcX0v.js";const f="3.30.2",v="https://cdn.acedata.cloud/2f29543715.apk",$="",w="",D=b({name:"DownloadIndex",components:{ElButton:h,QrCode:_},computed:{version(){return f},androidDownloadUrl(){return v},hasAndroidDownload(){return!0},iosDownloadUrl(){return $},iosFallbackUrl(){return w},hasIosDownload(){return!1}},methods:{openSupport(){window.open("https://platform.acedata.cloud/support","_blank")}}}),A={class:"download-page"},y={class:"container"},I={class:"hero-shell"},k={class:"hero-copy"},O={class:"subtitle"},S={class:"hero-tags"},U={class:"tag"},L={class:"tag"},N={class:"tag tag--soft"},C={class:"hero-actions"},B={class:"metrics"},E={class:"metric"},R={class:"metric"},z={class:"metric"},F={class:"hero-panels"},V={class:"panel panel--android"},q={class:"panel__head"},M={class:"status status--live"},P={class:"panel__text"},T={key:0,class:"qr-frame"},H={class:"panel__footer"},K={class:"panel__meta"},Q={class:"panel panel--ios"},W={class:"panel__head"},G={class:"status status--pending"},J={class:"panel__text"},j={class:"panel__footer panel__footer--stacked"},X={key:0,class:"button-group"},Y={class:"panel__meta"},Z={class:"advantage-grid"},x={class:"advantage-card"},oo={class:"advantage-card"},so={class:"advantage-card"},eo={class:"note"};function ao(s,a,no,to,lo,io){const n=p("el-button"),u=p("qr-code");return i(),r("div",A,[a[9]||(a[9]=o("div",{class:"ambient ambient--cyan"},null,-1)),a[10]||(a[10]=o("div",{class:"ambient ambient--gold"},null,-1)),o("div",y,[o("section",I,[o("div",k,[a[2]||(a[2]=o("p",{class:"eyebrow"},"AceData App",-1)),o("h1",null,e(s.$t("common.title.mobileApp")),1),o("p",O,e(s.$t("common.message.mobileAppDescription")),1),o("div",S,[o("span",U,e(s.$t("common.message.mobileAvailableNow")),1),o("span",L,"v"+e(s.version),1),o("span",N,e(s.$t("common.message.mobileSecureDelivery")),1)]),o("div",C,[s.hasAndroidDownload?(i(),m(n,{key:0,type:"primary",round:"",size:"large",tag:"a",href:s.androidDownloadUrl,target:"_blank"},{default:t(()=>[l(e(s.$t("common.button.downloadAndroid")),1)]),_:1},8,["href"])):c("",!0),d(n,{round:"",size:"large",class:"secondary-action",onClick:s.openSupport},{default:t(()=>[l(e(s.$t("common.nav.support")),1)]),_:1},8,["onClick"])]),o("div",B,[o("article",E,[a[0]||(a[0]=o("strong",null,"Android",-1)),o("span",null,e(s.$t("common.message.mobileDirectInstall")),1)]),o("article",R,[o("strong",null,"v"+e(s.version),1),o("span",null,e(s.$t("common.message.mobileLatestRelease")),1)]),o("article",z,[a[1]||(a[1]=o("strong",null,"AceData",-1)),o("span",null,e(s.$t("common.message.mobileSharedAccount")),1)])])]),o("div",F,[o("article",V,[o("div",q,[a[3]||(a[3]=o("span",{class:"platform-badge"},"Android",-1)),o("span",M,e(s.$t("common.message.mobileAvailableNow")),1)]),o("h2",null,e(s.$t("common.button.downloadAndroid")),1),o("p",P,e(s.$t("common.message.mobileAndroidHint")),1),s.hasAndroidDownload?(i(),r("div",T,[d(u,{value:s.androidDownloadUrl,width:176,height:176,class:"qr",type:"image/png",color:{dark:"#07253dff",light:"#ffffffff"}},null,8,["value"])])):c("",!0),o("div",H,[s.hasAndroidDownload?(i(),m(n,{key:0,type:"primary",round:"",size:"large",tag:"a",href:s.androidDownloadUrl,target:"_blank"},{default:t(()=>[l(e(s.$t("common.button.downloadAndroid")),1)]),_:1},8,["href"])):c("",!0),o("span",K,e(s.$t("common.message.mobileSecureDelivery")),1)])]),o("article",Q,[o("div",W,[a[4]||(a[4]=o("span",{class:"platform-badge platform-badge--ios"},"iOS",-1)),o("span",G,e(s.$t("common.message.mobileIosPending")),1)]),o("h2",null,e(s.$t("common.button.downloadIos")),1),o("p",J,e(s.hasIosDownload?s.$t("common.message.mobileIosHint"):s.$t("common.message.mobileIosPending")),1),a[5]||(a[5]=o("div",{class:"device-ghost"},[o("div",{class:"device-ghost__screen"},[o("span",null,"iOS"),o("small",null,"Signing in progress")])],-1)),o("div",j,[s.hasIosDownload?(i(),r("div",X,[d(n,{type:"primary",round:"",size:"large",tag:"a",href:s.iosDownloadUrl,target:"_blank"},{default:t(()=>[l(e(s.$t("common.button.installIos")),1)]),_:1},8,["href"]),d(n,{round:"",size:"large",tag:"a",href:s.iosFallbackUrl,target:"_blank"},{default:t(()=>[l(e(s.$t("common.button.downloadIos")),1)]),_:1},8,["href"])])):(i(),m(n,{key:1,round:"",size:"large",class:"secondary-action",onClick:s.openSupport},{default:t(()=>[l(e(s.$t("common.nav.support")),1)]),_:1},8,["onClick"])),o("span",Y,e(s.$t("common.message.mobileInstallNote")),1)])])])]),o("section",Z,[o("article",x,[a[6]||(a[6]=o("p",{class:"advantage-card__eyebrow"},"01",-1)),o("h3",null,e(s.$t("common.title.mobileFastAccess")),1),o("p",null,e(s.$t("common.message.mobileFastAccess")),1)]),o("article",oo,[a[7]||(a[7]=o("p",{class:"advantage-card__eyebrow"},"02",-1)),o("h3",null,e(s.$t("common.title.mobileTrustedRelease")),1),o("p",null,e(s.$t("common.message.mobileTrustedRelease")),1)]),o("article",so,[a[8]||(a[8]=o("p",{class:"advantage-card__eyebrow"},"03",-1)),o("h3",null,e(s.$t("common.title.mobileUnifiedExperience")),1),o("p",null,e(s.$t("common.message.mobileUnifiedExperience")),1)])]),o("section",eo,[o("p",null,e(s.$t("common.message.mobileInstallNote")),1)])])])}const ho=g(D,[["render",ao],["__scopeId","data-v-aeb2fd26"]]);export{ho as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{F as P}from"./index.es-ByZsSMmo.js";import{l as L,S as O,k as B,N as G,O as M,F as j,D as q,t as N,u as V,s as z,p as F,G as K,j as H}from"./vendor-element-plus-B4FTqxj4.js";import{d as $,C as r,G as l,T as t,E as U,K as u,ai as o,D as a,R as i,S as E,ag as T,J as I,Q as h,O as g,M as R}from"./vendor-vue-1w_NBnjl.js";import{_ as k,bt as J,bu as Q,bv as W,aj as X,bw as Y,aB as Z,ar as x,ax as ee,ay as C}from"./index-Eolh8-ZS.js";import{I as D,S as te}from"./ScrollList-DRWz9jW6.js";import{I as se}from"./ImagePreview-D-H4d4jU.js";import{C as oe,N as ae}from"./NoTasks-Cm0AqqsF.js";import{a as ne}from"./price-B3IiQ6GV.js";import{C as ie}from"./CopyToClipboard-BLbqw9nl.js";import{s as le}from"./vue-plyr-QZFBikSk.js";import{B as re}from"./BotPlaceholder-BJhJ0msN.js";import{l as ce}from"./pagination-CihAE3FS.js";import"./vendor-dayjs-CzbnksQQ.js";import"./vendor-web3-DH4JU5BG.js";import"./vendor-axios-NIGUFBhG.js";import"./vendor-vue-router-Dj5bcX0v.js";const pe=$({name:"LayoutPika",components:{ElDrawer:O,ElButton:L,FontAwesomeIcon:P},data(){return{drawer:!1}}}),de={class:"main flex flex-row flex-1"},ue={class:"config w-[320px] flex-none h-full overflow-y-auto bg-[var(--app-sidebar-bg)] border-r border-[var(--app-border-subtle)]"},me={class:"result h-full p-6 flex-1 flex flex-col min-w-0 overflow-x-hidden bg-[var(--app-content-bg)]"};function fe(e,s,c,d,v,b){const p=o("font-awesome-icon"),m=o("el-button"),n=o("el-drawer");return a(),r("div",de,[l("div",ue,[U(e.$slots,"config",{},void 0,!0)]),l("div",me,[U(e.$slots,"result",{},void 0,!0)]),t(m,{circle:"",class:"menu",onClick:s[0]||(s[0]=y=>e.drawer=!0)},{default:u(()=>[t(p,{icon:"fa-solid fa-magic"})]),_:1}),t(n,{modelValue:e.drawer,"onUpdate:modelValue":s[1]||(s[1]=y=>e.drawer=y),direction:"ltr","with-header":!1,size:"350px"},{default:u(()=>[U(e.$slots,"config",{},void 0,!0)]),_:3},8,["modelValue"])])}const _e=k(pe,[["render",fe],["__scopeId","data-v-11f71ab6"]]),he=$({name:"IngredientsSelector",components:{ElSwitch:B,InfoIcon:D},computed:{value:{get(){return this.$store.state.pika?.config?.ingredients},set(e){console.debug("set ingredients",e),e||this.$store.commit("pika/setConfig",{...this.$store.state.pika?.config,ingredients:e,ingredients_mode:void 0,image_url:void 0}),this.$store.commit("pika/setConfig",{...this.$store.state.pika?.config,ingredients:e,model:"2.0"})}}},mounted(){this.value===void 0&&(this.value=J)}}),ge={class:"field"},$e={class:"title font-bold"};function ke(e,s,c,d,v,b){const p=o("el-switch"),m=o("info-icon");return a(),r("div",ge,[l("h2",$e,i(e.$t("pika.name.ingredients")),1),t(p,{modelValue:e.value,"onUpdate:modelValue":s[0]||(s[0]=n=>e.value=n),class:"value"},null,8,["modelValue"]),t(m,{content:e.$t("pika.description.ingredients"),class:"info"},null,8,["content"])])}const ve=k(he,[["render",ke],["__scopeId","data-v-17c0af5c"]]),be=$({name:"EffectSelector",components:{ElSelect:M,ElOption:G},data(){return{}},computed:{options(){return[{value:"Levitate",label:this.$t("pika.style.effect1")},{value:"Decapitate",label:this.$t("pika.style.effect2")},{value:"Eye-pop",label:this.$t("pika.style.effect3")},{value:"Ta-da",label:this.$t("pika.style.effect4")},{value:"Deflate",label:this.$t("pika.style.effect5")},{value:"Crumble",label:this.$t("pika.style.effect6")},{value:"Dissolve",label:this.$t("pika.style.effect7")},{value:"Squish",label:this.$t("pika.style.effect8")},{value:"Inflate",label:this.$t("pika.style.effect9")},{value:"Melt",label:this.$t("pika.style.effect10")},{value:"Cake-ify",label:this.$t("pika.style.effect11")},{value:"Crush",label:this.$t("pika.style.effect12")},{value:"Explode",label:this.$t("pika.style.effect13")}]},value:{get(){return this.$store.state.pika?.config?.effect},set(e){this.$store.commit("pika/setConfig",{...this.$store.state.pika?.config,effect:e})}}}}),ye={class:"field"},we={class:"title font-bold"},Ve={class:"float-left"};function Ie(e,s,c,d,v,b){const p=o("el-option"),m=o("el-select");return a(),r("div",ye,[l("h2",we,i(e.$t("pika.name.effect")),1),t(m,{modelValue:e.value,"onUpdate:modelValue":s[0]||(s[0]=n=>e.value=n),class:"value",placeholder:e.$t("pika.placeholder.select"),clearable:""},{default:u(()=>[(a(!0),r(E,null,T(e.options,n=>(a(),I(p,{key:n.value,label:n.label,value:n.value},{default:u(()=>[l("span",Ve,i(n.label),1)]),_:2},1032,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const Se=k(be,[["render",Ie],["__scopeId","data-v-d1c54475"]]),Ee=$({name:"IngredientsModelSelector",components:{ElRadioButton:q,ElRadioGroup:j},data(){return{options:[{label:this.$t("pika.button.precise"),value:"precise"},{label:this.$t("pika.button.creative"),value:"creative"}]}},computed:{value:{get(){return this.$store.state.pika?.config?.ingredients_mode},set(e){this.$store.commit("pika/setConfig",{...this.$store.state.pika?.config,ingredients_mode:e})}}},mounted(){this.value||(this.value=Q)}}),Te={class:"field"},Ce={class:"title font-bold"};function Pe(e,s,c,d,v,b){const p=o("el-radio-button"),m=o("el-radio-group");return a(),r("div",Te,[l("h2",Ce,i(e.$t("pika.name.ingredientsModel")),1),t(m,{modelValue:e.value,"onUpdate:modelValue":s[0]||(s[0]=n=>e.value=n),size:"small",class:"quality"},{default:u(()=>[(a(!0),r(E,null,T(e.options,n=>(a(),I(p,{key:n.value,label:n.value},{default:u(()=>[h(i(n.label),1)]),_:2},1032,["label"]))),128))]),_:1},8,["modelValue"])])}const Le=k(Ee,[["render",Pe],["__scopeId","data-v-b948551f"]]),Re=$({name:"ModelSelector",components:{ElSelect:M,ElOption:G},props:{modelValue:{type:String,default:void 0}},emits:["update:modelValue"],data(){return{options:[{value:"2.0",label:"2.0"},{value:"1.5",label:"1.5"}]}},computed:{value:{get(){return this.$store.state.pika?.config?.model},set(e){this.$store.commit("pika/setConfig",{...this.$store.state.pika.config,model:e})}}},mounted(){this.value||(this.value=W)}}),Ae={class:"field"},Ue={class:"title font-bold"};function De(e,s,c,d,v,b){const p=o("el-option"),m=o("el-select");return a(),r("div",Ae,[l("h2",Ue,i(e.$t("pika.name.model")),1),t(m,{modelValue:e.value,"onUpdate:modelValue":s[0]||(s[0]=n=>e.value=n),class:"value",placeholder:e.$t("pika.placeholder.select")},{default:u(()=>[(a(!0),r(E,null,T(e.options,n=>(a(),I(p,{key:n.value,label:n.label,value:n.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const Ge=k(Re,[["render",De],["__scopeId","data-v-7b2e870a"]]),Me=$({name:"ImageUrlInput",components:{ElUpload:N,ElButton:L,InfoIcon:D,ImagePreview:se,FontAwesomeIcon:P},data(){return{fileList:[],uploadUrl:X()+"/api/v1/files/"}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},urls(){return this.fileList.map(e=>e?.response?.file_url)},value:{get(){return this.$store.state.pika?.config?.image_url},set(){const e=this.urls?.[0];this.$store.commit("pika/setConfig",{...this.$store.state.pika?.config,image_url:e})}}},mounted(){this.value||(this.value=void 0),this.onSetStartImageUrl()},methods:{onExceed(){V.warning(this.$t("pika.message.uploadStartImageExceed"))},onError(){V.error(this.$t("pika.message.uploadStartImageError"))},async onRemove(){V.error(this.$t("pika.message.uploadStartImageError"))},onSetStartImageUrl(){this.$store.commit("pika/setConfig",{...this.$store.state.pika?.config,image_url:this.urls})},async onSuccess(){this.onSetStartImageUrl()}}}),Oe={class:"field"},Be={class:"title font-bold"},je={class:"upload-wrapper"};function qe(e,s,c,d,v,b){const p=o("image-preview"),m=o("font-awesome-icon"),n=o("el-button"),y=o("el-upload"),_=o("info-icon");return a(),r("div",Oe,[l("h2",Be,i(e.$t("pika.name.imageUrl")),1),l("div",je,[t(y,{"file-list":e.fileList,"onUpdate:fileList":s[0]||(s[0]=f=>e.fileList=f),accept:".png,.jpg,.jpeg,.gif,.bmp,.webp",name:"file",class:"value upload-wrapper",limit:3,multiple:!0,"list-type":"picture",action:e.uploadUrl,"on-exceed":e.onExceed,"on-error":e.onError,"on-remove":e.onRemove,"on-success":e.onSuccess,headers:e.headers},{file:u(({file:f})=>[t(p,{url:f.url||f.response?.file_url,name:f.name,percentage:f.percentage,onRemove:S=>e.fileList.splice(e.fileList.indexOf(f),1)},null,8,["url","name","percentage","onRemove"])]),default:u(()=>[t(n,{size:"small",type:"primary",round:""},{default:u(()=>[t(m,{icon:"fa-solid fa-upload",class:"mr-1"}),h(" "+i(e.$t("pika.button.uploadImageUrl")),1)]),_:1})]),_:1},8,["file-list","action","on-exceed","on-error","on-remove","on-success","headers"])]),t(_,{content:e.$t("pika.description.imageUrl"),class:"info"},null,8,["content"])])}const Ne=k(Me,[["render",qe],["__scopeId","data-v-18cda67a"]]),ze="",Fe=$({name:"PromptInput",components:{ElInput:z,InfoIcon:D},computed:{prompt:{get(){return this.$store.state.pika?.config?.prompt},set(e){console.debug("set prompt",e),this.$store.commit("pika/setConfig",{...this.$store.state.pika?.config,prompt:e})}}},mounted(){this.prompt||(this.prompt=ze)}}),Ke={class:"field"},He={class:"box"},Je={class:"title font-bold"};function Qe(e,s,c,d,v,b){const p=o("info-icon"),m=o("el-input");return a(),r("div",Ke,[l("div",He,[l("h2",Je,i(e.$t("pika.name.prompt")),1),t(p,{content:e.$t("pika.description.prompt"),class:"info"},null,8,["content"])]),t(m,{modelValue:e.prompt,"onUpdate:modelValue":s[0]||(s[0]=n=>e.prompt=n),rows:3,type:"textarea",class:"prompt",placeholder:e.$t("pika.placeholder.prompt")},null,8,["modelValue","placeholder"])])}const We=k(Fe,[["render",Qe],["__scopeId","data-v-d7f7cedd"]]),Xe=$({name:"PresetPanel",components:{ImageUrlInput:Ne,ElButton:L,FontAwesomeIcon:P,Consumption:oe,PromptInput:We,IngredientsSelector:ve,IngredientsModelSelector:Le,ModelSelector:Ge,EffectSelector:Se},emits:["generate"],computed:{config(){return this.$store.state.pika?.config},consumption(){return ne(this.config,this.service?.cost)},service(){return this.$store.state.pika?.service}},methods:{onGenerate(){this.$emit("generate")}}}),Ye={class:"flex flex-col h-full"},Ze={class:"flex-1 overflow-y-auto p-5"},xe={class:"flex flex-col items-center justify-center px-5 pb-5"};function et(e,s,c,d,v,b){const p=o("prompt-input"),m=o("model-selector"),n=o("ingredients-selector"),y=o("effect-selector"),_=o("image-url-input"),f=o("ingredients-model-selector"),S=o("consumption"),w=o("font-awesome-icon"),A=o("el-button");return a(),r("div",Ye,[l("div",Ze,[t(p,{class:"mb-4"}),t(m,{class:"mb-4"}),t(n,{class:"mb-4"}),t(y,{class:"mb-4"}),e.config?.ingredients?(a(),I(_,{key:0,class:"mb-4"})):g("",!0),e.config?.ingredients?(a(),I(f,{key:1,class:"mb-4"})):g("",!0)]),l("div",xe,[t(S,{value:e.consumption,service:e.service},null,8,["value","service"]),t(A,{type:"primary",class:"btn w-full",round:"",onClick:e.onGenerate},{default:u(()=>[t(w,{icon:"fa-solid fa-magic",class:"mr-2"}),h(" "+i(e.$t("pika.button.generate")),1)]),_:1},8,["onClick"])])])}const tt=k(Xe,[["render",et]]),st=$({name:"VideoPlayer",components:{VuePlyr:le},props:{modelValue:{type:Object,required:!0}},data(){return{options:{quality:{default:"1080p"}}}}}),ot=["data-poster"],at=["src"];function nt(e,s,c,d,v,b){const p=o("vue-plyr");return a(),r("div",null,[t(p,{options:e.options,class:"video"},{default:u(()=>[l("video",{controls:"",crossorigin:"",playsinline:"","data-poster":e.modelValue?.image_url},[l("source",{size:"1080",src:e.modelValue?.video_url,type:"video/mp4"},null,8,at)],8,ot)]),_:1},8,["options"])])}const it=k(st,[["render",nt],["__scopeId","data-v-fc420430"]]),lt=$({name:"TaskPreview",components:{ElImage:H,CopyToClipboard:ie,FontAwesomeIcon:P,ElAlert:K,VideoPlayer:it,ElTooltip:F,ElButton:L},props:{modelValue:{type:Object,required:!0}},data(){return{}},computed:{application(){return this.$store.state.pika?.application},config(){return this.$store.state.pika?.config},videos(){let e=[];const s=this.modelValue?.request?.action;return Array.isArray(this.modelValue?.response?.data)&&this.modelValue?.response?.data?.forEach(c=>{let d=c;s&&(d.action=s),e.push(d)}),e}},methods:{onDownload(e){console.log("on download"),window.open(e,"_blank")},onReload(e){const s=e.target,c=new URL(s.src),d=c.searchParams.get("retry");if(!d)c.searchParams.set("retry","1");else if(parseInt(d)<2)c.searchParams.set("retry",(parseInt(d)+1).toString());else return;s.src=c.toString()},onOpenVideo(e){window.open(e,"_blank")}}}),rt={class:"left"},ct={class:"main"},pt={class:"bot"},dt={class:"datetime"},ut={class:"info"},mt={key:0,class:"prompt mt-2"},ft={key:0},_t={key:1},ht={key:0,class:R({content:!0,failed:!0})},gt={class:"image-wrapper"},$t={key:0,class:R({operations:!0,"mt-2":!0})},kt={key:0,class:"description"},vt={class:"description"},bt={key:1,class:R({content:!0})},yt={class:"description"},wt={class:"description"},Vt={class:"description"},It={key:2,class:R({content:!0})},St={class:"description"};function Et(e,s,c,d,v,b){const p=o("el-image"),m=o("VideoPlayer"),n=o("el-button"),y=o("el-tooltip"),_=o("font-awesome-icon"),f=o("copy-to-clipboard"),S=o("el-alert");return a(!0),r(E,null,T(e.videos,(w,A)=>(a(),r("div",{key:A,class:"preview"},[l("div",rt,[t(p,{src:"https://cdn.acedata.cloud/i80tgn.png",class:"avatar"})]),l("div",ct,[l("div",pt,[h(i(e.$t("pika.name.pikaBot"))+" ",1),l("span",dt,i(e.$dayjs.format(""+new Date(parseFloat((e.modelValue?.created_at||"").toString())*1e3))),1)]),l("div",ut,[e.modelValue?.request?.prompt?(a(),r("p",mt,[h(i(e.modelValue?.request?.prompt)+" ",1),e.modelValue?.response?g("",!0):(a(),r("span",ft," - ("+i(e.$t("pika.status.pending"))+") ",1)),w?.state==="processing"||w?.state==="pending"?(a(),r("span",_t," - ("+i(e.$t("pika.status.processing"))+") ",1)):g("",!0)])):g("",!0)]),e.modelValue?.response?.success===!0?(a(),r("div",ht,[l("div",gt,[t(m,{"model-value":w},null,8,["model-value"])]),w?(a(),r("div",$t,[t(y,{class:"box-item",effect:"dark",content:e.$t("pika.message.downloadVideo"),placement:"top-start"},{default:u(()=>[w?.video_url?(a(),I(n,{key:0,type:"info",size:"small",class:"btn-action",onClick:Mt=>e.onDownload(w?.video_url)},{default:u(()=>[h(i(e.$t("pika.button.download")),1)]),_:2},1032,["onClick"])):g("",!0)]),_:2},1032,["content"])])):g("",!0),t(S,{closable:!1,class:"mt-2 success"},{default:u(()=>[e.modelValue?.request?.model?(a(),r("p",kt,[t(_,{icon:"fa-solid fa-hashtag",class:"mr-1"}),h(" "+i(e.$t("pika.name.model"))+": "+i(e.modelValue?.request?.model),1)])):g("",!0),l("p",vt,[t(_,{icon:"fa-solid fa-magic",class:"mr-1"}),h(" "+i(e.$t("pika.name.taskId"))+": "+i(e.modelValue?.id)+" ",1),t(f,{content:e.modelValue?.id,class:"btn-copy"},null,8,["content"])])]),_:1})])):g("",!0),e.modelValue?.response?.success===!1?(a(),r("div",bt,[t(S,{closable:!1,class:"failure"},{template:u(()=>[t(_,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),h(" "+i(e.$t("pika.name.failure")),1)]),default:u(()=>[l("p",yt,[t(_,{icon:"fa-solid fa-magic",class:"mr-1"}),h(" "+i(e.$t("pika.name.taskId"))+": "+i(e.modelValue?.id)+" ",1),t(f,{content:e.modelValue?.id,class:"btn-copy"},null,8,["content"])]),l("p",wt,[t(_,{icon:"fa-solid fa-circle-info",class:"mr-1"}),h(" "+i(e.$t("pika.name.failureReason"))+": "+i(e.modelValue?.response?.error?.message)+" ",1),t(f,{content:e.modelValue?.response?.error?.message,class:"btn-copy"},null,8,["content"])]),l("p",Vt,[t(_,{icon:"fa-solid fa-hashtag",class:"mr-1"}),h(" "+i(e.$t("pika.name.traceId"))+": "+i(e.modelValue?.response?.trace_id)+" ",1),t(f,{content:e.modelValue?.response?.trace_id,class:"btn-copy"},null,8,["content"])])]),_:1})])):g("",!0),!e.modelValue?.response||w?.state==="processing"||w?.state==="pending"?(a(),r("div",It,[t(S,{closable:!1,class:"info"},{template:u(()=>[t(_,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),h(" "+i(e.$t("pika.name.failure")),1)]),default:u(()=>[l("p",St,[t(_,{icon:"fa-solid fa-magic",class:"mr-1"}),h(" "+i(e.$t("pika.name.taskId"))+": "+i(e.modelValue?.id)+" ",1),t(f,{content:e.modelValue?.id,class:"btn-copy"},null,8,["content"])])]),_:1})])):g("",!0)])]))),128)}const Tt=k(lt,[["render",Et],["__scopeId","data-v-41cbe62b"]]),Ct=$({name:"RecentPanel",components:{TaskPreview:Tt,BotPlaceholder:re,NoTasks:ae,ScrollList:te},props:{loading:{type:Boolean,default:!1}},emits:["reach-top"],data(){return{job:0}},computed:{tasks(){return{...this.$store.state.pika?.tasks,items:this.$store.state.pika?.tasks?.items?.slice()}}},methods:{getScrollElement(){return this.$refs.scrollList?.getScrollElement?.()}}}),Pt={key:0},Lt={key:2,class:"w-full h-full flex items-center justify-center"};function Rt(e,s,c,d,v,b){const p=o("bot-placeholder"),m=o("task-preview"),n=o("scroll-list"),y=o("no-tasks");return a(),r(E,null,[e.tasks?.items===void 0?(a(),r("div",Pt,[t(p)])):e.tasks?.items?.length&&e.tasks?.items?.length>0?(a(),I(n,{key:1,ref:"scrollList",class:"tasks h-full w-full overflow-y-auto",loading:e.loading,onReachTop:s[0]||(s[0]=_=>e.$emit("reach-top"))},{default:u(()=>[(a(!0),r(E,null,T(e.tasks?.items,(_,f)=>(a(),I(m,{key:f,"model-value":_},null,8,["model-value"]))),128))]),_:1},8,["loading"])):g("",!0),e.tasks?.items?.length===0?(a(),r("div",Lt,[t(y)])):g("",!0)],64)}const At=k(Ct,[["render",Rt]]),Ut="https://webhook.acedata.cloud/pika",Dt=$({name:"PikaIndex",components:{ConfigPanel:tt,Layout:_e,RecentPanel:At},inject:["initialized"],data(){return{task:void 0,job:0,loadingMore:!1,fetchingTasks:!1}},computed:{applicationsLoading(){return this.$store.state.pika?.status?.getApplications===C.Request},tasksLoading(){return this.$store.state.pika?.status?.getTasks===C.Request||this.fetchingTasks},service(){return this.$store.state.pika.service},credential(){return this.$store.state.pika.credential},config(){return this.$store.state.pika.config},initializing(){return this.$store.state.pika.status.getApplications===C.Request},needApply(){return this.$store.state.pika.status.getApplications===C.Success&&!this.application},application(){return this.$store.state.pika.application},applications(){return this.$store.state.pika.applications},tasks(){return this.$store.state.pika.tasks}},watch:{tasks:{handler(e,s){e?.items?.length>s?.items?.length&&console.debug("new tasks detected")},deep:!0},initialized:{async handler(e){e&&(console.debug("layout initialized"),await this.onGetTasks(),await this.onScrollDown(),this.job=window.setInterval(()=>{this.onGetTasks()},5e3))},immediate:!0}},async mounted(){await this.onGetService()},async unmounted(){window.clearInterval(this.job)},methods:{async onReachTop(){await ce({tasks:this.tasks,getTasks:()=>this.tasks,loading:this.loadingMore,setLoading:e=>this.loadingMore=e,isBlocked:()=>this.tasksLoading||this.applicationsLoading,fetch:e=>this.onGetTasks({createdAtMax:e}),getScrollElement:()=>this.getTasksScrollElement()})},async onGetService(){console.debug("start onGetService"),await this.$store.dispatch("pika/getService"),console.debug("end onGetService")},async onGetApplication(){console.debug("start onGetApplication"),await this.$store.dispatch("pika/getApplications"),console.debug("end onGetApplication"),await this.onGetTasks()},onApply(){x.create({application:this.application}).then(({data:e})=>{this.application=e,V.success(this.$t("application.message.applySuccessfully"))}).catch(e=>{e?.response?.data?.code===ee&&V.error(this.$t("application.message.alreadyApplied"))})},async onScrollDown(){await this.$nextTick();const e=this.getTasksScrollElement();e&&(e.scrollTop=e.scrollHeight)},async onGetTasks(e){if(this.applicationsLoading||this.fetchingTasks){console.debug("loading");return}console.debug("start onGetTasks",e);const{limit:s=5,createdAtMin:c,createdAtMax:d}=e||{};console.debug("limit",s,"createdAtMin",c,"createdAtMax",d),this.fetchingTasks=!0;try{await this.$store.dispatch("pika/getTasks",{limit:s,createdAtMin:c,createdAtMax:d})}finally{this.fetchingTasks=!1}},async onGenerate(){const e={...this.config,callback_url:Ut},s=this.credential?.token;if(!s){console.error("no token specified");return}V.info(this.$t("pika.message.startingTask")),Y.generate(e,{token:s}).then(()=>{V.success(this.$t("pika.message.startTaskSuccess")),this.$store.commit("pika/setConfig",{config:void 0})}).catch(c=>{c?.response?.data?.error?.code===Z?V.error(this.$t("pika.message.usedUp")):V.error(this.$t("pika.message.startTaskFailed"))}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})},getTasksScrollElement(){return this.$refs.recentPanel?.getScrollElement?.()}}});function Gt(e,s,c,d,v,b){const p=o("config-panel"),m=o("recent-panel"),n=o("layout");return a(),I(n,null,{config:u(()=>[t(p,{onGenerate:e.onGenerate},null,8,["onGenerate"])]),result:u(()=>[t(m,{ref:"recentPanel",class:"panel recent",loading:e.loadingMore,onReachTop:e.onReachTop},null,8,["loading","onReachTop"])]),_:1})}const es=k(Dt,[["render",Gt],["__scopeId","data-v-456819d1"]]);export{es as default};
|
|
1
|
+
import{F as P}from"./index.es-vNwt4sbI.js";import{l as L,S as O,k as B,N as G,O as M,F as j,D as q,t as N,u as V,s as z,p as F,G as K,j as H}from"./vendor-element-plus-B4FTqxj4.js";import{d as $,C as r,G as l,T as t,E as U,K as u,ai as o,D as a,R as i,S as E,ag as T,J as I,Q as h,O as g,M as R}from"./vendor-vue-1w_NBnjl.js";import{_ as k,bt as J,bu as Q,bv as W,aj as X,bw as Y,aB as Z,ar as x,ax as ee,ay as C}from"./index-CqL6zWO4.js";import{I as D,S as te}from"./ScrollList-BGZ0Fkh5.js";import{I as se}from"./ImagePreview-YbDjRoDP.js";import{C as oe,N as ae}from"./NoTasks-Dpxe4xfM.js";import{a as ne}from"./price-C8BXaFbS.js";import{C as ie}from"./CopyToClipboard-jWxr3xe-.js";import{s as le}from"./vue-plyr-QZFBikSk.js";import{B as re}from"./BotPlaceholder-4xqKcsb2.js";import{l as ce}from"./pagination-CihAE3FS.js";import"./vendor-dayjs-CzbnksQQ.js";import"./vendor-web3-BT8AOwfJ.js";import"./vendor-axios-NIGUFBhG.js";import"./vendor-vue-router-Dj5bcX0v.js";const pe=$({name:"LayoutPika",components:{ElDrawer:O,ElButton:L,FontAwesomeIcon:P},data(){return{drawer:!1}}}),de={class:"main flex flex-row flex-1"},ue={class:"config w-[320px] flex-none h-full overflow-y-auto bg-[var(--app-sidebar-bg)] border-r border-[var(--app-border-subtle)]"},me={class:"result h-full p-6 flex-1 flex flex-col min-w-0 overflow-x-hidden bg-[var(--app-content-bg)]"};function fe(e,s,c,d,v,b){const p=o("font-awesome-icon"),m=o("el-button"),n=o("el-drawer");return a(),r("div",de,[l("div",ue,[U(e.$slots,"config",{},void 0,!0)]),l("div",me,[U(e.$slots,"result",{},void 0,!0)]),t(m,{circle:"",class:"menu",onClick:s[0]||(s[0]=y=>e.drawer=!0)},{default:u(()=>[t(p,{icon:"fa-solid fa-magic"})]),_:1}),t(n,{modelValue:e.drawer,"onUpdate:modelValue":s[1]||(s[1]=y=>e.drawer=y),direction:"ltr","with-header":!1,size:"350px"},{default:u(()=>[U(e.$slots,"config",{},void 0,!0)]),_:3},8,["modelValue"])])}const _e=k(pe,[["render",fe],["__scopeId","data-v-11f71ab6"]]),he=$({name:"IngredientsSelector",components:{ElSwitch:B,InfoIcon:D},computed:{value:{get(){return this.$store.state.pika?.config?.ingredients},set(e){console.debug("set ingredients",e),e||this.$store.commit("pika/setConfig",{...this.$store.state.pika?.config,ingredients:e,ingredients_mode:void 0,image_url:void 0}),this.$store.commit("pika/setConfig",{...this.$store.state.pika?.config,ingredients:e,model:"2.0"})}}},mounted(){this.value===void 0&&(this.value=J)}}),ge={class:"field"},$e={class:"title font-bold"};function ke(e,s,c,d,v,b){const p=o("el-switch"),m=o("info-icon");return a(),r("div",ge,[l("h2",$e,i(e.$t("pika.name.ingredients")),1),t(p,{modelValue:e.value,"onUpdate:modelValue":s[0]||(s[0]=n=>e.value=n),class:"value"},null,8,["modelValue"]),t(m,{content:e.$t("pika.description.ingredients"),class:"info"},null,8,["content"])])}const ve=k(he,[["render",ke],["__scopeId","data-v-17c0af5c"]]),be=$({name:"EffectSelector",components:{ElSelect:M,ElOption:G},data(){return{}},computed:{options(){return[{value:"Levitate",label:this.$t("pika.style.effect1")},{value:"Decapitate",label:this.$t("pika.style.effect2")},{value:"Eye-pop",label:this.$t("pika.style.effect3")},{value:"Ta-da",label:this.$t("pika.style.effect4")},{value:"Deflate",label:this.$t("pika.style.effect5")},{value:"Crumble",label:this.$t("pika.style.effect6")},{value:"Dissolve",label:this.$t("pika.style.effect7")},{value:"Squish",label:this.$t("pika.style.effect8")},{value:"Inflate",label:this.$t("pika.style.effect9")},{value:"Melt",label:this.$t("pika.style.effect10")},{value:"Cake-ify",label:this.$t("pika.style.effect11")},{value:"Crush",label:this.$t("pika.style.effect12")},{value:"Explode",label:this.$t("pika.style.effect13")}]},value:{get(){return this.$store.state.pika?.config?.effect},set(e){this.$store.commit("pika/setConfig",{...this.$store.state.pika?.config,effect:e})}}}}),ye={class:"field"},we={class:"title font-bold"},Ve={class:"float-left"};function Ie(e,s,c,d,v,b){const p=o("el-option"),m=o("el-select");return a(),r("div",ye,[l("h2",we,i(e.$t("pika.name.effect")),1),t(m,{modelValue:e.value,"onUpdate:modelValue":s[0]||(s[0]=n=>e.value=n),class:"value",placeholder:e.$t("pika.placeholder.select"),clearable:""},{default:u(()=>[(a(!0),r(E,null,T(e.options,n=>(a(),I(p,{key:n.value,label:n.label,value:n.value},{default:u(()=>[l("span",Ve,i(n.label),1)]),_:2},1032,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const Se=k(be,[["render",Ie],["__scopeId","data-v-d1c54475"]]),Ee=$({name:"IngredientsModelSelector",components:{ElRadioButton:q,ElRadioGroup:j},data(){return{options:[{label:this.$t("pika.button.precise"),value:"precise"},{label:this.$t("pika.button.creative"),value:"creative"}]}},computed:{value:{get(){return this.$store.state.pika?.config?.ingredients_mode},set(e){this.$store.commit("pika/setConfig",{...this.$store.state.pika?.config,ingredients_mode:e})}}},mounted(){this.value||(this.value=Q)}}),Te={class:"field"},Ce={class:"title font-bold"};function Pe(e,s,c,d,v,b){const p=o("el-radio-button"),m=o("el-radio-group");return a(),r("div",Te,[l("h2",Ce,i(e.$t("pika.name.ingredientsModel")),1),t(m,{modelValue:e.value,"onUpdate:modelValue":s[0]||(s[0]=n=>e.value=n),size:"small",class:"quality"},{default:u(()=>[(a(!0),r(E,null,T(e.options,n=>(a(),I(p,{key:n.value,label:n.value},{default:u(()=>[h(i(n.label),1)]),_:2},1032,["label"]))),128))]),_:1},8,["modelValue"])])}const Le=k(Ee,[["render",Pe],["__scopeId","data-v-b948551f"]]),Re=$({name:"ModelSelector",components:{ElSelect:M,ElOption:G},props:{modelValue:{type:String,default:void 0}},emits:["update:modelValue"],data(){return{options:[{value:"2.0",label:"2.0"},{value:"1.5",label:"1.5"}]}},computed:{value:{get(){return this.$store.state.pika?.config?.model},set(e){this.$store.commit("pika/setConfig",{...this.$store.state.pika.config,model:e})}}},mounted(){this.value||(this.value=W)}}),Ae={class:"field"},Ue={class:"title font-bold"};function De(e,s,c,d,v,b){const p=o("el-option"),m=o("el-select");return a(),r("div",Ae,[l("h2",Ue,i(e.$t("pika.name.model")),1),t(m,{modelValue:e.value,"onUpdate:modelValue":s[0]||(s[0]=n=>e.value=n),class:"value",placeholder:e.$t("pika.placeholder.select")},{default:u(()=>[(a(!0),r(E,null,T(e.options,n=>(a(),I(p,{key:n.value,label:n.label,value:n.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const Ge=k(Re,[["render",De],["__scopeId","data-v-7b2e870a"]]),Me=$({name:"ImageUrlInput",components:{ElUpload:N,ElButton:L,InfoIcon:D,ImagePreview:se,FontAwesomeIcon:P},data(){return{fileList:[],uploadUrl:X()+"/api/v1/files/"}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},urls(){return this.fileList.map(e=>e?.response?.file_url)},value:{get(){return this.$store.state.pika?.config?.image_url},set(){const e=this.urls?.[0];this.$store.commit("pika/setConfig",{...this.$store.state.pika?.config,image_url:e})}}},mounted(){this.value||(this.value=void 0),this.onSetStartImageUrl()},methods:{onExceed(){V.warning(this.$t("pika.message.uploadStartImageExceed"))},onError(){V.error(this.$t("pika.message.uploadStartImageError"))},async onRemove(){V.error(this.$t("pika.message.uploadStartImageError"))},onSetStartImageUrl(){this.$store.commit("pika/setConfig",{...this.$store.state.pika?.config,image_url:this.urls})},async onSuccess(){this.onSetStartImageUrl()}}}),Oe={class:"field"},Be={class:"title font-bold"},je={class:"upload-wrapper"};function qe(e,s,c,d,v,b){const p=o("image-preview"),m=o("font-awesome-icon"),n=o("el-button"),y=o("el-upload"),_=o("info-icon");return a(),r("div",Oe,[l("h2",Be,i(e.$t("pika.name.imageUrl")),1),l("div",je,[t(y,{"file-list":e.fileList,"onUpdate:fileList":s[0]||(s[0]=f=>e.fileList=f),accept:".png,.jpg,.jpeg,.gif,.bmp,.webp",name:"file",class:"value upload-wrapper",limit:3,multiple:!0,"list-type":"picture",action:e.uploadUrl,"on-exceed":e.onExceed,"on-error":e.onError,"on-remove":e.onRemove,"on-success":e.onSuccess,headers:e.headers},{file:u(({file:f})=>[t(p,{url:f.url||f.response?.file_url,name:f.name,percentage:f.percentage,onRemove:S=>e.fileList.splice(e.fileList.indexOf(f),1)},null,8,["url","name","percentage","onRemove"])]),default:u(()=>[t(n,{size:"small",type:"primary",round:""},{default:u(()=>[t(m,{icon:"fa-solid fa-upload",class:"mr-1"}),h(" "+i(e.$t("pika.button.uploadImageUrl")),1)]),_:1})]),_:1},8,["file-list","action","on-exceed","on-error","on-remove","on-success","headers"])]),t(_,{content:e.$t("pika.description.imageUrl"),class:"info"},null,8,["content"])])}const Ne=k(Me,[["render",qe],["__scopeId","data-v-18cda67a"]]),ze="",Fe=$({name:"PromptInput",components:{ElInput:z,InfoIcon:D},computed:{prompt:{get(){return this.$store.state.pika?.config?.prompt},set(e){console.debug("set prompt",e),this.$store.commit("pika/setConfig",{...this.$store.state.pika?.config,prompt:e})}}},mounted(){this.prompt||(this.prompt=ze)}}),Ke={class:"field"},He={class:"box"},Je={class:"title font-bold"};function Qe(e,s,c,d,v,b){const p=o("info-icon"),m=o("el-input");return a(),r("div",Ke,[l("div",He,[l("h2",Je,i(e.$t("pika.name.prompt")),1),t(p,{content:e.$t("pika.description.prompt"),class:"info"},null,8,["content"])]),t(m,{modelValue:e.prompt,"onUpdate:modelValue":s[0]||(s[0]=n=>e.prompt=n),rows:3,type:"textarea",class:"prompt",placeholder:e.$t("pika.placeholder.prompt")},null,8,["modelValue","placeholder"])])}const We=k(Fe,[["render",Qe],["__scopeId","data-v-d7f7cedd"]]),Xe=$({name:"PresetPanel",components:{ImageUrlInput:Ne,ElButton:L,FontAwesomeIcon:P,Consumption:oe,PromptInput:We,IngredientsSelector:ve,IngredientsModelSelector:Le,ModelSelector:Ge,EffectSelector:Se},emits:["generate"],computed:{config(){return this.$store.state.pika?.config},consumption(){return ne(this.config,this.service?.cost)},service(){return this.$store.state.pika?.service}},methods:{onGenerate(){this.$emit("generate")}}}),Ye={class:"flex flex-col h-full"},Ze={class:"flex-1 overflow-y-auto p-5"},xe={class:"flex flex-col items-center justify-center px-5 pb-5"};function et(e,s,c,d,v,b){const p=o("prompt-input"),m=o("model-selector"),n=o("ingredients-selector"),y=o("effect-selector"),_=o("image-url-input"),f=o("ingredients-model-selector"),S=o("consumption"),w=o("font-awesome-icon"),A=o("el-button");return a(),r("div",Ye,[l("div",Ze,[t(p,{class:"mb-4"}),t(m,{class:"mb-4"}),t(n,{class:"mb-4"}),t(y,{class:"mb-4"}),e.config?.ingredients?(a(),I(_,{key:0,class:"mb-4"})):g("",!0),e.config?.ingredients?(a(),I(f,{key:1,class:"mb-4"})):g("",!0)]),l("div",xe,[t(S,{value:e.consumption,service:e.service},null,8,["value","service"]),t(A,{type:"primary",class:"btn w-full",round:"",onClick:e.onGenerate},{default:u(()=>[t(w,{icon:"fa-solid fa-magic",class:"mr-2"}),h(" "+i(e.$t("pika.button.generate")),1)]),_:1},8,["onClick"])])])}const tt=k(Xe,[["render",et]]),st=$({name:"VideoPlayer",components:{VuePlyr:le},props:{modelValue:{type:Object,required:!0}},data(){return{options:{quality:{default:"1080p"}}}}}),ot=["data-poster"],at=["src"];function nt(e,s,c,d,v,b){const p=o("vue-plyr");return a(),r("div",null,[t(p,{options:e.options,class:"video"},{default:u(()=>[l("video",{controls:"",crossorigin:"",playsinline:"","data-poster":e.modelValue?.image_url},[l("source",{size:"1080",src:e.modelValue?.video_url,type:"video/mp4"},null,8,at)],8,ot)]),_:1},8,["options"])])}const it=k(st,[["render",nt],["__scopeId","data-v-fc420430"]]),lt=$({name:"TaskPreview",components:{ElImage:H,CopyToClipboard:ie,FontAwesomeIcon:P,ElAlert:K,VideoPlayer:it,ElTooltip:F,ElButton:L},props:{modelValue:{type:Object,required:!0}},data(){return{}},computed:{application(){return this.$store.state.pika?.application},config(){return this.$store.state.pika?.config},videos(){let e=[];const s=this.modelValue?.request?.action;return Array.isArray(this.modelValue?.response?.data)&&this.modelValue?.response?.data?.forEach(c=>{let d=c;s&&(d.action=s),e.push(d)}),e}},methods:{onDownload(e){console.log("on download"),window.open(e,"_blank")},onReload(e){const s=e.target,c=new URL(s.src),d=c.searchParams.get("retry");if(!d)c.searchParams.set("retry","1");else if(parseInt(d)<2)c.searchParams.set("retry",(parseInt(d)+1).toString());else return;s.src=c.toString()},onOpenVideo(e){window.open(e,"_blank")}}}),rt={class:"left"},ct={class:"main"},pt={class:"bot"},dt={class:"datetime"},ut={class:"info"},mt={key:0,class:"prompt mt-2"},ft={key:0},_t={key:1},ht={key:0,class:R({content:!0,failed:!0})},gt={class:"image-wrapper"},$t={key:0,class:R({operations:!0,"mt-2":!0})},kt={key:0,class:"description"},vt={class:"description"},bt={key:1,class:R({content:!0})},yt={class:"description"},wt={class:"description"},Vt={class:"description"},It={key:2,class:R({content:!0})},St={class:"description"};function Et(e,s,c,d,v,b){const p=o("el-image"),m=o("VideoPlayer"),n=o("el-button"),y=o("el-tooltip"),_=o("font-awesome-icon"),f=o("copy-to-clipboard"),S=o("el-alert");return a(!0),r(E,null,T(e.videos,(w,A)=>(a(),r("div",{key:A,class:"preview"},[l("div",rt,[t(p,{src:"https://cdn.acedata.cloud/i80tgn.png",class:"avatar"})]),l("div",ct,[l("div",pt,[h(i(e.$t("pika.name.pikaBot"))+" ",1),l("span",dt,i(e.$dayjs.format(""+new Date(parseFloat((e.modelValue?.created_at||"").toString())*1e3))),1)]),l("div",ut,[e.modelValue?.request?.prompt?(a(),r("p",mt,[h(i(e.modelValue?.request?.prompt)+" ",1),e.modelValue?.response?g("",!0):(a(),r("span",ft," - ("+i(e.$t("pika.status.pending"))+") ",1)),w?.state==="processing"||w?.state==="pending"?(a(),r("span",_t," - ("+i(e.$t("pika.status.processing"))+") ",1)):g("",!0)])):g("",!0)]),e.modelValue?.response?.success===!0?(a(),r("div",ht,[l("div",gt,[t(m,{"model-value":w},null,8,["model-value"])]),w?(a(),r("div",$t,[t(y,{class:"box-item",effect:"dark",content:e.$t("pika.message.downloadVideo"),placement:"top-start"},{default:u(()=>[w?.video_url?(a(),I(n,{key:0,type:"info",size:"small",class:"btn-action",onClick:Mt=>e.onDownload(w?.video_url)},{default:u(()=>[h(i(e.$t("pika.button.download")),1)]),_:2},1032,["onClick"])):g("",!0)]),_:2},1032,["content"])])):g("",!0),t(S,{closable:!1,class:"mt-2 success"},{default:u(()=>[e.modelValue?.request?.model?(a(),r("p",kt,[t(_,{icon:"fa-solid fa-hashtag",class:"mr-1"}),h(" "+i(e.$t("pika.name.model"))+": "+i(e.modelValue?.request?.model),1)])):g("",!0),l("p",vt,[t(_,{icon:"fa-solid fa-magic",class:"mr-1"}),h(" "+i(e.$t("pika.name.taskId"))+": "+i(e.modelValue?.id)+" ",1),t(f,{content:e.modelValue?.id,class:"btn-copy"},null,8,["content"])])]),_:1})])):g("",!0),e.modelValue?.response?.success===!1?(a(),r("div",bt,[t(S,{closable:!1,class:"failure"},{template:u(()=>[t(_,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),h(" "+i(e.$t("pika.name.failure")),1)]),default:u(()=>[l("p",yt,[t(_,{icon:"fa-solid fa-magic",class:"mr-1"}),h(" "+i(e.$t("pika.name.taskId"))+": "+i(e.modelValue?.id)+" ",1),t(f,{content:e.modelValue?.id,class:"btn-copy"},null,8,["content"])]),l("p",wt,[t(_,{icon:"fa-solid fa-circle-info",class:"mr-1"}),h(" "+i(e.$t("pika.name.failureReason"))+": "+i(e.modelValue?.response?.error?.message)+" ",1),t(f,{content:e.modelValue?.response?.error?.message,class:"btn-copy"},null,8,["content"])]),l("p",Vt,[t(_,{icon:"fa-solid fa-hashtag",class:"mr-1"}),h(" "+i(e.$t("pika.name.traceId"))+": "+i(e.modelValue?.response?.trace_id)+" ",1),t(f,{content:e.modelValue?.response?.trace_id,class:"btn-copy"},null,8,["content"])])]),_:1})])):g("",!0),!e.modelValue?.response||w?.state==="processing"||w?.state==="pending"?(a(),r("div",It,[t(S,{closable:!1,class:"info"},{template:u(()=>[t(_,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),h(" "+i(e.$t("pika.name.failure")),1)]),default:u(()=>[l("p",St,[t(_,{icon:"fa-solid fa-magic",class:"mr-1"}),h(" "+i(e.$t("pika.name.taskId"))+": "+i(e.modelValue?.id)+" ",1),t(f,{content:e.modelValue?.id,class:"btn-copy"},null,8,["content"])])]),_:1})])):g("",!0)])]))),128)}const Tt=k(lt,[["render",Et],["__scopeId","data-v-41cbe62b"]]),Ct=$({name:"RecentPanel",components:{TaskPreview:Tt,BotPlaceholder:re,NoTasks:ae,ScrollList:te},props:{loading:{type:Boolean,default:!1}},emits:["reach-top"],data(){return{job:0}},computed:{tasks(){return{...this.$store.state.pika?.tasks,items:this.$store.state.pika?.tasks?.items?.slice()}}},methods:{getScrollElement(){return this.$refs.scrollList?.getScrollElement?.()}}}),Pt={key:0},Lt={key:2,class:"w-full h-full flex items-center justify-center"};function Rt(e,s,c,d,v,b){const p=o("bot-placeholder"),m=o("task-preview"),n=o("scroll-list"),y=o("no-tasks");return a(),r(E,null,[e.tasks?.items===void 0?(a(),r("div",Pt,[t(p)])):e.tasks?.items?.length&&e.tasks?.items?.length>0?(a(),I(n,{key:1,ref:"scrollList",class:"tasks h-full w-full overflow-y-auto",loading:e.loading,onReachTop:s[0]||(s[0]=_=>e.$emit("reach-top"))},{default:u(()=>[(a(!0),r(E,null,T(e.tasks?.items,(_,f)=>(a(),I(m,{key:f,"model-value":_},null,8,["model-value"]))),128))]),_:1},8,["loading"])):g("",!0),e.tasks?.items?.length===0?(a(),r("div",Lt,[t(y)])):g("",!0)],64)}const At=k(Ct,[["render",Rt]]),Ut="https://webhook.acedata.cloud/pika",Dt=$({name:"PikaIndex",components:{ConfigPanel:tt,Layout:_e,RecentPanel:At},inject:["initialized"],data(){return{task:void 0,job:0,loadingMore:!1,fetchingTasks:!1}},computed:{applicationsLoading(){return this.$store.state.pika?.status?.getApplications===C.Request},tasksLoading(){return this.$store.state.pika?.status?.getTasks===C.Request||this.fetchingTasks},service(){return this.$store.state.pika.service},credential(){return this.$store.state.pika.credential},config(){return this.$store.state.pika.config},initializing(){return this.$store.state.pika.status.getApplications===C.Request},needApply(){return this.$store.state.pika.status.getApplications===C.Success&&!this.application},application(){return this.$store.state.pika.application},applications(){return this.$store.state.pika.applications},tasks(){return this.$store.state.pika.tasks}},watch:{tasks:{handler(e,s){e?.items?.length>s?.items?.length&&console.debug("new tasks detected")},deep:!0},initialized:{async handler(e){e&&(console.debug("layout initialized"),await this.onGetTasks(),await this.onScrollDown(),this.job=window.setInterval(()=>{this.onGetTasks()},5e3))},immediate:!0}},async mounted(){await this.onGetService()},async unmounted(){window.clearInterval(this.job)},methods:{async onReachTop(){await ce({tasks:this.tasks,getTasks:()=>this.tasks,loading:this.loadingMore,setLoading:e=>this.loadingMore=e,isBlocked:()=>this.tasksLoading||this.applicationsLoading,fetch:e=>this.onGetTasks({createdAtMax:e}),getScrollElement:()=>this.getTasksScrollElement()})},async onGetService(){console.debug("start onGetService"),await this.$store.dispatch("pika/getService"),console.debug("end onGetService")},async onGetApplication(){console.debug("start onGetApplication"),await this.$store.dispatch("pika/getApplications"),console.debug("end onGetApplication"),await this.onGetTasks()},onApply(){x.create({application:this.application}).then(({data:e})=>{this.application=e,V.success(this.$t("application.message.applySuccessfully"))}).catch(e=>{e?.response?.data?.code===ee&&V.error(this.$t("application.message.alreadyApplied"))})},async onScrollDown(){await this.$nextTick();const e=this.getTasksScrollElement();e&&(e.scrollTop=e.scrollHeight)},async onGetTasks(e){if(this.applicationsLoading||this.fetchingTasks){console.debug("loading");return}console.debug("start onGetTasks",e);const{limit:s=5,createdAtMin:c,createdAtMax:d}=e||{};console.debug("limit",s,"createdAtMin",c,"createdAtMax",d),this.fetchingTasks=!0;try{await this.$store.dispatch("pika/getTasks",{limit:s,createdAtMin:c,createdAtMax:d})}finally{this.fetchingTasks=!1}},async onGenerate(){const e={...this.config,callback_url:Ut},s=this.credential?.token;if(!s){console.error("no token specified");return}V.info(this.$t("pika.message.startingTask")),Y.generate(e,{token:s}).then(()=>{V.success(this.$t("pika.message.startTaskSuccess")),this.$store.commit("pika/setConfig",{config:void 0})}).catch(c=>{c?.response?.data?.error?.code===Z?V.error(this.$t("pika.message.usedUp")):V.error(this.$t("pika.message.startTaskFailed"))}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})},getTasksScrollElement(){return this.$refs.recentPanel?.getScrollElement?.()}}});function Gt(e,s,c,d,v,b){const p=o("config-panel"),m=o("recent-panel"),n=o("layout");return a(),I(n,null,{config:u(()=>[t(p,{onGenerate:e.onGenerate},null,8,["onGenerate"])]),result:u(()=>[t(m,{ref:"recentPanel",class:"panel recent",loading:e.loadingMore,onReachTop:e.onReachTop},null,8,["loading","onReachTop"])]),_:1})}const es=k(Dt,[["render",Gt],["__scopeId","data-v-456819d1"]]);export{es as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{F as S}from"./index.es-ByZsSMmo.js";import{l as L,S as R,N as G,O as P,U as D,V as B,t as F,u as y,s as M,G as O,j as N}from"./vendor-element-plus-B4FTqxj4.js";import{d as $,C as i,G as l,T as t,E,K as f,ai as s,D as a,R as r,S as V,ag as I,J as w,Q as h,O as x,M as U}from"./vendor-vue-1w_NBnjl.js";import{_ as v,bZ as q,b_ as z,b$ as X,aj as K,c0 as H,aB as J,ay as A}from"./index-Eolh8-ZS.js";import{I as C,S as Q}from"./ScrollList-DRWz9jW6.js";import{I as W}from"./ImagePreview-D-H4d4jU.js";import{C as Z,N as Y}from"./NoTasks-Cm0AqqsF.js";import{a as ee}from"./price-B3IiQ6GV.js";import{C as te}from"./CopyToClipboard-BLbqw9nl.js";import{I as oe}from"./ImageWrapper-BRaL0q-A.js";import{B as se}from"./BotPlaceholder-BJhJ0msN.js";import{l as ne}from"./pagination-CihAE3FS.js";import"./vendor-dayjs-CzbnksQQ.js";import"./vendor-web3-DH4JU5BG.js";import"./vendor-axios-NIGUFBhG.js";import"./vendor-vue-router-Dj5bcX0v.js";const le=$({name:"LayoutFlux",components:{ElDrawer:R,ElButton:L,FontAwesomeIcon:S},data(){return{drawer:!1}}}),ae={class:"main flex flex-row flex-1"},re={class:"config w-[320px] flex-none h-full overflow-y-auto bg-[var(--app-sidebar-bg)] border-r border-[var(--app-border-subtle)]"},ie={class:"result h-full p-6 flex-1 flex flex-col min-w-0 overflow-x-hidden bg-[var(--app-content-bg)]"};function ce(e,o,m,d,b,k){const c=s("font-awesome-icon"),u=s("el-button"),n=s("el-drawer");return a(),i("div",ae,[l("div",re,[E(e.$slots,"config",{},void 0,!0)]),l("div",ie,[E(e.$slots,"result",{},void 0,!0)]),t(u,{circle:"",class:"menu",onClick:o[0]||(o[0]=p=>e.drawer=!0)},{default:f(()=>[t(c,{icon:"fa-solid fa-magic"})]),_:1}),t(n,{modelValue:e.drawer,"onUpdate:modelValue":o[1]||(o[1]=p=>e.drawer=p),direction:"ltr","with-header":!1,size:"340px",class:"drawer"},{default:f(()=>[E(e.$slots,"config",{},void 0,!0)]),_:3},8,["modelValue"])])}const ue=v(le,[["render",ce],["__scopeId","data-v-3c0d2b44"]]),de=$({name:"ModelSelector",components:{ElSelect:P,ElOption:G},props:{modelValue:{type:String,default:void 0}},emits:["update:modelValue"],data(){return{options:[{value:"flux-dev",label:"flux-dev"},{value:"flux-pro",label:"flux-pro"},{value:"flux-pro-1.1",label:"flux-pro-1.1"},{value:"flux-pro-1.1-ultra",label:"flux-pro-1.1-ultra"},{value:"flux-kontext-pro",label:"flux-kontext-pro"},{value:"flux-kontext-max",label:"flux-kontext-max"}]}},computed:{value:{get(){return this.$store.state.flux?.config?.model},set(e){this.$store.commit("flux/setConfig",{...this.$store.state.flux.config,model:e})}}},mounted(){this.value||(this.value=q)}}),pe={class:"field"},me={class:"title font-bold"};function fe(e,o,m,d,b,k){const c=s("el-option"),u=s("el-select");return a(),i("div",pe,[l("h2",me,r(e.$t("flux.name.model")),1),t(u,{modelValue:e.value,"onUpdate:modelValue":o[0]||(o[0]=n=>e.value=n),class:"value",placeholder:e.$t("flux.placeholder.select")},{default:f(()=>[(a(!0),i(V,null,I(e.options,n=>(a(),w(c,{key:n.value,label:n.label,value:n.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const _e=v(de,[["render",fe],["__scopeId","data-v-8df4b8a7"]]),he=$({name:"CountSelector",components:{ElSlider:B,InfoIcon:C,ElInputNumber:D},computed:{value:{get(){return this.$store.state.flux?.config?.count},set(e){console.debug("set count",e),this.$store.commit("flux/setConfig",{...this.$store.state.flux?.config,count:e})}}},mounted(){this.value||(this.value=z)}}),ge={class:"flex justify-between"},$e={class:"flex justify-start items-center"},ve={class:"text-sm font-bold"},be={class:"flex justify-end items-center"},ke={class:"w-full"};function xe(e,o,m,d,b,k){const c=s("info-icon"),u=s("el-input-number"),n=s("el-slider");return a(),i("div",null,[l("div",ge,[l("div",$e,[l("span",ve,r(e.$t("flux.name.numbers")),1),t(c,{content:e.$t("flux.description.numbers")},null,8,["content"])]),l("div",be,[t(u,{modelValue:e.value,"onUpdate:modelValue":o[0]||(o[0]=p=>e.value=p),"controls-position":"right"},null,8,["modelValue"])])]),l("div",ke,[t(n,{modelValue:e.value,"onUpdate:modelValue":o[1]||(o[1]=p=>e.value=p),min:1,max:4,step:1},null,8,["modelValue"])])])}const we=v(he,[["render",xe]]),ye=$({name:"ActionSelector",components:{ElSelect:P,ElOption:G},props:{modelValue:{type:String,default:void 0}},emits:["update:modelValue"],data(){return{options:[{value:"generate",label:this.$t("flux.name.generate")},{value:"edits",label:this.$t("flux.name.edits")}]}},computed:{value:{get(){return this.$store.state.flux?.config?.action},set(e){this.$store.commit("flux/setConfig",{...this.$store.state.flux.config,action:e})}}},mounted(){this.value||(this.value=X)}}),Ve={class:"field"},Te={class:"title font-bold"};function Se(e,o,m,d,b,k){const c=s("el-option"),u=s("el-select");return a(),i("div",Ve,[l("h2",Te,r(e.$t("flux.name.task")),1),t(u,{modelValue:e.value,"onUpdate:modelValue":o[0]||(o[0]=n=>e.value=n),class:"value",placeholder:e.$t("flux.placeholder.select")},{default:f(()=>[(a(!0),i(V,null,I(e.options,n=>(a(),w(c,{key:n.value,label:n.label,value:n.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const Ie=v(ye,[["render",Se],["__scopeId","data-v-81fd05e5"]]),Ee=$({name:"ImageUrlInput",components:{ElUpload:F,ElButton:L,InfoIcon:C,FontAwesomeIcon:S,ImagePreview:W},emits:["change"],data(){return{fileList:[],uploadUrl:K()+"/api/v1/files/"}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},urls(){return this.fileList.map(e=>e?.response?.file_url)}},watch:{urls:{handler(e){console.debug("URLs changed:",e),this.$store.commit("flux/setConfig",{...this.$store.state.flux.config,image_url:e[0]})}}},methods:{onExceed(){y.warning(this.$t("flux.message.uploadStartImageExceed"))},onError(){y.error(this.$t("flux.message.uploadStartImageError"))}}}),Le={class:"relative"},Ue={class:"flex justify-between"},Ce={class:"flex justify-start items-center"},Ae={class:"text-sm font-bold"};function Ge(e,o,m,d,b,k){const c=s("info-icon"),u=s("image-preview"),n=s("font-awesome-icon"),p=s("el-button"),g=s("el-upload");return a(),i("div",Le,[l("div",Ue,[l("div",Ce,[l("span",Ae,r(e.$t("flux.name.imageUrl")),1),t(c,{content:e.$t("flux.description.imageUrl")},null,8,["content"])])]),t(g,{"file-list":e.fileList,"onUpdate:fileList":o[0]||(o[0]=_=>e.fileList=_),name:"file",limit:5,class:"upload-wrapper",accept:".png,.jpg,.jpeg,.gif,.bmp,.webp",multiple:!0,"list-type":"picture",action:e.uploadUrl,"on-exceed":e.onExceed,"on-error":e.onError,headers:e.headers},{file:f(({file:_})=>[t(u,{url:_.url||_.response?.file_url,name:_.name,percentage:_.percentage,onRemove:T=>e.fileList.splice(e.fileList.indexOf(_),1)},null,8,["url","name","percentage","onRemove"])]),default:f(()=>[t(p,{round:"",type:"primary",size:"small",class:"btn btn-upload"},{default:f(()=>[t(n,{icon:"fa-solid fa-upload",class:"icon mr-1"}),h(" "+r(e.$t("flux.button.uploadImageUrl")),1)]),_:1})]),_:1},8,["file-list","action","on-exceed","on-error","headers"])])}const Pe=v(Ee,[["render",Ge],["__scopeId","data-v-04710032"]]),je="",Re=$({name:"PromptInput",components:{ElInput:M,InfoIcon:C},computed:{prompt:{get(){return this.$store.state.flux?.config?.prompt},set(e){console.debug("set prompt",e),this.$store.commit("flux/setConfig",{...this.$store.state.flux?.config,prompt:e})}}},mounted(){this.prompt||(this.prompt=je)}}),De={class:"field"},Be={class:"box"},Fe={class:"title font-bold"};function Me(e,o,m,d,b,k){const c=s("info-icon"),u=s("el-input");return a(),i("div",De,[l("div",Be,[l("h2",Fe,r(e.$t("flux.name.prompt")),1),t(c,{content:e.$t("flux.description.prompt"),class:"info"},null,8,["content"])]),t(u,{modelValue:e.prompt,"onUpdate:modelValue":o[0]||(o[0]=n=>e.prompt=n),rows:3,type:"textarea",class:"prompt",placeholder:e.$t("flux.placeholder.prompt")},null,8,["modelValue","placeholder"])])}const Oe=v(Re,[["render",Me],["__scopeId","data-v-96df0218"]]),Ne=$({name:"PresetPanel",components:{ElButton:L,FontAwesomeIcon:S,PromptInput:Oe,ModelSelector:_e,CountSelector:we,Consumption:Z,ActionSelector:Ie,ImageUrlInput:Pe},emits:["generate"],computed:{config(){return this.$store.state.flux?.config},consumption(){return ee(this.config,this.service?.cost)},service(){return this.$store.state.flux?.service}},methods:{onGenerate(){this.$emit("generate")}}}),qe={class:"flex flex-col h-full"},ze={class:"flex-1 overflow-y-auto p-5"},Xe={class:"flex flex-col items-center justify-center px-5 pb-5"};function Ke(e,o,m,d,b,k){const c=s("action-selector"),u=s("prompt-input"),n=s("image-url-input"),p=s("model-selector"),g=s("count-selector"),_=s("consumption"),T=s("font-awesome-icon"),j=s("el-button");return a(),i("div",qe,[l("div",ze,[t(c,{class:"mb-4"}),t(u,{class:"mb-4"}),e.config?.action==="edits"?(a(),w(n,{key:0,class:"mb-4"})):x("",!0),t(p,{class:"mb-4"}),t(g,{class:"mb-4"})]),l("div",Xe,[t(_,{value:e.consumption,service:e.service},null,8,["value","service"]),t(j,{type:"primary",class:"btn w-full",round:"",onClick:e.onGenerate},{default:f(()=>[t(T,{icon:"fa-solid fa-magic",class:"mr-2"}),h(" "+r(e.$t("flux.button.generate")),1)]),_:1},8,["onClick"])])])}const He=v(Ne,[["render",Ke]]),Je=$({name:"TaskPreview",components:{ElImage:N,CopyToClipboard:te,FontAwesomeIcon:S,ElAlert:O,ImageWrapper:oe},props:{modelValue:{type:Object,required:!0}},data(){return{}},computed:{application(){return this.$store.state.flux?.application},config(){return this.$store.state.flux?.config},images(){let e=[];const o=this.modelValue?.request?.action;return Array.isArray(this.modelValue?.response?.data)&&this.modelValue?.response?.data?.forEach(m=>{let d=m;o&&(d.action=o),e.push(d)}),e}},methods:{onDownload(e,o){e.stopPropagation(),console.log("on download"),window.open(o,"_blank")},onOpenImage(e){window.open(e,"_blank")}}}),Qe={class:"preview"},We={class:"left"},Ze={class:"main"},Ye={class:"bot"},et={class:"datetime"},tt={class:"info"},ot={key:0,class:"prompt mt-2"},st={key:0},nt={key:0,class:U({content:!0,failed:!0})},lt={class:"flex justify-start items-center gap-4 w-full overflow-x-auto"},at={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},rt={class:"text-[var(--el-text-color-regular)] text-xs mb-0"},it={key:1,class:U({content:!0})},ct={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},ut={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},dt={class:"text-[var(--el-text-color-regular)] text-xs mb-0"},pt={key:2,class:U({content:!0})},mt={class:"text-[var(--el-text-color-regular)] text-xs mb-0"};function ft(e,o,m,d,b,k){const c=s("el-image"),u=s("image-wrapper"),n=s("font-awesome-icon"),p=s("copy-to-clipboard"),g=s("el-alert");return a(),i("div",Qe,[l("div",We,[t(c,{src:"https://cdn.acedata.cloud/ogm2oa.png",class:"avatar"})]),l("div",Ze,[l("div",Ye,[h(r(e.$t("flux.name.fluxBot"))+" ",1),l("span",et,r(e.$dayjs.format(""+new Date(parseFloat((e.modelValue?.created_at||"").toString())*1e3))),1)]),l("div",tt,[e.modelValue?.request?.prompt?(a(),i("p",ot,[h(r(e.modelValue?.request?.prompt)+" ",1),e.modelValue?.response?x("",!0):(a(),i("span",st," - ("+r(e.$t("flux.status.pending"))+") ",1))])):x("",!0)]),e.modelValue?.response?.success===!0?(a(),i("div",nt,[l("div",lt,[(a(!0),i(V,null,I(e.images,(_,T)=>(a(),w(u,{key:T,src:_?.image_url,"raw-src":_?.image_url,"model-value":_},null,8,["src","raw-src","model-value"]))),128))]),t(g,{closable:!1,class:"mt-2 success"},{default:f(()=>[l("p",at,[t(n,{icon:"fa-solid fa-hashtag",class:"mr-1"}),h(" "+r(e.$t("flux.name.model"))+": "+r(e.modelValue?.request?.model),1)]),l("p",rt,[t(n,{icon:"fa-solid fa-magic",class:"mr-1"}),h(" "+r(e.$t("flux.name.taskId"))+": "+r(e.modelValue?.id)+" ",1),t(p,{content:e.modelValue?.id,class:"btn-copy inline-block"},null,8,["content"])])]),_:1})])):x("",!0),e.modelValue?.response?.success===!1?(a(),i("div",it,[t(g,{closable:!1,class:"failure"},{template:f(()=>[t(n,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),h(" "+r(e.$t("flux.name.failure")),1)]),default:f(()=>[l("p",ct,[t(n,{icon:"fa-solid fa-magic",class:"mr-1"}),h(" "+r(e.$t("flux.name.taskId"))+": "+r(e.modelValue?.id)+" ",1),t(p,{content:e.modelValue?.id,class:"btn-copy"},null,8,["content"])]),l("p",ut,[t(n,{icon:"fa-solid fa-circle-info",class:"mr-1"}),h(" "+r(e.$t("flux.name.failureReason"))+": "+r(e.modelValue?.response?.error?.message)+" ",1),t(p,{content:e.modelValue?.response?.error?.message,class:"btn-copy"},null,8,["content"])]),l("p",dt,[t(n,{icon:"fa-solid fa-hashtag",class:"mr-1"}),h(" "+r(e.$t("flux.name.traceId"))+": "+r(e.modelValue?.response?.trace_id)+" ",1),t(p,{content:e.modelValue?.response?.trace_id,class:"btn-copy"},null,8,["content"])])]),_:1})])):x("",!0),e.modelValue?.response?x("",!0):(a(),i("div",pt,[t(g,{closable:!1,class:"info"},{template:f(()=>[t(n,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),h(" "+r(e.$t("flux.name.failure")),1)]),default:f(()=>[l("p",mt,[t(n,{icon:"fa-solid fa-magic",class:"mr-1"}),h(" "+r(e.$t("flux.name.taskId"))+": "+r(e.modelValue?.id)+" ",1),t(p,{content:e.modelValue?.id,class:"btn-copy"},null,8,["content"])])]),_:1})]))])])}const _t=v(Je,[["render",ft],["__scopeId","data-v-316600d3"]]),ht=$({name:"RecentPanel",components:{TaskPreview:_t,BotPlaceholder:se,NoTasks:Y,ScrollList:Q},props:{loading:{type:Boolean,default:!1}},emits:["reach-top"],data(){return{job:0}},computed:{tasks(){return{...this.$store.state.flux?.tasks,items:this.$store.state.flux?.tasks?.items?.slice()}}},methods:{getScrollElement(){return this.$refs.scrollList?.getScrollElement?.()}}}),gt={key:0},$t={key:2,class:"w-full h-full flex items-center justify-center"};function vt(e,o,m,d,b,k){const c=s("bot-placeholder"),u=s("task-preview"),n=s("scroll-list"),p=s("no-tasks");return a(),i(V,null,[e.tasks?.items===void 0?(a(),i("div",gt,[t(c)])):e.tasks?.items?.length&&e.tasks?.items?.length>0?(a(),w(n,{key:1,ref:"scrollList",class:"tasks h-full w-full overflow-y-auto",loading:e.loading,onReachTop:o[0]||(o[0]=g=>e.$emit("reach-top"))},{default:f(()=>[(a(!0),i(V,null,I(e.tasks?.items,g=>(a(),w(u,{key:g.id,"model-value":g},null,8,["model-value"]))),128))]),_:1},8,["loading"])):x("",!0),e.tasks?.items?.length===0?(a(),i("div",$t,[t(p)])):x("",!0)],64)}const bt=v(ht,[["render",vt]]),kt="https://webhook.acedata.cloud/flux",xt=$({name:"FluxIndex",components:{ConfigPanel:He,Layout:ue,RecentPanel:bt},inject:["initialized"],data(){return{task:void 0,job:0,loadingMore:!1,fetchingTasks:!1}},computed:{applicationsLoading(){return this.$store.state.flux?.status?.getApplications===A.Request},tasksLoading(){return this.$store.state.flux?.status?.getTasks===A.Request||this.fetchingTasks},credential(){return this.$store.state.flux?.credential},config(){return this.$store.state.flux?.config},application(){return this.$store.state.flux?.application},tasks(){return this.$store.state.flux?.tasks}},watch:{tasks:{handler(e,o){e?.items?.length>o?.items?.length&&console.debug("new tasks detected")},deep:!0},initialized:{async handler(e){e&&(console.debug("layout initialized"),await this.onGetTasks(),await this.onScrollDown(),this.job=window.setInterval(()=>{this.onGetTasks()},5e3))},immediate:!0}},async mounted(){await this.onGetService()},async unmounted(){window.clearInterval(this.job)},methods:{async onReachTop(){await ne({tasks:this.tasks,getTasks:()=>this.tasks,loading:this.loadingMore,setLoading:e=>this.loadingMore=e,isBlocked:()=>this.tasksLoading||this.applicationsLoading,fetch:e=>this.onGetTasks({createdAtMax:e}),getScrollElement:()=>this.getTasksScrollElement()})},async onGetService(){console.debug("start onGetService"),await this.$store.dispatch("flux/getService"),console.debug("end onGetService")},async onGetApplication(){console.debug("start onGetApplication"),await this.$store.dispatch("flux/getApplications"),console.debug("end onGetApplication"),await this.onGetTasks()},async onScrollDown(){await this.$nextTick();const e=this.getTasksScrollElement();e&&(e.scrollTop=e.scrollHeight)},async onGetTasks(e){if(this.applicationsLoading||this.fetchingTasks){console.debug("loading");return}console.debug("start onGetTasks",e);const{limit:o=5,createdAtMin:m,createdAtMax:d}=e||{};console.debug("limit",o,"createdAtMin",m,"createdAtMax",d),this.fetchingTasks=!0;try{await this.$store.dispatch("flux/getTasks",{limit:o,createdAtMin:m,createdAtMax:d})}finally{this.fetchingTasks=!1}},async onGenerate(){const e={...this.config,callback_url:kt},o=this.credential?.token;if(!o){console.error("no token specified");return}y.info(this.$t("flux.message.startingTask")),H.generate(e,{token:o}).then(()=>{y.success(this.$t("flux.message.startTaskSuccess"))}).catch(m=>{const d=m?.response?.data;d?.error?.code===J?y.error(this.$t("flux.message.usedUp")):y.error(this.$t("flux.message.startTaskFailed")+d?.error?.message)}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})},getTasksScrollElement(){return this.$refs.recentPanel?.getScrollElement?.()}}});function wt(e,o,m,d,b,k){const c=s("config-panel"),u=s("recent-panel"),n=s("layout");return a(),w(n,null,{config:f(()=>[t(c,{onGenerate:e.onGenerate},null,8,["onGenerate"])]),result:f(()=>[t(u,{ref:"recentPanel",loading:e.loadingMore,onReachTop:e.onReachTop},null,8,["loading","onReachTop"])]),_:1})}const Ft=v(xt,[["render",wt]]);export{Ft as default};
|
|
1
|
+
import{F as S}from"./index.es-vNwt4sbI.js";import{l as L,S as R,N as G,O as P,U as D,V as B,t as F,u as y,s as M,G as O,j as N}from"./vendor-element-plus-B4FTqxj4.js";import{d as $,C as i,G as l,T as t,E,K as f,ai as s,D as a,R as r,S as V,ag as I,J as w,Q as h,O as x,M as U}from"./vendor-vue-1w_NBnjl.js";import{_ as v,bZ as q,b_ as z,b$ as X,aj as K,c0 as H,aB as J,ay as A}from"./index-CqL6zWO4.js";import{I as C,S as Q}from"./ScrollList-BGZ0Fkh5.js";import{I as W}from"./ImagePreview-YbDjRoDP.js";import{C as Z,N as Y}from"./NoTasks-Dpxe4xfM.js";import{a as ee}from"./price-C8BXaFbS.js";import{C as te}from"./CopyToClipboard-jWxr3xe-.js";import{I as oe}from"./ImageWrapper-_o2mlETS.js";import{B as se}from"./BotPlaceholder-4xqKcsb2.js";import{l as ne}from"./pagination-CihAE3FS.js";import"./vendor-dayjs-CzbnksQQ.js";import"./vendor-web3-BT8AOwfJ.js";import"./vendor-axios-NIGUFBhG.js";import"./vendor-vue-router-Dj5bcX0v.js";const le=$({name:"LayoutFlux",components:{ElDrawer:R,ElButton:L,FontAwesomeIcon:S},data(){return{drawer:!1}}}),ae={class:"main flex flex-row flex-1"},re={class:"config w-[320px] flex-none h-full overflow-y-auto bg-[var(--app-sidebar-bg)] border-r border-[var(--app-border-subtle)]"},ie={class:"result h-full p-6 flex-1 flex flex-col min-w-0 overflow-x-hidden bg-[var(--app-content-bg)]"};function ce(e,o,m,d,b,k){const c=s("font-awesome-icon"),u=s("el-button"),n=s("el-drawer");return a(),i("div",ae,[l("div",re,[E(e.$slots,"config",{},void 0,!0)]),l("div",ie,[E(e.$slots,"result",{},void 0,!0)]),t(u,{circle:"",class:"menu",onClick:o[0]||(o[0]=p=>e.drawer=!0)},{default:f(()=>[t(c,{icon:"fa-solid fa-magic"})]),_:1}),t(n,{modelValue:e.drawer,"onUpdate:modelValue":o[1]||(o[1]=p=>e.drawer=p),direction:"ltr","with-header":!1,size:"340px",class:"drawer"},{default:f(()=>[E(e.$slots,"config",{},void 0,!0)]),_:3},8,["modelValue"])])}const ue=v(le,[["render",ce],["__scopeId","data-v-3c0d2b44"]]),de=$({name:"ModelSelector",components:{ElSelect:P,ElOption:G},props:{modelValue:{type:String,default:void 0}},emits:["update:modelValue"],data(){return{options:[{value:"flux-dev",label:"flux-dev"},{value:"flux-pro",label:"flux-pro"},{value:"flux-pro-1.1",label:"flux-pro-1.1"},{value:"flux-pro-1.1-ultra",label:"flux-pro-1.1-ultra"},{value:"flux-kontext-pro",label:"flux-kontext-pro"},{value:"flux-kontext-max",label:"flux-kontext-max"}]}},computed:{value:{get(){return this.$store.state.flux?.config?.model},set(e){this.$store.commit("flux/setConfig",{...this.$store.state.flux.config,model:e})}}},mounted(){this.value||(this.value=q)}}),pe={class:"field"},me={class:"title font-bold"};function fe(e,o,m,d,b,k){const c=s("el-option"),u=s("el-select");return a(),i("div",pe,[l("h2",me,r(e.$t("flux.name.model")),1),t(u,{modelValue:e.value,"onUpdate:modelValue":o[0]||(o[0]=n=>e.value=n),class:"value",placeholder:e.$t("flux.placeholder.select")},{default:f(()=>[(a(!0),i(V,null,I(e.options,n=>(a(),w(c,{key:n.value,label:n.label,value:n.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const _e=v(de,[["render",fe],["__scopeId","data-v-8df4b8a7"]]),he=$({name:"CountSelector",components:{ElSlider:B,InfoIcon:C,ElInputNumber:D},computed:{value:{get(){return this.$store.state.flux?.config?.count},set(e){console.debug("set count",e),this.$store.commit("flux/setConfig",{...this.$store.state.flux?.config,count:e})}}},mounted(){this.value||(this.value=z)}}),ge={class:"flex justify-between"},$e={class:"flex justify-start items-center"},ve={class:"text-sm font-bold"},be={class:"flex justify-end items-center"},ke={class:"w-full"};function xe(e,o,m,d,b,k){const c=s("info-icon"),u=s("el-input-number"),n=s("el-slider");return a(),i("div",null,[l("div",ge,[l("div",$e,[l("span",ve,r(e.$t("flux.name.numbers")),1),t(c,{content:e.$t("flux.description.numbers")},null,8,["content"])]),l("div",be,[t(u,{modelValue:e.value,"onUpdate:modelValue":o[0]||(o[0]=p=>e.value=p),"controls-position":"right"},null,8,["modelValue"])])]),l("div",ke,[t(n,{modelValue:e.value,"onUpdate:modelValue":o[1]||(o[1]=p=>e.value=p),min:1,max:4,step:1},null,8,["modelValue"])])])}const we=v(he,[["render",xe]]),ye=$({name:"ActionSelector",components:{ElSelect:P,ElOption:G},props:{modelValue:{type:String,default:void 0}},emits:["update:modelValue"],data(){return{options:[{value:"generate",label:this.$t("flux.name.generate")},{value:"edits",label:this.$t("flux.name.edits")}]}},computed:{value:{get(){return this.$store.state.flux?.config?.action},set(e){this.$store.commit("flux/setConfig",{...this.$store.state.flux.config,action:e})}}},mounted(){this.value||(this.value=X)}}),Ve={class:"field"},Te={class:"title font-bold"};function Se(e,o,m,d,b,k){const c=s("el-option"),u=s("el-select");return a(),i("div",Ve,[l("h2",Te,r(e.$t("flux.name.task")),1),t(u,{modelValue:e.value,"onUpdate:modelValue":o[0]||(o[0]=n=>e.value=n),class:"value",placeholder:e.$t("flux.placeholder.select")},{default:f(()=>[(a(!0),i(V,null,I(e.options,n=>(a(),w(c,{key:n.value,label:n.label,value:n.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const Ie=v(ye,[["render",Se],["__scopeId","data-v-81fd05e5"]]),Ee=$({name:"ImageUrlInput",components:{ElUpload:F,ElButton:L,InfoIcon:C,FontAwesomeIcon:S,ImagePreview:W},emits:["change"],data(){return{fileList:[],uploadUrl:K()+"/api/v1/files/"}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},urls(){return this.fileList.map(e=>e?.response?.file_url)}},watch:{urls:{handler(e){console.debug("URLs changed:",e),this.$store.commit("flux/setConfig",{...this.$store.state.flux.config,image_url:e[0]})}}},methods:{onExceed(){y.warning(this.$t("flux.message.uploadStartImageExceed"))},onError(){y.error(this.$t("flux.message.uploadStartImageError"))}}}),Le={class:"relative"},Ue={class:"flex justify-between"},Ce={class:"flex justify-start items-center"},Ae={class:"text-sm font-bold"};function Ge(e,o,m,d,b,k){const c=s("info-icon"),u=s("image-preview"),n=s("font-awesome-icon"),p=s("el-button"),g=s("el-upload");return a(),i("div",Le,[l("div",Ue,[l("div",Ce,[l("span",Ae,r(e.$t("flux.name.imageUrl")),1),t(c,{content:e.$t("flux.description.imageUrl")},null,8,["content"])])]),t(g,{"file-list":e.fileList,"onUpdate:fileList":o[0]||(o[0]=_=>e.fileList=_),name:"file",limit:5,class:"upload-wrapper",accept:".png,.jpg,.jpeg,.gif,.bmp,.webp",multiple:!0,"list-type":"picture",action:e.uploadUrl,"on-exceed":e.onExceed,"on-error":e.onError,headers:e.headers},{file:f(({file:_})=>[t(u,{url:_.url||_.response?.file_url,name:_.name,percentage:_.percentage,onRemove:T=>e.fileList.splice(e.fileList.indexOf(_),1)},null,8,["url","name","percentage","onRemove"])]),default:f(()=>[t(p,{round:"",type:"primary",size:"small",class:"btn btn-upload"},{default:f(()=>[t(n,{icon:"fa-solid fa-upload",class:"icon mr-1"}),h(" "+r(e.$t("flux.button.uploadImageUrl")),1)]),_:1})]),_:1},8,["file-list","action","on-exceed","on-error","headers"])])}const Pe=v(Ee,[["render",Ge],["__scopeId","data-v-04710032"]]),je="",Re=$({name:"PromptInput",components:{ElInput:M,InfoIcon:C},computed:{prompt:{get(){return this.$store.state.flux?.config?.prompt},set(e){console.debug("set prompt",e),this.$store.commit("flux/setConfig",{...this.$store.state.flux?.config,prompt:e})}}},mounted(){this.prompt||(this.prompt=je)}}),De={class:"field"},Be={class:"box"},Fe={class:"title font-bold"};function Me(e,o,m,d,b,k){const c=s("info-icon"),u=s("el-input");return a(),i("div",De,[l("div",Be,[l("h2",Fe,r(e.$t("flux.name.prompt")),1),t(c,{content:e.$t("flux.description.prompt"),class:"info"},null,8,["content"])]),t(u,{modelValue:e.prompt,"onUpdate:modelValue":o[0]||(o[0]=n=>e.prompt=n),rows:3,type:"textarea",class:"prompt",placeholder:e.$t("flux.placeholder.prompt")},null,8,["modelValue","placeholder"])])}const Oe=v(Re,[["render",Me],["__scopeId","data-v-96df0218"]]),Ne=$({name:"PresetPanel",components:{ElButton:L,FontAwesomeIcon:S,PromptInput:Oe,ModelSelector:_e,CountSelector:we,Consumption:Z,ActionSelector:Ie,ImageUrlInput:Pe},emits:["generate"],computed:{config(){return this.$store.state.flux?.config},consumption(){return ee(this.config,this.service?.cost)},service(){return this.$store.state.flux?.service}},methods:{onGenerate(){this.$emit("generate")}}}),qe={class:"flex flex-col h-full"},ze={class:"flex-1 overflow-y-auto p-5"},Xe={class:"flex flex-col items-center justify-center px-5 pb-5"};function Ke(e,o,m,d,b,k){const c=s("action-selector"),u=s("prompt-input"),n=s("image-url-input"),p=s("model-selector"),g=s("count-selector"),_=s("consumption"),T=s("font-awesome-icon"),j=s("el-button");return a(),i("div",qe,[l("div",ze,[t(c,{class:"mb-4"}),t(u,{class:"mb-4"}),e.config?.action==="edits"?(a(),w(n,{key:0,class:"mb-4"})):x("",!0),t(p,{class:"mb-4"}),t(g,{class:"mb-4"})]),l("div",Xe,[t(_,{value:e.consumption,service:e.service},null,8,["value","service"]),t(j,{type:"primary",class:"btn w-full",round:"",onClick:e.onGenerate},{default:f(()=>[t(T,{icon:"fa-solid fa-magic",class:"mr-2"}),h(" "+r(e.$t("flux.button.generate")),1)]),_:1},8,["onClick"])])])}const He=v(Ne,[["render",Ke]]),Je=$({name:"TaskPreview",components:{ElImage:N,CopyToClipboard:te,FontAwesomeIcon:S,ElAlert:O,ImageWrapper:oe},props:{modelValue:{type:Object,required:!0}},data(){return{}},computed:{application(){return this.$store.state.flux?.application},config(){return this.$store.state.flux?.config},images(){let e=[];const o=this.modelValue?.request?.action;return Array.isArray(this.modelValue?.response?.data)&&this.modelValue?.response?.data?.forEach(m=>{let d=m;o&&(d.action=o),e.push(d)}),e}},methods:{onDownload(e,o){e.stopPropagation(),console.log("on download"),window.open(o,"_blank")},onOpenImage(e){window.open(e,"_blank")}}}),Qe={class:"preview"},We={class:"left"},Ze={class:"main"},Ye={class:"bot"},et={class:"datetime"},tt={class:"info"},ot={key:0,class:"prompt mt-2"},st={key:0},nt={key:0,class:U({content:!0,failed:!0})},lt={class:"flex justify-start items-center gap-4 w-full overflow-x-auto"},at={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},rt={class:"text-[var(--el-text-color-regular)] text-xs mb-0"},it={key:1,class:U({content:!0})},ct={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},ut={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},dt={class:"text-[var(--el-text-color-regular)] text-xs mb-0"},pt={key:2,class:U({content:!0})},mt={class:"text-[var(--el-text-color-regular)] text-xs mb-0"};function ft(e,o,m,d,b,k){const c=s("el-image"),u=s("image-wrapper"),n=s("font-awesome-icon"),p=s("copy-to-clipboard"),g=s("el-alert");return a(),i("div",Qe,[l("div",We,[t(c,{src:"https://cdn.acedata.cloud/ogm2oa.png",class:"avatar"})]),l("div",Ze,[l("div",Ye,[h(r(e.$t("flux.name.fluxBot"))+" ",1),l("span",et,r(e.$dayjs.format(""+new Date(parseFloat((e.modelValue?.created_at||"").toString())*1e3))),1)]),l("div",tt,[e.modelValue?.request?.prompt?(a(),i("p",ot,[h(r(e.modelValue?.request?.prompt)+" ",1),e.modelValue?.response?x("",!0):(a(),i("span",st," - ("+r(e.$t("flux.status.pending"))+") ",1))])):x("",!0)]),e.modelValue?.response?.success===!0?(a(),i("div",nt,[l("div",lt,[(a(!0),i(V,null,I(e.images,(_,T)=>(a(),w(u,{key:T,src:_?.image_url,"raw-src":_?.image_url,"model-value":_},null,8,["src","raw-src","model-value"]))),128))]),t(g,{closable:!1,class:"mt-2 success"},{default:f(()=>[l("p",at,[t(n,{icon:"fa-solid fa-hashtag",class:"mr-1"}),h(" "+r(e.$t("flux.name.model"))+": "+r(e.modelValue?.request?.model),1)]),l("p",rt,[t(n,{icon:"fa-solid fa-magic",class:"mr-1"}),h(" "+r(e.$t("flux.name.taskId"))+": "+r(e.modelValue?.id)+" ",1),t(p,{content:e.modelValue?.id,class:"btn-copy inline-block"},null,8,["content"])])]),_:1})])):x("",!0),e.modelValue?.response?.success===!1?(a(),i("div",it,[t(g,{closable:!1,class:"failure"},{template:f(()=>[t(n,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),h(" "+r(e.$t("flux.name.failure")),1)]),default:f(()=>[l("p",ct,[t(n,{icon:"fa-solid fa-magic",class:"mr-1"}),h(" "+r(e.$t("flux.name.taskId"))+": "+r(e.modelValue?.id)+" ",1),t(p,{content:e.modelValue?.id,class:"btn-copy"},null,8,["content"])]),l("p",ut,[t(n,{icon:"fa-solid fa-circle-info",class:"mr-1"}),h(" "+r(e.$t("flux.name.failureReason"))+": "+r(e.modelValue?.response?.error?.message)+" ",1),t(p,{content:e.modelValue?.response?.error?.message,class:"btn-copy"},null,8,["content"])]),l("p",dt,[t(n,{icon:"fa-solid fa-hashtag",class:"mr-1"}),h(" "+r(e.$t("flux.name.traceId"))+": "+r(e.modelValue?.response?.trace_id)+" ",1),t(p,{content:e.modelValue?.response?.trace_id,class:"btn-copy"},null,8,["content"])])]),_:1})])):x("",!0),e.modelValue?.response?x("",!0):(a(),i("div",pt,[t(g,{closable:!1,class:"info"},{template:f(()=>[t(n,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),h(" "+r(e.$t("flux.name.failure")),1)]),default:f(()=>[l("p",mt,[t(n,{icon:"fa-solid fa-magic",class:"mr-1"}),h(" "+r(e.$t("flux.name.taskId"))+": "+r(e.modelValue?.id)+" ",1),t(p,{content:e.modelValue?.id,class:"btn-copy"},null,8,["content"])])]),_:1})]))])])}const _t=v(Je,[["render",ft],["__scopeId","data-v-316600d3"]]),ht=$({name:"RecentPanel",components:{TaskPreview:_t,BotPlaceholder:se,NoTasks:Y,ScrollList:Q},props:{loading:{type:Boolean,default:!1}},emits:["reach-top"],data(){return{job:0}},computed:{tasks(){return{...this.$store.state.flux?.tasks,items:this.$store.state.flux?.tasks?.items?.slice()}}},methods:{getScrollElement(){return this.$refs.scrollList?.getScrollElement?.()}}}),gt={key:0},$t={key:2,class:"w-full h-full flex items-center justify-center"};function vt(e,o,m,d,b,k){const c=s("bot-placeholder"),u=s("task-preview"),n=s("scroll-list"),p=s("no-tasks");return a(),i(V,null,[e.tasks?.items===void 0?(a(),i("div",gt,[t(c)])):e.tasks?.items?.length&&e.tasks?.items?.length>0?(a(),w(n,{key:1,ref:"scrollList",class:"tasks h-full w-full overflow-y-auto",loading:e.loading,onReachTop:o[0]||(o[0]=g=>e.$emit("reach-top"))},{default:f(()=>[(a(!0),i(V,null,I(e.tasks?.items,g=>(a(),w(u,{key:g.id,"model-value":g},null,8,["model-value"]))),128))]),_:1},8,["loading"])):x("",!0),e.tasks?.items?.length===0?(a(),i("div",$t,[t(p)])):x("",!0)],64)}const bt=v(ht,[["render",vt]]),kt="https://webhook.acedata.cloud/flux",xt=$({name:"FluxIndex",components:{ConfigPanel:He,Layout:ue,RecentPanel:bt},inject:["initialized"],data(){return{task:void 0,job:0,loadingMore:!1,fetchingTasks:!1}},computed:{applicationsLoading(){return this.$store.state.flux?.status?.getApplications===A.Request},tasksLoading(){return this.$store.state.flux?.status?.getTasks===A.Request||this.fetchingTasks},credential(){return this.$store.state.flux?.credential},config(){return this.$store.state.flux?.config},application(){return this.$store.state.flux?.application},tasks(){return this.$store.state.flux?.tasks}},watch:{tasks:{handler(e,o){e?.items?.length>o?.items?.length&&console.debug("new tasks detected")},deep:!0},initialized:{async handler(e){e&&(console.debug("layout initialized"),await this.onGetTasks(),await this.onScrollDown(),this.job=window.setInterval(()=>{this.onGetTasks()},5e3))},immediate:!0}},async mounted(){await this.onGetService()},async unmounted(){window.clearInterval(this.job)},methods:{async onReachTop(){await ne({tasks:this.tasks,getTasks:()=>this.tasks,loading:this.loadingMore,setLoading:e=>this.loadingMore=e,isBlocked:()=>this.tasksLoading||this.applicationsLoading,fetch:e=>this.onGetTasks({createdAtMax:e}),getScrollElement:()=>this.getTasksScrollElement()})},async onGetService(){console.debug("start onGetService"),await this.$store.dispatch("flux/getService"),console.debug("end onGetService")},async onGetApplication(){console.debug("start onGetApplication"),await this.$store.dispatch("flux/getApplications"),console.debug("end onGetApplication"),await this.onGetTasks()},async onScrollDown(){await this.$nextTick();const e=this.getTasksScrollElement();e&&(e.scrollTop=e.scrollHeight)},async onGetTasks(e){if(this.applicationsLoading||this.fetchingTasks){console.debug("loading");return}console.debug("start onGetTasks",e);const{limit:o=5,createdAtMin:m,createdAtMax:d}=e||{};console.debug("limit",o,"createdAtMin",m,"createdAtMax",d),this.fetchingTasks=!0;try{await this.$store.dispatch("flux/getTasks",{limit:o,createdAtMin:m,createdAtMax:d})}finally{this.fetchingTasks=!1}},async onGenerate(){const e={...this.config,callback_url:kt},o=this.credential?.token;if(!o){console.error("no token specified");return}y.info(this.$t("flux.message.startingTask")),H.generate(e,{token:o}).then(()=>{y.success(this.$t("flux.message.startTaskSuccess"))}).catch(m=>{const d=m?.response?.data;d?.error?.code===J?y.error(this.$t("flux.message.usedUp")):y.error(this.$t("flux.message.startTaskFailed")+d?.error?.message)}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})},getTasksScrollElement(){return this.$refs.recentPanel?.getScrollElement?.()}}});function wt(e,o,m,d,b,k){const c=s("config-panel"),u=s("recent-panel"),n=s("layout");return a(),w(n,null,{config:f(()=>[t(c,{onGenerate:e.onGenerate},null,8,["onGenerate"])]),result:f(()=>[t(u,{ref:"recentPanel",loading:e.loadingMore,onReachTop:e.onReachTop},null,8,["loading","onReachTop"])]),_:1})}const Ft=v(xt,[["render",wt]]);export{Ft as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{F as T}from"./index.es-ByZsSMmo.js";import{l as I,S as K,s as X,N as R,O as U,k as P,t as G,u as y,p as H,G as J,j as Q}from"./vendor-element-plus-B4FTqxj4.js";import{d as b,C as i,G as r,T as s,E as F,K as p,ai as t,D as n,R as o,S as L,ag as A,J as w,O as v,Q as h,M as C,X as W}from"./vendor-vue-1w_NBnjl.js";import{_ as E,cr as Y,cs as Z,ct as x,cu as M,cv as ee,cw as se,cx as te,cy as oe,aj as j,cz as ne,cA as ae,cB as le,cC as ie,Y as re,cD as ce,aB as de,ay as O}from"./index-Eolh8-ZS.js";import{I as S,S as me}from"./ScrollList-DRWz9jW6.js";import{I as B}from"./ImagePreview-D-H4d4jU.js";import{C as ue,N as pe}from"./NoTasks-Cm0AqqsF.js";import{a as fe}from"./price-B3IiQ6GV.js";import{C as _e}from"./CopyToClipboard-BLbqw9nl.js";import{V as he}from"./VideoPlayer-C8wcdJbG.js";import{I as ve}from"./ImageWrapper-BRaL0q-A.js";import{B as $e}from"./BotPlaceholder-BJhJ0msN.js";import{l as ge}from"./pagination-CihAE3FS.js";import"./vendor-dayjs-CzbnksQQ.js";import"./vendor-web3-DH4JU5BG.js";import"./vendor-axios-NIGUFBhG.js";import"./vendor-vue-router-Dj5bcX0v.js";import"./vue-plyr-QZFBikSk.js";const be=b({name:"LayoutSeedance",components:{ElDrawer:K,ElButton:I,FontAwesomeIcon:T},data(){return{drawer:!1}}}),Ee={class:"main flex flex-row flex-1"},ke={class:"config w-[320px] flex-none h-full overflow-y-auto bg-[var(--app-sidebar-bg)] border-r border-[var(--app-border-subtle)]"},ye={class:"result h-full p-6 flex-1 flex flex-col min-w-0 overflow-x-hidden bg-[var(--app-content-bg)]"};function we(e,a,u,f,g,$){const c=t("font-awesome-icon"),l=t("el-button"),m=t("el-drawer");return n(),i("div",Ee,[r("div",ke,[F(e.$slots,"config",{},void 0,!0)]),r("div",ye,[F(e.$slots,"result",{},void 0,!0)]),s(l,{circle:"",class:"menu",onClick:a[0]||(a[0]=d=>e.drawer=!0)},{default:p(()=>[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:p(()=>[F(e.$slots,"config",{},void 0,!0)]),_:3},8,["modelValue"])])}const Se=E(be,[["render",we],["__scopeId","data-v-02e4e4b3"]]),Ve="",Le=b({name:"SeedancePromptInput",components:{ElInput:X,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=Ve)}}),Te={class:"field"},Ie={class:"box"},Ce={class:"title font-bold"};function Ae(e,a,u,f,g,$){const c=t("info-icon"),l=t("el-input");return n(),i("div",Te,[r("div",Ie,[r("h2",Ce,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 De=E(Le,[["render",Ae],["__scopeId","data-v-865909f4"]]),Fe=b({name:"SeedanceModelSelector",components:{ElSelect:U,ElOption:R,InfoIcon:S},data(){return{options:[{value:Z,label:this.$t("seedance.model.seedance10pro")},{value:x,label:this.$t("seedance.model.seedance10proFast")},{value:M,label:this.$t("seedance.model.seedance15pro")},{value:ee,label:this.$t("seedance.model.seedance10liteT2v")},{value:se,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=Y)}}),Re={class:"field"},Ue={class:"label"},Ne={class:"box"},Oe={class:"title font-bold"};function Pe(e,a,u,f,g,$){const c=t("info-icon"),l=t("el-option"),m=t("el-select");return n(),i("div",Re,[r("div",Ue,[r("div",Ne,[r("h2",Oe,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:p(()=>[(n(!0),i(L,null,A(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 Ge=E(Fe,[["render",Pe],["__scopeId","data-v-eaa1425a"]]),Me=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=te)}}),je={class:"field"},Be={class:"label"},ze={class:"box"},qe={class:"title font-bold"};function Ke(e,a,u,f,g,$){const c=t("info-icon"),l=t("el-option"),m=t("el-select");return n(),i("div",je,[r("div",Be,[r("div",ze,[r("h2",qe,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:p(()=>[(n(!0),i(L,null,A(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 Xe=E(Me,[["render",Ke],["__scopeId","data-v-5c809a72"]]),He=b({name:"SeedanceGenerateAudioSwitch",components:{ElSwitch:P,InfoIcon:S},computed:{isSupported(){return this.$store.state.seedance?.config?.model===M},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=oe)}}),Je={key:0,class:"field"},Qe={class:"label"},We={class:"box"},Ye={class:"title font-bold"},Ze={class:"value"};function xe(e,a,u,f,g,$){const c=t("info-icon"),l=t("el-switch");return e.isSupported?(n(),i("div",Je,[r("div",Qe,[r("div",We,[r("h2",Ye,o(e.$t("seedance.name.generateAudio")),1),s(c,{content:e.$t("seedance.description.generateAudio"),class:"info"},null,8,["content"])])]),r("div",Ze,[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"])])])):v("",!0)}const es=E(He,[["render",xe],["__scopeId","data-v-8d716dcc"]]),ss=b({name:"SeedanceFirstFrameImage",components:{ElUpload:G,ElButton:I,InfoIcon:S,FontAwesomeIcon:T,ImagePreview:B},data(){return{fileList:[],uploadUrl:j()+"/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],u=(this.$store.state.seedance?.config?.images||[]).filter(f=>f?.role!=="first_frame");e&&u.push({url:e,role:"first_frame"}),this.$store.commit("seedance/setConfig",{...this.$store.state.seedance?.config,images:u.length>0?u:void 0})},async onSuccess(){this.onSetFirstFrameUrl()},async onRemove(){this.onSetFirstFrameUrl()}}}),ts={class:"relative"},os={class:"flex justify-between"},ns={class:"flex justify-start items-center"},as={class:"text-sm font-bold"};function ls(e,a,u,f,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",ts,[r("div",os,[r("div",ns,[r("span",as,o(e.$t("seedance.name.firstFrame")),1),s(c,{content:e.$t("seedance.description.firstFrame")},null,8,["content"])])]),s(k,{"file-list":e.fileList,"onUpdate:fileList":a[0]||(a[0]=_=>e.fileList=_),name:"file",accept:".png,.jpg,.jpeg,.gif,.bmp,.webp",limit:1,class:"upload-wrapper",multiple:!1,action:e.uploadUrl,"list-type":"picture","on-exceed":e.onExceed,"on-error":e.onError,"on-success":e.onSuccess,"on-remove":e.onRemove,headers:e.headers},{file:p(({file:_})=>[_.url&&_.percentage!==void 0?(n(),w(l,{key:0,url:_.url,name:_.name,percentage:_.percentage,onRemove:V=>e.fileList.splice(e.fileList.indexOf(_),1)},null,8,["url","name","percentage","onRemove"])):v("",!0)]),default:p(()=>[s(d,{round:"",type:"primary",size:"small",class:"btn btn-upload"},{default:p(()=>[s(m,{icon:"fa-solid fa-upload",class:"icon mr-1"}),h(" "+o(e.$t("seedance.button.upload")),1)]),_:1})]),_:1},8,["file-list","action","on-exceed","on-error","on-success","on-remove","headers"])])}const is=E(ss,[["render",ls],["__scopeId","data-v-b49dfa86"]]),rs=b({name:"SeedanceLastFrameImage",components:{ElUpload:G,ElButton:I,ImagePreview:B,InfoIcon:S,FontAwesomeIcon:T},data(){return{fileList:[],uploadUrl:j()+"/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],u=(this.$store.state.seedance?.config?.images||[]).filter(f=>f?.role!=="last_frame");e&&u.push({url:e,role:"last_frame"}),this.$store.commit("seedance/setConfig",{...this.$store.state.seedance?.config,images:u.length>0?u:void 0})},async onSuccess(){this.onSetLastFrameUrl()},async onRemove(){this.onSetLastFrameUrl()}}}),cs={class:"relative"},ds={class:"flex justify-between"},ms={class:"flex justify-start items-center"},us={class:"text-sm font-bold"};function ps(e,a,u,f,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",cs,[r("div",ds,[r("div",ms,[r("span",us,o(e.$t("seedance.name.lastFrame")),1),s(c,{content:e.$t("seedance.description.lastFrame")},null,8,["content"])])]),s(k,{"file-list":e.fileList,"onUpdate:fileList":a[0]||(a[0]=_=>e.fileList=_),name:"file",accept:".png,.jpg,.jpeg,.gif,.bmp,.webp",limit:1,class:"upload-wrapper",multiple:!1,action:e.uploadUrl,"list-type":"picture","on-exceed":e.onExceed,"on-error":e.onError,"on-success":e.onSuccess,"on-remove":e.onRemove,headers:e.headers},{file:p(({file:_})=>[_.url&&_.percentage!==void 0?(n(),w(l,{key:0,url:_.url,name:_.name,percentage:_.percentage,onRemove:V=>e.fileList.splice(e.fileList.indexOf(_),1)},null,8,["url","name","percentage","onRemove"])):v("",!0)]),default:p(()=>[s(d,{round:"",type:"primary",size:"small",class:"btn btn-upload"},{default:p(()=>[s(m,{icon:"fa-solid fa-upload",class:"icon mr-1"}),h(" "+o(e.$t("seedance.button.upload")),1)]),_:1})]),_:1},8,["file-list","action","on-exceed","on-error","on-success","on-remove","headers"])])}const fs=E(rs,[["render",ps],["__scopeId","data-v-12a78496"]]),_s=b({name:"SeedanceServiceTierSelector",components:{ElSelect:U,ElOption:R,InfoIcon:S},data(){return{options:[{value:ae,label:this.$t("seedance.serviceTier.default")},{value:le,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=ne)}}),hs={class:"field"},vs={class:"label"},$s={class:"box"},gs={class:"title font-bold"};function bs(e,a,u,f,g,$){const c=t("info-icon"),l=t("el-option"),m=t("el-select");return n(),i("div",hs,[r("div",vs,[r("div",$s,[r("h2",gs,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:p(()=>[(n(!0),i(L,null,A(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 Es=E(_s,[["render",bs],["__scopeId","data-v-a62125ec"]]),ks=b({name:"SeedanceReturnLastFrameSwitch",components:{ElSwitch:P,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=ie)}}),ys={class:"field"},ws={class:"label"},Ss={class:"box"},Vs={class:"title font-bold"},Ls={class:"value"};function Ts(e,a,u,f,g,$){const c=t("info-icon"),l=t("el-switch");return n(),i("div",ys,[r("div",ws,[r("div",Ss,[r("h2",Vs,o(e.$t("seedance.name.returnLastFrame")),1),s(c,{content:e.$t("seedance.description.returnLastFrame"),class:"info"},null,8,["content"])])]),r("div",Ls,[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 Is=E(ks,[["render",Ts],["__scopeId","data-v-cd179b1c"]]),Cs=b({name:"SeedanceConfigPanel",components:{ElButton:I,FontAwesomeIcon:T,PromptInput:De,ModelSelector:Ge,DurationSelector:Xe,GenerateAudioSwitch:es,ServiceTierSelector:Es,ReturnLastFrameSwitch:Is,FirstFrameImage:is,LastFrameImage:fs,Consumption:ue},emits:["generate"],computed:{config(){return this.$store.state.seedance?.config},consumption(){return fe(this.config,this.service?.cost)},service(){return this.$store.state.seedance?.service}},methods:{onGenerate(){this.$emit("generate")}}}),As={class:"flex flex-col h-full"},Ds={class:"flex-1 overflow-y-auto p-5"},Fs={class:"flex flex-col items-center justify-center px-5 pb-5"};function Rs(e,a,u,f,g,$){const c=t("prompt-input"),l=t("model-selector"),m=t("duration-selector"),d=t("generate-audio-switch"),k=t("service-tier-selector"),_=t("return-last-frame-switch"),V=t("first-frame-image"),D=t("last-frame-image"),N=t("consumption"),z=t("font-awesome-icon"),q=t("el-button");return n(),i("div",As,[r("div",Ds,[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(_,{class:"mb-4"}),s(V,{class:"mb-2"}),s(D,{class:"mb-2"})]),r("div",Fs,[s(N,{value:e.consumption,service:e.service},null,8,["value","service"]),s(q,{type:"primary",class:"btn w-full",round:"",onClick:e.onGenerate},{default:p(()=>[s(z,{icon:"fa-solid fa-magic",class:"mr-2"}),h(" "+o(e.$t("seedance.button.generate")),1)]),_:1},8,["onClick"])])])}const Us=E(Cs,[["render",Rs]]),Ns=b({name:"SeedanceTaskPreview",components:{ElImage:Q,CopyToClipboard:_e,FontAwesomeIcon:T,ElAlert:J,VideoPlayer:he,ElTooltip:H,ElButton:I,ImageWrapper:ve},props:{modelValue:{type:Object,required:!0}},data(){return{seedanceLogo:re}},computed:{video(){return this.modelValue?.response?.data}},methods:{onDownload(e){window.open(e,"_blank")}}}),Os={class:"preview"},Ps={class:"left"},Gs={class:"main"},Ms={class:"bot"},js={class:"datetime"},Bs={class:"info"},zs={key:0,class:"prompt mt-2"},qs={key:0},Ks={key:1},Xs={key:0,class:C({content:!0})},Hs={class:"text-[var(--el-text-color-regular)] text-xs mb-0"},Js={key:1,class:C({content:!0})},Qs={key:0,class:"mb-4"},Ws={key:1,class:"mb-4"},Ys={key:2,class:C({operations:!0,"mt-2":!0,"mb-2":!0})},Zs={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},xs={key:1,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},et={key:2,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},st={key:0},tt={key:1},ot={key:3,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},nt={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},at={key:4,class:"text-[var(--el-text-color-regular)] text-xs mb-0"},lt={key:2,class:C({content:!0})},it={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},rt={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},ct={key:1,class:"text-[var(--el-text-color-regular)] text-xs mb-0"},dt={key:3,class:C({content:!0})},mt={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},ut={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-0"};function pt(e,a,u,f,g,$){const c=t("el-image"),l=t("font-awesome-icon"),m=t("copy-to-clipboard"),d=t("el-alert"),k=t("video-player"),_=t("image-wrapper"),V=t("el-button"),D=t("el-tooltip");return n(),i("div",Os,[r("div",Ps,[s(c,{src:e.seedanceLogo,class:"avatar"},null,8,["src"])]),r("div",Gs,[r("div",Ms,[h(o(e.$t("seedance.name.seedanceBot"))+" ",1),r("span",js,o(e.$dayjs.format(""+new Date(parseFloat((e.modelValue?.created_at||"").toString())*1e3))),1)]),r("div",Bs,[e.modelValue?.request?.prompt?(n(),i("p",zs,[h(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)):v("",!0):(n(),i("span",qs," - ("+o(e.$t("seedance.status.pending"))+") ",1))])):v("",!0)]),e.modelValue?.response?e.modelValue?.response?.success===!0?(n(),i("div",Js,[e.video?.video_url?(n(),i("div",Qs,[s(k,{src:e.video?.video_url},null,8,["src"])])):v("",!0),e.video?.last_frame_url?(n(),i("div",Ws,[s(_,{src:e.video?.last_frame_url,"raw-src":e.video?.last_frame_url},null,8,["src","raw-src"])])):v("",!0),e.video?.video_url?(n(),i("div",Ys,[s(D,{class:"box-item",effect:"dark",content:e.$t("seedance.message.downloadVideo"),placement:"top-start"},{default:p(()=>[s(V,{type:"info",size:"small",class:"btn-action",onClick:a[0]||(a[0]=W(N=>e.onDownload(e.video?.video_url),["stop"]))},{default:p(()=>[h(o(e.$t("seedance.button.download")),1)]),_:1})]),_:1},8,["content"])])):v("",!0),s(d,{closable:!1,class:"mt-2 success"},{default:p(()=>[e.modelValue?.request?.model?(n(),i("p",Zs,[s(l,{icon:"fa-solid fa-cube",class:"mr-1"}),h(" "+o(e.$t("seedance.name.model"))+": "+o(e.modelValue?.request?.model),1)])):v("",!0),e.video?.duration?(n(),i("p",xs,[s(l,{icon:"fa-solid fa-clock",class:"mr-1"}),h(" "+o(e.$t("seedance.name.duration"))+": "+o(e.video?.duration)+"s ",1)])):v("",!0),e.video?.resolution?(n(),i("p",et,[s(l,{icon:"fa-solid fa-expand",class:"mr-1"}),h(" "+o(e.$t("seedance.name.resolution"))+": "+o(e.video?.resolution)+" ",1),e.video?.ratio?(n(),i("span",st," · "+o(e.video?.ratio),1)):v("",!0),e.video?.framespersecond?(n(),i("span",tt," · "+o(e.video?.framespersecond)+"fps",1)):v("",!0)])):v("",!0),e.modelValue?.request?.generate_audio?(n(),i("p",ot,[s(l,{icon:"fa-solid fa-volume-up",class:"mr-1"}),h(" "+o(e.$t("seedance.name.generateAudio"))+": "+o(e.$t("seedance.button.on")),1)])):v("",!0),r("p",nt,[s(l,{icon:"fa-solid fa-magic",class:"mr-1"}),h(" "+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",at,[s(l,{icon:"fa-solid fa-hashtag",class:"mr-1"}),h(" "+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"])])):v("",!0)]),_:1})])):e.modelValue?.response?.success===!1?(n(),i("div",lt,[s(d,{closable:!1,class:"failure"},{template:p(()=>[s(l,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),h(" "+o(e.$t("seedance.name.failure")),1)]),default:p(()=>[r("p",it,[s(l,{icon:"fa-solid fa-magic",class:"mr-1"}),h(" "+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",rt,[s(l,{icon:"fa-solid fa-circle-info",class:"mr-1"}),h(" "+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"])])):v("",!0),e.modelValue?.response?.trace_id?(n(),i("p",ct,[s(l,{icon:"fa-solid fa-hashtag",class:"mr-1"}),h(" "+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"])])):v("",!0)]),_:1})])):(n(),i("div",dt,[s(d,{closable:!1,class:"info"},{template:p(()=>[s(l,{icon:"fa-solid fa-circle-info",class:"mr-1"}),h(" "+o(e.$t("seedance.name.status")),1)]),default:p(()=>[r("p",mt,[s(l,{icon:"fa-solid fa-magic",class:"mr-1"}),h(" "+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",ut,[s(l,{icon:"fa-solid fa-hashtag",class:"mr-1"}),h(" "+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"])])):v("",!0)]),_:1})])):(n(),i("div",Xs,[s(d,{closable:!1,class:"info"},{template:p(()=>[s(l,{icon:"fa-regular fa-clock",class:"mr-1"}),h(" "+o(e.$t("seedance.status.pending")),1)]),default:p(()=>[r("p",Hs,[s(l,{icon:"fa-solid fa-magic",class:"mr-1"}),h(" "+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 ft=E(Ns,[["render",pt],["__scopeId","data-v-52a2f1ad"]]),_t=b({name:"SeedanceRecentPanel",components:{TaskPreview:ft,BotPlaceholder:$e,NoTasks:pe,ScrollList:me},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?.()}}}),ht={key:0},vt={key:2,class:"w-full h-full flex items-center justify-center"};function $t(e,a,u,f,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",ht,[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:p(()=>[(n(!0),i(L,null,A(e.tasks?.items,k=>(n(),w(l,{key:k.id,"model-value":k},null,8,["model-value"]))),128))]),_:1},8,["loading"])):v("",!0),e.tasks?.items?.length===0?(n(),i("div",vt,[s(d)])):v("",!0)],64)}const gt=E(_t,[["render",$t]]),bt="https://webhook.acedata.cloud/seedance",Et=b({name:"SeedanceIndex",components:{ConfigPanel:Us,Layout:Se,RecentPanel:gt},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 ge({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:u,createdAtMax:f}=e||{};this.fetchingTasks=!0;try{await this.$store.dispatch("seedance/getTasks",{limit:a,createdAtMin:u,createdAtMax:f})}finally{this.fetchingTasks=!1}},async onGenerate(){const e={...this.config||{}};if(typeof e?.prompt=="string"&&(e.prompt=e.prompt.trim(),e.prompt||delete e.prompt),Array.isArray(e?.images)){e.images=e.images.filter(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 u={...e,callback_url:bt},f=this.credential?.token;if(!f){console.error("no token specified");return}y.info(this.$t("seedance.message.startingTask")),ce.generate(u,{token:f}).then(()=>{y.success(this.$t("seedance.message.startTaskSuccess"))}).catch(g=>{const $=g?.response?.data;$?.error?.code===de?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 kt(e,a,u,f,g,$){const c=t("config-panel"),l=t("recent-panel"),m=t("layout");return n(),w(m,null,{config:p(()=>[s(c,{onGenerate:e.onGenerate},null,8,["onGenerate"])]),result:p(()=>[s(l,{ref:"recentPanel",loading:e.loadingMore,onReachTop:e.onReachTop},null,8,["loading","onReachTop"])]),_:1})}const jt=E(Et,[["render",kt]]);export{jt as default};
|
|
1
|
+
import{F as T}from"./index.es-vNwt4sbI.js";import{l as I,S as K,s as X,N as R,O as U,k as P,t as G,u as y,p as H,G as J,j as Q}from"./vendor-element-plus-B4FTqxj4.js";import{d as b,C as i,G as r,T as s,E as F,K as p,ai as t,D as n,R as o,S as L,ag as A,J as w,O as v,Q as h,M as C,X as W}from"./vendor-vue-1w_NBnjl.js";import{_ as E,cr as Y,cs as Z,ct as x,cu as M,cv as ee,cw as se,cx as te,cy as oe,aj as j,cz as ne,cA as ae,cB as le,cC as ie,Y as re,cD as ce,aB as de,ay as O}from"./index-CqL6zWO4.js";import{I as S,S as me}from"./ScrollList-BGZ0Fkh5.js";import{I as B}from"./ImagePreview-YbDjRoDP.js";import{C as ue,N as pe}from"./NoTasks-Dpxe4xfM.js";import{a as fe}from"./price-C8BXaFbS.js";import{C as _e}from"./CopyToClipboard-jWxr3xe-.js";import{V as he}from"./VideoPlayer-CfppHbtZ.js";import{I as ve}from"./ImageWrapper-_o2mlETS.js";import{B as $e}from"./BotPlaceholder-4xqKcsb2.js";import{l as ge}from"./pagination-CihAE3FS.js";import"./vendor-dayjs-CzbnksQQ.js";import"./vendor-web3-BT8AOwfJ.js";import"./vendor-axios-NIGUFBhG.js";import"./vendor-vue-router-Dj5bcX0v.js";import"./vue-plyr-QZFBikSk.js";const be=b({name:"LayoutSeedance",components:{ElDrawer:K,ElButton:I,FontAwesomeIcon:T},data(){return{drawer:!1}}}),Ee={class:"main flex flex-row flex-1"},ke={class:"config w-[320px] flex-none h-full overflow-y-auto bg-[var(--app-sidebar-bg)] border-r border-[var(--app-border-subtle)]"},ye={class:"result h-full p-6 flex-1 flex flex-col min-w-0 overflow-x-hidden bg-[var(--app-content-bg)]"};function we(e,a,u,f,g,$){const c=t("font-awesome-icon"),l=t("el-button"),m=t("el-drawer");return n(),i("div",Ee,[r("div",ke,[F(e.$slots,"config",{},void 0,!0)]),r("div",ye,[F(e.$slots,"result",{},void 0,!0)]),s(l,{circle:"",class:"menu",onClick:a[0]||(a[0]=d=>e.drawer=!0)},{default:p(()=>[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:p(()=>[F(e.$slots,"config",{},void 0,!0)]),_:3},8,["modelValue"])])}const Se=E(be,[["render",we],["__scopeId","data-v-02e4e4b3"]]),Ve="",Le=b({name:"SeedancePromptInput",components:{ElInput:X,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=Ve)}}),Te={class:"field"},Ie={class:"box"},Ce={class:"title font-bold"};function Ae(e,a,u,f,g,$){const c=t("info-icon"),l=t("el-input");return n(),i("div",Te,[r("div",Ie,[r("h2",Ce,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 De=E(Le,[["render",Ae],["__scopeId","data-v-865909f4"]]),Fe=b({name:"SeedanceModelSelector",components:{ElSelect:U,ElOption:R,InfoIcon:S},data(){return{options:[{value:Z,label:this.$t("seedance.model.seedance10pro")},{value:x,label:this.$t("seedance.model.seedance10proFast")},{value:M,label:this.$t("seedance.model.seedance15pro")},{value:ee,label:this.$t("seedance.model.seedance10liteT2v")},{value:se,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=Y)}}),Re={class:"field"},Ue={class:"label"},Ne={class:"box"},Oe={class:"title font-bold"};function Pe(e,a,u,f,g,$){const c=t("info-icon"),l=t("el-option"),m=t("el-select");return n(),i("div",Re,[r("div",Ue,[r("div",Ne,[r("h2",Oe,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:p(()=>[(n(!0),i(L,null,A(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 Ge=E(Fe,[["render",Pe],["__scopeId","data-v-eaa1425a"]]),Me=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=te)}}),je={class:"field"},Be={class:"label"},ze={class:"box"},qe={class:"title font-bold"};function Ke(e,a,u,f,g,$){const c=t("info-icon"),l=t("el-option"),m=t("el-select");return n(),i("div",je,[r("div",Be,[r("div",ze,[r("h2",qe,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:p(()=>[(n(!0),i(L,null,A(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 Xe=E(Me,[["render",Ke],["__scopeId","data-v-5c809a72"]]),He=b({name:"SeedanceGenerateAudioSwitch",components:{ElSwitch:P,InfoIcon:S},computed:{isSupported(){return this.$store.state.seedance?.config?.model===M},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=oe)}}),Je={key:0,class:"field"},Qe={class:"label"},We={class:"box"},Ye={class:"title font-bold"},Ze={class:"value"};function xe(e,a,u,f,g,$){const c=t("info-icon"),l=t("el-switch");return e.isSupported?(n(),i("div",Je,[r("div",Qe,[r("div",We,[r("h2",Ye,o(e.$t("seedance.name.generateAudio")),1),s(c,{content:e.$t("seedance.description.generateAudio"),class:"info"},null,8,["content"])])]),r("div",Ze,[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"])])])):v("",!0)}const es=E(He,[["render",xe],["__scopeId","data-v-8d716dcc"]]),ss=b({name:"SeedanceFirstFrameImage",components:{ElUpload:G,ElButton:I,InfoIcon:S,FontAwesomeIcon:T,ImagePreview:B},data(){return{fileList:[],uploadUrl:j()+"/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],u=(this.$store.state.seedance?.config?.images||[]).filter(f=>f?.role!=="first_frame");e&&u.push({url:e,role:"first_frame"}),this.$store.commit("seedance/setConfig",{...this.$store.state.seedance?.config,images:u.length>0?u:void 0})},async onSuccess(){this.onSetFirstFrameUrl()},async onRemove(){this.onSetFirstFrameUrl()}}}),ts={class:"relative"},os={class:"flex justify-between"},ns={class:"flex justify-start items-center"},as={class:"text-sm font-bold"};function ls(e,a,u,f,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",ts,[r("div",os,[r("div",ns,[r("span",as,o(e.$t("seedance.name.firstFrame")),1),s(c,{content:e.$t("seedance.description.firstFrame")},null,8,["content"])])]),s(k,{"file-list":e.fileList,"onUpdate:fileList":a[0]||(a[0]=_=>e.fileList=_),name:"file",accept:".png,.jpg,.jpeg,.gif,.bmp,.webp",limit:1,class:"upload-wrapper",multiple:!1,action:e.uploadUrl,"list-type":"picture","on-exceed":e.onExceed,"on-error":e.onError,"on-success":e.onSuccess,"on-remove":e.onRemove,headers:e.headers},{file:p(({file:_})=>[_.url&&_.percentage!==void 0?(n(),w(l,{key:0,url:_.url,name:_.name,percentage:_.percentage,onRemove:V=>e.fileList.splice(e.fileList.indexOf(_),1)},null,8,["url","name","percentage","onRemove"])):v("",!0)]),default:p(()=>[s(d,{round:"",type:"primary",size:"small",class:"btn btn-upload"},{default:p(()=>[s(m,{icon:"fa-solid fa-upload",class:"icon mr-1"}),h(" "+o(e.$t("seedance.button.upload")),1)]),_:1})]),_:1},8,["file-list","action","on-exceed","on-error","on-success","on-remove","headers"])])}const is=E(ss,[["render",ls],["__scopeId","data-v-b49dfa86"]]),rs=b({name:"SeedanceLastFrameImage",components:{ElUpload:G,ElButton:I,ImagePreview:B,InfoIcon:S,FontAwesomeIcon:T},data(){return{fileList:[],uploadUrl:j()+"/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],u=(this.$store.state.seedance?.config?.images||[]).filter(f=>f?.role!=="last_frame");e&&u.push({url:e,role:"last_frame"}),this.$store.commit("seedance/setConfig",{...this.$store.state.seedance?.config,images:u.length>0?u:void 0})},async onSuccess(){this.onSetLastFrameUrl()},async onRemove(){this.onSetLastFrameUrl()}}}),cs={class:"relative"},ds={class:"flex justify-between"},ms={class:"flex justify-start items-center"},us={class:"text-sm font-bold"};function ps(e,a,u,f,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",cs,[r("div",ds,[r("div",ms,[r("span",us,o(e.$t("seedance.name.lastFrame")),1),s(c,{content:e.$t("seedance.description.lastFrame")},null,8,["content"])])]),s(k,{"file-list":e.fileList,"onUpdate:fileList":a[0]||(a[0]=_=>e.fileList=_),name:"file",accept:".png,.jpg,.jpeg,.gif,.bmp,.webp",limit:1,class:"upload-wrapper",multiple:!1,action:e.uploadUrl,"list-type":"picture","on-exceed":e.onExceed,"on-error":e.onError,"on-success":e.onSuccess,"on-remove":e.onRemove,headers:e.headers},{file:p(({file:_})=>[_.url&&_.percentage!==void 0?(n(),w(l,{key:0,url:_.url,name:_.name,percentage:_.percentage,onRemove:V=>e.fileList.splice(e.fileList.indexOf(_),1)},null,8,["url","name","percentage","onRemove"])):v("",!0)]),default:p(()=>[s(d,{round:"",type:"primary",size:"small",class:"btn btn-upload"},{default:p(()=>[s(m,{icon:"fa-solid fa-upload",class:"icon mr-1"}),h(" "+o(e.$t("seedance.button.upload")),1)]),_:1})]),_:1},8,["file-list","action","on-exceed","on-error","on-success","on-remove","headers"])])}const fs=E(rs,[["render",ps],["__scopeId","data-v-12a78496"]]),_s=b({name:"SeedanceServiceTierSelector",components:{ElSelect:U,ElOption:R,InfoIcon:S},data(){return{options:[{value:ae,label:this.$t("seedance.serviceTier.default")},{value:le,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=ne)}}),hs={class:"field"},vs={class:"label"},$s={class:"box"},gs={class:"title font-bold"};function bs(e,a,u,f,g,$){const c=t("info-icon"),l=t("el-option"),m=t("el-select");return n(),i("div",hs,[r("div",vs,[r("div",$s,[r("h2",gs,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:p(()=>[(n(!0),i(L,null,A(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 Es=E(_s,[["render",bs],["__scopeId","data-v-a62125ec"]]),ks=b({name:"SeedanceReturnLastFrameSwitch",components:{ElSwitch:P,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=ie)}}),ys={class:"field"},ws={class:"label"},Ss={class:"box"},Vs={class:"title font-bold"},Ls={class:"value"};function Ts(e,a,u,f,g,$){const c=t("info-icon"),l=t("el-switch");return n(),i("div",ys,[r("div",ws,[r("div",Ss,[r("h2",Vs,o(e.$t("seedance.name.returnLastFrame")),1),s(c,{content:e.$t("seedance.description.returnLastFrame"),class:"info"},null,8,["content"])])]),r("div",Ls,[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 Is=E(ks,[["render",Ts],["__scopeId","data-v-cd179b1c"]]),Cs=b({name:"SeedanceConfigPanel",components:{ElButton:I,FontAwesomeIcon:T,PromptInput:De,ModelSelector:Ge,DurationSelector:Xe,GenerateAudioSwitch:es,ServiceTierSelector:Es,ReturnLastFrameSwitch:Is,FirstFrameImage:is,LastFrameImage:fs,Consumption:ue},emits:["generate"],computed:{config(){return this.$store.state.seedance?.config},consumption(){return fe(this.config,this.service?.cost)},service(){return this.$store.state.seedance?.service}},methods:{onGenerate(){this.$emit("generate")}}}),As={class:"flex flex-col h-full"},Ds={class:"flex-1 overflow-y-auto p-5"},Fs={class:"flex flex-col items-center justify-center px-5 pb-5"};function Rs(e,a,u,f,g,$){const c=t("prompt-input"),l=t("model-selector"),m=t("duration-selector"),d=t("generate-audio-switch"),k=t("service-tier-selector"),_=t("return-last-frame-switch"),V=t("first-frame-image"),D=t("last-frame-image"),N=t("consumption"),z=t("font-awesome-icon"),q=t("el-button");return n(),i("div",As,[r("div",Ds,[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(_,{class:"mb-4"}),s(V,{class:"mb-2"}),s(D,{class:"mb-2"})]),r("div",Fs,[s(N,{value:e.consumption,service:e.service},null,8,["value","service"]),s(q,{type:"primary",class:"btn w-full",round:"",onClick:e.onGenerate},{default:p(()=>[s(z,{icon:"fa-solid fa-magic",class:"mr-2"}),h(" "+o(e.$t("seedance.button.generate")),1)]),_:1},8,["onClick"])])])}const Us=E(Cs,[["render",Rs]]),Ns=b({name:"SeedanceTaskPreview",components:{ElImage:Q,CopyToClipboard:_e,FontAwesomeIcon:T,ElAlert:J,VideoPlayer:he,ElTooltip:H,ElButton:I,ImageWrapper:ve},props:{modelValue:{type:Object,required:!0}},data(){return{seedanceLogo:re}},computed:{video(){return this.modelValue?.response?.data}},methods:{onDownload(e){window.open(e,"_blank")}}}),Os={class:"preview"},Ps={class:"left"},Gs={class:"main"},Ms={class:"bot"},js={class:"datetime"},Bs={class:"info"},zs={key:0,class:"prompt mt-2"},qs={key:0},Ks={key:1},Xs={key:0,class:C({content:!0})},Hs={class:"text-[var(--el-text-color-regular)] text-xs mb-0"},Js={key:1,class:C({content:!0})},Qs={key:0,class:"mb-4"},Ws={key:1,class:"mb-4"},Ys={key:2,class:C({operations:!0,"mt-2":!0,"mb-2":!0})},Zs={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},xs={key:1,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},et={key:2,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},st={key:0},tt={key:1},ot={key:3,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},nt={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},at={key:4,class:"text-[var(--el-text-color-regular)] text-xs mb-0"},lt={key:2,class:C({content:!0})},it={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},rt={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},ct={key:1,class:"text-[var(--el-text-color-regular)] text-xs mb-0"},dt={key:3,class:C({content:!0})},mt={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},ut={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-0"};function pt(e,a,u,f,g,$){const c=t("el-image"),l=t("font-awesome-icon"),m=t("copy-to-clipboard"),d=t("el-alert"),k=t("video-player"),_=t("image-wrapper"),V=t("el-button"),D=t("el-tooltip");return n(),i("div",Os,[r("div",Ps,[s(c,{src:e.seedanceLogo,class:"avatar"},null,8,["src"])]),r("div",Gs,[r("div",Ms,[h(o(e.$t("seedance.name.seedanceBot"))+" ",1),r("span",js,o(e.$dayjs.format(""+new Date(parseFloat((e.modelValue?.created_at||"").toString())*1e3))),1)]),r("div",Bs,[e.modelValue?.request?.prompt?(n(),i("p",zs,[h(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)):v("",!0):(n(),i("span",qs," - ("+o(e.$t("seedance.status.pending"))+") ",1))])):v("",!0)]),e.modelValue?.response?e.modelValue?.response?.success===!0?(n(),i("div",Js,[e.video?.video_url?(n(),i("div",Qs,[s(k,{src:e.video?.video_url},null,8,["src"])])):v("",!0),e.video?.last_frame_url?(n(),i("div",Ws,[s(_,{src:e.video?.last_frame_url,"raw-src":e.video?.last_frame_url},null,8,["src","raw-src"])])):v("",!0),e.video?.video_url?(n(),i("div",Ys,[s(D,{class:"box-item",effect:"dark",content:e.$t("seedance.message.downloadVideo"),placement:"top-start"},{default:p(()=>[s(V,{type:"info",size:"small",class:"btn-action",onClick:a[0]||(a[0]=W(N=>e.onDownload(e.video?.video_url),["stop"]))},{default:p(()=>[h(o(e.$t("seedance.button.download")),1)]),_:1})]),_:1},8,["content"])])):v("",!0),s(d,{closable:!1,class:"mt-2 success"},{default:p(()=>[e.modelValue?.request?.model?(n(),i("p",Zs,[s(l,{icon:"fa-solid fa-cube",class:"mr-1"}),h(" "+o(e.$t("seedance.name.model"))+": "+o(e.modelValue?.request?.model),1)])):v("",!0),e.video?.duration?(n(),i("p",xs,[s(l,{icon:"fa-solid fa-clock",class:"mr-1"}),h(" "+o(e.$t("seedance.name.duration"))+": "+o(e.video?.duration)+"s ",1)])):v("",!0),e.video?.resolution?(n(),i("p",et,[s(l,{icon:"fa-solid fa-expand",class:"mr-1"}),h(" "+o(e.$t("seedance.name.resolution"))+": "+o(e.video?.resolution)+" ",1),e.video?.ratio?(n(),i("span",st," · "+o(e.video?.ratio),1)):v("",!0),e.video?.framespersecond?(n(),i("span",tt," · "+o(e.video?.framespersecond)+"fps",1)):v("",!0)])):v("",!0),e.modelValue?.request?.generate_audio?(n(),i("p",ot,[s(l,{icon:"fa-solid fa-volume-up",class:"mr-1"}),h(" "+o(e.$t("seedance.name.generateAudio"))+": "+o(e.$t("seedance.button.on")),1)])):v("",!0),r("p",nt,[s(l,{icon:"fa-solid fa-magic",class:"mr-1"}),h(" "+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",at,[s(l,{icon:"fa-solid fa-hashtag",class:"mr-1"}),h(" "+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"])])):v("",!0)]),_:1})])):e.modelValue?.response?.success===!1?(n(),i("div",lt,[s(d,{closable:!1,class:"failure"},{template:p(()=>[s(l,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),h(" "+o(e.$t("seedance.name.failure")),1)]),default:p(()=>[r("p",it,[s(l,{icon:"fa-solid fa-magic",class:"mr-1"}),h(" "+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",rt,[s(l,{icon:"fa-solid fa-circle-info",class:"mr-1"}),h(" "+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"])])):v("",!0),e.modelValue?.response?.trace_id?(n(),i("p",ct,[s(l,{icon:"fa-solid fa-hashtag",class:"mr-1"}),h(" "+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"])])):v("",!0)]),_:1})])):(n(),i("div",dt,[s(d,{closable:!1,class:"info"},{template:p(()=>[s(l,{icon:"fa-solid fa-circle-info",class:"mr-1"}),h(" "+o(e.$t("seedance.name.status")),1)]),default:p(()=>[r("p",mt,[s(l,{icon:"fa-solid fa-magic",class:"mr-1"}),h(" "+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",ut,[s(l,{icon:"fa-solid fa-hashtag",class:"mr-1"}),h(" "+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"])])):v("",!0)]),_:1})])):(n(),i("div",Xs,[s(d,{closable:!1,class:"info"},{template:p(()=>[s(l,{icon:"fa-regular fa-clock",class:"mr-1"}),h(" "+o(e.$t("seedance.status.pending")),1)]),default:p(()=>[r("p",Hs,[s(l,{icon:"fa-solid fa-magic",class:"mr-1"}),h(" "+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 ft=E(Ns,[["render",pt],["__scopeId","data-v-52a2f1ad"]]),_t=b({name:"SeedanceRecentPanel",components:{TaskPreview:ft,BotPlaceholder:$e,NoTasks:pe,ScrollList:me},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?.()}}}),ht={key:0},vt={key:2,class:"w-full h-full flex items-center justify-center"};function $t(e,a,u,f,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",ht,[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:p(()=>[(n(!0),i(L,null,A(e.tasks?.items,k=>(n(),w(l,{key:k.id,"model-value":k},null,8,["model-value"]))),128))]),_:1},8,["loading"])):v("",!0),e.tasks?.items?.length===0?(n(),i("div",vt,[s(d)])):v("",!0)],64)}const gt=E(_t,[["render",$t]]),bt="https://webhook.acedata.cloud/seedance",Et=b({name:"SeedanceIndex",components:{ConfigPanel:Us,Layout:Se,RecentPanel:gt},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 ge({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:u,createdAtMax:f}=e||{};this.fetchingTasks=!0;try{await this.$store.dispatch("seedance/getTasks",{limit:a,createdAtMin:u,createdAtMax:f})}finally{this.fetchingTasks=!1}},async onGenerate(){const e={...this.config||{}};if(typeof e?.prompt=="string"&&(e.prompt=e.prompt.trim(),e.prompt||delete e.prompt),Array.isArray(e?.images)){e.images=e.images.filter(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 u={...e,callback_url:bt},f=this.credential?.token;if(!f){console.error("no token specified");return}y.info(this.$t("seedance.message.startingTask")),ce.generate(u,{token:f}).then(()=>{y.success(this.$t("seedance.message.startTaskSuccess"))}).catch(g=>{const $=g?.response?.data;$?.error?.code===de?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 kt(e,a,u,f,g,$){const c=t("config-panel"),l=t("recent-panel"),m=t("layout");return n(),w(m,null,{config:p(()=>[s(c,{onGenerate:e.onGenerate},null,8,["onGenerate"])]),result:p(()=>[s(l,{ref:"recentPanel",loading:e.loadingMore,onReachTop:e.onReachTop},null,8,["loading","onReachTop"])]),_:1})}const jt=E(Et,[["render",kt]]);export{jt as default};
|