@acedatacloud/nexior 3.180.0 → 3.182.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/assets/{Auth-BpADPmFm.js → Auth-6X1mqpdl.js} +1 -1
- package/dist/assets/{BotPlaceholder-DTEpzCnw.js → BotPlaceholder-Lxsi7yXh.js} +1 -1
- package/dist/assets/{Callback-CvaSGXcq.js → Callback-BwFu4gAH.js} +1 -1
- package/dist/assets/Console-v23lzbjT.js +1 -0
- package/dist/assets/{Consumption-DMPBBMuR.js → Consumption-C8V--EC7.js} +1 -1
- package/dist/assets/{Conversation-Pd04S97_.js → Conversation-DUjXzYWV.js} +1 -1
- package/dist/assets/CopyToClipboard-BN_GVB08.js +1 -0
- package/dist/assets/{Detail-Dx8IZlZZ.js → Detail-D4BUedpc.js} +2 -2
- package/dist/assets/EditArray-B4LwGKJc.css +1 -0
- package/dist/assets/EditArray-WmZL0DKr.js +3 -0
- package/dist/assets/{Extra-Ck8qQuK9.js → Extra-DiRFXb8c.js} +1 -1
- package/dist/assets/{FilePreview-e0kF7t1p.js → FilePreview-muQuClw5.js} +1 -1
- package/dist/assets/{History-u5-9R89B.js → History-CKw6dhCt.js} +1 -1
- package/dist/assets/{IconPark.vue_vue_type_script_setup_true_lang-Bf0qaWYp.js → IconPark.vue_vue_type_script_setup_true_lang-CPDlgXzl.js} +1 -1
- package/dist/assets/{ImagePreview-x5gHatsw.js → ImagePreview-DRhaeMj1.js} +1 -1
- package/dist/assets/{ImageWrapper-oFaymVG-.js → ImageWrapper-CeEPqZle.js} +1 -1
- package/dist/assets/{Index-CJzS2dkP.js → Index-3SAJNeKz.js} +1 -1
- package/dist/assets/{Index-Bg98A5WQ.js → Index-B07yTrTm.js} +1 -1
- package/dist/assets/{Index-CNq51Ax6.js → Index-BZ0MNZmr.js} +1 -1
- package/dist/assets/{Index-Djo_X1s1.js → Index-BaSAEA84.js} +1 -1
- package/dist/assets/{Index-CAkVs0OI.js → Index-Bd4T6fOJ.js} +1 -1
- package/dist/assets/{Index-CoX40bsv.js → Index-BjXk8yBc.js} +1 -1
- package/dist/assets/{Index-DtRf-hFY.js → Index-C2-oXCwI.js} +1 -1
- package/dist/assets/{Index-vOy8RpVF.js → Index-C4qbBhyv.js} +1 -1
- package/dist/assets/{Index-DJsd4lk0.js → Index-CQb9ZS4e.js} +1 -1
- package/dist/assets/{Index-B5BIv4z_.js → Index-CWAmktLN.js} +1 -1
- package/dist/assets/Index-CfMHlHHp.js +1 -0
- package/dist/assets/{Index-CAuBdDhv.js → Index-Ci-DLJ8G.js} +1 -1
- package/dist/assets/{Index-B-tNFouU.js → Index-CxQ2t71p.js} +1 -1
- package/dist/assets/Index-DAqmhqGb.css +1 -0
- package/dist/assets/{Index-BLkWqGJS.js → Index-DHw-mL0t.js} +1 -1
- package/dist/assets/{Index-BXJVeP2D.js → Index-DTuQKUWG.js} +1 -1
- package/dist/assets/{Index-Lcg3AFvy.js → Index-DU0-mCcU.js} +1 -1
- package/dist/assets/{Index--FEV9Ov0.js → Index-DXKyyNwA.js} +1 -1
- package/dist/assets/{Index-BCATh4ws.js → Index-Dadc27Wb.js} +1 -1
- package/dist/assets/{Index-CO0woLC1.js → Index-DfqkgxvZ.js} +1 -1
- package/dist/assets/{Index-Dj4i6q6e.js → Index-DiP8LD1B.js} +1 -1
- package/dist/assets/{Index-CmBA5bE7.js → Index-Dr98GZo_.js} +1 -1
- package/dist/assets/{Index-BCj071ug.js → Index-eMhNtBK1.js} +1 -1
- package/dist/assets/{Index-DHvwPa3Q.js → Index-gnmXAcmI.js} +1 -1
- package/dist/assets/{Index-D-NEhoe0.js → Index-hYpEH6nt.js} +2 -2
- package/dist/assets/{Invitees-NJRfVH9p.js → Invitees-C3QhlXSH.js} +1 -1
- package/dist/assets/{List-Dn2KO9cD.js → List-4bTO3JTB.js} +1 -1
- package/dist/assets/{List-DKIscQi9.js → List-DEdrm-nY.js} +1 -1
- package/dist/assets/{List-BW36ydPs.js → List-bzwKqmq1.js} +1 -1
- package/dist/assets/Main-idnw3o_6.js +1 -0
- package/dist/assets/{Navigator-DOpj6N4Y.css → Navigator-DxOb5Va_.css} +1 -1
- package/dist/assets/Navigator-kfceBA72.js +1 -0
- package/dist/assets/{NoTasks-CmqpRtUm.js → NoTasks-B39yxIND.js} +1 -1
- package/dist/assets/{NotFound-D2b3079W.js → NotFound-CypOK0ch.js} +1 -1
- package/dist/assets/{OAuthCallback-CLPHkQBr.js → OAuthCallback-DWRm086p.js} +1 -1
- package/dist/assets/{Pagination-57tBa104.js → Pagination-BG6Ggelj.js} +1 -1
- package/dist/assets/{Status-5kIwSRWn.js → Status-C_f6q1WW.js} +1 -1
- package/dist/assets/{Subscribe-CV2JV6Lb.js → Subscribe-BvyytA7O.js} +1 -1
- package/dist/assets/{VideoPlayer-BxpwvKKI.js → VideoPlayer-DeefBCor.js} +1 -1
- package/dist/assets/{_Uint8Array-EODQ339i.js → _Uint8Array-0ZrewKty.js} +1 -1
- package/dist/assets/{_baseClone-C9Ert7_H.js → _baseClone-I25WNFTn.js} +1 -1
- package/dist/assets/{_baseIteratee-D-GN-znu.js → _baseIteratee-BaCwCO2P.js} +1 -1
- package/dist/assets/{_initCloneObject-C9kLDyf5.js → _initCloneObject-BBp5M13E.js} +1 -1
- package/dist/assets/{add-DWLXAosA.js → add-DyXGxnzV.js} +1 -1
- package/dist/assets/{all-wallets-ZhhNa_-p.js → all-wallets-BUUST1Sc.js} +1 -1
- package/dist/assets/{app-store-vZCE9X5W.js → app-store-Dl3xl-LV.js} +1 -1
- package/dist/assets/{apple-BhvzFHxr.js → apple-CX-4lCfg.js} +1 -1
- package/dist/assets/{arrow-bottom-BEXGfU6b.js → arrow-bottom-BX7yGSYI.js} +1 -1
- package/dist/assets/{arrow-bottom-circle-_FT8K3CU.js → arrow-bottom-circle-DjsZtL6-.js} +1 -1
- package/dist/assets/{arrow-left-CEJnKURW.js → arrow-left-Cbl-qE3A.js} +1 -1
- package/dist/assets/{arrow-right-3xRI5MQW.js → arrow-right-DDlCrcCD.js} +1 -1
- package/dist/assets/{arrow-top-Aig_Mo1e.js → arrow-top-bdCE740k.js} +1 -1
- package/dist/assets/{avatar-BKmB2yFG.js → avatar-CLE3zRzF.js} +1 -1
- package/dist/assets/{bank-BOgU6s0T.js → bank-DCEammxP.js} +1 -1
- package/dist/assets/{basic-9H8_PY0S.js → basic-s9E4WVEL.js} +1 -1
- package/dist/assets/{browser-BFt1Ja5u.js → browser-B5z2toLb.js} +1 -1
- package/dist/assets/{byokCredential-DO6__Wzx.js → byokCredential-YuAk47l8.js} +1 -1
- package/dist/assets/{card-0aD5PdA1.js → card-BKjC1ffr.js} +1 -1
- package/dist/assets/{castArray-BIv4qPOp.js → castArray-MGnU8s5j.js} +1 -1
- package/dist/assets/{chat-dz6Snlao.js → chat-BKk_VFNZ.js} +1 -1
- package/dist/assets/{checkmark-Cvb1aZ9H.js → checkmark-DRw3QBZa.js} +1 -1
- package/dist/assets/{checkmark-bold-D05MVTis.js → checkmark-bold-5jxRecSi.js} +1 -1
- package/dist/assets/{chevron-bottom-B6FsF3BN.js → chevron-bottom-NFvbnY6T.js} +1 -1
- package/dist/assets/{chevron-left-DnDzzbh0.js → chevron-left-SaBJW3ZO.js} +1 -1
- package/dist/assets/{chevron-right-Cz2fJ0hn.js → chevron-right-v5wE5-dH.js} +1 -1
- package/dist/assets/{chevron-top-APp_W4hS.js → chevron-top-yBdUk3Ve.js} +1 -1
- package/dist/assets/{chrome-store-kCCHsHsq.js → chrome-store-B6iK7Afk.js} +1 -1
- package/dist/assets/{clock-Bg44Bcnq.js → clock-DLHmifEq.js} +1 -1
- package/dist/assets/{close-ClV19Bfe.js → close-wqBOLt_K.js} +1 -1
- package/dist/assets/{coinPlaceholder-jonIyr4t.js → coinPlaceholder-CCnF5z3R.js} +1 -1
- package/dist/assets/{compass-Bmly0t8R.js → compass-BxuVFOYv.js} +1 -1
- package/dist/assets/{copy-Cv2E-aLt.js → copy-abAywOQZ.js} +1 -1
- package/dist/assets/{createTaskActions-CN3eJ4fN.js → createTaskActions-D_Ic5id4.js} +1 -1
- package/dist/assets/{cursor-CnOHno8W.js → cursor-DaMH_y6m.js} +1 -1
- package/dist/assets/{cursor-transparent-BSvMXnbY.js → cursor-transparent-DEfjj7og.js} +1 -1
- package/dist/assets/{debounce-B0MxE3fu.js → debounce-BKi6w8Na.js} +1 -1
- package/dist/assets/{desktop-DkD1R8WW.js → desktop-DeP2huIA.js} +1 -1
- package/dist/assets/{disconnect-f47QFnvQ.js → disconnect-DQ76KeBM.js} +1 -1
- package/dist/assets/{discord-DXJ9TGlJ.js → discord-qbKc2oSr.js} +1 -1
- package/dist/assets/{distribution-DJtuHCar.js → distribution-xaXFj3l3.js} +1 -1
- package/dist/assets/{dropdown-Ce1AK3uQ.js → dropdown-Ra7EQWbN.js} +1 -1
- package/dist/assets/{etherscan-DidVyCor.js → etherscan-Dkj_WBWF.js} +1 -1
- package/dist/assets/{exclamation-triangle-k96VwheC.js → exclamation-triangle-CI4Z05nK.js} +1 -1
- package/dist/assets/{extension-ggUyoV83.js → extension-CY6KhFdU.js} +1 -1
- package/dist/assets/{external-link-BnMtI3FG.js → external-link-DHoj_H1Y.js} +1 -1
- package/dist/assets/{facebook-CrCILuGl.js → facebook-qN8I9Cty.js} +1 -1
- package/dist/assets/{farcaster-C8m9d8vC.js → farcaster-GQrBtGVh.js} +1 -1
- package/dist/assets/{filters-C807iy_w.js → filters-Ba_Ga_e9.js} +1 -1
- package/dist/assets/{github-DJkNzXmW.js → github-B0WVBSxQ.js} +1 -1
- package/dist/assets/{google-xyDUgP5N.js → google-C6xN7Cqd.js} +1 -1
- package/dist/assets/{help-circle-B8YCUgu-.js → help-circle-CLfAFAqo.js} +1 -1
- package/dist/assets/{id-DztE2FgN.js → id-DsRkOtO0.js} +1 -1
- package/dist/assets/{image-BN3-CK_O.js → image-TiUBe44k.js} +1 -1
- package/dist/assets/{index-DdFIfauK.js → index--DNM6FzG.js} +1 -1
- package/dist/assets/index-1duw3meC.js +1 -0
- package/dist/assets/{index-ACNZqLLg.js → index-1uyc0tg8.js} +1 -1
- package/dist/assets/{index-W-rm99M4.js → index-4UPfIKvp.js} +1 -1
- package/dist/assets/{index-CFdzgNDv.js → index-B9ylfZLv.js} +1 -1
- package/dist/assets/{index-DPA5aWv6.js → index-BDlHM8zw.js} +1 -1
- package/dist/assets/{index-Cxq8OLiq.js → index-BELgNDfW.js} +1 -1
- package/dist/assets/{index-DuIEvltq.js → index-BGlYeKl6.js} +1 -1
- package/dist/assets/{index-DA0rWTXC.js → index-BHc6TkFb.js} +1 -1
- package/dist/assets/{index-BouG-wB2.js → index-BKD8LGUx.js} +3 -3
- package/dist/assets/{index-Dd5yD7h-.js → index-BN_krRZf.js} +1 -1
- package/dist/assets/{index--Op4UAcU.js → index-BfcZVTcY.js} +1 -1
- package/dist/assets/{index-DYyaF_xi.js → index-Bg2TrlsN.js} +1 -1
- package/dist/assets/{index-B302Rib8.js → index-Bjh2SIj8.js} +2 -2
- package/dist/assets/{index-CXaVYn6Y.js → index-BohXbZ2r.js} +1 -1
- package/dist/assets/{index-DcrqZBpJ.js → index-BptLZSby.js} +1 -1
- package/dist/assets/{index-CQPQzwTL.js → index-Bu55nuxi.js} +1 -1
- package/dist/assets/{index-Cla-BlAM.js → index-Bv-1-Obz.js} +1 -1
- package/dist/assets/{index-cdSK5CZ9.js → index-BxMpD69n.js} +1 -1
- package/dist/assets/{index-D2jKSXQd.js → index-By5g2siy.js} +1 -1
- package/dist/assets/{index-BiQIc3M8.js → index-BzOLOniL.js} +1 -1
- package/dist/assets/{index-CmlzWwzm.js → index-C0525YW1.js} +1 -1
- package/dist/assets/{index-BcW07t7s.js → index-C35824SI.js} +1 -1
- package/dist/assets/{index-gbvrQXjs.js → index-C4zRizPG.js} +1 -1
- package/dist/assets/{index-Cqvt3jGg.js → index-C6A_7e6l.js} +1 -1
- package/dist/assets/index-C769Onuz.js +569 -0
- package/dist/assets/{index-DFih_nRH.js → index-CCXRmNud.js} +1 -1
- package/dist/assets/{index-By5CaVpU.js → index-CWBk6P60.js} +1 -1
- package/dist/assets/{index-DgQtBpgq.js → index-Cgpguu1p.js} +1 -1
- package/dist/assets/{index-Bxr0TOHo.js → index-CiH560eB.js} +1 -1
- package/dist/assets/{index-B1ZxJleg.js → index-Cku6m8Hl.js} +1 -1
- package/dist/assets/{index-DWFkDzR1.js → index-CmztlnDz.js} +1 -1
- package/dist/assets/{index-CcHjHBm4.js → index-CqA61rPt.js} +1 -1
- package/dist/assets/{index-DXCmq07K.js → index-D3N5xAaQ.js} +1 -1
- package/dist/assets/{index-BKx1Dekx.js → index-D3Z-FXjx.js} +1 -1
- package/dist/assets/{index-kztYCQVp.js → index-D59LoxaK.js} +5 -5
- package/dist/assets/{index-lG9fEEK_.js → index-D69zTo5S.js} +1 -1
- package/dist/assets/{index-CdHfJxny.js → index-D9cIVB8Y.js} +1 -1
- package/dist/assets/{index-C0zlwvhh.js → index-DGqxXaJY.js} +1 -1
- package/dist/assets/{index-BwY9SWpE.js → index-DH4uKXiW.js} +1 -1
- package/dist/assets/{index-BNPtKWcu.js → index-DTQEny4s.js} +1 -1
- package/dist/assets/{index-Cad9kjkh.js → index-DZtTjlTV.js} +1 -1
- package/dist/assets/{index-Bc1_g4iK.js → index-D_MhFSvo.js} +1 -1
- package/dist/assets/{index-B4bp0Vzu.js → index-DbuHj5T9.js} +1 -1
- package/dist/assets/{index-lq2UfKTH.js → index-DkdMMCO4.js} +1 -1
- package/dist/assets/{index-DNHhSuIO.js → index-DsyghaSY.js} +1 -1
- package/dist/assets/{index-CZCiqoix.js → index-DxhTeFwV.js} +1 -1
- package/dist/assets/{index-Cbc_GLSc.js → index-JVpl38TU.js} +1 -1
- package/dist/assets/{index-Bmi-jHmT.js → index-M199edT7.js} +1 -1
- package/dist/assets/{index-CeCTYOJy.js → index-OC5H7wwH.js} +1 -1
- package/dist/assets/{index-DYOLDgNJ.js → index-R4G85ajp.js} +1 -1
- package/dist/assets/index-_gGwul3Q.js +1 -0
- package/dist/assets/{index-CCovkvn5.js → index-bETiJs4h.js} +1 -1
- package/dist/assets/{index-0SjBTU4O.js → index-bHokQmd3.js} +1 -1
- package/dist/assets/{index-DZh1LeXf.js → index-drCz42kb.js} +1 -1
- package/dist/assets/{index-CKL3SvTa.js → index-g-gHj3Cv.js} +2 -2
- package/dist/assets/{index-Cl4TSwTU.js → index-jpMgWmQz.js} +1 -1
- package/dist/assets/{index-CQulqs97.js → index-oLjNVXOi.js} +1 -1
- package/dist/assets/{index-DB-rhSNi.js → index-raVMjB8K.js} +1 -1
- package/dist/assets/{index-BHQ7eTJH.js → index-trZQ27KC.js} +1 -1
- package/dist/assets/{index.browser.esm-CI8SNWZs.js → index.browser.esm-BeHN_Rbu.js} +1 -1
- package/dist/assets/{index.es-BtXQMTTn.js → index.es-8EnvYue2.js} +1 -1
- package/dist/assets/{info-Js1ugMXt.js → info-CzITGHga.js} +1 -1
- package/dist/assets/{info-circle-zW8AAPdd.js → info-circle-BFnSuq9w.js} +1 -1
- package/dist/assets/{isEqual-BOBcA1pM.js → isEqual-CCeFlspg.js} +1 -1
- package/dist/assets/{isPlainObject-Da2tOs3J.js → isPlainObject-CECw9khe.js} +1 -1
- package/dist/assets/{lightbulb-CvCGS_G-.js → lightbulb-DJZxbv8Y.js} +1 -1
- package/dist/assets/{mail-C0Y2c5V7.js → mail-DDa6iP38.js} +1 -1
- package/dist/assets/{midjourney-C68ua25r.js → midjourney-IMF_vy0S.js} +1 -1
- package/dist/assets/{mobile-CsV-T1N1.js → mobile-BaOS_gqa.js} +1 -1
- package/dist/assets/{more-C4jK-b4w.js → more-sJdHf_7d.js} +1 -1
- package/dist/assets/{network-placeholder-DbeCXw_W.js → network-placeholder-AnJ5u6IZ.js} +1 -1
- package/dist/assets/{nftPlaceholder-BndXXU4L.js → nftPlaceholder-B_7vXqqv.js} +1 -1
- package/dist/assets/{off-C0_-xEPJ.js → off-B2bvWQyf.js} +1 -1
- package/dist/assets/{order-CzgaVBLL.js → order-C9CoClaY.js} +1 -1
- package/dist/assets/{pagination-db75yZ2u.js → pagination-B_rXIxYu.js} +1 -1
- package/dist/assets/{play-store-WSFngJtS.js → play-store-3QDjuahV.js} +1 -1
- package/dist/assets/{plus-BXh_h22h.js → plus-BG6F7nun.js} +1 -1
- package/dist/assets/{price-DZ9Sg1iv.js → price-DeJrvwM_.js} +1 -1
- package/dist/assets/{producer-CCtqcah9.js → producer-Bakn_qrx.js} +1 -1
- package/dist/assets/{qr-code-asNAyF8b.js → qr-code-CsORU0vE.js} +1 -1
- package/dist/assets/{recycle-horizontal-hO6W5I9V.js → recycle-horizontal-UdrOnvUL.js} +1 -1
- package/dist/assets/{refresh-DzCts6Rn.js → refresh-BMXKHwKj.js} +1 -1
- package/dist/assets/{reown-logo-DuvK6GDU.js → reown-logo-D42nFUVV.js} +1 -1
- package/dist/assets/{search-CbH_rm3L.js → search-t6dyMOdF.js} +1 -1
- package/dist/assets/{secp256k1-qMEEtWPE.js → secp256k1-Dg6Q2hp-.js} +1 -1
- package/dist/assets/{secp256k1-BA_ms8uC.js → secp256k1-eVBltpi-.js} +1 -1
- package/dist/assets/{seedream-DKCPl3Jn.js → seedream-DN5QwC3v.js} +1 -1
- package/dist/assets/{send-BqFgRWQT.js → send-CRYD7HpD.js} +1 -1
- package/dist/assets/{service-D7dsWJD7.js → service-B26pVMqm.js} +1 -1
- package/dist/assets/site-32xqa8D1.js +1 -0
- package/dist/assets/site-D7iSTGkd.js +1 -0
- package/dist/assets/{solana-wallets-B39LlrmP.js → solana-wallets-39tT_Je8.js} +2 -2
- package/dist/assets/{solana-wallets-vue-XI3-sQq2.js → solana-wallets-vue-_p4GocV7.js} +1 -1
- package/dist/assets/{suno-BN-Z5VzV.js → suno-Dqt3azYs.js} +1 -1
- package/dist/assets/{swapHorizontal-DzkxSmFu.js → swapHorizontal-BYM98rZM.js} +1 -1
- package/dist/assets/{swapHorizontalBold-DNwB5xDc.js → swapHorizontalBold-CPIdBAg3.js} +1 -1
- package/dist/assets/{swapHorizontalMedium-B66WWX6r.js → swapHorizontalMedium-BP_SuU2C.js} +1 -1
- package/dist/assets/{swapHorizontalRoundedBold-CaCZapdg.js → swapHorizontalRoundedBold-DcTbOrJm.js} +1 -1
- package/dist/assets/{swapVertical-CLPOXp9w.js → swapVertical-DzPu1kLg.js} +1 -1
- package/dist/assets/{telegram-CqHFwPG7.js → telegram-CAQ27ZGF.js} +1 -1
- package/dist/assets/{three-dots-CTP1bKpo.js → three-dots-DmSsduku.js} +1 -1
- package/dist/assets/{twitch-BIbk2nU6.js → twitch-CmW6WEaJ.js} +1 -1
- package/dist/assets/{twitterIcon-BE0eldq1.js → twitterIcon-CbO2T_yl.js} +1 -1
- package/dist/assets/{typescript-CNgTribB.js → typescript-C3d9MWp0.js} +1 -1
- package/dist/assets/{use-form-item-CxHQfC-K.js → use-form-item-Ck1g57NC.js} +1 -1
- package/dist/assets/validator-DZuVAlZj.js +1 -0
- package/dist/assets/{verify-QTnwQHBJ.js → verify-BhUp7Vcj.js} +1 -1
- package/dist/assets/{verify-filled-VxPA5TLK.js → verify-filled-BwETHYPd.js} +1 -1
- package/dist/assets/{w3m-modal-fle5SmIT.js → w3m-modal-Dy5Z9rEK.js} +1 -1
- package/dist/assets/{wallet-LKKEO5_g.js → wallet-D8aGsnhg.js} +1 -1
- package/dist/assets/{wallet-placeholder-DTPWVwjl.js → wallet-placeholder-DuyIewpk.js} +1 -1
- package/dist/assets/{walletconnect-DFKq09k2.js → walletconnect-BV3eyUfU.js} +1 -1
- package/dist/assets/{warning-circle-_RZV820I.js → warning-circle-Brg9eNGT.js} +1 -1
- package/dist/assets/{web-CfA2UQvY.js → web-D74e-2It.js} +1 -1
- package/dist/assets/{web-dyi4qN_O.js → web-Dfh_APjW.js} +1 -1
- package/dist/assets/{x-CL-MGgur.js → x-DFMtbObF.js} +1 -1
- package/dist/index.html +1 -1
- package/package.json +2 -1
- package/dist/assets/Console-B1H-71mK.js +0 -1
- package/dist/assets/CopyToClipboard-0KzHJ2n1.js +0 -1
- package/dist/assets/EditArray-CkISlkMf.js +0 -1
- package/dist/assets/EditArray-D4AV_MUf.css +0 -1
- package/dist/assets/Index-HCrfaVk5.js +0 -1
- package/dist/assets/Index-wsSUi0hI.css +0 -1
- package/dist/assets/Main-Crs8LiGm.js +0 -1
- package/dist/assets/Navigator-TuAasXNn.js +0 -1
- package/dist/assets/index-BPZpjd75.js +0 -1
- package/dist/assets/index-Casjirib.js +0 -1
- package/dist/assets/index-sn-M2G3j.js +0 -569
- package/dist/assets/site-DAbPqTBR.js +0 -1
- package/dist/assets/site-yTTARj-x.js +0 -1
- package/dist/assets/validator-sGNBghJE.js +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
import{F as C}from"./index.es-BtXQMTTn.js";import{E as T}from"./index-CXaVYn6Y.js";import{E as M}from"./index-BPZpjd75.js";import{d as v,H as r,E as c,z as L,C as t,y as d,D as o,q as s,F as l,O as I,N as S,x as $,I as f,J as m,M as O,Q as U}from"./vendor-vue-NSDaktjZ.js";import{G as w,bl as j,cr as B,b4 as F,S as D,cs as N}from"./index-sn-M2G3j.js";import{a as q,b as z}from"./wan-DKq-jYOo.js";import{E as R,a as G}from"./index-BHQ7eTJH.js";import{p as W}from"./pasteUploadMixin-BurWbGNQ.js";import{I as P,S as H,l as J}from"./pagination-db75yZ2u.js";import{I as K}from"./ImagePreview-x5gHatsw.js";import{E as Q}from"./index--Op4UAcU.js";import{E as V}from"./index-BcW07t7s.js";import{E as X}from"./index-Cqvt3jGg.js";import{C as Y}from"./Consumption-DMPBBMuR.js";import{a as Z}from"./price-DZ9Sg1iv.js";import{b as x}from"./errorCode-Cqj9Td_Z.js";import{C as ee}from"./CopyToClipboard-0KzHJ2n1.js";import{V as te}from"./VideoPlayer-BxpwvKKI.js";import{E as oe}from"./index-BwY9SWpE.js";import{E as se}from"./index-C0zlwvhh.js";import{E as ne}from"./index-cdSK5CZ9.js";import{B as ae}from"./BotPlaceholder-DTEpzCnw.js";import{N as le}from"./NoTasks-CmqpRtUm.js";import"./use-form-item-CxHQfC-K.js";import"./index-BuyEbX8F.js";import"./vendor-axios-B8_nURbH.js";import"./vendor-dayjs-v0j1UNZp.js";import"./vendor-vue-router-Kg6s1a65.js";import"./index-DNHhSuIO.js";import"./typescript-CNgTribB.js";import"./index-Casjirib.js";import"./strings-beZM2Y-f.js";import"./isEqual-BOBcA1pM.js";import"./_Uint8Array-EODQ339i.js";import"./castArray-BIv4qPOp.js";import"./debounce-B0MxE3fu.js";import"./_baseIteratee-D-GN-znu.js";import"./index-Bmi-jHmT.js";import"./index-B302Rib8.js";import"./_baseClone-C9Ert7_H.js";import"./_initCloneObject-C9kLDyf5.js";import"./index-CcHjHBm4.js";import"./vue-plyr-BO2nlN4c.js";import"./index-ACNZqLLg.js";const re=v({name:"LayoutWan",components:{ElDrawer:M,ElButton:T,FontAwesomeIcon:C},data(){return{drawer:!1}}}),ie={class:"main flex flex-row flex-1"},ce={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 ue(e,n,h,_,b,k){const u=o("font-awesome-icon"),p=o("el-button"),a=o("el-drawer");return s(),r("div",ie,[c("div",ce,[L(e.$slots,"config",{},void 0,!0)]),c("div",de,[L(e.$slots,"result",{},void 0,!0)]),t(p,{circle:"",class:"menu",onClick:n[0]||(n[0]=g=>e.drawer=!0)},{default:d(()=>[t(u,{icon:"fa-solid fa-magic"})]),_:1}),t(a,{modelValue:e.drawer,"onUpdate:modelValue":n[1]||(n[1]=g=>e.drawer=g),direction:"ltr","with-header":!1,size:"340px"},{default:d(()=>[L(e.$slots,"config",{},void 0,!0)]),_:3},8,["modelValue"])])}const pe=w(re,[["render",ue],["__scopeId","data-v-37ba1764"]]),me=v({name:"ModelSelector",components:{ElSelect:G,ElOption:R},data(){return{}},computed:{options(){return[{value:"wan2.6-t2v",label:this.$t("wan.button.modelT2v")},{value:"wan2.6-i2v",label:this.$t("wan.button.modelI2v")},{value:"wan2.6-i2v-flash",label:this.$t("wan.button.modelI2vFlash")},{value:"wan2.6-r2v",label:this.$t("wan.button.modelR2v")}]},value:{get(){return this.$store.state.wan?.config?.model},set(e){this.$store.commit("wan/setConfig",{...this.$store.state.wan?.config,model:e})}}},mounted(){this.value||(this.value=q)}}),fe={class:"field"},he={class:"title font-bold"},_e={class:"float-left"};function ge(e,n,h,_,b,k){const u=o("el-option"),p=o("el-select");return s(),r("div",fe,[c("h2",he,l(e.$t("wan.name.model")),1),t(p,{modelValue:e.value,"onUpdate:modelValue":n[0]||(n[0]=a=>e.value=a),class:"value",placeholder:e.$t("wan.placeholder.select"),clearable:""},{default:d(()=>[(s(!0),r(I,null,S(e.options,a=>(s(),$(u,{key:a.value,label:a.label,value:a.value},{default:d(()=>[c("span",_e,l(a.label),1)]),_:2},1032,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const $e=w(me,[["render",ge],["__scopeId","data-v-eb090beb"]]),ve="720p",we=v({name:"ResolutionSelector",components:{ElSelect:G,ElOption:R},computed:{options(){return[{value:"480p",label:this.$t("wan.name.resolution480p")},{value:"720p",label:this.$t("wan.name.resolution720p")},{value:"1080p",label:this.$t("wan.name.resolution1080p")}]},value:{get(){return this.$store.state.wan?.config?.resolution},set(e){this.$store.commit("wan/setConfig",{...this.$store.state.wan?.config,resolution:e})}}},mounted(){this.value||(this.value=ve)}}),be={class:"field"},ke={class:"title font-bold"},ye={class:"float-left"};function Ve(e,n,h,_,b,k){const u=o("el-option"),p=o("el-select");return s(),r("div",be,[c("h2",ke,l(e.$t("wan.name.resolution")),1),t(p,{modelValue:e.value,"onUpdate:modelValue":n[0]||(n[0]=a=>e.value=a),class:"value",placeholder:e.$t("wan.placeholder.select"),clearable:""},{default:d(()=>[(s(!0),r(I,null,S(e.options,a=>(s(),$(u,{key:a.value,label:a.label,value:a.value},{default:d(()=>[c("span",ye,l(a.label),1)]),_:2},1032,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const Ee=w(we,[["render",Ve],["__scopeId","data-v-3e39f44e"]]),Ie=5,Te=v({name:"DurationSelector",components:{ElSelect:G,ElOption:R},computed:{options(){return[{value:5,label:this.$t("wan.name.duration5s")},{value:10,label:this.$t("wan.name.duration10s")},{value:15,label:this.$t("wan.name.duration15s")}]},value:{get(){return this.$store.state.wan?.config?.duration},set(e){this.$store.commit("wan/setConfig",{...this.$store.state.wan?.config,duration:e})}}},mounted(){this.value||(this.value=Ie)}}),Se={class:"field"},Ue={class:"title font-bold"},Le={class:"float-left"};function Ce(e,n,h,_,b,k){const u=o("el-option"),p=o("el-select");return s(),r("div",Se,[c("h2",Ue,l(e.$t("wan.name.duration")),1),t(p,{modelValue:e.value,"onUpdate:modelValue":n[0]||(n[0]=a=>e.value=a),class:"value",placeholder:e.$t("wan.placeholder.select"),clearable:""},{default:d(()=>[(s(!0),r(I,null,S(e.options,a=>(s(),$(u,{key:a.value,label:a.label,value:a.value},{default:d(()=>[c("span",Le,l(a.label),1)]),_:2},1032,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const Re=w(Te,[["render",Ce],["__scopeId","data-v-5f35a2cf"]]),Ge=v({name:"ImageUrlInput",components:{ElUpload:Q,ElButton:T,InfoIcon:P,ImagePreview:K},mixins:[W],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.url).filter(e=>e!==void 0)},value:{get(){return this.$store.state.wan?.config?.image_url},set(){const e=this.urls?.[0];this.$store.commit("wan/setConfig",{...this.$store.state.wan?.config,image_url:e})}}},mounted(){this.value||(this.value=void 0),this.onSetImageUrl()},methods:{onExceed(){V.warning(this.$t("wan.message.uploadImageExceed"))},onError(){V.error(this.$t("wan.message.uploadImageError"))},async onRemove(){V.error(this.$t("wan.message.uploadImageError"))},onSetImageUrl(){const e=this.urls?.[0];this.$store.commit("wan/setConfig",{...this.$store.state.wan?.config,image_url:e})},async onSuccess(){this.onSetImageUrl()}}}),Ae={class:"relative"},De={class:"flex justify-between"},Pe={class:"flex justify-start items-center"},Me={class:"text-sm font-bold"};function Oe(e,n,h,_,b,k){const u=o("info-icon"),p=o("image-preview"),a=o("el-button"),g=o("el-upload");return s(),r("div",Ae,[c("div",De,[c("div",Pe,[c("span",Me,l(e.$t("wan.name.imageUrl")),1),t(u,{content:e.$t("wan.description.imageUrl"),class:"info"},null,8,["content"])])]),t(g,{"file-list":e.fileList,"onUpdate:fileList":n[0]||(n[0]=i=>e.fileList=i),accept:".png,.jpg,.jpeg,.gif,.bmp,.webp",name:"file","show-file-list":!0,limit:1,multiple:!1,"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:d(({file:i})=>[i.url&&i.percentage!==void 0?(s(),$(p,{key:0,url:i.url,name:i.name,percentage:i.percentage,onRemove:y=>e.fileList.splice(e.fileList.indexOf(i),1)},null,8,["url","name","percentage","onRemove"])):m("",!0)]),default:d(()=>[t(a,{size:"small",type:"primary",class:"btn btn-upload",round:""},{default:d(()=>[f(l(e.$t("wan.button.uploadImageUrl")),1)]),_:1})]),_:1},8,["file-list","action","on-exceed","on-error","on-remove","on-success","headers"])])}const je=w(Ge,[["render",Oe],["__scopeId","data-v-c9ebe1b1"]]),Be="",Fe=v({name:"PromptInput",components:{ElInput:X,InfoIcon:P},computed:{prompt:{get(){return this.$store.state.wan?.config?.prompt},set(e){console.debug("set prompt",e),this.$store.commit("wan/setConfig",{...this.$store.state.wan?.config,prompt:e})}}},mounted(){this.prompt||(this.prompt=Be)}}),Ne={class:"field"},qe={class:"box"},ze={class:"title font-bold"};function We(e,n,h,_,b,k){const u=o("info-icon"),p=o("el-input");return s(),r("div",Ne,[c("div",qe,[c("h2",ze,l(e.$t("wan.name.prompt")),1),t(u,{content:e.$t("wan.description.prompt"),class:"info"},null,8,["content"])]),t(p,{modelValue:e.prompt,"onUpdate:modelValue":n[0]||(n[0]=a=>e.prompt=a),rows:3,type:"textarea",class:"prompt",placeholder:e.$t("wan.placeholder.prompt")},null,8,["modelValue","placeholder"])])}const He=w(Fe,[["render",We],["__scopeId","data-v-45557a2d"]]),Je=v({name:"PresetPanel",components:{ElButton:T,FontAwesomeIcon:C,PromptInput:He,ImageUrlInput:je,ModelSelector:$e,ResolutionSelector:Ee,DurationSelector:Re,Consumption:Y},emits:["generate"],computed:{config(){return this.$store.state.wan?.config},consumption(){return Z(this.config,this.service?.cost)},service(){return this.$store.state.wan?.service},supportsResolution(){const e=this.config?.model;return e==="wan2.6-t2v"||e==="wan2.6-i2v"||e==="wan2.6-i2v-flash"},supportsDuration(){return this.config?.model==="wan2.6-t2v"},supportsImageUrl(){const e=this.config?.model;return e==="wan2.6-i2v"||e==="wan2.6-i2v-flash"}},methods:{onGenerate(){this.$emit("generate")}}}),Ke={class:"flex flex-col h-full"},Qe={class:"flex-1 overflow-y-auto p-5"},Xe={class:"flex flex-col items-center justify-center px-5 pb-5"};function Ye(e,n,h,_,b,k){const u=o("prompt-input"),p=o("model-selector"),a=o("resolution-selector"),g=o("duration-selector"),i=o("image-url-input"),y=o("consumption"),E=o("font-awesome-icon"),A=o("el-button");return s(),r("div",Ke,[c("div",Qe,[t(u,{class:"mb-4"}),t(p,{class:"mb-4"}),e.supportsResolution?(s(),$(a,{key:0,class:"mb-4"})):m("",!0),e.supportsDuration?(s(),$(g,{key:1,class:"mb-4"})):m("",!0),e.supportsImageUrl?(s(),$(i,{key:2,class:"mb-2"})):m("",!0)]),c("div",Xe,[t(y,{value:e.consumption,service:e.service},null,8,["value","service"]),t(A,{type:"primary",class:"btn w-full",round:"",onClick:e.onGenerate},{default:d(()=>[t(E,{icon:"fa-solid fa-magic",class:"mr-2"}),f(" "+l(e.$t("wan.button.generate")),1)]),_:1},8,["onClick"])])])}const Ze=w(Je,[["render",Ye]]),xe=v({name:"TaskPreview",components:{ElImage:ne,CopyToClipboard:ee,FontAwesomeIcon:C,ElAlert:se,VideoPlayer:te,ElTooltip:oe,ElButton:T},props:{modelValue:{type:Object,required:!0}},setup(){return{WAN_LOGO:z}},computed:{application(){return this.$store.state.wan?.application},config(){return this.$store.state.wan?.config}},methods:{onDownload(e){console.debug("on download wan video",e),window.open(e,"_blank")}}}),et={class:"preview"},tt={class:"left"},ot={class:"main"},st={class:"bot"},nt={class:"datetime"},at={class:"info"},lt={key:0,class:"prompt mt-2"},rt={key:0},it={key:1},ct={key:0,class:U({content:!0,failed:!0})},dt={key:0,class:"mb-4"},ut={key:1,class:U({operations:!0,"mt-2":!0})},pt={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},mt={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},ft={key:1,class:"text-[var(--el-text-color-regular)] text-xs mb-0"},ht={key:1,class:U({content:!0})},_t={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},gt={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},$t={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},vt={class:"text-[var(--el-text-color-regular)] text-xs mb-0"},wt={key:2,class:U({content:!0})},bt={class:"text-[var(--el-text-color-regular)] text-xs mb-0"};function kt(e,n,h,_,b,k){const u=o("el-image"),p=o("video-player"),a=o("el-button"),g=o("el-tooltip"),i=o("font-awesome-icon"),y=o("copy-to-clipboard"),E=o("el-alert");return s(),r("div",et,[c("div",tt,[t(u,{src:e.WAN_LOGO,class:"avatar"},null,8,["src"])]),c("div",ot,[c("div",st,[f(l(e.$t("wan.name.wanBot"))+" ",1),c("span",nt,l(e.$dayjs.format(""+new Date(parseFloat((e.modelValue?.created_at||"").toString())*1e3))),1)]),c("div",at,[e.modelValue?.request?.prompt?(s(),r("p",lt,[f(l(e.modelValue?.request?.prompt)+" ",1),e.modelValue?.response?m("",!0):(s(),r("span",rt," - ("+l(e.$t("wan.status.pending"))+") ",1)),e.modelValue?.response?.state==="processing"||e.modelValue?.response?.state==="pending"||e.modelValue?.response?.state==="running"?(s(),r("span",it," - ("+l(e.$t("wan.status.processing"))+") ",1)):m("",!0)])):m("",!0)]),e.modelValue?.response?.success===!0?(s(),r("div",ct,[e.modelValue?.response?.video_url?(s(),r("div",dt,[t(p,{src:e.modelValue?.response?.video_url},null,8,["src"])])):m("",!0),e.modelValue?.response?.video_url?(s(),r("div",ut,[t(g,{class:"box-item",effect:"dark",content:e.$t("wan.message.downloadVideo"),placement:"top-start"},{default:d(()=>[t(a,{type:"info",size:"small",class:"mb-2",onClick:n[0]||(n[0]=O(A=>e.onDownload(e.modelValue?.response?.video_url),["stop"]))},{default:d(()=>[f(l(e.$t("wan.button.download")),1)]),_:1})]),_:1},8,["content"])])):m("",!0),t(E,{closable:!1,class:"mt-2 success"},{default:d(()=>[e.modelValue?.request?.model?(s(),r("p",pt,[t(i,{icon:"fa-solid fa-hashtag",class:"mr-1"}),f(" "+l(e.$t("wan.name.model"))+": "+l(e.modelValue?.request?.model)+" ",1),t(y,{content:e.modelValue?.id},null,8,["content"])])):m("",!0),c("p",mt,[t(i,{icon:"fa-solid fa-magic",class:"mr-1"}),f(" "+l(e.$t("wan.name.taskId"))+": "+l(e.modelValue?.id)+" ",1),t(y,{content:e.modelValue?.id},null,8,["content"])]),e.modelValue?.elapsed?(s(),r("p",ft,[t(i,{icon:"fa-solid fa-clock",class:"mr-1"}),f(" "+l(e.$t("wan.name.elapsed"))+": "+l(e.modelValue?.elapsed?.toFixed(2))+"s ",1)])):m("",!0)]),_:1})])):m("",!0),e.modelValue?.response?.success===!1?(s(),r("div",ht,[t(E,{closable:!1,class:"failure"},{template:d(()=>[t(i,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),f(" "+l(e.$t("wan.name.failure")),1)]),default:d(()=>[c("p",_t,[t(i,{icon:"fa-solid fa-magic",class:"mr-1"}),f(" "+l(e.$t("wan.name.taskId"))+": "+l(e.modelValue?.id)+" ",1),t(y,{content:e.modelValue?.id},null,8,["content"])]),c("p",gt,[t(i,{icon:"fa-solid fa-circle-info",class:"mr-1"}),f(" "+l(e.$t("wan.name.failureReason"))+": "+l(e.modelValue?.response?.error?.message)+" ",1),t(y,{content:e.modelValue?.response?.error?.message},null,8,["content"])]),e.modelValue?.elapsed?(s(),r("p",$t,[t(i,{icon:"fa-solid fa-clock",class:"mr-1"}),f(" "+l(e.$t("wan.name.elapsed"))+": "+l(e.modelValue?.elapsed?.toFixed(2))+"s ",1)])):m("",!0),c("p",vt,[t(i,{icon:"fa-solid fa-hashtag",class:"mr-1"}),f(" "+l(e.$t("wan.name.traceId"))+": "+l(e.modelValue?.response?.trace_id)+" ",1),t(y,{content:e.modelValue?.response?.trace_id},null,8,["content"])])]),_:1})])):m("",!0),e.modelValue?.response?.success===void 0?(s(),r("div",wt,[t(E,{closable:!1,class:"info"},{template:d(()=>[t(i,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),f(" "+l(e.$t("wan.name.failure")),1)]),default:d(()=>[c("p",bt,[t(i,{icon:"fa-solid fa-magic",class:"mr-1"}),f(" "+l(e.$t("wan.name.taskId"))+": "+l(e.modelValue?.id)+" ",1),t(y,{content:e.modelValue?.id},null,8,["content"])])]),_:1})])):m("",!0)])])}const yt=w(xe,[["render",kt],["__scopeId","data-v-6d1d636e"]]),Vt=v({name:"RecentPanel",components:{TaskPreview:yt,BotPlaceholder:ae,NoTasks:le,ScrollList:H},props:{loading:{type:Boolean,default:!1}},emits:["reach-top"],data(){return{job:0}},computed:{tasks(){return{...this.$store.state.wan?.tasks,items:this.$store.state.wan?.tasks?.items?.slice()}}},methods:{getScrollElement(){return this.$refs.scrollList?.getScrollElement?.()}}}),Et={key:0},It={key:2,class:"w-full h-full flex items-center justify-center"};function Tt(e,n,h,_,b,k){const u=o("bot-placeholder"),p=o("task-preview"),a=o("scroll-list"),g=o("no-tasks");return s(),r(I,null,[e.tasks?.items===void 0?(s(),r("div",Et,[t(u)])):e.tasks?.items?.length&&e.tasks?.items?.length>0?(s(),$(a,{key:1,ref:"scrollList",class:"tasks w-full h-full overflow-y-auto",loading:e.loading,onReachTop:n[0]||(n[0]=i=>e.$emit("reach-top"))},{default:d(()=>[(s(!0),r(I,null,S(e.tasks?.items,i=>(s(),$(p,{key:i.id,"model-value":i},null,8,["model-value"]))),128))]),_:1},8,["loading"])):m("",!0),e.tasks?.items?.length===0?(s(),r("div",It,[t(g)])):m("",!0)],64)}const St=w(Vt,[["render",Tt]]),Ut=N("wan"),Lt=v({name:"WanIndex",components:{ConfigPanel:Ze,Layout:pe,RecentPanel:St},inject:["initialized"],data(){return{task:void 0,job:0,timer:void 0,loadingMore:!1,fetchingTasks:!1}},computed:{applicationsLoading(){return this.$store.state.wan?.status?.getApplications===D.Request},tasksLoading(){return this.$store.state.wan?.status?.getTasks===D.Request||this.fetchingTasks},credential(){return this.$store.state.wan.credential},config(){return this.$store.state.wan.config},application(){return this.$store.state.wan.application},tasks(){return this.$store.state.wan.tasks}},watch:{tasks:{handler(e,n){e?.items?.length>n?.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 J({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("wan/getService"),console.debug("end onGetService")},async onGetApplication(){console.debug("start onGetApplication"),await this.$store.dispatch("wan/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:n=5,createdAtMin:h,createdAtMax:_}=e||{};console.debug("limit",n,"createdAtMin",h,"createdAtMax",_),this.fetchingTasks=!0;try{await this.$store.dispatch("wan/getTasks",{limit:n,createdAtMin:h,createdAtMax:_})}finally{this.fetchingTasks=!1}},async onGenerate(){const e={...this.config,callback_url:Ut},n=this.credential?.token;if(!n){console.error("no token specified");return}V.info(this.$t("wan.message.startingTask")),B("wan",F.generate(e,{token:n})).then(()=>{V.success(this.$t("wan.message.startTaskSuccess"))}).catch(h=>{h?.response?.data?.error?.code===x?V.error(this.$t("wan.message.usedUp")):V.error(this.$t("wan.message.startTaskFailed"))}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})},getTasksScrollElement(){return this.$refs.recentPanel?.getScrollElement?.()}}});function Ct(e,n,h,_,b,k){const u=o("config-panel"),p=o("recent-panel"),a=o("layout");return s(),$(a,null,{config:d(()=>[t(u,{onGenerate:e.onGenerate},null,8,["onGenerate"])]),result:d(()=>[t(p,{ref:"recentPanel",loading:e.loadingMore,onReachTop:e.onReachTop},null,8,["loading","onReachTop"])]),_:1})}const yo=w(Lt,[["render",Ct]]);export{yo as default};
|
|
1
|
+
import{F as C}from"./index.es-8EnvYue2.js";import{E as T}from"./index-BohXbZ2r.js";import{E as M}from"./index-1duw3meC.js";import{d as v,H as r,E as c,z as L,C as t,y as d,D as o,q as s,F as l,O as I,N as S,x as $,I as f,J as m,M as O,Q as U}from"./vendor-vue-NSDaktjZ.js";import{G as w,bl as j,cu as B,b4 as F,S as D,cv as N}from"./index-C769Onuz.js";import{a as q,b as z}from"./wan-DKq-jYOo.js";import{E as R,a as G}from"./index-trZQ27KC.js";import{p as W}from"./pasteUploadMixin-BurWbGNQ.js";import{I as P,S as H,l as J}from"./pagination-B_rXIxYu.js";import{I as K}from"./ImagePreview-DRhaeMj1.js";import{E as Q}from"./index-BfcZVTcY.js";import{E as V}from"./index-C35824SI.js";import{E as X}from"./index-C6A_7e6l.js";import{C as Y}from"./Consumption-C8V--EC7.js";import{a as Z}from"./price-DeJrvwM_.js";import{b as x}from"./errorCode-Cqj9Td_Z.js";import{C as ee}from"./CopyToClipboard-BN_GVB08.js";import{V as te}from"./VideoPlayer-DeefBCor.js";import{E as oe}from"./index-DH4uKXiW.js";import{E as se}from"./index-DGqxXaJY.js";import{E as ne}from"./index-BxMpD69n.js";import{B as ae}from"./BotPlaceholder-Lxsi7yXh.js";import{N as le}from"./NoTasks-B39yxIND.js";import"./use-form-item-Ck1g57NC.js";import"./index-BuyEbX8F.js";import"./vendor-axios-B8_nURbH.js";import"./vendor-dayjs-v0j1UNZp.js";import"./vendor-vue-router-Kg6s1a65.js";import"./index-DsyghaSY.js";import"./typescript-C3d9MWp0.js";import"./index-_gGwul3Q.js";import"./strings-beZM2Y-f.js";import"./isEqual-CCeFlspg.js";import"./_Uint8Array-0ZrewKty.js";import"./castArray-MGnU8s5j.js";import"./debounce-BKi6w8Na.js";import"./_baseIteratee-BaCwCO2P.js";import"./index-M199edT7.js";import"./index-Bjh2SIj8.js";import"./_baseClone-I25WNFTn.js";import"./_initCloneObject-BBp5M13E.js";import"./index-CqA61rPt.js";import"./vue-plyr-BO2nlN4c.js";import"./index-1uyc0tg8.js";const re=v({name:"LayoutWan",components:{ElDrawer:M,ElButton:T,FontAwesomeIcon:C},data(){return{drawer:!1}}}),ie={class:"main flex flex-row flex-1"},ce={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 ue(e,n,h,_,b,k){const u=o("font-awesome-icon"),p=o("el-button"),a=o("el-drawer");return s(),r("div",ie,[c("div",ce,[L(e.$slots,"config",{},void 0,!0)]),c("div",de,[L(e.$slots,"result",{},void 0,!0)]),t(p,{circle:"",class:"menu",onClick:n[0]||(n[0]=g=>e.drawer=!0)},{default:d(()=>[t(u,{icon:"fa-solid fa-magic"})]),_:1}),t(a,{modelValue:e.drawer,"onUpdate:modelValue":n[1]||(n[1]=g=>e.drawer=g),direction:"ltr","with-header":!1,size:"340px"},{default:d(()=>[L(e.$slots,"config",{},void 0,!0)]),_:3},8,["modelValue"])])}const pe=w(re,[["render",ue],["__scopeId","data-v-37ba1764"]]),me=v({name:"ModelSelector",components:{ElSelect:G,ElOption:R},data(){return{}},computed:{options(){return[{value:"wan2.6-t2v",label:this.$t("wan.button.modelT2v")},{value:"wan2.6-i2v",label:this.$t("wan.button.modelI2v")},{value:"wan2.6-i2v-flash",label:this.$t("wan.button.modelI2vFlash")},{value:"wan2.6-r2v",label:this.$t("wan.button.modelR2v")}]},value:{get(){return this.$store.state.wan?.config?.model},set(e){this.$store.commit("wan/setConfig",{...this.$store.state.wan?.config,model:e})}}},mounted(){this.value||(this.value=q)}}),fe={class:"field"},he={class:"title font-bold"},_e={class:"float-left"};function ge(e,n,h,_,b,k){const u=o("el-option"),p=o("el-select");return s(),r("div",fe,[c("h2",he,l(e.$t("wan.name.model")),1),t(p,{modelValue:e.value,"onUpdate:modelValue":n[0]||(n[0]=a=>e.value=a),class:"value",placeholder:e.$t("wan.placeholder.select"),clearable:""},{default:d(()=>[(s(!0),r(I,null,S(e.options,a=>(s(),$(u,{key:a.value,label:a.label,value:a.value},{default:d(()=>[c("span",_e,l(a.label),1)]),_:2},1032,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const $e=w(me,[["render",ge],["__scopeId","data-v-eb090beb"]]),ve="720p",we=v({name:"ResolutionSelector",components:{ElSelect:G,ElOption:R},computed:{options(){return[{value:"480p",label:this.$t("wan.name.resolution480p")},{value:"720p",label:this.$t("wan.name.resolution720p")},{value:"1080p",label:this.$t("wan.name.resolution1080p")}]},value:{get(){return this.$store.state.wan?.config?.resolution},set(e){this.$store.commit("wan/setConfig",{...this.$store.state.wan?.config,resolution:e})}}},mounted(){this.value||(this.value=ve)}}),be={class:"field"},ke={class:"title font-bold"},ye={class:"float-left"};function Ve(e,n,h,_,b,k){const u=o("el-option"),p=o("el-select");return s(),r("div",be,[c("h2",ke,l(e.$t("wan.name.resolution")),1),t(p,{modelValue:e.value,"onUpdate:modelValue":n[0]||(n[0]=a=>e.value=a),class:"value",placeholder:e.$t("wan.placeholder.select"),clearable:""},{default:d(()=>[(s(!0),r(I,null,S(e.options,a=>(s(),$(u,{key:a.value,label:a.label,value:a.value},{default:d(()=>[c("span",ye,l(a.label),1)]),_:2},1032,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const Ee=w(we,[["render",Ve],["__scopeId","data-v-3e39f44e"]]),Ie=5,Te=v({name:"DurationSelector",components:{ElSelect:G,ElOption:R},computed:{options(){return[{value:5,label:this.$t("wan.name.duration5s")},{value:10,label:this.$t("wan.name.duration10s")},{value:15,label:this.$t("wan.name.duration15s")}]},value:{get(){return this.$store.state.wan?.config?.duration},set(e){this.$store.commit("wan/setConfig",{...this.$store.state.wan?.config,duration:e})}}},mounted(){this.value||(this.value=Ie)}}),Se={class:"field"},Ue={class:"title font-bold"},Le={class:"float-left"};function Ce(e,n,h,_,b,k){const u=o("el-option"),p=o("el-select");return s(),r("div",Se,[c("h2",Ue,l(e.$t("wan.name.duration")),1),t(p,{modelValue:e.value,"onUpdate:modelValue":n[0]||(n[0]=a=>e.value=a),class:"value",placeholder:e.$t("wan.placeholder.select"),clearable:""},{default:d(()=>[(s(!0),r(I,null,S(e.options,a=>(s(),$(u,{key:a.value,label:a.label,value:a.value},{default:d(()=>[c("span",Le,l(a.label),1)]),_:2},1032,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const Re=w(Te,[["render",Ce],["__scopeId","data-v-5f35a2cf"]]),Ge=v({name:"ImageUrlInput",components:{ElUpload:Q,ElButton:T,InfoIcon:P,ImagePreview:K},mixins:[W],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.url).filter(e=>e!==void 0)},value:{get(){return this.$store.state.wan?.config?.image_url},set(){const e=this.urls?.[0];this.$store.commit("wan/setConfig",{...this.$store.state.wan?.config,image_url:e})}}},mounted(){this.value||(this.value=void 0),this.onSetImageUrl()},methods:{onExceed(){V.warning(this.$t("wan.message.uploadImageExceed"))},onError(){V.error(this.$t("wan.message.uploadImageError"))},async onRemove(){V.error(this.$t("wan.message.uploadImageError"))},onSetImageUrl(){const e=this.urls?.[0];this.$store.commit("wan/setConfig",{...this.$store.state.wan?.config,image_url:e})},async onSuccess(){this.onSetImageUrl()}}}),Ae={class:"relative"},De={class:"flex justify-between"},Pe={class:"flex justify-start items-center"},Me={class:"text-sm font-bold"};function Oe(e,n,h,_,b,k){const u=o("info-icon"),p=o("image-preview"),a=o("el-button"),g=o("el-upload");return s(),r("div",Ae,[c("div",De,[c("div",Pe,[c("span",Me,l(e.$t("wan.name.imageUrl")),1),t(u,{content:e.$t("wan.description.imageUrl"),class:"info"},null,8,["content"])])]),t(g,{"file-list":e.fileList,"onUpdate:fileList":n[0]||(n[0]=i=>e.fileList=i),accept:".png,.jpg,.jpeg,.gif,.bmp,.webp",name:"file","show-file-list":!0,limit:1,multiple:!1,"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:d(({file:i})=>[i.url&&i.percentage!==void 0?(s(),$(p,{key:0,url:i.url,name:i.name,percentage:i.percentage,onRemove:y=>e.fileList.splice(e.fileList.indexOf(i),1)},null,8,["url","name","percentage","onRemove"])):m("",!0)]),default:d(()=>[t(a,{size:"small",type:"primary",class:"btn btn-upload",round:""},{default:d(()=>[f(l(e.$t("wan.button.uploadImageUrl")),1)]),_:1})]),_:1},8,["file-list","action","on-exceed","on-error","on-remove","on-success","headers"])])}const je=w(Ge,[["render",Oe],["__scopeId","data-v-c9ebe1b1"]]),Be="",Fe=v({name:"PromptInput",components:{ElInput:X,InfoIcon:P},computed:{prompt:{get(){return this.$store.state.wan?.config?.prompt},set(e){console.debug("set prompt",e),this.$store.commit("wan/setConfig",{...this.$store.state.wan?.config,prompt:e})}}},mounted(){this.prompt||(this.prompt=Be)}}),Ne={class:"field"},qe={class:"box"},ze={class:"title font-bold"};function We(e,n,h,_,b,k){const u=o("info-icon"),p=o("el-input");return s(),r("div",Ne,[c("div",qe,[c("h2",ze,l(e.$t("wan.name.prompt")),1),t(u,{content:e.$t("wan.description.prompt"),class:"info"},null,8,["content"])]),t(p,{modelValue:e.prompt,"onUpdate:modelValue":n[0]||(n[0]=a=>e.prompt=a),rows:3,type:"textarea",class:"prompt",placeholder:e.$t("wan.placeholder.prompt")},null,8,["modelValue","placeholder"])])}const He=w(Fe,[["render",We],["__scopeId","data-v-45557a2d"]]),Je=v({name:"PresetPanel",components:{ElButton:T,FontAwesomeIcon:C,PromptInput:He,ImageUrlInput:je,ModelSelector:$e,ResolutionSelector:Ee,DurationSelector:Re,Consumption:Y},emits:["generate"],computed:{config(){return this.$store.state.wan?.config},consumption(){return Z(this.config,this.service?.cost)},service(){return this.$store.state.wan?.service},supportsResolution(){const e=this.config?.model;return e==="wan2.6-t2v"||e==="wan2.6-i2v"||e==="wan2.6-i2v-flash"},supportsDuration(){return this.config?.model==="wan2.6-t2v"},supportsImageUrl(){const e=this.config?.model;return e==="wan2.6-i2v"||e==="wan2.6-i2v-flash"}},methods:{onGenerate(){this.$emit("generate")}}}),Ke={class:"flex flex-col h-full"},Qe={class:"flex-1 overflow-y-auto p-5"},Xe={class:"flex flex-col items-center justify-center px-5 pb-5"};function Ye(e,n,h,_,b,k){const u=o("prompt-input"),p=o("model-selector"),a=o("resolution-selector"),g=o("duration-selector"),i=o("image-url-input"),y=o("consumption"),E=o("font-awesome-icon"),A=o("el-button");return s(),r("div",Ke,[c("div",Qe,[t(u,{class:"mb-4"}),t(p,{class:"mb-4"}),e.supportsResolution?(s(),$(a,{key:0,class:"mb-4"})):m("",!0),e.supportsDuration?(s(),$(g,{key:1,class:"mb-4"})):m("",!0),e.supportsImageUrl?(s(),$(i,{key:2,class:"mb-2"})):m("",!0)]),c("div",Xe,[t(y,{value:e.consumption,service:e.service},null,8,["value","service"]),t(A,{type:"primary",class:"btn w-full",round:"",onClick:e.onGenerate},{default:d(()=>[t(E,{icon:"fa-solid fa-magic",class:"mr-2"}),f(" "+l(e.$t("wan.button.generate")),1)]),_:1},8,["onClick"])])])}const Ze=w(Je,[["render",Ye]]),xe=v({name:"TaskPreview",components:{ElImage:ne,CopyToClipboard:ee,FontAwesomeIcon:C,ElAlert:se,VideoPlayer:te,ElTooltip:oe,ElButton:T},props:{modelValue:{type:Object,required:!0}},setup(){return{WAN_LOGO:z}},computed:{application(){return this.$store.state.wan?.application},config(){return this.$store.state.wan?.config}},methods:{onDownload(e){console.debug("on download wan video",e),window.open(e,"_blank")}}}),et={class:"preview"},tt={class:"left"},ot={class:"main"},st={class:"bot"},nt={class:"datetime"},at={class:"info"},lt={key:0,class:"prompt mt-2"},rt={key:0},it={key:1},ct={key:0,class:U({content:!0,failed:!0})},dt={key:0,class:"mb-4"},ut={key:1,class:U({operations:!0,"mt-2":!0})},pt={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},mt={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},ft={key:1,class:"text-[var(--el-text-color-regular)] text-xs mb-0"},ht={key:1,class:U({content:!0})},_t={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},gt={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},$t={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},vt={class:"text-[var(--el-text-color-regular)] text-xs mb-0"},wt={key:2,class:U({content:!0})},bt={class:"text-[var(--el-text-color-regular)] text-xs mb-0"};function kt(e,n,h,_,b,k){const u=o("el-image"),p=o("video-player"),a=o("el-button"),g=o("el-tooltip"),i=o("font-awesome-icon"),y=o("copy-to-clipboard"),E=o("el-alert");return s(),r("div",et,[c("div",tt,[t(u,{src:e.WAN_LOGO,class:"avatar"},null,8,["src"])]),c("div",ot,[c("div",st,[f(l(e.$t("wan.name.wanBot"))+" ",1),c("span",nt,l(e.$dayjs.format(""+new Date(parseFloat((e.modelValue?.created_at||"").toString())*1e3))),1)]),c("div",at,[e.modelValue?.request?.prompt?(s(),r("p",lt,[f(l(e.modelValue?.request?.prompt)+" ",1),e.modelValue?.response?m("",!0):(s(),r("span",rt," - ("+l(e.$t("wan.status.pending"))+") ",1)),e.modelValue?.response?.state==="processing"||e.modelValue?.response?.state==="pending"||e.modelValue?.response?.state==="running"?(s(),r("span",it," - ("+l(e.$t("wan.status.processing"))+") ",1)):m("",!0)])):m("",!0)]),e.modelValue?.response?.success===!0?(s(),r("div",ct,[e.modelValue?.response?.video_url?(s(),r("div",dt,[t(p,{src:e.modelValue?.response?.video_url},null,8,["src"])])):m("",!0),e.modelValue?.response?.video_url?(s(),r("div",ut,[t(g,{class:"box-item",effect:"dark",content:e.$t("wan.message.downloadVideo"),placement:"top-start"},{default:d(()=>[t(a,{type:"info",size:"small",class:"mb-2",onClick:n[0]||(n[0]=O(A=>e.onDownload(e.modelValue?.response?.video_url),["stop"]))},{default:d(()=>[f(l(e.$t("wan.button.download")),1)]),_:1})]),_:1},8,["content"])])):m("",!0),t(E,{closable:!1,class:"mt-2 success"},{default:d(()=>[e.modelValue?.request?.model?(s(),r("p",pt,[t(i,{icon:"fa-solid fa-hashtag",class:"mr-1"}),f(" "+l(e.$t("wan.name.model"))+": "+l(e.modelValue?.request?.model)+" ",1),t(y,{content:e.modelValue?.id},null,8,["content"])])):m("",!0),c("p",mt,[t(i,{icon:"fa-solid fa-magic",class:"mr-1"}),f(" "+l(e.$t("wan.name.taskId"))+": "+l(e.modelValue?.id)+" ",1),t(y,{content:e.modelValue?.id},null,8,["content"])]),e.modelValue?.elapsed?(s(),r("p",ft,[t(i,{icon:"fa-solid fa-clock",class:"mr-1"}),f(" "+l(e.$t("wan.name.elapsed"))+": "+l(e.modelValue?.elapsed?.toFixed(2))+"s ",1)])):m("",!0)]),_:1})])):m("",!0),e.modelValue?.response?.success===!1?(s(),r("div",ht,[t(E,{closable:!1,class:"failure"},{template:d(()=>[t(i,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),f(" "+l(e.$t("wan.name.failure")),1)]),default:d(()=>[c("p",_t,[t(i,{icon:"fa-solid fa-magic",class:"mr-1"}),f(" "+l(e.$t("wan.name.taskId"))+": "+l(e.modelValue?.id)+" ",1),t(y,{content:e.modelValue?.id},null,8,["content"])]),c("p",gt,[t(i,{icon:"fa-solid fa-circle-info",class:"mr-1"}),f(" "+l(e.$t("wan.name.failureReason"))+": "+l(e.modelValue?.response?.error?.message)+" ",1),t(y,{content:e.modelValue?.response?.error?.message},null,8,["content"])]),e.modelValue?.elapsed?(s(),r("p",$t,[t(i,{icon:"fa-solid fa-clock",class:"mr-1"}),f(" "+l(e.$t("wan.name.elapsed"))+": "+l(e.modelValue?.elapsed?.toFixed(2))+"s ",1)])):m("",!0),c("p",vt,[t(i,{icon:"fa-solid fa-hashtag",class:"mr-1"}),f(" "+l(e.$t("wan.name.traceId"))+": "+l(e.modelValue?.response?.trace_id)+" ",1),t(y,{content:e.modelValue?.response?.trace_id},null,8,["content"])])]),_:1})])):m("",!0),e.modelValue?.response?.success===void 0?(s(),r("div",wt,[t(E,{closable:!1,class:"info"},{template:d(()=>[t(i,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),f(" "+l(e.$t("wan.name.failure")),1)]),default:d(()=>[c("p",bt,[t(i,{icon:"fa-solid fa-magic",class:"mr-1"}),f(" "+l(e.$t("wan.name.taskId"))+": "+l(e.modelValue?.id)+" ",1),t(y,{content:e.modelValue?.id},null,8,["content"])])]),_:1})])):m("",!0)])])}const yt=w(xe,[["render",kt],["__scopeId","data-v-6d1d636e"]]),Vt=v({name:"RecentPanel",components:{TaskPreview:yt,BotPlaceholder:ae,NoTasks:le,ScrollList:H},props:{loading:{type:Boolean,default:!1}},emits:["reach-top"],data(){return{job:0}},computed:{tasks(){return{...this.$store.state.wan?.tasks,items:this.$store.state.wan?.tasks?.items?.slice()}}},methods:{getScrollElement(){return this.$refs.scrollList?.getScrollElement?.()}}}),Et={key:0},It={key:2,class:"w-full h-full flex items-center justify-center"};function Tt(e,n,h,_,b,k){const u=o("bot-placeholder"),p=o("task-preview"),a=o("scroll-list"),g=o("no-tasks");return s(),r(I,null,[e.tasks?.items===void 0?(s(),r("div",Et,[t(u)])):e.tasks?.items?.length&&e.tasks?.items?.length>0?(s(),$(a,{key:1,ref:"scrollList",class:"tasks w-full h-full overflow-y-auto",loading:e.loading,onReachTop:n[0]||(n[0]=i=>e.$emit("reach-top"))},{default:d(()=>[(s(!0),r(I,null,S(e.tasks?.items,i=>(s(),$(p,{key:i.id,"model-value":i},null,8,["model-value"]))),128))]),_:1},8,["loading"])):m("",!0),e.tasks?.items?.length===0?(s(),r("div",It,[t(g)])):m("",!0)],64)}const St=w(Vt,[["render",Tt]]),Ut=N("wan"),Lt=v({name:"WanIndex",components:{ConfigPanel:Ze,Layout:pe,RecentPanel:St},inject:["initialized"],data(){return{task:void 0,job:0,timer:void 0,loadingMore:!1,fetchingTasks:!1}},computed:{applicationsLoading(){return this.$store.state.wan?.status?.getApplications===D.Request},tasksLoading(){return this.$store.state.wan?.status?.getTasks===D.Request||this.fetchingTasks},credential(){return this.$store.state.wan.credential},config(){return this.$store.state.wan.config},application(){return this.$store.state.wan.application},tasks(){return this.$store.state.wan.tasks}},watch:{tasks:{handler(e,n){e?.items?.length>n?.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 J({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("wan/getService"),console.debug("end onGetService")},async onGetApplication(){console.debug("start onGetApplication"),await this.$store.dispatch("wan/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:n=5,createdAtMin:h,createdAtMax:_}=e||{};console.debug("limit",n,"createdAtMin",h,"createdAtMax",_),this.fetchingTasks=!0;try{await this.$store.dispatch("wan/getTasks",{limit:n,createdAtMin:h,createdAtMax:_})}finally{this.fetchingTasks=!1}},async onGenerate(){const e={...this.config,callback_url:Ut},n=this.credential?.token;if(!n){console.error("no token specified");return}V.info(this.$t("wan.message.startingTask")),B("wan",F.generate(e,{token:n})).then(()=>{V.success(this.$t("wan.message.startTaskSuccess"))}).catch(h=>{h?.response?.data?.error?.code===x?V.error(this.$t("wan.message.usedUp")):V.error(this.$t("wan.message.startTaskFailed"))}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})},getTasksScrollElement(){return this.$refs.recentPanel?.getScrollElement?.()}}});function Ct(e,n,h,_,b,k){const u=o("config-panel"),p=o("recent-panel"),a=o("layout");return s(),$(a,null,{config:d(()=>[t(u,{onGenerate:e.onGenerate},null,8,["onGenerate"])]),result:d(()=>[t(p,{ref:"recentPanel",loading:e.loadingMore,onReachTop:e.onReachTop},null,8,["loading","onReachTop"])]),_:1})}const yo=w(Lt,[["render",Ct]]);export{yo as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{bm as O,br as $,G as v,bs as N,bn as S,bo as T,bp as L,
|
|
1
|
+
import{bm as O,br as $,G as v,bs as N,bn as S,bo as T,bp as L,a7 as U,bt as D,bu as R,bl as P}from"./index-C769Onuz.js";import{F as b}from"./index.es-8EnvYue2.js";import{E as B,a as A}from"./index-CWBk6P60.js";import{E as F}from"./index-D69zTo5S.js";import{E as k}from"./index-BxMpD69n.js";import{d as E,x as f,y as n,C as o,I as _,F as m,J as g,E as s,D as t,q as r,H as h,R as H,O as V,N as q,Q as J}from"./vendor-vue-NSDaktjZ.js";import"./vendor-axios-B8_nURbH.js";import"./vendor-dayjs-v0j1UNZp.js";import"./vendor-vue-router-Kg6s1a65.js";import"./typescript-C3d9MWp0.js";import"./index-Bv-1-Obz.js";import"./index-DH4uKXiW.js";import"./index-_gGwul3Q.js";import"./index-BuyEbX8F.js";import"./index-M199edT7.js";import"./dropdown-Ra7EQWbN.js";import"./debounce-BKi6w8Na.js";import"./index-CqA61rPt.js";const M=E({name:"HelpEntry",components:{ElImage:k,ElDialog:O,ElPopover:F,ElMenu:A,ElMenuItem:B,FontAwesomeIcon:b},props:{visible:{type:Boolean,default:!0}},emits:["close"],computed:{site(){return this.$store.state.site}},methods:{onJoin(){window.open(this.$store.state.site?.features?.support?.discord?.url,"_blank")},onProfit(){this.$router.push({name:$})}}}),X={class:"flex"},z={class:"flex-1 text-center"};function G(e,i,w,I,y,C){const c=t("font-awesome-icon"),l=t("el-menu-item"),p=t("el-image"),d=t("el-popover"),a=t("el-menu"),u=t("el-dialog");return r(),f(u,{"model-value":e.visible,width:200,class:"text-center",onClose:i[0]||(i[0]=x=>e.$emit("close"))},{default:n(()=>[o(a,{collapse:!1,class:"menu"},{default:n(()=>[e.site?.features?.support?.discord?.enabled?(r(),f(l,{key:0,index:"1",onClick:e.onJoin},{title:n(()=>[_(m(e.$t("common.message.joinDiscord")),1)]),default:n(()=>[o(c,{icon:"fa-brands fa-discord",class:"mr-2"})]),_:1},8,["onClick"])):g("",!0),o(d,{width:350,trigger:"hover"},{reference:n(()=>[e.site?.features?.support?.wechat?.enabled?(r(),f(l,{key:0,index:"2"},{title:n(()=>[_(m(e.$t("common.message.addWeChat")),1)]),default:n(()=>[o(c,{icon:"fa-brands fa-weixin",class:"mr-2"})]),_:1})):g("",!0)]),default:n(()=>[s("div",X,[s("div",z,[o(p,{src:e.site?.features?.support?.wechat?.qr},null,8,["src"])])])]),_:1})]),_:1})]),_:1},8,["model-value"])}const j=v(M,[["render",G],["__scopeId","data-v-0fce633f"]]),Q=E({name:"ProfileIndex",components:{ElImage:k,HelpDialog:j,FontAwesomeIcon:b},data(){return{operating:{locale:!1,dark:!1,help:!1}}},computed:{user(){return this.$store.getters.user},showSupport(){return this.$store?.state?.site?.features?.support?.enabled&&(this.$store?.state?.site?.features?.support?.discord?.enabled||this.$store?.state?.site?.features?.support?.wechat?.enabled)},showSite(){return this.$store?.state?.site?.admins?.includes(this.$store.getters.user?.id)},links(){return[{key:"profile",text:this.$t("console.menu.userProfile"),href:`${R()}/user/profile`,icon:"fa-regular fa-user"},{key:"application-list",text:this.$t("console.menu.applicationList"),name:T,icon:"fa-solid fa-cube"},{key:"order-list",text:this.$t("console.menu.orderList"),name:L,icon:"fa-solid fa-store"},{key:"usage-list",text:this.$t("console.menu.usageList"),name:U,icon:"fa-solid fa-rotate-left"},{key:"distribution-index",text:this.$t("console.menu.distributionIndex"),name:$,icon:"fa-solid fa-coins"},...this.showSite?[{key:"site-index",text:this.$t("common.nav.site"),name:D,icon:"fa-solid fa-gear"}]:[],{key:"dark-setting",text:this.$t("common.nav.darkMode"),icon:"fa-solid fa-moon",callback:()=>{this.operating.dark=!0}},{key:"locale-setting",text:this.$t("common.nav.locale"),icon:"fa-solid fa-language",callback:()=>{this.operating.locale=!0}},{key:"developerPlatform",text:this.$t("console.menu.developerPlatform"),href:P(),icon:"fa-solid fa-laptop-code"},...this.showSupport?[{key:"support",text:this.$t("common.nav.support"),callback:()=>{this.operating.help=!0},icon:"fa-solid fa-question"}]:[],{key:"logout",text:this.$t("common.nav.logOut"),icon:"fa-solid fa-arrow-right-from-bracket",callback:async()=>{await this.$store.dispatch("logout")}}]}},methods:{onHome(){this.$router.push({name:S})},onNavigate(e){e.name?this.$router.push({name:e.name}):e.href?window.open(N(e.href),"_blank"):e.callback&&e.callback()}}}),W={class:"profile"},K={class:"info"},Y={class:"links"},Z=["onClick"],ee={class:"icon"},te={class:"text"},oe={class:"suffix"};function se(e,i,w,I,y,C){const c=t("el-image"),l=t("font-awesome-icon"),p=t("locale-selector"),d=t("help-dialog");return r(),h("div",W,[s("div",K,[o(c,{src:e.user.avatar,fit:"cover",class:"avatar"},null,8,["src"]),s("h2",null,m(e.user.username),1),s("div",{style:H({backgroundImage:"url("+e.user.avatar+")"}),class:"background"},null,4)]),s("div",Y,[(r(!0),h(V,null,q(e.links,(a,u)=>(r(),h("a",{key:u,class:J({link:!0,active:e.$route.name===a.name}),onClick:x=>e.onNavigate(a)},[s("span",ee,[o(l,{icon:a.icon,class:"text-sm"},null,8,["icon"])]),s("span",te,m(a.text),1),s("span",oe,[o(l,{icon:"fa-solid fa-chevron-right",class:"text-sm"})])],10,Z))),128))]),o(p,{visible:e.operating.locale==!0,onClose:i[0]||(i[0]=a=>e.operating.locale=!1)},null,8,["visible"]),o(d,{visible:e.operating.help==!0,onClose:i[1]||(i[1]=a=>e.operating.help=!1)},null,8,["visible"])])}const Ee=v(Q,[["render",se],["__scopeId","data-v-bf1d72a9"]]);export{Ee as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{F as P}from"./index.es-BtXQMTTn.js";import{E as U}from"./index-CXaVYn6Y.js";import{E as X}from"./index-BPZpjd75.js";import{d as b,H as i,E as r,z as L,C as a,y as p,D as n,q as t,F as l,O as E,N as T,x as m,Q as C,R as Y,J as d,I as _}from"./vendor-vue-NSDaktjZ.js";import{G as k,bl as Q,cr as W,aJ as K,S as M,cs as Z}from"./index-sn-M2G3j.js";import{a as x,b as ee,c as oe,d as te,e as se,f as ne,g as G,h as ae,i as le,j as ie}from"./veo-Dg8Zhpd-.js";import{E as A,a as O}from"./index-BHQ7eTJH.js";import{I as j,S as re,l as ce}from"./pagination-db75yZ2u.js";import{E as de}from"./index-DcrqZBpJ.js";import{V as D}from"./VideoPlayer-BxpwvKKI.js";import{E as R}from"./index-Cqvt3jGg.js";import{p as ue}from"./pasteUploadMixin-BurWbGNQ.js";import{I as pe}from"./ImagePreview-x5gHatsw.js";import{E as me}from"./index--Op4UAcU.js";import{E as I}from"./index-BcW07t7s.js";import{C as ve}from"./Consumption-DMPBBMuR.js";import{a as fe}from"./price-DZ9Sg1iv.js";import{b as _e}from"./errorCode-Cqj9Td_Z.js";import{C as he}from"./CopyToClipboard-0KzHJ2n1.js";import{E as $e}from"./index-BwY9SWpE.js";import{E as ge}from"./index-C0zlwvhh.js";import{E as be}from"./index-cdSK5CZ9.js";import{B as ke}from"./BotPlaceholder-DTEpzCnw.js";import{N as ye}from"./NoTasks-CmqpRtUm.js";import"./use-form-item-CxHQfC-K.js";import"./index-BuyEbX8F.js";import"./vendor-axios-B8_nURbH.js";import"./vendor-dayjs-v0j1UNZp.js";import"./vendor-vue-router-Kg6s1a65.js";import"./index-DNHhSuIO.js";import"./typescript-CNgTribB.js";import"./index-Casjirib.js";import"./strings-beZM2Y-f.js";import"./isEqual-BOBcA1pM.js";import"./_Uint8Array-EODQ339i.js";import"./castArray-BIv4qPOp.js";import"./debounce-B0MxE3fu.js";import"./_baseIteratee-D-GN-znu.js";import"./index-Bmi-jHmT.js";import"./validator-sGNBghJE.js";import"./vue-plyr-BO2nlN4c.js";import"./index-CcHjHBm4.js";import"./index-B302Rib8.js";import"./_baseClone-C9Ert7_H.js";import"./_initCloneObject-C9kLDyf5.js";import"./index-ACNZqLLg.js";const Ve=b({name:"LayoutVeo",components:{ElDrawer:X,ElButton:U,FontAwesomeIcon:P},data(){return{drawer:!1}}}),we={class:"main flex flex-row flex-1"},Ee={class:"config w-[320px] flex-none h-full overflow-y-auto bg-[var(--app-sidebar-bg)] border-r border-[var(--app-border-subtle)]"},Ie={class:"result h-full p-6 flex-1 flex flex-col min-w-0 overflow-x-hidden bg-[var(--app-content-bg)]"};function Te(e,o,v,f,y,V){const c=n("font-awesome-icon"),u=n("el-button"),s=n("el-drawer");return t(),i("div",we,[r("div",Ee,[L(e.$slots,"config",{},void 0,!0)]),r("div",Ie,[L(e.$slots,"result",{},void 0,!0)]),a(u,{circle:"",class:"menu",onClick:o[0]||(o[0]=w=>e.drawer=!0)},{default:p(()=>[a(c,{icon:"fa-solid fa-magic"})]),_:1}),a(s,{modelValue:e.drawer,"onUpdate:modelValue":o[1]||(o[1]=w=>e.drawer=w),direction:"ltr","with-header":!1,size:"350px"},{default:p(()=>[L(e.$slots,"config",{},void 0,!0)]),_:3},8,["modelValue"])])}const Se=k(Ve,[["render",Te],["__scopeId","data-v-08343c05"]]),Ce=b({name:"ModelSelector",components:{ElSelect:O,ElOption:A},props:{modelValue:{type:String,default:void 0}},emits:["update:modelValue"],data(){return{options:[{value:"veo2",label:"veo2"},{value:"veo2-fast",label:"veo2-fast"},{value:"veo3",label:"veo3"},{value:"veo3-fast",label:"veo3-fast"},{value:"veo31-fast",label:"veo31-fast"},{value:"veo31",label:"veo31"},{value:"veo31-fast-ingredients",label:"veo31-fast-ingredients"}]}},computed:{value:{get(){return this.$store.state.veo?.config?.model},set(e){this.$store.commit("veo/setConfig",{...this.$store.state.veo.config,model:e})}}},mounted(){this.value||(this.value=x)}}),Ae={class:"field"},Oe={class:"title font-bold"};function Pe(e,o,v,f,y,V){const c=n("el-option"),u=n("el-select");return t(),i("div",Ae,[r("h2",Oe,l(e.$t("veo.name.model")),1),a(u,{modelValue:e.value,"onUpdate:modelValue":o[0]||(o[0]=s=>e.value=s),class:"value",placeholder:e.$t("veo.placeholder.select")},{default:p(()=>[(t(!0),i(E,null,T(e.options,s=>(t(),m(c,{key:s.value,label:s.label,value:s.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const Ue=k(Ce,[["render",Pe],["__scopeId","data-v-a59d89c9"]]),Le=b({name:"ActionSelector",components:{ElSelect:O,ElOption:A},data(){return{}},computed:{options(){return[{value:"text2video",label:this.$t("veo.button.action1")},{value:"image2video",label:this.$t("veo.button.action2")},{value:"ingredients2video",label:this.$t("veo.button.actionIngredients")},{value:"upsample",label:this.$t("veo.button.actionUpsample")},{value:"extend",label:this.$t("veo.button.actionExtend")},{value:"reshoot",label:this.$t("veo.button.actionReshoot")},{value:"object_insert",label:this.$t("veo.button.actionObjectInsert")},{value:"object_remove",label:this.$t("veo.button.actionObjectRemove")}]},value:{get(){return this.$store.state.veo?.config?.action},set(e){this.$store.commit("veo/setConfig",{...this.$store.state.veo?.config,action:e})}}},mounted(){this.value||(this.value=ee)}}),je={class:"field"},Re={class:"title font-bold"},Me={class:"float-left"};function Ge(e,o,v,f,y,V){const c=n("el-option"),u=n("el-select");return t(),i("div",je,[r("h2",Re,l(e.$t("veo.name.action")),1),a(u,{modelValue:e.value,"onUpdate:modelValue":o[0]||(o[0]=s=>e.value=s),class:"value",placeholder:e.$t("veo.placeholder.select"),clearable:""},{default:p(()=>[(t(!0),i(E,null,T(e.options,s=>(t(),m(c,{key:s.value,label:s.label,value:s.value},{default:p(()=>[r("span",Me,l(s.label),1)]),_:2},1032,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const De=k(Le,[["render",Ge],["__scopeId","data-v-f4d8785c"]]),Ne=b({name:"TranslationSelector",components:{ElSwitch:de,InfoIcon:j},computed:{value:{get(){return this.$store.state.veo?.config?.translation},set(e){console.debug("set translation",e),this.$store.commit("veo/setConfig",{...this.$store.state.veo?.config,translation:e})}}},mounted(){this.value===void 0&&(this.value=oe)}}),Fe={class:"relative"},ze={class:"flex justify-between"},Be={class:"flex justify-start items-center"},qe={class:"text-sm font-bold"},He={class:"flex justify-end items-center"};function Je(e,o,v,f,y,V){const c=n("info-icon"),u=n("el-switch");return t(),i("div",Fe,[r("div",ze,[r("div",Be,[r("span",qe,l(e.$t("veo.name.translation")),1),a(c,{content:e.$t("veo.description.translation")},null,8,["content"])]),r("div",He,[a(u,{modelValue:e.value,"onUpdate:modelValue":o[0]||(o[0]=s=>e.value=s),class:"value"},null,8,["modelValue"])])])])}const Xe=k(Ne,[["render",Je]]),Ye=b({name:"AspectRatioSelector",data(){return{options:[{value:"1:1",label:"1:1",width:20,height:20},{value:"4:3",label:"4:3",width:20,height:15},{value:"3:4",label:"3:4",width:15,height:20},{value:"16:9",label:"16:9",width:25,height:13},{value:"9:16",label:"9:16",width:13,height:25}]}},computed:{active(){return this.options.findIndex(e=>e.value===this.value)||0},value:{get(){return this.$store.state.veo?.config?.aspect_ratio},set(e){console.debug("set aspect_ratio",e),this.$store.commit("veo/setConfig",{...this.$store.state?.veo?.config,aspect_ratio:e})}}},mounted(){this.value||(this.value=te)}}),Qe={class:"text-sm font-bold mb-2 block"},We={class:"items"},Ke=["onClick"],Ze={class:"name"};function xe(e,o,v,f,y,V){return t(),i("div",null,[r("span",Qe,l(e.$t("veo.name.ratio")),1),r("div",We,[(t(!0),i(E,null,T(e.options,(c,u)=>(t(),i("div",{key:u,class:C({active:e.active===u,item:!0}),onClick:s=>e.value=c.value},[r("div",{class:C(["preview",c.label])},[r("div",{class:"rect",style:Y({width:c.width+"px",height:c.height+"px"})},null,4)],2),r("p",Ze,l(c.label),1)],10,Ke))),128))])])}const eo=k(Ye,[["render",xe],["__scopeId","data-v-0f16be77"]]),oo=b({name:"VideoFromInput",components:{VideoPlayer:D},props:{modelValue:{type:Object,required:!1,default:void 0}},data(){return{options:{quality:{default:"1080p"}}}},computed:{config(){return this.$store.state.veo?.config}}}),to={class:"relative"},so={class:"flex mb-2"},no={class:"text-sm font-bold"};function ao(e,o,v,f,y,V){const c=n("video-player");return t(),i("div",to,[r("div",so,[r("span",no,l(e.$t("veo.name.action3")),1)]),r("div",null,[e.config?.video_url?(t(),m(c,{key:0,src:e.config?.video_url},null,8,["src"])):d("",!0)])])}const lo=k(oo,[["render",ao]]),io=b({name:"VideoIdInput",components:{ElInput:R},computed:{value:{get(){return this.$store.state.veo?.config?.video_id},set(e){this.$store.commit("veo/setConfig",{...this.$store.state.veo.config,video_id:e})}}}}),ro={class:"field"},co={class:"title font-bold"};function uo(e,o,v,f,y,V){const c=n("el-input");return t(),i("div",ro,[r("h2",co,l(e.$t("veo.name.videoId")),1),a(c,{modelValue:e.value,"onUpdate:modelValue":o[0]||(o[0]=u=>e.value=u),class:"value",type:"text",placeholder:e.$t("veo.placeholder.videoId"),clearable:""},null,8,["modelValue","placeholder"])])}const po=k(io,[["render",uo],["__scopeId","data-v-6eba4026"]]),mo=b({name:"StartEndImage",components:{ElUpload:me,ElButton:U,InfoIcon:j,FontAwesomeIcon:P,ImagePreview:pe},mixins:[ue],emits:["change"],data(){return{fileList:[],uploadUrl:Q()+"/api/v1/files/"}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},urls(){return this.fileList.map(e=>e?.response?.file_url)},value:{get(){return this.$store.state?.veo?.config?.image_urls},set(){}}},mounted(){this.value||(this.value=void 0),this.onSetStartEndImageUrl()},methods:{onExceed(){I.warning(this.$t("veo.message.uploadReferencesExceed"))},onError(){I.error(this.$t("veo.message.uploadReferencesError"))},onSetStartEndImageUrl(){const e=this.urls;this.$store.commit("veo/setConfig",{...this.$store.state?.veo?.config,image_urls:e})},async onSuccess(){this.onSetStartEndImageUrl()}}}),vo={class:"relative"},fo={class:"flex justify-between"},_o={class:"flex justify-start items-center"},ho={class:"text-sm font-bold"};function $o(e,o,v,f,y,V){const c=n("info-icon"),u=n("image-preview"),s=n("font-awesome-icon"),w=n("el-button"),$=n("el-upload");return t(),i("div",vo,[r("div",fo,[r("div",_o,[r("span",ho,l(e.$t("veo.name.startEndImage")),1),a(c,{content:e.$t("veo.description.uploadStartEndImage")},null,8,["content"])])]),a($,{ref:"uploader","file-list":e.fileList,"onUpdate:fileList":o[0]||(o[0]=h=>e.fileList=h),name:"file",accept:".png,.jpg,.jpeg,.gif,.bmp,.webp",limit:2,class:"upload-wrapper",multiple:!1,action:e.uploadUrl,"list-type":"picture","on-exceed":e.onExceed,"on-error":e.onError,"on-success":e.onSuccess,headers:e.headers},{file:p(({file:h})=>[h.url&&h.percentage!==void 0?(t(),m(u,{key:0,url:h.url,name:h.name,percentage:h.percentage,onRemove:S=>e.fileList.splice(e.fileList.indexOf(h),1)},null,8,["url","name","percentage","onRemove"])):d("",!0)]),default:p(()=>[a(w,{round:"",type:"primary",size:"small",class:"btn btn-upload"},{default:p(()=>[a(s,{icon:"fa-solid fa-upload",class:"icon mr-1"}),_(" "+l(e.$t("veo.button.uploadReferences")),1)]),_:1})]),_:1},8,["file-list","action","on-exceed","on-error","on-success","headers"])])}const go=k(mo,[["render",$o],["__scopeId","data-v-b8ddb8fb"]]),bo=b({name:"UpsampleActionSelector",components:{ElSelect:O,ElOption:A},computed:{options(){return ne.map(e=>({value:e,label:e}))},value:{get(){return this.$store.state.veo?.config?.upsample_action},set(e){this.$store.commit("veo/setConfig",{...this.$store.state.veo.config,upsample_action:e})}}},mounted(){this.value||(this.value=se)}}),ko={class:"field"},yo={class:"title font-bold"};function Vo(e,o,v,f,y,V){const c=n("el-option"),u=n("el-select");return t(),i("div",ko,[r("h2",yo,l(e.$t("veo.name.upsampleAction")),1),a(u,{modelValue:e.value,"onUpdate:modelValue":o[0]||(o[0]=s=>e.value=s),class:"value",placeholder:e.$t("veo.placeholder.select")},{default:p(()=>[(t(!0),i(E,null,T(e.options,s=>(t(),m(c,{key:s.value,label:s.label,value:s.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const wo=k(bo,[["render",Vo],["__scopeId","data-v-8b74a7ae"]]),Eo=b({name:"ExtendModelSelector",components:{ElSelect:O,ElOption:A},computed:{options(){return G.map(e=>({value:e,label:e}))},value:{get(){return this.$store.state.veo?.config?.model},set(e){this.$store.commit("veo/setConfig",{...this.$store.state.veo.config,model:e})}}},mounted(){(!this.value||!G.includes(this.value))&&(this.value=ae)}}),Io={class:"field"},To={class:"title font-bold"};function So(e,o,v,f,y,V){const c=n("el-option"),u=n("el-select");return t(),i("div",Io,[r("h2",To,l(e.$t("veo.name.model")),1),a(u,{modelValue:e.value,"onUpdate:modelValue":o[0]||(o[0]=s=>e.value=s),class:"value",placeholder:e.$t("veo.placeholder.select")},{default:p(()=>[(t(!0),i(E,null,T(e.options,s=>(t(),m(c,{key:s.value,label:s.label,value:s.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const Co=k(Eo,[["render",So],["__scopeId","data-v-cc3f9355"]]),Ao=b({name:"MotionTypeSelector",components:{ElSelect:O,ElOption:A},computed:{options(){return ie.map(e=>({value:e,label:e}))},value:{get(){return this.$store.state.veo?.config?.motion_type},set(e){this.$store.commit("veo/setConfig",{...this.$store.state.veo.config,motion_type:e})}}},mounted(){this.value||(this.value=le)}}),Oo={class:"field"},Po={class:"title font-bold"};function Uo(e,o,v,f,y,V){const c=n("el-option"),u=n("el-select");return t(),i("div",Oo,[r("h2",Po,l(e.$t("veo.name.motionType")),1),a(u,{modelValue:e.value,"onUpdate:modelValue":o[0]||(o[0]=s=>e.value=s),class:"value",placeholder:e.$t("veo.placeholder.select"),filterable:""},{default:p(()=>[(t(!0),i(E,null,T(e.options,s=>(t(),m(c,{key:s.value,label:s.label,value:s.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const Lo=k(Ao,[["render",Uo],["__scopeId","data-v-3affff3c"]]),jo=b({name:"ImageMaskInput",components:{ElInput:R},computed:{value:{get(){return this.$store.state.veo?.config?.image_mask},set(e){this.$store.commit("veo/setConfig",{...this.$store.state.veo.config,image_mask:e})}}}}),Ro={class:"field"},Mo={class:"title font-bold"};function Go(e,o,v,f,y,V){const c=n("el-input");return t(),i("div",Ro,[r("h2",Mo,l(e.$t("veo.name.imageMask")),1),a(c,{modelValue:e.value,"onUpdate:modelValue":o[0]||(o[0]=u=>e.value=u),class:"value",type:"text",placeholder:e.$t("veo.placeholder.imageMask"),clearable:""},null,8,["modelValue","placeholder"])])}const Do=k(jo,[["render",Go],["__scopeId","data-v-6cc27c68"]]),No="",Fo=b({name:"PromptInput",components:{ElInput:R,InfoIcon:j},computed:{prompt:{get(){return this.$store.state.veo?.config?.prompt},set(e){console.debug("set prompt",e),this.$store.commit("veo/setConfig",{...this.$store.state.veo?.config,prompt:e})}}},mounted(){this.prompt||(this.prompt=No)}}),zo={class:"field"},Bo={class:"box"},qo={class:"title font-bold"};function Ho(e,o,v,f,y,V){const c=n("info-icon"),u=n("el-input");return t(),i("div",zo,[r("div",Bo,[r("h2",qo,l(e.$t("veo.name.prompt")),1),a(c,{content:e.$t("veo.description.prompt"),class:"info"},null,8,["content"])]),a(u,{modelValue:e.prompt,"onUpdate:modelValue":o[0]||(o[0]=s=>e.prompt=s),rows:3,type:"textarea",class:"prompt",placeholder:e.$t("veo.placeholder.prompt")},null,8,["modelValue","placeholder"])])}const Jo=k(Fo,[["render",Ho],["__scopeId","data-v-84c55ea0"]]),Xo=["upsample","extend","reshoot","object_insert","object_remove","get1080p"],Yo=["text2video","image2video","ingredients2video"],Qo=b({name:"ConfigPanel",components:{ElButton:U,Consumption:ve,FontAwesomeIcon:P,PromptInput:Jo,ModelSelector:Ue,StartEndImage:go,ActionSelector:De,VideoFromInput:lo,VideoIdInput:po,UpsampleActionSelector:wo,ExtendModelSelector:Co,MotionTypeSelector:Lo,ImageMaskInput:Do,TranslationSelector:Xe,AspectRatioSelector:eo},emits:["generate"],computed:{config(){return this.$store.state.veo?.config},consumption(){return fe(this.config,this.service?.cost)},service(){return this.$store.state.veo?.service},isPostProcessing(){return Xo.includes(this.config?.action??"")},isGeneration(){return Yo.includes(this.config?.action??"")}},methods:{onGenerate(){this.$emit("generate")}}}),Wo={class:"flex flex-col h-full"},Ko={class:"flex-1 overflow-y-auto p-5"},Zo={class:"flex flex-col items-center justify-center px-5 pb-5"};function xo(e,o,v,f,y,V){const c=n("action-selector"),u=n("video-from-input"),s=n("video-id-input"),w=n("upsample-action-selector"),$=n("extend-model-selector"),h=n("prompt-input"),S=n("motion-type-selector"),g=n("image-mask-input"),N=n("translation-selector"),F=n("aspect-ratio-selector"),z=n("model-selector"),B=n("start-end-image"),q=n("consumption"),H=n("font-awesome-icon"),J=n("el-button");return t(),i("div",Wo,[r("div",Ko,[a(c,{class:"mb-4"}),e.isPostProcessing?(t(),i(E,{key:0},[e.config?.video_url?(t(),m(u,{key:0,class:"mb-4"})):d("",!0),a(s,{class:"mb-4"})],64)):d("",!0),e.config?.action==="upsample"?(t(),m(w,{key:1,class:"mb-4"})):d("",!0),e.config?.action==="extend"?(t(),m($,{key:2,class:"mb-4"})):d("",!0),e.config?.action==="extend"?(t(),m(h,{key:3,class:"mb-4"})):d("",!0),e.config?.action==="reshoot"?(t(),m(S,{key:4,class:"mb-4"})):d("",!0),e.config?.action==="object_insert"?(t(),m(h,{key:5,class:"mb-4"})):d("",!0),e.config?.action==="object_insert"||e.config?.action==="object_remove"?(t(),m(g,{key:6,class:"mb-4"})):d("",!0),e.config?.action==="object_remove"?(t(),m(h,{key:7,class:"mb-4"})):d("",!0),e.isGeneration?(t(),i(E,{key:8},[a(N,{class:"mb-4"}),a(F,{class:"mb-4"}),a(h,{class:"mb-4"}),e.config?.action!=="ingredients2video"?(t(),m(z,{key:0,class:"mb-4"})):d("",!0),e.config?.action==="image2video"||e.config?.action==="ingredients2video"?(t(),m(B,{key:1,class:"mb-2"})):d("",!0)],64)):d("",!0)]),r("div",Zo,[a(q,{value:e.consumption,service:e.service},null,8,["value","service"]),a(J,{type:"primary",class:"btn w-full",round:"",onClick:e.onGenerate},{default:p(()=>[a(H,{icon:"fa-solid fa-magic",class:"mr-2"}),_(" "+l(e.$t("veo.button.generate")),1)]),_:1},8,["onClick"])])])}const et=k(Qo,[["render",xo]]),ot=b({name:"TaskPreview",components:{ElImage:be,CopyToClipboard:he,FontAwesomeIcon:P,ElAlert:ge,VideoPlayer:D,ElTooltip:$e,ElButton:U},props:{modelValue:{type:Object,required:!0}},data(){return{}},computed:{application(){return this.$store.state.veo?.application},config(){return this.$store.state.veo?.config}},methods:{onPickAction(e,o,v,f){console.debug("seed config from preview",{action:v,upsampleAction:f,response:o}),this.$store.commit("veo/setConfig",{...this.$store.state.veo?.config,action:v,video_id:o?.data?.[0]?.id,video_url:o?.data?.[0]?.video_url,...f?{upsample_action:f}:{}})},onDownload(e,o){e.stopPropagation(),console.log("on download"),window.open(o,"_blank")},onOpenVideo(e){window.open(e,"_blank")}}}),tt={class:"preview"},st={class:"left"},nt={class:"main"},at={class:"bot"},lt={class:"datetime"},it={class:"info"},rt={key:0,class:"prompt mt-2"},ct={key:0},dt={key:1},ut={key:0,class:C({content:!0,failed:!0})},pt={key:0,class:"mb-4"},mt={key:1,class:C({operations:!0,"mt-2":!0})},vt={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},ft={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},_t={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-0"},ht={key:1,class:C({content:!0})},$t={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},gt={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},bt={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},kt={key:1,class:"text-[var(--el-text-color-regular)] text-xs mb-0"},yt={key:2,class:C({content:!0})},Vt={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},wt={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-0"};function Et(e,o,v,f,y,V){const c=n("el-image"),u=n("video-player"),s=n("el-button"),w=n("el-tooltip"),$=n("font-awesome-icon"),h=n("copy-to-clipboard"),S=n("el-alert");return t(),i("div",tt,[r("div",st,[a(c,{src:"https://cdn.acedata.cloud/8nxyy9.jpg",class:"avatar"})]),r("div",nt,[r("div",at,[_(l(e.$t("veo.name.veoBot"))+" ",1),r("span",lt,l(e.$dayjs.format(""+new Date(parseFloat((e.modelValue?.created_at||"").toString())*1e3))),1)]),r("div",it,[e.modelValue?.request?.prompt?(t(),i("p",rt,[_(l(e.modelValue?.request?.prompt)+" ",1),e.modelValue?.response?d("",!0):(t(),i("span",ct," - ("+l(e.$t("veo.status.pending"))+") ",1)),Array.isArray(e.modelValue?.response?.data)&&e.modelValue?.response?.data[0]?.state==="running"?(t(),i("span",dt," - ("+l(e.$t("veo.status.processing"))+") ",1)):d("",!0)])):d("",!0)]),e.modelValue?.response?.success===!0&&e.modelValue?.response?.data?(t(),i("div",ut,[e.modelValue?.response?.data[0]?.video_url?(t(),i("div",pt,[a(u,{src:e.modelValue?.response?.data[0]?.video_url},null,8,["src"])])):d("",!0),e.modelValue?.response.success?(t(),i("div",mt,[e.modelValue?.response?.data[0]?.video_url?(t(),m(s,{key:0,type:"info",size:"small",class:"btn-action",onClick:o[0]||(o[0]=g=>e.onPickAction(g,e.modelValue?.response,"upsample","1080p"))},{default:p(()=>[_(l(e.$t("veo.button.actionUpsample1080p")),1)]),_:1})):d("",!0),e.modelValue?.response?.data[0]?.video_url?(t(),m(s,{key:1,type:"info",size:"small",class:"btn-action",onClick:o[1]||(o[1]=g=>e.onPickAction(g,e.modelValue?.response,"upsample","4k"))},{default:p(()=>[_(l(e.$t("veo.button.actionUpsample4k")),1)]),_:1})):d("",!0),e.modelValue?.response?.data[0]?.video_url?(t(),m(s,{key:2,type:"info",size:"small",class:"btn-action",onClick:o[2]||(o[2]=g=>e.onPickAction(g,e.modelValue?.response,"upsample","gif"))},{default:p(()=>[_(l(e.$t("veo.button.actionUpsampleGif")),1)]),_:1})):d("",!0),e.modelValue?.response?.data[0]?.video_url?(t(),m(s,{key:3,type:"info",size:"small",class:"btn-action",onClick:o[3]||(o[3]=g=>e.onPickAction(g,e.modelValue?.response,"extend"))},{default:p(()=>[_(l(e.$t("veo.button.actionExtend")),1)]),_:1})):d("",!0),e.modelValue?.response?.data[0]?.video_url?(t(),m(s,{key:4,type:"info",size:"small",class:"btn-action",onClick:o[4]||(o[4]=g=>e.onPickAction(g,e.modelValue?.response,"reshoot"))},{default:p(()=>[_(l(e.$t("veo.button.actionReshoot")),1)]),_:1})):d("",!0),e.modelValue?.response?.data[0]?.video_url?(t(),m(s,{key:5,type:"info",size:"small",class:"btn-action",onClick:o[5]||(o[5]=g=>e.onPickAction(g,e.modelValue?.response,"object_insert"))},{default:p(()=>[_(l(e.$t("veo.button.actionObjectInsert")),1)]),_:1})):d("",!0),e.modelValue?.response?.data[0]?.video_url?(t(),m(s,{key:6,type:"info",size:"small",class:"btn-action",onClick:o[6]||(o[6]=g=>e.onPickAction(g,e.modelValue?.response,"object_remove"))},{default:p(()=>[_(l(e.$t("veo.button.actionObjectRemove")),1)]),_:1})):d("",!0),a(w,{class:"box-item",effect:"dark",content:e.$t("veo.message.downloadVideo"),placement:"top-start"},{default:p(()=>[e.modelValue?.response?.data[0]?.video_url?(t(),m(s,{key:0,type:"info",size:"small",class:"btn-action",onClick:o[7]||(o[7]=g=>e.onDownload(g,e.modelValue?.response?.data[0]?.video_url))},{default:p(()=>[_(l(e.$t("veo.button.download")),1)]),_:1})):d("",!0)]),_:1},8,["content"])])):d("",!0),a(S,{closable:!1,class:"mt-2 success"},{default:p(()=>[r("p",vt,[a($,{icon:"fa-solid fa-hashtag",class:"mr-1"}),_(" "+l(e.$t("veo.name.model"))+": "+l(e.modelValue?.request?.model),1)]),r("p",ft,[a($,{icon:"fa-solid fa-magic",class:"mr-1"}),_(" "+l(e.$t("veo.name.taskId"))+": "+l(e.modelValue?.id)+" ",1),a(h,{content:e.modelValue?.id},null,8,["content"])]),e.modelValue?.elapsed?(t(),i("p",_t,[a($,{icon:"fa-solid fa-clock",class:"mr-1"}),_(" "+l(e.$t("veo.name.elapsed"))+": "+l(e.modelValue?.elapsed?.toFixed(2))+"s ",1)])):d("",!0)]),_:1})])):d("",!0),e.modelValue?.response?.success===!1?(t(),i("div",ht,[a(S,{closable:!1,class:"failure"},{template:p(()=>[a($,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),_(" "+l(e.$t("veo.name.failure")),1)]),default:p(()=>[r("p",$t,[a($,{icon:"fa-solid fa-magic",class:"mr-1"}),_(" "+l(e.$t("veo.name.taskId"))+": "+l(e.modelValue?.id)+" ",1),a(h,{content:e.modelValue?.id},null,8,["content"])]),r("p",gt,[a($,{icon:"fa-solid fa-circle-info",class:"mr-1"}),_(" "+l(e.$t("veo.name.failureReason"))+": "+l(e.modelValue?.response?.error?.message)+" ",1),a(h,{content:e.modelValue?.response?.error?.message},null,8,["content"])]),e.modelValue?.elapsed?(t(),i("p",bt,[a($,{icon:"fa-solid fa-clock",class:"mr-1"}),_(" "+l(e.$t("veo.name.elapsed"))+": "+l(e.modelValue?.elapsed?.toFixed(2))+"s ",1)])):d("",!0),e.modelValue?.response?.trace_id?(t(),i("p",kt,[a($,{icon:"fa-solid fa-hashtag",class:"mr-1"}),_(" "+l(e.$t("veo.name.traceId"))+": "+l(e.modelValue?.response?.trace_id)+" ",1),a(h,{content:e.modelValue?.response?.trace_id},null,8,["content"])])):d("",!0)]),_:1})])):d("",!0),e.modelValue?.response?.success===void 0?(t(),i("div",yt,[a(S,{closable:!1,class:"info"},{template:p(()=>[a($,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),_(" "+l(e.$t("veo.name.failure")),1)]),default:p(()=>[r("p",Vt,[a($,{icon:"fa-solid fa-magic",class:"mr-1"}),_(" "+l(e.$t("veo.name.taskId"))+": "+l(e.modelValue?.id)+" ",1),a(h,{content:e.modelValue?.id},null,8,["content"])]),e.modelValue?.response?.trace_id?(t(),i("p",wt,[a($,{icon:"fa-solid fa-hashtag",class:"mr-1"}),_(" "+l(e.$t("veo.name.traceId"))+": "+l(e.modelValue?.response?.trace_id)+" ",1),a(h,{content:e.modelValue?.response?.trace_id},null,8,["content"])])):d("",!0)]),_:1})])):d("",!0)])])}const It=k(ot,[["render",Et],["__scopeId","data-v-83f2991f"]]),Tt=b({name:"RecentPanel",components:{TaskPreview:It,NoTasks:ye,BotPlaceholder:ke,ScrollList:re},props:{loading:{type:Boolean,default:!1}},emits:["reach-top"],data(){return{job:0}},computed:{tasks(){return{...this.$store.state.veo?.tasks,items:this.$store.state.veo?.tasks?.items?.slice()}}},methods:{getScrollElement(){return this.$refs.scrollList?.getScrollElement?.()}}}),St={key:0},Ct={key:2,class:"w-full h-full flex items-center justify-center"};function At(e,o,v,f,y,V){const c=n("bot-placeholder"),u=n("task-preview"),s=n("scroll-list"),w=n("no-tasks");return t(),i(E,null,[e.tasks?.items===void 0?(t(),i("div",St,[a(c)])):e.tasks?.items?.length&&e.tasks?.items?.length>0?(t(),m(s,{key:1,ref:"scrollList",class:"tasks h-full w-full overflow-y-auto",loading:e.loading,onReachTop:o[0]||(o[0]=$=>e.$emit("reach-top"))},{default:p(()=>[(t(!0),i(E,null,T(e.tasks?.items,($,h)=>(t(),m(u,{key:h,"model-value":$},null,8,["model-value"]))),128))]),_:1},8,["loading"])):d("",!0),e.tasks?.items?.length===0?(t(),i("div",Ct,[a(w)])):d("",!0)],64)}const Ot=k(Tt,[["render",At]]),Pt=Z("veo"),Ut=b({name:"VeoIndex",components:{ConfigPanel:et,Layout:Se,RecentPanel:Ot},inject:["initialized"],data(){return{task:void 0,job:0,loadingMore:!1,fetchingTasks:!1}},computed:{applicationsLoading(){return this.$store.state.veo?.status?.getApplications===M.Request},tasksLoading(){return this.$store.state.veo?.status?.getTasks===M.Request||this.fetchingTasks},credential(){return this.$store.state.veo.credential},config(){return this.$store.state.veo.config},tasks(){return this.$store.state.veo.tasks}},watch:{tasks:{handler(e,o){e?.items?.length>o?.items?.length&&console.debug("new tasks detected")},deep:!0},initialized:{async handler(e){e&&(console.debug("layout initialized"),await this.onGetTasks(),await this.onScrollDown(),this.job=window.setInterval(()=>{this.onGetTasks()},5e3))},immediate:!0}},async mounted(){await this.onGetService()},async unmounted(){window.clearInterval(this.job)},methods:{async onReachTop(){await ce({tasks:this.tasks,getTasks:()=>this.tasks,loading:this.loadingMore,setLoading:e=>this.loadingMore=e,isBlocked:()=>this.tasksLoading||this.applicationsLoading,fetch:e=>this.onGetTasks({createdAtMax:e}),getScrollElement:()=>this.getTasksScrollElement()})},async onGetService(){console.debug("start onGetService"),await this.$store.dispatch("veo/getService"),console.debug("end onGetService")},async onGetApplication(){console.debug("start onGetApplication"),await this.$store.dispatch("veo/getApplications"),console.debug("end onGetApplication"),await this.onGetTasks()},async onScrollDown(){await this.$nextTick();const e=this.getTasksScrollElement();e&&(e.scrollTop=e.scrollHeight)},async onGetTasks(e){if(this.applicationsLoading||this.fetchingTasks){console.debug("loading");return}console.debug("start onGetTasks",e);const{limit:o=5,createdAtMin:v,createdAtMax:f}=e||{};console.debug("limit",o,"createdAtMin",v,"createdAtMax",f),this.fetchingTasks=!0;try{await this.$store.dispatch("veo/getTasks",{limit:o,createdAtMin:v,createdAtMax:f})}finally{this.fetchingTasks=!1}},async onGenerate(){const e={...this.config,callback_url:Pt},o=this.credential?.token;if(!o){console.error("no token specified");return}if(e.action==="image2video"&&!(e.image_urls&&e.image_urls.length>0)){I.warning(this.$t("veo.message.imageRequired"));return}(!e.image_urls||e.image_urls.length===0)&&delete e.image_urls,I.info(this.$t("veo.message.startingTask")),W("veo",K.generate(e,{token:o})).then(()=>{I.success(this.$t("veo.message.startTaskSuccess"))}).catch(v=>{v?.response?.data?.error?.code===_e?I.error(this.$t("veo.message.usedUp")):I.error(this.$t("veo.message.startTaskFailed"))}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})},getTasksScrollElement(){return this.$refs.recentPanel?.getScrollElement?.()}}});function Lt(e,o,v,f,y,V){const c=n("config-panel"),u=n("recent-panel"),s=n("layout");return t(),m(s,null,{config:p(()=>[a(c,{onGenerate:e.onGenerate},null,8,["onGenerate"])]),result:p(()=>[a(u,{ref:"recentPanel",loading:e.loadingMore,onReachTop:e.onReachTop},null,8,["loading","onReachTop"])]),_:1})}const Ts=k(Ut,[["render",Lt]]);export{Ts as default};
|
|
1
|
+
import{F as P}from"./index.es-8EnvYue2.js";import{E as U}from"./index-BohXbZ2r.js";import{E as X}from"./index-1duw3meC.js";import{d as b,H as i,E as r,z as L,C as a,y as p,D as n,q as t,F as l,O as E,N as T,x as m,Q as C,R as Y,J as d,I as _}from"./vendor-vue-NSDaktjZ.js";import{G as k,bl as Q,cu as W,aJ as K,S as M,cv as Z}from"./index-C769Onuz.js";import{a as x,b as ee,c as oe,d as te,e as se,f as ne,g as G,h as ae,i as le,j as ie}from"./veo-Dg8Zhpd-.js";import{E as A,a as O}from"./index-trZQ27KC.js";import{I as j,S as re,l as ce}from"./pagination-B_rXIxYu.js";import{E as de}from"./index-BptLZSby.js";import{V as D}from"./VideoPlayer-DeefBCor.js";import{E as R}from"./index-C6A_7e6l.js";import{p as ue}from"./pasteUploadMixin-BurWbGNQ.js";import{I as pe}from"./ImagePreview-DRhaeMj1.js";import{E as me}from"./index-BfcZVTcY.js";import{E as I}from"./index-C35824SI.js";import{C as ve}from"./Consumption-C8V--EC7.js";import{a as fe}from"./price-DeJrvwM_.js";import{b as _e}from"./errorCode-Cqj9Td_Z.js";import{C as he}from"./CopyToClipboard-BN_GVB08.js";import{E as $e}from"./index-DH4uKXiW.js";import{E as ge}from"./index-DGqxXaJY.js";import{E as be}from"./index-BxMpD69n.js";import{B as ke}from"./BotPlaceholder-Lxsi7yXh.js";import{N as ye}from"./NoTasks-B39yxIND.js";import"./use-form-item-Ck1g57NC.js";import"./index-BuyEbX8F.js";import"./vendor-axios-B8_nURbH.js";import"./vendor-dayjs-v0j1UNZp.js";import"./vendor-vue-router-Kg6s1a65.js";import"./index-DsyghaSY.js";import"./typescript-C3d9MWp0.js";import"./index-_gGwul3Q.js";import"./strings-beZM2Y-f.js";import"./isEqual-CCeFlspg.js";import"./_Uint8Array-0ZrewKty.js";import"./castArray-MGnU8s5j.js";import"./debounce-BKi6w8Na.js";import"./_baseIteratee-BaCwCO2P.js";import"./index-M199edT7.js";import"./validator-DZuVAlZj.js";import"./vue-plyr-BO2nlN4c.js";import"./index-CqA61rPt.js";import"./index-Bjh2SIj8.js";import"./_baseClone-I25WNFTn.js";import"./_initCloneObject-BBp5M13E.js";import"./index-1uyc0tg8.js";const Ve=b({name:"LayoutVeo",components:{ElDrawer:X,ElButton:U,FontAwesomeIcon:P},data(){return{drawer:!1}}}),we={class:"main flex flex-row flex-1"},Ee={class:"config w-[320px] flex-none h-full overflow-y-auto bg-[var(--app-sidebar-bg)] border-r border-[var(--app-border-subtle)]"},Ie={class:"result h-full p-6 flex-1 flex flex-col min-w-0 overflow-x-hidden bg-[var(--app-content-bg)]"};function Te(e,o,v,f,y,V){const c=n("font-awesome-icon"),u=n("el-button"),s=n("el-drawer");return t(),i("div",we,[r("div",Ee,[L(e.$slots,"config",{},void 0,!0)]),r("div",Ie,[L(e.$slots,"result",{},void 0,!0)]),a(u,{circle:"",class:"menu",onClick:o[0]||(o[0]=w=>e.drawer=!0)},{default:p(()=>[a(c,{icon:"fa-solid fa-magic"})]),_:1}),a(s,{modelValue:e.drawer,"onUpdate:modelValue":o[1]||(o[1]=w=>e.drawer=w),direction:"ltr","with-header":!1,size:"350px"},{default:p(()=>[L(e.$slots,"config",{},void 0,!0)]),_:3},8,["modelValue"])])}const Se=k(Ve,[["render",Te],["__scopeId","data-v-08343c05"]]),Ce=b({name:"ModelSelector",components:{ElSelect:O,ElOption:A},props:{modelValue:{type:String,default:void 0}},emits:["update:modelValue"],data(){return{options:[{value:"veo2",label:"veo2"},{value:"veo2-fast",label:"veo2-fast"},{value:"veo3",label:"veo3"},{value:"veo3-fast",label:"veo3-fast"},{value:"veo31-fast",label:"veo31-fast"},{value:"veo31",label:"veo31"},{value:"veo31-fast-ingredients",label:"veo31-fast-ingredients"}]}},computed:{value:{get(){return this.$store.state.veo?.config?.model},set(e){this.$store.commit("veo/setConfig",{...this.$store.state.veo.config,model:e})}}},mounted(){this.value||(this.value=x)}}),Ae={class:"field"},Oe={class:"title font-bold"};function Pe(e,o,v,f,y,V){const c=n("el-option"),u=n("el-select");return t(),i("div",Ae,[r("h2",Oe,l(e.$t("veo.name.model")),1),a(u,{modelValue:e.value,"onUpdate:modelValue":o[0]||(o[0]=s=>e.value=s),class:"value",placeholder:e.$t("veo.placeholder.select")},{default:p(()=>[(t(!0),i(E,null,T(e.options,s=>(t(),m(c,{key:s.value,label:s.label,value:s.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const Ue=k(Ce,[["render",Pe],["__scopeId","data-v-a59d89c9"]]),Le=b({name:"ActionSelector",components:{ElSelect:O,ElOption:A},data(){return{}},computed:{options(){return[{value:"text2video",label:this.$t("veo.button.action1")},{value:"image2video",label:this.$t("veo.button.action2")},{value:"ingredients2video",label:this.$t("veo.button.actionIngredients")},{value:"upsample",label:this.$t("veo.button.actionUpsample")},{value:"extend",label:this.$t("veo.button.actionExtend")},{value:"reshoot",label:this.$t("veo.button.actionReshoot")},{value:"object_insert",label:this.$t("veo.button.actionObjectInsert")},{value:"object_remove",label:this.$t("veo.button.actionObjectRemove")}]},value:{get(){return this.$store.state.veo?.config?.action},set(e){this.$store.commit("veo/setConfig",{...this.$store.state.veo?.config,action:e})}}},mounted(){this.value||(this.value=ee)}}),je={class:"field"},Re={class:"title font-bold"},Me={class:"float-left"};function Ge(e,o,v,f,y,V){const c=n("el-option"),u=n("el-select");return t(),i("div",je,[r("h2",Re,l(e.$t("veo.name.action")),1),a(u,{modelValue:e.value,"onUpdate:modelValue":o[0]||(o[0]=s=>e.value=s),class:"value",placeholder:e.$t("veo.placeholder.select"),clearable:""},{default:p(()=>[(t(!0),i(E,null,T(e.options,s=>(t(),m(c,{key:s.value,label:s.label,value:s.value},{default:p(()=>[r("span",Me,l(s.label),1)]),_:2},1032,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const De=k(Le,[["render",Ge],["__scopeId","data-v-f4d8785c"]]),Ne=b({name:"TranslationSelector",components:{ElSwitch:de,InfoIcon:j},computed:{value:{get(){return this.$store.state.veo?.config?.translation},set(e){console.debug("set translation",e),this.$store.commit("veo/setConfig",{...this.$store.state.veo?.config,translation:e})}}},mounted(){this.value===void 0&&(this.value=oe)}}),Fe={class:"relative"},ze={class:"flex justify-between"},Be={class:"flex justify-start items-center"},qe={class:"text-sm font-bold"},He={class:"flex justify-end items-center"};function Je(e,o,v,f,y,V){const c=n("info-icon"),u=n("el-switch");return t(),i("div",Fe,[r("div",ze,[r("div",Be,[r("span",qe,l(e.$t("veo.name.translation")),1),a(c,{content:e.$t("veo.description.translation")},null,8,["content"])]),r("div",He,[a(u,{modelValue:e.value,"onUpdate:modelValue":o[0]||(o[0]=s=>e.value=s),class:"value"},null,8,["modelValue"])])])])}const Xe=k(Ne,[["render",Je]]),Ye=b({name:"AspectRatioSelector",data(){return{options:[{value:"1:1",label:"1:1",width:20,height:20},{value:"4:3",label:"4:3",width:20,height:15},{value:"3:4",label:"3:4",width:15,height:20},{value:"16:9",label:"16:9",width:25,height:13},{value:"9:16",label:"9:16",width:13,height:25}]}},computed:{active(){return this.options.findIndex(e=>e.value===this.value)||0},value:{get(){return this.$store.state.veo?.config?.aspect_ratio},set(e){console.debug("set aspect_ratio",e),this.$store.commit("veo/setConfig",{...this.$store.state?.veo?.config,aspect_ratio:e})}}},mounted(){this.value||(this.value=te)}}),Qe={class:"text-sm font-bold mb-2 block"},We={class:"items"},Ke=["onClick"],Ze={class:"name"};function xe(e,o,v,f,y,V){return t(),i("div",null,[r("span",Qe,l(e.$t("veo.name.ratio")),1),r("div",We,[(t(!0),i(E,null,T(e.options,(c,u)=>(t(),i("div",{key:u,class:C({active:e.active===u,item:!0}),onClick:s=>e.value=c.value},[r("div",{class:C(["preview",c.label])},[r("div",{class:"rect",style:Y({width:c.width+"px",height:c.height+"px"})},null,4)],2),r("p",Ze,l(c.label),1)],10,Ke))),128))])])}const eo=k(Ye,[["render",xe],["__scopeId","data-v-0f16be77"]]),oo=b({name:"VideoFromInput",components:{VideoPlayer:D},props:{modelValue:{type:Object,required:!1,default:void 0}},data(){return{options:{quality:{default:"1080p"}}}},computed:{config(){return this.$store.state.veo?.config}}}),to={class:"relative"},so={class:"flex mb-2"},no={class:"text-sm font-bold"};function ao(e,o,v,f,y,V){const c=n("video-player");return t(),i("div",to,[r("div",so,[r("span",no,l(e.$t("veo.name.action3")),1)]),r("div",null,[e.config?.video_url?(t(),m(c,{key:0,src:e.config?.video_url},null,8,["src"])):d("",!0)])])}const lo=k(oo,[["render",ao]]),io=b({name:"VideoIdInput",components:{ElInput:R},computed:{value:{get(){return this.$store.state.veo?.config?.video_id},set(e){this.$store.commit("veo/setConfig",{...this.$store.state.veo.config,video_id:e})}}}}),ro={class:"field"},co={class:"title font-bold"};function uo(e,o,v,f,y,V){const c=n("el-input");return t(),i("div",ro,[r("h2",co,l(e.$t("veo.name.videoId")),1),a(c,{modelValue:e.value,"onUpdate:modelValue":o[0]||(o[0]=u=>e.value=u),class:"value",type:"text",placeholder:e.$t("veo.placeholder.videoId"),clearable:""},null,8,["modelValue","placeholder"])])}const po=k(io,[["render",uo],["__scopeId","data-v-6eba4026"]]),mo=b({name:"StartEndImage",components:{ElUpload:me,ElButton:U,InfoIcon:j,FontAwesomeIcon:P,ImagePreview:pe},mixins:[ue],emits:["change"],data(){return{fileList:[],uploadUrl:Q()+"/api/v1/files/"}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},urls(){return this.fileList.map(e=>e?.response?.file_url)},value:{get(){return this.$store.state?.veo?.config?.image_urls},set(){}}},mounted(){this.value||(this.value=void 0),this.onSetStartEndImageUrl()},methods:{onExceed(){I.warning(this.$t("veo.message.uploadReferencesExceed"))},onError(){I.error(this.$t("veo.message.uploadReferencesError"))},onSetStartEndImageUrl(){const e=this.urls;this.$store.commit("veo/setConfig",{...this.$store.state?.veo?.config,image_urls:e})},async onSuccess(){this.onSetStartEndImageUrl()}}}),vo={class:"relative"},fo={class:"flex justify-between"},_o={class:"flex justify-start items-center"},ho={class:"text-sm font-bold"};function $o(e,o,v,f,y,V){const c=n("info-icon"),u=n("image-preview"),s=n("font-awesome-icon"),w=n("el-button"),$=n("el-upload");return t(),i("div",vo,[r("div",fo,[r("div",_o,[r("span",ho,l(e.$t("veo.name.startEndImage")),1),a(c,{content:e.$t("veo.description.uploadStartEndImage")},null,8,["content"])])]),a($,{ref:"uploader","file-list":e.fileList,"onUpdate:fileList":o[0]||(o[0]=h=>e.fileList=h),name:"file",accept:".png,.jpg,.jpeg,.gif,.bmp,.webp",limit:2,class:"upload-wrapper",multiple:!1,action:e.uploadUrl,"list-type":"picture","on-exceed":e.onExceed,"on-error":e.onError,"on-success":e.onSuccess,headers:e.headers},{file:p(({file:h})=>[h.url&&h.percentage!==void 0?(t(),m(u,{key:0,url:h.url,name:h.name,percentage:h.percentage,onRemove:S=>e.fileList.splice(e.fileList.indexOf(h),1)},null,8,["url","name","percentage","onRemove"])):d("",!0)]),default:p(()=>[a(w,{round:"",type:"primary",size:"small",class:"btn btn-upload"},{default:p(()=>[a(s,{icon:"fa-solid fa-upload",class:"icon mr-1"}),_(" "+l(e.$t("veo.button.uploadReferences")),1)]),_:1})]),_:1},8,["file-list","action","on-exceed","on-error","on-success","headers"])])}const go=k(mo,[["render",$o],["__scopeId","data-v-b8ddb8fb"]]),bo=b({name:"UpsampleActionSelector",components:{ElSelect:O,ElOption:A},computed:{options(){return ne.map(e=>({value:e,label:e}))},value:{get(){return this.$store.state.veo?.config?.upsample_action},set(e){this.$store.commit("veo/setConfig",{...this.$store.state.veo.config,upsample_action:e})}}},mounted(){this.value||(this.value=se)}}),ko={class:"field"},yo={class:"title font-bold"};function Vo(e,o,v,f,y,V){const c=n("el-option"),u=n("el-select");return t(),i("div",ko,[r("h2",yo,l(e.$t("veo.name.upsampleAction")),1),a(u,{modelValue:e.value,"onUpdate:modelValue":o[0]||(o[0]=s=>e.value=s),class:"value",placeholder:e.$t("veo.placeholder.select")},{default:p(()=>[(t(!0),i(E,null,T(e.options,s=>(t(),m(c,{key:s.value,label:s.label,value:s.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const wo=k(bo,[["render",Vo],["__scopeId","data-v-8b74a7ae"]]),Eo=b({name:"ExtendModelSelector",components:{ElSelect:O,ElOption:A},computed:{options(){return G.map(e=>({value:e,label:e}))},value:{get(){return this.$store.state.veo?.config?.model},set(e){this.$store.commit("veo/setConfig",{...this.$store.state.veo.config,model:e})}}},mounted(){(!this.value||!G.includes(this.value))&&(this.value=ae)}}),Io={class:"field"},To={class:"title font-bold"};function So(e,o,v,f,y,V){const c=n("el-option"),u=n("el-select");return t(),i("div",Io,[r("h2",To,l(e.$t("veo.name.model")),1),a(u,{modelValue:e.value,"onUpdate:modelValue":o[0]||(o[0]=s=>e.value=s),class:"value",placeholder:e.$t("veo.placeholder.select")},{default:p(()=>[(t(!0),i(E,null,T(e.options,s=>(t(),m(c,{key:s.value,label:s.label,value:s.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const Co=k(Eo,[["render",So],["__scopeId","data-v-cc3f9355"]]),Ao=b({name:"MotionTypeSelector",components:{ElSelect:O,ElOption:A},computed:{options(){return ie.map(e=>({value:e,label:e}))},value:{get(){return this.$store.state.veo?.config?.motion_type},set(e){this.$store.commit("veo/setConfig",{...this.$store.state.veo.config,motion_type:e})}}},mounted(){this.value||(this.value=le)}}),Oo={class:"field"},Po={class:"title font-bold"};function Uo(e,o,v,f,y,V){const c=n("el-option"),u=n("el-select");return t(),i("div",Oo,[r("h2",Po,l(e.$t("veo.name.motionType")),1),a(u,{modelValue:e.value,"onUpdate:modelValue":o[0]||(o[0]=s=>e.value=s),class:"value",placeholder:e.$t("veo.placeholder.select"),filterable:""},{default:p(()=>[(t(!0),i(E,null,T(e.options,s=>(t(),m(c,{key:s.value,label:s.label,value:s.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const Lo=k(Ao,[["render",Uo],["__scopeId","data-v-3affff3c"]]),jo=b({name:"ImageMaskInput",components:{ElInput:R},computed:{value:{get(){return this.$store.state.veo?.config?.image_mask},set(e){this.$store.commit("veo/setConfig",{...this.$store.state.veo.config,image_mask:e})}}}}),Ro={class:"field"},Mo={class:"title font-bold"};function Go(e,o,v,f,y,V){const c=n("el-input");return t(),i("div",Ro,[r("h2",Mo,l(e.$t("veo.name.imageMask")),1),a(c,{modelValue:e.value,"onUpdate:modelValue":o[0]||(o[0]=u=>e.value=u),class:"value",type:"text",placeholder:e.$t("veo.placeholder.imageMask"),clearable:""},null,8,["modelValue","placeholder"])])}const Do=k(jo,[["render",Go],["__scopeId","data-v-6cc27c68"]]),No="",Fo=b({name:"PromptInput",components:{ElInput:R,InfoIcon:j},computed:{prompt:{get(){return this.$store.state.veo?.config?.prompt},set(e){console.debug("set prompt",e),this.$store.commit("veo/setConfig",{...this.$store.state.veo?.config,prompt:e})}}},mounted(){this.prompt||(this.prompt=No)}}),zo={class:"field"},Bo={class:"box"},qo={class:"title font-bold"};function Ho(e,o,v,f,y,V){const c=n("info-icon"),u=n("el-input");return t(),i("div",zo,[r("div",Bo,[r("h2",qo,l(e.$t("veo.name.prompt")),1),a(c,{content:e.$t("veo.description.prompt"),class:"info"},null,8,["content"])]),a(u,{modelValue:e.prompt,"onUpdate:modelValue":o[0]||(o[0]=s=>e.prompt=s),rows:3,type:"textarea",class:"prompt",placeholder:e.$t("veo.placeholder.prompt")},null,8,["modelValue","placeholder"])])}const Jo=k(Fo,[["render",Ho],["__scopeId","data-v-84c55ea0"]]),Xo=["upsample","extend","reshoot","object_insert","object_remove","get1080p"],Yo=["text2video","image2video","ingredients2video"],Qo=b({name:"ConfigPanel",components:{ElButton:U,Consumption:ve,FontAwesomeIcon:P,PromptInput:Jo,ModelSelector:Ue,StartEndImage:go,ActionSelector:De,VideoFromInput:lo,VideoIdInput:po,UpsampleActionSelector:wo,ExtendModelSelector:Co,MotionTypeSelector:Lo,ImageMaskInput:Do,TranslationSelector:Xe,AspectRatioSelector:eo},emits:["generate"],computed:{config(){return this.$store.state.veo?.config},consumption(){return fe(this.config,this.service?.cost)},service(){return this.$store.state.veo?.service},isPostProcessing(){return Xo.includes(this.config?.action??"")},isGeneration(){return Yo.includes(this.config?.action??"")}},methods:{onGenerate(){this.$emit("generate")}}}),Wo={class:"flex flex-col h-full"},Ko={class:"flex-1 overflow-y-auto p-5"},Zo={class:"flex flex-col items-center justify-center px-5 pb-5"};function xo(e,o,v,f,y,V){const c=n("action-selector"),u=n("video-from-input"),s=n("video-id-input"),w=n("upsample-action-selector"),$=n("extend-model-selector"),h=n("prompt-input"),S=n("motion-type-selector"),g=n("image-mask-input"),N=n("translation-selector"),F=n("aspect-ratio-selector"),z=n("model-selector"),B=n("start-end-image"),q=n("consumption"),H=n("font-awesome-icon"),J=n("el-button");return t(),i("div",Wo,[r("div",Ko,[a(c,{class:"mb-4"}),e.isPostProcessing?(t(),i(E,{key:0},[e.config?.video_url?(t(),m(u,{key:0,class:"mb-4"})):d("",!0),a(s,{class:"mb-4"})],64)):d("",!0),e.config?.action==="upsample"?(t(),m(w,{key:1,class:"mb-4"})):d("",!0),e.config?.action==="extend"?(t(),m($,{key:2,class:"mb-4"})):d("",!0),e.config?.action==="extend"?(t(),m(h,{key:3,class:"mb-4"})):d("",!0),e.config?.action==="reshoot"?(t(),m(S,{key:4,class:"mb-4"})):d("",!0),e.config?.action==="object_insert"?(t(),m(h,{key:5,class:"mb-4"})):d("",!0),e.config?.action==="object_insert"||e.config?.action==="object_remove"?(t(),m(g,{key:6,class:"mb-4"})):d("",!0),e.config?.action==="object_remove"?(t(),m(h,{key:7,class:"mb-4"})):d("",!0),e.isGeneration?(t(),i(E,{key:8},[a(N,{class:"mb-4"}),a(F,{class:"mb-4"}),a(h,{class:"mb-4"}),e.config?.action!=="ingredients2video"?(t(),m(z,{key:0,class:"mb-4"})):d("",!0),e.config?.action==="image2video"||e.config?.action==="ingredients2video"?(t(),m(B,{key:1,class:"mb-2"})):d("",!0)],64)):d("",!0)]),r("div",Zo,[a(q,{value:e.consumption,service:e.service},null,8,["value","service"]),a(J,{type:"primary",class:"btn w-full",round:"",onClick:e.onGenerate},{default:p(()=>[a(H,{icon:"fa-solid fa-magic",class:"mr-2"}),_(" "+l(e.$t("veo.button.generate")),1)]),_:1},8,["onClick"])])])}const et=k(Qo,[["render",xo]]),ot=b({name:"TaskPreview",components:{ElImage:be,CopyToClipboard:he,FontAwesomeIcon:P,ElAlert:ge,VideoPlayer:D,ElTooltip:$e,ElButton:U},props:{modelValue:{type:Object,required:!0}},data(){return{}},computed:{application(){return this.$store.state.veo?.application},config(){return this.$store.state.veo?.config}},methods:{onPickAction(e,o,v,f){console.debug("seed config from preview",{action:v,upsampleAction:f,response:o}),this.$store.commit("veo/setConfig",{...this.$store.state.veo?.config,action:v,video_id:o?.data?.[0]?.id,video_url:o?.data?.[0]?.video_url,...f?{upsample_action:f}:{}})},onDownload(e,o){e.stopPropagation(),console.log("on download"),window.open(o,"_blank")},onOpenVideo(e){window.open(e,"_blank")}}}),tt={class:"preview"},st={class:"left"},nt={class:"main"},at={class:"bot"},lt={class:"datetime"},it={class:"info"},rt={key:0,class:"prompt mt-2"},ct={key:0},dt={key:1},ut={key:0,class:C({content:!0,failed:!0})},pt={key:0,class:"mb-4"},mt={key:1,class:C({operations:!0,"mt-2":!0})},vt={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},ft={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},_t={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-0"},ht={key:1,class:C({content:!0})},$t={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},gt={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},bt={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},kt={key:1,class:"text-[var(--el-text-color-regular)] text-xs mb-0"},yt={key:2,class:C({content:!0})},Vt={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},wt={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-0"};function Et(e,o,v,f,y,V){const c=n("el-image"),u=n("video-player"),s=n("el-button"),w=n("el-tooltip"),$=n("font-awesome-icon"),h=n("copy-to-clipboard"),S=n("el-alert");return t(),i("div",tt,[r("div",st,[a(c,{src:"https://cdn.acedata.cloud/8nxyy9.jpg",class:"avatar"})]),r("div",nt,[r("div",at,[_(l(e.$t("veo.name.veoBot"))+" ",1),r("span",lt,l(e.$dayjs.format(""+new Date(parseFloat((e.modelValue?.created_at||"").toString())*1e3))),1)]),r("div",it,[e.modelValue?.request?.prompt?(t(),i("p",rt,[_(l(e.modelValue?.request?.prompt)+" ",1),e.modelValue?.response?d("",!0):(t(),i("span",ct," - ("+l(e.$t("veo.status.pending"))+") ",1)),Array.isArray(e.modelValue?.response?.data)&&e.modelValue?.response?.data[0]?.state==="running"?(t(),i("span",dt," - ("+l(e.$t("veo.status.processing"))+") ",1)):d("",!0)])):d("",!0)]),e.modelValue?.response?.success===!0&&e.modelValue?.response?.data?(t(),i("div",ut,[e.modelValue?.response?.data[0]?.video_url?(t(),i("div",pt,[a(u,{src:e.modelValue?.response?.data[0]?.video_url},null,8,["src"])])):d("",!0),e.modelValue?.response.success?(t(),i("div",mt,[e.modelValue?.response?.data[0]?.video_url?(t(),m(s,{key:0,type:"info",size:"small",class:"btn-action",onClick:o[0]||(o[0]=g=>e.onPickAction(g,e.modelValue?.response,"upsample","1080p"))},{default:p(()=>[_(l(e.$t("veo.button.actionUpsample1080p")),1)]),_:1})):d("",!0),e.modelValue?.response?.data[0]?.video_url?(t(),m(s,{key:1,type:"info",size:"small",class:"btn-action",onClick:o[1]||(o[1]=g=>e.onPickAction(g,e.modelValue?.response,"upsample","4k"))},{default:p(()=>[_(l(e.$t("veo.button.actionUpsample4k")),1)]),_:1})):d("",!0),e.modelValue?.response?.data[0]?.video_url?(t(),m(s,{key:2,type:"info",size:"small",class:"btn-action",onClick:o[2]||(o[2]=g=>e.onPickAction(g,e.modelValue?.response,"upsample","gif"))},{default:p(()=>[_(l(e.$t("veo.button.actionUpsampleGif")),1)]),_:1})):d("",!0),e.modelValue?.response?.data[0]?.video_url?(t(),m(s,{key:3,type:"info",size:"small",class:"btn-action",onClick:o[3]||(o[3]=g=>e.onPickAction(g,e.modelValue?.response,"extend"))},{default:p(()=>[_(l(e.$t("veo.button.actionExtend")),1)]),_:1})):d("",!0),e.modelValue?.response?.data[0]?.video_url?(t(),m(s,{key:4,type:"info",size:"small",class:"btn-action",onClick:o[4]||(o[4]=g=>e.onPickAction(g,e.modelValue?.response,"reshoot"))},{default:p(()=>[_(l(e.$t("veo.button.actionReshoot")),1)]),_:1})):d("",!0),e.modelValue?.response?.data[0]?.video_url?(t(),m(s,{key:5,type:"info",size:"small",class:"btn-action",onClick:o[5]||(o[5]=g=>e.onPickAction(g,e.modelValue?.response,"object_insert"))},{default:p(()=>[_(l(e.$t("veo.button.actionObjectInsert")),1)]),_:1})):d("",!0),e.modelValue?.response?.data[0]?.video_url?(t(),m(s,{key:6,type:"info",size:"small",class:"btn-action",onClick:o[6]||(o[6]=g=>e.onPickAction(g,e.modelValue?.response,"object_remove"))},{default:p(()=>[_(l(e.$t("veo.button.actionObjectRemove")),1)]),_:1})):d("",!0),a(w,{class:"box-item",effect:"dark",content:e.$t("veo.message.downloadVideo"),placement:"top-start"},{default:p(()=>[e.modelValue?.response?.data[0]?.video_url?(t(),m(s,{key:0,type:"info",size:"small",class:"btn-action",onClick:o[7]||(o[7]=g=>e.onDownload(g,e.modelValue?.response?.data[0]?.video_url))},{default:p(()=>[_(l(e.$t("veo.button.download")),1)]),_:1})):d("",!0)]),_:1},8,["content"])])):d("",!0),a(S,{closable:!1,class:"mt-2 success"},{default:p(()=>[r("p",vt,[a($,{icon:"fa-solid fa-hashtag",class:"mr-1"}),_(" "+l(e.$t("veo.name.model"))+": "+l(e.modelValue?.request?.model),1)]),r("p",ft,[a($,{icon:"fa-solid fa-magic",class:"mr-1"}),_(" "+l(e.$t("veo.name.taskId"))+": "+l(e.modelValue?.id)+" ",1),a(h,{content:e.modelValue?.id},null,8,["content"])]),e.modelValue?.elapsed?(t(),i("p",_t,[a($,{icon:"fa-solid fa-clock",class:"mr-1"}),_(" "+l(e.$t("veo.name.elapsed"))+": "+l(e.modelValue?.elapsed?.toFixed(2))+"s ",1)])):d("",!0)]),_:1})])):d("",!0),e.modelValue?.response?.success===!1?(t(),i("div",ht,[a(S,{closable:!1,class:"failure"},{template:p(()=>[a($,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),_(" "+l(e.$t("veo.name.failure")),1)]),default:p(()=>[r("p",$t,[a($,{icon:"fa-solid fa-magic",class:"mr-1"}),_(" "+l(e.$t("veo.name.taskId"))+": "+l(e.modelValue?.id)+" ",1),a(h,{content:e.modelValue?.id},null,8,["content"])]),r("p",gt,[a($,{icon:"fa-solid fa-circle-info",class:"mr-1"}),_(" "+l(e.$t("veo.name.failureReason"))+": "+l(e.modelValue?.response?.error?.message)+" ",1),a(h,{content:e.modelValue?.response?.error?.message},null,8,["content"])]),e.modelValue?.elapsed?(t(),i("p",bt,[a($,{icon:"fa-solid fa-clock",class:"mr-1"}),_(" "+l(e.$t("veo.name.elapsed"))+": "+l(e.modelValue?.elapsed?.toFixed(2))+"s ",1)])):d("",!0),e.modelValue?.response?.trace_id?(t(),i("p",kt,[a($,{icon:"fa-solid fa-hashtag",class:"mr-1"}),_(" "+l(e.$t("veo.name.traceId"))+": "+l(e.modelValue?.response?.trace_id)+" ",1),a(h,{content:e.modelValue?.response?.trace_id},null,8,["content"])])):d("",!0)]),_:1})])):d("",!0),e.modelValue?.response?.success===void 0?(t(),i("div",yt,[a(S,{closable:!1,class:"info"},{template:p(()=>[a($,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),_(" "+l(e.$t("veo.name.failure")),1)]),default:p(()=>[r("p",Vt,[a($,{icon:"fa-solid fa-magic",class:"mr-1"}),_(" "+l(e.$t("veo.name.taskId"))+": "+l(e.modelValue?.id)+" ",1),a(h,{content:e.modelValue?.id},null,8,["content"])]),e.modelValue?.response?.trace_id?(t(),i("p",wt,[a($,{icon:"fa-solid fa-hashtag",class:"mr-1"}),_(" "+l(e.$t("veo.name.traceId"))+": "+l(e.modelValue?.response?.trace_id)+" ",1),a(h,{content:e.modelValue?.response?.trace_id},null,8,["content"])])):d("",!0)]),_:1})])):d("",!0)])])}const It=k(ot,[["render",Et],["__scopeId","data-v-83f2991f"]]),Tt=b({name:"RecentPanel",components:{TaskPreview:It,NoTasks:ye,BotPlaceholder:ke,ScrollList:re},props:{loading:{type:Boolean,default:!1}},emits:["reach-top"],data(){return{job:0}},computed:{tasks(){return{...this.$store.state.veo?.tasks,items:this.$store.state.veo?.tasks?.items?.slice()}}},methods:{getScrollElement(){return this.$refs.scrollList?.getScrollElement?.()}}}),St={key:0},Ct={key:2,class:"w-full h-full flex items-center justify-center"};function At(e,o,v,f,y,V){const c=n("bot-placeholder"),u=n("task-preview"),s=n("scroll-list"),w=n("no-tasks");return t(),i(E,null,[e.tasks?.items===void 0?(t(),i("div",St,[a(c)])):e.tasks?.items?.length&&e.tasks?.items?.length>0?(t(),m(s,{key:1,ref:"scrollList",class:"tasks h-full w-full overflow-y-auto",loading:e.loading,onReachTop:o[0]||(o[0]=$=>e.$emit("reach-top"))},{default:p(()=>[(t(!0),i(E,null,T(e.tasks?.items,($,h)=>(t(),m(u,{key:h,"model-value":$},null,8,["model-value"]))),128))]),_:1},8,["loading"])):d("",!0),e.tasks?.items?.length===0?(t(),i("div",Ct,[a(w)])):d("",!0)],64)}const Ot=k(Tt,[["render",At]]),Pt=Z("veo"),Ut=b({name:"VeoIndex",components:{ConfigPanel:et,Layout:Se,RecentPanel:Ot},inject:["initialized"],data(){return{task:void 0,job:0,loadingMore:!1,fetchingTasks:!1}},computed:{applicationsLoading(){return this.$store.state.veo?.status?.getApplications===M.Request},tasksLoading(){return this.$store.state.veo?.status?.getTasks===M.Request||this.fetchingTasks},credential(){return this.$store.state.veo.credential},config(){return this.$store.state.veo.config},tasks(){return this.$store.state.veo.tasks}},watch:{tasks:{handler(e,o){e?.items?.length>o?.items?.length&&console.debug("new tasks detected")},deep:!0},initialized:{async handler(e){e&&(console.debug("layout initialized"),await this.onGetTasks(),await this.onScrollDown(),this.job=window.setInterval(()=>{this.onGetTasks()},5e3))},immediate:!0}},async mounted(){await this.onGetService()},async unmounted(){window.clearInterval(this.job)},methods:{async onReachTop(){await ce({tasks:this.tasks,getTasks:()=>this.tasks,loading:this.loadingMore,setLoading:e=>this.loadingMore=e,isBlocked:()=>this.tasksLoading||this.applicationsLoading,fetch:e=>this.onGetTasks({createdAtMax:e}),getScrollElement:()=>this.getTasksScrollElement()})},async onGetService(){console.debug("start onGetService"),await this.$store.dispatch("veo/getService"),console.debug("end onGetService")},async onGetApplication(){console.debug("start onGetApplication"),await this.$store.dispatch("veo/getApplications"),console.debug("end onGetApplication"),await this.onGetTasks()},async onScrollDown(){await this.$nextTick();const e=this.getTasksScrollElement();e&&(e.scrollTop=e.scrollHeight)},async onGetTasks(e){if(this.applicationsLoading||this.fetchingTasks){console.debug("loading");return}console.debug("start onGetTasks",e);const{limit:o=5,createdAtMin:v,createdAtMax:f}=e||{};console.debug("limit",o,"createdAtMin",v,"createdAtMax",f),this.fetchingTasks=!0;try{await this.$store.dispatch("veo/getTasks",{limit:o,createdAtMin:v,createdAtMax:f})}finally{this.fetchingTasks=!1}},async onGenerate(){const e={...this.config,callback_url:Pt},o=this.credential?.token;if(!o){console.error("no token specified");return}if(e.action==="image2video"&&!(e.image_urls&&e.image_urls.length>0)){I.warning(this.$t("veo.message.imageRequired"));return}(!e.image_urls||e.image_urls.length===0)&&delete e.image_urls,I.info(this.$t("veo.message.startingTask")),W("veo",K.generate(e,{token:o})).then(()=>{I.success(this.$t("veo.message.startTaskSuccess"))}).catch(v=>{v?.response?.data?.error?.code===_e?I.error(this.$t("veo.message.usedUp")):I.error(this.$t("veo.message.startTaskFailed"))}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})},getTasksScrollElement(){return this.$refs.recentPanel?.getScrollElement?.()}}});function Lt(e,o,v,f,y,V){const c=n("config-panel"),u=n("recent-panel"),s=n("layout");return t(),m(s,null,{config:p(()=>[a(c,{onGenerate:e.onGenerate},null,8,["onGenerate"])]),result:p(()=>[a(u,{ref:"recentPanel",loading:e.loadingMore,onReachTop:e.onReachTop},null,8,["loading","onReachTop"])]),_:1})}const Ts=k(Ut,[["render",Lt]]);export{Ts as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{F as P}from"./index.es-BtXQMTTn.js";import{E as L}from"./index-CXaVYn6Y.js";import{E as O}from"./index-BPZpjd75.js";import{d as $,H as l,E as r,z as R,C as t,y as u,D as s,q as a,F as i,O as S,N as T,x as E,I as h,J as g,Q as U}from"./vendor-vue-NSDaktjZ.js";import{G as k,bl as q,cr as B,aF as F,n as j,S as C,cs as N}from"./index-sn-M2G3j.js";import{a as z,b as K,c as H}from"./pika-DpzVVVef.js";import{I as G,S as J,l as Q}from"./pagination-db75yZ2u.js";import{E as W}from"./index-DcrqZBpJ.js";import{E as D,a as M}from"./index-BHQ7eTJH.js";import{a as X,E as Y}from"./index-W-rm99M4.js";import{p as Z}from"./pasteUploadMixin-BurWbGNQ.js";import{I as x}from"./ImagePreview-x5gHatsw.js";import{E as ee}from"./index--Op4UAcU.js";import{E as V}from"./index-BcW07t7s.js";import{E as te}from"./index-Cqvt3jGg.js";import{C as oe}from"./Consumption-DMPBBMuR.js";import{a as se}from"./price-DZ9Sg1iv.js";import{b as ae,a as ne}from"./errorCode-Cqj9Td_Z.js";import{C as ie}from"./CopyToClipboard-0KzHJ2n1.js";import{s as le}from"./vue-plyr-BO2nlN4c.js";import{E as re}from"./index-BwY9SWpE.js";import{E as ce}from"./index-C0zlwvhh.js";import{E as pe}from"./index-cdSK5CZ9.js";import{B as de}from"./BotPlaceholder-DTEpzCnw.js";import{N as ue}from"./NoTasks-CmqpRtUm.js";import"./use-form-item-CxHQfC-K.js";import"./index-BuyEbX8F.js";import"./vendor-axios-B8_nURbH.js";import"./vendor-dayjs-v0j1UNZp.js";import"./vendor-vue-router-Kg6s1a65.js";import"./validator-sGNBghJE.js";import"./index-Casjirib.js";import"./index-DNHhSuIO.js";import"./typescript-CNgTribB.js";import"./strings-beZM2Y-f.js";import"./isEqual-BOBcA1pM.js";import"./_Uint8Array-EODQ339i.js";import"./castArray-BIv4qPOp.js";import"./debounce-B0MxE3fu.js";import"./_baseIteratee-D-GN-znu.js";import"./index-Bmi-jHmT.js";import"./index-B302Rib8.js";import"./_baseClone-C9Ert7_H.js";import"./_initCloneObject-C9kLDyf5.js";import"./index-CcHjHBm4.js";import"./index-ACNZqLLg.js";const me=$({name:"LayoutPika",components:{ElDrawer:O,ElButton:L,FontAwesomeIcon:P},data(){return{drawer:!1}}}),fe={class:"main flex flex-row flex-1"},_e={class:"config w-[320px] flex-none h-full overflow-y-auto bg-[var(--app-sidebar-bg)] border-r border-[var(--app-border-subtle)]"},he={class:"result h-full p-6 flex-1 flex flex-col min-w-0 overflow-x-hidden bg-[var(--app-content-bg)]"};function ge(e,o,c,d,v,b){const p=s("font-awesome-icon"),m=s("el-button"),n=s("el-drawer");return a(),l("div",fe,[r("div",_e,[R(e.$slots,"config",{},void 0,!0)]),r("div",he,[R(e.$slots,"result",{},void 0,!0)]),t(m,{circle:"",class:"menu",onClick:o[0]||(o[0]=y=>e.drawer=!0)},{default:u(()=>[t(p,{icon:"fa-solid fa-magic"})]),_:1}),t(n,{modelValue:e.drawer,"onUpdate:modelValue":o[1]||(o[1]=y=>e.drawer=y),direction:"ltr","with-header":!1,size:"350px"},{default:u(()=>[R(e.$slots,"config",{},void 0,!0)]),_:3},8,["modelValue"])])}const $e=k(me,[["render",ge],["__scopeId","data-v-c37215b1"]]),ke=$({name:"IngredientsSelector",components:{ElSwitch:W,InfoIcon:G},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=z)}}),ve={class:"field"},be={class:"title font-bold"};function ye(e,o,c,d,v,b){const p=s("el-switch"),m=s("info-icon");return a(),l("div",ve,[r("h2",be,i(e.$t("pika.name.ingredients")),1),t(p,{modelValue:e.value,"onUpdate:modelValue":o[0]||(o[0]=n=>e.value=n),class:"value"},null,8,["modelValue"]),t(m,{content:e.$t("pika.description.ingredients"),class:"info"},null,8,["content"])])}const we=k(ke,[["render",ye],["__scopeId","data-v-17c0af5c"]]),Ve=$({name:"EffectSelector",components:{ElSelect:M,ElOption:D},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})}}}}),Ee={class:"field"},Ie={class:"title font-bold"},Se={class:"float-left"};function Te(e,o,c,d,v,b){const p=s("el-option"),m=s("el-select");return a(),l("div",Ee,[r("h2",Ie,i(e.$t("pika.name.effect")),1),t(m,{modelValue:e.value,"onUpdate:modelValue":o[0]||(o[0]=n=>e.value=n),class:"value",placeholder:e.$t("pika.placeholder.select"),clearable:""},{default:u(()=>[(a(!0),l(S,null,T(e.options,n=>(a(),E(p,{key:n.value,label:n.label,value:n.value},{default:u(()=>[r("span",Se,i(n.label),1)]),_:2},1032,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const Ce=k(Ve,[["render",Te],["__scopeId","data-v-d1c54475"]]),Pe=$({name:"IngredientsModelSelector",components:{ElRadioButton:Y,ElRadioGroup:X},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=K)}}),Le={class:"field"},Ue={class:"title font-bold"};function Ae(e,o,c,d,v,b){const p=s("el-radio-button"),m=s("el-radio-group");return a(),l("div",Le,[r("h2",Ue,i(e.$t("pika.name.ingredientsModel")),1),t(m,{modelValue:e.value,"onUpdate:modelValue":o[0]||(o[0]=n=>e.value=n),class:"quality"},{default:u(()=>[(a(!0),l(S,null,T(e.options,n=>(a(),E(p,{key:n.value,label:n.value},{default:u(()=>[h(i(n.label),1)]),_:2},1032,["label"]))),128))]),_:1},8,["modelValue"])])}const Re=k(Pe,[["render",Ae],["__scopeId","data-v-b72865fa"]]),Ge=$({name:"ModelSelector",components:{ElSelect:M,ElOption:D},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=H)}}),De={class:"field"},Me={class:"title font-bold"};function Oe(e,o,c,d,v,b){const p=s("el-option"),m=s("el-select");return a(),l("div",De,[r("h2",Me,i(e.$t("pika.name.model")),1),t(m,{modelValue:e.value,"onUpdate:modelValue":o[0]||(o[0]=n=>e.value=n),class:"value",placeholder:e.$t("pika.placeholder.select")},{default:u(()=>[(a(!0),l(S,null,T(e.options,n=>(a(),E(p,{key:n.value,label:n.label,value:n.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const qe=k(Ge,[["render",Oe],["__scopeId","data-v-7b2e870a"]]),Be=$({name:"ImageUrlInput",components:{ElUpload:ee,ElButton:L,InfoIcon:G,ImagePreview:x,FontAwesomeIcon:P},mixins:[Z],data(){return{fileList:[],uploadUrl:q()+"/api/v1/files/"}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},urls(){return this.fileList.map(e=>e?.response?.file_url)},value:{get(){return this.$store.state.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()}}}),Fe={class:"field"},je={class:"title font-bold"},Ne={class:"upload-wrapper"};function ze(e,o,c,d,v,b){const p=s("image-preview"),m=s("font-awesome-icon"),n=s("el-button"),y=s("el-upload"),f=s("info-icon");return a(),l("div",Fe,[r("h2",je,i(e.$t("pika.name.imageUrl")),1),r("div",Ne,[t(y,{ref:"uploader","file-list":e.fileList,"onUpdate:fileList":o[0]||(o[0]=_=>e.fileList=_),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:_})=>[t(p,{url:_.url||_.response?.file_url,name:_.name,percentage:_.percentage,onRemove:I=>e.fileList.splice(e.fileList.indexOf(_),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(f,{content:e.$t("pika.description.imageUrl"),class:"info"},null,8,["content"])])}const Ke=k(Be,[["render",ze],["__scopeId","data-v-a948772f"]]),He="",Je=$({name:"PromptInput",components:{ElInput:te,InfoIcon:G},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=He)}}),Qe={class:"field"},We={class:"box"},Xe={class:"title font-bold"};function Ye(e,o,c,d,v,b){const p=s("info-icon"),m=s("el-input");return a(),l("div",Qe,[r("div",We,[r("h2",Xe,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":o[0]||(o[0]=n=>e.prompt=n),rows:3,type:"textarea",class:"prompt",placeholder:e.$t("pika.placeholder.prompt")},null,8,["modelValue","placeholder"])])}const Ze=k(Je,[["render",Ye],["__scopeId","data-v-d7f7cedd"]]),xe=$({name:"PresetPanel",components:{ImageUrlInput:Ke,ElButton:L,FontAwesomeIcon:P,Consumption:oe,PromptInput:Ze,IngredientsSelector:we,IngredientsModelSelector:Re,ModelSelector:qe,EffectSelector:Ce},emits:["generate"],computed:{config(){return this.$store.state.pika?.config},consumption(){return se(this.config,this.service?.cost)},service(){return this.$store.state.pika?.service}},methods:{onGenerate(){this.$emit("generate")}}}),et={class:"flex flex-col h-full"},tt={class:"flex-1 overflow-y-auto p-5"},ot={class:"flex flex-col items-center justify-center px-5 pb-5"};function st(e,o,c,d,v,b){const p=s("prompt-input"),m=s("model-selector"),n=s("ingredients-selector"),y=s("effect-selector"),f=s("image-url-input"),_=s("ingredients-model-selector"),I=s("consumption"),w=s("font-awesome-icon"),A=s("el-button");return a(),l("div",et,[r("div",tt,[t(p,{class:"mb-4"}),t(m,{class:"mb-4"}),t(n,{class:"mb-4"}),t(y,{class:"mb-4"}),e.config?.ingredients?(a(),E(f,{key:0,class:"mb-4"})):g("",!0),e.config?.ingredients?(a(),E(_,{key:1,class:"mb-4"})):g("",!0)]),r("div",ot,[t(I,{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 at=k(xe,[["render",st]]),nt=$({name:"VideoPlayer",components:{VuePlyr:le},props:{modelValue:{type:Object,required:!0}},data(){return{options:{quality:{default:"1080p"}}}}}),it=["data-poster"],lt=["src"];function rt(e,o,c,d,v,b){const p=s("vue-plyr");return a(),l("div",null,[t(p,{options:e.options,class:"video"},{default:u(()=>[r("video",{controls:"",crossorigin:"",playsinline:"","data-poster":e.modelValue?.image_url},[r("source",{size:"1080",src:e.modelValue?.video_url,type:"video/mp4"},null,8,lt)],8,it)]),_:1},8,["options"])])}const ct=k(nt,[["render",rt],["__scopeId","data-v-fc420430"]]),pt=$({name:"TaskPreview",components:{ElImage:pe,CopyToClipboard:ie,FontAwesomeIcon:P,ElAlert:ce,VideoPlayer:ct,ElTooltip:re,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 o=this.modelValue?.request?.action;return Array.isArray(this.modelValue?.response?.data)&&this.modelValue?.response?.data?.forEach(c=>{let d=c;o&&(d.action=o),e.push(d)}),e}},methods:{onDownload(e){console.log("on download"),window.open(e,"_blank")},onReload(e){const o=e.target,c=new URL(o.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;o.src=c.toString()},onOpenVideo(e){window.open(e,"_blank")}}}),dt={class:"left"},ut={class:"main"},mt={class:"bot"},ft={class:"datetime"},_t={class:"info"},ht={key:0,class:"prompt mt-2"},gt={key:0},$t={key:1},kt={key:0,class:U({content:!0,failed:!0})},vt={class:"image-wrapper"},bt={key:0,class:U({operations:!0,"mt-2":!0})},yt={key:0,class:"description"},wt={class:"description"},Vt={key:1,class:"description"},Et={key:1,class:U({content:!0})},It={class:"description"},St={class:"description"},Tt={key:0,class:"description"},Ct={class:"description"},Pt={key:2,class:U({content:!0})},Lt={class:"description"};function Ut(e,o,c,d,v,b){const p=s("el-image"),m=s("VideoPlayer"),n=s("el-button"),y=s("el-tooltip"),f=s("font-awesome-icon"),_=s("copy-to-clipboard"),I=s("el-alert");return a(!0),l(S,null,T(e.videos,(w,A)=>(a(),l("div",{key:A,class:"preview"},[r("div",dt,[t(p,{src:"https://cdn.acedata.cloud/i80tgn.png",class:"avatar"})]),r("div",ut,[r("div",mt,[h(i(e.$t("pika.name.pikaBot"))+" ",1),r("span",ft,i(e.$dayjs.format(""+new Date(parseFloat((e.modelValue?.created_at||"").toString())*1e3))),1)]),r("div",_t,[e.modelValue?.request?.prompt?(a(),l("p",ht,[h(i(e.modelValue?.request?.prompt)+" ",1),e.modelValue?.response?g("",!0):(a(),l("span",gt," - ("+i(e.$t("pika.status.pending"))+") ",1)),w?.state==="processing"||w?.state==="pending"?(a(),l("span",$t," - ("+i(e.$t("pika.status.processing"))+") ",1)):g("",!0)])):g("",!0)]),e.modelValue?.response?.success===!0?(a(),l("div",kt,[r("div",vt,[t(m,{"model-value":w},null,8,["model-value"])]),w?(a(),l("div",bt,[t(y,{class:"box-item",effect:"dark",content:e.$t("pika.message.downloadVideo"),placement:"top-start"},{default:u(()=>[w?.video_url?(a(),E(n,{key:0,type:"info",size:"small",class:"btn-action",onClick:jt=>e.onDownload(w?.video_url)},{default:u(()=>[h(i(e.$t("pika.button.download")),1)]),_:1},8,["onClick"])):g("",!0)]),_:2},1032,["content"])])):g("",!0),t(I,{closable:!1,class:"mt-2 success"},{default:u(()=>[e.modelValue?.request?.model?(a(),l("p",yt,[t(f,{icon:"fa-solid fa-hashtag",class:"mr-1"}),h(" "+i(e.$t("pika.name.model"))+": "+i(e.modelValue?.request?.model),1)])):g("",!0),r("p",wt,[t(f,{icon:"fa-solid fa-magic",class:"mr-1"}),h(" "+i(e.$t("pika.name.taskId"))+": "+i(e.modelValue?.id)+" ",1),t(_,{content:e.modelValue?.id,class:"btn-copy"},null,8,["content"])]),e.modelValue?.elapsed?(a(),l("p",Vt,[t(f,{icon:"fa-solid fa-clock",class:"mr-1"}),h(" "+i(e.$t("pika.name.elapsed"))+": "+i(e.modelValue?.elapsed?.toFixed(2))+"s ",1)])):g("",!0)]),_:1})])):g("",!0),e.modelValue?.response?.success===!1?(a(),l("div",Et,[t(I,{closable:!1,class:"failure"},{template:u(()=>[t(f,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),h(" "+i(e.$t("pika.name.failure")),1)]),default:u(()=>[r("p",It,[t(f,{icon:"fa-solid fa-magic",class:"mr-1"}),h(" "+i(e.$t("pika.name.taskId"))+": "+i(e.modelValue?.id)+" ",1),t(_,{content:e.modelValue?.id,class:"btn-copy"},null,8,["content"])]),r("p",St,[t(f,{icon:"fa-solid fa-circle-info",class:"mr-1"}),h(" "+i(e.$t("pika.name.failureReason"))+": "+i(e.modelValue?.response?.error?.message)+" ",1),t(_,{content:e.modelValue?.response?.error?.message,class:"btn-copy"},null,8,["content"])]),e.modelValue?.elapsed?(a(),l("p",Tt,[t(f,{icon:"fa-solid fa-clock",class:"mr-1"}),h(" "+i(e.$t("pika.name.elapsed"))+": "+i(e.modelValue?.elapsed?.toFixed(2))+"s ",1)])):g("",!0),r("p",Ct,[t(f,{icon:"fa-solid fa-hashtag",class:"mr-1"}),h(" "+i(e.$t("pika.name.traceId"))+": "+i(e.modelValue?.response?.trace_id)+" ",1),t(_,{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(),l("div",Pt,[t(I,{closable:!1,class:"info"},{template:u(()=>[t(f,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),h(" "+i(e.$t("pika.name.failure")),1)]),default:u(()=>[r("p",Lt,[t(f,{icon:"fa-solid fa-magic",class:"mr-1"}),h(" "+i(e.$t("pika.name.taskId"))+": "+i(e.modelValue?.id)+" ",1),t(_,{content:e.modelValue?.id,class:"btn-copy"},null,8,["content"])])]),_:1})])):g("",!0)])]))),128)}const At=k(pt,[["render",Ut],["__scopeId","data-v-41fe2be6"]]),Rt=$({name:"RecentPanel",components:{TaskPreview:At,BotPlaceholder:de,NoTasks:ue,ScrollList:J},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?.()}}}),Gt={key:0},Dt={key:2,class:"w-full h-full flex items-center justify-center"};function Mt(e,o,c,d,v,b){const p=s("bot-placeholder"),m=s("task-preview"),n=s("scroll-list"),y=s("no-tasks");return a(),l(S,null,[e.tasks?.items===void 0?(a(),l("div",Gt,[t(p)])):e.tasks?.items?.length&&e.tasks?.items?.length>0?(a(),E(n,{key:1,ref:"scrollList",class:"tasks h-full w-full overflow-y-auto",loading:e.loading,onReachTop:o[0]||(o[0]=f=>e.$emit("reach-top"))},{default:u(()=>[(a(!0),l(S,null,T(e.tasks?.items,(f,_)=>(a(),E(m,{key:_,"model-value":f},null,8,["model-value"]))),128))]),_:1},8,["loading"])):g("",!0),e.tasks?.items?.length===0?(a(),l("div",Dt,[t(y)])):g("",!0)],64)}const Ot=k(Rt,[["render",Mt]]),qt=N("pika"),Bt=$({name:"PikaIndex",components:{ConfigPanel:at,Layout:$e,RecentPanel:Ot},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,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 Q({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(){j.create({application:this.application}).then(({data:e})=>{this.application=e,V.success(this.$t("application.message.applySuccessfully"))}).catch(e=>{e?.response?.data?.code===ne&&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:o=5,createdAtMin:c,createdAtMax:d}=e||{};console.debug("limit",o,"createdAtMin",c,"createdAtMax",d),this.fetchingTasks=!0;try{await this.$store.dispatch("pika/getTasks",{limit:o,createdAtMin:c,createdAtMax:d})}finally{this.fetchingTasks=!1}},async onGenerate(){const e={...this.config,callback_url:qt},o=this.credential?.token;if(!o){console.error("no token specified");return}V.info(this.$t("pika.message.startingTask")),B("pika",F.generate(e,{token:o})).then(()=>{V.success(this.$t("pika.message.startTaskSuccess")),this.$store.commit("pika/setConfig",{config:void 0})}).catch(c=>{c?.response?.data?.error?.code===ae?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 Ft(e,o,c,d,v,b){const p=s("config-panel"),m=s("recent-panel"),n=s("layout");return a(),E(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 Do=k(Bt,[["render",Ft],["__scopeId","data-v-3cd7cf5b"]]);export{Do as default};
|
|
1
|
+
import{F as P}from"./index.es-8EnvYue2.js";import{E as L}from"./index-BohXbZ2r.js";import{E as O}from"./index-1duw3meC.js";import{d as $,H as l,E as r,z as R,C as t,y as u,D as s,q as a,F as i,O as S,N as T,x as E,I as h,J as g,Q as U}from"./vendor-vue-NSDaktjZ.js";import{G as k,bl as q,cu as B,aF as F,n as j,S as C,cv as N}from"./index-C769Onuz.js";import{a as z,b as K,c as H}from"./pika-DpzVVVef.js";import{I as G,S as J,l as Q}from"./pagination-B_rXIxYu.js";import{E as W}from"./index-BptLZSby.js";import{E as D,a as M}from"./index-trZQ27KC.js";import{a as X,E as Y}from"./index-4UPfIKvp.js";import{p as Z}from"./pasteUploadMixin-BurWbGNQ.js";import{I as x}from"./ImagePreview-DRhaeMj1.js";import{E as ee}from"./index-BfcZVTcY.js";import{E as V}from"./index-C35824SI.js";import{E as te}from"./index-C6A_7e6l.js";import{C as oe}from"./Consumption-C8V--EC7.js";import{a as se}from"./price-DeJrvwM_.js";import{b as ae,a as ne}from"./errorCode-Cqj9Td_Z.js";import{C as ie}from"./CopyToClipboard-BN_GVB08.js";import{s as le}from"./vue-plyr-BO2nlN4c.js";import{E as re}from"./index-DH4uKXiW.js";import{E as ce}from"./index-DGqxXaJY.js";import{E as pe}from"./index-BxMpD69n.js";import{B as de}from"./BotPlaceholder-Lxsi7yXh.js";import{N as ue}from"./NoTasks-B39yxIND.js";import"./use-form-item-Ck1g57NC.js";import"./index-BuyEbX8F.js";import"./vendor-axios-B8_nURbH.js";import"./vendor-dayjs-v0j1UNZp.js";import"./vendor-vue-router-Kg6s1a65.js";import"./validator-DZuVAlZj.js";import"./index-_gGwul3Q.js";import"./index-DsyghaSY.js";import"./typescript-C3d9MWp0.js";import"./strings-beZM2Y-f.js";import"./isEqual-CCeFlspg.js";import"./_Uint8Array-0ZrewKty.js";import"./castArray-MGnU8s5j.js";import"./debounce-BKi6w8Na.js";import"./_baseIteratee-BaCwCO2P.js";import"./index-M199edT7.js";import"./index-Bjh2SIj8.js";import"./_baseClone-I25WNFTn.js";import"./_initCloneObject-BBp5M13E.js";import"./index-CqA61rPt.js";import"./index-1uyc0tg8.js";const me=$({name:"LayoutPika",components:{ElDrawer:O,ElButton:L,FontAwesomeIcon:P},data(){return{drawer:!1}}}),fe={class:"main flex flex-row flex-1"},_e={class:"config w-[320px] flex-none h-full overflow-y-auto bg-[var(--app-sidebar-bg)] border-r border-[var(--app-border-subtle)]"},he={class:"result h-full p-6 flex-1 flex flex-col min-w-0 overflow-x-hidden bg-[var(--app-content-bg)]"};function ge(e,o,c,d,v,b){const p=s("font-awesome-icon"),m=s("el-button"),n=s("el-drawer");return a(),l("div",fe,[r("div",_e,[R(e.$slots,"config",{},void 0,!0)]),r("div",he,[R(e.$slots,"result",{},void 0,!0)]),t(m,{circle:"",class:"menu",onClick:o[0]||(o[0]=y=>e.drawer=!0)},{default:u(()=>[t(p,{icon:"fa-solid fa-magic"})]),_:1}),t(n,{modelValue:e.drawer,"onUpdate:modelValue":o[1]||(o[1]=y=>e.drawer=y),direction:"ltr","with-header":!1,size:"350px"},{default:u(()=>[R(e.$slots,"config",{},void 0,!0)]),_:3},8,["modelValue"])])}const $e=k(me,[["render",ge],["__scopeId","data-v-c37215b1"]]),ke=$({name:"IngredientsSelector",components:{ElSwitch:W,InfoIcon:G},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=z)}}),ve={class:"field"},be={class:"title font-bold"};function ye(e,o,c,d,v,b){const p=s("el-switch"),m=s("info-icon");return a(),l("div",ve,[r("h2",be,i(e.$t("pika.name.ingredients")),1),t(p,{modelValue:e.value,"onUpdate:modelValue":o[0]||(o[0]=n=>e.value=n),class:"value"},null,8,["modelValue"]),t(m,{content:e.$t("pika.description.ingredients"),class:"info"},null,8,["content"])])}const we=k(ke,[["render",ye],["__scopeId","data-v-17c0af5c"]]),Ve=$({name:"EffectSelector",components:{ElSelect:M,ElOption:D},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})}}}}),Ee={class:"field"},Ie={class:"title font-bold"},Se={class:"float-left"};function Te(e,o,c,d,v,b){const p=s("el-option"),m=s("el-select");return a(),l("div",Ee,[r("h2",Ie,i(e.$t("pika.name.effect")),1),t(m,{modelValue:e.value,"onUpdate:modelValue":o[0]||(o[0]=n=>e.value=n),class:"value",placeholder:e.$t("pika.placeholder.select"),clearable:""},{default:u(()=>[(a(!0),l(S,null,T(e.options,n=>(a(),E(p,{key:n.value,label:n.label,value:n.value},{default:u(()=>[r("span",Se,i(n.label),1)]),_:2},1032,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const Ce=k(Ve,[["render",Te],["__scopeId","data-v-d1c54475"]]),Pe=$({name:"IngredientsModelSelector",components:{ElRadioButton:Y,ElRadioGroup:X},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=K)}}),Le={class:"field"},Ue={class:"title font-bold"};function Ae(e,o,c,d,v,b){const p=s("el-radio-button"),m=s("el-radio-group");return a(),l("div",Le,[r("h2",Ue,i(e.$t("pika.name.ingredientsModel")),1),t(m,{modelValue:e.value,"onUpdate:modelValue":o[0]||(o[0]=n=>e.value=n),class:"quality"},{default:u(()=>[(a(!0),l(S,null,T(e.options,n=>(a(),E(p,{key:n.value,label:n.value},{default:u(()=>[h(i(n.label),1)]),_:2},1032,["label"]))),128))]),_:1},8,["modelValue"])])}const Re=k(Pe,[["render",Ae],["__scopeId","data-v-b72865fa"]]),Ge=$({name:"ModelSelector",components:{ElSelect:M,ElOption:D},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=H)}}),De={class:"field"},Me={class:"title font-bold"};function Oe(e,o,c,d,v,b){const p=s("el-option"),m=s("el-select");return a(),l("div",De,[r("h2",Me,i(e.$t("pika.name.model")),1),t(m,{modelValue:e.value,"onUpdate:modelValue":o[0]||(o[0]=n=>e.value=n),class:"value",placeholder:e.$t("pika.placeholder.select")},{default:u(()=>[(a(!0),l(S,null,T(e.options,n=>(a(),E(p,{key:n.value,label:n.label,value:n.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const qe=k(Ge,[["render",Oe],["__scopeId","data-v-7b2e870a"]]),Be=$({name:"ImageUrlInput",components:{ElUpload:ee,ElButton:L,InfoIcon:G,ImagePreview:x,FontAwesomeIcon:P},mixins:[Z],data(){return{fileList:[],uploadUrl:q()+"/api/v1/files/"}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},urls(){return this.fileList.map(e=>e?.response?.file_url)},value:{get(){return this.$store.state.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()}}}),Fe={class:"field"},je={class:"title font-bold"},Ne={class:"upload-wrapper"};function ze(e,o,c,d,v,b){const p=s("image-preview"),m=s("font-awesome-icon"),n=s("el-button"),y=s("el-upload"),f=s("info-icon");return a(),l("div",Fe,[r("h2",je,i(e.$t("pika.name.imageUrl")),1),r("div",Ne,[t(y,{ref:"uploader","file-list":e.fileList,"onUpdate:fileList":o[0]||(o[0]=_=>e.fileList=_),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:_})=>[t(p,{url:_.url||_.response?.file_url,name:_.name,percentage:_.percentage,onRemove:I=>e.fileList.splice(e.fileList.indexOf(_),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(f,{content:e.$t("pika.description.imageUrl"),class:"info"},null,8,["content"])])}const Ke=k(Be,[["render",ze],["__scopeId","data-v-a948772f"]]),He="",Je=$({name:"PromptInput",components:{ElInput:te,InfoIcon:G},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=He)}}),Qe={class:"field"},We={class:"box"},Xe={class:"title font-bold"};function Ye(e,o,c,d,v,b){const p=s("info-icon"),m=s("el-input");return a(),l("div",Qe,[r("div",We,[r("h2",Xe,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":o[0]||(o[0]=n=>e.prompt=n),rows:3,type:"textarea",class:"prompt",placeholder:e.$t("pika.placeholder.prompt")},null,8,["modelValue","placeholder"])])}const Ze=k(Je,[["render",Ye],["__scopeId","data-v-d7f7cedd"]]),xe=$({name:"PresetPanel",components:{ImageUrlInput:Ke,ElButton:L,FontAwesomeIcon:P,Consumption:oe,PromptInput:Ze,IngredientsSelector:we,IngredientsModelSelector:Re,ModelSelector:qe,EffectSelector:Ce},emits:["generate"],computed:{config(){return this.$store.state.pika?.config},consumption(){return se(this.config,this.service?.cost)},service(){return this.$store.state.pika?.service}},methods:{onGenerate(){this.$emit("generate")}}}),et={class:"flex flex-col h-full"},tt={class:"flex-1 overflow-y-auto p-5"},ot={class:"flex flex-col items-center justify-center px-5 pb-5"};function st(e,o,c,d,v,b){const p=s("prompt-input"),m=s("model-selector"),n=s("ingredients-selector"),y=s("effect-selector"),f=s("image-url-input"),_=s("ingredients-model-selector"),I=s("consumption"),w=s("font-awesome-icon"),A=s("el-button");return a(),l("div",et,[r("div",tt,[t(p,{class:"mb-4"}),t(m,{class:"mb-4"}),t(n,{class:"mb-4"}),t(y,{class:"mb-4"}),e.config?.ingredients?(a(),E(f,{key:0,class:"mb-4"})):g("",!0),e.config?.ingredients?(a(),E(_,{key:1,class:"mb-4"})):g("",!0)]),r("div",ot,[t(I,{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 at=k(xe,[["render",st]]),nt=$({name:"VideoPlayer",components:{VuePlyr:le},props:{modelValue:{type:Object,required:!0}},data(){return{options:{quality:{default:"1080p"}}}}}),it=["data-poster"],lt=["src"];function rt(e,o,c,d,v,b){const p=s("vue-plyr");return a(),l("div",null,[t(p,{options:e.options,class:"video"},{default:u(()=>[r("video",{controls:"",crossorigin:"",playsinline:"","data-poster":e.modelValue?.image_url},[r("source",{size:"1080",src:e.modelValue?.video_url,type:"video/mp4"},null,8,lt)],8,it)]),_:1},8,["options"])])}const ct=k(nt,[["render",rt],["__scopeId","data-v-fc420430"]]),pt=$({name:"TaskPreview",components:{ElImage:pe,CopyToClipboard:ie,FontAwesomeIcon:P,ElAlert:ce,VideoPlayer:ct,ElTooltip:re,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 o=this.modelValue?.request?.action;return Array.isArray(this.modelValue?.response?.data)&&this.modelValue?.response?.data?.forEach(c=>{let d=c;o&&(d.action=o),e.push(d)}),e}},methods:{onDownload(e){console.log("on download"),window.open(e,"_blank")},onReload(e){const o=e.target,c=new URL(o.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;o.src=c.toString()},onOpenVideo(e){window.open(e,"_blank")}}}),dt={class:"left"},ut={class:"main"},mt={class:"bot"},ft={class:"datetime"},_t={class:"info"},ht={key:0,class:"prompt mt-2"},gt={key:0},$t={key:1},kt={key:0,class:U({content:!0,failed:!0})},vt={class:"image-wrapper"},bt={key:0,class:U({operations:!0,"mt-2":!0})},yt={key:0,class:"description"},wt={class:"description"},Vt={key:1,class:"description"},Et={key:1,class:U({content:!0})},It={class:"description"},St={class:"description"},Tt={key:0,class:"description"},Ct={class:"description"},Pt={key:2,class:U({content:!0})},Lt={class:"description"};function Ut(e,o,c,d,v,b){const p=s("el-image"),m=s("VideoPlayer"),n=s("el-button"),y=s("el-tooltip"),f=s("font-awesome-icon"),_=s("copy-to-clipboard"),I=s("el-alert");return a(!0),l(S,null,T(e.videos,(w,A)=>(a(),l("div",{key:A,class:"preview"},[r("div",dt,[t(p,{src:"https://cdn.acedata.cloud/i80tgn.png",class:"avatar"})]),r("div",ut,[r("div",mt,[h(i(e.$t("pika.name.pikaBot"))+" ",1),r("span",ft,i(e.$dayjs.format(""+new Date(parseFloat((e.modelValue?.created_at||"").toString())*1e3))),1)]),r("div",_t,[e.modelValue?.request?.prompt?(a(),l("p",ht,[h(i(e.modelValue?.request?.prompt)+" ",1),e.modelValue?.response?g("",!0):(a(),l("span",gt," - ("+i(e.$t("pika.status.pending"))+") ",1)),w?.state==="processing"||w?.state==="pending"?(a(),l("span",$t," - ("+i(e.$t("pika.status.processing"))+") ",1)):g("",!0)])):g("",!0)]),e.modelValue?.response?.success===!0?(a(),l("div",kt,[r("div",vt,[t(m,{"model-value":w},null,8,["model-value"])]),w?(a(),l("div",bt,[t(y,{class:"box-item",effect:"dark",content:e.$t("pika.message.downloadVideo"),placement:"top-start"},{default:u(()=>[w?.video_url?(a(),E(n,{key:0,type:"info",size:"small",class:"btn-action",onClick:jt=>e.onDownload(w?.video_url)},{default:u(()=>[h(i(e.$t("pika.button.download")),1)]),_:1},8,["onClick"])):g("",!0)]),_:2},1032,["content"])])):g("",!0),t(I,{closable:!1,class:"mt-2 success"},{default:u(()=>[e.modelValue?.request?.model?(a(),l("p",yt,[t(f,{icon:"fa-solid fa-hashtag",class:"mr-1"}),h(" "+i(e.$t("pika.name.model"))+": "+i(e.modelValue?.request?.model),1)])):g("",!0),r("p",wt,[t(f,{icon:"fa-solid fa-magic",class:"mr-1"}),h(" "+i(e.$t("pika.name.taskId"))+": "+i(e.modelValue?.id)+" ",1),t(_,{content:e.modelValue?.id,class:"btn-copy"},null,8,["content"])]),e.modelValue?.elapsed?(a(),l("p",Vt,[t(f,{icon:"fa-solid fa-clock",class:"mr-1"}),h(" "+i(e.$t("pika.name.elapsed"))+": "+i(e.modelValue?.elapsed?.toFixed(2))+"s ",1)])):g("",!0)]),_:1})])):g("",!0),e.modelValue?.response?.success===!1?(a(),l("div",Et,[t(I,{closable:!1,class:"failure"},{template:u(()=>[t(f,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),h(" "+i(e.$t("pika.name.failure")),1)]),default:u(()=>[r("p",It,[t(f,{icon:"fa-solid fa-magic",class:"mr-1"}),h(" "+i(e.$t("pika.name.taskId"))+": "+i(e.modelValue?.id)+" ",1),t(_,{content:e.modelValue?.id,class:"btn-copy"},null,8,["content"])]),r("p",St,[t(f,{icon:"fa-solid fa-circle-info",class:"mr-1"}),h(" "+i(e.$t("pika.name.failureReason"))+": "+i(e.modelValue?.response?.error?.message)+" ",1),t(_,{content:e.modelValue?.response?.error?.message,class:"btn-copy"},null,8,["content"])]),e.modelValue?.elapsed?(a(),l("p",Tt,[t(f,{icon:"fa-solid fa-clock",class:"mr-1"}),h(" "+i(e.$t("pika.name.elapsed"))+": "+i(e.modelValue?.elapsed?.toFixed(2))+"s ",1)])):g("",!0),r("p",Ct,[t(f,{icon:"fa-solid fa-hashtag",class:"mr-1"}),h(" "+i(e.$t("pika.name.traceId"))+": "+i(e.modelValue?.response?.trace_id)+" ",1),t(_,{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(),l("div",Pt,[t(I,{closable:!1,class:"info"},{template:u(()=>[t(f,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),h(" "+i(e.$t("pika.name.failure")),1)]),default:u(()=>[r("p",Lt,[t(f,{icon:"fa-solid fa-magic",class:"mr-1"}),h(" "+i(e.$t("pika.name.taskId"))+": "+i(e.modelValue?.id)+" ",1),t(_,{content:e.modelValue?.id,class:"btn-copy"},null,8,["content"])])]),_:1})])):g("",!0)])]))),128)}const At=k(pt,[["render",Ut],["__scopeId","data-v-41fe2be6"]]),Rt=$({name:"RecentPanel",components:{TaskPreview:At,BotPlaceholder:de,NoTasks:ue,ScrollList:J},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?.()}}}),Gt={key:0},Dt={key:2,class:"w-full h-full flex items-center justify-center"};function Mt(e,o,c,d,v,b){const p=s("bot-placeholder"),m=s("task-preview"),n=s("scroll-list"),y=s("no-tasks");return a(),l(S,null,[e.tasks?.items===void 0?(a(),l("div",Gt,[t(p)])):e.tasks?.items?.length&&e.tasks?.items?.length>0?(a(),E(n,{key:1,ref:"scrollList",class:"tasks h-full w-full overflow-y-auto",loading:e.loading,onReachTop:o[0]||(o[0]=f=>e.$emit("reach-top"))},{default:u(()=>[(a(!0),l(S,null,T(e.tasks?.items,(f,_)=>(a(),E(m,{key:_,"model-value":f},null,8,["model-value"]))),128))]),_:1},8,["loading"])):g("",!0),e.tasks?.items?.length===0?(a(),l("div",Dt,[t(y)])):g("",!0)],64)}const Ot=k(Rt,[["render",Mt]]),qt=N("pika"),Bt=$({name:"PikaIndex",components:{ConfigPanel:at,Layout:$e,RecentPanel:Ot},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,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 Q({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(){j.create({application:this.application}).then(({data:e})=>{this.application=e,V.success(this.$t("application.message.applySuccessfully"))}).catch(e=>{e?.response?.data?.code===ne&&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:o=5,createdAtMin:c,createdAtMax:d}=e||{};console.debug("limit",o,"createdAtMin",c,"createdAtMax",d),this.fetchingTasks=!0;try{await this.$store.dispatch("pika/getTasks",{limit:o,createdAtMin:c,createdAtMax:d})}finally{this.fetchingTasks=!1}},async onGenerate(){const e={...this.config,callback_url:qt},o=this.credential?.token;if(!o){console.error("no token specified");return}V.info(this.$t("pika.message.startingTask")),B("pika",F.generate(e,{token:o})).then(()=>{V.success(this.$t("pika.message.startTaskSuccess")),this.$store.commit("pika/setConfig",{config:void 0})}).catch(c=>{c?.response?.data?.error?.code===ae?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 Ft(e,o,c,d,v,b){const p=s("config-panel"),m=s("recent-panel"),n=s("layout");return a(),E(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 Do=k(Bt,[["render",Ft],["__scopeId","data-v-3cd7cf5b"]]);export{Do as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{F as T}from"./index.es-BtXQMTTn.js";import{E as L}from"./index-CXaVYn6Y.js";import{E as j}from"./index-BPZpjd75.js";import{d as v,H as i,E as r,z as S,C as t,y as f,D as s,q as a,F as l,O as V,N as I,x as w,I as _,J as $,Q as U}from"./vendor-vue-NSDaktjZ.js";import{G as b,bl as F,cr as D,aP as M,S as A,cs as B}from"./index-sn-M2G3j.js";import{a as O,b as N,c as q}from"./flux-BDAe6Szo.js";import{E as G,a as P}from"./index-BHQ7eTJH.js";import{I as C,S as z,l as X}from"./pagination-db75yZ2u.js";import{E as H}from"./index-CdHfJxny.js";import{E as W}from"./index-CCovkvn5.js";import{p as J}from"./pasteUploadMixin-BurWbGNQ.js";import{I as K}from"./ImagePreview-x5gHatsw.js";import{E as Q}from"./index--Op4UAcU.js";import{E as y}from"./index-BcW07t7s.js";import{E as Y}from"./index-Cqvt3jGg.js";import{C as Z}from"./Consumption-DMPBBMuR.js";import{a as ee}from"./price-DZ9Sg1iv.js";import{b as te}from"./errorCode-Cqj9Td_Z.js";import{C as oe}from"./CopyToClipboard-0KzHJ2n1.js";import{I as se}from"./ImageWrapper-oFaymVG-.js";import{E as ne}from"./index-C0zlwvhh.js";import{E as le}from"./index-cdSK5CZ9.js";import{B as ae}from"./BotPlaceholder-DTEpzCnw.js";import{N as re}from"./NoTasks-CmqpRtUm.js";import"./use-form-item-CxHQfC-K.js";import"./index-BuyEbX8F.js";import"./vendor-axios-B8_nURbH.js";import"./vendor-dayjs-v0j1UNZp.js";import"./vendor-vue-router-Kg6s1a65.js";import"./index-BwY9SWpE.js";import"./index-Casjirib.js";import"./typescript-CNgTribB.js";import"./index-DNHhSuIO.js";import"./strings-beZM2Y-f.js";import"./isEqual-BOBcA1pM.js";import"./_Uint8Array-EODQ339i.js";import"./castArray-BIv4qPOp.js";import"./debounce-B0MxE3fu.js";import"./_baseIteratee-D-GN-znu.js";import"./index-Bmi-jHmT.js";import"./index-Cu41y2Fl.js";import"./index-B302Rib8.js";import"./_baseClone-C9Ert7_H.js";import"./_initCloneObject-C9kLDyf5.js";import"./index-CcHjHBm4.js";import"./index-ACNZqLLg.js";const ie=v({name:"LayoutFlux",components:{ElDrawer:j,ElButton:L,FontAwesomeIcon:T},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 pe(e,o,m,d,x,k){const c=s("font-awesome-icon"),u=s("el-button"),n=s("el-drawer");return a(),i("div",ce,[r("div",ue,[S(e.$slots,"config",{},void 0,!0)]),r("div",de,[S(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(()=>[S(e.$slots,"config",{},void 0,!0)]),_:3},8,["modelValue"])])}const me=b(ie,[["render",pe],["__scopeId","data-v-8995d591"]]),fe=v({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=O)}}),_e={class:"field"},he={class:"title font-bold"};function ge(e,o,m,d,x,k){const c=s("el-option"),u=s("el-select");return a(),i("div",_e,[r("h2",he,l(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=b(fe,[["render",ge],["__scopeId","data-v-8df4b8a7"]]),ve=v({name:"CountSelector",components:{ElSlider:W,InfoIcon:C,ElInputNumber:H},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=N)}}),be={class:"flex justify-between"},xe={class:"flex justify-start items-center"},ke={class:"text-sm font-bold"},we={class:"flex justify-end items-center"},ye={class:"w-full"};function Ve(e,o,m,d,x,k){const c=s("info-icon"),u=s("el-input-number"),n=s("el-slider");return a(),i("div",null,[r("div",be,[r("div",xe,[r("span",ke,l(e.$t("flux.name.numbers")),1),t(c,{content:e.$t("flux.description.numbers")},null,8,["content"])]),r("div",we,[t(u,{modelValue:e.value,"onUpdate:modelValue":o[0]||(o[0]=p=>e.value=p),"controls-position":"right"},null,8,["modelValue"])])]),r("div",ye,[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 Ee=b(ve,[["render",Ve]]),Te=v({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=q)}}),Ie={class:"field"},Se={class:"title font-bold"};function Le(e,o,m,d,x,k){const c=s("el-option"),u=s("el-select");return a(),i("div",Ie,[r("h2",Se,l(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 Ue=b(Te,[["render",Le],["__scopeId","data-v-81fd05e5"]]),Ce=v({name:"ImageUrlInput",components:{ElUpload:Q,ElButton:L,InfoIcon:C,FontAwesomeIcon:T,ImagePreview:K},mixins:[J],emits:["change"],data(){return{fileList:[],uploadUrl:F()+"/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"))}}}),Ae={class:"relative"},Ge={class:"flex justify-between"},Pe={class:"flex justify-start items-center"},Re={class:"text-sm font-bold"};function je(e,o,m,d,x,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",Ae,[r("div",Ge,[r("div",Pe,[r("span",Re,l(e.$t("flux.name.imageUrl")),1),t(c,{content:e.$t("flux.description.imageUrl")},null,8,["content"])])]),t(g,{ref:"uploader","file-list":e.fileList,"onUpdate:fileList":o[0]||(o[0]=h=>e.fileList=h),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:h})=>[t(u,{url:h.url||h.response?.file_url,name:h.name,percentage:h.percentage,onRemove:E=>e.fileList.splice(e.fileList.indexOf(h),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"}),_(" "+l(e.$t("flux.button.uploadImageUrl")),1)]),_:1})]),_:1},8,["file-list","action","on-exceed","on-error","headers"])])}const Fe=b(Ce,[["render",je],["__scopeId","data-v-1b692c6e"]]),De="",Me=v({name:"PromptInput",components:{ElInput:Y,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=De)}}),Be={class:"field"},Oe={class:"box"},Ne={class:"title font-bold"};function qe(e,o,m,d,x,k){const c=s("info-icon"),u=s("el-input");return a(),i("div",Be,[r("div",Oe,[r("h2",Ne,l(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 ze=b(Me,[["render",qe],["__scopeId","data-v-96df0218"]]),Xe=v({name:"PresetPanel",components:{ElButton:L,FontAwesomeIcon:T,PromptInput:ze,ModelSelector:$e,CountSelector:Ee,Consumption:Z,ActionSelector:Ue,ImageUrlInput:Fe},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")}}}),He={class:"flex flex-col h-full"},We={class:"flex-1 overflow-y-auto p-5"},Je={class:"flex flex-col items-center justify-center px-5 pb-5"};function Ke(e,o,m,d,x,k){const c=s("action-selector"),u=s("prompt-input"),n=s("image-url-input"),p=s("model-selector"),g=s("count-selector"),h=s("consumption"),E=s("font-awesome-icon"),R=s("el-button");return a(),i("div",He,[r("div",We,[t(c,{class:"mb-4"}),t(u,{class:"mb-4"}),e.config?.action==="edits"?(a(),w(n,{key:0,class:"mb-4"})):$("",!0),t(p,{class:"mb-4"}),t(g,{class:"mb-4"})]),r("div",Je,[t(h,{value:e.consumption,service:e.service},null,8,["value","service"]),t(R,{type:"primary",class:"btn w-full",round:"",onClick:e.onGenerate},{default:f(()=>[t(E,{icon:"fa-solid fa-magic",class:"mr-2"}),_(" "+l(e.$t("flux.button.generate")),1)]),_:1},8,["onClick"])])])}const Qe=b(Xe,[["render",Ke]]),Ye=v({name:"TaskPreview",components:{ElImage:le,CopyToClipboard:oe,FontAwesomeIcon:T,ElAlert:ne,ImageWrapper:se},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")}}}),Ze={class:"preview"},et={class:"left"},tt={class:"main"},ot={class:"bot"},st={class:"datetime"},nt={class:"info"},lt={key:0,class:"prompt mt-2"},at={key:0},rt={key:0,class:U({content:!0,failed:!0})},it={class:"flex justify-start items-center gap-4 w-full overflow-x-auto"},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={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-0"},pt={key:1,class:U({content:!0})},mt={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},ft={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},_t={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},ht={class:"text-[var(--el-text-color-regular)] text-xs mb-0"},gt={key:2,class:U({content:!0})},$t={class:"text-[var(--el-text-color-regular)] text-xs mb-0"};function vt(e,o,m,d,x,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",Ze,[r("div",et,[t(c,{src:"https://cdn.acedata.cloud/ogm2oa.png",class:"avatar"})]),r("div",tt,[r("div",ot,[_(l(e.$t("flux.name.fluxBot"))+" ",1),r("span",st,l(e.$dayjs.format(""+new Date(parseFloat((e.modelValue?.created_at||"").toString())*1e3))),1)]),r("div",nt,[e.modelValue?.request?.prompt?(a(),i("p",lt,[_(l(e.modelValue?.request?.prompt)+" ",1),e.modelValue?.response?$("",!0):(a(),i("span",at," - ("+l(e.$t("flux.status.pending"))+") ",1))])):$("",!0)]),e.modelValue?.response?.success===!0?(a(),i("div",rt,[r("div",it,[(a(!0),i(V,null,I(e.images,(h,E)=>(a(),w(u,{key:E,src:h?.image_url,"raw-src":h?.image_url,"model-value":h},null,8,["src","raw-src","model-value"]))),128))]),t(g,{closable:!1,class:"mt-2 success"},{default:f(()=>[r("p",ct,[t(n,{icon:"fa-solid fa-hashtag",class:"mr-1"}),_(" "+l(e.$t("flux.name.model"))+": "+l(e.modelValue?.request?.model),1)]),r("p",ut,[t(n,{icon:"fa-solid fa-magic",class:"mr-1"}),_(" "+l(e.$t("flux.name.taskId"))+": "+l(e.modelValue?.id)+" ",1),t(p,{content:e.modelValue?.id,class:"btn-copy inline-block"},null,8,["content"])]),e.modelValue?.elapsed?(a(),i("p",dt,[t(n,{icon:"fa-solid fa-clock",class:"mr-1"}),_(" "+l(e.$t("flux.name.elapsed"))+": "+l(e.modelValue?.elapsed?.toFixed(2))+"s ",1)])):$("",!0)]),_:1})])):$("",!0),e.modelValue?.response?.success===!1?(a(),i("div",pt,[t(g,{closable:!1,class:"failure"},{template:f(()=>[t(n,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),_(" "+l(e.$t("flux.name.failure")),1)]),default:f(()=>[r("p",mt,[t(n,{icon:"fa-solid fa-magic",class:"mr-1"}),_(" "+l(e.$t("flux.name.taskId"))+": "+l(e.modelValue?.id)+" ",1),t(p,{content:e.modelValue?.id,class:"btn-copy"},null,8,["content"])]),r("p",ft,[t(n,{icon:"fa-solid fa-circle-info",class:"mr-1"}),_(" "+l(e.$t("flux.name.failureReason"))+": "+l(e.modelValue?.response?.error?.message)+" ",1),t(p,{content:e.modelValue?.response?.error?.message,class:"btn-copy"},null,8,["content"])]),e.modelValue?.elapsed?(a(),i("p",_t,[t(n,{icon:"fa-solid fa-clock",class:"mr-1"}),_(" "+l(e.$t("flux.name.elapsed"))+": "+l(e.modelValue?.elapsed?.toFixed(2))+"s ",1)])):$("",!0),r("p",ht,[t(n,{icon:"fa-solid fa-hashtag",class:"mr-1"}),_(" "+l(e.$t("flux.name.traceId"))+": "+l(e.modelValue?.response?.trace_id)+" ",1),t(p,{content:e.modelValue?.response?.trace_id,class:"btn-copy"},null,8,["content"])])]),_:1})])):$("",!0),e.modelValue?.response?$("",!0):(a(),i("div",gt,[t(g,{closable:!1,class:"info"},{template:f(()=>[t(n,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),_(" "+l(e.$t("flux.name.failure")),1)]),default:f(()=>[r("p",$t,[t(n,{icon:"fa-solid fa-magic",class:"mr-1"}),_(" "+l(e.$t("flux.name.taskId"))+": "+l(e.modelValue?.id)+" ",1),t(p,{content:e.modelValue?.id,class:"btn-copy"},null,8,["content"])])]),_:1})]))])])}const bt=b(Ye,[["render",vt],["__scopeId","data-v-8ba2b387"]]),xt=v({name:"RecentPanel",components:{TaskPreview:bt,BotPlaceholder:ae,NoTasks:re,ScrollList:z},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?.()}}}),kt={key:0},wt={key:2,class:"w-full h-full flex items-center justify-center"};function yt(e,o,m,d,x,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",kt,[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"])):$("",!0),e.tasks?.items?.length===0?(a(),i("div",wt,[t(p)])):$("",!0)],64)}const Vt=b(xt,[["render",yt]]),Et=B("flux"),Tt=v({name:"FluxIndex",components:{ConfigPanel:Qe,Layout:me,RecentPanel:Vt},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 X({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:Et},o=this.credential?.token;if(!o){console.error("no token specified");return}y.info(this.$t("flux.message.startingTask")),D("flux",M.generate(e,{token:o})).then(()=>{y.success(this.$t("flux.message.startTaskSuccess"))}).catch(m=>{const d=m?.response?.data;d?.error?.code===te?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 It(e,o,m,d,x,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 ko=b(Tt,[["render",It]]);export{ko as default};
|
|
1
|
+
import{F as T}from"./index.es-8EnvYue2.js";import{E as L}from"./index-BohXbZ2r.js";import{E as j}from"./index-1duw3meC.js";import{d as v,H as i,E as r,z as S,C as t,y as f,D as s,q as a,F as l,O as V,N as I,x as w,I as _,J as $,Q as U}from"./vendor-vue-NSDaktjZ.js";import{G as b,bl as F,cu as D,aP as M,S as A,cv as B}from"./index-C769Onuz.js";import{a as O,b as N,c as q}from"./flux-BDAe6Szo.js";import{E as G,a as P}from"./index-trZQ27KC.js";import{I as C,S as z,l as X}from"./pagination-B_rXIxYu.js";import{E as H}from"./index-D9cIVB8Y.js";import{E as W}from"./index-bETiJs4h.js";import{p as J}from"./pasteUploadMixin-BurWbGNQ.js";import{I as K}from"./ImagePreview-DRhaeMj1.js";import{E as Q}from"./index-BfcZVTcY.js";import{E as y}from"./index-C35824SI.js";import{E as Y}from"./index-C6A_7e6l.js";import{C as Z}from"./Consumption-C8V--EC7.js";import{a as ee}from"./price-DeJrvwM_.js";import{b as te}from"./errorCode-Cqj9Td_Z.js";import{C as oe}from"./CopyToClipboard-BN_GVB08.js";import{I as se}from"./ImageWrapper-CeEPqZle.js";import{E as ne}from"./index-DGqxXaJY.js";import{E as le}from"./index-BxMpD69n.js";import{B as ae}from"./BotPlaceholder-Lxsi7yXh.js";import{N as re}from"./NoTasks-B39yxIND.js";import"./use-form-item-Ck1g57NC.js";import"./index-BuyEbX8F.js";import"./vendor-axios-B8_nURbH.js";import"./vendor-dayjs-v0j1UNZp.js";import"./vendor-vue-router-Kg6s1a65.js";import"./index-DH4uKXiW.js";import"./index-_gGwul3Q.js";import"./typescript-C3d9MWp0.js";import"./index-DsyghaSY.js";import"./strings-beZM2Y-f.js";import"./isEqual-CCeFlspg.js";import"./_Uint8Array-0ZrewKty.js";import"./castArray-MGnU8s5j.js";import"./debounce-BKi6w8Na.js";import"./_baseIteratee-BaCwCO2P.js";import"./index-M199edT7.js";import"./index-Cu41y2Fl.js";import"./index-Bjh2SIj8.js";import"./_baseClone-I25WNFTn.js";import"./_initCloneObject-BBp5M13E.js";import"./index-CqA61rPt.js";import"./index-1uyc0tg8.js";const ie=v({name:"LayoutFlux",components:{ElDrawer:j,ElButton:L,FontAwesomeIcon:T},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 pe(e,o,m,d,x,k){const c=s("font-awesome-icon"),u=s("el-button"),n=s("el-drawer");return a(),i("div",ce,[r("div",ue,[S(e.$slots,"config",{},void 0,!0)]),r("div",de,[S(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(()=>[S(e.$slots,"config",{},void 0,!0)]),_:3},8,["modelValue"])])}const me=b(ie,[["render",pe],["__scopeId","data-v-8995d591"]]),fe=v({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=O)}}),_e={class:"field"},he={class:"title font-bold"};function ge(e,o,m,d,x,k){const c=s("el-option"),u=s("el-select");return a(),i("div",_e,[r("h2",he,l(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=b(fe,[["render",ge],["__scopeId","data-v-8df4b8a7"]]),ve=v({name:"CountSelector",components:{ElSlider:W,InfoIcon:C,ElInputNumber:H},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=N)}}),be={class:"flex justify-between"},xe={class:"flex justify-start items-center"},ke={class:"text-sm font-bold"},we={class:"flex justify-end items-center"},ye={class:"w-full"};function Ve(e,o,m,d,x,k){const c=s("info-icon"),u=s("el-input-number"),n=s("el-slider");return a(),i("div",null,[r("div",be,[r("div",xe,[r("span",ke,l(e.$t("flux.name.numbers")),1),t(c,{content:e.$t("flux.description.numbers")},null,8,["content"])]),r("div",we,[t(u,{modelValue:e.value,"onUpdate:modelValue":o[0]||(o[0]=p=>e.value=p),"controls-position":"right"},null,8,["modelValue"])])]),r("div",ye,[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 Ee=b(ve,[["render",Ve]]),Te=v({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=q)}}),Ie={class:"field"},Se={class:"title font-bold"};function Le(e,o,m,d,x,k){const c=s("el-option"),u=s("el-select");return a(),i("div",Ie,[r("h2",Se,l(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 Ue=b(Te,[["render",Le],["__scopeId","data-v-81fd05e5"]]),Ce=v({name:"ImageUrlInput",components:{ElUpload:Q,ElButton:L,InfoIcon:C,FontAwesomeIcon:T,ImagePreview:K},mixins:[J],emits:["change"],data(){return{fileList:[],uploadUrl:F()+"/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"))}}}),Ae={class:"relative"},Ge={class:"flex justify-between"},Pe={class:"flex justify-start items-center"},Re={class:"text-sm font-bold"};function je(e,o,m,d,x,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",Ae,[r("div",Ge,[r("div",Pe,[r("span",Re,l(e.$t("flux.name.imageUrl")),1),t(c,{content:e.$t("flux.description.imageUrl")},null,8,["content"])])]),t(g,{ref:"uploader","file-list":e.fileList,"onUpdate:fileList":o[0]||(o[0]=h=>e.fileList=h),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:h})=>[t(u,{url:h.url||h.response?.file_url,name:h.name,percentage:h.percentage,onRemove:E=>e.fileList.splice(e.fileList.indexOf(h),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"}),_(" "+l(e.$t("flux.button.uploadImageUrl")),1)]),_:1})]),_:1},8,["file-list","action","on-exceed","on-error","headers"])])}const Fe=b(Ce,[["render",je],["__scopeId","data-v-1b692c6e"]]),De="",Me=v({name:"PromptInput",components:{ElInput:Y,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=De)}}),Be={class:"field"},Oe={class:"box"},Ne={class:"title font-bold"};function qe(e,o,m,d,x,k){const c=s("info-icon"),u=s("el-input");return a(),i("div",Be,[r("div",Oe,[r("h2",Ne,l(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 ze=b(Me,[["render",qe],["__scopeId","data-v-96df0218"]]),Xe=v({name:"PresetPanel",components:{ElButton:L,FontAwesomeIcon:T,PromptInput:ze,ModelSelector:$e,CountSelector:Ee,Consumption:Z,ActionSelector:Ue,ImageUrlInput:Fe},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")}}}),He={class:"flex flex-col h-full"},We={class:"flex-1 overflow-y-auto p-5"},Je={class:"flex flex-col items-center justify-center px-5 pb-5"};function Ke(e,o,m,d,x,k){const c=s("action-selector"),u=s("prompt-input"),n=s("image-url-input"),p=s("model-selector"),g=s("count-selector"),h=s("consumption"),E=s("font-awesome-icon"),R=s("el-button");return a(),i("div",He,[r("div",We,[t(c,{class:"mb-4"}),t(u,{class:"mb-4"}),e.config?.action==="edits"?(a(),w(n,{key:0,class:"mb-4"})):$("",!0),t(p,{class:"mb-4"}),t(g,{class:"mb-4"})]),r("div",Je,[t(h,{value:e.consumption,service:e.service},null,8,["value","service"]),t(R,{type:"primary",class:"btn w-full",round:"",onClick:e.onGenerate},{default:f(()=>[t(E,{icon:"fa-solid fa-magic",class:"mr-2"}),_(" "+l(e.$t("flux.button.generate")),1)]),_:1},8,["onClick"])])])}const Qe=b(Xe,[["render",Ke]]),Ye=v({name:"TaskPreview",components:{ElImage:le,CopyToClipboard:oe,FontAwesomeIcon:T,ElAlert:ne,ImageWrapper:se},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")}}}),Ze={class:"preview"},et={class:"left"},tt={class:"main"},ot={class:"bot"},st={class:"datetime"},nt={class:"info"},lt={key:0,class:"prompt mt-2"},at={key:0},rt={key:0,class:U({content:!0,failed:!0})},it={class:"flex justify-start items-center gap-4 w-full overflow-x-auto"},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={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-0"},pt={key:1,class:U({content:!0})},mt={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},ft={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},_t={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},ht={class:"text-[var(--el-text-color-regular)] text-xs mb-0"},gt={key:2,class:U({content:!0})},$t={class:"text-[var(--el-text-color-regular)] text-xs mb-0"};function vt(e,o,m,d,x,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",Ze,[r("div",et,[t(c,{src:"https://cdn.acedata.cloud/ogm2oa.png",class:"avatar"})]),r("div",tt,[r("div",ot,[_(l(e.$t("flux.name.fluxBot"))+" ",1),r("span",st,l(e.$dayjs.format(""+new Date(parseFloat((e.modelValue?.created_at||"").toString())*1e3))),1)]),r("div",nt,[e.modelValue?.request?.prompt?(a(),i("p",lt,[_(l(e.modelValue?.request?.prompt)+" ",1),e.modelValue?.response?$("",!0):(a(),i("span",at," - ("+l(e.$t("flux.status.pending"))+") ",1))])):$("",!0)]),e.modelValue?.response?.success===!0?(a(),i("div",rt,[r("div",it,[(a(!0),i(V,null,I(e.images,(h,E)=>(a(),w(u,{key:E,src:h?.image_url,"raw-src":h?.image_url,"model-value":h},null,8,["src","raw-src","model-value"]))),128))]),t(g,{closable:!1,class:"mt-2 success"},{default:f(()=>[r("p",ct,[t(n,{icon:"fa-solid fa-hashtag",class:"mr-1"}),_(" "+l(e.$t("flux.name.model"))+": "+l(e.modelValue?.request?.model),1)]),r("p",ut,[t(n,{icon:"fa-solid fa-magic",class:"mr-1"}),_(" "+l(e.$t("flux.name.taskId"))+": "+l(e.modelValue?.id)+" ",1),t(p,{content:e.modelValue?.id,class:"btn-copy inline-block"},null,8,["content"])]),e.modelValue?.elapsed?(a(),i("p",dt,[t(n,{icon:"fa-solid fa-clock",class:"mr-1"}),_(" "+l(e.$t("flux.name.elapsed"))+": "+l(e.modelValue?.elapsed?.toFixed(2))+"s ",1)])):$("",!0)]),_:1})])):$("",!0),e.modelValue?.response?.success===!1?(a(),i("div",pt,[t(g,{closable:!1,class:"failure"},{template:f(()=>[t(n,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),_(" "+l(e.$t("flux.name.failure")),1)]),default:f(()=>[r("p",mt,[t(n,{icon:"fa-solid fa-magic",class:"mr-1"}),_(" "+l(e.$t("flux.name.taskId"))+": "+l(e.modelValue?.id)+" ",1),t(p,{content:e.modelValue?.id,class:"btn-copy"},null,8,["content"])]),r("p",ft,[t(n,{icon:"fa-solid fa-circle-info",class:"mr-1"}),_(" "+l(e.$t("flux.name.failureReason"))+": "+l(e.modelValue?.response?.error?.message)+" ",1),t(p,{content:e.modelValue?.response?.error?.message,class:"btn-copy"},null,8,["content"])]),e.modelValue?.elapsed?(a(),i("p",_t,[t(n,{icon:"fa-solid fa-clock",class:"mr-1"}),_(" "+l(e.$t("flux.name.elapsed"))+": "+l(e.modelValue?.elapsed?.toFixed(2))+"s ",1)])):$("",!0),r("p",ht,[t(n,{icon:"fa-solid fa-hashtag",class:"mr-1"}),_(" "+l(e.$t("flux.name.traceId"))+": "+l(e.modelValue?.response?.trace_id)+" ",1),t(p,{content:e.modelValue?.response?.trace_id,class:"btn-copy"},null,8,["content"])])]),_:1})])):$("",!0),e.modelValue?.response?$("",!0):(a(),i("div",gt,[t(g,{closable:!1,class:"info"},{template:f(()=>[t(n,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),_(" "+l(e.$t("flux.name.failure")),1)]),default:f(()=>[r("p",$t,[t(n,{icon:"fa-solid fa-magic",class:"mr-1"}),_(" "+l(e.$t("flux.name.taskId"))+": "+l(e.modelValue?.id)+" ",1),t(p,{content:e.modelValue?.id,class:"btn-copy"},null,8,["content"])])]),_:1})]))])])}const bt=b(Ye,[["render",vt],["__scopeId","data-v-8ba2b387"]]),xt=v({name:"RecentPanel",components:{TaskPreview:bt,BotPlaceholder:ae,NoTasks:re,ScrollList:z},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?.()}}}),kt={key:0},wt={key:2,class:"w-full h-full flex items-center justify-center"};function yt(e,o,m,d,x,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",kt,[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"])):$("",!0),e.tasks?.items?.length===0?(a(),i("div",wt,[t(p)])):$("",!0)],64)}const Vt=b(xt,[["render",yt]]),Et=B("flux"),Tt=v({name:"FluxIndex",components:{ConfigPanel:Qe,Layout:me,RecentPanel:Vt},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 X({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:Et},o=this.credential?.token;if(!o){console.error("no token specified");return}y.info(this.$t("flux.message.startingTask")),D("flux",M.generate(e,{token:o})).then(()=>{y.success(this.$t("flux.message.startTaskSuccess"))}).catch(m=>{const d=m?.response?.data;d?.error?.code===te?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 It(e,o,m,d,x,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 ko=b(Tt,[["render",It]]);export{ko as default};
|