@acedatacloud/nexior 3.152.0 → 3.153.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-Dqq3l2pU.js → Auth-DDrnBE0l.js} +1 -1
- package/dist/assets/{BotPlaceholder-CjLV0ALF.js → BotPlaceholder-BaXQOlUu.js} +1 -1
- package/dist/assets/{Callback-MvwFrclz.js → Callback-DvCOO19G.js} +1 -1
- package/dist/assets/{Console-CbYuOHCk.js → Console-j13poOpt.js} +1 -1
- package/dist/assets/{Consumption-BrRTFprj.js → Consumption-DFTH_HGK.js} +1 -1
- package/dist/assets/{Conversation-jZmvVnod.css → Conversation-De5uaAaP.css} +1 -1
- package/dist/assets/{Conversation-Dq4euG4T.js → Conversation-Dztwlkuu.js} +17 -17
- package/dist/assets/{CopyToClipboard-DpLBFIyy.js → CopyToClipboard-D0h1kZtr.js} +1 -1
- package/dist/assets/{Detail-DtkN6i5I.js → Detail-OzReBvPD.js} +2 -2
- package/dist/assets/{EditArray-B2Ml48mM.js → EditArray-4hN22N2P.js} +1 -1
- package/dist/assets/{Extra-Boc7BZ5Z.js → Extra-HDM3iAIL.js} +1 -1
- package/dist/assets/{FilePreview-BtyxNwVM.js → FilePreview-BxQ2ui-K.js} +1 -1
- package/dist/assets/{History-DLby0a7S.js → History-BYZCLuZX.js} +1 -1
- package/dist/assets/{IconPark.vue_vue_type_script_setup_true_lang-3ysMralK.js → IconPark.vue_vue_type_script_setup_true_lang-BceOaJ6J.js} +1 -1
- package/dist/assets/{ImagePreview-Bg_4MANc.js → ImagePreview-7naWf_Hk.js} +1 -1
- package/dist/assets/{ImageWrapper-DKVJ7ct4.js → ImageWrapper-DBP8OPPq.js} +1 -1
- package/dist/assets/{Index-BzYoa2nP.js → Index-5dnM7IVQ.js} +1 -1
- package/dist/assets/{Index-D97A_umJ.js → Index-6gLsddki.js} +1 -1
- package/dist/assets/{Index-CtCOztTl.js → Index-B5kWayK1.js} +1 -1
- package/dist/assets/{Index-CaTBj0f0.js → Index-BD79lwki.js} +1 -1
- package/dist/assets/{Index-CEQ7gIcq.js → Index-BF9bRDwY.js} +1 -1
- package/dist/assets/{Index-COneRfiv.js → Index-BIh7lrcj.js} +1 -1
- package/dist/assets/{Index-BRmefocC.js → Index-Bc41k2MH.js} +1 -1
- package/dist/assets/{Index-B9G7ENiu.js → Index-BdS9JUut.js} +1 -1
- package/dist/assets/{Index-CthlSliP.js → Index-BdW_y_4k.js} +1 -1
- package/dist/assets/{Index-NaA26IGI.js → Index-Bxip2nWO.js} +1 -1
- package/dist/assets/{Index-DKFIus8J.js → Index-CBZ_nBax.js} +1 -1
- package/dist/assets/{Index-CODu-Lbe.js → Index-CEhs61BD.js} +1 -1
- package/dist/assets/{Index-CQkvvl35.js → Index-CeHXUEmf.js} +1 -1
- package/dist/assets/{Index-DcB0per_.js → Index-D1uVD7MJ.js} +1 -1
- package/dist/assets/{Index-DJ_qkqwO.js → Index-DMnHU_Dy.js} +1 -1
- package/dist/assets/{Index-DhMzZuZj.js → Index-DSYePGan.js} +1 -1
- package/dist/assets/{Index-BIuPs9K4.js → Index-DhyU728T.js} +1 -1
- package/dist/assets/{Index-BO8kBH-E.js → Index-Dk3_OwNx.js} +1 -1
- package/dist/assets/{Index-CwxqROK3.js → Index-DtSSjduU.js} +1 -1
- package/dist/assets/{Index-CcFKdQ35.js → Index-Nt1Go49-.js} +1 -1
- package/dist/assets/{Index-5bq31Ev3.js → Index-YWCXBkrX.js} +1 -1
- package/dist/assets/{Index-C5PXBYfG.js → Index-ZbFDulyj.js} +1 -1
- package/dist/assets/{Index-BoTUcjL-.js → Index-huSQWKoj.js} +1 -1
- package/dist/assets/{Index-CP5k7VDj.js → Index-yr6aKo3J.js} +1 -1
- package/dist/assets/{Invitees-BQLq8RNK.js → Invitees-CnWhvZr5.js} +1 -1
- package/dist/assets/{List-Dm_dD6Pf.js → List-CeizYvZn.js} +1 -1
- package/dist/assets/{List-0mdKpx24.js → List-CoF-LEif.js} +1 -1
- package/dist/assets/{List-Cf9VMV0o.js → List-DoWXT5_l.js} +1 -1
- package/dist/assets/{Main-CAl8EpBs.js → Main-CmtvT7sQ.js} +1 -1
- package/dist/assets/{Navigator-DXXnGXkm.js → Navigator-Bxv_BuuW.js} +1 -1
- package/dist/assets/{NoTasks-t-Nyk8v6.js → NoTasks-Cz8zUMc6.js} +1 -1
- package/dist/assets/{NotFound-jRGoEa55.js → NotFound-CcLwqyOI.js} +1 -1
- package/dist/assets/{OAuthCallback-BvoZu4Ol.js → OAuthCallback-DSac96G7.js} +1 -1
- package/dist/assets/{Pagination-DB9twOQI.js → Pagination-DuiwOQtA.js} +1 -1
- package/dist/assets/{Status-B_AYkhMM.js → Status-BI5eG15k.js} +1 -1
- package/dist/assets/{Subscribe-vhYNhjV3.js → Subscribe-DMQsOiFE.js} +1 -1
- package/dist/assets/{VideoPlayer-DpOpCmlr.js → VideoPlayer-DvxHqPgh.js} +1 -1
- package/dist/assets/{_Uint8Array-CIOAkFC8.js → _Uint8Array-xXOLJRhg.js} +1 -1
- package/dist/assets/{_baseClone-DsJpkaTJ.js → _baseClone-BSjA72P_.js} +1 -1
- package/dist/assets/{_baseIteratee-y4F6_vaP.js → _baseIteratee-A9x3WSjV.js} +1 -1
- package/dist/assets/{_initCloneObject--BkHfMCz.js → _initCloneObject-CI8Xd2KA.js} +1 -1
- package/dist/assets/{add-BJi839SV.js → add-CmzXze0M.js} +1 -1
- package/dist/assets/{all-wallets-B2nEWvHE.js → all-wallets-CHn9xAYZ.js} +1 -1
- package/dist/assets/{app-store-DQv6_Igb.js → app-store-DwfOf35z.js} +1 -1
- package/dist/assets/{apple-A1IdIeZ8.js → apple-WGS8lnCY.js} +1 -1
- package/dist/assets/{arrow-bottom-BBJDi1Ji.js → arrow-bottom-B6gMY2Yk.js} +1 -1
- package/dist/assets/{arrow-bottom-circle-DtEY3c-v.js → arrow-bottom-circle-Dgb64PUh.js} +1 -1
- package/dist/assets/{arrow-left-DplYfvXi.js → arrow-left-DKh7wE7H.js} +1 -1
- package/dist/assets/{arrow-right-CdItrgJO.js → arrow-right-Dhn7TV75.js} +1 -1
- package/dist/assets/{arrow-top-CIxLNuyR.js → arrow-top-BCxTClC8.js} +1 -1
- package/dist/assets/{avatar-B8gOg0rm.js → avatar-Cb5CH4yp.js} +1 -1
- package/dist/assets/{bank-CkDX87RM.js → bank-GXZKJABB.js} +1 -1
- package/dist/assets/{basic-wgmNqMQC.js → basic-C8e8PUsP.js} +1 -1
- package/dist/assets/{browser-BECYdLav.js → browser-DZOA5Fb1.js} +1 -1
- package/dist/assets/{byokCredential-CksBBmxL.js → byokCredential-BNuLDPcq.js} +1 -1
- package/dist/assets/{card-BVm7I4uQ.js → card-kkVz6uYW.js} +1 -1
- package/dist/assets/{castArray-TnTy8FCf.js → castArray-BX_tt0Nx.js} +1 -1
- package/dist/assets/{chat-BrGSNOAP.js → chat-DN4tkl6w.js} +1 -1
- package/dist/assets/{checkmark-Cy0zlmmQ.js → checkmark-DQGYaEiK.js} +1 -1
- package/dist/assets/{checkmark-bold-CzguMPkI.js → checkmark-bold-CBNi3JJb.js} +1 -1
- package/dist/assets/{chevron-bottom-DNIhAWI7.js → chevron-bottom-Ce4m3o_N.js} +1 -1
- package/dist/assets/{chevron-left-CDrpu-bq.js → chevron-left-B0zJ6X2c.js} +1 -1
- package/dist/assets/{chevron-right-BelvhNkU.js → chevron-right-DTHItDA_.js} +1 -1
- package/dist/assets/{chevron-top-DHe1c75-.js → chevron-top-D_Y09Sio.js} +1 -1
- package/dist/assets/{chrome-store-B4C9o6jy.js → chrome-store-C4J6giMT.js} +1 -1
- package/dist/assets/{clock-DPLsWpHv.js → clock-Cnmy4Mg4.js} +1 -1
- package/dist/assets/{close-BoQGvCDW.js → close-BNNr7R7x.js} +1 -1
- package/dist/assets/{coinPlaceholder-ba9-tEKA.js → coinPlaceholder-CPKbed1I.js} +1 -1
- package/dist/assets/{compass-CqfE3hOQ.js → compass-C8uRNySO.js} +1 -1
- package/dist/assets/{copy-Q-lsd-9l.js → copy-BzENNvfZ.js} +1 -1
- package/dist/assets/{cursor-BEORwjMu.js → cursor-CzDjQptI.js} +1 -1
- package/dist/assets/{cursor-transparent-DPL8havG.js → cursor-transparent-61abU7S5.js} +1 -1
- package/dist/assets/{debounce-CJZlaJSw.js → debounce-UL-c7F9u.js} +1 -1
- package/dist/assets/{desktop-zaFGdbHl.js → desktop-BeMecIbL.js} +1 -1
- package/dist/assets/{disconnect-DakeB3a9.js → disconnect-C7XNqZWW.js} +1 -1
- package/dist/assets/{discord-CuY4XvUj.js → discord-D8WnFAX-.js} +1 -1
- package/dist/assets/{distribution-DZlqyfeA.js → distribution-Bnckplw8.js} +1 -1
- package/dist/assets/{dropdown-DV2zOuyp.js → dropdown-CceaRCWn.js} +1 -1
- package/dist/assets/{etherscan-Mw4NwTGp.js → etherscan-DhZklXvZ.js} +1 -1
- package/dist/assets/{exclamation-triangle-CdYP47hR.js → exclamation-triangle-jZ8xmQ9s.js} +1 -1
- package/dist/assets/{extension-BhAaMxGW.js → extension-Dqto-7Q3.js} +1 -1
- package/dist/assets/{external-link-C88uJY7B.js → external-link-D7sPhBkD.js} +1 -1
- package/dist/assets/{facebook-BiEjTXKr.js → facebook-DXl0ugAc.js} +1 -1
- package/dist/assets/{farcaster-BAVNIdGS.js → farcaster-Dy4GUuoj.js} +1 -1
- package/dist/assets/{filters-qKl7YAPd.js → filters-Dz0Dvkaj.js} +1 -1
- package/dist/assets/{flux-D4BMGuWl.js → flux-DCbjWSi3.js} +1 -1
- package/dist/assets/{github-DZvWOrJ9.js → github-D6u20woO.js} +1 -1
- package/dist/assets/{google-BNabQhh6.js → google-BMcMZGbf.js} +1 -1
- package/dist/assets/{hailuo-DTLZcEUj.js → hailuo-dnC-ATKI.js} +1 -1
- package/dist/assets/{headshots-ikuv5nSy.js → headshots-i-IWtbB1.js} +1 -1
- package/dist/assets/{help-circle-x7-do3xz.js → help-circle-Mr50g_Jj.js} +1 -1
- package/dist/assets/{id-DrftRvTu.js → id-Dtd5UYku.js} +1 -1
- package/dist/assets/{image-BsenEtTZ.js → image-db1KE6i7.js} +1 -1
- package/dist/assets/{index-CdKre72y.js → index-4gKTHL4m.js} +1 -1
- package/dist/assets/{index-gYSEitMi.js → index-ANiQ8hRa.js} +1 -1
- package/dist/assets/{index-DHVwu-o_.js → index-B0UU8wtf.js} +1 -1
- package/dist/assets/{index-Bwap6Ldi.js → index-B5uViYWu.js} +1 -1
- package/dist/assets/{index-C40tNgF7.js → index-B7yyoRtz.js} +1 -1
- package/dist/assets/{index-2l2HfBAG.js → index-BC2_g7Ww.js} +1 -1
- package/dist/assets/{index-34n2Rkz4.js → index-BKAOJrxY.js} +1 -1
- package/dist/assets/{index-CeTdGr2-.js → index-BLPj-bFo.js} +1 -1
- package/dist/assets/{index-BXXrwsD3.js → index-BLenW2IQ.js} +1 -1
- package/dist/assets/{index-CY478nhU.js → index-BP5BsZj2.js} +1 -1
- package/dist/assets/{index-BQrDrMsg.js → index-BPFxCcBU.js} +3 -3
- package/dist/assets/{index-WKh8tSM-.js → index-BV7Onq3z.js} +1 -1
- package/dist/assets/{index-BGxp6OcW.js → index-BX75bHZZ.js} +1 -1
- package/dist/assets/{index-CSsR-5G0.js → index-Bb7Nk44w.js} +2 -2
- package/dist/assets/{index-UvZyD52G.js → index-BgGOtUyI.js} +1 -1
- package/dist/assets/{index-s4nuUgXJ.js → index-BhgPr4v6.js} +1 -1
- package/dist/assets/{index-s1aJT5Lx.js → index-Bj1Qrw3o.js} +1 -1
- package/dist/assets/{index-qKL3nmNJ.js → index-Bk3keCL7.js} +1 -1
- package/dist/assets/{index-CQuDdqyQ.js → index-BlbUCciE.js} +1 -1
- package/dist/assets/{index-36v1qVMv.js → index-BpuPZd0a.js} +1 -1
- package/dist/assets/{index-DgrmBeuw.js → index-C07tODnb.js} +1 -1
- package/dist/assets/{index-CP8zORPR.js → index-C9pmXydD.js} +1 -1
- package/dist/assets/{index-BqaautDS.js → index-CK4Gkg3p.js} +1 -1
- package/dist/assets/{index-B-3bpbrW.js → index-CP1XocLG.js} +1 -1
- package/dist/assets/{index-C-elEvQD.js → index-CTf4CCHb.js} +1 -1
- package/dist/assets/{index-B26B3NRe.js → index-CUMrI3uM.js} +3 -3
- package/dist/assets/{index-B0A9C_-T.js → index-CYoskRTt.js} +1 -1
- package/dist/assets/{index-C-g8alJ1.js → index-CaNkjkZ8.js} +1 -1
- package/dist/assets/{index-C_-XxAWi.js → index-Ce2SVQ2-.js} +1 -1
- package/dist/assets/{index-CI0nnbeu.js → index-CeFV0MI6.js} +1 -1
- package/dist/assets/{index-BCChxDUd.js → index-CqUYE69O.js} +1 -1
- package/dist/assets/{index-BHzEr62G.js → index-Csl-HYyf.js} +1 -1
- package/dist/assets/{index-kxM-uBwN.js → index-D3kwEdCO.js} +1 -1
- package/dist/assets/{index-BpKb-LSQ.js → index-D5t7Lgdc.js} +1 -1
- package/dist/assets/{index-DTGuhQIY.js → index-DECR9Z-S.js} +1 -1
- package/dist/assets/{index-D9gfzD0d.js → index-DF9s3sJR.js} +1 -1
- package/dist/assets/{index-CUvAZ3E0.js → index-DP4m7gwj.js} +1 -1
- package/dist/assets/{index-D_vMdvZ6.js → index-DUTwzVsl.js} +1 -1
- package/dist/assets/{index-f3A5WlbC.js → index-DWeJByu5.js} +1 -1
- package/dist/assets/{index-Y6InDSnm.js → index-DceoqtRa.js} +1 -1
- package/dist/assets/{index-CtCHxxgE.js → index-Dffxw0ff.js} +1 -1
- package/dist/assets/{index-BNHrcREZ.js → index-Dg898uio.js} +1 -1
- package/dist/assets/{index-BtlinT_z.js → index-DhLR2kZI.js} +1 -1
- package/dist/assets/{index-BYhmWwMJ.js → index-DlFN-E6q.js} +1 -1
- package/dist/assets/{index-D4p433Al.js → index-DltP2bfN.js} +1 -1
- package/dist/assets/{index-DKcnyM7y.js → index-DpWh3pWV.js} +1 -1
- package/dist/assets/{index-BIXkQkpn.js → index-Duu82c2E.js} +1 -1
- package/dist/assets/{index-Br5MWYkC.js → index-Dzglb-UN.js} +1 -1
- package/dist/assets/{index-CM53b4qu.js → index-FLb7lvpT.js} +1 -1
- package/dist/assets/{index-MLK9z2al.js → index-Iywsl7Po.js} +1 -1
- package/dist/assets/{index-BX4hurF9.js → index-LHAPoElI.js} +1 -1
- package/dist/assets/{index-Y6ecN3tB.js → index-LJD4KxHk.js} +1 -1
- package/dist/assets/{index-C8Q5dZvo.js → index-MHtwWAGL.js} +5 -5
- package/dist/assets/{index-CP58CVoz.js → index-NhMzhO2I.js} +1 -1
- package/dist/assets/{index-DaTUtZCn.js → index-VJ8AehQ6.js} +1 -1
- package/dist/assets/{index-CF81VrvH.js → index-gQsYSS6T.js} +1 -1
- package/dist/assets/{index-B8UzzWOK.js → index-mkyH6aAj.js} +1 -1
- package/dist/assets/{index-DhyX8RK7.js → index-noiKsTkE.js} +1 -1
- package/dist/assets/{index-DHbDN_k6.js → index-vtX69hlH.js} +1 -1
- package/dist/assets/{index-BDUUWpA9.js → index-yn55RwAP.js} +1 -1
- package/dist/assets/{index.browser.esm-Cx59cflo.js → index.browser.esm-ClaN3zpF.js} +1 -1
- package/dist/assets/{index.es-C1Vw5-pU.js → index.es-PxkVTVul.js} +1 -1
- package/dist/assets/{info-CB5svU1L.js → info-BXBLa64z.js} +1 -1
- package/dist/assets/{info-circle-DLoERJRV.js → info-circle-B4eNlDK0.js} +1 -1
- package/dist/assets/{isEqual-7sLqoZ1L.js → isEqual-DyhHzzXY.js} +1 -1
- package/dist/assets/{isPlainObject-Ct-jhvvz.js → isPlainObject-CcKl5vVw.js} +1 -1
- package/dist/assets/{kling-vQvgGJWZ.js → kling-DDzHSkML.js} +1 -1
- package/dist/assets/{lightbulb-C99KZWw6.js → lightbulb-e04CjglQ.js} +1 -1
- package/dist/assets/{luma-CFUwmRof.js → luma-CEGrL_1K.js} +1 -1
- package/dist/assets/{mail-BlX82MeJ.js → mail-DCbmXlLv.js} +1 -1
- package/dist/assets/{midjourney-Bt9SwJ7S.js → midjourney-J2fcjKsM.js} +1 -1
- package/dist/assets/{mobile-QFOK14eu.js → mobile-D3Vr08QE.js} +1 -1
- package/dist/assets/{more-D6qxWF9W.js → more-CzmowcGv.js} +1 -1
- package/dist/assets/{nanobanana-CC54XPie.js → nanobanana-CiVbVjBG.js} +1 -1
- package/dist/assets/{network-placeholder-xzS8m44W.js → network-placeholder-S4xr_Ish.js} +1 -1
- package/dist/assets/{nftPlaceholder-Ba4X6sGx.js → nftPlaceholder-CFpKbiYU.js} +1 -1
- package/dist/assets/{off-B5h8jjGL.js → off-D6wSDq5r.js} +1 -1
- package/dist/assets/{openaiimage-CYu0XX-Y.js → openaiimage-KrdkLxHF.js} +1 -1
- package/dist/assets/{order-C-AU0yGl.js → order-CQMesFjP.js} +1 -1
- package/dist/assets/{pagination-DcHHH5aU.js → pagination-DnskqQUw.js} +1 -1
- package/dist/assets/{pika-BY0m19Bk.js → pika-DarXnIXV.js} +1 -1
- package/dist/assets/{pixverse-NTb6NgdU.js → pixverse-DtqGUyUX.js} +1 -1
- package/dist/assets/{play-store-D3byY3WP.js → play-store-BOLDPeK6.js} +1 -1
- package/dist/assets/{plus-CUXunYBW.js → plus-BzqztpJW.js} +1 -1
- package/dist/assets/{price-B76rlcGM.js → price-CxhDvSzR.js} +1 -1
- package/dist/assets/{producer-TjBWKhZK.js → producer-DI_UGu92.js} +1 -1
- package/dist/assets/{qr-code-Dn3jrHJG.js → qr-code-Cu_jrN04.js} +1 -1
- package/dist/assets/{qrart-0CTb9tcf.js → qrart-Ba5RkjjA.js} +1 -1
- package/dist/assets/{recycle-horizontal-B-hYTNGc.js → recycle-horizontal-6jZ5yRQX.js} +1 -1
- package/dist/assets/{refresh-Cf-Wzncr.js → refresh-DecfBxuF.js} +1 -1
- package/dist/assets/{reown-logo-hTLaX6IV.js → reown-logo-z7BX-Lbw.js} +1 -1
- package/dist/assets/{search-D93I8tsf.js → search-DX2otVBy.js} +1 -1
- package/dist/assets/{secp256k1-CCjOIA2X.js → secp256k1-ChFo7qze.js} +1 -1
- package/dist/assets/{secp256k1-C2kADhus.js → secp256k1-DeElS5sK.js} +1 -1
- package/dist/assets/{seedance-BtToQQt8.js → seedance-DgsqaYbQ.js} +1 -1
- package/dist/assets/{seedream--KzRDA8F.js → seedream-auGCEdqn.js} +1 -1
- package/dist/assets/{send-BTNZdCR0.js → send-Czo3iJAL.js} +1 -1
- package/dist/assets/{service-DTe2kk8b.js → service-XY-3uR2r.js} +1 -1
- package/dist/assets/{solana-wallets-C7qi12W2.js → solana-wallets-DvUT0YeD.js} +2 -2
- package/dist/assets/{solana-wallets-vue-C36f0RVv.js → solana-wallets-vue-D-Nx9CE8.js} +1 -1
- package/dist/assets/{sora-CQKJmZbI.js → sora-CaAJTxIc.js} +1 -1
- package/dist/assets/{suno-DLKmpYS6.js → suno-xZL8iGhM.js} +1 -1
- package/dist/assets/{swapHorizontal-ZTSCr7Tf.js → swapHorizontal-DeqQuIFf.js} +1 -1
- package/dist/assets/{swapHorizontalBold-3xhkU-o-.js → swapHorizontalBold-CoVrmJrd.js} +1 -1
- package/dist/assets/{swapHorizontalMedium-Dqz2NSLL.js → swapHorizontalMedium-BjQIr8b8.js} +1 -1
- package/dist/assets/{swapHorizontalRoundedBold-B4outoeR.js → swapHorizontalRoundedBold-BtDng4q7.js} +1 -1
- package/dist/assets/{swapVertical-B15ESwWE.js → swapVertical-5jgvn930.js} +1 -1
- package/dist/assets/{telegram-C3PGRjY_.js → telegram-Cf21BUrY.js} +1 -1
- package/dist/assets/{three-dots-rNeoL-0B.js → three-dots-z5KfuaCE.js} +1 -1
- package/dist/assets/{twitch-D9HUTTm3.js → twitch-tXRadvQe.js} +1 -1
- package/dist/assets/{twitterIcon-CLhBopX6.js → twitterIcon-BkDj0hBx.js} +1 -1
- package/dist/assets/{typescript-DilvQCGQ.js → typescript-DeTjW0DO.js} +1 -1
- package/dist/assets/{use-form-item-efgym_Md.js → use-form-item-BCUliaxT.js} +1 -1
- package/dist/assets/validator-Bzrp9xMi.js +1 -0
- package/dist/assets/{veo-DMJuvLwk.js → veo-Dw_2Kbq1.js} +1 -1
- package/dist/assets/{verify-BQgXUE3o.js → verify-D8DxLVRM.js} +1 -1
- package/dist/assets/{verify-filled-1PZ6HKWd.js → verify-filled-B7kwzlnV.js} +1 -1
- package/dist/assets/{w3m-modal-DU2YB6Lr.js → w3m-modal-22dEVCrg.js} +1 -1
- package/dist/assets/{wallet-0fcteItf.js → wallet-Ce4orrbn.js} +1 -1
- package/dist/assets/{wallet-placeholder-CFZl5bLv.js → wallet-placeholder-DZBPAI-m.js} +1 -1
- package/dist/assets/{walletconnect-2_xaUe3Y.js → walletconnect-wg_6yCCU.js} +1 -1
- package/dist/assets/{wan-CHprjKEA.js → wan-41cXgfvK.js} +1 -1
- package/dist/assets/{warning-circle-Bwit4ykS.js → warning-circle-tQco1wm8.js} +1 -1
- package/dist/assets/{web-CrzESj6z.js → web-0M91Tp1S.js} +1 -1
- package/dist/assets/{web-CAGItaY8.js → web-dEhOij-c.js} +1 -1
- package/dist/assets/{x-Cpz96MpH.js → x-DSlNv2tZ.js} +1 -1
- package/dist/index.html +1 -1
- package/package.json +1 -1
- package/dist/assets/validator-DuPh5qwz.js +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
import{F as C}from"./index.es-C1Vw5-pU.js";import{E as D}from"./index-BX4hurF9.js";import{E as W}from"./index-CtCHxxgE.js";import{d as E,H as i,E as l,z as q,C as s,y as g,D as n,q as a,F as o,I as u,O as y,N as V,x as w,J as $,M as K,Q as A}from"./vendor-vue-NSDaktjZ.js";import{E as k,b7 as Z,cC as H,cD as J,cE as Q,cF as X,cG as Y,cH as ee,cI as te,cJ as U,cK as z,cL as G,cM as P,cN as se,cO as O,cP as oe,cQ as F,cd as ae,aw as j,ce as ne}from"./index-B26B3NRe.js";import{I as L,S as re,l as le}from"./pagination-DcHHH5aU.js";import{E as ie}from"./index-s4nuUgXJ.js";import{p as ce}from"./pasteUploadMixin-BurWbGNQ.js";import{I as B}from"./ImagePreview-Bg_4MANc.js";import{E as me}from"./index-DHVwu-o_.js";import{E as I}from"./index-kxM-uBwN.js";import{C as de}from"./Consumption-BrRTFprj.js";import{a as ue}from"./price-B76rlcGM.js";import{E as x,a as N}from"./index-BGxp6OcW.js";import{E as pe}from"./index-C_-XxAWi.js";import{b as fe}from"./errorCode-Cqj9Td_Z.js";import{s as _e}from"./seedream--KzRDA8F.js";import{C as ge}from"./CopyToClipboard-DpLBFIyy.js";import{I as he}from"./ImageWrapper-DKVJ7ct4.js";import{E as $e}from"./index-Y6ecN3tB.js";import{E as ve}from"./index-B0A9C_-T.js";import{E as be}from"./index-MLK9z2al.js";import{B as Ee}from"./BotPlaceholder-CjLV0ALF.js";import{N as ke}from"./NoTasks-t-Nyk8v6.js";import"./use-form-item-efgym_Md.js";import"./index-BuyEbX8F.js";import"./vendor-axios-B8_nURbH.js";import"./vendor-dayjs-v0j1UNZp.js";import"./vendor-vue-router-Kg6s1a65.js";import"./typescript-DilvQCGQ.js";import"./index-Y6InDSnm.js";import"./index-BCChxDUd.js";import"./index-CP58CVoz.js";import"./_baseClone-DsJpkaTJ.js";import"./_Uint8Array-CIOAkFC8.js";import"./_initCloneObject--BkHfMCz.js";import"./isEqual-7sLqoZ1L.js";import"./index-D_vMdvZ6.js";import"./strings-beZM2Y-f.js";import"./castArray-TnTy8FCf.js";import"./debounce-CJZlaJSw.js";import"./_baseIteratee-y4F6_vaP.js";import"./index-DaTUtZCn.js";import"./index-Cu41y2Fl.js";import"./index-f3A5WlbC.js";const ye=E({name:"LayoutSeedream",components:{ElDrawer:W,ElButton:D,FontAwesomeIcon:C},data(){return{drawer:!1}}}),we={class:"main flex flex-row flex-1"},Se={class:"config w-[320px] h-full overflow-y-auto bg-[var(--app-sidebar-bg)] border-r border-[var(--app-border-subtle)]"},Ie={class:"result h-full p-6 flex-1 flex flex-col bg-[var(--app-content-bg)]"};function Ve(e,t,d,c,h,p){const f=n("font-awesome-icon"),_=n("el-button"),r=n("el-drawer");return a(),i("div",we,[l("div",Se,[q(e.$slots,"config",{},void 0,!0)]),l("div",Ie,[q(e.$slots,"result",{},void 0,!0)]),s(_,{circle:"",class:"menu",onClick:t[0]||(t[0]=m=>e.drawer=!0)},{default:g(()=>[s(f,{icon:"fa-solid fa-magic"})]),_:1}),s(r,{modelValue:e.drawer,"onUpdate:modelValue":t[1]||(t[1]=m=>e.drawer=m),direction:"ltr","with-header":!1,size:"340px",class:"drawer"},{default:g(()=>[q(e.$slots,"config",{},void 0,!0)]),_:3},8,["modelValue"])])}const Me=k(ye,[["render",Ve],["__scopeId","data-v-5ff0c320"]]),Ae="",Le=E({name:"SeedreamPromptInput",components:{ElInput:ie,InfoIcon:L},computed:{prompt:{get(){return this.$store.state.seedream?.config?.prompt},set(e){console.debug("set prompt",e),this.$store.commit("seedream/setConfig",{...this.$store.state.seedream?.config,prompt:e})}}},mounted(){this.prompt||(this.prompt=Ae)}}),Re={class:"field"},Te={class:"box"},Ce={class:"title font-bold"};function De(e,t,d,c,h,p){const f=n("info-icon"),_=n("el-input");return a(),i("div",Re,[l("div",Te,[l("h2",Ce,o(e.$t("seedream.name.prompt")),1),s(f,{content:e.$t("seedream.description.prompt"),class:"info"},null,8,["content"])]),s(_,{modelValue:e.prompt,"onUpdate:modelValue":t[0]||(t[0]=r=>e.prompt=r),rows:3,type:"textarea",class:"prompt",placeholder:e.$t("seedream.placeholder.prompt")},null,8,["modelValue","placeholder"])])}const qe=k(Le,[["render",De],["__scopeId","data-v-5559520a"]]),Ue=E({name:"SeedreamImageInput",components:{ElUpload:me,ElButton:D,InfoIcon:L,ImagePreview:B,FontAwesomeIcon:C},mixins:[ce],data(){return{fileList:[],uploadUrl:Z()+"/api/v1/files/",suppressWatch:!1}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},urls(){return this.fileList.map(e=>e?.response?.file_url).filter(e=>!!e)},value(){return this.$store.state.seedream?.config?.image}},watch:{value:{immediate:!0,handler(e){if(this.suppressWatch)return;if(!e||e.length===0){const c=(this.fileList||[]).filter(h=>!h?.response?.file_url);this.fileList=c.length?c:[];return}const t=[];e.forEach(c=>{const h=this.fileList.find(p=>p?.response?.file_url===c||p?.url===c);h?t.push(h):t.push({name:c.split("/").pop()||c,url:c,status:"success",percentage:100,response:{file_url:c}})}),(this.fileList||[]).filter(c=>!c?.response?.file_url).forEach(c=>{t.some(p=>p===c||p?.url===c?.url||p?.response?.file_url===c?.response?.file_url)||t.push(c)}),this.fileList=t}}},methods:{onChange(e){if(!e?.url&&e?.raw)try{e.url=URL.createObjectURL(e.raw)}catch{}},onRemove(e){if(e?.url&&typeof e.url=="string"&&e.url.startsWith("blob:"))try{URL.revokeObjectURL(e.url)}catch{}this.onSetImages()},onExceed(){I.warning(this.$t("seedream.message.uploadImageExceed"))},onError(){I.error(this.$t("seedream.message.uploadImageError"))},onSetImages(){const e=this.urls;this.suppressWatch=!0,this.$store.commit("seedream/setConfig",{...this.$store.state.seedream?.config,image:e}),this.$nextTick(()=>{this.suppressWatch=!1})},async onSuccess(e,t){e?.file_url&&(t.url=e.file_url,t.response=e),this.onSetImages()},onRemovePreview(e,t){if(this.fileList.splice(e,1),t?.url&&typeof t.url=="string"&&t.url.startsWith("blob:"))try{URL.revokeObjectURL(t.url)}catch{}this.onSetImages()}}}),ze={class:"field"},Ge={class:"label"},Pe={class:"box"},Oe={class:"title font-bold"},je={class:"value"},Fe={class:"file-list mt-2 flex flex-wrap gap-[10px]"};function Be(e,t,d,c,h,p){const f=n("info-icon"),_=n("font-awesome-icon"),r=n("el-button"),m=n("el-upload"),b=n("image-preview");return a(),i(y,null,[l("div",ze,[l("div",Ge,[l("div",Pe,[l("h2",Oe,o(e.$t("seedream.name.imageUrls")),1),s(f,{content:e.$t("seedream.description.imageUrls"),class:"info"},null,8,["content"])])]),l("div",je,[s(m,{ref:"uploader","file-list":e.fileList,"onUpdate:fileList":t[0]||(t[0]=v=>e.fileList=v),accept:".png,.jpg,.jpeg,.gif,.bmp,.webp",name:"file",limit:14,multiple:!0,"show-file-list":!1,action:e.uploadUrl,"on-exceed":e.onExceed,"on-error":e.onError,"on-success":e.onSuccess,"on-change":e.onChange,"on-remove":e.onRemove,headers:e.headers},{default:g(()=>[s(r,{size:"small",type:"primary",round:""},{default:g(()=>[s(_,{icon:"fa-solid fa-upload",class:"mr-1"}),u(" "+o(e.$t("seedream.button.uploadImageUrls")),1)]),_:1})]),_:1},8,["file-list","action","on-exceed","on-error","on-success","on-change","on-remove","headers"])])]),l("div",Fe,[(a(!0),i(y,null,V(e.fileList,(v,S)=>(a(),w(b,{key:v.uid||v?.response?.file_url||v.url||S,url:v.url||v?.response?.file_url,name:v.name,percentage:v.percentage,onRemove:R=>e.onRemovePreview(S,v)},null,8,["url","name","percentage","onRemove"]))),128))])],64)}const xe=k(Ue,[["render",Be],["__scopeId","data-v-dc18c674"]]),Ne=E({name:"SeedreamModelSelector",components:{ElSelect:N,ElOption:x,InfoIcon:L},data(){return{options:[{value:J,label:this.$t("seedream.model.seedream50")},{value:Q,label:this.$t("seedream.model.seedream45")},{value:X,label:this.$t("seedream.model.seedream40")},{value:Y,label:this.$t("seedream.model.seedream30t2i")},{value:ee,label:this.$t("seedream.model.seededit30i2i")}]}},computed:{value:{get(){return this.$store.state.seedream?.config?.model},set(e){this.$store.commit("seedream/setConfig",{...this.$store.state.seedream?.config,model:e})}}},mounted(){this.value||(this.value=H)}}),We={class:"field"},Ke={class:"label"},Ze={class:"box"},He={class:"title font-bold"};function Je(e,t,d,c,h,p){const f=n("info-icon"),_=n("el-option"),r=n("el-select");return a(),i("div",We,[l("div",Ke,[l("div",Ze,[l("h2",He,o(e.$t("seedream.name.model")),1),s(f,{content:e.$t("seedream.description.model"),class:"info"},null,8,["content"])])]),s(r,{modelValue:e.value,"onUpdate:modelValue":t[0]||(t[0]=m=>e.value=m),class:"value",placeholder:e.$t("seedream.placeholder.select")},{default:g(()=>[(a(!0),i(y,null,V(e.options,m=>(a(),w(_,{key:m.value,label:m.label,value:m.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const Qe=k(Ne,[["render",Je],["__scopeId","data-v-609ade55"]]),Xe=E({name:"SeedreamSizeSelector",components:{ElSelect:N,ElOption:x,InfoIcon:L},data(){return{options:[{value:U,label:U},{value:z,label:z},{value:G,label:G},{value:P,label:P}]}},computed:{value:{get(){return this.$store.state.seedream?.config?.size},set(e){this.$store.commit("seedream/setConfig",{...this.$store.state.seedream?.config,size:e})}}},mounted(){this.value||(this.value=te)}}),Ye={class:"field"},et={class:"label"},tt={class:"box"},st={class:"title font-bold"};function ot(e,t,d,c,h,p){const f=n("info-icon"),_=n("el-option"),r=n("el-select");return a(),i("div",Ye,[l("div",et,[l("div",tt,[l("h2",st,o(e.$t("seedream.name.size")),1),s(f,{content:e.$t("seedream.description.size"),class:"info"},null,8,["content"])])]),s(r,{modelValue:e.value,"onUpdate:modelValue":t[0]||(t[0]=m=>e.value=m),class:"value",placeholder:e.$t("seedream.placeholder.select"),filterable:"","allow-create":"","default-first-option":""},{default:g(()=>[(a(!0),i(y,null,V(e.options,m=>(a(),w(_,{key:m.value,label:m.label,value:m.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const at=k(Xe,[["render",ot],["__scopeId","data-v-44d5c9d9"]]),nt=E({name:"SeedreamMaxImagesSelector",components:{ElInputNumber:pe,InfoIcon:L},computed:{config(){return this.$store.state.seedream?.config||{}},supported(){return oe(this.config?.model)},referenceImageCount(){const e=this.config?.image;return Array.isArray(e)?e.length:0},effectiveMax(){const e=O-this.referenceImageCount;return Math.max(1,Math.min(O,e))},value:{get(){const e=this.config?.sequential_image_generation_options?.max_images;return typeof e=="number"&&e>=1?e:se},set(e){const t={...this.config||{}},d=Math.max(1,Math.min(this.effectiveMax,Math.floor(e||1)));d>1?(t.sequential_image_generation="auto",t.sequential_image_generation_options={...t.sequential_image_generation_options||{},max_images:d}):(t.sequential_image_generation="disabled",t.sequential_image_generation_options&&delete t.sequential_image_generation_options),this.$store.commit("seedream/setConfig",t)}}},watch:{supported:{immediate:!0,handler(e){if(e)return;const t={...this.config||{}};let d=!1;t.sequential_image_generation&&(delete t.sequential_image_generation,d=!0),t.sequential_image_generation_options&&(delete t.sequential_image_generation_options,d=!0),d&&this.$store.commit("seedream/setConfig",t)}},effectiveMax(e){this.value>e&&(this.value=e)}}}),rt={key:0,class:"field"},lt={class:"label"},it={class:"box"},ct={class:"title font-bold"},mt={class:"value"};function dt(e,t,d,c,h,p){const f=n("info-icon"),_=n("el-input-number");return e.supported?(a(),i("div",rt,[l("div",lt,[l("div",it,[l("h2",ct,o(e.$t("seedream.name.maxImages")),1),s(f,{content:e.$t("seedream.description.maxImages"),class:"info"},null,8,["content"])])]),l("div",mt,[s(_,{modelValue:e.value,"onUpdate:modelValue":t[0]||(t[0]=r=>e.value=r),min:1,max:e.effectiveMax,step:1,size:"default","controls-position":"right",class:"counter"},null,8,["modelValue","max"])])])):$("",!0)}const ut=k(nt,[["render",dt],["__scopeId","data-v-17ef8d1a"]]),pt=E({name:"SeedreamConfigPanel",components:{ElButton:D,FontAwesomeIcon:C,PromptInput:qe,Consumption:de,ImageInput:xe,ModelSelector:Qe,SizeSelector:at,MaxImagesSelector:ut},emits:["generate"],computed:{config(){return this.$store.state.seedream?.config},consumption(){const e={...this.config||{}},t=Array.isArray(e?.image)&&e.image.length>0,d=e?.sequential_image_generation==="auto"?Math.max(1,Math.floor(e?.sequential_image_generation_options?.max_images||1)):1;return ue({...e,action:t?"edit":"generate",model:F(e?.model),count:d},this.service?.cost)},service(){return this.$store.state.seedream?.service}},methods:{onGenerate(){this.$emit("generate")}}}),ft={class:"flex flex-col h-full"},_t={class:"flex-1 overflow-y-auto p-5"},gt={class:"flex flex-col items-center justify-center px-5 pb-5"};function ht(e,t,d,c,h,p){const f=n("model-selector"),_=n("size-selector"),r=n("max-images-selector"),m=n("prompt-input"),b=n("image-input"),v=n("consumption"),S=n("font-awesome-icon"),R=n("el-button");return a(),i("div",ft,[l("div",_t,[s(f,{class:"mb-4"}),s(_,{class:"mb-4"}),s(r,{class:"mb-4"}),s(m,{class:"mb-4"}),s(b,{class:"mb-4"})]),l("div",gt,[s(v,{value:e.consumption,service:e.service},null,8,["value","service"]),s(R,{type:"primary",class:"btn w-full",round:"",onClick:e.onGenerate},{default:g(()=>[s(S,{icon:"fa-solid fa-magic",class:"mr-2"}),u(" "+o(e.$t("seedream.button.generate")),1)]),_:1},8,["onClick"])])])}const $t=k(pt,[["render",ht]]),vt=E({name:"SeedreamTaskPreview",components:{ElImage:be,CopyToClipboard:ge,FontAwesomeIcon:C,ElAlert:ve,ImageWrapper:he,ElButton:D,ElTooltip:$e,ImagePreview:B},props:{modelValue:{type:Object,required:!0}},computed:{isEdit(){return Array.isArray(this.modelValue?.request?.image)&&(this.modelValue?.request?.image?.length||0)>0},images(){const e=[];return Array.isArray(this.modelValue?.response?.data)&&this.modelValue?.response?.data?.forEach(t=>{e.push(t)}),e}},methods:{shortModel(e){return F(e)||e},onEdit(e){if(!e)return;console.debug("Edit image:",e);const t={...this.$store.state.seedream?.config||{}};t.image=[e],this.$store.commit("seedream/setConfig",t)}}}),bt={class:"preview"},Et={class:"left"},kt={class:"main"},yt={class:"bot"},wt={class:"datetime"},St={class:"info"},It={key:0,class:"flex justify-start items-center gap-2 mt-2 w-full overflow-x-auto"},Vt={key:1,class:"prompt mt-2"},Mt={key:0},At={key:0,class:A({content:!0})},Lt={class:"text-[var(--el-text-color-regular)] text-xs mb-0"},Rt={key:1,class:A({content:!0,failed:!0})},Tt={class:"flex justify-start items-center gap-4 w-full overflow-x-auto"},Ct={class:A({operations:!0,"mt-2":!0,"mb-2":!0})},Dt={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},qt={key:1,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Ut={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},zt={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Gt={key:2,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Pt={key:3,class:"text-[var(--el-text-color-regular)] text-xs mb-0"},Ot={key:2,class:A({content:!0})},jt={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Ft={key:1,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Bt={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},xt={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Nt={key:2,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Wt={key:3,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Kt={key:4,class:"text-[var(--el-text-color-regular)] text-xs mb-0"},Zt={key:3,class:A({content:!0})},Ht={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Jt={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-0"};function Qt(e,t,d,c,h,p){const f=n("el-image"),_=n("image-preview"),r=n("font-awesome-icon"),m=n("copy-to-clipboard"),b=n("el-alert"),v=n("image-wrapper"),S=n("el-button"),R=n("el-tooltip");return a(),i("div",bt,[l("div",Et,[s(f,{src:"https://cdn.acedata.cloud/9egrbn.png",class:"avatar"})]),l("div",kt,[l("div",yt,[u(o(e.$t("seedream.name.seedreamBot"))+" ",1),l("span",wt,o(e.$dayjs.format(""+new Date(parseFloat((e.modelValue?.created_at||"").toString())*1e3))),1)]),l("div",St,[Array.isArray(e.modelValue?.request?.image)&&e.modelValue?.request?.image.length>0?(a(),i("div",It,[(a(!0),i(y,null,V(e.modelValue?.request?.image,(M,T)=>(a(),w(_,{key:T,url:M,name:`image-${T+1}`,closable:!1},null,8,["url","name"]))),128))])):$("",!0),e.modelValue?.request?.prompt?(a(),i("p",Vt,[u(o(e.modelValue?.request?.prompt)+" ",1),e.modelValue?.response?$("",!0):(a(),i("span",Mt," - ("+o(e.$t("seedream.status.pending"))+") ",1))])):$("",!0)]),e.modelValue?.response?e.modelValue?.response?.success===!0?(a(),i("div",Rt,[l("div",Tt,[(a(!0),i(y,null,V(e.images,(M,T)=>(a(),w(v,{key:T,src:M?.image_url,"raw-src":M?.image_url},null,8,["src","raw-src"]))),128))]),l("div",Ct,[s(R,{class:"box-item",effect:"dark",content:e.$t("common.button.edit"),placement:"top-start"},{default:g(()=>[s(S,{type:"info",size:"small",class:"btn-action",onClick:t[0]||(t[0]=K(M=>e.onEdit(e.images?.[0]?.image_url),["stop"]))},{default:g(()=>[u(o(e.$t("common.button.edit")),1)]),_:1})]),_:1},8,["content"])]),s(b,{closable:!1,class:"mt-2 success"},{default:g(()=>[e.modelValue?.request?.model?(a(),i("p",Dt,[s(r,{icon:"fa-solid fa-cube",class:"mr-1"}),u(" "+o(e.$t("seedream.name.model"))+": "+o(e.shortModel(e.modelValue?.request?.model)),1)])):$("",!0),e.modelValue?.request?.size?(a(),i("p",qt,[s(r,{icon:"fa-solid fa-image",class:"mr-1"}),u(" "+o(e.$t("seedream.name.size"))+": "+o(e.modelValue?.request?.size),1)])):$("",!0),l("p",Ut,[s(r,{icon:"fa-solid fa-bolt",class:"mr-1"}),u(" "+o(e.$t("seedream.name.task"))+": "+o(e.isEdit?e.$t("seedream.name.edits"):e.$t("seedream.name.generate")),1)]),l("p",zt,[s(r,{icon:"fa-solid fa-magic",class:"mr-1"}),u(" "+o(e.$t("seedream.name.taskId"))+": "+o(e.modelValue?.id)+" ",1),s(m,{content:e.modelValue?.id,class:"btn-copy inline-block"},null,8,["content"])]),e.modelValue?.elapsed?(a(),i("p",Gt,[s(r,{icon:"fa-solid fa-clock",class:"mr-1"}),u(" "+o(e.$t("seedream.name.elapsed"))+": "+o(e.modelValue?.elapsed?.toFixed(2))+"s ",1)])):$("",!0),e.modelValue?.response?.trace_id?(a(),i("p",Pt,[s(r,{icon:"fa-solid fa-hashtag",class:"mr-1"}),u(" "+o(e.$t("seedream.name.traceId"))+": "+o(e.modelValue?.response?.trace_id)+" ",1),s(m,{content:e.modelValue?.response?.trace_id,class:"btn-copy inline-block"},null,8,["content"])])):$("",!0)]),_:1})])):e.modelValue?.response?.success===!1?(a(),i("div",Ot,[s(b,{closable:!1,class:"failure"},{template:g(()=>[s(r,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),u(" "+o(e.$t("seedream.name.failure")),1)]),default:g(()=>[e.modelValue?.request?.model?(a(),i("p",jt,[s(r,{icon:"fa-solid fa-cube",class:"mr-1"}),u(" "+o(e.$t("seedream.name.model"))+": "+o(e.shortModel(e.modelValue?.request?.model)),1)])):$("",!0),e.modelValue?.request?.size?(a(),i("p",Ft,[s(r,{icon:"fa-solid fa-image",class:"mr-1"}),u(" "+o(e.$t("seedream.name.size"))+": "+o(e.modelValue?.request?.size),1)])):$("",!0),l("p",Bt,[s(r,{icon:"fa-solid fa-bolt",class:"mr-1"}),u(" "+o(e.$t("seedream.name.task"))+": "+o(e.isEdit?e.$t("seedream.name.edits"):e.$t("seedream.name.generate")),1)]),l("p",xt,[s(r,{icon:"fa-solid fa-magic",class:"mr-1"}),u(" "+o(e.$t("seedream.name.taskId"))+": "+o(e.modelValue?.id)+" ",1),s(m,{content:e.modelValue?.id,class:"btn-copy"},null,8,["content"])]),e.modelValue?.response?.error?.message?(a(),i("p",Nt,[s(r,{icon:"fa-solid fa-circle-info",class:"mr-1"}),u(" "+o(e.$t("seedream.name.failureReason"))+": "+o(e.modelValue?.response?.error?.message)+" ",1),s(m,{content:e.modelValue?.response?.error?.message,class:"btn-copy"},null,8,["content"])])):$("",!0),e.modelValue?.elapsed?(a(),i("p",Wt,[s(r,{icon:"fa-solid fa-clock",class:"mr-1"}),u(" "+o(e.$t("seedream.name.elapsed"))+": "+o(e.modelValue?.elapsed?.toFixed(2))+"s ",1)])):$("",!0),e.modelValue?.response?.trace_id?(a(),i("p",Kt,[s(r,{icon:"fa-solid fa-hashtag",class:"mr-1"}),u(" "+o(e.$t("seedream.name.traceId"))+": "+o(e.modelValue?.response?.trace_id)+" ",1),s(m,{content:e.modelValue?.response?.trace_id,class:"btn-copy"},null,8,["content"])])):$("",!0)]),_:1})])):(a(),i("div",Zt,[s(b,{closable:!1,class:"info"},{template:g(()=>[s(r,{icon:"fa-solid fa-circle-info",class:"mr-1"}),u(" "+o(e.$t("seedream.name.status")),1)]),default:g(()=>[l("p",Ht,[s(r,{icon:"fa-solid fa-magic",class:"mr-1"}),u(" "+o(e.$t("seedream.name.taskId"))+": "+o(e.modelValue?.id)+" ",1),s(m,{content:e.modelValue?.id,class:"btn-copy"},null,8,["content"])]),e.modelValue?.response?.trace_id?(a(),i("p",Jt,[s(r,{icon:"fa-solid fa-hashtag",class:"mr-1"}),u(" "+o(e.$t("seedream.name.traceId"))+": "+o(e.modelValue?.response?.trace_id)+" ",1),s(m,{content:e.modelValue?.response?.trace_id,class:"btn-copy"},null,8,["content"])])):$("",!0)]),_:1})])):(a(),i("div",At,[s(b,{closable:!1,class:"info"},{template:g(()=>[s(r,{icon:"fa-regular fa-clock",class:"mr-1"}),u(" "+o(e.$t("seedream.status.pending")),1)]),default:g(()=>[l("p",Lt,[s(r,{icon:"fa-solid fa-magic",class:"mr-1"}),u(" "+o(e.$t("seedream.name.taskId"))+": "+o(e.modelValue?.id)+" ",1),s(m,{content:e.modelValue?.id,class:"btn-copy inline-block"},null,8,["content"])])]),_:1})]))])])}const Xt=k(vt,[["render",Qt],["__scopeId","data-v-0dfc6a09"]]),Yt=E({name:"SeedreamRecentPanel",components:{TaskPreview:Xt,BotPlaceholder:Ee,NoTasks:ke,ScrollList:re},props:{loading:{type:Boolean,default:!1}},emits:["reach-top"],computed:{tasks(){return{...this.$store.state.seedream?.tasks,items:this.$store.state.seedream?.tasks?.items?.slice()}}},methods:{getScrollElement(){return this.$refs.scrollList?.getScrollElement?.()}}}),es={key:0},ts={key:2,class:"w-full h-full flex items-center justify-center"};function ss(e,t,d,c,h,p){const f=n("bot-placeholder"),_=n("task-preview"),r=n("scroll-list"),m=n("no-tasks");return a(),i(y,null,[e.tasks?.items===void 0?(a(),i("div",es,[s(f)])):e.tasks?.items?.length&&e.tasks?.items?.length>0?(a(),w(r,{key:1,ref:"scrollList",class:"tasks h-full w-full overflow-y-auto",loading:e.loading,onReachTop:t[0]||(t[0]=b=>e.$emit("reach-top"))},{default:g(()=>[(a(!0),i(y,null,V(e.tasks?.items,b=>(a(),w(_,{key:b.id,"model-value":b},null,8,["model-value"]))),128))]),_:1},8,["loading"])):$("",!0),e.tasks?.items?.length===0?(a(),i("div",ts,[s(m)])):$("",!0)],64)}const os=k(Yt,[["render",ss]]),as=ne("seedream"),ns=E({name:"SeedreamIndex",components:{ConfigPanel:$t,Layout:Me,RecentPanel:os},inject:["initialized"],data(){return{task:void 0,job:0,loading:!1}},computed:{applicationsLoading(){return this.$store.state.seedream?.status?.getApplications===j.Request},tasksLoading(){return this.$store.state.seedream?.status?.getTasks===j.Request},credential(){return this.$store.state.seedream?.credential},config(){return this.$store.state.seedream?.config},application(){return this.$store.state.seedream?.application},tasks(){return this.$store.state.seedream?.tasks}},watch:{tasks:{handler(e,t){e?.items?.length>t?.items?.length&&console.debug("new tasks detected")},deep:!0},initialized:{async handler(e){e&&(console.debug("layout initialized"),await this.onGetTasks(),await this.onScrollDown(),this.job=window.setInterval(()=>{this.onGetTasks()},5e3))},immediate:!0}},async mounted(){await this.onGetService()},async unmounted(){window.clearInterval(this.job)},methods:{async onReachTop(){await le({tasks:this.tasks,getTasks:()=>this.tasks,loading:this.loading,setLoading:e=>this.loading=e,isBlocked:()=>this.tasksLoading,fetch:e=>this.onGetTasks({createdAtMax:e}),getScrollElement:()=>this.getTasksScrollElement()})},async onGetService(){console.debug("start onGetService"),await this.$store.dispatch("seedream/getService"),console.debug("end onGetService")},async onGetApplication(){console.debug("start onGetApplication"),await this.$store.dispatch("seedream/getApplications"),console.debug("end onGetApplication"),await this.onGetTasks()},async onScrollDown(){await this.$nextTick();const e=this.getTasksScrollElement();e&&(e.scrollTop=e.scrollHeight)},async onGetTasks(e){if(this.applicationsLoading||this.tasksLoading){console.debug("loading");return}console.debug("start onGetTasks",e);const{limit:t=20,createdAtMin:d,createdAtMax:c}=e||{};console.debug("limit",t,"createdAtMin",d,"createdAtMax",c),await this.$store.dispatch("seedream/getTasks",{limit:t,createdAtMin:d,createdAtMax:c})},async onGenerate(){const e={...this.config||{}};!(Array.isArray(e?.image)&&e.image.length>0)&&"image"in e&&delete e.image,e?.size||delete e.size;const d={...e,callback_url:as},c=this.credential?.token;if(!c){console.error("no token specified");return}I.info(this.$t("seedream.message.startingTask")),ae("seedream",_e.generate(d,{token:c})).then(()=>{I.success(this.$t("seedream.message.startTaskSuccess"))}).catch(h=>{const p=h?.response?.data;p?.error?.code===fe?I.error(this.$t("seedream.message.usedUp")):I.error(this.$t("seedream.message.startTaskFailed")+(p?.error?.message||""))}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})},getTasksScrollElement(){return this.$refs.recentPanel?.getScrollElement?.()}}});function rs(e,t,d,c,h,p){const f=n("config-panel"),_=n("recent-panel"),r=n("layout");return a(),w(r,null,{config:g(()=>[s(f,{onGenerate:e.onGenerate},null,8,["onGenerate"])]),result:g(()=>[s(_,{ref:"recentPanel",loading:e.loading,onReachTop:e.onReachTop},null,8,["loading","onReachTop"])]),_:1})}const Xs=k(ns,[["render",rs]]);export{Xs as default};
|
|
1
|
+
import{F as C}from"./index.es-PxkVTVul.js";import{E as D}from"./index-LHAPoElI.js";import{E as W}from"./index-Dffxw0ff.js";import{d as E,H as i,E as l,z as q,C as s,y as g,D as n,q as a,F as o,I as u,O as y,N as V,x as w,J as $,M as K,Q as A}from"./vendor-vue-NSDaktjZ.js";import{E as k,b7 as Z,cC as H,cD as J,cE as Q,cF as X,cG as Y,cH as ee,cI as te,cJ as U,cK as z,cL as G,cM as P,cN as se,cO as O,cP as oe,cQ as F,cd as ae,aw as j,ce as ne}from"./index-CUMrI3uM.js";import{I as L,S as re,l as le}from"./pagination-DnskqQUw.js";import{E as ie}from"./index-BhgPr4v6.js";import{p as ce}from"./pasteUploadMixin-BurWbGNQ.js";import{I as B}from"./ImagePreview-7naWf_Hk.js";import{E as me}from"./index-B0UU8wtf.js";import{E as I}from"./index-D3kwEdCO.js";import{C as de}from"./Consumption-DFTH_HGK.js";import{a as ue}from"./price-CxhDvSzR.js";import{E as x,a as N}from"./index-BX75bHZZ.js";import{E as pe}from"./index-Ce2SVQ2-.js";import{b as fe}from"./errorCode-Cqj9Td_Z.js";import{s as _e}from"./seedream-auGCEdqn.js";import{C as ge}from"./CopyToClipboard-D0h1kZtr.js";import{I as he}from"./ImageWrapper-DBP8OPPq.js";import{E as $e}from"./index-LJD4KxHk.js";import{E as ve}from"./index-CYoskRTt.js";import{E as be}from"./index-Iywsl7Po.js";import{B as Ee}from"./BotPlaceholder-BaXQOlUu.js";import{N as ke}from"./NoTasks-Cz8zUMc6.js";import"./use-form-item-BCUliaxT.js";import"./index-BuyEbX8F.js";import"./vendor-axios-B8_nURbH.js";import"./vendor-dayjs-v0j1UNZp.js";import"./vendor-vue-router-Kg6s1a65.js";import"./typescript-DeTjW0DO.js";import"./index-DceoqtRa.js";import"./index-CqUYE69O.js";import"./index-NhMzhO2I.js";import"./_baseClone-BSjA72P_.js";import"./_Uint8Array-xXOLJRhg.js";import"./_initCloneObject-CI8Xd2KA.js";import"./isEqual-DyhHzzXY.js";import"./index-DUTwzVsl.js";import"./strings-beZM2Y-f.js";import"./castArray-BX_tt0Nx.js";import"./debounce-UL-c7F9u.js";import"./_baseIteratee-A9x3WSjV.js";import"./index-VJ8AehQ6.js";import"./index-Cu41y2Fl.js";import"./index-DWeJByu5.js";const ye=E({name:"LayoutSeedream",components:{ElDrawer:W,ElButton:D,FontAwesomeIcon:C},data(){return{drawer:!1}}}),we={class:"main flex flex-row flex-1"},Se={class:"config w-[320px] h-full overflow-y-auto bg-[var(--app-sidebar-bg)] border-r border-[var(--app-border-subtle)]"},Ie={class:"result h-full p-6 flex-1 flex flex-col bg-[var(--app-content-bg)]"};function Ve(e,t,d,c,h,p){const f=n("font-awesome-icon"),_=n("el-button"),r=n("el-drawer");return a(),i("div",we,[l("div",Se,[q(e.$slots,"config",{},void 0,!0)]),l("div",Ie,[q(e.$slots,"result",{},void 0,!0)]),s(_,{circle:"",class:"menu",onClick:t[0]||(t[0]=m=>e.drawer=!0)},{default:g(()=>[s(f,{icon:"fa-solid fa-magic"})]),_:1}),s(r,{modelValue:e.drawer,"onUpdate:modelValue":t[1]||(t[1]=m=>e.drawer=m),direction:"ltr","with-header":!1,size:"340px",class:"drawer"},{default:g(()=>[q(e.$slots,"config",{},void 0,!0)]),_:3},8,["modelValue"])])}const Me=k(ye,[["render",Ve],["__scopeId","data-v-5ff0c320"]]),Ae="",Le=E({name:"SeedreamPromptInput",components:{ElInput:ie,InfoIcon:L},computed:{prompt:{get(){return this.$store.state.seedream?.config?.prompt},set(e){console.debug("set prompt",e),this.$store.commit("seedream/setConfig",{...this.$store.state.seedream?.config,prompt:e})}}},mounted(){this.prompt||(this.prompt=Ae)}}),Re={class:"field"},Te={class:"box"},Ce={class:"title font-bold"};function De(e,t,d,c,h,p){const f=n("info-icon"),_=n("el-input");return a(),i("div",Re,[l("div",Te,[l("h2",Ce,o(e.$t("seedream.name.prompt")),1),s(f,{content:e.$t("seedream.description.prompt"),class:"info"},null,8,["content"])]),s(_,{modelValue:e.prompt,"onUpdate:modelValue":t[0]||(t[0]=r=>e.prompt=r),rows:3,type:"textarea",class:"prompt",placeholder:e.$t("seedream.placeholder.prompt")},null,8,["modelValue","placeholder"])])}const qe=k(Le,[["render",De],["__scopeId","data-v-5559520a"]]),Ue=E({name:"SeedreamImageInput",components:{ElUpload:me,ElButton:D,InfoIcon:L,ImagePreview:B,FontAwesomeIcon:C},mixins:[ce],data(){return{fileList:[],uploadUrl:Z()+"/api/v1/files/",suppressWatch:!1}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},urls(){return this.fileList.map(e=>e?.response?.file_url).filter(e=>!!e)},value(){return this.$store.state.seedream?.config?.image}},watch:{value:{immediate:!0,handler(e){if(this.suppressWatch)return;if(!e||e.length===0){const c=(this.fileList||[]).filter(h=>!h?.response?.file_url);this.fileList=c.length?c:[];return}const t=[];e.forEach(c=>{const h=this.fileList.find(p=>p?.response?.file_url===c||p?.url===c);h?t.push(h):t.push({name:c.split("/").pop()||c,url:c,status:"success",percentage:100,response:{file_url:c}})}),(this.fileList||[]).filter(c=>!c?.response?.file_url).forEach(c=>{t.some(p=>p===c||p?.url===c?.url||p?.response?.file_url===c?.response?.file_url)||t.push(c)}),this.fileList=t}}},methods:{onChange(e){if(!e?.url&&e?.raw)try{e.url=URL.createObjectURL(e.raw)}catch{}},onRemove(e){if(e?.url&&typeof e.url=="string"&&e.url.startsWith("blob:"))try{URL.revokeObjectURL(e.url)}catch{}this.onSetImages()},onExceed(){I.warning(this.$t("seedream.message.uploadImageExceed"))},onError(){I.error(this.$t("seedream.message.uploadImageError"))},onSetImages(){const e=this.urls;this.suppressWatch=!0,this.$store.commit("seedream/setConfig",{...this.$store.state.seedream?.config,image:e}),this.$nextTick(()=>{this.suppressWatch=!1})},async onSuccess(e,t){e?.file_url&&(t.url=e.file_url,t.response=e),this.onSetImages()},onRemovePreview(e,t){if(this.fileList.splice(e,1),t?.url&&typeof t.url=="string"&&t.url.startsWith("blob:"))try{URL.revokeObjectURL(t.url)}catch{}this.onSetImages()}}}),ze={class:"field"},Ge={class:"label"},Pe={class:"box"},Oe={class:"title font-bold"},je={class:"value"},Fe={class:"file-list mt-2 flex flex-wrap gap-[10px]"};function Be(e,t,d,c,h,p){const f=n("info-icon"),_=n("font-awesome-icon"),r=n("el-button"),m=n("el-upload"),b=n("image-preview");return a(),i(y,null,[l("div",ze,[l("div",Ge,[l("div",Pe,[l("h2",Oe,o(e.$t("seedream.name.imageUrls")),1),s(f,{content:e.$t("seedream.description.imageUrls"),class:"info"},null,8,["content"])])]),l("div",je,[s(m,{ref:"uploader","file-list":e.fileList,"onUpdate:fileList":t[0]||(t[0]=v=>e.fileList=v),accept:".png,.jpg,.jpeg,.gif,.bmp,.webp",name:"file",limit:14,multiple:!0,"show-file-list":!1,action:e.uploadUrl,"on-exceed":e.onExceed,"on-error":e.onError,"on-success":e.onSuccess,"on-change":e.onChange,"on-remove":e.onRemove,headers:e.headers},{default:g(()=>[s(r,{size:"small",type:"primary",round:""},{default:g(()=>[s(_,{icon:"fa-solid fa-upload",class:"mr-1"}),u(" "+o(e.$t("seedream.button.uploadImageUrls")),1)]),_:1})]),_:1},8,["file-list","action","on-exceed","on-error","on-success","on-change","on-remove","headers"])])]),l("div",Fe,[(a(!0),i(y,null,V(e.fileList,(v,S)=>(a(),w(b,{key:v.uid||v?.response?.file_url||v.url||S,url:v.url||v?.response?.file_url,name:v.name,percentage:v.percentage,onRemove:R=>e.onRemovePreview(S,v)},null,8,["url","name","percentage","onRemove"]))),128))])],64)}const xe=k(Ue,[["render",Be],["__scopeId","data-v-dc18c674"]]),Ne=E({name:"SeedreamModelSelector",components:{ElSelect:N,ElOption:x,InfoIcon:L},data(){return{options:[{value:J,label:this.$t("seedream.model.seedream50")},{value:Q,label:this.$t("seedream.model.seedream45")},{value:X,label:this.$t("seedream.model.seedream40")},{value:Y,label:this.$t("seedream.model.seedream30t2i")},{value:ee,label:this.$t("seedream.model.seededit30i2i")}]}},computed:{value:{get(){return this.$store.state.seedream?.config?.model},set(e){this.$store.commit("seedream/setConfig",{...this.$store.state.seedream?.config,model:e})}}},mounted(){this.value||(this.value=H)}}),We={class:"field"},Ke={class:"label"},Ze={class:"box"},He={class:"title font-bold"};function Je(e,t,d,c,h,p){const f=n("info-icon"),_=n("el-option"),r=n("el-select");return a(),i("div",We,[l("div",Ke,[l("div",Ze,[l("h2",He,o(e.$t("seedream.name.model")),1),s(f,{content:e.$t("seedream.description.model"),class:"info"},null,8,["content"])])]),s(r,{modelValue:e.value,"onUpdate:modelValue":t[0]||(t[0]=m=>e.value=m),class:"value",placeholder:e.$t("seedream.placeholder.select")},{default:g(()=>[(a(!0),i(y,null,V(e.options,m=>(a(),w(_,{key:m.value,label:m.label,value:m.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const Qe=k(Ne,[["render",Je],["__scopeId","data-v-609ade55"]]),Xe=E({name:"SeedreamSizeSelector",components:{ElSelect:N,ElOption:x,InfoIcon:L},data(){return{options:[{value:U,label:U},{value:z,label:z},{value:G,label:G},{value:P,label:P}]}},computed:{value:{get(){return this.$store.state.seedream?.config?.size},set(e){this.$store.commit("seedream/setConfig",{...this.$store.state.seedream?.config,size:e})}}},mounted(){this.value||(this.value=te)}}),Ye={class:"field"},et={class:"label"},tt={class:"box"},st={class:"title font-bold"};function ot(e,t,d,c,h,p){const f=n("info-icon"),_=n("el-option"),r=n("el-select");return a(),i("div",Ye,[l("div",et,[l("div",tt,[l("h2",st,o(e.$t("seedream.name.size")),1),s(f,{content:e.$t("seedream.description.size"),class:"info"},null,8,["content"])])]),s(r,{modelValue:e.value,"onUpdate:modelValue":t[0]||(t[0]=m=>e.value=m),class:"value",placeholder:e.$t("seedream.placeholder.select"),filterable:"","allow-create":"","default-first-option":""},{default:g(()=>[(a(!0),i(y,null,V(e.options,m=>(a(),w(_,{key:m.value,label:m.label,value:m.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const at=k(Xe,[["render",ot],["__scopeId","data-v-44d5c9d9"]]),nt=E({name:"SeedreamMaxImagesSelector",components:{ElInputNumber:pe,InfoIcon:L},computed:{config(){return this.$store.state.seedream?.config||{}},supported(){return oe(this.config?.model)},referenceImageCount(){const e=this.config?.image;return Array.isArray(e)?e.length:0},effectiveMax(){const e=O-this.referenceImageCount;return Math.max(1,Math.min(O,e))},value:{get(){const e=this.config?.sequential_image_generation_options?.max_images;return typeof e=="number"&&e>=1?e:se},set(e){const t={...this.config||{}},d=Math.max(1,Math.min(this.effectiveMax,Math.floor(e||1)));d>1?(t.sequential_image_generation="auto",t.sequential_image_generation_options={...t.sequential_image_generation_options||{},max_images:d}):(t.sequential_image_generation="disabled",t.sequential_image_generation_options&&delete t.sequential_image_generation_options),this.$store.commit("seedream/setConfig",t)}}},watch:{supported:{immediate:!0,handler(e){if(e)return;const t={...this.config||{}};let d=!1;t.sequential_image_generation&&(delete t.sequential_image_generation,d=!0),t.sequential_image_generation_options&&(delete t.sequential_image_generation_options,d=!0),d&&this.$store.commit("seedream/setConfig",t)}},effectiveMax(e){this.value>e&&(this.value=e)}}}),rt={key:0,class:"field"},lt={class:"label"},it={class:"box"},ct={class:"title font-bold"},mt={class:"value"};function dt(e,t,d,c,h,p){const f=n("info-icon"),_=n("el-input-number");return e.supported?(a(),i("div",rt,[l("div",lt,[l("div",it,[l("h2",ct,o(e.$t("seedream.name.maxImages")),1),s(f,{content:e.$t("seedream.description.maxImages"),class:"info"},null,8,["content"])])]),l("div",mt,[s(_,{modelValue:e.value,"onUpdate:modelValue":t[0]||(t[0]=r=>e.value=r),min:1,max:e.effectiveMax,step:1,size:"default","controls-position":"right",class:"counter"},null,8,["modelValue","max"])])])):$("",!0)}const ut=k(nt,[["render",dt],["__scopeId","data-v-17ef8d1a"]]),pt=E({name:"SeedreamConfigPanel",components:{ElButton:D,FontAwesomeIcon:C,PromptInput:qe,Consumption:de,ImageInput:xe,ModelSelector:Qe,SizeSelector:at,MaxImagesSelector:ut},emits:["generate"],computed:{config(){return this.$store.state.seedream?.config},consumption(){const e={...this.config||{}},t=Array.isArray(e?.image)&&e.image.length>0,d=e?.sequential_image_generation==="auto"?Math.max(1,Math.floor(e?.sequential_image_generation_options?.max_images||1)):1;return ue({...e,action:t?"edit":"generate",model:F(e?.model),count:d},this.service?.cost)},service(){return this.$store.state.seedream?.service}},methods:{onGenerate(){this.$emit("generate")}}}),ft={class:"flex flex-col h-full"},_t={class:"flex-1 overflow-y-auto p-5"},gt={class:"flex flex-col items-center justify-center px-5 pb-5"};function ht(e,t,d,c,h,p){const f=n("model-selector"),_=n("size-selector"),r=n("max-images-selector"),m=n("prompt-input"),b=n("image-input"),v=n("consumption"),S=n("font-awesome-icon"),R=n("el-button");return a(),i("div",ft,[l("div",_t,[s(f,{class:"mb-4"}),s(_,{class:"mb-4"}),s(r,{class:"mb-4"}),s(m,{class:"mb-4"}),s(b,{class:"mb-4"})]),l("div",gt,[s(v,{value:e.consumption,service:e.service},null,8,["value","service"]),s(R,{type:"primary",class:"btn w-full",round:"",onClick:e.onGenerate},{default:g(()=>[s(S,{icon:"fa-solid fa-magic",class:"mr-2"}),u(" "+o(e.$t("seedream.button.generate")),1)]),_:1},8,["onClick"])])])}const $t=k(pt,[["render",ht]]),vt=E({name:"SeedreamTaskPreview",components:{ElImage:be,CopyToClipboard:ge,FontAwesomeIcon:C,ElAlert:ve,ImageWrapper:he,ElButton:D,ElTooltip:$e,ImagePreview:B},props:{modelValue:{type:Object,required:!0}},computed:{isEdit(){return Array.isArray(this.modelValue?.request?.image)&&(this.modelValue?.request?.image?.length||0)>0},images(){const e=[];return Array.isArray(this.modelValue?.response?.data)&&this.modelValue?.response?.data?.forEach(t=>{e.push(t)}),e}},methods:{shortModel(e){return F(e)||e},onEdit(e){if(!e)return;console.debug("Edit image:",e);const t={...this.$store.state.seedream?.config||{}};t.image=[e],this.$store.commit("seedream/setConfig",t)}}}),bt={class:"preview"},Et={class:"left"},kt={class:"main"},yt={class:"bot"},wt={class:"datetime"},St={class:"info"},It={key:0,class:"flex justify-start items-center gap-2 mt-2 w-full overflow-x-auto"},Vt={key:1,class:"prompt mt-2"},Mt={key:0},At={key:0,class:A({content:!0})},Lt={class:"text-[var(--el-text-color-regular)] text-xs mb-0"},Rt={key:1,class:A({content:!0,failed:!0})},Tt={class:"flex justify-start items-center gap-4 w-full overflow-x-auto"},Ct={class:A({operations:!0,"mt-2":!0,"mb-2":!0})},Dt={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},qt={key:1,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Ut={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},zt={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Gt={key:2,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Pt={key:3,class:"text-[var(--el-text-color-regular)] text-xs mb-0"},Ot={key:2,class:A({content:!0})},jt={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Ft={key:1,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Bt={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},xt={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Nt={key:2,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Wt={key:3,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Kt={key:4,class:"text-[var(--el-text-color-regular)] text-xs mb-0"},Zt={key:3,class:A({content:!0})},Ht={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Jt={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-0"};function Qt(e,t,d,c,h,p){const f=n("el-image"),_=n("image-preview"),r=n("font-awesome-icon"),m=n("copy-to-clipboard"),b=n("el-alert"),v=n("image-wrapper"),S=n("el-button"),R=n("el-tooltip");return a(),i("div",bt,[l("div",Et,[s(f,{src:"https://cdn.acedata.cloud/9egrbn.png",class:"avatar"})]),l("div",kt,[l("div",yt,[u(o(e.$t("seedream.name.seedreamBot"))+" ",1),l("span",wt,o(e.$dayjs.format(""+new Date(parseFloat((e.modelValue?.created_at||"").toString())*1e3))),1)]),l("div",St,[Array.isArray(e.modelValue?.request?.image)&&e.modelValue?.request?.image.length>0?(a(),i("div",It,[(a(!0),i(y,null,V(e.modelValue?.request?.image,(M,T)=>(a(),w(_,{key:T,url:M,name:`image-${T+1}`,closable:!1},null,8,["url","name"]))),128))])):$("",!0),e.modelValue?.request?.prompt?(a(),i("p",Vt,[u(o(e.modelValue?.request?.prompt)+" ",1),e.modelValue?.response?$("",!0):(a(),i("span",Mt," - ("+o(e.$t("seedream.status.pending"))+") ",1))])):$("",!0)]),e.modelValue?.response?e.modelValue?.response?.success===!0?(a(),i("div",Rt,[l("div",Tt,[(a(!0),i(y,null,V(e.images,(M,T)=>(a(),w(v,{key:T,src:M?.image_url,"raw-src":M?.image_url},null,8,["src","raw-src"]))),128))]),l("div",Ct,[s(R,{class:"box-item",effect:"dark",content:e.$t("common.button.edit"),placement:"top-start"},{default:g(()=>[s(S,{type:"info",size:"small",class:"btn-action",onClick:t[0]||(t[0]=K(M=>e.onEdit(e.images?.[0]?.image_url),["stop"]))},{default:g(()=>[u(o(e.$t("common.button.edit")),1)]),_:1})]),_:1},8,["content"])]),s(b,{closable:!1,class:"mt-2 success"},{default:g(()=>[e.modelValue?.request?.model?(a(),i("p",Dt,[s(r,{icon:"fa-solid fa-cube",class:"mr-1"}),u(" "+o(e.$t("seedream.name.model"))+": "+o(e.shortModel(e.modelValue?.request?.model)),1)])):$("",!0),e.modelValue?.request?.size?(a(),i("p",qt,[s(r,{icon:"fa-solid fa-image",class:"mr-1"}),u(" "+o(e.$t("seedream.name.size"))+": "+o(e.modelValue?.request?.size),1)])):$("",!0),l("p",Ut,[s(r,{icon:"fa-solid fa-bolt",class:"mr-1"}),u(" "+o(e.$t("seedream.name.task"))+": "+o(e.isEdit?e.$t("seedream.name.edits"):e.$t("seedream.name.generate")),1)]),l("p",zt,[s(r,{icon:"fa-solid fa-magic",class:"mr-1"}),u(" "+o(e.$t("seedream.name.taskId"))+": "+o(e.modelValue?.id)+" ",1),s(m,{content:e.modelValue?.id,class:"btn-copy inline-block"},null,8,["content"])]),e.modelValue?.elapsed?(a(),i("p",Gt,[s(r,{icon:"fa-solid fa-clock",class:"mr-1"}),u(" "+o(e.$t("seedream.name.elapsed"))+": "+o(e.modelValue?.elapsed?.toFixed(2))+"s ",1)])):$("",!0),e.modelValue?.response?.trace_id?(a(),i("p",Pt,[s(r,{icon:"fa-solid fa-hashtag",class:"mr-1"}),u(" "+o(e.$t("seedream.name.traceId"))+": "+o(e.modelValue?.response?.trace_id)+" ",1),s(m,{content:e.modelValue?.response?.trace_id,class:"btn-copy inline-block"},null,8,["content"])])):$("",!0)]),_:1})])):e.modelValue?.response?.success===!1?(a(),i("div",Ot,[s(b,{closable:!1,class:"failure"},{template:g(()=>[s(r,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),u(" "+o(e.$t("seedream.name.failure")),1)]),default:g(()=>[e.modelValue?.request?.model?(a(),i("p",jt,[s(r,{icon:"fa-solid fa-cube",class:"mr-1"}),u(" "+o(e.$t("seedream.name.model"))+": "+o(e.shortModel(e.modelValue?.request?.model)),1)])):$("",!0),e.modelValue?.request?.size?(a(),i("p",Ft,[s(r,{icon:"fa-solid fa-image",class:"mr-1"}),u(" "+o(e.$t("seedream.name.size"))+": "+o(e.modelValue?.request?.size),1)])):$("",!0),l("p",Bt,[s(r,{icon:"fa-solid fa-bolt",class:"mr-1"}),u(" "+o(e.$t("seedream.name.task"))+": "+o(e.isEdit?e.$t("seedream.name.edits"):e.$t("seedream.name.generate")),1)]),l("p",xt,[s(r,{icon:"fa-solid fa-magic",class:"mr-1"}),u(" "+o(e.$t("seedream.name.taskId"))+": "+o(e.modelValue?.id)+" ",1),s(m,{content:e.modelValue?.id,class:"btn-copy"},null,8,["content"])]),e.modelValue?.response?.error?.message?(a(),i("p",Nt,[s(r,{icon:"fa-solid fa-circle-info",class:"mr-1"}),u(" "+o(e.$t("seedream.name.failureReason"))+": "+o(e.modelValue?.response?.error?.message)+" ",1),s(m,{content:e.modelValue?.response?.error?.message,class:"btn-copy"},null,8,["content"])])):$("",!0),e.modelValue?.elapsed?(a(),i("p",Wt,[s(r,{icon:"fa-solid fa-clock",class:"mr-1"}),u(" "+o(e.$t("seedream.name.elapsed"))+": "+o(e.modelValue?.elapsed?.toFixed(2))+"s ",1)])):$("",!0),e.modelValue?.response?.trace_id?(a(),i("p",Kt,[s(r,{icon:"fa-solid fa-hashtag",class:"mr-1"}),u(" "+o(e.$t("seedream.name.traceId"))+": "+o(e.modelValue?.response?.trace_id)+" ",1),s(m,{content:e.modelValue?.response?.trace_id,class:"btn-copy"},null,8,["content"])])):$("",!0)]),_:1})])):(a(),i("div",Zt,[s(b,{closable:!1,class:"info"},{template:g(()=>[s(r,{icon:"fa-solid fa-circle-info",class:"mr-1"}),u(" "+o(e.$t("seedream.name.status")),1)]),default:g(()=>[l("p",Ht,[s(r,{icon:"fa-solid fa-magic",class:"mr-1"}),u(" "+o(e.$t("seedream.name.taskId"))+": "+o(e.modelValue?.id)+" ",1),s(m,{content:e.modelValue?.id,class:"btn-copy"},null,8,["content"])]),e.modelValue?.response?.trace_id?(a(),i("p",Jt,[s(r,{icon:"fa-solid fa-hashtag",class:"mr-1"}),u(" "+o(e.$t("seedream.name.traceId"))+": "+o(e.modelValue?.response?.trace_id)+" ",1),s(m,{content:e.modelValue?.response?.trace_id,class:"btn-copy"},null,8,["content"])])):$("",!0)]),_:1})])):(a(),i("div",At,[s(b,{closable:!1,class:"info"},{template:g(()=>[s(r,{icon:"fa-regular fa-clock",class:"mr-1"}),u(" "+o(e.$t("seedream.status.pending")),1)]),default:g(()=>[l("p",Lt,[s(r,{icon:"fa-solid fa-magic",class:"mr-1"}),u(" "+o(e.$t("seedream.name.taskId"))+": "+o(e.modelValue?.id)+" ",1),s(m,{content:e.modelValue?.id,class:"btn-copy inline-block"},null,8,["content"])])]),_:1})]))])])}const Xt=k(vt,[["render",Qt],["__scopeId","data-v-0dfc6a09"]]),Yt=E({name:"SeedreamRecentPanel",components:{TaskPreview:Xt,BotPlaceholder:Ee,NoTasks:ke,ScrollList:re},props:{loading:{type:Boolean,default:!1}},emits:["reach-top"],computed:{tasks(){return{...this.$store.state.seedream?.tasks,items:this.$store.state.seedream?.tasks?.items?.slice()}}},methods:{getScrollElement(){return this.$refs.scrollList?.getScrollElement?.()}}}),es={key:0},ts={key:2,class:"w-full h-full flex items-center justify-center"};function ss(e,t,d,c,h,p){const f=n("bot-placeholder"),_=n("task-preview"),r=n("scroll-list"),m=n("no-tasks");return a(),i(y,null,[e.tasks?.items===void 0?(a(),i("div",es,[s(f)])):e.tasks?.items?.length&&e.tasks?.items?.length>0?(a(),w(r,{key:1,ref:"scrollList",class:"tasks h-full w-full overflow-y-auto",loading:e.loading,onReachTop:t[0]||(t[0]=b=>e.$emit("reach-top"))},{default:g(()=>[(a(!0),i(y,null,V(e.tasks?.items,b=>(a(),w(_,{key:b.id,"model-value":b},null,8,["model-value"]))),128))]),_:1},8,["loading"])):$("",!0),e.tasks?.items?.length===0?(a(),i("div",ts,[s(m)])):$("",!0)],64)}const os=k(Yt,[["render",ss]]),as=ne("seedream"),ns=E({name:"SeedreamIndex",components:{ConfigPanel:$t,Layout:Me,RecentPanel:os},inject:["initialized"],data(){return{task:void 0,job:0,loading:!1}},computed:{applicationsLoading(){return this.$store.state.seedream?.status?.getApplications===j.Request},tasksLoading(){return this.$store.state.seedream?.status?.getTasks===j.Request},credential(){return this.$store.state.seedream?.credential},config(){return this.$store.state.seedream?.config},application(){return this.$store.state.seedream?.application},tasks(){return this.$store.state.seedream?.tasks}},watch:{tasks:{handler(e,t){e?.items?.length>t?.items?.length&&console.debug("new tasks detected")},deep:!0},initialized:{async handler(e){e&&(console.debug("layout initialized"),await this.onGetTasks(),await this.onScrollDown(),this.job=window.setInterval(()=>{this.onGetTasks()},5e3))},immediate:!0}},async mounted(){await this.onGetService()},async unmounted(){window.clearInterval(this.job)},methods:{async onReachTop(){await le({tasks:this.tasks,getTasks:()=>this.tasks,loading:this.loading,setLoading:e=>this.loading=e,isBlocked:()=>this.tasksLoading,fetch:e=>this.onGetTasks({createdAtMax:e}),getScrollElement:()=>this.getTasksScrollElement()})},async onGetService(){console.debug("start onGetService"),await this.$store.dispatch("seedream/getService"),console.debug("end onGetService")},async onGetApplication(){console.debug("start onGetApplication"),await this.$store.dispatch("seedream/getApplications"),console.debug("end onGetApplication"),await this.onGetTasks()},async onScrollDown(){await this.$nextTick();const e=this.getTasksScrollElement();e&&(e.scrollTop=e.scrollHeight)},async onGetTasks(e){if(this.applicationsLoading||this.tasksLoading){console.debug("loading");return}console.debug("start onGetTasks",e);const{limit:t=20,createdAtMin:d,createdAtMax:c}=e||{};console.debug("limit",t,"createdAtMin",d,"createdAtMax",c),await this.$store.dispatch("seedream/getTasks",{limit:t,createdAtMin:d,createdAtMax:c})},async onGenerate(){const e={...this.config||{}};!(Array.isArray(e?.image)&&e.image.length>0)&&"image"in e&&delete e.image,e?.size||delete e.size;const d={...e,callback_url:as},c=this.credential?.token;if(!c){console.error("no token specified");return}I.info(this.$t("seedream.message.startingTask")),ae("seedream",_e.generate(d,{token:c})).then(()=>{I.success(this.$t("seedream.message.startTaskSuccess"))}).catch(h=>{const p=h?.response?.data;p?.error?.code===fe?I.error(this.$t("seedream.message.usedUp")):I.error(this.$t("seedream.message.startTaskFailed")+(p?.error?.message||""))}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})},getTasksScrollElement(){return this.$refs.recentPanel?.getScrollElement?.()}}});function rs(e,t,d,c,h,p){const f=n("config-panel"),_=n("recent-panel"),r=n("layout");return a(),w(r,null,{config:g(()=>[s(f,{onGenerate:e.onGenerate},null,8,["onGenerate"])]),result:g(()=>[s(_,{ref:"recentPanel",loading:e.loading,onReachTop:e.onReachTop},null,8,["loading","onReachTop"])]),_:1})}const Xs=k(ns,[["render",rs]]);export{Xs as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{F as C}from"./index.es-C1Vw5-pU.js";import{E as P}from"./index-BX4hurF9.js";import{E as L}from"./index-CtCHxxgE.js";import{d as v,H as l,E as r,z as A,C as s,y as d,D as n,q as o,F as a,I as g,O as I,N as T,x as E,Q as S,c as U,J as $}from"./vendor-vue-NSDaktjZ.js";import{E as b,b7 as D,cd as z,a7 as M,aw as V,ce as O}from"./index-B26B3NRe.js";import{p as j}from"./pasteUploadMixin-BurWbGNQ.js";import{I as B,S as q,l as F}from"./pagination-DcHHH5aU.js";import{I as N}from"./ImagePreview-Bg_4MANc.js";import{E as H}from"./index-DHVwu-o_.js";import{E as w}from"./index-kxM-uBwN.js";import{a as J,E as Q}from"./index-2l2HfBAG.js";import{E as G}from"./index-MLK9z2al.js";import{E as W,a as K}from"./index-qKL3nmNJ.js";import{b as X,a as Y}from"./errorCode-Cqj9Td_Z.js";import{h as Z}from"./headshots-ikuv5nSy.js";import{A as x}from"./Status-B_AYkhMM.js";import{C as ee}from"./CopyToClipboard-DpLBFIyy.js";import{E as se}from"./index-B0A9C_-T.js";import{E as te,a as oe}from"./index-f3A5WlbC.js";import"./use-form-item-efgym_Md.js";import"./index-BuyEbX8F.js";import"./vendor-axios-B8_nURbH.js";import"./vendor-dayjs-v0j1UNZp.js";import"./vendor-vue-router-Kg6s1a65.js";import"./index-Y6ecN3tB.js";import"./index-Y6InDSnm.js";import"./typescript-DilvQCGQ.js";import"./index-CP58CVoz.js";import"./_baseClone-DsJpkaTJ.js";import"./_Uint8Array-CIOAkFC8.js";import"./_initCloneObject--BkHfMCz.js";import"./isEqual-7sLqoZ1L.js";import"./debounce-CJZlaJSw.js";import"./index-BCChxDUd.js";import"./strings-beZM2Y-f.js";import"./isPlainObject-Ct-jhvvz.js";const ae=v({name:"LayoutHeadshots",components:{ElDrawer:L,ElButton:P,FontAwesomeIcon:C},data(){return{drawer:!1}}}),ne={class:"main flex flex-row flex-1"},ie={class:"config w-[320px] flex-none h-full overflow-y-auto bg-[var(--app-sidebar-bg)] border-r border-[var(--app-border-subtle)]"},le={class:"result h-full p-6 flex-1 flex flex-col min-w-0 overflow-x-hidden bg-[var(--app-content-bg)]"};function re(e,t,m,h,k,y){const p=n("font-awesome-icon"),u=n("el-button"),i=n("el-drawer");return o(),l("div",ne,[r("div",ie,[A(e.$slots,"config",{},void 0,!0)]),r("div",le,[A(e.$slots,"result",{},void 0,!0)]),s(u,{circle:"",class:"menu",onClick:t[0]||(t[0]=c=>e.drawer=!0)},{default:d(()=>[s(p,{icon:"fa-solid fa-gear"})]),_:1}),s(i,{modelValue:e.drawer,"onUpdate:modelValue":t[1]||(t[1]=c=>e.drawer=c),"with-header":!1,size:"340px",class:"drawer"},{default:d(()=>[A(e.$slots,"config",{},void 0,!0)]),_:3},8,["modelValue"])])}const ce=b(ae,[["render",re],["__scopeId","data-v-202b355b"]]),de=v({name:"ImageUrlsInput",components:{ElUpload:H,ElButton:P,InfoIcon:B,ImagePreview:N,FontAwesomeIcon:C},mixins:[j],data(){return{fileList:[],uploadUrl:D()+"/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.headshots?.config?.image_urls},set(){const e=this.urls;this.$store.commit("headshots/setConfig",{...this.$store.state.headshots?.config,image_urls:e})}}},mounted(){this.value||(this.value=void 0),this.onSetImageUrls()},methods:{onExceed(){w.warning(this.$t("headshots.message.uploadImageExceed"))},onError(){w.error(this.$t("headshots.message.uploadImageError"))},onSetImageUrls(){const e=this.urls;this.$store.commit("headshots/setConfig",{...this.$store.state.headshots?.config,image_urls:e})},async onSuccess(){this.onSetImageUrls()}}}),pe={class:"field"},me={class:"title font-bold"},he={class:"upload-wrapper"};function ue(e,t,m,h,k,y){const p=n("image-preview"),u=n("font-awesome-icon"),i=n("el-button"),c=n("el-upload"),f=n("info-icon");return o(),l("div",pe,[r("h2",me,a(e.$t("headshots.name.endImageUrls")),1),r("div",he,[s(c,{ref:"uploader","file-list":e.fileList,"onUpdate:fileList":t[0]||(t[0]=_=>e.fileList=_),accept:".png,.jpg,.jpeg,.gif,.bmp,.webp",name:"file",class:"value upload-wrapper",limit:2,multiple:!0,"list-type":"picture",action:e.uploadUrl,"on-exceed":e.onExceed,"on-error":e.onError,"on-success":e.onSuccess,headers:e.headers},{file:d(({file:_})=>[s(p,{url:_.url||_.response?.file_url,name:_.name,percentage:_.percentage,onRemove:R=>e.fileList.splice(e.fileList.indexOf(_),1)},null,8,["url","name","percentage","onRemove"])]),default:d(()=>[s(i,{size:"small",type:"primary",round:""},{default:d(()=>[s(u,{icon:"fa-solid fa-upload",class:"mr-1"}),g(" "+a(e.$t("headshots.button.uploadImageUrls")),1)]),_:1})]),_:1},8,["file-list","action","on-exceed","on-error","on-success","headers"])]),s(f,{content:e.$t("headshots.description.endImageUrls"),class:"info"},null,8,["content"])])}const fe=b(de,[["render",ue],["__scopeId","data-v-ca56051e"]]),ge="fast",_e=v({name:"ModeSelector",components:{ElRadioButton:Q,ElRadioGroup:J},data(){return{options:[{label:this.$t("headshots.button.fast"),value:"fast"},{label:this.$t("headshots.button.relax"),value:"relax"}]}},computed:{value:{get(){return this.$store.state.headshots.config?.mode},set(e){console.debug("set mode",e),this.$store.commit("headshots/setConfig",{...this.$store.state.headshots.config,mode:e})}}},mounted(){this.value||(this.value=ge)}}),$e={class:"field"},ve={class:"title font-bold"};function be(e,t,m,h,k,y){const p=n("el-radio-button"),u=n("el-radio-group");return o(),l("div",$e,[r("h2",ve,a(e.$t("headshots.name.mode")),1),s(u,{modelValue:e.value,"onUpdate:modelValue":t[0]||(t[0]=i=>e.value=i),class:"mode"},{default:d(()=>[(o(!0),l(I,null,T(e.options,i=>(o(),E(p,{key:i.value,label:i.value},{default:d(()=>[g(a(i.label),1)]),_:2},1032,["label"]))),128))]),_:1},8,["modelValue"])])}const ke=b(_e,[["render",be],["__scopeId","data-v-e7702494"]]),ye=v({name:"StylizeSelector",components:{ElTabs:K,ElTabPane:W,ElImage:G},data(){return{tab:"styles",value:"",elements:{styles:{displayName:this.$t("headshots.styleCategory.styles"),items:[{image:"https://static.aipedias.com/aicamera/common/20241008/20241008202314260779439.png",label:this.$t("headshots.styleTag.malePportrait"),value:"male_portrait"},{image:"https://static.aipedias.com/aicamera/common/20241008/202410082022241e9755548.png",label:this.$t("headshots.styleTag.malePportrait2"),value:"male_portrait2"},{image:"https://static.aipedias.com/aicamera/common/20241101/20241101170130d78f66521.png",label:this.$t("headshots.styleTag.kindergarten"),value:"kindergarten"},{image:"https://static.aipedias.com/aicamera/common/20240923/20240923123233accf60398.webp",label:this.$t("headshots.styleTag.logoTshirt"),value:"logo_tshirt"},{image:"https://static.aipedias.com/aicamera/common/20241025/202410252012329472d0656.jpg",label:this.$t("headshots.styleTag.wedding"),value:"wedding"},{image:"https://static.aipedias.com/aicamera/common/20240915/20240915145045254931400.webp",label:this.$t("headshots.styleTag.businessPphoto"),value:"business_photo"},{image:"https://static.aipedias.com/aicamera/common/20240810/20240810194526040341795.jpg",label:this.$t("headshots.styleTag.bobSuit"),value:"bob_suit"},{image:"https://static.aipedias.com/aicamera/common/20240717/20240717152654e0b348173.webp",label:this.$t("headshots.styleTag.femalePortrait"),value:"female_portrait"}]}}}},watch:{value(e){console.debug("set template",e),this.$store.commit("headshots/setConfig",{...this.$store.state.headshots?.config,template:e})}},mounted(){this.value||(this.value=""),console.debug("set template",this.value),this.$store.commit("headshots/setConfig",{...this.$store.state.headshots?.config,template:this.value})},methods:{onToggle(e){this.value===e?this.value="":this.value=e,console.debug("set template",this.value),this.$store.commit("headshots/setConfig",{...this.$store.state.headshots?.config,template:this.value})}}}),we={class:"field"},Ie=["onClick"],Te={class:"name"};function Ee(e,t,m,h,k,y){const p=n("el-image"),u=n("el-tab-pane"),i=n("el-tabs");return o(),l("div",we,[s(i,{modelValue:e.tab,"onUpdate:modelValue":t[0]||(t[0]=c=>e.tab=c)},{default:d(()=>[(o(!0),l(I,null,T(e.elements,(c,f)=>(o(),E(u,{key:f,label:c.displayName,name:f,class:"pane"},{default:d(()=>[(o(!0),l(I,null,T(c.items,(_,R)=>(o(),l("div",{key:R,class:S({item:!0,active:e.value===_.value}),onClick:ys=>e.onToggle(_.value)},[s(p,{src:_.image,fit:"fill",class:"preview"},null,8,["src"]),r("span",Te,a(_.label),1)],10,Ie))),128))]),_:2},1032,["label","name"]))),128))]),_:1},8,["modelValue"])])}const Se=b(ye,[["render",Ee],["__scopeId","data-v-be4bd25d"]]),Ve=v({name:"PresetPanel",components:{ModeSelector:ke,ImageUrlsInput:fe,ElButton:P,FontAwesomeIcon:C,ElementsSelector:Se},emits:["generate"],computed:{config(){return this.$store.state.headshots?.config}},methods:{onGenerate(){this.$emit("generate")}}}),Ce={class:"panel"},Ae={class:"config"},Pe={class:"actions"};function Re(e,t,m,h,k,y){const p=n("elements-selector"),u=n("mode-selector"),i=n("image-urls-input"),c=n("font-awesome-icon"),f=n("el-button");return o(),l("div",Ce,[r("div",Ae,[s(p,{class:"mb-4"}),s(u,{class:"mb-4"}),s(i,{class:"mb-4"}),r("div",Pe,[s(f,{type:"primary",class:"btn w-full",round:"",onClick:e.onGenerate},{default:d(()=>[s(c,{icon:"fa-solid fa-magic",class:"mr-2"}),g(" "+a(e.$t("headshots.button.generate")),1)]),_:1},8,["onClick"])])])])}const Ge=b(Ve,[["render",Re],["__scopeId","data-v-848739f6"]]),Le=v({name:"ImageGallery",props:{modelValue:{type:Object,required:!0}},setup(e){return{images:U(()=>e.modelValue?.response?.data?.slice(0,2)||[]),viewImage:h=>{window.open(h,"_blank")}}}}),Ue={class:"image-gallery"},De=["src"],ze=["onClick"];function Me(e,t,m,h,k,y){return o(),l("div",Ue,[(o(!0),l(I,null,T(e.images,(p,u)=>(o(),l("div",{key:u,class:"image-container"},[r("img",{src:p.image_url,alt:"Image"},null,8,De),p.image_url?(o(),l("button",{key:0,class:"view-button",onClick:i=>e.viewImage(p.image_url)},a(e.$t("headshots.button.viewImage")),9,ze)):$("",!0)]))),128))])}const Oe=b(Le,[["render",Me],["__scopeId","data-v-42f0a7be"]]),je=v({name:"TaskPreview",components:{ElImage:G,CopyToClipboard:ee,FontAwesomeIcon:C,ElAlert:se,ImageGallery:Oe},props:{modelValue:{type:Object,required:!0}},data(){return{}},computed:{application(){return this.$store.state.headshots?.application},config(){return this.$store.state.headshots?.config}},methods:{onDownload(e,t){e.stopPropagation(),console.log("on download"),window.open(t,"_blank")},onReload(e){const t=e.target,m=new URL(t.src),h=m.searchParams.get("retry");if(!h)m.searchParams.set("retry","1");else if(parseInt(h)<2)m.searchParams.set("retry",(parseInt(h)+1).toString());else return;t.src=m.toString()},onOpenVideo(e){window.open(e,"_blank")}}}),Be={class:"preview"},qe={class:"left"},Fe={class:"main"},Ne={class:"bot"},He={class:"datetime"},Je={class:"info"},Qe={key:0,class:"prompt mt-2"},We={key:0},Ke={key:1},Xe={key:0,class:S({content:!0,failed:!0})},Ye={class:"image-wrapper"},Ze={class:"description"},xe={key:0,class:"description"},es={key:1,class:S({content:!0})},ss={class:"description"},ts={class:"description"},os={key:0,class:"description"},as={class:"description"},ns={key:2,class:S({content:!0})},is={class:"description"},ls={key:3,class:S({content:!0})},rs={class:"description"};function cs(e,t,m,h,k,y){const p=n("el-image"),u=n("image-gallery"),i=n("font-awesome-icon"),c=n("copy-to-clipboard"),f=n("el-alert");return o(),l("div",Be,[r("div",qe,[s(p,{src:"https://cdn.acedata.cloud/isxyfw.png",class:"avatar"})]),r("div",Fe,[r("div",Ne,[g(a(e.$t("headshots.name.headshotsBot"))+" ",1),r("span",He,a(e.$dayjs.format(""+new Date(parseFloat((e.modelValue?.created_at||"").toString())*1e3))),1)]),r("div",Je,[e.modelValue?.request?.template?(o(),l("p",Qe,[g(a(e.modelValue?.request?.template)+" ",1),e.modelValue?.response?$("",!0):(o(),l("span",We," - ("+a(e.$t("headshots.status.pending"))+") ",1)),e.modelValue?.response?.status==="unknown"?(o(),l("span",Ke," - ("+a(e.$t("headshots.status.processing"))+") ",1)):$("",!0)])):$("",!0)]),e.modelValue?.response?.success===!0?(o(),l("div",Xe,[r("div",Ye,[s(u,{"model-value":e.modelValue},null,8,["model-value"])]),s(f,{closable:!1,class:"mt-2 success"},{default:d(()=>[r("p",Ze,[s(i,{icon:"fa-solid fa-magic",class:"mr-1"}),g(" "+a(e.$t("headshots.name.taskId"))+": "+a(e.modelValue?.id)+" ",1),s(c,{content:e.modelValue?.id,class:"btn-copy"},null,8,["content"])]),e.modelValue?.elapsed?(o(),l("p",xe,[s(i,{icon:"fa-solid fa-clock",class:"mr-1"}),g(" "+a(e.$t("headshots.name.elapsed"))+": "+a(e.modelValue?.elapsed?.toFixed(2))+"s ",1)])):$("",!0)]),_:1})])):$("",!0),e.modelValue?.response?.success===!1?(o(),l("div",es,[s(f,{closable:!1,class:"failure"},{template:d(()=>[s(i,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),g(" "+a(e.$t("headshots.name.failure")),1)]),default:d(()=>[r("p",ss,[s(i,{icon:"fa-solid fa-magic",class:"mr-1"}),g(" "+a(e.$t("headshots.name.taskId"))+": "+a(e.modelValue?.id)+" ",1),s(c,{content:e.modelValue?.id,class:"btn-copy"},null,8,["content"])]),r("p",ts,[s(i,{icon:"fa-solid fa-circle-info",class:"mr-1"}),g(" "+a(e.$t("headshots.name.failureReason"))+": "+a(e.modelValue?.response?.error?.message)+" ",1),s(c,{content:e.modelValue?.response?.error?.message,class:"btn-copy"},null,8,["content"])]),e.modelValue?.elapsed?(o(),l("p",os,[s(i,{icon:"fa-solid fa-clock",class:"mr-1"}),g(" "+a(e.$t("headshots.name.elapsed"))+": "+a(e.modelValue?.elapsed?.toFixed(2))+"s ",1)])):$("",!0),r("p",as,[s(i,{icon:"fa-solid fa-hashtag",class:"mr-1"}),g(" "+a(e.$t("headshots.name.traceId"))+": "+a(e.modelValue?.response?.trace_id)+" ",1),s(c,{content:e.modelValue?.response?.trace_id,class:"btn-copy"},null,8,["content"])])]),_:1})])):$("",!0),e.modelValue?.response?$("",!0):(o(),l("div",ns,[s(f,{closable:!1,class:"info"},{template:d(()=>[s(i,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),g(" "+a(e.$t("headshots.name.failure")),1)]),default:d(()=>[r("p",is,[s(i,{icon:"fa-solid fa-magic",class:"mr-1"}),g(" "+a(e.$t("headshots.name.taskId"))+": "+a(e.modelValue?.id)+" ",1),s(c,{content:e.modelValue?.id,class:"btn-copy"},null,8,["content"])])]),_:1})])),e.modelValue?.response?.status==="unknown"?(o(),l("div",ls,[s(f,{closable:!1,class:"info"},{template:d(()=>[s(i,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),g(" "+a(e.$t("headshots.name.failure")),1)]),default:d(()=>[r("p",rs,[s(i,{icon:"fa-solid fa-magic",class:"mr-1"}),g(" "+a(e.$t("headshots.name.taskId"))+": "+a(e.modelValue?.id)+" ",1),s(c,{content:e.modelValue?.id,class:"btn-copy"},null,8,["content"])])]),_:1})])):$("",!0)])])}const ds=b(je,[["render",cs],["__scopeId","data-v-d286678e"]]),ps=v({name:"RecentPanel",components:{TaskPreview:ds,ElSkeleton:oe,ElSkeletonItem:te,ScrollList:q},props:{loading:{type:Boolean,default:!1}},emits:["reach-top"],data(){return{job:0}},computed:{tasks(){return{...this.$store.state.headshots?.tasks,items:this.$store.state.headshots?.tasks?.items?.slice()}}},methods:{getScrollElement(){return this.$refs.scrollList?.getScrollElement?.()}}}),ms={key:0,class:"tasks"},hs={class:"left"},us={class:"main"},fs={key:1,class:"tasks"},gs={key:2,class:"description"};function _s(e,t,m,h,k,y){const p=n("el-skeleton-item"),u=n("el-skeleton"),i=n("task-preview"),c=n("scroll-list");return o(),E(c,{ref:"scrollList",class:"panel recent",loading:e.loading,onReachTop:t[0]||(t[0]=f=>e.$emit("reach-top"))},{default:d(()=>[e.tasks?.items===void 0?(o(),l("div",ms,[(o(),l(I,null,T(3,f=>r("div",{key:f,class:"task placeholder"},[r("div",hs,[s(u,{animated:""},{template:d(()=>[s(p,{variant:"image",class:"avatar"})]),_:1})]),r("div",us,[s(u,{animated:""},{template:d(()=>[s(p,{variant:"p",class:"title"}),s(p,{variant:"image",class:"icon"})]),_:1})])])),64))])):e.tasks?.items?.length&&e.tasks?.items?.length>0?(o(),l("div",fs,[(o(!0),l(I,null,T(e.tasks?.items,(f,_)=>(o(),E(i,{key:_,"model-value":f,class:"preview"},null,8,["model-value"]))),128))])):$("",!0),e.tasks?.items?.length===0?(o(),l("p",gs,a(e.$t("headshots.message.noTasks")),1)):$("",!0)]),_:1},8,["loading"])}const $s=b(ps,[["render",_s],["__scopeId","data-v-ffd55c16"]]),vs=O("headshots"),bs=v({name:"HeadshotsIndex",components:{ConfigPanel:Ge,Layout:ce,ApplicationStatus:x,RecentPanel:$s},inject:["initialized"],data(){return{task:void 0,job:0,loadingMore:!1,fetchingTasks:!1}},computed:{applicationsLoading(){return this.$store.state.headshots?.status?.getApplications===V.Request},tasksLoading(){return this.$store.state.headshots?.status?.getTasks===V.Request||this.fetchingTasks},service(){return this.$store.state.headshots.service},credential(){return this.$store.state.headshots.credential},config(){return this.$store.state.headshots.config},initializing(){return this.$store.state.headshots.status.getApplications===V.Request},needApply(){return this.$store.state.headshots.status.getApplications===V.Success&&!this.application},application(){return this.$store.state.headshots.application},applications(){return this.$store.state.headshots.applications},tasks(){return this.$store.state.headshots.tasks}},watch:{tasks:{handler(e,t){e?.items?.length>t?.items?.length&&console.debug("new tasks detected")},deep:!0},initialized:{async handler(e){e&&(console.debug("layout initialized"),await this.onGetTasks(),await this.onScrollDown(),this.job=window.setInterval(()=>{this.onGetTasks()},5e3))},immediate:!0}},async mounted(){await this.onGetService()},async unmounted(){window.clearInterval(this.job)},methods:{async onReachTop(){await F({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("headshots/getService"),console.debug("end onGetService")},async onGetApplication(){console.debug("start onGetApplication"),await this.$store.dispatch("headshots/getApplications"),console.debug("end onGetApplication"),await this.onGetTasks()},onApply(){M.create({application:this.application}).then(({data:e})=>{this.application=e,w.success(this.$t("application.message.applySuccessfully"))}).catch(e=>{e?.response?.data?.code===Y&&w.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:t=5,createdAtMin:m,createdAtMax:h}=e||{};console.debug("limit",t,"createdAtMin",m,"createdAtMax",h),this.fetchingTasks=!0;try{await this.$store.dispatch("headshots/getTasks",{limit:t,createdAtMin:m,createdAtMax:h})}finally{this.fetchingTasks=!1}},async onGeneratePicture(){const e={...this.config,callback_url:vs},t=this.credential?.token;if(!t){console.error("no token specified");return}w.info(this.$t("headshots.message.startingTask")),z("headshots",Z.generate(e,{token:t})).then(()=>{w.success(this.$t("headshots.message.startTaskSuccess")),this.$store.commit("headshots/setConfig",{config:void 0})}).catch(m=>{m?.response?.data?.error?.code===X?w.error(this.$t("headshots.message.usedUp")):w.error(this.$t("headshots.message.startTaskFailed"))}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})},getTasksScrollElement(){return this.$refs.recentPanel?.getScrollElement?.()}}});function ks(e,t,m,h,k,y){const p=n("config-panel"),u=n("application-status"),i=n("recent-panel"),c=n("layout");return o(),E(c,null,{config:d(()=>[s(p,{onGenerate:e.onGeneratePicture},null,8,["onGenerate"])]),result:d(()=>[s(u,{initializing:e.initializing,application:e.application,applications:e.applications,service:e.service,"need-apply":e.needApply,class:"mb-4",onRefresh:e.onGetApplication,onSelect:t[0]||(t[0]=f=>e.$store.dispatch("headshots/setApplication",f))},null,8,["initializing","application","applications","service","need-apply","onRefresh"]),s(i,{ref:"recentPanel",class:"panel recent",loading:e.loadingMore,onReachTop:e.onReachTop},null,8,["loading","onReachTop"])]),_:1})}const nt=b(bs,[["render",ks],["__scopeId","data-v-0af228d8"]]);export{nt as default};
|
|
1
|
+
import{F as C}from"./index.es-PxkVTVul.js";import{E as P}from"./index-LHAPoElI.js";import{E as L}from"./index-Dffxw0ff.js";import{d as v,H as l,E as r,z as A,C as s,y as d,D as n,q as o,F as a,I as g,O as I,N as T,x as E,Q as S,c as U,J as $}from"./vendor-vue-NSDaktjZ.js";import{E as b,b7 as D,cd as z,a7 as M,aw as V,ce as O}from"./index-CUMrI3uM.js";import{p as j}from"./pasteUploadMixin-BurWbGNQ.js";import{I as B,S as q,l as F}from"./pagination-DnskqQUw.js";import{I as N}from"./ImagePreview-7naWf_Hk.js";import{E as H}from"./index-B0UU8wtf.js";import{E as w}from"./index-D3kwEdCO.js";import{a as J,E as Q}from"./index-BC2_g7Ww.js";import{E as G}from"./index-Iywsl7Po.js";import{E as W,a as K}from"./index-Bk3keCL7.js";import{b as X,a as Y}from"./errorCode-Cqj9Td_Z.js";import{h as Z}from"./headshots-i-IWtbB1.js";import{A as x}from"./Status-BI5eG15k.js";import{C as ee}from"./CopyToClipboard-D0h1kZtr.js";import{E as se}from"./index-CYoskRTt.js";import{E as te,a as oe}from"./index-DWeJByu5.js";import"./use-form-item-BCUliaxT.js";import"./index-BuyEbX8F.js";import"./vendor-axios-B8_nURbH.js";import"./vendor-dayjs-v0j1UNZp.js";import"./vendor-vue-router-Kg6s1a65.js";import"./index-LJD4KxHk.js";import"./index-DceoqtRa.js";import"./typescript-DeTjW0DO.js";import"./index-NhMzhO2I.js";import"./_baseClone-BSjA72P_.js";import"./_Uint8Array-xXOLJRhg.js";import"./_initCloneObject-CI8Xd2KA.js";import"./isEqual-DyhHzzXY.js";import"./debounce-UL-c7F9u.js";import"./index-CqUYE69O.js";import"./strings-beZM2Y-f.js";import"./isPlainObject-CcKl5vVw.js";const ae=v({name:"LayoutHeadshots",components:{ElDrawer:L,ElButton:P,FontAwesomeIcon:C},data(){return{drawer:!1}}}),ne={class:"main flex flex-row flex-1"},ie={class:"config w-[320px] flex-none h-full overflow-y-auto bg-[var(--app-sidebar-bg)] border-r border-[var(--app-border-subtle)]"},le={class:"result h-full p-6 flex-1 flex flex-col min-w-0 overflow-x-hidden bg-[var(--app-content-bg)]"};function re(e,t,m,h,k,y){const p=n("font-awesome-icon"),u=n("el-button"),i=n("el-drawer");return o(),l("div",ne,[r("div",ie,[A(e.$slots,"config",{},void 0,!0)]),r("div",le,[A(e.$slots,"result",{},void 0,!0)]),s(u,{circle:"",class:"menu",onClick:t[0]||(t[0]=c=>e.drawer=!0)},{default:d(()=>[s(p,{icon:"fa-solid fa-gear"})]),_:1}),s(i,{modelValue:e.drawer,"onUpdate:modelValue":t[1]||(t[1]=c=>e.drawer=c),"with-header":!1,size:"340px",class:"drawer"},{default:d(()=>[A(e.$slots,"config",{},void 0,!0)]),_:3},8,["modelValue"])])}const ce=b(ae,[["render",re],["__scopeId","data-v-202b355b"]]),de=v({name:"ImageUrlsInput",components:{ElUpload:H,ElButton:P,InfoIcon:B,ImagePreview:N,FontAwesomeIcon:C},mixins:[j],data(){return{fileList:[],uploadUrl:D()+"/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.headshots?.config?.image_urls},set(){const e=this.urls;this.$store.commit("headshots/setConfig",{...this.$store.state.headshots?.config,image_urls:e})}}},mounted(){this.value||(this.value=void 0),this.onSetImageUrls()},methods:{onExceed(){w.warning(this.$t("headshots.message.uploadImageExceed"))},onError(){w.error(this.$t("headshots.message.uploadImageError"))},onSetImageUrls(){const e=this.urls;this.$store.commit("headshots/setConfig",{...this.$store.state.headshots?.config,image_urls:e})},async onSuccess(){this.onSetImageUrls()}}}),pe={class:"field"},me={class:"title font-bold"},he={class:"upload-wrapper"};function ue(e,t,m,h,k,y){const p=n("image-preview"),u=n("font-awesome-icon"),i=n("el-button"),c=n("el-upload"),f=n("info-icon");return o(),l("div",pe,[r("h2",me,a(e.$t("headshots.name.endImageUrls")),1),r("div",he,[s(c,{ref:"uploader","file-list":e.fileList,"onUpdate:fileList":t[0]||(t[0]=_=>e.fileList=_),accept:".png,.jpg,.jpeg,.gif,.bmp,.webp",name:"file",class:"value upload-wrapper",limit:2,multiple:!0,"list-type":"picture",action:e.uploadUrl,"on-exceed":e.onExceed,"on-error":e.onError,"on-success":e.onSuccess,headers:e.headers},{file:d(({file:_})=>[s(p,{url:_.url||_.response?.file_url,name:_.name,percentage:_.percentage,onRemove:R=>e.fileList.splice(e.fileList.indexOf(_),1)},null,8,["url","name","percentage","onRemove"])]),default:d(()=>[s(i,{size:"small",type:"primary",round:""},{default:d(()=>[s(u,{icon:"fa-solid fa-upload",class:"mr-1"}),g(" "+a(e.$t("headshots.button.uploadImageUrls")),1)]),_:1})]),_:1},8,["file-list","action","on-exceed","on-error","on-success","headers"])]),s(f,{content:e.$t("headshots.description.endImageUrls"),class:"info"},null,8,["content"])])}const fe=b(de,[["render",ue],["__scopeId","data-v-ca56051e"]]),ge="fast",_e=v({name:"ModeSelector",components:{ElRadioButton:Q,ElRadioGroup:J},data(){return{options:[{label:this.$t("headshots.button.fast"),value:"fast"},{label:this.$t("headshots.button.relax"),value:"relax"}]}},computed:{value:{get(){return this.$store.state.headshots.config?.mode},set(e){console.debug("set mode",e),this.$store.commit("headshots/setConfig",{...this.$store.state.headshots.config,mode:e})}}},mounted(){this.value||(this.value=ge)}}),$e={class:"field"},ve={class:"title font-bold"};function be(e,t,m,h,k,y){const p=n("el-radio-button"),u=n("el-radio-group");return o(),l("div",$e,[r("h2",ve,a(e.$t("headshots.name.mode")),1),s(u,{modelValue:e.value,"onUpdate:modelValue":t[0]||(t[0]=i=>e.value=i),class:"mode"},{default:d(()=>[(o(!0),l(I,null,T(e.options,i=>(o(),E(p,{key:i.value,label:i.value},{default:d(()=>[g(a(i.label),1)]),_:2},1032,["label"]))),128))]),_:1},8,["modelValue"])])}const ke=b(_e,[["render",be],["__scopeId","data-v-e7702494"]]),ye=v({name:"StylizeSelector",components:{ElTabs:K,ElTabPane:W,ElImage:G},data(){return{tab:"styles",value:"",elements:{styles:{displayName:this.$t("headshots.styleCategory.styles"),items:[{image:"https://static.aipedias.com/aicamera/common/20241008/20241008202314260779439.png",label:this.$t("headshots.styleTag.malePportrait"),value:"male_portrait"},{image:"https://static.aipedias.com/aicamera/common/20241008/202410082022241e9755548.png",label:this.$t("headshots.styleTag.malePportrait2"),value:"male_portrait2"},{image:"https://static.aipedias.com/aicamera/common/20241101/20241101170130d78f66521.png",label:this.$t("headshots.styleTag.kindergarten"),value:"kindergarten"},{image:"https://static.aipedias.com/aicamera/common/20240923/20240923123233accf60398.webp",label:this.$t("headshots.styleTag.logoTshirt"),value:"logo_tshirt"},{image:"https://static.aipedias.com/aicamera/common/20241025/202410252012329472d0656.jpg",label:this.$t("headshots.styleTag.wedding"),value:"wedding"},{image:"https://static.aipedias.com/aicamera/common/20240915/20240915145045254931400.webp",label:this.$t("headshots.styleTag.businessPphoto"),value:"business_photo"},{image:"https://static.aipedias.com/aicamera/common/20240810/20240810194526040341795.jpg",label:this.$t("headshots.styleTag.bobSuit"),value:"bob_suit"},{image:"https://static.aipedias.com/aicamera/common/20240717/20240717152654e0b348173.webp",label:this.$t("headshots.styleTag.femalePortrait"),value:"female_portrait"}]}}}},watch:{value(e){console.debug("set template",e),this.$store.commit("headshots/setConfig",{...this.$store.state.headshots?.config,template:e})}},mounted(){this.value||(this.value=""),console.debug("set template",this.value),this.$store.commit("headshots/setConfig",{...this.$store.state.headshots?.config,template:this.value})},methods:{onToggle(e){this.value===e?this.value="":this.value=e,console.debug("set template",this.value),this.$store.commit("headshots/setConfig",{...this.$store.state.headshots?.config,template:this.value})}}}),we={class:"field"},Ie=["onClick"],Te={class:"name"};function Ee(e,t,m,h,k,y){const p=n("el-image"),u=n("el-tab-pane"),i=n("el-tabs");return o(),l("div",we,[s(i,{modelValue:e.tab,"onUpdate:modelValue":t[0]||(t[0]=c=>e.tab=c)},{default:d(()=>[(o(!0),l(I,null,T(e.elements,(c,f)=>(o(),E(u,{key:f,label:c.displayName,name:f,class:"pane"},{default:d(()=>[(o(!0),l(I,null,T(c.items,(_,R)=>(o(),l("div",{key:R,class:S({item:!0,active:e.value===_.value}),onClick:ys=>e.onToggle(_.value)},[s(p,{src:_.image,fit:"fill",class:"preview"},null,8,["src"]),r("span",Te,a(_.label),1)],10,Ie))),128))]),_:2},1032,["label","name"]))),128))]),_:1},8,["modelValue"])])}const Se=b(ye,[["render",Ee],["__scopeId","data-v-be4bd25d"]]),Ve=v({name:"PresetPanel",components:{ModeSelector:ke,ImageUrlsInput:fe,ElButton:P,FontAwesomeIcon:C,ElementsSelector:Se},emits:["generate"],computed:{config(){return this.$store.state.headshots?.config}},methods:{onGenerate(){this.$emit("generate")}}}),Ce={class:"panel"},Ae={class:"config"},Pe={class:"actions"};function Re(e,t,m,h,k,y){const p=n("elements-selector"),u=n("mode-selector"),i=n("image-urls-input"),c=n("font-awesome-icon"),f=n("el-button");return o(),l("div",Ce,[r("div",Ae,[s(p,{class:"mb-4"}),s(u,{class:"mb-4"}),s(i,{class:"mb-4"}),r("div",Pe,[s(f,{type:"primary",class:"btn w-full",round:"",onClick:e.onGenerate},{default:d(()=>[s(c,{icon:"fa-solid fa-magic",class:"mr-2"}),g(" "+a(e.$t("headshots.button.generate")),1)]),_:1},8,["onClick"])])])])}const Ge=b(Ve,[["render",Re],["__scopeId","data-v-848739f6"]]),Le=v({name:"ImageGallery",props:{modelValue:{type:Object,required:!0}},setup(e){return{images:U(()=>e.modelValue?.response?.data?.slice(0,2)||[]),viewImage:h=>{window.open(h,"_blank")}}}}),Ue={class:"image-gallery"},De=["src"],ze=["onClick"];function Me(e,t,m,h,k,y){return o(),l("div",Ue,[(o(!0),l(I,null,T(e.images,(p,u)=>(o(),l("div",{key:u,class:"image-container"},[r("img",{src:p.image_url,alt:"Image"},null,8,De),p.image_url?(o(),l("button",{key:0,class:"view-button",onClick:i=>e.viewImage(p.image_url)},a(e.$t("headshots.button.viewImage")),9,ze)):$("",!0)]))),128))])}const Oe=b(Le,[["render",Me],["__scopeId","data-v-42f0a7be"]]),je=v({name:"TaskPreview",components:{ElImage:G,CopyToClipboard:ee,FontAwesomeIcon:C,ElAlert:se,ImageGallery:Oe},props:{modelValue:{type:Object,required:!0}},data(){return{}},computed:{application(){return this.$store.state.headshots?.application},config(){return this.$store.state.headshots?.config}},methods:{onDownload(e,t){e.stopPropagation(),console.log("on download"),window.open(t,"_blank")},onReload(e){const t=e.target,m=new URL(t.src),h=m.searchParams.get("retry");if(!h)m.searchParams.set("retry","1");else if(parseInt(h)<2)m.searchParams.set("retry",(parseInt(h)+1).toString());else return;t.src=m.toString()},onOpenVideo(e){window.open(e,"_blank")}}}),Be={class:"preview"},qe={class:"left"},Fe={class:"main"},Ne={class:"bot"},He={class:"datetime"},Je={class:"info"},Qe={key:0,class:"prompt mt-2"},We={key:0},Ke={key:1},Xe={key:0,class:S({content:!0,failed:!0})},Ye={class:"image-wrapper"},Ze={class:"description"},xe={key:0,class:"description"},es={key:1,class:S({content:!0})},ss={class:"description"},ts={class:"description"},os={key:0,class:"description"},as={class:"description"},ns={key:2,class:S({content:!0})},is={class:"description"},ls={key:3,class:S({content:!0})},rs={class:"description"};function cs(e,t,m,h,k,y){const p=n("el-image"),u=n("image-gallery"),i=n("font-awesome-icon"),c=n("copy-to-clipboard"),f=n("el-alert");return o(),l("div",Be,[r("div",qe,[s(p,{src:"https://cdn.acedata.cloud/isxyfw.png",class:"avatar"})]),r("div",Fe,[r("div",Ne,[g(a(e.$t("headshots.name.headshotsBot"))+" ",1),r("span",He,a(e.$dayjs.format(""+new Date(parseFloat((e.modelValue?.created_at||"").toString())*1e3))),1)]),r("div",Je,[e.modelValue?.request?.template?(o(),l("p",Qe,[g(a(e.modelValue?.request?.template)+" ",1),e.modelValue?.response?$("",!0):(o(),l("span",We," - ("+a(e.$t("headshots.status.pending"))+") ",1)),e.modelValue?.response?.status==="unknown"?(o(),l("span",Ke," - ("+a(e.$t("headshots.status.processing"))+") ",1)):$("",!0)])):$("",!0)]),e.modelValue?.response?.success===!0?(o(),l("div",Xe,[r("div",Ye,[s(u,{"model-value":e.modelValue},null,8,["model-value"])]),s(f,{closable:!1,class:"mt-2 success"},{default:d(()=>[r("p",Ze,[s(i,{icon:"fa-solid fa-magic",class:"mr-1"}),g(" "+a(e.$t("headshots.name.taskId"))+": "+a(e.modelValue?.id)+" ",1),s(c,{content:e.modelValue?.id,class:"btn-copy"},null,8,["content"])]),e.modelValue?.elapsed?(o(),l("p",xe,[s(i,{icon:"fa-solid fa-clock",class:"mr-1"}),g(" "+a(e.$t("headshots.name.elapsed"))+": "+a(e.modelValue?.elapsed?.toFixed(2))+"s ",1)])):$("",!0)]),_:1})])):$("",!0),e.modelValue?.response?.success===!1?(o(),l("div",es,[s(f,{closable:!1,class:"failure"},{template:d(()=>[s(i,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),g(" "+a(e.$t("headshots.name.failure")),1)]),default:d(()=>[r("p",ss,[s(i,{icon:"fa-solid fa-magic",class:"mr-1"}),g(" "+a(e.$t("headshots.name.taskId"))+": "+a(e.modelValue?.id)+" ",1),s(c,{content:e.modelValue?.id,class:"btn-copy"},null,8,["content"])]),r("p",ts,[s(i,{icon:"fa-solid fa-circle-info",class:"mr-1"}),g(" "+a(e.$t("headshots.name.failureReason"))+": "+a(e.modelValue?.response?.error?.message)+" ",1),s(c,{content:e.modelValue?.response?.error?.message,class:"btn-copy"},null,8,["content"])]),e.modelValue?.elapsed?(o(),l("p",os,[s(i,{icon:"fa-solid fa-clock",class:"mr-1"}),g(" "+a(e.$t("headshots.name.elapsed"))+": "+a(e.modelValue?.elapsed?.toFixed(2))+"s ",1)])):$("",!0),r("p",as,[s(i,{icon:"fa-solid fa-hashtag",class:"mr-1"}),g(" "+a(e.$t("headshots.name.traceId"))+": "+a(e.modelValue?.response?.trace_id)+" ",1),s(c,{content:e.modelValue?.response?.trace_id,class:"btn-copy"},null,8,["content"])])]),_:1})])):$("",!0),e.modelValue?.response?$("",!0):(o(),l("div",ns,[s(f,{closable:!1,class:"info"},{template:d(()=>[s(i,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),g(" "+a(e.$t("headshots.name.failure")),1)]),default:d(()=>[r("p",is,[s(i,{icon:"fa-solid fa-magic",class:"mr-1"}),g(" "+a(e.$t("headshots.name.taskId"))+": "+a(e.modelValue?.id)+" ",1),s(c,{content:e.modelValue?.id,class:"btn-copy"},null,8,["content"])])]),_:1})])),e.modelValue?.response?.status==="unknown"?(o(),l("div",ls,[s(f,{closable:!1,class:"info"},{template:d(()=>[s(i,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),g(" "+a(e.$t("headshots.name.failure")),1)]),default:d(()=>[r("p",rs,[s(i,{icon:"fa-solid fa-magic",class:"mr-1"}),g(" "+a(e.$t("headshots.name.taskId"))+": "+a(e.modelValue?.id)+" ",1),s(c,{content:e.modelValue?.id,class:"btn-copy"},null,8,["content"])])]),_:1})])):$("",!0)])])}const ds=b(je,[["render",cs],["__scopeId","data-v-d286678e"]]),ps=v({name:"RecentPanel",components:{TaskPreview:ds,ElSkeleton:oe,ElSkeletonItem:te,ScrollList:q},props:{loading:{type:Boolean,default:!1}},emits:["reach-top"],data(){return{job:0}},computed:{tasks(){return{...this.$store.state.headshots?.tasks,items:this.$store.state.headshots?.tasks?.items?.slice()}}},methods:{getScrollElement(){return this.$refs.scrollList?.getScrollElement?.()}}}),ms={key:0,class:"tasks"},hs={class:"left"},us={class:"main"},fs={key:1,class:"tasks"},gs={key:2,class:"description"};function _s(e,t,m,h,k,y){const p=n("el-skeleton-item"),u=n("el-skeleton"),i=n("task-preview"),c=n("scroll-list");return o(),E(c,{ref:"scrollList",class:"panel recent",loading:e.loading,onReachTop:t[0]||(t[0]=f=>e.$emit("reach-top"))},{default:d(()=>[e.tasks?.items===void 0?(o(),l("div",ms,[(o(),l(I,null,T(3,f=>r("div",{key:f,class:"task placeholder"},[r("div",hs,[s(u,{animated:""},{template:d(()=>[s(p,{variant:"image",class:"avatar"})]),_:1})]),r("div",us,[s(u,{animated:""},{template:d(()=>[s(p,{variant:"p",class:"title"}),s(p,{variant:"image",class:"icon"})]),_:1})])])),64))])):e.tasks?.items?.length&&e.tasks?.items?.length>0?(o(),l("div",fs,[(o(!0),l(I,null,T(e.tasks?.items,(f,_)=>(o(),E(i,{key:_,"model-value":f,class:"preview"},null,8,["model-value"]))),128))])):$("",!0),e.tasks?.items?.length===0?(o(),l("p",gs,a(e.$t("headshots.message.noTasks")),1)):$("",!0)]),_:1},8,["loading"])}const $s=b(ps,[["render",_s],["__scopeId","data-v-ffd55c16"]]),vs=O("headshots"),bs=v({name:"HeadshotsIndex",components:{ConfigPanel:Ge,Layout:ce,ApplicationStatus:x,RecentPanel:$s},inject:["initialized"],data(){return{task:void 0,job:0,loadingMore:!1,fetchingTasks:!1}},computed:{applicationsLoading(){return this.$store.state.headshots?.status?.getApplications===V.Request},tasksLoading(){return this.$store.state.headshots?.status?.getTasks===V.Request||this.fetchingTasks},service(){return this.$store.state.headshots.service},credential(){return this.$store.state.headshots.credential},config(){return this.$store.state.headshots.config},initializing(){return this.$store.state.headshots.status.getApplications===V.Request},needApply(){return this.$store.state.headshots.status.getApplications===V.Success&&!this.application},application(){return this.$store.state.headshots.application},applications(){return this.$store.state.headshots.applications},tasks(){return this.$store.state.headshots.tasks}},watch:{tasks:{handler(e,t){e?.items?.length>t?.items?.length&&console.debug("new tasks detected")},deep:!0},initialized:{async handler(e){e&&(console.debug("layout initialized"),await this.onGetTasks(),await this.onScrollDown(),this.job=window.setInterval(()=>{this.onGetTasks()},5e3))},immediate:!0}},async mounted(){await this.onGetService()},async unmounted(){window.clearInterval(this.job)},methods:{async onReachTop(){await F({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("headshots/getService"),console.debug("end onGetService")},async onGetApplication(){console.debug("start onGetApplication"),await this.$store.dispatch("headshots/getApplications"),console.debug("end onGetApplication"),await this.onGetTasks()},onApply(){M.create({application:this.application}).then(({data:e})=>{this.application=e,w.success(this.$t("application.message.applySuccessfully"))}).catch(e=>{e?.response?.data?.code===Y&&w.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:t=5,createdAtMin:m,createdAtMax:h}=e||{};console.debug("limit",t,"createdAtMin",m,"createdAtMax",h),this.fetchingTasks=!0;try{await this.$store.dispatch("headshots/getTasks",{limit:t,createdAtMin:m,createdAtMax:h})}finally{this.fetchingTasks=!1}},async onGeneratePicture(){const e={...this.config,callback_url:vs},t=this.credential?.token;if(!t){console.error("no token specified");return}w.info(this.$t("headshots.message.startingTask")),z("headshots",Z.generate(e,{token:t})).then(()=>{w.success(this.$t("headshots.message.startTaskSuccess")),this.$store.commit("headshots/setConfig",{config:void 0})}).catch(m=>{m?.response?.data?.error?.code===X?w.error(this.$t("headshots.message.usedUp")):w.error(this.$t("headshots.message.startTaskFailed"))}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})},getTasksScrollElement(){return this.$refs.recentPanel?.getScrollElement?.()}}});function ks(e,t,m,h,k,y){const p=n("config-panel"),u=n("application-status"),i=n("recent-panel"),c=n("layout");return o(),E(c,null,{config:d(()=>[s(p,{onGenerate:e.onGeneratePicture},null,8,["onGenerate"])]),result:d(()=>[s(u,{initializing:e.initializing,application:e.application,applications:e.applications,service:e.service,"need-apply":e.needApply,class:"mb-4",onRefresh:e.onGetApplication,onSelect:t[0]||(t[0]=f=>e.$store.dispatch("headshots/setApplication",f))},null,8,["initializing","application","applications","service","need-apply","onRefresh"]),s(i,{ref:"recentPanel",class:"panel recent",loading:e.loadingMore,onReachTop:e.onReachTop},null,8,["loading","onReachTop"])]),_:1})}const nt=b(bs,[["render",ks],["__scopeId","data-v-0af228d8"]]);export{nt as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{F as L}from"./index.es-C1Vw5-pU.js";import{E as V}from"./index-BX4hurF9.js";import{E as R}from"./index-CtCHxxgE.js";import{d as b,H as i,E as r,z as T,C as t,y as d,D as a,q as s,F as o,O as C,N as G,x as v,I as u,J as m,M as A,Q as S}from"./vendor-vue-NSDaktjZ.js";import{E as k,b7 as M,cd as D,aw as U,ce as j}from"./index-B26B3NRe.js";import{a as B}from"./hailuo-C8Dw-0xR.js";import{E as q,a as F}from"./index-BGxp6OcW.js";import{p as O}from"./pasteUploadMixin-BurWbGNQ.js";import{I as P,S as z,l as N}from"./pagination-DcHHH5aU.js";import{I as H}from"./ImagePreview-Bg_4MANc.js";import{E as J}from"./index-DHVwu-o_.js";import{E}from"./index-kxM-uBwN.js";import{E as K}from"./index-s4nuUgXJ.js";import{C as Q}from"./Consumption-BrRTFprj.js";import{a as W}from"./price-B76rlcGM.js";import{b as X}from"./errorCode-Cqj9Td_Z.js";import{h as Y}from"./hailuo-DTLZcEUj.js";import{C as Z}from"./CopyToClipboard-DpLBFIyy.js";import{V as x}from"./VideoPlayer-DpOpCmlr.js";import{E as ee}from"./index-Y6ecN3tB.js";import{E as te}from"./index-B0A9C_-T.js";import{E as oe}from"./index-MLK9z2al.js";import{B as se}from"./BotPlaceholder-CjLV0ALF.js";import{N as ae}from"./NoTasks-t-Nyk8v6.js";import"./use-form-item-efgym_Md.js";import"./index-BuyEbX8F.js";import"./vendor-axios-B8_nURbH.js";import"./vendor-dayjs-v0j1UNZp.js";import"./vendor-vue-router-Kg6s1a65.js";import"./index-D_vMdvZ6.js";import"./typescript-DilvQCGQ.js";import"./index-Y6InDSnm.js";import"./strings-beZM2Y-f.js";import"./isEqual-7sLqoZ1L.js";import"./_Uint8Array-CIOAkFC8.js";import"./castArray-TnTy8FCf.js";import"./debounce-CJZlaJSw.js";import"./_baseIteratee-y4F6_vaP.js";import"./index-DaTUtZCn.js";import"./index-CP58CVoz.js";import"./_baseClone-DsJpkaTJ.js";import"./_initCloneObject--BkHfMCz.js";import"./index-BCChxDUd.js";import"./vue-plyr-BO2nlN4c.js";import"./index-f3A5WlbC.js";const ne=b({name:"LayoutHailuo",components:{ElDrawer:R,ElButton:V,FontAwesomeIcon:L},data(){return{drawer:!1}}}),le={class:"main flex flex-row flex-1"},ie={class:"config w-[320px] flex-none h-full overflow-y-auto bg-[var(--app-sidebar-bg)] border-r border-[var(--app-border-subtle)]"},re={class:"result h-full p-6 flex-1 flex flex-col min-w-0 overflow-x-hidden bg-[var(--app-content-bg)]"};function ce(e,n,f,g,w,y){const p=a("font-awesome-icon"),h=a("el-button"),c=a("el-drawer");return s(),i("div",le,[r("div",ie,[T(e.$slots,"config",{},void 0,!0)]),r("div",re,[T(e.$slots,"result",{},void 0,!0)]),t(h,{circle:"",class:"menu",onClick:n[0]||(n[0]=_=>e.drawer=!0)},{default:d(()=>[t(p,{icon:"fa-solid fa-magic"})]),_:1}),t(c,{modelValue:e.drawer,"onUpdate:modelValue":n[1]||(n[1]=_=>e.drawer=_),direction:"ltr","with-header":!1,size:"340px"},{default:d(()=>[T(e.$slots,"config",{},void 0,!0)]),_:3},8,["modelValue"])])}const de=k(ne,[["render",ce],["__scopeId","data-v-fa61db7a"]]),ue=b({name:"ModelSelector",components:{ElSelect:F,ElOption:q},data(){return{}},computed:{options(){return[{value:"minimax-t2v",label:this.$t("hailuo.button.model1")},{value:"minimax-i2v",label:this.$t("hailuo.button.model2")},{value:"minimax-i2v-director",label:this.$t("hailuo.button.model3")}]},value:{get(){return this.$store.state.hailuo?.config?.model},set(e){this.$store.commit("hailuo/setConfig",{...this.$store.state.hailuo?.config,model:e})}}},mounted(){this.value||(this.value=B)}}),me={class:"field"},pe={class:"title font-bold"},he={class:"float-left"};function fe(e,n,f,g,w,y){const p=a("el-option"),h=a("el-select");return s(),i("div",me,[r("h2",pe,o(e.$t("hailuo.name.model")),1),t(h,{modelValue:e.value,"onUpdate:modelValue":n[0]||(n[0]=c=>e.value=c),class:"value",placeholder:e.$t("hailuo.placeholder.select"),clearable:""},{default:d(()=>[(s(!0),i(C,null,G(e.options,c=>(s(),v(p,{key:c.value,label:c.label,value:c.value},{default:d(()=>[r("span",he,o(c.label),1)]),_:2},1032,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const ge=k(ue,[["render",fe],["__scopeId","data-v-a768fbd9"]]),_e=b({name:"StartImageUrlInput",components:{ElUpload:J,ElButton:V,InfoIcon:P,ImagePreview:H},mixins:[O],data(){return{fileList:[],uploadUrl:M()+"/api/v1/files/"}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},urls(){return this.fileList.map(e=>e.url).filter(e=>e!==void 0)},value:{get(){return this.$store.state.hailuo?.config?.first_image_url},set(){const e=this.urls?.[0];this.$store.commit("hailuo/setConfig",{...this.$store.state.hailuo?.config,first_image_url:e})}}},mounted(){this.value||(this.value=void 0),this.onSetStartImageUrl()},methods:{onExceed(){E.warning(this.$t("hailuo.message.uploadStartImageExceed"))},onError(){E.error(this.$t("hailuo.message.uploadStartImageError"))},async onRemove(){E.error(this.$t("hailuo.message.uploadStartImageError"))},onSetStartImageUrl(){const e=this.urls?.[0];this.$store.commit("hailuo/setConfig",{...this.$store.state.hailuo?.config,first_image_url:e})},async onSuccess(){this.onSetStartImageUrl()}}}),$e={class:"relative"},ve={class:"flex justify-between"},be={class:"flex justify-start items-center"},ke={class:"text-sm font-bold"};function we(e,n,f,g,w,y){const p=a("info-icon"),h=a("image-preview"),c=a("el-button"),_=a("el-upload");return s(),i("div",$e,[r("div",ve,[r("div",be,[r("span",ke,o(e.$t("hailuo.name.startImageUrl")),1),t(p,{content:e.$t("hailuo.description.startImageUrl"),class:"info"},null,8,["content"])])]),t(_,{ref:"uploader","file-list":e.fileList,"onUpdate:fileList":n[0]||(n[0]=l=>e.fileList=l),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:l})=>[l.url&&l.percentage!==void 0?(s(),v(h,{key:0,url:l.url,name:l.name,percentage:l.percentage,onRemove:$=>e.fileList.splice(e.fileList.indexOf(l),1)},null,8,["url","name","percentage","onRemove"])):m("",!0)]),default:d(()=>[t(c,{size:"small",type:"primary",class:"btn btn-upload",round:""},{default:d(()=>[u(o(e.$t("hailuo.button.uploadStartImageUrl")),1)]),_:1})]),_:1},8,["file-list","action","on-exceed","on-error","on-remove","on-success","headers"])])}const ye=k(_e,[["render",we],["__scopeId","data-v-48f4a681"]]),Ee="",Ve=b({name:"PromptInput",components:{ElInput:K,InfoIcon:P},computed:{prompt:{get(){return this.$store.state.hailuo?.config?.prompt},set(e){console.debug("set prompt",e),this.$store.commit("hailuo/setConfig",{...this.$store.state.hailuo?.config,prompt:e})}}},mounted(){this.prompt||(this.prompt=Ee)}}),Se={class:"field"},Ie={class:"box"},Te={class:"title font-bold"};function Ce(e,n,f,g,w,y){const p=a("info-icon"),h=a("el-input");return s(),i("div",Se,[r("div",Ie,[r("h2",Te,o(e.$t("hailuo.name.prompt")),1),t(p,{content:e.$t("hailuo.description.prompt"),class:"info"},null,8,["content"])]),t(h,{modelValue:e.prompt,"onUpdate:modelValue":n[0]||(n[0]=c=>e.prompt=c),rows:3,type:"textarea",class:"prompt",placeholder:e.$t("hailuo.placeholder.prompt")},null,8,["modelValue","placeholder"])])}const Le=k(Ve,[["render",Ce],["__scopeId","data-v-c601bcba"]]),Ue=b({name:"PresetPanel",components:{ElButton:V,FontAwesomeIcon:L,PromptInput:Le,StartImageUrlInput:ye,ModelSelector:ge,Consumption:Q},emits:["generate"],computed:{config(){return this.$store.state.hailuo?.config},consumption(){return W(this.config,this.service?.cost)},service(){return this.$store.state.hailuo?.service}},methods:{onGenerate(){this.$emit("generate")}}}),Ge={class:"flex flex-col h-full"},Pe={class:"flex-1 overflow-y-auto p-5"},Re={class:"flex flex-col items-center justify-center px-5 pb-5"};function Ae(e,n,f,g,w,y){const p=a("prompt-input"),h=a("model-selector"),c=a("start-image-url-input"),_=a("consumption"),l=a("font-awesome-icon"),$=a("el-button");return s(),i("div",Ge,[r("div",Pe,[t(p,{class:"mb-4"}),t(h,{class:"mb-4"}),e.config?.model==="minimax-i2v"?(s(),v(c,{key:0,class:"mb-2"})):m("",!0)]),r("div",Re,[t(_,{value:e.consumption,service:e.service},null,8,["value","service"]),e.config?.video_url!==void 0||e.config?.custom?(s(),v($,{key:0,type:"primary",class:"btn w-full",round:"",onClick:e.onGenerate},{default:d(()=>[t(l,{icon:"fa-solid fa-magic",class:"mr-2"}),u(" "+o(e.$t("hailuo.button.extend")),1)]),_:1},8,["onClick"])):(s(),v($,{key:1,type:"primary",class:"btn w-full",round:"",onClick:e.onGenerate},{default:d(()=>[t(l,{icon:"fa-solid fa-magic",class:"mr-2"}),u(" "+o(e.$t("hailuo.button.generate")),1)]),_:1},8,["onClick"]))])])}const Me=k(Ue,[["render",Ae]]),De=b({name:"TaskPreview",components:{ElImage:oe,CopyToClipboard:Z,FontAwesomeIcon:L,ElAlert:te,VideoPlayer:x,ElTooltip:ee,ElButton:V},props:{modelValue:{type:Object,required:!0}},computed:{application(){return this.$store.state.hailuo?.application},config(){return this.$store.state.hailuo?.config},video(){return this.modelValue?.response?.data?.[0]}},methods:{onDownload(e){console.debug("on download hailuo video",e),window.open(e,"_blank")}}}),je={class:"preview"},Be={class:"left"},qe={class:"main"},Fe={class:"bot"},Oe={class:"datetime"},ze={class:"info"},Ne={key:0,class:"prompt mt-2"},He={key:0},Je={key:1},Ke={key:0,class:S({content:!0,failed:!0})},Qe={key:0,class:"mb-4"},We={key:1,class:S({operations:!0,"mt-2":!0})},Xe={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Ye={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Ze={key:1,class:"text-[var(--el-text-color-regular)] text-xs mb-0"},xe={key:1,class:S({content:!0})},et={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},tt={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},ot={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},st={class:"text-[var(--el-text-color-regular)] text-xs mb-0"},at={key:2,class:S({content:!0})},nt={class:"text-[var(--el-text-color-regular)] text-xs mb-0"};function lt(e,n,f,g,w,y){const p=a("el-image"),h=a("video-player"),c=a("el-button"),_=a("el-tooltip"),l=a("font-awesome-icon"),$=a("copy-to-clipboard"),I=a("el-alert");return s(),i("div",je,[r("div",Be,[t(p,{src:"https://cdn.acedata.cloud/0qg4gp.png",class:"avatar"})]),r("div",qe,[r("div",Fe,[u(o(e.$t("hailuo.name.hailuoBot"))+" ",1),r("span",Oe,o(e.$dayjs.format(""+new Date(parseFloat((e.modelValue?.created_at||"").toString())*1e3))),1)]),r("div",ze,[e.modelValue?.request?.prompt?(s(),i("p",Ne,[u(o(e.modelValue?.request?.prompt)+" ",1),e.modelValue?.response?m("",!0):(s(),i("span",He," - ("+o(e.$t("hailuo.status.pending"))+") ",1)),e.video?.state==="processing"||e.video?.state==="pending"||e.video?.state==="running"?(s(),i("span",Je," - ("+o(e.$t("hailuo.status.processing"))+") ",1)):m("",!0)])):m("",!0)]),e.modelValue?.response?.success===!0?(s(),i("div",Ke,[e.video?.video_url?(s(),i("div",Qe,[t(h,{src:e.video?.video_url},null,8,["src"])])):m("",!0),e.video?(s(),i("div",We,[t(_,{class:"box-item",effect:"dark",content:e.$t("hailuo.message.downloadVideo"),placement:"top-start"},{default:d(()=>[e.video?.video_url?(s(),v(c,{key:0,type:"info",size:"small",class:"mb-2",onClick:n[0]||(n[0]=A(gt=>e.onDownload(e.video?.video_url),["stop"]))},{default:d(()=>[u(o(e.$t("hailuo.button.download")),1)]),_:1})):m("",!0)]),_:1},8,["content"])])):m("",!0),t(I,{closable:!1,class:"mt-2 success"},{default:d(()=>[e.modelValue?.request?.model?(s(),i("p",Xe,[t(l,{icon:"fa-solid fa-hashtag",class:"mr-1"}),u(" "+o(e.$t("hailuo.name.model"))+": "+o(e.modelValue?.request?.model)+" ",1),t($,{content:e.modelValue?.id},null,8,["content"])])):m("",!0),r("p",Ye,[t(l,{icon:"fa-solid fa-magic",class:"mr-1"}),u(" "+o(e.$t("hailuo.name.taskId"))+": "+o(e.modelValue?.id)+" ",1),t($,{content:e.modelValue?.id},null,8,["content"])]),e.modelValue?.elapsed?(s(),i("p",Ze,[t(l,{icon:"fa-solid fa-clock",class:"mr-1"}),u(" "+o(e.$t("hailuo.name.elapsed"))+": "+o(e.modelValue?.elapsed?.toFixed(2))+"s ",1)])):m("",!0)]),_:1})])):m("",!0),e.modelValue?.response?.success===!1?(s(),i("div",xe,[t(I,{closable:!1,class:"failure"},{template:d(()=>[t(l,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),u(" "+o(e.$t("hailuo.name.failure")),1)]),default:d(()=>[r("p",et,[t(l,{icon:"fa-solid fa-magic",class:"mr-1"}),u(" "+o(e.$t("hailuo.name.taskId"))+": "+o(e.modelValue?.id)+" ",1),t($,{content:e.modelValue?.id},null,8,["content"])]),r("p",tt,[t(l,{icon:"fa-solid fa-circle-info",class:"mr-1"}),u(" "+o(e.$t("hailuo.name.failureReason"))+": "+o(e.modelValue?.response?.error?.message)+" ",1),t($,{content:e.modelValue?.response?.error?.message},null,8,["content"])]),e.modelValue?.elapsed?(s(),i("p",ot,[t(l,{icon:"fa-solid fa-clock",class:"mr-1"}),u(" "+o(e.$t("hailuo.name.elapsed"))+": "+o(e.modelValue?.elapsed?.toFixed(2))+"s ",1)])):m("",!0),r("p",st,[t(l,{icon:"fa-solid fa-hashtag",class:"mr-1"}),u(" "+o(e.$t("hailuo.name.traceId"))+": "+o(e.modelValue?.response?.trace_id)+" ",1),t($,{content:e.modelValue?.response?.trace_id},null,8,["content"])])]),_:1})])):m("",!0),e.modelValue?.response?.success===void 0?(s(),i("div",at,[t(I,{closable:!1,class:"info"},{template:d(()=>[t(l,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),u(" "+o(e.$t("hailuo.name.failure")),1)]),default:d(()=>[r("p",nt,[t(l,{icon:"fa-solid fa-magic",class:"mr-1"}),u(" "+o(e.$t("hailuo.name.taskId"))+": "+o(e.modelValue?.id)+" ",1),t($,{content:e.modelValue?.id},null,8,["content"])])]),_:1})])):m("",!0)])])}const it=k(De,[["render",lt],["__scopeId","data-v-1ff65585"]]),rt=b({name:"RecentPanel",components:{TaskPreview:it,BotPlaceholder:se,NoTasks:ae,ScrollList:z},props:{loading:{type:Boolean,default:!1}},emits:["reach-top"],data(){return{job:0}},computed:{tasks(){return{...this.$store.state.hailuo?.tasks,items:this.$store.state.hailuo?.tasks?.items?.slice()}}},methods:{getScrollElement(){return this.$refs.scrollList?.getScrollElement?.()}}}),ct={key:0},dt={key:2,class:"w-full h-full flex items-center justify-center"};function ut(e,n,f,g,w,y){const p=a("bot-placeholder"),h=a("task-preview"),c=a("scroll-list"),_=a("no-tasks");return s(),i(C,null,[e.tasks?.items===void 0?(s(),i("div",ct,[t(p)])):e.tasks?.items?.length&&e.tasks?.items?.length>0?(s(),v(c,{key:1,ref:"scrollList",class:"tasks w-full h-full overflow-y-auto",loading:e.loading,onReachTop:n[0]||(n[0]=l=>e.$emit("reach-top"))},{default:d(()=>[(s(!0),i(C,null,G(e.tasks?.items,l=>(s(),v(h,{key:l.id,"model-value":l},null,8,["model-value"]))),128))]),_:1},8,["loading"])):m("",!0),e.tasks?.items?.length===0?(s(),i("div",dt,[t(_)])):m("",!0)],64)}const mt=k(rt,[["render",ut]]),pt=j("hailuo"),ht=b({name:"HailuoIndex",components:{ConfigPanel:Me,Layout:de,RecentPanel:mt},inject:["initialized"],data(){return{task:void 0,job:0,timer:void 0,loadingMore:!1,fetchingTasks:!1}},computed:{applicationsLoading(){return this.$store.state.hailuo?.status?.getApplications===U.Request},tasksLoading(){return this.$store.state.hailuo?.status?.getTasks===U.Request||this.fetchingTasks},credential(){return this.$store.state.hailuo.credential},config(){return this.$store.state.hailuo.config},application(){return this.$store.state.hailuo.application},tasks(){return this.$store.state.hailuo.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 N({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("hailuo/getService"),console.debug("end onGetService")},async onGetApplication(){console.debug("start onGetApplication"),await this.$store.dispatch("hailuo/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:f,createdAtMax:g}=e||{};console.debug("limit",n,"createdAtMin",f,"createdAtMax",g),this.fetchingTasks=!0;try{await this.$store.dispatch("hailuo/getTasks",{limit:n,createdAtMin:f,createdAtMax:g})}finally{this.fetchingTasks=!1}},async onGenerate(){const e={...this.config,callback_url:pt},n=this.credential?.token;if(!n){console.error("no token specified");return}E.info(this.$t("hailuo.message.startingTask")),D("hailuo",Y.generate(e,{token:n})).then(()=>{E.success(this.$t("hailuo.message.startTaskSuccess"))}).catch(f=>{f?.response?.data?.error?.code===X?E.error(this.$t("hailuo.message.usedUp")):E.error(this.$t("hailuo.message.startTaskFailed"))}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})},getTasksScrollElement(){return this.$refs.recentPanel?.getScrollElement?.()}}});function ft(e,n,f,g,w,y){const p=a("config-panel"),h=a("recent-panel"),c=a("layout");return s(),v(c,null,{config:d(()=>[t(p,{onGenerate:e.onGenerate},null,8,["onGenerate"])]),result:d(()=>[t(h,{ref:"recentPanel",loading:e.loadingMore,onReachTop:e.onReachTop},null,8,["loading","onReachTop"])]),_:1})}const ro=k(ht,[["render",ft]]);export{ro as default};
|
|
1
|
+
import{F as L}from"./index.es-PxkVTVul.js";import{E as V}from"./index-LHAPoElI.js";import{E as R}from"./index-Dffxw0ff.js";import{d as b,H as i,E as r,z as T,C as t,y as d,D as a,q as s,F as o,O as C,N as G,x as v,I as u,J as m,M as A,Q as S}from"./vendor-vue-NSDaktjZ.js";import{E as k,b7 as M,cd as D,aw as U,ce as j}from"./index-CUMrI3uM.js";import{a as B}from"./hailuo-C8Dw-0xR.js";import{E as q,a as F}from"./index-BX75bHZZ.js";import{p as O}from"./pasteUploadMixin-BurWbGNQ.js";import{I as P,S as z,l as N}from"./pagination-DnskqQUw.js";import{I as H}from"./ImagePreview-7naWf_Hk.js";import{E as J}from"./index-B0UU8wtf.js";import{E}from"./index-D3kwEdCO.js";import{E as K}from"./index-BhgPr4v6.js";import{C as Q}from"./Consumption-DFTH_HGK.js";import{a as W}from"./price-CxhDvSzR.js";import{b as X}from"./errorCode-Cqj9Td_Z.js";import{h as Y}from"./hailuo-dnC-ATKI.js";import{C as Z}from"./CopyToClipboard-D0h1kZtr.js";import{V as x}from"./VideoPlayer-DvxHqPgh.js";import{E as ee}from"./index-LJD4KxHk.js";import{E as te}from"./index-CYoskRTt.js";import{E as oe}from"./index-Iywsl7Po.js";import{B as se}from"./BotPlaceholder-BaXQOlUu.js";import{N as ae}from"./NoTasks-Cz8zUMc6.js";import"./use-form-item-BCUliaxT.js";import"./index-BuyEbX8F.js";import"./vendor-axios-B8_nURbH.js";import"./vendor-dayjs-v0j1UNZp.js";import"./vendor-vue-router-Kg6s1a65.js";import"./index-DUTwzVsl.js";import"./typescript-DeTjW0DO.js";import"./index-DceoqtRa.js";import"./strings-beZM2Y-f.js";import"./isEqual-DyhHzzXY.js";import"./_Uint8Array-xXOLJRhg.js";import"./castArray-BX_tt0Nx.js";import"./debounce-UL-c7F9u.js";import"./_baseIteratee-A9x3WSjV.js";import"./index-VJ8AehQ6.js";import"./index-NhMzhO2I.js";import"./_baseClone-BSjA72P_.js";import"./_initCloneObject-CI8Xd2KA.js";import"./index-CqUYE69O.js";import"./vue-plyr-BO2nlN4c.js";import"./index-DWeJByu5.js";const ne=b({name:"LayoutHailuo",components:{ElDrawer:R,ElButton:V,FontAwesomeIcon:L},data(){return{drawer:!1}}}),le={class:"main flex flex-row flex-1"},ie={class:"config w-[320px] flex-none h-full overflow-y-auto bg-[var(--app-sidebar-bg)] border-r border-[var(--app-border-subtle)]"},re={class:"result h-full p-6 flex-1 flex flex-col min-w-0 overflow-x-hidden bg-[var(--app-content-bg)]"};function ce(e,n,f,g,w,y){const p=a("font-awesome-icon"),h=a("el-button"),c=a("el-drawer");return s(),i("div",le,[r("div",ie,[T(e.$slots,"config",{},void 0,!0)]),r("div",re,[T(e.$slots,"result",{},void 0,!0)]),t(h,{circle:"",class:"menu",onClick:n[0]||(n[0]=_=>e.drawer=!0)},{default:d(()=>[t(p,{icon:"fa-solid fa-magic"})]),_:1}),t(c,{modelValue:e.drawer,"onUpdate:modelValue":n[1]||(n[1]=_=>e.drawer=_),direction:"ltr","with-header":!1,size:"340px"},{default:d(()=>[T(e.$slots,"config",{},void 0,!0)]),_:3},8,["modelValue"])])}const de=k(ne,[["render",ce],["__scopeId","data-v-fa61db7a"]]),ue=b({name:"ModelSelector",components:{ElSelect:F,ElOption:q},data(){return{}},computed:{options(){return[{value:"minimax-t2v",label:this.$t("hailuo.button.model1")},{value:"minimax-i2v",label:this.$t("hailuo.button.model2")},{value:"minimax-i2v-director",label:this.$t("hailuo.button.model3")}]},value:{get(){return this.$store.state.hailuo?.config?.model},set(e){this.$store.commit("hailuo/setConfig",{...this.$store.state.hailuo?.config,model:e})}}},mounted(){this.value||(this.value=B)}}),me={class:"field"},pe={class:"title font-bold"},he={class:"float-left"};function fe(e,n,f,g,w,y){const p=a("el-option"),h=a("el-select");return s(),i("div",me,[r("h2",pe,o(e.$t("hailuo.name.model")),1),t(h,{modelValue:e.value,"onUpdate:modelValue":n[0]||(n[0]=c=>e.value=c),class:"value",placeholder:e.$t("hailuo.placeholder.select"),clearable:""},{default:d(()=>[(s(!0),i(C,null,G(e.options,c=>(s(),v(p,{key:c.value,label:c.label,value:c.value},{default:d(()=>[r("span",he,o(c.label),1)]),_:2},1032,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const ge=k(ue,[["render",fe],["__scopeId","data-v-a768fbd9"]]),_e=b({name:"StartImageUrlInput",components:{ElUpload:J,ElButton:V,InfoIcon:P,ImagePreview:H},mixins:[O],data(){return{fileList:[],uploadUrl:M()+"/api/v1/files/"}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},urls(){return this.fileList.map(e=>e.url).filter(e=>e!==void 0)},value:{get(){return this.$store.state.hailuo?.config?.first_image_url},set(){const e=this.urls?.[0];this.$store.commit("hailuo/setConfig",{...this.$store.state.hailuo?.config,first_image_url:e})}}},mounted(){this.value||(this.value=void 0),this.onSetStartImageUrl()},methods:{onExceed(){E.warning(this.$t("hailuo.message.uploadStartImageExceed"))},onError(){E.error(this.$t("hailuo.message.uploadStartImageError"))},async onRemove(){E.error(this.$t("hailuo.message.uploadStartImageError"))},onSetStartImageUrl(){const e=this.urls?.[0];this.$store.commit("hailuo/setConfig",{...this.$store.state.hailuo?.config,first_image_url:e})},async onSuccess(){this.onSetStartImageUrl()}}}),$e={class:"relative"},ve={class:"flex justify-between"},be={class:"flex justify-start items-center"},ke={class:"text-sm font-bold"};function we(e,n,f,g,w,y){const p=a("info-icon"),h=a("image-preview"),c=a("el-button"),_=a("el-upload");return s(),i("div",$e,[r("div",ve,[r("div",be,[r("span",ke,o(e.$t("hailuo.name.startImageUrl")),1),t(p,{content:e.$t("hailuo.description.startImageUrl"),class:"info"},null,8,["content"])])]),t(_,{ref:"uploader","file-list":e.fileList,"onUpdate:fileList":n[0]||(n[0]=l=>e.fileList=l),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:l})=>[l.url&&l.percentage!==void 0?(s(),v(h,{key:0,url:l.url,name:l.name,percentage:l.percentage,onRemove:$=>e.fileList.splice(e.fileList.indexOf(l),1)},null,8,["url","name","percentage","onRemove"])):m("",!0)]),default:d(()=>[t(c,{size:"small",type:"primary",class:"btn btn-upload",round:""},{default:d(()=>[u(o(e.$t("hailuo.button.uploadStartImageUrl")),1)]),_:1})]),_:1},8,["file-list","action","on-exceed","on-error","on-remove","on-success","headers"])])}const ye=k(_e,[["render",we],["__scopeId","data-v-48f4a681"]]),Ee="",Ve=b({name:"PromptInput",components:{ElInput:K,InfoIcon:P},computed:{prompt:{get(){return this.$store.state.hailuo?.config?.prompt},set(e){console.debug("set prompt",e),this.$store.commit("hailuo/setConfig",{...this.$store.state.hailuo?.config,prompt:e})}}},mounted(){this.prompt||(this.prompt=Ee)}}),Se={class:"field"},Ie={class:"box"},Te={class:"title font-bold"};function Ce(e,n,f,g,w,y){const p=a("info-icon"),h=a("el-input");return s(),i("div",Se,[r("div",Ie,[r("h2",Te,o(e.$t("hailuo.name.prompt")),1),t(p,{content:e.$t("hailuo.description.prompt"),class:"info"},null,8,["content"])]),t(h,{modelValue:e.prompt,"onUpdate:modelValue":n[0]||(n[0]=c=>e.prompt=c),rows:3,type:"textarea",class:"prompt",placeholder:e.$t("hailuo.placeholder.prompt")},null,8,["modelValue","placeholder"])])}const Le=k(Ve,[["render",Ce],["__scopeId","data-v-c601bcba"]]),Ue=b({name:"PresetPanel",components:{ElButton:V,FontAwesomeIcon:L,PromptInput:Le,StartImageUrlInput:ye,ModelSelector:ge,Consumption:Q},emits:["generate"],computed:{config(){return this.$store.state.hailuo?.config},consumption(){return W(this.config,this.service?.cost)},service(){return this.$store.state.hailuo?.service}},methods:{onGenerate(){this.$emit("generate")}}}),Ge={class:"flex flex-col h-full"},Pe={class:"flex-1 overflow-y-auto p-5"},Re={class:"flex flex-col items-center justify-center px-5 pb-5"};function Ae(e,n,f,g,w,y){const p=a("prompt-input"),h=a("model-selector"),c=a("start-image-url-input"),_=a("consumption"),l=a("font-awesome-icon"),$=a("el-button");return s(),i("div",Ge,[r("div",Pe,[t(p,{class:"mb-4"}),t(h,{class:"mb-4"}),e.config?.model==="minimax-i2v"?(s(),v(c,{key:0,class:"mb-2"})):m("",!0)]),r("div",Re,[t(_,{value:e.consumption,service:e.service},null,8,["value","service"]),e.config?.video_url!==void 0||e.config?.custom?(s(),v($,{key:0,type:"primary",class:"btn w-full",round:"",onClick:e.onGenerate},{default:d(()=>[t(l,{icon:"fa-solid fa-magic",class:"mr-2"}),u(" "+o(e.$t("hailuo.button.extend")),1)]),_:1},8,["onClick"])):(s(),v($,{key:1,type:"primary",class:"btn w-full",round:"",onClick:e.onGenerate},{default:d(()=>[t(l,{icon:"fa-solid fa-magic",class:"mr-2"}),u(" "+o(e.$t("hailuo.button.generate")),1)]),_:1},8,["onClick"]))])])}const Me=k(Ue,[["render",Ae]]),De=b({name:"TaskPreview",components:{ElImage:oe,CopyToClipboard:Z,FontAwesomeIcon:L,ElAlert:te,VideoPlayer:x,ElTooltip:ee,ElButton:V},props:{modelValue:{type:Object,required:!0}},computed:{application(){return this.$store.state.hailuo?.application},config(){return this.$store.state.hailuo?.config},video(){return this.modelValue?.response?.data?.[0]}},methods:{onDownload(e){console.debug("on download hailuo video",e),window.open(e,"_blank")}}}),je={class:"preview"},Be={class:"left"},qe={class:"main"},Fe={class:"bot"},Oe={class:"datetime"},ze={class:"info"},Ne={key:0,class:"prompt mt-2"},He={key:0},Je={key:1},Ke={key:0,class:S({content:!0,failed:!0})},Qe={key:0,class:"mb-4"},We={key:1,class:S({operations:!0,"mt-2":!0})},Xe={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Ye={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Ze={key:1,class:"text-[var(--el-text-color-regular)] text-xs mb-0"},xe={key:1,class:S({content:!0})},et={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},tt={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},ot={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},st={class:"text-[var(--el-text-color-regular)] text-xs mb-0"},at={key:2,class:S({content:!0})},nt={class:"text-[var(--el-text-color-regular)] text-xs mb-0"};function lt(e,n,f,g,w,y){const p=a("el-image"),h=a("video-player"),c=a("el-button"),_=a("el-tooltip"),l=a("font-awesome-icon"),$=a("copy-to-clipboard"),I=a("el-alert");return s(),i("div",je,[r("div",Be,[t(p,{src:"https://cdn.acedata.cloud/0qg4gp.png",class:"avatar"})]),r("div",qe,[r("div",Fe,[u(o(e.$t("hailuo.name.hailuoBot"))+" ",1),r("span",Oe,o(e.$dayjs.format(""+new Date(parseFloat((e.modelValue?.created_at||"").toString())*1e3))),1)]),r("div",ze,[e.modelValue?.request?.prompt?(s(),i("p",Ne,[u(o(e.modelValue?.request?.prompt)+" ",1),e.modelValue?.response?m("",!0):(s(),i("span",He," - ("+o(e.$t("hailuo.status.pending"))+") ",1)),e.video?.state==="processing"||e.video?.state==="pending"||e.video?.state==="running"?(s(),i("span",Je," - ("+o(e.$t("hailuo.status.processing"))+") ",1)):m("",!0)])):m("",!0)]),e.modelValue?.response?.success===!0?(s(),i("div",Ke,[e.video?.video_url?(s(),i("div",Qe,[t(h,{src:e.video?.video_url},null,8,["src"])])):m("",!0),e.video?(s(),i("div",We,[t(_,{class:"box-item",effect:"dark",content:e.$t("hailuo.message.downloadVideo"),placement:"top-start"},{default:d(()=>[e.video?.video_url?(s(),v(c,{key:0,type:"info",size:"small",class:"mb-2",onClick:n[0]||(n[0]=A(gt=>e.onDownload(e.video?.video_url),["stop"]))},{default:d(()=>[u(o(e.$t("hailuo.button.download")),1)]),_:1})):m("",!0)]),_:1},8,["content"])])):m("",!0),t(I,{closable:!1,class:"mt-2 success"},{default:d(()=>[e.modelValue?.request?.model?(s(),i("p",Xe,[t(l,{icon:"fa-solid fa-hashtag",class:"mr-1"}),u(" "+o(e.$t("hailuo.name.model"))+": "+o(e.modelValue?.request?.model)+" ",1),t($,{content:e.modelValue?.id},null,8,["content"])])):m("",!0),r("p",Ye,[t(l,{icon:"fa-solid fa-magic",class:"mr-1"}),u(" "+o(e.$t("hailuo.name.taskId"))+": "+o(e.modelValue?.id)+" ",1),t($,{content:e.modelValue?.id},null,8,["content"])]),e.modelValue?.elapsed?(s(),i("p",Ze,[t(l,{icon:"fa-solid fa-clock",class:"mr-1"}),u(" "+o(e.$t("hailuo.name.elapsed"))+": "+o(e.modelValue?.elapsed?.toFixed(2))+"s ",1)])):m("",!0)]),_:1})])):m("",!0),e.modelValue?.response?.success===!1?(s(),i("div",xe,[t(I,{closable:!1,class:"failure"},{template:d(()=>[t(l,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),u(" "+o(e.$t("hailuo.name.failure")),1)]),default:d(()=>[r("p",et,[t(l,{icon:"fa-solid fa-magic",class:"mr-1"}),u(" "+o(e.$t("hailuo.name.taskId"))+": "+o(e.modelValue?.id)+" ",1),t($,{content:e.modelValue?.id},null,8,["content"])]),r("p",tt,[t(l,{icon:"fa-solid fa-circle-info",class:"mr-1"}),u(" "+o(e.$t("hailuo.name.failureReason"))+": "+o(e.modelValue?.response?.error?.message)+" ",1),t($,{content:e.modelValue?.response?.error?.message},null,8,["content"])]),e.modelValue?.elapsed?(s(),i("p",ot,[t(l,{icon:"fa-solid fa-clock",class:"mr-1"}),u(" "+o(e.$t("hailuo.name.elapsed"))+": "+o(e.modelValue?.elapsed?.toFixed(2))+"s ",1)])):m("",!0),r("p",st,[t(l,{icon:"fa-solid fa-hashtag",class:"mr-1"}),u(" "+o(e.$t("hailuo.name.traceId"))+": "+o(e.modelValue?.response?.trace_id)+" ",1),t($,{content:e.modelValue?.response?.trace_id},null,8,["content"])])]),_:1})])):m("",!0),e.modelValue?.response?.success===void 0?(s(),i("div",at,[t(I,{closable:!1,class:"info"},{template:d(()=>[t(l,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),u(" "+o(e.$t("hailuo.name.failure")),1)]),default:d(()=>[r("p",nt,[t(l,{icon:"fa-solid fa-magic",class:"mr-1"}),u(" "+o(e.$t("hailuo.name.taskId"))+": "+o(e.modelValue?.id)+" ",1),t($,{content:e.modelValue?.id},null,8,["content"])])]),_:1})])):m("",!0)])])}const it=k(De,[["render",lt],["__scopeId","data-v-1ff65585"]]),rt=b({name:"RecentPanel",components:{TaskPreview:it,BotPlaceholder:se,NoTasks:ae,ScrollList:z},props:{loading:{type:Boolean,default:!1}},emits:["reach-top"],data(){return{job:0}},computed:{tasks(){return{...this.$store.state.hailuo?.tasks,items:this.$store.state.hailuo?.tasks?.items?.slice()}}},methods:{getScrollElement(){return this.$refs.scrollList?.getScrollElement?.()}}}),ct={key:0},dt={key:2,class:"w-full h-full flex items-center justify-center"};function ut(e,n,f,g,w,y){const p=a("bot-placeholder"),h=a("task-preview"),c=a("scroll-list"),_=a("no-tasks");return s(),i(C,null,[e.tasks?.items===void 0?(s(),i("div",ct,[t(p)])):e.tasks?.items?.length&&e.tasks?.items?.length>0?(s(),v(c,{key:1,ref:"scrollList",class:"tasks w-full h-full overflow-y-auto",loading:e.loading,onReachTop:n[0]||(n[0]=l=>e.$emit("reach-top"))},{default:d(()=>[(s(!0),i(C,null,G(e.tasks?.items,l=>(s(),v(h,{key:l.id,"model-value":l},null,8,["model-value"]))),128))]),_:1},8,["loading"])):m("",!0),e.tasks?.items?.length===0?(s(),i("div",dt,[t(_)])):m("",!0)],64)}const mt=k(rt,[["render",ut]]),pt=j("hailuo"),ht=b({name:"HailuoIndex",components:{ConfigPanel:Me,Layout:de,RecentPanel:mt},inject:["initialized"],data(){return{task:void 0,job:0,timer:void 0,loadingMore:!1,fetchingTasks:!1}},computed:{applicationsLoading(){return this.$store.state.hailuo?.status?.getApplications===U.Request},tasksLoading(){return this.$store.state.hailuo?.status?.getTasks===U.Request||this.fetchingTasks},credential(){return this.$store.state.hailuo.credential},config(){return this.$store.state.hailuo.config},application(){return this.$store.state.hailuo.application},tasks(){return this.$store.state.hailuo.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 N({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("hailuo/getService"),console.debug("end onGetService")},async onGetApplication(){console.debug("start onGetApplication"),await this.$store.dispatch("hailuo/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:f,createdAtMax:g}=e||{};console.debug("limit",n,"createdAtMin",f,"createdAtMax",g),this.fetchingTasks=!0;try{await this.$store.dispatch("hailuo/getTasks",{limit:n,createdAtMin:f,createdAtMax:g})}finally{this.fetchingTasks=!1}},async onGenerate(){const e={...this.config,callback_url:pt},n=this.credential?.token;if(!n){console.error("no token specified");return}E.info(this.$t("hailuo.message.startingTask")),D("hailuo",Y.generate(e,{token:n})).then(()=>{E.success(this.$t("hailuo.message.startTaskSuccess"))}).catch(f=>{f?.response?.data?.error?.code===X?E.error(this.$t("hailuo.message.usedUp")):E.error(this.$t("hailuo.message.startTaskFailed"))}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})},getTasksScrollElement(){return this.$refs.recentPanel?.getScrollElement?.()}}});function ft(e,n,f,g,w,y){const p=a("config-panel"),h=a("recent-panel"),c=a("layout");return s(),v(c,null,{config:d(()=>[t(p,{onGenerate:e.onGenerate},null,8,["onGenerate"])]),result:d(()=>[t(h,{ref:"recentPanel",loading:e.loadingMore,onReachTop:e.onReachTop},null,8,["loading","onReachTop"])]),_:1})}const ro=k(ht,[["render",ft]]);export{ro as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{F as T}from"./index.es-C1Vw5-pU.js";import{E as q}from"./index-BX4hurF9.js";import{E as W}from"./index-CtCHxxgE.js";import{d as k,H as l,E as c,z as C,C as a,y as g,D as s,q as n,F as o,I as u,O as A,N,x as V,J as p,M as K,Q as U}from"./vendor-vue-NSDaktjZ.js";import{E as y,b7 as H,cu as J,cv as z,cw as P,cx as Q,cy as S,cz as M,cA as j,cB as D,cd as X,aw as F,ce as Y}from"./index-B26B3NRe.js";import{I as O,S as Z,l as ee}from"./pagination-DcHHH5aU.js";import{E as te}from"./index-s4nuUgXJ.js";import{p as ae}from"./pasteUploadMixin-BurWbGNQ.js";import{I as x}from"./ImagePreview-Bg_4MANc.js";import{E as oe}from"./index-DHVwu-o_.js";import{E as R}from"./index-kxM-uBwN.js";import{E as B,a as G}from"./index-BGxp6OcW.js";import{C as ne}from"./Consumption-BrRTFprj.js";import{a as se}from"./price-B76rlcGM.js";import{b as le}from"./errorCode-Cqj9Td_Z.js";import{n as re}from"./nanobanana-CC54XPie.js";import{C as ie}from"./CopyToClipboard-DpLBFIyy.js";import{I as ce}from"./ImageWrapper-DKVJ7ct4.js";import{E as ue}from"./index-Y6ecN3tB.js";import{E as me}from"./index-B0A9C_-T.js";import{E as de}from"./index-MLK9z2al.js";import{B as pe}from"./BotPlaceholder-CjLV0ALF.js";import{N as fe}from"./NoTasks-t-Nyk8v6.js";import"./use-form-item-efgym_Md.js";import"./index-BuyEbX8F.js";import"./vendor-axios-B8_nURbH.js";import"./vendor-dayjs-v0j1UNZp.js";import"./vendor-vue-router-Kg6s1a65.js";import"./typescript-DilvQCGQ.js";import"./index-Y6InDSnm.js";import"./index-BCChxDUd.js";import"./index-CP58CVoz.js";import"./_baseClone-DsJpkaTJ.js";import"./_Uint8Array-CIOAkFC8.js";import"./_initCloneObject--BkHfMCz.js";import"./isEqual-7sLqoZ1L.js";import"./index-D_vMdvZ6.js";import"./strings-beZM2Y-f.js";import"./castArray-TnTy8FCf.js";import"./debounce-CJZlaJSw.js";import"./_baseIteratee-y4F6_vaP.js";import"./index-DaTUtZCn.js";import"./index-f3A5WlbC.js";const he=k({name:"LayoutNanobanana",components:{ElDrawer:W,ElButton:q,FontAwesomeIcon:T},data(){return{drawer:!1}}}),_e={class:"main flex flex-row flex-1"},ge={class:"config w-[320px] flex-none h-full overflow-y-auto bg-[var(--app-sidebar-bg)] border-r border-[var(--app-border-subtle)]"},be={class:"result h-full p-6 flex-1 flex flex-col min-w-0 overflow-x-hidden bg-[var(--app-content-bg)]"};function $e(e,t,$,i,b,f){const h=s("font-awesome-icon"),_=s("el-button"),m=s("el-drawer");return n(),l("div",_e,[c("div",ge,[C(e.$slots,"config",{},void 0,!0)]),c("div",be,[C(e.$slots,"result",{},void 0,!0)]),a(_,{circle:"",class:"menu",onClick:t[0]||(t[0]=d=>e.drawer=!0)},{default:g(()=>[a(h,{icon:"fa-solid fa-magic"})]),_:1}),a(m,{modelValue:e.drawer,"onUpdate:modelValue":t[1]||(t[1]=d=>e.drawer=d),direction:"ltr","with-header":!1,size:"340px",class:"drawer"},{default:g(()=>[C(e.$slots,"config",{},void 0,!0)]),_:3},8,["modelValue"])])}const ve=y(he,[["render",$e],["__scopeId","data-v-9fbc8a5c"]]),ke="",ye=k({name:"PromptInput",components:{ElInput:te,InfoIcon:O},computed:{prompt:{get(){return this.$store.state.nanobanana?.config?.prompt},set(e){console.debug("set prompt",e),this.$store.commit("nanobanana/setConfig",{...this.$store.state.nanobanana?.config,prompt:e})}}},mounted(){this.prompt||(this.prompt=ke)}}),we={class:"field"},Ae={class:"box"},Ve={class:"title font-bold"};function Ne(e,t,$,i,b,f){const h=s("info-icon"),_=s("el-input");return n(),l("div",we,[c("div",Ae,[c("h2",Ve,o(e.$t("nanobanana.name.prompt")),1),a(h,{content:e.$t("nanobanana.description.prompt"),class:"info"},null,8,["content"])]),a(_,{modelValue:e.prompt,"onUpdate:modelValue":t[0]||(t[0]=m=>e.prompt=m),rows:3,type:"textarea",class:"prompt",placeholder:e.$t("nanobanana.placeholder.prompt")},null,8,["modelValue","placeholder"])])}const Ee=y(ye,[["render",Ne],["__scopeId","data-v-2331e197"]]),Re=k({name:"ImageUrlsInput",components:{ElUpload:oe,ElButton:q,InfoIcon:O,ImagePreview:x,FontAwesomeIcon:T},mixins:[ae],data(){return{fileList:[],uploadUrl:H()+"/api/v1/files/",suppressWatch:!1}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},urls(){return this.fileList.map(e=>e?.response?.file_url).filter(e=>!!e)},value(){return this.$store.state.nanobanana?.config?.image_urls}},watch:{value:{immediate:!0,handler(e){if(this.suppressWatch)return;if(!e||e.length===0){const i=(this.fileList||[]).filter(b=>!b?.response?.file_url);this.fileList=i.length?i:[];return}const t=[];e.forEach(i=>{const b=this.fileList.find(f=>f?.response?.file_url===i||f?.url===i);b?t.push(b):t.push({name:i.split("/").pop()||i,url:i,status:"success",percentage:100,response:{file_url:i}})}),(this.fileList||[]).filter(i=>!i?.response?.file_url).forEach(i=>{t.some(f=>f===i||f?.url===i?.url||f?.response?.file_url===i?.response?.file_url)||t.push(i)}),this.fileList=t}}},mounted(){},methods:{onChange(e){if(!e?.url&&e?.raw)try{e.url=URL.createObjectURL(e.raw)}catch{}},onRemove(e){if(e?.url&&typeof e.url=="string"&&e.url.startsWith("blob:"))try{URL.revokeObjectURL(e.url)}catch{}this.onSetImageUrls()},onExceed(){R.warning(this.$t("nanobanana.message.uploadImageExceed"))},onError(){R.error(this.$t("nanobanana.message.uploadImageError"))},onSetImageUrls(){const e=this.urls;this.suppressWatch=!0,this.$store.commit("nanobanana/setConfig",{...this.$store.state.nanobanana?.config,image_urls:e}),this.$nextTick(()=>{this.suppressWatch=!1})},async onSuccess(e,t){e?.file_url&&(t.url=e.file_url,t.response=e),this.onSetImageUrls()},onRemovePreview(e,t){if(this.fileList.splice(e,1),t?.url&&typeof t.url=="string"&&t.url.startsWith("blob:"))try{URL.revokeObjectURL(t.url)}catch{}this.onSetImageUrls()}}}),Ie={class:"field flex items-center justify-between"},Le={class:"title font-bold text-[14px] mb-[10px]"},Se={class:"upload-wrapper flex flex-col items-start gap-[8px]"},Te={class:"controls flex items-center"},qe={class:"file-list flex flex-wrap gap-[10px]"};function Ue(e,t,$,i,b,f){const h=s("font-awesome-icon"),_=s("el-button"),m=s("el-upload"),d=s("info-icon"),w=s("image-preview");return n(),l(A,null,[c("div",Ie,[c("h2",Le,o(e.$t("nanobanana.name.imageUrls")),1),c("div",Se,[c("div",Te,[a(m,{ref:"uploader","file-list":e.fileList,"onUpdate:fileList":t[0]||(t[0]=r=>e.fileList=r),accept:".png,.jpg,.jpeg,.gif,.bmp,.webp",name:"file",class:"value",limit:5,multiple:!0,"show-file-list":!1,action:e.uploadUrl,"on-exceed":e.onExceed,"on-error":e.onError,"on-success":e.onSuccess,"on-change":e.onChange,"on-remove":e.onRemove,headers:e.headers},{default:g(()=>[a(_,{size:"small",type:"primary",round:""},{default:g(()=>[a(h,{icon:"fa-solid fa-upload",class:"mr-1"}),u(" "+o(e.$t("nanobanana.button.uploadImageUrls")),1)]),_:1})]),_:1},8,["file-list","action","on-exceed","on-error","on-success","on-change","on-remove","headers"]),a(d,{content:e.$t("nanobanana.description.imageUrls"),class:"ml-2"},null,8,["content"])])])]),c("div",qe,[(n(!0),l(A,null,N(e.fileList,(r,v)=>(n(),V(w,{key:r.uid||r?.response?.file_url||r.url||v,url:r.url||r?.response?.file_url,name:r.name,percentage:r.percentage,onRemove:E=>e.onRemovePreview(v,r)},null,8,["url","name","percentage","onRemove"]))),128))])],64)}const Oe=y(Re,[["render",Ue]]),Ce=k({name:"AspectRatioSelector",components:{ElSelect:G,ElOption:B},data(){return{options:["1:1","3:2","2:3","16:9","9:16","4:3","3:4"]}},computed:{value:{get(){return this.$store.state.nanobanana?.config?.aspect_ratio},set(e){console.debug("set aspect_ratio",e);const t={...this.$store.state.nanobanana?.config||{}};e?t.aspect_ratio=e:delete t.aspect_ratio,this.$store.commit("nanobanana/setConfig",t)}}}}),Pe={class:"field"},Be={class:"title font-bold"};function Ge(e,t,$,i,b,f){const h=s("el-option"),_=s("el-select");return n(),l("div",Pe,[c("h2",Be,o(e.$t("nanobanana.name.aspectRatio")),1),a(_,{modelValue:e.value,"onUpdate:modelValue":t[0]||(t[0]=m=>e.value=m),class:"value",clearable:"",placeholder:e.$t("nanobanana.placeholder.select")},{default:g(()=>[(n(!0),l(A,null,N(e.options,m=>(n(),V(h,{key:m,label:m,value:m},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const Me=y(Ce,[["render",Ge],["__scopeId","data-v-67f08a08"]]),je=k({name:"NanobananaModelSelector",components:{ElSelect:G,ElOption:B,InfoIcon:O},data(){return{options:[{value:z,label:this.$t("nanobanana.model.nanoBanana")},{value:P,label:this.$t("nanobanana.model.nanoBananaPro")},{value:Q,label:this.$t("nanobanana.model.nanoBanana2")}]}},computed:{value:{get(){return this.$store.state.nanobanana?.config?.model},set(e){this.$store.commit("nanobanana/setConfig",{...this.$store.state.nanobanana?.config,model:e})}},modelDescription(){return this.$t("nanobanana.description.model")}},mounted(){this.value||(this.value=J)}}),De={class:"field"},Fe={class:"label"},ze={class:"box"},xe={class:"title font-bold"};function We(e,t,$,i,b,f){const h=s("info-icon"),_=s("el-option"),m=s("el-select");return n(),l("div",De,[c("div",Fe,[c("div",ze,[c("h2",xe,o(e.$t("nanobanana.name.model")),1),a(h,{content:e.modelDescription,class:"info"},null,8,["content"])])]),a(m,{modelValue:e.value,"onUpdate:modelValue":t[0]||(t[0]=d=>e.value=d),class:"value",placeholder:e.$t("nanobanana.placeholder.select")},{default:g(()=>[(n(!0),l(A,null,N(e.options,d=>(n(),V(_,{key:d.value,label:d.label,value:d.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const Ke=y(je,[["render",We],["__scopeId","data-v-94304d73"]]),He=k({name:"NanobananaResolutionSelector",components:{ElSelect:G,ElOption:B,InfoIcon:O},data(){return{cachedResolution:S,options:[{value:M,label:M},{value:j,label:j},{value:D,label:D}]}},computed:{value:{get(){return this.$store.state.nanobanana?.config?.resolution},set(e){this.$store.commit("nanobanana/setConfig",{...this.$store.state.nanobanana?.config,resolution:e})}},isProModel(){return this.$store.state.nanobanana?.config?.model!==z}},watch:{value(e){this.isProModel&&e&&(this.cachedResolution=e)},isProModel(e){e?this.value||(this.value=this.cachedResolution||S):(this.value&&(this.cachedResolution=this.value),this.$store.commit("nanobanana/setConfig",{...this.$store.state.nanobanana?.config,resolution:void 0}))}},mounted(){this.isProModel&&!this.value&&(this.value=S),!this.isProModel&&this.value&&(this.cachedResolution=this.value,this.$store.commit("nanobanana/setConfig",{...this.$store.state.nanobanana?.config,resolution:void 0}))}}),Je={class:"field"},Qe={class:"label"},Xe={class:"box"},Ye={class:"title font-bold"};function Ze(e,t,$,i,b,f){const h=s("info-icon"),_=s("el-option"),m=s("el-select");return n(),l("div",Je,[c("div",Qe,[c("div",Xe,[c("h2",Ye,o(e.$t("nanobanana.name.resolution")),1),a(h,{content:e.$t("nanobanana.description.resolutionProOnly"),class:"info"},null,8,["content"])])]),a(m,{modelValue:e.value,"onUpdate:modelValue":t[0]||(t[0]=d=>e.value=d),class:"value",placeholder:e.$t("nanobanana.placeholder.select"),disabled:!e.isProModel},{default:g(()=>[(n(!0),l(A,null,N(e.options,d=>(n(),V(_,{key:d.value,label:d.label,value:d.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder","disabled"])])}const et=y(He,[["render",Ze],["__scopeId","data-v-fd5ab393"]]),tt=k({name:"ConfigPanel",components:{ElButton:q,FontAwesomeIcon:T,PromptInput:Ee,Consumption:ne,ImageUrlsInput:Oe,AspectRatioSelector:Me,ModelSelector:Ke,ResolutionSelector:et},emits:["generate"],computed:{config(){return this.$store.state.nanobanana?.config},consumption(){const e={...this.config||{}},t=Array.isArray(e?.image_urls)&&e.image_urls.length>0;return se({...e,action:t?"edit":"generate"},this.service?.cost)},service(){return this.$store.state.nanobanana?.service}},methods:{onGenerate(){this.$emit("generate")}}}),at={class:"flex flex-col h-full"},ot={class:"flex-1 overflow-y-auto p-5"},nt={class:"flex flex-col items-center justify-center px-5 pb-5"};function st(e,t,$,i,b,f){const h=s("model-selector"),_=s("resolution-selector"),m=s("prompt-input"),d=s("aspect-ratio-selector"),w=s("image-urls-input"),r=s("consumption"),v=s("font-awesome-icon"),E=s("el-button");return n(),l("div",at,[c("div",ot,[a(h,{class:"mb-4"}),a(_,{class:"mb-4"}),a(m,{class:"mb-4"}),a(d,{class:"mb-4"}),a(w,{class:"mb-4"})]),c("div",nt,[a(r,{value:e.consumption,service:e.service},null,8,["value","service"]),a(E,{type:"primary",class:"btn w-full",round:"",onClick:e.onGenerate},{default:g(()=>[a(v,{icon:"fa-solid fa-magic",class:"mr-2"}),u(" "+o(e.$t("nanobanana.button.generate")),1)]),_:1},8,["onClick"])])])}const lt=y(tt,[["render",st]]),rt=k({name:"TaskPreview",components:{ElImage:de,CopyToClipboard:ie,FontAwesomeIcon:T,ElAlert:me,ImageWrapper:ce,ElButton:q,ElTooltip:ue,ImagePreview:x},props:{modelValue:{type:Object,required:!0}},computed:{images(){const e=[];return Array.isArray(this.modelValue?.response?.data)&&this.modelValue?.response?.data?.forEach(t=>{e.push(t)}),e}},methods:{onEdit(e){if(!e)return;console.debug("Edit image:",e);const t={...this.$store.state.nanobanana?.config||{}};delete t.action,t.image_urls=[e],this.$store.commit("nanobanana/setConfig",t)}}}),it={class:"preview"},ct={class:"left"},ut={class:"main"},mt={class:"bot"},dt={class:"datetime"},pt={class:"info"},ft={key:0,class:"flex justify-start items-center gap-2 mt-2 w-full overflow-x-auto"},ht={key:1,class:"prompt mt-2"},_t={key:0},gt={key:0,class:U({content:!0,failed:!0})},bt={class:"flex justify-start items-center gap-4 w-full overflow-x-auto"},$t={class:U({operations:!0,"mt-2":!0,"mb-2":!0})},vt={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},kt={key:1,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},yt={key:2,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},wt={key:3,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},At={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Vt={key:4,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Nt={key:5,class:"text-[var(--el-text-color-regular)] text-xs mb-0"},Et={key:1,class:U({content:!0})},Rt={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},It={key:1,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Lt={key:2,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},St={key:3,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Tt={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},qt={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Ut={key:4,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Ot={key:5,class:"text-[var(--el-text-color-regular)] text-xs mb-0"},Ct={key:2,class:U({content:!0})},Pt={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Bt={key:1,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Gt={key:2,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Mt={key:3,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},jt={class:"text-[var(--el-text-color-regular)] text-xs mb-2"};function Dt(e,t,$,i,b,f){const h=s("el-image"),_=s("image-preview"),m=s("image-wrapper"),d=s("el-button"),w=s("el-tooltip"),r=s("font-awesome-icon"),v=s("copy-to-clipboard"),E=s("el-alert");return n(),l("div",it,[c("div",ct,[a(h,{src:"https://cdn.acedata.cloud/859plc.jpg",class:"avatar"})]),c("div",ut,[c("div",mt,[u(o(e.$t("nanobanana.name.nanobananaBot"))+" ",1),c("span",dt,o(e.$dayjs.format(""+new Date(parseFloat((e.modelValue?.created_at||"").toString())*1e3))),1)]),c("div",pt,[e.modelValue?.request?.image_urls&&e.modelValue?.request?.image_urls.length>0?(n(),l("div",ft,[(n(!0),l(A,null,N(e.modelValue?.request?.image_urls,(I,L)=>(n(),V(_,{key:L,url:I,name:`image-${L+1}`,closable:!1},null,8,["url","name"]))),128))])):p("",!0),e.modelValue?.request?.prompt?(n(),l("p",ht,[u(o(e.modelValue?.request?.prompt)+" ",1),e.modelValue?.response?p("",!0):(n(),l("span",_t," - ("+o(e.$t("nanobanana.status.pending"))+") ",1))])):p("",!0)]),e.modelValue?.response?.success===!0?(n(),l("div",gt,[c("div",bt,[(n(!0),l(A,null,N(e.images,(I,L)=>(n(),V(m,{key:L,src:I?.image_url,"raw-src":I?.image_url},null,8,["src","raw-src"]))),128))]),c("div",$t,[a(w,{class:"box-item",effect:"dark",content:e.$t("common.button.edit"),placement:"top-start"},{default:g(()=>[a(d,{type:"info",size:"small",class:"btn-action",onClick:t[0]||(t[0]=K(I=>e.onEdit(e.images?.[0]?.image_url),["stop"]))},{default:g(()=>[u(o(e.$t("common.button.edit")),1)]),_:1})]),_:1},8,["content"])]),a(E,{closable:!1,class:"mt-2 success"},{default:g(()=>[e.modelValue?.request?.model?(n(),l("p",vt,[a(r,{icon:"fa-solid fa-cube",class:"mr-1"}),u(" "+o(e.$t("nanobanana.name.model"))+": "+o(e.modelValue?.request?.model),1)])):p("",!0),e.modelValue?.request?.resolution?(n(),l("p",kt,[a(r,{icon:"fa-solid fa-image",class:"mr-1"}),u(" "+o(e.$t("nanobanana.name.resolution"))+": "+o(e.modelValue?.request?.resolution),1)])):p("",!0),e.modelValue?.request?.aspect_ratio?(n(),l("p",yt,[a(r,{icon:"fa-solid fa-up-right-from-square",class:"mr-1"}),u(" "+o(e.$t("nanobanana.name.aspectRatio"))+": "+o(e.modelValue?.request?.aspect_ratio),1)])):p("",!0),e.modelValue?.request?.action?(n(),l("p",wt,[a(r,{icon:"fa-solid fa-bolt",class:"mr-1"}),u(" "+o(e.$t("nanobanana.name.task"))+": "+o(e.modelValue?.request?.action==="generate"?e.$t("nanobanana.name.generate"):e.$t("nanobanana.name.edits")),1)])):p("",!0),c("p",At,[a(r,{icon:"fa-solid fa-magic",class:"mr-1"}),u(" "+o(e.$t("nanobanana.name.taskId"))+": "+o(e.modelValue?.id)+" ",1),a(v,{content:e.modelValue?.id,class:"btn-copy inline-block"},null,8,["content"])]),e.modelValue?.elapsed?(n(),l("p",Vt,[a(r,{icon:"fa-solid fa-clock",class:"mr-1"}),u(" "+o(e.$t("nanobanana.name.elapsed"))+": "+o(e.modelValue?.elapsed?.toFixed(2))+"s ",1)])):p("",!0),e.modelValue?.response?.trace_id?(n(),l("p",Nt,[a(r,{icon:"fa-solid fa-hashtag",class:"mr-1"}),u(" "+o(e.$t("nanobanana.name.traceId"))+": "+o(e.modelValue?.response?.trace_id)+" ",1),a(v,{content:e.modelValue?.response?.trace_id,class:"btn-copy inline-block"},null,8,["content"])])):p("",!0)]),_:1})])):e.modelValue?.response?.success===!1?(n(),l("div",Et,[a(E,{closable:!1,class:"failure"},{template:g(()=>[a(r,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),u(" "+o(e.$t("nanobanana.name.failure")),1)]),default:g(()=>[e.modelValue?.request?.model?(n(),l("p",Rt,[a(r,{icon:"fa-solid fa-cube",class:"mr-1"}),u(" "+o(e.$t("nanobanana.name.model"))+": "+o(e.modelValue?.request?.model),1)])):p("",!0),e.modelValue?.request?.resolution?(n(),l("p",It,[a(r,{icon:"fa-solid fa-image",class:"mr-1"}),u(" "+o(e.$t("nanobanana.name.resolution"))+": "+o(e.modelValue?.request?.resolution),1)])):p("",!0),e.modelValue?.request?.aspect_ratio?(n(),l("p",Lt,[a(r,{icon:"fa-solid fa-up-right-from-square",class:"mr-1"}),u(" "+o(e.$t("nanobanana.name.aspectRatio"))+": "+o(e.modelValue?.request?.aspect_ratio),1)])):p("",!0),e.modelValue?.request?.action?(n(),l("p",St,[a(r,{icon:"fa-solid fa-bolt",class:"mr-1"}),u(" "+o(e.$t("nanobanana.name.task"))+": "+o(e.modelValue?.request?.action==="generate"?e.$t("nanobanana.name.generate"):e.$t("nanobanana.name.edits")),1)])):p("",!0),c("p",Tt,[a(r,{icon:"fa-solid fa-magic",class:"mr-1"}),u(" "+o(e.$t("nanobanana.name.taskId"))+": "+o(e.modelValue?.id)+" ",1),a(v,{content:e.modelValue?.id,class:"btn-copy"},null,8,["content"])]),c("p",qt,[a(r,{icon:"fa-solid fa-circle-info",class:"mr-1"}),u(" "+o(e.$t("nanobanana.name.failureReason"))+": "+o(e.modelValue?.response?.error?.message)+" ",1),a(v,{content:e.modelValue?.response?.error?.message,class:"btn-copy"},null,8,["content"])]),e.modelValue?.elapsed?(n(),l("p",Ut,[a(r,{icon:"fa-solid fa-clock",class:"mr-1"}),u(" "+o(e.$t("nanobanana.name.elapsed"))+": "+o(e.modelValue?.elapsed?.toFixed(2))+"s ",1)])):p("",!0),e.modelValue?.response?.trace_id?(n(),l("p",Ot,[a(r,{icon:"fa-solid fa-hashtag",class:"mr-1"}),u(" "+o(e.$t("nanobanana.name.traceId"))+": "+o(e.modelValue?.response?.trace_id)+" ",1),a(v,{content:e.modelValue?.response?.trace_id,class:"btn-copy"},null,8,["content"])])):p("",!0)]),_:1})])):(n(),l("div",Ct,[a(E,{closable:!1,class:"info"},{template:g(()=>[a(r,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),u(" "+o(e.$t("nanobanana.name.failure")),1)]),default:g(()=>[e.modelValue?.request?.model?(n(),l("p",Pt,[a(r,{icon:"fa-solid fa-cube",class:"mr-1"}),u(" "+o(e.$t("nanobanana.name.model"))+": "+o(e.modelValue?.request?.model),1)])):p("",!0),e.modelValue?.request?.resolution?(n(),l("p",Bt,[a(r,{icon:"fa-solid fa-image",class:"mr-1"}),u(" "+o(e.$t("nanobanana.name.resolution"))+": "+o(e.modelValue?.request?.resolution),1)])):p("",!0),e.modelValue?.request?.aspect_ratio?(n(),l("p",Gt,[a(r,{icon:"fa-solid fa-up-right-from-square",class:"mr-1"}),u(" "+o(e.$t("nanobanana.name.aspectRatio"))+": "+o(e.modelValue?.request?.aspect_ratio),1)])):p("",!0),e.modelValue?.request?.action?(n(),l("p",Mt,[a(r,{icon:"fa-solid fa-bolt",class:"mr-1"}),u(" "+o(e.$t("nanobanana.name.task"))+": "+o(e.modelValue?.request?.action==="generate"?e.$t("nanobanana.name.generate"):e.$t("nanobanana.name.edits")),1)])):p("",!0),c("p",jt,[a(r,{icon:"fa-solid fa-magic",class:"mr-1"}),u(" "+o(e.$t("nanobanana.name.taskId"))+": "+o(e.modelValue?.id)+" ",1),a(v,{content:e.modelValue?.id,class:"btn-copy"},null,8,["content"])])]),_:1})]))])])}const Ft=y(rt,[["render",Dt],["__scopeId","data-v-8d5f4fff"]]),zt=k({name:"RecentPanel",components:{TaskPreview:Ft,BotPlaceholder:pe,NoTasks:fe,ScrollList:Z},props:{loading:{type:Boolean,default:!1}},emits:["reach-top"],data(){return{job:0}},computed:{tasks(){return{...this.$store.state.nanobanana?.tasks,items:this.$store.state.nanobanana?.tasks?.items?.slice()}}},methods:{getScrollElement(){return this.$refs.scrollList?.getScrollElement?.()}}}),xt={key:0},Wt={key:2,class:"w-full h-full flex items-center justify-center"};function Kt(e,t,$,i,b,f){const h=s("bot-placeholder"),_=s("task-preview"),m=s("scroll-list"),d=s("no-tasks");return n(),l(A,null,[e.tasks?.items===void 0?(n(),l("div",xt,[a(h)])):e.tasks?.items?.length&&e.tasks?.items?.length>0?(n(),V(m,{key:1,ref:"scrollList",class:"tasks h-full w-full overflow-y-auto",loading:e.loading,onReachTop:t[0]||(t[0]=w=>e.$emit("reach-top"))},{default:g(()=>[(n(!0),l(A,null,N(e.tasks?.items,w=>(n(),V(_,{key:w.id,"model-value":w},null,8,["model-value"]))),128))]),_:1},8,["loading"])):p("",!0),e.tasks?.items?.length===0?(n(),l("div",Wt,[a(d)])):p("",!0)],64)}const Ht=y(zt,[["render",Kt]]),Jt=Y("nanobanana"),Qt=k({name:"NanobananaIndex",components:{ConfigPanel:lt,Layout:ve,RecentPanel:Ht},inject:["initialized"],data(){return{task:void 0,job:0,loading:!1}},computed:{applicationsLoading(){return this.$store.state.nanobanana?.status?.getApplications===F.Request},tasksLoading(){return this.$store.state.nanobanana?.status?.getTasks===F.Request},credential(){return this.$store.state.nanobanana?.credential},config(){return this.$store.state.nanobanana?.config},application(){return this.$store.state.nanobanana?.application},tasks(){return this.$store.state.nanobanana?.tasks}},watch:{tasks:{handler(e,t){e?.items?.length>t?.items?.length&&console.debug("new tasks detected")},deep:!0},initialized:{async handler(e){e&&(console.debug("layout initialized"),await this.onGetTasks(),await this.onScrollDown(),this.job=window.setInterval(()=>{this.onGetTasks()},5e3))},immediate:!0}},async mounted(){await this.onGetService()},async unmounted(){window.clearInterval(this.job)},methods:{async onReachTop(){await ee({tasks:this.tasks,getTasks:()=>this.tasks,loading:this.loading,setLoading:e=>this.loading=e,isBlocked:()=>this.tasksLoading,fetch:e=>this.onGetTasks({createdAtMax:e}),getScrollElement:()=>this.getTasksScrollElement()})},async onGetService(){console.debug("start onGetService"),await this.$store.dispatch("nanobanana/getService"),console.debug("end onGetService")},async onGetApplication(){console.debug("start onGetApplication"),await this.$store.dispatch("nanobanana/getApplications"),console.debug("end onGetApplication"),await this.onGetTasks()},async onScrollDown(){await this.$nextTick();const e=this.getTasksScrollElement();e&&(e.scrollTop=e.scrollHeight)},async onGetTasks(e){if(this.applicationsLoading||this.tasksLoading){console.debug("loading");return}console.debug("start onGetTasks",e);const{limit:t=20,createdAtMin:$,createdAtMax:i}=e||{};console.debug("limit",t,"createdAtMin",$,"createdAtMax",i),await this.$store.dispatch("nanobanana/getTasks",{limit:t,createdAtMin:$,createdAtMax:i})},async onGenerate(){const e={...this.config||{}},t=Array.isArray(e?.image_urls)&&e.image_urls.length>0;delete e.action,!t&&"image_urls"in e&&delete e.image_urls,e?.aspect_ratio||delete e.aspect_ratio,e?.model!==P&&"resolution"in e&&delete e.resolution,e?.model===P&&!e?.resolution&&(e.resolution=S);const $={...e,action:t?"edit":"generate",callback_url:Jt},i=this.credential?.token;if(!i){console.error("no token specified");return}R.info(this.$t("nanobanana.message.startingTask")),X("nanobanana",re.generate($,{token:i})).then(()=>{R.success(this.$t("nanobanana.message.startTaskSuccess"))}).catch(b=>{const f=b?.response?.data;f?.error?.code===le?R.error(this.$t("nanobanana.message.usedUp")):R.error(this.$t("nanobanana.message.startTaskFailed")+(f?.error?.message||""))}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})},getTasksScrollElement(){return this.$refs.recentPanel?.getScrollElement?.()}}});function Xt(e,t,$,i,b,f){const h=s("config-panel"),_=s("recent-panel"),m=s("layout");return n(),V(m,null,{config:g(()=>[a(h,{onGenerate:e.onGenerate},null,8,["onGenerate"])]),result:g(()=>[a(_,{ref:"recentPanel",loading:e.loading,onReachTop:e.onReachTop},null,8,["loading","onReachTop"])]),_:1})}const ja=y(Qt,[["render",Xt]]);export{ja as default};
|
|
1
|
+
import{F as T}from"./index.es-PxkVTVul.js";import{E as q}from"./index-LHAPoElI.js";import{E as W}from"./index-Dffxw0ff.js";import{d as k,H as l,E as c,z as C,C as a,y as g,D as s,q as n,F as o,I as u,O as A,N,x as V,J as p,M as K,Q as U}from"./vendor-vue-NSDaktjZ.js";import{E as y,b7 as H,cu as J,cv as z,cw as P,cx as Q,cy as S,cz as M,cA as j,cB as D,cd as X,aw as F,ce as Y}from"./index-CUMrI3uM.js";import{I as O,S as Z,l as ee}from"./pagination-DnskqQUw.js";import{E as te}from"./index-BhgPr4v6.js";import{p as ae}from"./pasteUploadMixin-BurWbGNQ.js";import{I as x}from"./ImagePreview-7naWf_Hk.js";import{E as oe}from"./index-B0UU8wtf.js";import{E as R}from"./index-D3kwEdCO.js";import{E as B,a as G}from"./index-BX75bHZZ.js";import{C as ne}from"./Consumption-DFTH_HGK.js";import{a as se}from"./price-CxhDvSzR.js";import{b as le}from"./errorCode-Cqj9Td_Z.js";import{n as re}from"./nanobanana-CiVbVjBG.js";import{C as ie}from"./CopyToClipboard-D0h1kZtr.js";import{I as ce}from"./ImageWrapper-DBP8OPPq.js";import{E as ue}from"./index-LJD4KxHk.js";import{E as me}from"./index-CYoskRTt.js";import{E as de}from"./index-Iywsl7Po.js";import{B as pe}from"./BotPlaceholder-BaXQOlUu.js";import{N as fe}from"./NoTasks-Cz8zUMc6.js";import"./use-form-item-BCUliaxT.js";import"./index-BuyEbX8F.js";import"./vendor-axios-B8_nURbH.js";import"./vendor-dayjs-v0j1UNZp.js";import"./vendor-vue-router-Kg6s1a65.js";import"./typescript-DeTjW0DO.js";import"./index-DceoqtRa.js";import"./index-CqUYE69O.js";import"./index-NhMzhO2I.js";import"./_baseClone-BSjA72P_.js";import"./_Uint8Array-xXOLJRhg.js";import"./_initCloneObject-CI8Xd2KA.js";import"./isEqual-DyhHzzXY.js";import"./index-DUTwzVsl.js";import"./strings-beZM2Y-f.js";import"./castArray-BX_tt0Nx.js";import"./debounce-UL-c7F9u.js";import"./_baseIteratee-A9x3WSjV.js";import"./index-VJ8AehQ6.js";import"./index-DWeJByu5.js";const he=k({name:"LayoutNanobanana",components:{ElDrawer:W,ElButton:q,FontAwesomeIcon:T},data(){return{drawer:!1}}}),_e={class:"main flex flex-row flex-1"},ge={class:"config w-[320px] flex-none h-full overflow-y-auto bg-[var(--app-sidebar-bg)] border-r border-[var(--app-border-subtle)]"},be={class:"result h-full p-6 flex-1 flex flex-col min-w-0 overflow-x-hidden bg-[var(--app-content-bg)]"};function $e(e,t,$,i,b,f){const h=s("font-awesome-icon"),_=s("el-button"),m=s("el-drawer");return n(),l("div",_e,[c("div",ge,[C(e.$slots,"config",{},void 0,!0)]),c("div",be,[C(e.$slots,"result",{},void 0,!0)]),a(_,{circle:"",class:"menu",onClick:t[0]||(t[0]=d=>e.drawer=!0)},{default:g(()=>[a(h,{icon:"fa-solid fa-magic"})]),_:1}),a(m,{modelValue:e.drawer,"onUpdate:modelValue":t[1]||(t[1]=d=>e.drawer=d),direction:"ltr","with-header":!1,size:"340px",class:"drawer"},{default:g(()=>[C(e.$slots,"config",{},void 0,!0)]),_:3},8,["modelValue"])])}const ve=y(he,[["render",$e],["__scopeId","data-v-9fbc8a5c"]]),ke="",ye=k({name:"PromptInput",components:{ElInput:te,InfoIcon:O},computed:{prompt:{get(){return this.$store.state.nanobanana?.config?.prompt},set(e){console.debug("set prompt",e),this.$store.commit("nanobanana/setConfig",{...this.$store.state.nanobanana?.config,prompt:e})}}},mounted(){this.prompt||(this.prompt=ke)}}),we={class:"field"},Ae={class:"box"},Ve={class:"title font-bold"};function Ne(e,t,$,i,b,f){const h=s("info-icon"),_=s("el-input");return n(),l("div",we,[c("div",Ae,[c("h2",Ve,o(e.$t("nanobanana.name.prompt")),1),a(h,{content:e.$t("nanobanana.description.prompt"),class:"info"},null,8,["content"])]),a(_,{modelValue:e.prompt,"onUpdate:modelValue":t[0]||(t[0]=m=>e.prompt=m),rows:3,type:"textarea",class:"prompt",placeholder:e.$t("nanobanana.placeholder.prompt")},null,8,["modelValue","placeholder"])])}const Ee=y(ye,[["render",Ne],["__scopeId","data-v-2331e197"]]),Re=k({name:"ImageUrlsInput",components:{ElUpload:oe,ElButton:q,InfoIcon:O,ImagePreview:x,FontAwesomeIcon:T},mixins:[ae],data(){return{fileList:[],uploadUrl:H()+"/api/v1/files/",suppressWatch:!1}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},urls(){return this.fileList.map(e=>e?.response?.file_url).filter(e=>!!e)},value(){return this.$store.state.nanobanana?.config?.image_urls}},watch:{value:{immediate:!0,handler(e){if(this.suppressWatch)return;if(!e||e.length===0){const i=(this.fileList||[]).filter(b=>!b?.response?.file_url);this.fileList=i.length?i:[];return}const t=[];e.forEach(i=>{const b=this.fileList.find(f=>f?.response?.file_url===i||f?.url===i);b?t.push(b):t.push({name:i.split("/").pop()||i,url:i,status:"success",percentage:100,response:{file_url:i}})}),(this.fileList||[]).filter(i=>!i?.response?.file_url).forEach(i=>{t.some(f=>f===i||f?.url===i?.url||f?.response?.file_url===i?.response?.file_url)||t.push(i)}),this.fileList=t}}},mounted(){},methods:{onChange(e){if(!e?.url&&e?.raw)try{e.url=URL.createObjectURL(e.raw)}catch{}},onRemove(e){if(e?.url&&typeof e.url=="string"&&e.url.startsWith("blob:"))try{URL.revokeObjectURL(e.url)}catch{}this.onSetImageUrls()},onExceed(){R.warning(this.$t("nanobanana.message.uploadImageExceed"))},onError(){R.error(this.$t("nanobanana.message.uploadImageError"))},onSetImageUrls(){const e=this.urls;this.suppressWatch=!0,this.$store.commit("nanobanana/setConfig",{...this.$store.state.nanobanana?.config,image_urls:e}),this.$nextTick(()=>{this.suppressWatch=!1})},async onSuccess(e,t){e?.file_url&&(t.url=e.file_url,t.response=e),this.onSetImageUrls()},onRemovePreview(e,t){if(this.fileList.splice(e,1),t?.url&&typeof t.url=="string"&&t.url.startsWith("blob:"))try{URL.revokeObjectURL(t.url)}catch{}this.onSetImageUrls()}}}),Ie={class:"field flex items-center justify-between"},Le={class:"title font-bold text-[14px] mb-[10px]"},Se={class:"upload-wrapper flex flex-col items-start gap-[8px]"},Te={class:"controls flex items-center"},qe={class:"file-list flex flex-wrap gap-[10px]"};function Ue(e,t,$,i,b,f){const h=s("font-awesome-icon"),_=s("el-button"),m=s("el-upload"),d=s("info-icon"),w=s("image-preview");return n(),l(A,null,[c("div",Ie,[c("h2",Le,o(e.$t("nanobanana.name.imageUrls")),1),c("div",Se,[c("div",Te,[a(m,{ref:"uploader","file-list":e.fileList,"onUpdate:fileList":t[0]||(t[0]=r=>e.fileList=r),accept:".png,.jpg,.jpeg,.gif,.bmp,.webp",name:"file",class:"value",limit:5,multiple:!0,"show-file-list":!1,action:e.uploadUrl,"on-exceed":e.onExceed,"on-error":e.onError,"on-success":e.onSuccess,"on-change":e.onChange,"on-remove":e.onRemove,headers:e.headers},{default:g(()=>[a(_,{size:"small",type:"primary",round:""},{default:g(()=>[a(h,{icon:"fa-solid fa-upload",class:"mr-1"}),u(" "+o(e.$t("nanobanana.button.uploadImageUrls")),1)]),_:1})]),_:1},8,["file-list","action","on-exceed","on-error","on-success","on-change","on-remove","headers"]),a(d,{content:e.$t("nanobanana.description.imageUrls"),class:"ml-2"},null,8,["content"])])])]),c("div",qe,[(n(!0),l(A,null,N(e.fileList,(r,v)=>(n(),V(w,{key:r.uid||r?.response?.file_url||r.url||v,url:r.url||r?.response?.file_url,name:r.name,percentage:r.percentage,onRemove:E=>e.onRemovePreview(v,r)},null,8,["url","name","percentage","onRemove"]))),128))])],64)}const Oe=y(Re,[["render",Ue]]),Ce=k({name:"AspectRatioSelector",components:{ElSelect:G,ElOption:B},data(){return{options:["1:1","3:2","2:3","16:9","9:16","4:3","3:4"]}},computed:{value:{get(){return this.$store.state.nanobanana?.config?.aspect_ratio},set(e){console.debug("set aspect_ratio",e);const t={...this.$store.state.nanobanana?.config||{}};e?t.aspect_ratio=e:delete t.aspect_ratio,this.$store.commit("nanobanana/setConfig",t)}}}}),Pe={class:"field"},Be={class:"title font-bold"};function Ge(e,t,$,i,b,f){const h=s("el-option"),_=s("el-select");return n(),l("div",Pe,[c("h2",Be,o(e.$t("nanobanana.name.aspectRatio")),1),a(_,{modelValue:e.value,"onUpdate:modelValue":t[0]||(t[0]=m=>e.value=m),class:"value",clearable:"",placeholder:e.$t("nanobanana.placeholder.select")},{default:g(()=>[(n(!0),l(A,null,N(e.options,m=>(n(),V(h,{key:m,label:m,value:m},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const Me=y(Ce,[["render",Ge],["__scopeId","data-v-67f08a08"]]),je=k({name:"NanobananaModelSelector",components:{ElSelect:G,ElOption:B,InfoIcon:O},data(){return{options:[{value:z,label:this.$t("nanobanana.model.nanoBanana")},{value:P,label:this.$t("nanobanana.model.nanoBananaPro")},{value:Q,label:this.$t("nanobanana.model.nanoBanana2")}]}},computed:{value:{get(){return this.$store.state.nanobanana?.config?.model},set(e){this.$store.commit("nanobanana/setConfig",{...this.$store.state.nanobanana?.config,model:e})}},modelDescription(){return this.$t("nanobanana.description.model")}},mounted(){this.value||(this.value=J)}}),De={class:"field"},Fe={class:"label"},ze={class:"box"},xe={class:"title font-bold"};function We(e,t,$,i,b,f){const h=s("info-icon"),_=s("el-option"),m=s("el-select");return n(),l("div",De,[c("div",Fe,[c("div",ze,[c("h2",xe,o(e.$t("nanobanana.name.model")),1),a(h,{content:e.modelDescription,class:"info"},null,8,["content"])])]),a(m,{modelValue:e.value,"onUpdate:modelValue":t[0]||(t[0]=d=>e.value=d),class:"value",placeholder:e.$t("nanobanana.placeholder.select")},{default:g(()=>[(n(!0),l(A,null,N(e.options,d=>(n(),V(_,{key:d.value,label:d.label,value:d.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const Ke=y(je,[["render",We],["__scopeId","data-v-94304d73"]]),He=k({name:"NanobananaResolutionSelector",components:{ElSelect:G,ElOption:B,InfoIcon:O},data(){return{cachedResolution:S,options:[{value:M,label:M},{value:j,label:j},{value:D,label:D}]}},computed:{value:{get(){return this.$store.state.nanobanana?.config?.resolution},set(e){this.$store.commit("nanobanana/setConfig",{...this.$store.state.nanobanana?.config,resolution:e})}},isProModel(){return this.$store.state.nanobanana?.config?.model!==z}},watch:{value(e){this.isProModel&&e&&(this.cachedResolution=e)},isProModel(e){e?this.value||(this.value=this.cachedResolution||S):(this.value&&(this.cachedResolution=this.value),this.$store.commit("nanobanana/setConfig",{...this.$store.state.nanobanana?.config,resolution:void 0}))}},mounted(){this.isProModel&&!this.value&&(this.value=S),!this.isProModel&&this.value&&(this.cachedResolution=this.value,this.$store.commit("nanobanana/setConfig",{...this.$store.state.nanobanana?.config,resolution:void 0}))}}),Je={class:"field"},Qe={class:"label"},Xe={class:"box"},Ye={class:"title font-bold"};function Ze(e,t,$,i,b,f){const h=s("info-icon"),_=s("el-option"),m=s("el-select");return n(),l("div",Je,[c("div",Qe,[c("div",Xe,[c("h2",Ye,o(e.$t("nanobanana.name.resolution")),1),a(h,{content:e.$t("nanobanana.description.resolutionProOnly"),class:"info"},null,8,["content"])])]),a(m,{modelValue:e.value,"onUpdate:modelValue":t[0]||(t[0]=d=>e.value=d),class:"value",placeholder:e.$t("nanobanana.placeholder.select"),disabled:!e.isProModel},{default:g(()=>[(n(!0),l(A,null,N(e.options,d=>(n(),V(_,{key:d.value,label:d.label,value:d.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder","disabled"])])}const et=y(He,[["render",Ze],["__scopeId","data-v-fd5ab393"]]),tt=k({name:"ConfigPanel",components:{ElButton:q,FontAwesomeIcon:T,PromptInput:Ee,Consumption:ne,ImageUrlsInput:Oe,AspectRatioSelector:Me,ModelSelector:Ke,ResolutionSelector:et},emits:["generate"],computed:{config(){return this.$store.state.nanobanana?.config},consumption(){const e={...this.config||{}},t=Array.isArray(e?.image_urls)&&e.image_urls.length>0;return se({...e,action:t?"edit":"generate"},this.service?.cost)},service(){return this.$store.state.nanobanana?.service}},methods:{onGenerate(){this.$emit("generate")}}}),at={class:"flex flex-col h-full"},ot={class:"flex-1 overflow-y-auto p-5"},nt={class:"flex flex-col items-center justify-center px-5 pb-5"};function st(e,t,$,i,b,f){const h=s("model-selector"),_=s("resolution-selector"),m=s("prompt-input"),d=s("aspect-ratio-selector"),w=s("image-urls-input"),r=s("consumption"),v=s("font-awesome-icon"),E=s("el-button");return n(),l("div",at,[c("div",ot,[a(h,{class:"mb-4"}),a(_,{class:"mb-4"}),a(m,{class:"mb-4"}),a(d,{class:"mb-4"}),a(w,{class:"mb-4"})]),c("div",nt,[a(r,{value:e.consumption,service:e.service},null,8,["value","service"]),a(E,{type:"primary",class:"btn w-full",round:"",onClick:e.onGenerate},{default:g(()=>[a(v,{icon:"fa-solid fa-magic",class:"mr-2"}),u(" "+o(e.$t("nanobanana.button.generate")),1)]),_:1},8,["onClick"])])])}const lt=y(tt,[["render",st]]),rt=k({name:"TaskPreview",components:{ElImage:de,CopyToClipboard:ie,FontAwesomeIcon:T,ElAlert:me,ImageWrapper:ce,ElButton:q,ElTooltip:ue,ImagePreview:x},props:{modelValue:{type:Object,required:!0}},computed:{images(){const e=[];return Array.isArray(this.modelValue?.response?.data)&&this.modelValue?.response?.data?.forEach(t=>{e.push(t)}),e}},methods:{onEdit(e){if(!e)return;console.debug("Edit image:",e);const t={...this.$store.state.nanobanana?.config||{}};delete t.action,t.image_urls=[e],this.$store.commit("nanobanana/setConfig",t)}}}),it={class:"preview"},ct={class:"left"},ut={class:"main"},mt={class:"bot"},dt={class:"datetime"},pt={class:"info"},ft={key:0,class:"flex justify-start items-center gap-2 mt-2 w-full overflow-x-auto"},ht={key:1,class:"prompt mt-2"},_t={key:0},gt={key:0,class:U({content:!0,failed:!0})},bt={class:"flex justify-start items-center gap-4 w-full overflow-x-auto"},$t={class:U({operations:!0,"mt-2":!0,"mb-2":!0})},vt={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},kt={key:1,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},yt={key:2,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},wt={key:3,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},At={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Vt={key:4,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Nt={key:5,class:"text-[var(--el-text-color-regular)] text-xs mb-0"},Et={key:1,class:U({content:!0})},Rt={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},It={key:1,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Lt={key:2,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},St={key:3,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Tt={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},qt={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Ut={key:4,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Ot={key:5,class:"text-[var(--el-text-color-regular)] text-xs mb-0"},Ct={key:2,class:U({content:!0})},Pt={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Bt={key:1,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Gt={key:2,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Mt={key:3,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},jt={class:"text-[var(--el-text-color-regular)] text-xs mb-2"};function Dt(e,t,$,i,b,f){const h=s("el-image"),_=s("image-preview"),m=s("image-wrapper"),d=s("el-button"),w=s("el-tooltip"),r=s("font-awesome-icon"),v=s("copy-to-clipboard"),E=s("el-alert");return n(),l("div",it,[c("div",ct,[a(h,{src:"https://cdn.acedata.cloud/859plc.jpg",class:"avatar"})]),c("div",ut,[c("div",mt,[u(o(e.$t("nanobanana.name.nanobananaBot"))+" ",1),c("span",dt,o(e.$dayjs.format(""+new Date(parseFloat((e.modelValue?.created_at||"").toString())*1e3))),1)]),c("div",pt,[e.modelValue?.request?.image_urls&&e.modelValue?.request?.image_urls.length>0?(n(),l("div",ft,[(n(!0),l(A,null,N(e.modelValue?.request?.image_urls,(I,L)=>(n(),V(_,{key:L,url:I,name:`image-${L+1}`,closable:!1},null,8,["url","name"]))),128))])):p("",!0),e.modelValue?.request?.prompt?(n(),l("p",ht,[u(o(e.modelValue?.request?.prompt)+" ",1),e.modelValue?.response?p("",!0):(n(),l("span",_t," - ("+o(e.$t("nanobanana.status.pending"))+") ",1))])):p("",!0)]),e.modelValue?.response?.success===!0?(n(),l("div",gt,[c("div",bt,[(n(!0),l(A,null,N(e.images,(I,L)=>(n(),V(m,{key:L,src:I?.image_url,"raw-src":I?.image_url},null,8,["src","raw-src"]))),128))]),c("div",$t,[a(w,{class:"box-item",effect:"dark",content:e.$t("common.button.edit"),placement:"top-start"},{default:g(()=>[a(d,{type:"info",size:"small",class:"btn-action",onClick:t[0]||(t[0]=K(I=>e.onEdit(e.images?.[0]?.image_url),["stop"]))},{default:g(()=>[u(o(e.$t("common.button.edit")),1)]),_:1})]),_:1},8,["content"])]),a(E,{closable:!1,class:"mt-2 success"},{default:g(()=>[e.modelValue?.request?.model?(n(),l("p",vt,[a(r,{icon:"fa-solid fa-cube",class:"mr-1"}),u(" "+o(e.$t("nanobanana.name.model"))+": "+o(e.modelValue?.request?.model),1)])):p("",!0),e.modelValue?.request?.resolution?(n(),l("p",kt,[a(r,{icon:"fa-solid fa-image",class:"mr-1"}),u(" "+o(e.$t("nanobanana.name.resolution"))+": "+o(e.modelValue?.request?.resolution),1)])):p("",!0),e.modelValue?.request?.aspect_ratio?(n(),l("p",yt,[a(r,{icon:"fa-solid fa-up-right-from-square",class:"mr-1"}),u(" "+o(e.$t("nanobanana.name.aspectRatio"))+": "+o(e.modelValue?.request?.aspect_ratio),1)])):p("",!0),e.modelValue?.request?.action?(n(),l("p",wt,[a(r,{icon:"fa-solid fa-bolt",class:"mr-1"}),u(" "+o(e.$t("nanobanana.name.task"))+": "+o(e.modelValue?.request?.action==="generate"?e.$t("nanobanana.name.generate"):e.$t("nanobanana.name.edits")),1)])):p("",!0),c("p",At,[a(r,{icon:"fa-solid fa-magic",class:"mr-1"}),u(" "+o(e.$t("nanobanana.name.taskId"))+": "+o(e.modelValue?.id)+" ",1),a(v,{content:e.modelValue?.id,class:"btn-copy inline-block"},null,8,["content"])]),e.modelValue?.elapsed?(n(),l("p",Vt,[a(r,{icon:"fa-solid fa-clock",class:"mr-1"}),u(" "+o(e.$t("nanobanana.name.elapsed"))+": "+o(e.modelValue?.elapsed?.toFixed(2))+"s ",1)])):p("",!0),e.modelValue?.response?.trace_id?(n(),l("p",Nt,[a(r,{icon:"fa-solid fa-hashtag",class:"mr-1"}),u(" "+o(e.$t("nanobanana.name.traceId"))+": "+o(e.modelValue?.response?.trace_id)+" ",1),a(v,{content:e.modelValue?.response?.trace_id,class:"btn-copy inline-block"},null,8,["content"])])):p("",!0)]),_:1})])):e.modelValue?.response?.success===!1?(n(),l("div",Et,[a(E,{closable:!1,class:"failure"},{template:g(()=>[a(r,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),u(" "+o(e.$t("nanobanana.name.failure")),1)]),default:g(()=>[e.modelValue?.request?.model?(n(),l("p",Rt,[a(r,{icon:"fa-solid fa-cube",class:"mr-1"}),u(" "+o(e.$t("nanobanana.name.model"))+": "+o(e.modelValue?.request?.model),1)])):p("",!0),e.modelValue?.request?.resolution?(n(),l("p",It,[a(r,{icon:"fa-solid fa-image",class:"mr-1"}),u(" "+o(e.$t("nanobanana.name.resolution"))+": "+o(e.modelValue?.request?.resolution),1)])):p("",!0),e.modelValue?.request?.aspect_ratio?(n(),l("p",Lt,[a(r,{icon:"fa-solid fa-up-right-from-square",class:"mr-1"}),u(" "+o(e.$t("nanobanana.name.aspectRatio"))+": "+o(e.modelValue?.request?.aspect_ratio),1)])):p("",!0),e.modelValue?.request?.action?(n(),l("p",St,[a(r,{icon:"fa-solid fa-bolt",class:"mr-1"}),u(" "+o(e.$t("nanobanana.name.task"))+": "+o(e.modelValue?.request?.action==="generate"?e.$t("nanobanana.name.generate"):e.$t("nanobanana.name.edits")),1)])):p("",!0),c("p",Tt,[a(r,{icon:"fa-solid fa-magic",class:"mr-1"}),u(" "+o(e.$t("nanobanana.name.taskId"))+": "+o(e.modelValue?.id)+" ",1),a(v,{content:e.modelValue?.id,class:"btn-copy"},null,8,["content"])]),c("p",qt,[a(r,{icon:"fa-solid fa-circle-info",class:"mr-1"}),u(" "+o(e.$t("nanobanana.name.failureReason"))+": "+o(e.modelValue?.response?.error?.message)+" ",1),a(v,{content:e.modelValue?.response?.error?.message,class:"btn-copy"},null,8,["content"])]),e.modelValue?.elapsed?(n(),l("p",Ut,[a(r,{icon:"fa-solid fa-clock",class:"mr-1"}),u(" "+o(e.$t("nanobanana.name.elapsed"))+": "+o(e.modelValue?.elapsed?.toFixed(2))+"s ",1)])):p("",!0),e.modelValue?.response?.trace_id?(n(),l("p",Ot,[a(r,{icon:"fa-solid fa-hashtag",class:"mr-1"}),u(" "+o(e.$t("nanobanana.name.traceId"))+": "+o(e.modelValue?.response?.trace_id)+" ",1),a(v,{content:e.modelValue?.response?.trace_id,class:"btn-copy"},null,8,["content"])])):p("",!0)]),_:1})])):(n(),l("div",Ct,[a(E,{closable:!1,class:"info"},{template:g(()=>[a(r,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),u(" "+o(e.$t("nanobanana.name.failure")),1)]),default:g(()=>[e.modelValue?.request?.model?(n(),l("p",Pt,[a(r,{icon:"fa-solid fa-cube",class:"mr-1"}),u(" "+o(e.$t("nanobanana.name.model"))+": "+o(e.modelValue?.request?.model),1)])):p("",!0),e.modelValue?.request?.resolution?(n(),l("p",Bt,[a(r,{icon:"fa-solid fa-image",class:"mr-1"}),u(" "+o(e.$t("nanobanana.name.resolution"))+": "+o(e.modelValue?.request?.resolution),1)])):p("",!0),e.modelValue?.request?.aspect_ratio?(n(),l("p",Gt,[a(r,{icon:"fa-solid fa-up-right-from-square",class:"mr-1"}),u(" "+o(e.$t("nanobanana.name.aspectRatio"))+": "+o(e.modelValue?.request?.aspect_ratio),1)])):p("",!0),e.modelValue?.request?.action?(n(),l("p",Mt,[a(r,{icon:"fa-solid fa-bolt",class:"mr-1"}),u(" "+o(e.$t("nanobanana.name.task"))+": "+o(e.modelValue?.request?.action==="generate"?e.$t("nanobanana.name.generate"):e.$t("nanobanana.name.edits")),1)])):p("",!0),c("p",jt,[a(r,{icon:"fa-solid fa-magic",class:"mr-1"}),u(" "+o(e.$t("nanobanana.name.taskId"))+": "+o(e.modelValue?.id)+" ",1),a(v,{content:e.modelValue?.id,class:"btn-copy"},null,8,["content"])])]),_:1})]))])])}const Ft=y(rt,[["render",Dt],["__scopeId","data-v-8d5f4fff"]]),zt=k({name:"RecentPanel",components:{TaskPreview:Ft,BotPlaceholder:pe,NoTasks:fe,ScrollList:Z},props:{loading:{type:Boolean,default:!1}},emits:["reach-top"],data(){return{job:0}},computed:{tasks(){return{...this.$store.state.nanobanana?.tasks,items:this.$store.state.nanobanana?.tasks?.items?.slice()}}},methods:{getScrollElement(){return this.$refs.scrollList?.getScrollElement?.()}}}),xt={key:0},Wt={key:2,class:"w-full h-full flex items-center justify-center"};function Kt(e,t,$,i,b,f){const h=s("bot-placeholder"),_=s("task-preview"),m=s("scroll-list"),d=s("no-tasks");return n(),l(A,null,[e.tasks?.items===void 0?(n(),l("div",xt,[a(h)])):e.tasks?.items?.length&&e.tasks?.items?.length>0?(n(),V(m,{key:1,ref:"scrollList",class:"tasks h-full w-full overflow-y-auto",loading:e.loading,onReachTop:t[0]||(t[0]=w=>e.$emit("reach-top"))},{default:g(()=>[(n(!0),l(A,null,N(e.tasks?.items,w=>(n(),V(_,{key:w.id,"model-value":w},null,8,["model-value"]))),128))]),_:1},8,["loading"])):p("",!0),e.tasks?.items?.length===0?(n(),l("div",Wt,[a(d)])):p("",!0)],64)}const Ht=y(zt,[["render",Kt]]),Jt=Y("nanobanana"),Qt=k({name:"NanobananaIndex",components:{ConfigPanel:lt,Layout:ve,RecentPanel:Ht},inject:["initialized"],data(){return{task:void 0,job:0,loading:!1}},computed:{applicationsLoading(){return this.$store.state.nanobanana?.status?.getApplications===F.Request},tasksLoading(){return this.$store.state.nanobanana?.status?.getTasks===F.Request},credential(){return this.$store.state.nanobanana?.credential},config(){return this.$store.state.nanobanana?.config},application(){return this.$store.state.nanobanana?.application},tasks(){return this.$store.state.nanobanana?.tasks}},watch:{tasks:{handler(e,t){e?.items?.length>t?.items?.length&&console.debug("new tasks detected")},deep:!0},initialized:{async handler(e){e&&(console.debug("layout initialized"),await this.onGetTasks(),await this.onScrollDown(),this.job=window.setInterval(()=>{this.onGetTasks()},5e3))},immediate:!0}},async mounted(){await this.onGetService()},async unmounted(){window.clearInterval(this.job)},methods:{async onReachTop(){await ee({tasks:this.tasks,getTasks:()=>this.tasks,loading:this.loading,setLoading:e=>this.loading=e,isBlocked:()=>this.tasksLoading,fetch:e=>this.onGetTasks({createdAtMax:e}),getScrollElement:()=>this.getTasksScrollElement()})},async onGetService(){console.debug("start onGetService"),await this.$store.dispatch("nanobanana/getService"),console.debug("end onGetService")},async onGetApplication(){console.debug("start onGetApplication"),await this.$store.dispatch("nanobanana/getApplications"),console.debug("end onGetApplication"),await this.onGetTasks()},async onScrollDown(){await this.$nextTick();const e=this.getTasksScrollElement();e&&(e.scrollTop=e.scrollHeight)},async onGetTasks(e){if(this.applicationsLoading||this.tasksLoading){console.debug("loading");return}console.debug("start onGetTasks",e);const{limit:t=20,createdAtMin:$,createdAtMax:i}=e||{};console.debug("limit",t,"createdAtMin",$,"createdAtMax",i),await this.$store.dispatch("nanobanana/getTasks",{limit:t,createdAtMin:$,createdAtMax:i})},async onGenerate(){const e={...this.config||{}},t=Array.isArray(e?.image_urls)&&e.image_urls.length>0;delete e.action,!t&&"image_urls"in e&&delete e.image_urls,e?.aspect_ratio||delete e.aspect_ratio,e?.model!==P&&"resolution"in e&&delete e.resolution,e?.model===P&&!e?.resolution&&(e.resolution=S);const $={...e,action:t?"edit":"generate",callback_url:Jt},i=this.credential?.token;if(!i){console.error("no token specified");return}R.info(this.$t("nanobanana.message.startingTask")),X("nanobanana",re.generate($,{token:i})).then(()=>{R.success(this.$t("nanobanana.message.startTaskSuccess"))}).catch(b=>{const f=b?.response?.data;f?.error?.code===le?R.error(this.$t("nanobanana.message.usedUp")):R.error(this.$t("nanobanana.message.startTaskFailed")+(f?.error?.message||""))}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})},getTasksScrollElement(){return this.$refs.recentPanel?.getScrollElement?.()}}});function Xt(e,t,$,i,b,f){const h=s("config-panel"),_=s("recent-panel"),m=s("layout");return n(),V(m,null,{config:g(()=>[a(h,{onGenerate:e.onGenerate},null,8,["onGenerate"])]),result:g(()=>[a(_,{ref:"recentPanel",loading:e.loading,onReachTop:e.onReachTop},null,8,["loading","onReachTop"])]),_:1})}const ja=y(Qt,[["render",Xt]]);export{ja as default};
|