@acedatacloud/nexior 3.362.1 → 3.362.2
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/{ApiCodeButton-DIudRxxI.js → ApiCodeButton-BAkOBxie.js} +1 -1
- package/dist/assets/{ApiCodeDialog-AMz3CKZY.js → ApiCodeDialog-bM2jYt0k.js} +1 -1
- package/dist/assets/{Artifacts-D8eNkKQf.js → Artifacts-CkTmSnAa.js} +1 -1
- package/dist/assets/{AskUserQuestionCard-ChTmsjni.js → AskUserQuestionCard-CCaEhOiC.js} +1 -1
- package/dist/assets/{AudioPreview-DwauwXVF.js → AudioPreview-LQ8lEoP-.js} +1 -1
- package/dist/assets/{Auth-CVo2OYYw.js → Auth-_gOgHSU0.js} +1 -1
- package/dist/assets/{Bare-BSbg96mw.js → Bare-CNmtrwAx.js} +1 -1
- package/dist/assets/{BotPlaceholder-CcjsDj0N.js → BotPlaceholder-CBS4lAjm.js} +1 -1
- package/dist/assets/{BottomFooter-BFX2fc7R.js → BottomFooter-Bk_ZWz98.js} +1 -1
- package/dist/assets/{BrowseConnectors-B6KlcBBR.js → BrowseConnectors-DndkuWdA.js} +1 -1
- package/dist/assets/{BrowserPairingDialog-lrUojEAp.js → BrowserPairingDialog-CPIZhuOj.js} +1 -1
- package/dist/assets/{Callback-2bqQLGoE.js → Callback-Bh4XDEf8.js} +1 -1
- package/dist/assets/{CodeSnippet-CwOMahTK.js → CodeSnippet-CK5oFt1I.js} +1 -1
- package/dist/assets/{Console-Db6GNS83.js → Console-DhPXYBDT.js} +1 -1
- package/dist/assets/{Consumption-C9CaJF7U.js → Consumption-CQoAp-2Q.js} +1 -1
- package/dist/assets/{Conversation-IqNW4YZ-.js → Conversation-DrM-uZU6.js} +1 -1
- package/dist/assets/{Conversation-DglFEAPr.js → Conversation-r8FTBMps.js} +1 -1
- package/dist/assets/{CopyToClipboard-nyXqwbLh.js → CopyToClipboard-Bt4pNx5a.js} +1 -1
- package/dist/assets/{Detail-DG13uCAr.js → Detail-CSr9u2KG.js} +1 -1
- package/dist/assets/{Extra-B49x31l8.js → Extra-mJj6WzGA.js} +1 -1
- package/dist/assets/{FilePreview-C4GxmMRF.js → FilePreview-YdzEP0Sz.js} +1 -1
- package/dist/assets/{Hailuo-BzxsD5nG.js → Hailuo-vHQDSZct.js} +1 -1
- package/dist/assets/{History-C0acbsVH.js → History-DFR9ymyJ.js} +1 -1
- package/dist/assets/{ImagePreview-B3pTp0IA.js → ImagePreview-BtYz7VS_.js} +1 -1
- package/dist/assets/{ImageWrapper-DvLNHGDt.js → ImageWrapper-CyPuHE9N.js} +1 -1
- package/dist/assets/{Index-vfpw8Ryr.js → Index-3kZfb74S.js} +1 -1
- package/dist/assets/{Index-DRssSG2w.js → Index-88JgM0mD.js} +1 -1
- package/dist/assets/{Index-MndZjgtv.js → Index-9_g65T_M.js} +1 -1
- package/dist/assets/{Index-Ov6vrxs1.js → Index-B1qLgswn.js} +1 -1
- package/dist/assets/{Index-vIvpGT6K.js → Index-B2kQl_Nl.js} +1 -1
- package/dist/assets/{Index-BtjVb6RR.js → Index-B2tLj-vo.js} +1 -1
- package/dist/assets/{Index-p0Ql3czf.js → Index-BBuN1uFz.js} +1 -1
- package/dist/assets/{Index-VKI-TcJn.js → Index-BNlrj2wD.js} +1 -1
- package/dist/assets/{Index-B_D9X_oI.js → Index-BNxzh_mB.js} +1 -1
- package/dist/assets/{Index-D0pjVLav.js → Index-BSQTk3rZ.js} +1 -1
- package/dist/assets/{Index-nNMpJ2FN.js → Index-B_uHHqnQ.js} +1 -1
- package/dist/assets/{Index-DcDtXaKF.js → Index-Bbf-APQ0.js} +1 -1
- package/dist/assets/{Index-MKvp_emB.js → Index-Bkn1S261.js} +1 -1
- package/dist/assets/{Index-Z4fm5t9A.js → Index-BoqiiuYt.js} +1 -1
- package/dist/assets/{Index-C2DbCb0Y.js → Index-CExuBc9s.js} +1 -1
- package/dist/assets/{Index-BxtsIxGb.js → Index-CK1x76Mr.js} +1 -1
- package/dist/assets/{Index-DAF4sU9V.js → Index-CLo709z7.js} +1 -1
- package/dist/assets/{Index-DxxTvyBx.js → Index-CXszXqLV.js} +1 -1
- package/dist/assets/{Index-eUVBRjXl2.js → Index-CjsRfqWv2.js} +1 -1
- package/dist/assets/{Index-DhytiHUr.js → Index-CvTkZUQP.js} +1 -1
- package/dist/assets/{Index-DKiDukKy.js → Index-D1G9rIK2.js} +1 -1
- package/dist/assets/{Index-DonFAQWZ.js → Index-D4AvUtiV.js} +1 -1
- package/dist/assets/{Index-BMezBe6U.js → Index-DMpNerdn.js} +1 -1
- package/dist/assets/{Index-BgbyPmHq.js → Index-DOFJea9M.js} +1 -1
- package/dist/assets/{Index-BXBrUh1P.js → Index-DQmVpjTa.js} +1 -1
- package/dist/assets/{Index-DjAG8grx.js → Index-DSOompWN.js} +1 -1
- package/dist/assets/{Index-r5B4Dq-2.js → Index-DbLuorqR.js} +1 -1
- package/dist/assets/{Index-Bh2dtlI7.js → Index-Dl2CguWw.js} +1 -1
- package/dist/assets/{Index-DZgqRKVG.js → Index-JDa64RPr.js} +1 -1
- package/dist/assets/{Index-CgEF-1-u.js → Index-Ogxhmlx4.js} +1 -1
- package/dist/assets/{Index-BL-mFaQb.js → Index-Ui9BQQkK.js} +1 -1
- package/dist/assets/{Index-DJJxJ3Lk.js → Index-XMu_83Jn.js} +1 -1
- package/dist/assets/{Index-CZL75q6P.js → Index-YQBqTqZX.js} +1 -1
- package/dist/assets/{Index-BAlZUEas.js → Index-hVwk1uL4.js} +1 -1
- package/dist/assets/{Index-COfIwaFT.js → Index-mgP9Xz4i.js} +1 -1
- package/dist/assets/{Invitees-CuVQBM7H.js → Invitees-DKvjecGv.js} +1 -1
- package/dist/assets/{List-uzfbN_u3.js → List-CFZ-KClZ.js} +1 -1
- package/dist/assets/{List-BzEx-0LO.js → List-DO-95ZUQ.js} +1 -1
- package/dist/assets/{List-BB8RcJux.js → List-Do1_hkFr.js} +1 -1
- package/dist/assets/{LocalTools-D35GdcSy.js → LocalTools-B2UBvw3T.js} +1 -1
- package/dist/assets/{LocalTools-XS3oZghb.js → LocalTools-Y7QXXXv1.js} +1 -1
- package/dist/assets/{Logo-BY3VFfFs.js → Logo-CkZtONM-.js} +1 -1
- package/dist/assets/{Main-CBAFdTPR.js → Main-B6vmpMi_.js} +1 -1
- package/dist/assets/{Message-BF42_PCn.js → Message-bYB4o6ns.js} +1 -1
- package/dist/assets/{Model-nm8Fnyph.js → Model-2qlcrdM5.js} +1 -1
- package/dist/assets/{Navigator-D23Ib1Hi.js → Navigator-UlEQflv0.js} +3 -3
- package/dist/assets/{NotFound-DN5sVd8M.js → NotFound-q1Yogbs6.js} +1 -1
- package/dist/assets/{PageHeader-B1q0jwN6.js → PageHeader-DFCQCtrg.js} +1 -1
- package/dist/assets/{Pay-D9Kv1186.js → Pay-D55gLkzf.js} +1 -1
- package/dist/assets/{Player-C_YyKepF.js → Player-BZsDcGuL.js} +1 -1
- package/dist/assets/{Poivelle-UtzxHT5d.js → Poivelle-D57_tC8_.js} +1 -1
- package/dist/assets/{RealtimeCall-FQbguoqK.js → RealtimeCall-DyuHg2Bi.js} +1 -1
- package/dist/assets/{ReportButton-1gsHQqMT.js → ReportButton-DzpX6LE5.js} +1 -1
- package/dist/assets/{ReportDialog-CJ_xU6u5.js → ReportDialog-CCnN0lJe.js} +1 -1
- package/dist/assets/{ScenarioPaymentMode-DWw8ADoG.js → ScenarioPaymentMode-CqRu92vx.js} +1 -1
- package/dist/assets/{ScheduledTasks-BP1KMFRr.js → ScheduledTasks-QN5AxC-v.js} +1 -1
- package/dist/assets/{SolanaWalletPickerDialog-3vO_6_ni.js → SolanaWalletPickerDialog-DOSCBh2r.js} +1 -1
- package/dist/assets/{Status-BZf99OJ2.js → Status-COhaglgv.js} +1 -1
- package/dist/assets/{Subscribe-DYCREkW6.js → Subscribe-DAz47Cap.js} +1 -1
- package/dist/assets/{TabSwitcher-egiFFb-J.js → TabSwitcher-BGVRfEet.js} +1 -1
- package/dist/assets/{Tts-qV8vFmKk.js → Tts-DMDt8Xcl.js} +1 -1
- package/dist/assets/{UpdateMenuItem-CVUxFsJv.js → UpdateMenuItem-D2dQe6OD.js} +1 -1
- package/dist/assets/{VideoPlayer-BhdFI_Dl.js → VideoPlayer-Coh2RFTi.js} +1 -1
- package/dist/assets/{VideoPreview-Di22AVT5.js → VideoPreview-C5oYTkjm.js} +1 -1
- package/dist/assets/arrow-down-CqF-cU9W.js +1 -0
- package/dist/assets/{arrow-down-wide-narrow-CgYjJvXS.js → arrow-down-wide-narrow-B-Hw44Fp.js} +1 -1
- package/dist/assets/arrow-left-CoDtXesZ.js +1 -0
- package/dist/assets/arrow-right-Bkg9RgYl.js +1 -0
- package/dist/assets/arrow-up-BzNg9m4O.js +1 -0
- package/dist/assets/{authorizeFlow-ao43McEv.js → authorizeFlow-BcYpJg7c.js} +1 -1
- package/dist/assets/{basic-C4QDBl8P.js → basic-DiyvIczP.js} +1 -1
- package/dist/assets/{book-open-Bab7YcIv.js → book-open-DwN99mbQ.js} +1 -1
- package/dist/assets/{box-BJ5AJ81R.js → box-BVjGLFxS.js} +1 -1
- package/dist/assets/{boxes-BoLp7N6F.js → boxes-c9GATTtV.js} +1 -1
- package/dist/assets/{brain-NpLdGyBR.js → brain-BB-39nEa.js} +1 -1
- package/dist/assets/{chart-no-axes-combined-BY5zW6uj.js → chart-no-axes-combined-DO-Wi2EC.js} +1 -1
- package/dist/assets/{chat-Bf5MEq2o.js → chat-Npxrt_kQ.js} +1 -1
- package/dist/assets/check-6cv1CZ0l.js +1 -0
- package/dist/assets/chevron-down-Ben_YIW6.js +1 -0
- package/dist/assets/chevron-right-C3lMw0qC.js +1 -0
- package/dist/assets/circle-check-CDbPCRg6.js +1 -0
- package/dist/assets/{circle-question-mark-D7VbGHAG.js → circle-question-mark-CSxm0VWD.js} +1 -1
- package/dist/assets/{clipboard-list-BsoYJiST.js → clipboard-list-BxHeRww6.js} +1 -1
- package/dist/assets/clock-CEYSZpiZ.js +1 -0
- package/dist/assets/code-DnM_OC9R.js +1 -0
- package/dist/assets/{codingBridge-CyiyRM8R.js → codingBridge-Dl514gEP.js} +1 -1
- package/dist/assets/{codingBridgeNotify-Cit5W2zK.js → codingBridgeNotify-CDQKwxBX.js} +2 -2
- package/dist/assets/{coins-DbGgS-AR.js → coins-sq7NECLS.js} +1 -1
- package/dist/assets/{copy-4zd7yf6i.js → copy-C5QvMUhF.js} +1 -1
- package/dist/assets/{createTaskActions-Bz6VG3Uu.js → createTaskActions-Buml4YZY.js} +1 -1
- package/dist/assets/{digitalhuman-CBnSepv2.js → digitalhuman-BtCdcmzi.js} +1 -1
- package/dist/assets/{dollar-sign-D4SZZ1Oz.js → dollar-sign-ZSrTaxmA.js} +1 -1
- package/dist/assets/{download-BKhAyEyU.js → download-PdN43Ii9.js} +1 -1
- package/dist/assets/{drawer-CeDP7s5K.js → drawer-C9ziMa5D.js} +1 -1
- package/dist/assets/{dropdown-DDlYx9KL.js → dropdown-BWJ6QGiC.js} +1 -1
- package/dist/assets/{dropdown-D3dFr0f-.js → dropdown-CirLmBbl.js} +1 -1
- package/dist/assets/{ellipsis-DFMe7-sS.js → ellipsis-DCgVjflW.js} +1 -1
- package/dist/assets/esm-D_6POuvI.js +1 -0
- package/dist/assets/{esm-BhQt2uuY.js → esm-Hgtd-cm8.js} +2 -2
- package/dist/assets/{esm-BryDLgGh.js → esm-oy9-x-4m.js} +2 -2
- package/dist/assets/{external-link-C41sZeHD.js → external-link-Ik947zOn.js} +1 -1
- package/dist/assets/{eye-CkaUg9f1.js → eye-VFrDoEk4.js} +1 -1
- package/dist/assets/{file-DO3yMR77.js → file-BJi6f11L.js} +1 -1
- package/dist/assets/{file-output-DV-q7uLp.js → file-output-CUNyohca.js} +1 -1
- package/dist/assets/{file-text-O5-3uk2y.js → file-text-CVGRb3Sl.js} +1 -1
- package/dist/assets/{fish-DFkJBKda.js → fish-IghNxwsq.js} +1 -1
- package/dist/assets/{flux-HSRZouEZ.js → flux-B9-kDmTH.js} +1 -1
- package/dist/assets/{folder-BzA15WWq.js → folder-BNDnFq4V.js} +1 -1
- package/dist/assets/gauge-aYfGw3VQ.js +1 -0
- package/dist/assets/{globe-DhjDen2y.js → globe-jnFJnwZn.js} +1 -1
- package/dist/assets/{grokvideo-xHnGTrRw.js → grokvideo-B5anjmYK.js} +1 -1
- package/dist/assets/{hailuo-V9lqP4zu.js → hailuo-Cv8EX1ss.js} +1 -1
- package/dist/assets/{headphones-BZuEeWNP.js → headphones-B212Wbvy.js} +1 -1
- package/dist/assets/{history-BZwF1lGh.js → history-C_-QR2T6.js} +1 -1
- package/dist/assets/{house-B4mXOXPi.js → house-D_GT9GCN.js} +1 -1
- package/dist/assets/{image-DQI8T4FE.js → image-Bh2YK2ql.js} +1 -1
- package/dist/assets/{index-tH-0CTCd.js → index-BOCSBfUe.js} +3 -3
- package/dist/assets/{index.es-CGoOCnuB.js → index.es-DcSmGa6z.js} +1 -1
- package/dist/assets/{info-CyK20dY7.js → info-DlDYYYyz.js} +1 -1
- package/dist/assets/{input-number-BSo_V5QG.js → input-number-D2KUI1kN.js} +1 -1
- package/dist/assets/{key-round-xv63coWd.js → key-round-C7Ox29cM.js} +1 -1
- package/dist/assets/{kling-BhpwBBma.js → kling-DI9XZTw6.js} +1 -1
- package/dist/assets/{languages-Dv63bUCX.js → languages-CeIhdhQe.js} +1 -1
- package/dist/assets/{laptop-vnGjGvnv.js → laptop-DWSIh2KY.js} +1 -1
- package/dist/assets/{lightbulb-BbPEWvR2.js → lightbulb-6SCo6aGb.js} +1 -1
- package/dist/assets/{link-DeOW2gW6.js → link-Cag6_8_J.js} +1 -1
- package/dist/assets/loader-circle-CD3osO-L.js +1 -0
- package/dist/assets/{lock-DG-dtJA5.js → lock-BfsTRjoQ.js} +1 -1
- package/dist/assets/{luma-xxktCS08.js → luma-My7-Qacg.js} +1 -1
- package/dist/assets/{maestro-DhdiwESW.js → maestro-DtFqFbfA.js} +1 -1
- package/dist/assets/{mail-C00bUMU0.js → mail-DTKcIUlX.js} +1 -1
- package/dist/assets/{message-circle-BvFoZuLn.js → message-circle-CIzM-ib3.js} +1 -1
- package/dist/assets/{mic-DTHGpwvU.js → mic-lqwIrsvy.js} +1 -1
- package/dist/assets/{midjourney-BfkVcl3d.js → midjourney-B6ZymwTx.js} +1 -1
- package/dist/assets/{minimax-6Nzhuvtu.js → minimax-BOtBLzBq.js} +1 -1
- package/dist/assets/{mobileLocalExec-DMA8aoKn.js → mobileLocalExec-BPI41lV6.js} +2 -2
- package/dist/assets/{monitor-DG18MHGW.js → monitor-ipgmClj0.js} +1 -1
- package/dist/assets/{mouse-pointer-2-O-LTXkT8.js → mouse-pointer-2-BrOji6Vv.js} +1 -1
- package/dist/assets/music-2-CuQ41Wjt.js +1 -0
- package/dist/assets/{nanobanana-Dcz3Mo5n.js → nanobanana-x8-A4AiB.js} +1 -1
- package/dist/assets/{omni-Cz2-bgqy.js → omni-CuQKUq0R.js} +1 -1
- package/dist/assets/{openaiimage-Ho15AY5K.js → openaiimage-DWNeaPEk.js} +1 -1
- package/dist/assets/{pagination-D_OLm_wK.js → pagination-A4M5O80l.js} +1 -1
- package/dist/assets/{pagination-D4-HZqNr.js → pagination-B8FPaRIA.js} +1 -1
- package/dist/assets/{pagination-DaaFgNHt.js → pagination-CacbU_h5.js} +1 -1
- package/dist/assets/{palette-0KP0bnly.js → palette-BH9uLfke.js} +1 -1
- package/dist/assets/{paperclip-BTSA40S7.js → paperclip-DU2unXPs.js} +1 -1
- package/dist/assets/{pause-B-H8URPW.js → pause-DKVsTcCD.js} +1 -1
- package/dist/assets/{pencil-BlBZvi0T.js → pencil-DDlb_Eqp.js} +1 -1
- package/dist/assets/{pika-CRb3tq6g.js → pika-Twbh_o5m.js} +1 -1
- package/dist/assets/{pixverse-DEWC9AyS.js → pixverse-CZeByPsP.js} +1 -1
- package/dist/assets/play-DFLhwX31.js +1 -0
- package/dist/assets/{plug-Cuc4dhkk.js → plug-pRt1uLP-.js} +1 -1
- package/dist/assets/plus-2XEDA9oZ.js +1 -0
- package/dist/assets/{poivelle-CqMX5N7q.js → poivelle-CwbJUDMA.js} +1 -1
- package/dist/assets/{popover-BkWCkkdT.js → popover-CujDeM9r.js} +1 -1
- package/dist/assets/{producer-BdLv7STz.js → producer-Cp-dqK1U.js} +1 -1
- package/dist/assets/{qrart-ChekNCNW.js → qrart-BMaggLhc.js} +1 -1
- package/dist/assets/{realtime-BjMaVJbi.js → realtime-Cof4IZ5A.js} +1 -1
- package/dist/assets/{refresh-cw-B_FsN_SK.js → refresh-cw-zGJ1ywed.js} +1 -1
- package/dist/assets/rotate-ccw-C6ZbozHT.js +1 -0
- package/dist/assets/rotate-cw-DZMWXKfh.js +1 -0
- package/dist/assets/search-CYoqYABP.js +1 -0
- package/dist/assets/{seedance-C_ENfYcZ.js → seedance-qDCXPkNU.js} +1 -1
- package/dist/assets/{seedream-C3hwz85l.js → seedream-D8s98koo.js} +1 -1
- package/dist/assets/{select-Cry04isu.js → select-Bs3ZkE9R.js} +1 -1
- package/dist/assets/{serp-DU-Nw065.js → serp-CFeB3pNt.js} +1 -1
- package/dist/assets/{shield-t9LMb1Xc.js → shield-8Az-w1Iq.js} +1 -1
- package/dist/assets/{shuffle-BHueKLH7.js → shuffle-BVyO1vuc.js} +1 -1
- package/dist/assets/{slider-D4YS_zkQ.js → slider-CrHYkY12.js} +1 -1
- package/dist/assets/{solana-wallets-V9p2h4AR.js → solana-wallets-BMvn-gtj.js} +2 -2
- package/dist/assets/{sora-D15j7uYZ.js → sora-B6njcLzj.js} +1 -1
- package/dist/assets/{sparkles-BZs6lFj5.js → sparkles-DVlEhR_I.js} +1 -1
- package/dist/assets/square-zuxAeD3b.js +1 -0
- package/dist/assets/{store-BsYZWBiJ.js → store-DdwflqCY.js} +1 -1
- package/dist/assets/{suno-CuDQjPtc.js → suno-DKzj3RPQ.js} +1 -1
- package/dist/assets/{switch-BwEZ0csi.js → switch-DRwxl6Da.js} +1 -1
- package/dist/assets/{table-BGQzT6EQ.js → table-CUPLKsew.js} +1 -1
- package/dist/assets/{tag-BrlIVDgW.js → tag-CDE6lSVO.js} +1 -1
- package/dist/assets/terminal-D7o7TjCB.js +1 -0
- package/dist/assets/{time-picker-iek2pzFH.js → time-picker-m83G80k1.js} +1 -1
- package/dist/assets/{tooltip-DZp4IZF9.js → tooltip-DtiQm14e.js} +1 -1
- package/dist/assets/{trash-2-BKP--pJx.js → trash-2-84jnyEiH.js} +1 -1
- package/dist/assets/{triangle-alert-BWbRHVGQ.js → triangle-alert-DijP-r53.js} +1 -1
- package/dist/assets/{upload-a1-BMlZq.js → upload-B-GObY7P.js} +1 -1
- package/dist/assets/user-DmAQfp79.js +1 -0
- package/dist/assets/{veo-zkl92u3y.js → veo-DplvtxRw.js} +1 -1
- package/dist/assets/{video-DdyWbbXd.js → video-BIEggF64.js} +1 -1
- package/dist/assets/{volume-2-DG4VfLGb.js → volume-2-CzcGTWGH.js} +1 -1
- package/dist/assets/{wallet-DdIsaOE1.js → wallet-HjhzyIUc.js} +1 -1
- package/dist/assets/{wan-D-jBb6GG.js → wan-CXPoan9e.js} +1 -1
- package/dist/assets/{wand-sparkles-Dz4k9kgj.js → wand-sparkles-dlhWJtt5.js} +1 -1
- package/dist/assets/{web-Ds-cqfQD.js → web-BimdZWc-.js} +1 -1
- package/dist/assets/{web-d6DcSxnt.js → web-Cos5bHDu.js} +1 -1
- package/dist/assets/{web-B_N4-ol2.js → web-CpLFSuwG.js} +1 -1
- package/dist/assets/{web-5mbxIylY.js → web-D3WhI-pp.js} +1 -1
- package/dist/assets/{web-DJTVFwmb.js → web-DnTVcAMQ.js} +1 -1
- package/dist/assets/{webextrator-DzKMduar.js → webextrator-BPt59Czo.js} +1 -1
- package/dist/assets/{zap-BTTyJZ27.js → zap-CVI9h9l6.js} +1 -1
- package/dist/index.html +1 -1
- package/package.json +1 -1
- package/dist/assets/arrow-down-Dl3wkdCw.js +0 -1
- package/dist/assets/arrow-left-BwR8tLDB.js +0 -1
- package/dist/assets/arrow-right-hr8UK8a-.js +0 -1
- package/dist/assets/arrow-up-BbHwHFgn.js +0 -1
- package/dist/assets/check-D8Lj0sM4.js +0 -1
- package/dist/assets/chevron-down-Benh5Cnm.js +0 -1
- package/dist/assets/chevron-right-BNQi5sER.js +0 -1
- package/dist/assets/circle-check-D89Edjsg.js +0 -1
- package/dist/assets/clock-0ZWwZ6xH.js +0 -1
- package/dist/assets/code-koBCRZ3n.js +0 -1
- package/dist/assets/esm-CFDZBZw0.js +0 -1
- package/dist/assets/gauge-Btg3K-RF.js +0 -1
- package/dist/assets/loader-circle-Dj1vDw3A.js +0 -1
- package/dist/assets/music-2-D0K7pGRN.js +0 -1
- package/dist/assets/play-Cty_243Z.js +0 -1
- package/dist/assets/plus-DpgRyCuN.js +0 -1
- package/dist/assets/rotate-ccw-Bq470u2n.js +0 -1
- package/dist/assets/rotate-cw-DCAZXvBL.js +0 -1
- package/dist/assets/search-DLupBfkC.js +0 -1
- package/dist/assets/square-CwIvTlwo.js +0 -1
- package/dist/assets/terminal-tykgfl_r.js +0 -1
- package/dist/assets/user-CLaNJtdg.js +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
import"./rolldown-runtime--c01j_DQ.js";import{A as e,C as t,Gt as n,I as r,Jt as i,L as a,M as o,N as s,T as c,at as l,ht as u,it as d,j as f,mt as p,rt as m,tt as h,x as g,z as _}from"./vendor-chart-Dw-P17PN.js";import{r as v,t as y}from"./select-Cry04isu.js";import{t as b}from"./upload-uY7VeHmd.js";import{t as x}from"./tooltip-DZp4IZF9.js";import{t as S}from"./alert-BprQRUmf.js";import{h as C,v as w}from"./models-CwklOk8Z.js";import{t as T}from"./drawer-CeDP7s5K.js";import{t as E}from"./input-number-BSo_V5QG.js";import{t as D}from"./slider-D4YS_zkQ.js";import{t as O}from"./clock-0ZWwZ6xH.js";import{a as k,i as A,n as j,r as ee,s as M,t as N}from"./pagination-D4-HZqNr.js";import{t as P}from"./info-CyK20dY7.js";import{t as F}from"./trash-2-BKP--pJx.js";import{t as te}from"./triangle-alert-BWbRHVGQ.js";import{t as ne}from"./upload-a1-BMlZq.js";import{t as I}from"./wand-sparkles-Dz4k9kgj.js";import{fr as re,mr as ie,pr as L}from"./constants-DlrPFkyM.js";import{$r as R,$t as z,Jt as B,Ma as V,O as H,Oi as U,Qt as W,Zr as G,cr as K,en as q,hi as J,ia as Y,in as ae,lr as X,mi as Z,nn as oe,pn as se,tn as ce,va as Q}from"./index-tH-0CTCd.js";import{t as le}from"./CopyToClipboard-nyXqwbLh.js";import{t as ue}from"./ReportButton-1gsHQqMT.js";import{t as de}from"./ImagePreview-B3pTp0IA.js";import{n as fe}from"./taskDrawerMixin-DyAUhFEq.js";import{t as pe}from"./Consumption-C9CaJF7U.js";import{t as me}from"./ScenarioPaymentMode-DWw8ADoG.js";import{t as he}from"./ApiCodeButton-DIudRxxI.js";import{t as ge}from"./BotPlaceholder-CcjsDj0N.js";import{t as _e}from"./ImageWrapper-DvLNHGDt.js";var ve=_({name:`LayoutFlux`,components:{MagicIcon:I,ElDrawer:T,ElButton:V},mixins:[fe]}),ye={class:`main flex flex-row flex-1`},be={class:`config w-[320px] flex-none h-full min-h-0 overflow-hidden flex flex-col bg-[var(--app-sidebar-bg)] border-r border-[var(--app-border-subtle)]`},xe={class:`result h-full p-6 flex-1 flex flex-col min-w-0 overflow-x-hidden bg-[var(--app-content-bg)]`};function Se(t,n,r,i,o,c){let f=l(`magic-icon`),m=l(`el-button`),_=l(`el-drawer`);return h(),s(`div`,ye,[e(`div`,be,[d(t.$slots,`config`,{},void 0,!0)]),e(`div`,xe,[d(t.$slots,`result`,{},void 0,!0)]),u(a(m,{circle:``,class:`menu`,"aria-label":t.$t(`common.button.openMenu`),title:t.$t(`common.button.openMenu`),onClick:n[0]||=e=>t.drawer=!0},{default:p(()=>[a(f,{size:`1em`,"aria-hidden":`true`,focusable:`false`})]),_:1},8,[`aria-label`,`title`]),[[g,!t.tasksEmpty]]),a(_,{modelValue:t.drawer,"onUpdate:modelValue":n[1]||=e=>t.drawer=e,direction:`ltr`,"with-header":!1,size:`340px`,class:`drawer generator-drawer`},{default:p(()=>[d(t.$slots,`config`,{},void 0,!0)]),_:3},8,[`modelValue`])])}var Ce=H(ve,[[`render`,Se],[`__scopeId`,`data-v-72e82d52`]]),we=_({name:`ModelSelector`,components:{ElSelect:v,ElOption:y},props:{modelValue:{type:String,default:void 0}},emits:[`update:modelValue`],data(){return{options:[{value:`flux-dev`,label:`flux-dev`},{value:`flux-pro`,label:`flux-pro`},{value:`flux-kontext-pro`,label:`flux-kontext-pro`},{value:`flux-kontext-max`,label:`flux-kontext-max`},{value:`flux-2-flex`,label:`flux-2-flex`},{value:`flux-2-pro`,label:`flux-2-pro`},{value:`flux-2-max`,label:`flux-2-max`}]}},computed:{value:{get(){return this.$store.state.flux?.config?.model},set(e){this.$store.commit(`flux/setConfig`,{...this.$store.state.flux.config,model:e})}}},mounted(){this.value||=ie}}),Te={class:`field`},Ee={class:`title font-bold`};function De(t,n,r,o,u,d){let g=l(`el-option`),_=l(`el-select`);return h(),s(`div`,Te,[e(`h2`,Ee,i(t.$t(`flux.name.model`)),1),a(_,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,class:`value`,placeholder:t.$t(`flux.placeholder.select`)},{default:p(()=>[(h(!0),s(c,null,m(t.options,e=>(h(),f(g,{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`])])}var Oe=H(we,[[`render`,De],[`__scopeId`,`data-v-e9b17945`]]),ke=_({name:`CountSelector`,components:{ElSlider:D,InfoIcon:k,ElInputNumber:E},computed:{value:{get(){return this.$store.state.flux?.config?.count},set(e){console.debug(`set count`,e),this.$store.commit(`flux/setConfig`,{...this.$store.state.flux?.config,count:e})}}},mounted(){this.value||=1}}),Ae={class:`flex justify-between`},je={class:`flex justify-start items-center`},Me={class:`text-sm font-bold`},Ne={class:`flex justify-end items-center`},Pe={class:`w-full`};function Fe(t,n,r,o,c,u){let d=l(`info-icon`),f=l(`el-input-number`),p=l(`el-slider`);return h(),s(`div`,null,[e(`div`,Ae,[e(`div`,je,[e(`span`,Me,i(t.$t(`flux.name.numbers`)),1),a(d,{content:t.$t(`flux.description.numbers`)},null,8,[`content`])]),e(`div`,Ne,[a(f,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,"controls-position":`right`},null,8,[`modelValue`])])]),e(`div`,Pe,[a(p,{modelValue:t.value,"onUpdate:modelValue":n[1]||=e=>t.value=e,min:1,max:4,step:1},null,8,[`modelValue`])])])}var Ie=H(ke,[[`render`,Fe]]),Le=_({name:`ActionSelector`,components:{ElSelect:v,ElOption:y},props:{modelValue:{type:String,default:void 0}},emits:[`update:modelValue`],data(){return{options:[{value:`generate`,label:this.$t(`flux.name.generate`)},{value:`edits`,label:this.$t(`flux.name.edits`)}]}},computed:{value:{get(){return this.$store.state.flux?.config?.action},set(e){this.$store.commit(`flux/setConfig`,{...this.$store.state.flux.config,action:e})}}},mounted(){this.value||=L}}),Re={class:`field`},ze={class:`title font-bold`};function Be(t,n,r,o,u,d){let g=l(`el-option`),_=l(`el-select`);return h(),s(`div`,Re,[e(`h2`,ze,i(t.$t(`flux.name.task`)),1),a(_,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,class:`value`,placeholder:t.$t(`flux.placeholder.select`)},{default:p(()=>[(h(!0),s(c,null,m(t.options,e=>(h(),f(g,{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`])])}var Ve=H(Le,[[`render`,Be],[`__scopeId`,`data-v-81fd05e5`]]),He=_({name:`ImageUrlInput`,components:{UploadIcon:ne,ElUpload:b,ElButton:V,InfoIcon:k,ImagePreview:de},mixins:[oe,ce,z,B],emits:[`change`],data(){return{fileList:[],uploadUrl:Y()+`/api/v1/files/`}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},urls(){return this.fileList.map(e=>e?.response?.file_url)}},watch:{urls:{handler(e){console.debug(`URLs changed:`,e),this.$store.commit(`flux/setConfig`,{...this.$store.state.flux.config,image_url:e[0]})}}},methods:{onExceed(){w.warning(this.$t(`flux.message.uploadStartImageExceed`))},onError(){w.error(this.$t(`flux.message.uploadStartImageError`))}}}),Ue={class:`relative`},We={class:`flex justify-between`},Ge={class:`flex justify-start items-center`},Ke={class:`text-sm font-bold`};function qe(t,n,o,c,u,d){let f=l(`info-icon`),m=l(`image-preview`),g=l(`upload-icon`),_=l(`el-button`),v=l(`el-upload`);return h(),s(`div`,Ue,[e(`div`,We,[e(`div`,Ge,[e(`span`,Ke,i(t.$t(`flux.name.imageUrl`)),1),a(f,{content:t.$t(`flux.description.imageUrl`)},null,8,[`content`])])]),a(v,{ref:`uploader`,"file-list":t.fileList,"onUpdate:fileList":n[0]||=e=>t.fileList=e,name:`file`,limit:5,class:`upload-wrapper`,accept:`.png,.jpg,.jpeg,.gif,.bmp,.webp`,multiple:!0,"list-type":`picture`,"before-upload":t.beforeUploadSizeGuard,action:t.uploadUrl,"on-exceed":t.onExceed,"on-error":t.onError,headers:t.headers},{file:p(({file:e})=>[a(m,{url:e.url||e.response?.file_url,name:e.name,percentage:e.percentage,onRemove:n=>t.fileList.splice(t.fileList.indexOf(e),1)},null,8,[`url`,`name`,`percentage`,`onRemove`])]),default:p(()=>[a(_,{round:``,type:`primary`,size:`small`,class:`btn btn-upload`},{default:p(()=>[a(g,{class:`icon mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`flux.button.uploadImageUrl`)),1)]),_:1})]),_:1},8,[`file-list`,`before-upload`,`action`,`on-exceed`,`on-error`,`headers`])])}var Je=H(He,[[`render`,qe],[`__scopeId`,`data-v-9830e0c3`]]),Ye=_({name:`PromptInput`,components:{PromptTextarea:A},computed:{prompt:{get(){return this.$store.state.flux?.config?.prompt},set(e){this.$store.commit(`flux/setConfig`,{...this.$store.state.flux?.config,prompt:e})}}},mounted(){this.prompt||=``}});function Xe(e,t,n,r,i,a){let o=l(`prompt-textarea`);return h(),f(o,{modelValue:e.prompt,"onUpdate:modelValue":t[0]||=t=>e.prompt=t,title:e.$t(`flux.name.prompt`),info:e.$t(`flux.description.prompt`),placeholder:e.$t(`flux.placeholder.prompt`)},null,8,[`modelValue`,`title`,`info`,`placeholder`])}var Ze=H(Ye,[[`render`,Xe]]),Qe=_({name:`SizeSelector`,components:{ElSelect:v,ElOption:y},data(){return{options:re}},computed:{value:{get(){return this.$store.state.flux?.config?.size},set(e){this.$store.commit(`flux/setConfig`,{...this.$store.state.flux?.config,size:e})}}},mounted(){this.value||=`1:1`}}),$e={class:`field`},et={class:`title font-bold`};function tt(t,n,r,o,u,d){let g=l(`el-option`),_=l(`el-select`);return h(),s(`div`,$e,[e(`h2`,et,i(t.$t(`flux.name.ratio`)),1),a(_,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,class:`value`,placeholder:t.$t(`flux.placeholder.select`)},{default:p(()=>[(h(!0),s(c,null,m(t.options,e=>(h(),f(g,{key:e,label:e,value:e},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`])])}var nt=H(Qe,[[`render`,tt],[`__scopeId`,`data-v-8c58dc91`]]),rt=350,it=_({name:`PresetPanel`,components:{MagicIcon:I,ElButton:V,PromptInput:Ze,ModelSelector:Oe,CountSelector:Ie,Consumption:pe,ActionSelector:Ve,ImageUrlInput:Je,SizeSelector:nt,ScenarioPaymentMode:me},emits:[`generate`],data(){return{quoteTimer:0,quoteRunId:0}},computed:{config(){return this.$store.state.flux?.config},consumption(){return ae(this.config,this.service?.cost)},service(){return this.$store.state.flux?.service},walletMode(){return Z()&&J(`flux`).mode===`wallet`}},watch:{walletMode:{handler(e){e&&this.scheduleQuote()},immediate:!0},config:{handler(){this.walletMode&&this.scheduleQuote()},deep:!0}},beforeUnmount(){window.clearTimeout(this.quoteTimer),this.quoteRunId+=1},methods:{scheduleQuote(){window.clearTimeout(this.quoteTimer),this.quoteTimer=window.setTimeout(this.refreshQuote,rt)},async refreshQuote(){let e=J(`flux`),t=++this.quoteRunId;e.quoteLoading=!0,e.quoteUsdc=void 0;try{let n=await X.quote(K(this.config));t===this.quoteRunId&&e.mode===`wallet`&&(e.quoteUsdc=n.amountUsdc)}catch(e){console.warn(`x402 quote failed`,e)}finally{t===this.quoteRunId&&(e.quoteLoading=!1)}},onGenerate(){this.$emit(`generate`)}}}),at={class:`flex flex-col h-full`},ot={class:`flex-1 overflow-y-auto p-5`},st={class:`flex flex-col items-center justify-center px-5 pb-5`};function ct(t,n,c,u,d,m){let g=l(`action-selector`),_=l(`prompt-input`),v=l(`image-url-input`),y=l(`model-selector`),b=l(`size-selector`),x=l(`count-selector`),S=l(`scenario-payment-mode`),C=l(`consumption`),w=l(`magic-icon`),T=l(`el-button`);return h(),s(`div`,at,[e(`div`,ot,[a(g,{class:`mb-4`}),a(_,{class:`mb-4`}),t.config?.action===`edits`?(h(),f(v,{key:0,class:`mb-4`})):o(``,!0),a(y,{class:`mb-4`}),a(b,{class:`mb-4`}),a(x,{class:`mb-4`})]),e(`div`,st,[a(S,{scenario:`flux`}),t.walletMode?o(``,!0):(h(),f(C,{key:0,value:t.consumption,service:t.service},null,8,[`value`,`service`])),a(T,{type:`primary`,class:`btn w-full`,round:``,onClick:t.onGenerate},{default:p(()=>[a(w,{class:`mr-2`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`flux.button.generate`)),1)]),_:1},8,[`onClick`])])])}var lt=H(it,[[`render`,ct]]),ut=_({name:`TaskPreview`,components:{DeleteIcon:F,ElTooltip:x,ChannelIcon:M,InfoIcon:P,MagicIcon:I,TimeIcon:O,WarningIcon:te,CopyToClipboard:le,ElAlert:S,ImageWrapper:_e,ApiCodeButton:he,ReportButton:ue},props:{modelValue:{type:Object,required:!0}},data(){return{}},computed:{application(){return this.$store.state.flux?.application},config(){return this.$store.state.flux?.config},images(){let e=[],t=this.modelValue?.request?.action;return Array.isArray(this.modelValue?.response?.data)&&this.modelValue?.response?.data?.forEach(n=>{let r=n;t&&(r.action=t),e.push(r)}),e}},methods:{async onDelete(){let e=this.modelValue?.id;if(e){try{await Q.confirm(this.$t(`common.message.deleteTaskConfirm`),this.$t(`common.button.delete`),{type:`warning`,confirmButtonText:this.$t(`common.button.delete`),cancelButtonText:this.$t(`common.button.cancel`),confirmButtonClass:`el-button--danger`})}catch{return}try{await this.$store.dispatch(`flux/deleteTask`,{id:e}),w.success(this.$t(`common.message.deleteTaskSuccess`))}catch{w.error(this.$t(`common.message.deleteTaskFailed`))}}},onDownload(e,t){e?.stopPropagation(),console.log(`on download`),window.open(t,`_blank`)},onOpenImage(e){window.open(e,`_blank`)}}}),dt={class:`preview`},ft={class:`left`},pt={class:`main`},mt={class:`bot`},ht={class:`datetime`},gt=[`aria-label`],_t={class:`info`},vt={key:0,class:`prompt mt-2`},yt={key:0},bt={key:0,class:n({content:!0,failed:!0})},xt={class:`flex justify-start items-center gap-4 w-full overflow-x-auto`},St={class:n({operations:!0,"mt-2":!0,"mb-2":!0})},Ct={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},wt={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Tt={key:0,class:`text-[var(--el-text-color-regular)] text-xs mb-0`},Et={key:1,class:n({content:!0})},$={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Dt={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`},kt={class:`text-[var(--el-text-color-regular)] text-xs mb-0`},At={key:2,class:n({content:!0})},jt={class:`text-[var(--el-text-color-regular)] text-xs mb-0`};function Mt(n,u,d,g,_,v){let y=l(`capability-presentation`),b=l(`delete-icon`),x=l(`el-tooltip`),S=l(`image-wrapper`),C=l(`api-code-button`),w=l(`report-button`),T=l(`channel-icon`),E=l(`magic-icon`),D=l(`copy-to-clipboard`),O=l(`time-icon`),k=l(`el-alert`),A=l(`warning-icon`),j=l(`info-icon`);return h(),s(`div`,dt,[e(`div`,ft,[a(y,{capability:`flux`,part:`avatar`,class:`avatar`})]),e(`div`,pt,[e(`div`,mt,[a(y,{capability:`flux`,part:`name`}),e(`span`,ht,i(n.$dayjs.format(``+new Date(parseFloat((n.modelValue?.created_at||``).toString())*1e3))),1),a(x,{effect:`dark`,content:n.$t(`common.button.delete`),placement:`top`},{default:p(()=>[n.modelValue?.id?(h(),s(`button`,{key:0,type:`button`,class:`btn-delete`,"aria-label":n.$t(`common.button.delete`),onClick:u[0]||=t((...e)=>n.onDelete&&n.onDelete(...e),[`stop`])},[a(b,{size:`1em`,"aria-hidden":`true`,focusable:`false`})],8,gt)):o(``,!0)]),_:1},8,[`content`])]),e(`div`,_t,[n.modelValue?.request?.prompt?(h(),s(`p`,vt,[r(i(n.modelValue?.request?.prompt)+` `,1),n.modelValue?.response?o(``,!0):(h(),s(`span`,yt,` - (`+i(n.$t(`flux.status.pending`))+`) `,1))])):o(``,!0)]),n.modelValue?.response?.success===!0?(h(),s(`div`,bt,[e(`div`,xt,[(h(!0),s(c,null,m(n.images,(e,t)=>(h(),f(S,{key:t,src:e?.image_url,"raw-src":e?.image_url,"model-value":e},null,8,[`src`,`raw-src`,`model-value`]))),128))]),e(`div`,St,[a(C,{path:`/flux/images`,body:n.modelValue?.request},null,8,[`body`]),a(w,{service:`flux`,"target-id":n.modelValue?.id,snapshot:{prompt:n.modelValue?.request?.prompt}},null,8,[`target-id`,`snapshot`])]),a(k,{closable:!1,class:`mt-2 success`},{default:p(()=>[e(`p`,Ct,[a(T,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`flux.name.model`))+`: `+i(n.modelValue?.request?.model),1)]),e(`p`,wt,[a(E,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`flux.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(D,{content:n.modelValue?.id,class:`btn-copy inline-block`},null,8,[`content`])]),n.modelValue?.elapsed?(h(),s(`p`,Tt,[a(O,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`flux.name.elapsed`))+`: `+i(n.modelValue?.elapsed?.toFixed(2))+`s `,1)])):o(``,!0)]),_:1})])):o(``,!0),n.modelValue?.response?.success===!1?(h(),s(`div`,Et,[a(k,{closable:!1,class:`failure`},{template:p(()=>[a(A,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`flux.name.failure`)),1)]),default:p(()=>[e(`p`,$,[a(E,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`flux.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(D,{content:n.modelValue?.id,class:`btn-copy`},null,8,[`content`])]),e(`p`,Dt,[a(j,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`flux.name.failureReason`))+`: `+i(n.modelValue?.response?.error?.message)+` `,1),a(D,{content:n.modelValue?.response?.error?.message,class:`btn-copy`},null,8,[`content`])]),n.modelValue?.elapsed?(h(),s(`p`,Ot,[a(O,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`flux.name.elapsed`))+`: `+i(n.modelValue?.elapsed?.toFixed(2))+`s `,1)])):o(``,!0),e(`p`,kt,[a(T,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`flux.name.traceId`))+`: `+i(n.modelValue?.response?.trace_id)+` `,1),a(D,{content:n.modelValue?.response?.trace_id,class:`btn-copy`},null,8,[`content`])])]),_:1})])):o(``,!0),n.modelValue?.response?o(``,!0):(h(),s(`div`,At,[a(k,{closable:!1,class:`info`},{template:p(()=>[a(O,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`flux.status.pending`)),1)]),default:p(()=>[e(`p`,jt,[a(E,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`flux.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(D,{content:n.modelValue?.id,class:`btn-copy`},null,8,[`content`])])]),_:1})]))])])}var Nt=_({name:`RecentPanel`,components:{TaskPreview:H(ut,[[`render`,Mt],[`__scopeId`,`data-v-7bae4285`]]),BotPlaceholder:ge,NoTasks:ee,ScrollList:j},props:{loading:{type:Boolean,default:!1}},emits:[`reach-top`],data(){return{job:0}},computed:{tasks(){return{...this.$store.state.flux?.tasks,items:this.$store.state.flux?.tasks?.items?.slice()}}},methods:{getScrollElement(){return this.$refs.scrollList?.getScrollElement?.()}}}),Pt={key:0},Ft={key:2,class:`w-full h-full flex items-center justify-center`};function It(e,t,n,r,i,u){let d=l(`bot-placeholder`),g=l(`task-preview`),_=l(`scroll-list`),v=l(`no-tasks`);return h(),s(c,null,[e.tasks?.items===void 0?(h(),s(`div`,Pt,[a(d)])):e.tasks?.items?.length&&e.tasks?.items?.length>0?(h(),f(_,{key:1,ref:`scrollList`,class:`tasks h-full w-full overflow-y-auto`,loading:e.loading,onReachTop:t[0]||=t=>e.$emit(`reach-top`)},{default:p(()=>[(h(!0),s(c,null,m(e.tasks?.items,e=>(h(),f(g,{key:e.id,"model-value":e},null,8,[`model-value`]))),128))]),_:1},8,[`loading`])):o(``,!0),e.tasks?.items?.length===0?(h(),s(`div`,Ft,[a(v)])):o(``,!0)],64)}var Lt=_({name:`FluxIndex`,components:{ConfigPanel:lt,Layout:Ce,RecentPanel:H(Nt,[[`render`,It]])},mixins:[q],inject:[`initialized`],data(){return{task:void 0,job:0,loadingMore:!1,fetchingTasks:!1,walletTaskIds:[]}},computed:{applicationsLoading(){return this.$store.state.flux?.status?.getApplications===C.Request},tasksLoading(){return this.$store.state.flux?.status?.getTasks===C.Request||this.fetchingTasks},credential(){return this.$store.state.flux?.credential},config(){return this.$store.state.flux?.config},application(){return this.$store.state.flux?.application},tasks(){return this.$store.state.flux?.tasks},walletMode(){return Z()&&J(`flux`).mode===`wallet`}},watch:{walletMode:{async handler(e,t){t===void 0||e===t||(this.$store.commit(`flux/setTasks`,void 0),await this.onGetTasks(),await this.onScrollDown())}},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 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(`flux/getService`),console.debug(`end onGetService`)},async onGetApplication(){console.debug(`start onGetApplication`),await this.$store.dispatch(`flux/getApplications`),console.debug(`end onGetApplication`),await this.onGetTasks()},async onScrollDown(){await this.$nextTick();let 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);let{limit:t=5,createdAtMin:n,createdAtMax:r}=e||{};console.debug(`limit`,t,`createdAtMin`,n,`createdAtMax`,r),this.fetchingTasks=!0;try{await this.$store.dispatch(`flux/getTasks`,{limit:t,createdAtMin:n,createdAtMax:r,...this.walletMode&&!this.credential?.token?{mode:`x402`,ids:this.walletTaskIds}:{}})}finally{this.fetchingTasks=!1}},async onGenerate(){if(!W(this.uploadTracker,e=>this.$t(e),e=>w.warning(e)))return;let e=K(this.config),t;if(this.walletMode){let n=this.getWalletContext();if(!n){w.warning(this.$t(`common.x402Scenario.connectWalletFirst`));return}t=X.generate(e,{mode:`x402`,x402:{wallet:n,confirm:e=>this.confirmWalletPayment(e),identityToken:this.credential?.token}})}else{if(!se())return;let n=this.credential?.token;if(!n)return;t=X.generate(e,{token:n})}w.info(this.$t(`flux.message.startingTask`)),U(`flux`,t).then(e=>{let t=e?.data?.task_id;this.walletMode&&!this.credential?.token&&t&&!this.walletTaskIds.includes(t)&&this.walletTaskIds.unshift(t),w.success(this.$t(`flux.message.startTaskSuccess`))}).catch(e=>{if(e instanceof G)return;let t=e?.response?.data;t?.error?.code===`used_up`?w.error(this.$t(`flux.message.usedUp`)):this.walletMode?w.error(`${this.$t(`common.x402Scenario.paymentFailed`)} ${e?.message||``}`.trim()):w.error(this.$t(`flux.message.startTaskFailed`)+(t?.error?.message||``))}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})},getWalletContext(){return R(this.$wallet)},async confirmWalletPayment(e){return Q.confirm(this.$t(`common.x402Scenario.confirmPayment`,{amount:e.amountUsdc}),this.$t(`order.message.x402ConfirmTitle`),{confirmButtonText:this.$t(`order.message.x402WalletPayCta`),cancelButtonText:this.$t(`common.button.cancel`),type:`warning`}).then(()=>!0).catch(()=>!1)},getTasksScrollElement(){return this.$refs.recentPanel?.getScrollElement?.()}}});function Rt(e,t,n,r,i,o){let s=l(`config-panel`),c=l(`recent-panel`),u=l(`layout`);return h(),f(u,null,{config:p(()=>[a(s,{onGenerate:e.onGenerate},null,8,[`onGenerate`])]),result:p(()=>[a(c,{ref:`recentPanel`,loading:e.loadingMore,onReachTop:e.onReachTop},null,8,[`loading`,`onReachTop`])]),_:1})}var zt=H(Lt,[[`render`,Rt]]);export{zt as default};
|
|
1
|
+
import"./rolldown-runtime--c01j_DQ.js";import{A as e,C as t,Gt as n,I as r,Jt as i,L as a,M as o,N as s,T as c,at as l,ht as u,it as d,j as f,mt as p,rt as m,tt as h,x as g,z as _}from"./vendor-chart-Dw-P17PN.js";import{r as v,t as y}from"./select-Bs3ZkE9R.js";import{t as b}from"./upload-uY7VeHmd.js";import{t as x}from"./tooltip-DtiQm14e.js";import{t as S}from"./alert-BprQRUmf.js";import{h as C,v as w}from"./models-CwklOk8Z.js";import{t as T}from"./drawer-C9ziMa5D.js";import{t as E}from"./input-number-D2KUI1kN.js";import{t as D}from"./slider-CrHYkY12.js";import{t as O}from"./clock-CEYSZpiZ.js";import{a as k,i as A,n as j,r as ee,s as M,t as N}from"./pagination-B8FPaRIA.js";import{t as P}from"./info-DlDYYYyz.js";import{t as F}from"./trash-2-84jnyEiH.js";import{t as te}from"./triangle-alert-DijP-r53.js";import{t as ne}from"./upload-B-GObY7P.js";import{t as I}from"./wand-sparkles-dlhWJtt5.js";import{fr as re,mr as ie,pr as L}from"./constants-DlrPFkyM.js";import{$r as R,$t as z,Jt as B,Ma as V,O as H,Oi as U,Qt as W,Zr as G,cr as K,en as q,hi as J,ia as Y,in as ae,lr as X,mi as Z,nn as oe,pn as se,tn as ce,va as Q}from"./index-BOCSBfUe.js";import{t as le}from"./CopyToClipboard-Bt4pNx5a.js";import{t as ue}from"./ReportButton-DzpX6LE5.js";import{t as de}from"./ImagePreview-BtYz7VS_.js";import{n as fe}from"./taskDrawerMixin-DyAUhFEq.js";import{t as pe}from"./Consumption-CQoAp-2Q.js";import{t as me}from"./ScenarioPaymentMode-CqRu92vx.js";import{t as he}from"./ApiCodeButton-BAkOBxie.js";import{t as ge}from"./BotPlaceholder-CBS4lAjm.js";import{t as _e}from"./ImageWrapper-CyPuHE9N.js";var ve=_({name:`LayoutFlux`,components:{MagicIcon:I,ElDrawer:T,ElButton:V},mixins:[fe]}),ye={class:`main flex flex-row flex-1`},be={class:`config w-[320px] flex-none h-full min-h-0 overflow-hidden flex flex-col bg-[var(--app-sidebar-bg)] border-r border-[var(--app-border-subtle)]`},xe={class:`result h-full p-6 flex-1 flex flex-col min-w-0 overflow-x-hidden bg-[var(--app-content-bg)]`};function Se(t,n,r,i,o,c){let f=l(`magic-icon`),m=l(`el-button`),_=l(`el-drawer`);return h(),s(`div`,ye,[e(`div`,be,[d(t.$slots,`config`,{},void 0,!0)]),e(`div`,xe,[d(t.$slots,`result`,{},void 0,!0)]),u(a(m,{circle:``,class:`menu`,"aria-label":t.$t(`common.button.openMenu`),title:t.$t(`common.button.openMenu`),onClick:n[0]||=e=>t.drawer=!0},{default:p(()=>[a(f,{size:`1em`,"aria-hidden":`true`,focusable:`false`})]),_:1},8,[`aria-label`,`title`]),[[g,!t.tasksEmpty]]),a(_,{modelValue:t.drawer,"onUpdate:modelValue":n[1]||=e=>t.drawer=e,direction:`ltr`,"with-header":!1,size:`340px`,class:`drawer generator-drawer`},{default:p(()=>[d(t.$slots,`config`,{},void 0,!0)]),_:3},8,[`modelValue`])])}var Ce=H(ve,[[`render`,Se],[`__scopeId`,`data-v-72e82d52`]]),we=_({name:`ModelSelector`,components:{ElSelect:v,ElOption:y},props:{modelValue:{type:String,default:void 0}},emits:[`update:modelValue`],data(){return{options:[{value:`flux-dev`,label:`flux-dev`},{value:`flux-pro`,label:`flux-pro`},{value:`flux-kontext-pro`,label:`flux-kontext-pro`},{value:`flux-kontext-max`,label:`flux-kontext-max`},{value:`flux-2-flex`,label:`flux-2-flex`},{value:`flux-2-pro`,label:`flux-2-pro`},{value:`flux-2-max`,label:`flux-2-max`}]}},computed:{value:{get(){return this.$store.state.flux?.config?.model},set(e){this.$store.commit(`flux/setConfig`,{...this.$store.state.flux.config,model:e})}}},mounted(){this.value||=ie}}),Te={class:`field`},Ee={class:`title font-bold`};function De(t,n,r,o,u,d){let g=l(`el-option`),_=l(`el-select`);return h(),s(`div`,Te,[e(`h2`,Ee,i(t.$t(`flux.name.model`)),1),a(_,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,class:`value`,placeholder:t.$t(`flux.placeholder.select`)},{default:p(()=>[(h(!0),s(c,null,m(t.options,e=>(h(),f(g,{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`])])}var Oe=H(we,[[`render`,De],[`__scopeId`,`data-v-e9b17945`]]),ke=_({name:`CountSelector`,components:{ElSlider:D,InfoIcon:k,ElInputNumber:E},computed:{value:{get(){return this.$store.state.flux?.config?.count},set(e){console.debug(`set count`,e),this.$store.commit(`flux/setConfig`,{...this.$store.state.flux?.config,count:e})}}},mounted(){this.value||=1}}),Ae={class:`flex justify-between`},je={class:`flex justify-start items-center`},Me={class:`text-sm font-bold`},Ne={class:`flex justify-end items-center`},Pe={class:`w-full`};function Fe(t,n,r,o,c,u){let d=l(`info-icon`),f=l(`el-input-number`),p=l(`el-slider`);return h(),s(`div`,null,[e(`div`,Ae,[e(`div`,je,[e(`span`,Me,i(t.$t(`flux.name.numbers`)),1),a(d,{content:t.$t(`flux.description.numbers`)},null,8,[`content`])]),e(`div`,Ne,[a(f,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,"controls-position":`right`},null,8,[`modelValue`])])]),e(`div`,Pe,[a(p,{modelValue:t.value,"onUpdate:modelValue":n[1]||=e=>t.value=e,min:1,max:4,step:1},null,8,[`modelValue`])])])}var Ie=H(ke,[[`render`,Fe]]),Le=_({name:`ActionSelector`,components:{ElSelect:v,ElOption:y},props:{modelValue:{type:String,default:void 0}},emits:[`update:modelValue`],data(){return{options:[{value:`generate`,label:this.$t(`flux.name.generate`)},{value:`edits`,label:this.$t(`flux.name.edits`)}]}},computed:{value:{get(){return this.$store.state.flux?.config?.action},set(e){this.$store.commit(`flux/setConfig`,{...this.$store.state.flux.config,action:e})}}},mounted(){this.value||=L}}),Re={class:`field`},ze={class:`title font-bold`};function Be(t,n,r,o,u,d){let g=l(`el-option`),_=l(`el-select`);return h(),s(`div`,Re,[e(`h2`,ze,i(t.$t(`flux.name.task`)),1),a(_,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,class:`value`,placeholder:t.$t(`flux.placeholder.select`)},{default:p(()=>[(h(!0),s(c,null,m(t.options,e=>(h(),f(g,{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`])])}var Ve=H(Le,[[`render`,Be],[`__scopeId`,`data-v-81fd05e5`]]),He=_({name:`ImageUrlInput`,components:{UploadIcon:ne,ElUpload:b,ElButton:V,InfoIcon:k,ImagePreview:de},mixins:[oe,ce,z,B],emits:[`change`],data(){return{fileList:[],uploadUrl:Y()+`/api/v1/files/`}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},urls(){return this.fileList.map(e=>e?.response?.file_url)}},watch:{urls:{handler(e){console.debug(`URLs changed:`,e),this.$store.commit(`flux/setConfig`,{...this.$store.state.flux.config,image_url:e[0]})}}},methods:{onExceed(){w.warning(this.$t(`flux.message.uploadStartImageExceed`))},onError(){w.error(this.$t(`flux.message.uploadStartImageError`))}}}),Ue={class:`relative`},We={class:`flex justify-between`},Ge={class:`flex justify-start items-center`},Ke={class:`text-sm font-bold`};function qe(t,n,o,c,u,d){let f=l(`info-icon`),m=l(`image-preview`),g=l(`upload-icon`),_=l(`el-button`),v=l(`el-upload`);return h(),s(`div`,Ue,[e(`div`,We,[e(`div`,Ge,[e(`span`,Ke,i(t.$t(`flux.name.imageUrl`)),1),a(f,{content:t.$t(`flux.description.imageUrl`)},null,8,[`content`])])]),a(v,{ref:`uploader`,"file-list":t.fileList,"onUpdate:fileList":n[0]||=e=>t.fileList=e,name:`file`,limit:5,class:`upload-wrapper`,accept:`.png,.jpg,.jpeg,.gif,.bmp,.webp`,multiple:!0,"list-type":`picture`,"before-upload":t.beforeUploadSizeGuard,action:t.uploadUrl,"on-exceed":t.onExceed,"on-error":t.onError,headers:t.headers},{file:p(({file:e})=>[a(m,{url:e.url||e.response?.file_url,name:e.name,percentage:e.percentage,onRemove:n=>t.fileList.splice(t.fileList.indexOf(e),1)},null,8,[`url`,`name`,`percentage`,`onRemove`])]),default:p(()=>[a(_,{round:``,type:`primary`,size:`small`,class:`btn btn-upload`},{default:p(()=>[a(g,{class:`icon mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`flux.button.uploadImageUrl`)),1)]),_:1})]),_:1},8,[`file-list`,`before-upload`,`action`,`on-exceed`,`on-error`,`headers`])])}var Je=H(He,[[`render`,qe],[`__scopeId`,`data-v-9830e0c3`]]),Ye=_({name:`PromptInput`,components:{PromptTextarea:A},computed:{prompt:{get(){return this.$store.state.flux?.config?.prompt},set(e){this.$store.commit(`flux/setConfig`,{...this.$store.state.flux?.config,prompt:e})}}},mounted(){this.prompt||=``}});function Xe(e,t,n,r,i,a){let o=l(`prompt-textarea`);return h(),f(o,{modelValue:e.prompt,"onUpdate:modelValue":t[0]||=t=>e.prompt=t,title:e.$t(`flux.name.prompt`),info:e.$t(`flux.description.prompt`),placeholder:e.$t(`flux.placeholder.prompt`)},null,8,[`modelValue`,`title`,`info`,`placeholder`])}var Ze=H(Ye,[[`render`,Xe]]),Qe=_({name:`SizeSelector`,components:{ElSelect:v,ElOption:y},data(){return{options:re}},computed:{value:{get(){return this.$store.state.flux?.config?.size},set(e){this.$store.commit(`flux/setConfig`,{...this.$store.state.flux?.config,size:e})}}},mounted(){this.value||=`1:1`}}),$e={class:`field`},et={class:`title font-bold`};function tt(t,n,r,o,u,d){let g=l(`el-option`),_=l(`el-select`);return h(),s(`div`,$e,[e(`h2`,et,i(t.$t(`flux.name.ratio`)),1),a(_,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,class:`value`,placeholder:t.$t(`flux.placeholder.select`)},{default:p(()=>[(h(!0),s(c,null,m(t.options,e=>(h(),f(g,{key:e,label:e,value:e},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`])])}var nt=H(Qe,[[`render`,tt],[`__scopeId`,`data-v-8c58dc91`]]),rt=350,it=_({name:`PresetPanel`,components:{MagicIcon:I,ElButton:V,PromptInput:Ze,ModelSelector:Oe,CountSelector:Ie,Consumption:pe,ActionSelector:Ve,ImageUrlInput:Je,SizeSelector:nt,ScenarioPaymentMode:me},emits:[`generate`],data(){return{quoteTimer:0,quoteRunId:0}},computed:{config(){return this.$store.state.flux?.config},consumption(){return ae(this.config,this.service?.cost)},service(){return this.$store.state.flux?.service},walletMode(){return Z()&&J(`flux`).mode===`wallet`}},watch:{walletMode:{handler(e){e&&this.scheduleQuote()},immediate:!0},config:{handler(){this.walletMode&&this.scheduleQuote()},deep:!0}},beforeUnmount(){window.clearTimeout(this.quoteTimer),this.quoteRunId+=1},methods:{scheduleQuote(){window.clearTimeout(this.quoteTimer),this.quoteTimer=window.setTimeout(this.refreshQuote,rt)},async refreshQuote(){let e=J(`flux`),t=++this.quoteRunId;e.quoteLoading=!0,e.quoteUsdc=void 0;try{let n=await X.quote(K(this.config));t===this.quoteRunId&&e.mode===`wallet`&&(e.quoteUsdc=n.amountUsdc)}catch(e){console.warn(`x402 quote failed`,e)}finally{t===this.quoteRunId&&(e.quoteLoading=!1)}},onGenerate(){this.$emit(`generate`)}}}),at={class:`flex flex-col h-full`},ot={class:`flex-1 overflow-y-auto p-5`},st={class:`flex flex-col items-center justify-center px-5 pb-5`};function ct(t,n,c,u,d,m){let g=l(`action-selector`),_=l(`prompt-input`),v=l(`image-url-input`),y=l(`model-selector`),b=l(`size-selector`),x=l(`count-selector`),S=l(`scenario-payment-mode`),C=l(`consumption`),w=l(`magic-icon`),T=l(`el-button`);return h(),s(`div`,at,[e(`div`,ot,[a(g,{class:`mb-4`}),a(_,{class:`mb-4`}),t.config?.action===`edits`?(h(),f(v,{key:0,class:`mb-4`})):o(``,!0),a(y,{class:`mb-4`}),a(b,{class:`mb-4`}),a(x,{class:`mb-4`})]),e(`div`,st,[a(S,{scenario:`flux`}),t.walletMode?o(``,!0):(h(),f(C,{key:0,value:t.consumption,service:t.service},null,8,[`value`,`service`])),a(T,{type:`primary`,class:`btn w-full`,round:``,onClick:t.onGenerate},{default:p(()=>[a(w,{class:`mr-2`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`flux.button.generate`)),1)]),_:1},8,[`onClick`])])])}var lt=H(it,[[`render`,ct]]),ut=_({name:`TaskPreview`,components:{DeleteIcon:F,ElTooltip:x,ChannelIcon:M,InfoIcon:P,MagicIcon:I,TimeIcon:O,WarningIcon:te,CopyToClipboard:le,ElAlert:S,ImageWrapper:_e,ApiCodeButton:he,ReportButton:ue},props:{modelValue:{type:Object,required:!0}},data(){return{}},computed:{application(){return this.$store.state.flux?.application},config(){return this.$store.state.flux?.config},images(){let e=[],t=this.modelValue?.request?.action;return Array.isArray(this.modelValue?.response?.data)&&this.modelValue?.response?.data?.forEach(n=>{let r=n;t&&(r.action=t),e.push(r)}),e}},methods:{async onDelete(){let e=this.modelValue?.id;if(e){try{await Q.confirm(this.$t(`common.message.deleteTaskConfirm`),this.$t(`common.button.delete`),{type:`warning`,confirmButtonText:this.$t(`common.button.delete`),cancelButtonText:this.$t(`common.button.cancel`),confirmButtonClass:`el-button--danger`})}catch{return}try{await this.$store.dispatch(`flux/deleteTask`,{id:e}),w.success(this.$t(`common.message.deleteTaskSuccess`))}catch{w.error(this.$t(`common.message.deleteTaskFailed`))}}},onDownload(e,t){e?.stopPropagation(),console.log(`on download`),window.open(t,`_blank`)},onOpenImage(e){window.open(e,`_blank`)}}}),dt={class:`preview`},ft={class:`left`},pt={class:`main`},mt={class:`bot`},ht={class:`datetime`},gt=[`aria-label`],_t={class:`info`},vt={key:0,class:`prompt mt-2`},yt={key:0},bt={key:0,class:n({content:!0,failed:!0})},xt={class:`flex justify-start items-center gap-4 w-full overflow-x-auto`},St={class:n({operations:!0,"mt-2":!0,"mb-2":!0})},Ct={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},wt={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Tt={key:0,class:`text-[var(--el-text-color-regular)] text-xs mb-0`},Et={key:1,class:n({content:!0})},$={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Dt={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`},kt={class:`text-[var(--el-text-color-regular)] text-xs mb-0`},At={key:2,class:n({content:!0})},jt={class:`text-[var(--el-text-color-regular)] text-xs mb-0`};function Mt(n,u,d,g,_,v){let y=l(`capability-presentation`),b=l(`delete-icon`),x=l(`el-tooltip`),S=l(`image-wrapper`),C=l(`api-code-button`),w=l(`report-button`),T=l(`channel-icon`),E=l(`magic-icon`),D=l(`copy-to-clipboard`),O=l(`time-icon`),k=l(`el-alert`),A=l(`warning-icon`),j=l(`info-icon`);return h(),s(`div`,dt,[e(`div`,ft,[a(y,{capability:`flux`,part:`avatar`,class:`avatar`})]),e(`div`,pt,[e(`div`,mt,[a(y,{capability:`flux`,part:`name`}),e(`span`,ht,i(n.$dayjs.format(``+new Date(parseFloat((n.modelValue?.created_at||``).toString())*1e3))),1),a(x,{effect:`dark`,content:n.$t(`common.button.delete`),placement:`top`},{default:p(()=>[n.modelValue?.id?(h(),s(`button`,{key:0,type:`button`,class:`btn-delete`,"aria-label":n.$t(`common.button.delete`),onClick:u[0]||=t((...e)=>n.onDelete&&n.onDelete(...e),[`stop`])},[a(b,{size:`1em`,"aria-hidden":`true`,focusable:`false`})],8,gt)):o(``,!0)]),_:1},8,[`content`])]),e(`div`,_t,[n.modelValue?.request?.prompt?(h(),s(`p`,vt,[r(i(n.modelValue?.request?.prompt)+` `,1),n.modelValue?.response?o(``,!0):(h(),s(`span`,yt,` - (`+i(n.$t(`flux.status.pending`))+`) `,1))])):o(``,!0)]),n.modelValue?.response?.success===!0?(h(),s(`div`,bt,[e(`div`,xt,[(h(!0),s(c,null,m(n.images,(e,t)=>(h(),f(S,{key:t,src:e?.image_url,"raw-src":e?.image_url,"model-value":e},null,8,[`src`,`raw-src`,`model-value`]))),128))]),e(`div`,St,[a(C,{path:`/flux/images`,body:n.modelValue?.request},null,8,[`body`]),a(w,{service:`flux`,"target-id":n.modelValue?.id,snapshot:{prompt:n.modelValue?.request?.prompt}},null,8,[`target-id`,`snapshot`])]),a(k,{closable:!1,class:`mt-2 success`},{default:p(()=>[e(`p`,Ct,[a(T,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`flux.name.model`))+`: `+i(n.modelValue?.request?.model),1)]),e(`p`,wt,[a(E,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`flux.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(D,{content:n.modelValue?.id,class:`btn-copy inline-block`},null,8,[`content`])]),n.modelValue?.elapsed?(h(),s(`p`,Tt,[a(O,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`flux.name.elapsed`))+`: `+i(n.modelValue?.elapsed?.toFixed(2))+`s `,1)])):o(``,!0)]),_:1})])):o(``,!0),n.modelValue?.response?.success===!1?(h(),s(`div`,Et,[a(k,{closable:!1,class:`failure`},{template:p(()=>[a(A,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`flux.name.failure`)),1)]),default:p(()=>[e(`p`,$,[a(E,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`flux.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(D,{content:n.modelValue?.id,class:`btn-copy`},null,8,[`content`])]),e(`p`,Dt,[a(j,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`flux.name.failureReason`))+`: `+i(n.modelValue?.response?.error?.message)+` `,1),a(D,{content:n.modelValue?.response?.error?.message,class:`btn-copy`},null,8,[`content`])]),n.modelValue?.elapsed?(h(),s(`p`,Ot,[a(O,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`flux.name.elapsed`))+`: `+i(n.modelValue?.elapsed?.toFixed(2))+`s `,1)])):o(``,!0),e(`p`,kt,[a(T,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`flux.name.traceId`))+`: `+i(n.modelValue?.response?.trace_id)+` `,1),a(D,{content:n.modelValue?.response?.trace_id,class:`btn-copy`},null,8,[`content`])])]),_:1})])):o(``,!0),n.modelValue?.response?o(``,!0):(h(),s(`div`,At,[a(k,{closable:!1,class:`info`},{template:p(()=>[a(O,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`flux.status.pending`)),1)]),default:p(()=>[e(`p`,jt,[a(E,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`flux.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(D,{content:n.modelValue?.id,class:`btn-copy`},null,8,[`content`])])]),_:1})]))])])}var Nt=_({name:`RecentPanel`,components:{TaskPreview:H(ut,[[`render`,Mt],[`__scopeId`,`data-v-7bae4285`]]),BotPlaceholder:ge,NoTasks:ee,ScrollList:j},props:{loading:{type:Boolean,default:!1}},emits:[`reach-top`],data(){return{job:0}},computed:{tasks(){return{...this.$store.state.flux?.tasks,items:this.$store.state.flux?.tasks?.items?.slice()}}},methods:{getScrollElement(){return this.$refs.scrollList?.getScrollElement?.()}}}),Pt={key:0},Ft={key:2,class:`w-full h-full flex items-center justify-center`};function It(e,t,n,r,i,u){let d=l(`bot-placeholder`),g=l(`task-preview`),_=l(`scroll-list`),v=l(`no-tasks`);return h(),s(c,null,[e.tasks?.items===void 0?(h(),s(`div`,Pt,[a(d)])):e.tasks?.items?.length&&e.tasks?.items?.length>0?(h(),f(_,{key:1,ref:`scrollList`,class:`tasks h-full w-full overflow-y-auto`,loading:e.loading,onReachTop:t[0]||=t=>e.$emit(`reach-top`)},{default:p(()=>[(h(!0),s(c,null,m(e.tasks?.items,e=>(h(),f(g,{key:e.id,"model-value":e},null,8,[`model-value`]))),128))]),_:1},8,[`loading`])):o(``,!0),e.tasks?.items?.length===0?(h(),s(`div`,Ft,[a(v)])):o(``,!0)],64)}var Lt=_({name:`FluxIndex`,components:{ConfigPanel:lt,Layout:Ce,RecentPanel:H(Nt,[[`render`,It]])},mixins:[q],inject:[`initialized`],data(){return{task:void 0,job:0,loadingMore:!1,fetchingTasks:!1,walletTaskIds:[]}},computed:{applicationsLoading(){return this.$store.state.flux?.status?.getApplications===C.Request},tasksLoading(){return this.$store.state.flux?.status?.getTasks===C.Request||this.fetchingTasks},credential(){return this.$store.state.flux?.credential},config(){return this.$store.state.flux?.config},application(){return this.$store.state.flux?.application},tasks(){return this.$store.state.flux?.tasks},walletMode(){return Z()&&J(`flux`).mode===`wallet`}},watch:{walletMode:{async handler(e,t){t===void 0||e===t||(this.$store.commit(`flux/setTasks`,void 0),await this.onGetTasks(),await this.onScrollDown())}},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 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(`flux/getService`),console.debug(`end onGetService`)},async onGetApplication(){console.debug(`start onGetApplication`),await this.$store.dispatch(`flux/getApplications`),console.debug(`end onGetApplication`),await this.onGetTasks()},async onScrollDown(){await this.$nextTick();let 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);let{limit:t=5,createdAtMin:n,createdAtMax:r}=e||{};console.debug(`limit`,t,`createdAtMin`,n,`createdAtMax`,r),this.fetchingTasks=!0;try{await this.$store.dispatch(`flux/getTasks`,{limit:t,createdAtMin:n,createdAtMax:r,...this.walletMode&&!this.credential?.token?{mode:`x402`,ids:this.walletTaskIds}:{}})}finally{this.fetchingTasks=!1}},async onGenerate(){if(!W(this.uploadTracker,e=>this.$t(e),e=>w.warning(e)))return;let e=K(this.config),t;if(this.walletMode){let n=this.getWalletContext();if(!n){w.warning(this.$t(`common.x402Scenario.connectWalletFirst`));return}t=X.generate(e,{mode:`x402`,x402:{wallet:n,confirm:e=>this.confirmWalletPayment(e),identityToken:this.credential?.token}})}else{if(!se())return;let n=this.credential?.token;if(!n)return;t=X.generate(e,{token:n})}w.info(this.$t(`flux.message.startingTask`)),U(`flux`,t).then(e=>{let t=e?.data?.task_id;this.walletMode&&!this.credential?.token&&t&&!this.walletTaskIds.includes(t)&&this.walletTaskIds.unshift(t),w.success(this.$t(`flux.message.startTaskSuccess`))}).catch(e=>{if(e instanceof G)return;let t=e?.response?.data;t?.error?.code===`used_up`?w.error(this.$t(`flux.message.usedUp`)):this.walletMode?w.error(`${this.$t(`common.x402Scenario.paymentFailed`)} ${e?.message||``}`.trim()):w.error(this.$t(`flux.message.startTaskFailed`)+(t?.error?.message||``))}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})},getWalletContext(){return R(this.$wallet)},async confirmWalletPayment(e){return Q.confirm(this.$t(`common.x402Scenario.confirmPayment`,{amount:e.amountUsdc}),this.$t(`order.message.x402ConfirmTitle`),{confirmButtonText:this.$t(`order.message.x402WalletPayCta`),cancelButtonText:this.$t(`common.button.cancel`),type:`warning`}).then(()=>!0).catch(()=>!1)},getTasksScrollElement(){return this.$refs.recentPanel?.getScrollElement?.()}}});function Rt(e,t,n,r,i,o){let s=l(`config-panel`),c=l(`recent-panel`),u=l(`layout`);return h(),f(u,null,{config:p(()=>[a(s,{onGenerate:e.onGenerate},null,8,[`onGenerate`])]),result:p(()=>[a(c,{ref:`recentPanel`,loading:e.loadingMore,onReachTop:e.onReachTop},null,8,[`loading`,`onReachTop`])]),_:1})}var zt=H(Lt,[[`render`,Rt]]);export{zt as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import"./rolldown-runtime--c01j_DQ.js";import{A as e,C as t,Gt as n,I as r,Jt as i,L as a,M as o,N as s,T as c,at as l,ht as u,it as d,j as f,mt as p,qt as m,rt as h,tt as g,x as _,z as v}from"./vendor-chart-Dw-P17PN.js";import{r as y,t as b}from"./select-Cry04isu.js";import{t as x}from"./upload-uY7VeHmd.js";import{t as S}from"./tooltip-DZp4IZF9.js";import{t as C}from"./alert-BprQRUmf.js";import{h as w,v as T}from"./models-CwklOk8Z.js";import{t as E}from"./drawer-CeDP7s5K.js";import{t as D}from"./input-number-BSo_V5QG.js";import{t as O}from"./switch-BwEZ0csi.js";import{t as k}from"./box-BJ5AJ81R.js";import{t as A}from"./clock-0ZWwZ6xH.js";import{a as j,i as M,n as N,o as P,r as ee,s as te,t as F}from"./pagination-D4-HZqNr.js";import{t as ne}from"./info-CyK20dY7.js";import{t as I}from"./trash-2-BKP--pJx.js";import{t as re}from"./triangle-alert-BWbRHVGQ.js";import{t as L}from"./upload-a1-BMlZq.js";import{t as ie}from"./volume-2-DG4VfLGb.js";import{t as R}from"./wand-sparkles-Dz4k9kgj.js";import{$t as ae,_n as z,an as oe,bn as B,cn as se,dn as ce,en as le,fn as ue,gn as V,hn as de,in as fe,ln as pe,mn as me,on as he,pn as ge,rn as _e,sn as ve,un as ye,vn as H}from"./constants-DlrPFkyM.js";import{$r as be,$t as U,Jt as W,Ma as G,O as K,Oi as xe,Qt as Se,Wn as q,Zr as Ce,en as we,hi as J,ia as Y,in as Te,mi as Ee,nn as X,pn as De,tn as Z,va as Oe}from"./index-tH-0CTCd.js";import{t as ke}from"./CopyToClipboard-nyXqwbLh.js";import{t as Ae}from"./ReportButton-1gsHQqMT.js";import{t as Q}from"./ImagePreview-B3pTp0IA.js";import{n as je}from"./taskDrawerMixin-DyAUhFEq.js";import{t as Me}from"./Consumption-C9CaJF7U.js";import{t as Ne}from"./AudioPreview-DwauwXVF.js";import{t as Pe}from"./VideoPlayer-BhdFI_Dl.js";import{t as Fe}from"./VideoPreview-Di22AVT5.js";import{t as Ie}from"./ScenarioPaymentMode-DWw8ADoG.js";import{t as Le}from"./ApiCodeButton-DIudRxxI.js";import{t as Re}from"./BotPlaceholder-CcjsDj0N.js";import{t as ze}from"./ImageWrapper-DvLNHGDt.js";var Be=v({name:`LayoutSeedance`,components:{MagicIcon:R,ElDrawer:E,ElButton:G},mixins:[je]}),Ve={class:`main flex flex-row flex-1`},He={class:`config w-[320px] flex-none h-full min-h-0 overflow-hidden flex flex-col bg-[var(--app-sidebar-bg)] border-r border-[var(--app-border-subtle)]`},Ue={class:`result h-full p-6 flex-1 flex flex-col min-w-0 overflow-x-hidden bg-[var(--app-content-bg)]`};function We(t,n,r,i,o,c){let f=l(`magic-icon`),m=l(`el-button`),h=l(`el-drawer`);return g(),s(`div`,Ve,[e(`div`,He,[d(t.$slots,`config`,{},void 0,!0)]),e(`div`,Ue,[d(t.$slots,`result`,{},void 0,!0)]),u(a(m,{circle:``,class:`menu`,"aria-label":t.$t(`common.button.openMenu`),title:t.$t(`common.button.openMenu`),onClick:n[0]||=e=>t.drawer=!0},{default:p(()=>[a(f,{size:`1em`,"aria-hidden":`true`,focusable:`false`})]),_:1},8,[`aria-label`,`title`]),[[_,!t.tasksEmpty]]),a(h,{modelValue:t.drawer,"onUpdate:modelValue":n[1]||=e=>t.drawer=e,direction:`ltr`,"with-header":!1,size:`340px`,class:`generator-drawer`},{default:p(()=>[d(t.$slots,`config`,{},void 0,!0)]),_:3},8,[`modelValue`])])}var Ge=K(Be,[[`render`,We],[`__scopeId`,`data-v-ff53dce1`]]),Ke=v({name:`SeedancePromptInput`,components:{PromptTextarea:M},computed:{prompt:{get(){return this.$store.state.seedance?.config?.prompt},set(e){this.$store.commit(`seedance/setConfig`,{...this.$store.state.seedance?.config,prompt:e})}}},mounted(){this.prompt||=``}});function qe(e,t,n,r,i,a){let o=l(`prompt-textarea`);return g(),f(o,{modelValue:e.prompt,"onUpdate:modelValue":t[0]||=t=>e.prompt=t,title:e.$t(`seedance.name.prompt`),info:e.$t(`seedance.description.prompt`),placeholder:e.$t(`seedance.placeholder.prompt`),"min-rows":5},null,8,[`modelValue`,`title`,`info`,`placeholder`])}var Je=K(Ke,[[`render`,qe]]),Ye=v({name:`SeedanceModelSelector`,components:{ElSelect:y,ElOption:b,InfoIcon:j},data(){return{options:[{value:se,label:this.$t(`seedance.model.seedance20`)},{value:pe,label:this.$t(`seedance.model.seedance20Fast`)},{value:ye,label:this.$t(`seedance.model.seedance20Mini`)},{value:ve,label:this.$t(`seedance.model.seedance15pro`)},{value:oe,label:this.$t(`seedance.model.seedance10pro`)},{value:he,label:this.$t(`seedance.model.seedance10proFast`)},{value:fe,label:this.$t(`seedance.model.seedance10liteT2v`)},{value:_e,label:this.$t(`seedance.model.seedance10liteI2v`)}]}},computed:{value:{get(){return this.$store.state.seedance?.config?.model},set(e){this.$store.commit(`seedance/setConfig`,{...this.$store.state.seedance?.config,model:e})}}},mounted(){this.value||=ae}}),Xe={class:`field`},Ze={class:`label`},Qe={class:`box`},$e={class:`title font-bold`};function et(t,n,r,o,u,d){let m=l(`info-icon`),_=l(`el-option`),v=l(`el-select`);return g(),s(`div`,Xe,[e(`div`,Ze,[e(`div`,Qe,[e(`h2`,$e,i(t.$t(`seedance.name.model`)),1),a(m,{content:t.$t(`seedance.description.model`),class:`info`},null,8,[`content`])])]),a(v,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,class:`value`,placeholder:t.$t(`seedance.placeholder.select`)},{default:p(()=>[(g(!0),s(c,null,h(t.options,e=>(g(),f(_,{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`])])}var tt=K(Ye,[[`render`,et],[`__scopeId`,`data-v-deb4c429`]]),nt=v({name:`SeedanceDurationSelector`,components:{ElSelect:y,ElOption:b,InfoIcon:j},computed:{model(){return this.$store.state.seedance?.config?.model},capability(){return B(this.model)},options(){let e=[];this.capability.supportsAutoDuration&&e.push({value:-1,label:`${this.$t(`seedance.placeholder.seed`)} (-1)`});for(let t=this.capability.minDuration;t<=this.capability.maxDuration;t++)e.push({value:t,label:`${t}s`});return e},value:{get(){return this.$store.state.seedance?.config?.duration},set(e){this.$store.commit(`seedance/setConfig`,{...this.$store.state.seedance?.config,duration:e})}}},watch:{model(){this.clampValue()}},mounted(){this.value?this.clampValue():this.value=5},methods:{clampValue(){let e=this.value;e!==void 0&&!(e===-1&&this.capability.supportsAutoDuration)&&(e<this.capability.minDuration||e>this.capability.maxDuration)&&(this.value=5)}}}),rt={class:`field`},it={class:`label`},at={class:`box`},ot={class:`title font-bold`};function st(t,n,r,o,u,d){let m=l(`info-icon`),_=l(`el-option`),v=l(`el-select`);return g(),s(`div`,rt,[e(`div`,it,[e(`div`,at,[e(`h2`,ot,i(t.$t(`seedance.name.duration`)),1),a(m,{content:t.$t(`seedance.description.duration`),class:`info`},null,8,[`content`])])]),a(v,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,class:`value`,placeholder:t.$t(`seedance.placeholder.select`)},{default:p(()=>[(g(!0),s(c,null,h(t.options,e=>(g(),f(_,{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`])])}var ct=K(nt,[[`render`,st],[`__scopeId`,`data-v-d61cc21b`]]),$={[z]:0,[H]:1,[V]:2,"4k":3},lt=v({name:`SeedanceResolutionSelector`,components:{InfoIcon:j,ElTooltip:S},computed:{model(){return this.$store.state.seedance?.config?.model},capability(){return B(this.model)},options(){let e=[{value:z,label:`480p`},{value:H,label:`720p`},{value:V,label:`1080p`},{value:`4k`,label:`4k`}],t=$[this.capability.maxResolution]??$[`1080p`];return e.map(e=>({...e,disabled:$[e.value]>t}))},value:{get(){return this.$store.state.seedance?.config?.resolution},set(e){this.$store.commit(`seedance/setConfig`,{...this.$store.state.seedance?.config,resolution:e})}}},watch:{model(){this.clampValue()}},mounted(){this.value?this.clampValue():this.value=this.capability.defaultResolution||`720p`},methods:{onSelect(e){e.disabled||(this.value=e.value)},clampValue(){let e=this.value,t=this.options.find(t=>t.value===e);(!e||t&&t.disabled)&&(this.value=this.capability.defaultResolution||`720p`)}}}),ut={class:`resolution`},dt={class:`header`},ft={class:`title font-bold`},pt={class:`items`},mt=[`onClick`];function ht(t,r,o,u,d,m){let _=l(`info-icon`),v=l(`el-tooltip`);return g(),s(`div`,ut,[e(`div`,dt,[e(`h2`,ft,i(t.$t(`seedance.name.resolution`)),1),a(_,{content:t.$t(`seedance.description.resolution`),class:`info`},null,8,[`content`])]),e(`div`,pt,[(g(!0),s(c,null,h(t.options,r=>(g(),f(v,{key:r.value,content:t.$t(`seedance.message.resolutionNotSupported`),disabled:!r.disabled,placement:`top`},{default:p(()=>[e(`div`,{class:n([`item`,{active:t.value===r.value,disabled:r.disabled}]),onClick:e=>t.onSelect(r)},i(r.label),11,mt)]),_:2},1032,[`content`,`disabled`]))),128))])])}var gt=K(lt,[[`render`,ht],[`__scopeId`,`data-v-db7e8aff`]]),_t=v({name:`SeedanceRatioSelector`,components:{InfoIcon:j},computed:{options(){return[{value:ue,label:`16:9`,w:32,h:18},{value:me,label:`9:16`,w:18,h:32},{value:`4:3`,label:`4:3`,w:28,h:21},{value:`3:4`,label:`3:4`,w:21,h:28},{value:`1:1`,label:`1:1`,w:24,h:24},{value:ge,label:`21:9`,w:34,h:14},{value:de,label:this.$t(`seedance.ratio.adaptive`),w:0,h:0}]},value:{get(){return this.$store.state.seedance?.config?.ratio},set(e){this.$store.commit(`seedance/setConfig`,{...this.$store.state.seedance?.config,ratio:e})}}},mounted(){this.value||=le}}),vt={class:`ratio`},yt={class:`header`},bt={class:`title font-bold`},xt={class:`items`},St=[`onClick`],Ct={class:`preview`},wt={key:1,class:`rect rect-auto`},Tt={class:`name`};function Et(t,r,o,u,d,f){let p=l(`info-icon`);return g(),s(`div`,vt,[e(`div`,yt,[e(`h2`,bt,i(t.$t(`seedance.name.ratio`)),1),a(p,{content:t.$t(`seedance.description.ratio`),class:`info`},null,8,[`content`])]),e(`div`,xt,[(g(!0),s(c,null,h(t.options,r=>(g(),s(`div`,{key:r.value,class:n([`item`,{active:t.value===r.value}]),onClick:e=>t.value=r.value},[e(`div`,Ct,[r.w&&r.h?(g(),s(`div`,{key:0,class:`rect`,style:m({width:r.w+`px`,height:r.h+`px`})},null,4)):(g(),s(`div`,wt,`A`))]),e(`div`,Tt,i(r.label),1)],10,St))),128))])])}var Dt=K(_t,[[`render`,Et],[`__scopeId`,`data-v-8ddec2dd`]]),Ot=v({name:`SeedanceGenerateAudioSwitch`,components:{ElSwitch:O,InfoIcon:j},computed:{isSupported(){let e=this.$store.state.seedance?.config?.model;return B(e).acceptsAudio},value:{get(){return this.$store.state.seedance?.config?.generate_audio??!1},set(e){this.$store.commit(`seedance/setConfig`,{...this.$store.state.seedance?.config,generate_audio:e})}}},watch:{isSupported(e){!e&&this.value&&(this.value=!1)}},mounted(){this.value===void 0&&(this.value=!1)}}),kt={key:0,class:`field`},At={class:`label`},jt={class:`box`},Mt={class:`title font-bold`},Nt={class:`value`};function Pt(t,n,r,c,u,d){let f=l(`info-icon`),p=l(`el-switch`);return t.isSupported?(g(),s(`div`,kt,[e(`div`,At,[e(`div`,jt,[e(`h2`,Mt,i(t.$t(`seedance.name.generateAudio`)),1),a(f,{content:t.$t(`seedance.description.generateAudio`),class:`info`},null,8,[`content`])])]),e(`div`,Nt,[a(p,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,"inline-prompt":``,"active-text":t.$t(`seedance.button.on`),"inactive-text":t.$t(`seedance.button.off`)},null,8,[`modelValue`,`active-text`,`inactive-text`])])])):o(``,!0)}var Ft=K(Ot,[[`render`,Pt],[`__scopeId`,`data-v-df51dfbd`]]),It=v({name:`SeedanceCameraFixedSwitch`,components:{ElSwitch:O,InfoIcon:j},computed:{value:{get(){return this.$store.state.seedance?.config?.camerafixed??!1},set(e){this.$store.commit(`seedance/setConfig`,{...this.$store.state.seedance?.config,camerafixed:e})}}},mounted(){this.$store.state.seedance?.config?.camerafixed===void 0&&(this.value=!1)}}),Lt={class:`field`},Rt={class:`label`},zt={class:`box`},Bt={class:`title font-bold`},Vt={class:`value`};function Ht(t,n,r,o,c,u){let d=l(`info-icon`),f=l(`el-switch`);return g(),s(`div`,Lt,[e(`div`,Rt,[e(`div`,zt,[e(`h2`,Bt,i(t.$t(`seedance.name.cameraFixed`)),1),a(d,{content:t.$t(`seedance.description.cameraFixed`),class:`info`},null,8,[`content`])])]),e(`div`,Vt,[a(f,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,"inline-prompt":``,"active-text":t.$t(`seedance.button.on`),"inactive-text":t.$t(`seedance.button.off`)},null,8,[`modelValue`,`active-text`,`inactive-text`])])])}var Ut=K(It,[[`render`,Ht],[`__scopeId`,`data-v-ae777d61`]]),Wt=v({name:`SeedanceFirstFrameImage`,components:{UploadIcon:L,ElUpload:x,ElButton:G,InfoIcon:j,ImagePreview:Q},mixins:[X,Z,U,W],data(){return{fileList:[],uploadUrl:Y()+`/api/v1/files/`}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},model(){return this.$store.state.seedance?.config?.model},capability(){return B(this.model)},urls(){return this.fileList.map(e=>e?.response?.file_url)}},watch:{"capability.acceptsImage"(e){e||(this.fileList=[],this.onSetFirstFrameUrl())}},methods:{onExceed(){T.warning(this.$t(`seedance.message.uploadExceed`))},onError(){T.error(this.$t(`seedance.message.uploadError`))},onSetFirstFrameUrl(){let e=this.urls?.[0],t=(this.$store.state.seedance?.config?.images||[]).filter(e=>e?.role!==`first_frame`);e&&t.push({url:e,role:`first_frame`}),this.$store.commit(`seedance/setConfig`,{...this.$store.state.seedance?.config,images:t.length>0?t:void 0})},async onSuccess(){this.onSetFirstFrameUrl()},async onRemove(){this.onSetFirstFrameUrl()}}}),Gt={key:0,class:`relative`},Kt={class:`flex min-h-8 items-center pr-20`},qt={class:`flex justify-start items-center`},Jt={class:`text-sm font-bold`},Yt={key:0,class:`required-badge`};function Xt(t,n,c,u,d,m){let h=l(`info-icon`),_=l(`image-preview`),v=l(`upload-icon`),y=l(`el-button`),b=l(`el-upload`);return t.capability.acceptsImage?(g(),s(`div`,Gt,[e(`div`,Kt,[e(`div`,qt,[e(`span`,Jt,i(t.$t(`seedance.name.firstFrame`)),1),t.capability.requiresImage?(g(),s(`span`,Yt,i(t.$t(`seedance.name.required`)),1)):o(``,!0),a(h,{content:t.$t(`seedance.description.firstFrame`)},null,8,[`content`])])]),a(b,{ref:`uploader`,"file-list":t.fileList,"onUpdate:fileList":n[0]||=e=>t.fileList=e,name:`file`,accept:`.png,.jpg,.jpeg,.gif,.bmp,.webp`,limit:1,class:`upload-wrapper`,multiple:!1,"before-upload":t.beforeUploadSizeGuard,action:t.uploadUrl,"list-type":`picture`,"on-exceed":t.onExceed,"on-error":t.onError,"on-success":t.onSuccess,"on-remove":t.onRemove,headers:t.headers},{file:p(({file:e})=>[e.url&&e.percentage!==void 0?(g(),f(_,{key:0,url:e.url,name:e.name,percentage:e.percentage,onRemove:n=>t.fileList.splice(t.fileList.indexOf(e),1)},null,8,[`url`,`name`,`percentage`,`onRemove`])):o(``,!0)]),default:p(()=>[a(y,{round:``,type:`primary`,size:`small`,class:`btn btn-upload`},{default:p(()=>[a(v,{class:`icon mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`seedance.button.upload`)),1)]),_:1})]),_:1},8,[`file-list`,`before-upload`,`action`,`on-exceed`,`on-error`,`on-success`,`on-remove`,`headers`])])):o(``,!0)}var Zt=K(Wt,[[`render`,Xt],[`__scopeId`,`data-v-9ed26f7d`]]),Qt=v({name:`SeedanceLastFrameImage`,components:{UploadIcon:L,ElUpload:x,ElButton:G,ImagePreview:Q,InfoIcon:j},mixins:[X,Z,U,W],data(){return{fileList:[],uploadUrl:Y()+`/api/v1/files/`}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},model(){return this.$store.state.seedance?.config?.model},capability(){return B(this.model)},urls(){return this.fileList.map(e=>e?.response?.file_url)}},watch:{"capability.acceptsLastFrame"(e){e||(this.fileList=[],this.onSetLastFrameUrl())}},methods:{onExceed(){T.warning(this.$t(`seedance.message.uploadExceed`))},onError(){T.error(this.$t(`seedance.message.uploadError`))},onSetLastFrameUrl(){let e=this.urls?.[0],t=(this.$store.state.seedance?.config?.images||[]).filter(e=>e?.role!==`last_frame`);e&&t.push({url:e,role:`last_frame`}),this.$store.commit(`seedance/setConfig`,{...this.$store.state.seedance?.config,images:t.length>0?t:void 0})},async onSuccess(){this.onSetLastFrameUrl()},async onRemove(){this.onSetLastFrameUrl()}}}),$t={key:0,class:`relative`},en={class:`flex min-h-8 items-center pr-20`},tn={class:`flex justify-start items-center`},nn={class:`text-sm font-bold`};function rn(t,n,c,u,d,m){let h=l(`info-icon`),_=l(`image-preview`),v=l(`upload-icon`),y=l(`el-button`),b=l(`el-upload`);return t.capability.acceptsLastFrame?(g(),s(`div`,$t,[e(`div`,en,[e(`div`,tn,[e(`span`,nn,i(t.$t(`seedance.name.lastFrame`)),1),a(h,{content:t.$t(`seedance.description.lastFrame`)},null,8,[`content`])])]),a(b,{ref:`uploader`,"file-list":t.fileList,"onUpdate:fileList":n[0]||=e=>t.fileList=e,name:`file`,accept:`.png,.jpg,.jpeg,.gif,.bmp,.webp`,limit:1,class:`upload-wrapper`,multiple:!1,"before-upload":t.beforeUploadSizeGuard,action:t.uploadUrl,"list-type":`picture`,"on-exceed":t.onExceed,"on-error":t.onError,"on-success":t.onSuccess,"on-remove":t.onRemove,headers:t.headers},{file:p(({file:e})=>[e.url&&e.percentage!==void 0?(g(),f(_,{key:0,url:e.url,name:e.name,percentage:e.percentage,onRemove:n=>t.fileList.splice(t.fileList.indexOf(e),1)},null,8,[`url`,`name`,`percentage`,`onRemove`])):o(``,!0)]),default:p(()=>[a(y,{round:``,type:`primary`,size:`small`,class:`btn btn-upload`},{default:p(()=>[a(v,{class:`icon mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`seedance.button.upload`)),1)]),_:1})]),_:1},8,[`file-list`,`before-upload`,`action`,`on-exceed`,`on-error`,`on-success`,`on-remove`,`headers`])])):o(``,!0)}var an=K(Qt,[[`render`,rn],[`__scopeId`,`data-v-9b573754`]]),on=v({name:`SeedanceReferenceImage`,components:{UploadIcon:L,ElUpload:x,ElButton:G,InfoIcon:j,ImagePreview:Q},mixins:[X,Z,U,W],data(){return{fileList:[],uploadUrl:Y()+`/api/v1/files/`}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},model(){return this.$store.state.seedance?.config?.model},capability(){return B(this.model)},urls(){return this.fileList.map(e=>e?.response?.file_url)}},watch:{"capability.acceptsReferenceImage"(e){e||(this.fileList=[],this.onSetReferenceImageUrls())}},methods:{onExceed(){T.warning(this.$t(`seedance.message.uploadExceed`))},onError(){T.error(this.$t(`seedance.message.uploadError`))},onSetReferenceImageUrls(){let e=(this.urls||[]).filter(Boolean),t=(this.$store.state.seedance?.config?.images||[]).filter(e=>e?.role!==`reference_image`);e.forEach(e=>t.push({url:e,role:`reference_image`})),this.$store.commit(`seedance/setConfig`,{...this.$store.state.seedance?.config,images:t.length>0?t:void 0})},async onSuccess(){this.onSetReferenceImageUrls()},async onRemove(){this.onSetReferenceImageUrls()}}}),sn={key:0,class:`relative`},cn={class:`flex min-h-8 items-center pr-20`},ln={class:`flex justify-start items-center`},un={class:`text-sm font-bold`};function dn(t,n,c,u,d,m){let h=l(`info-icon`),_=l(`image-preview`),v=l(`upload-icon`),y=l(`el-button`),b=l(`el-upload`);return t.capability.acceptsReferenceImage?(g(),s(`div`,sn,[e(`div`,cn,[e(`div`,ln,[e(`span`,un,i(t.$t(`seedance.name.referenceImage`)),1),a(h,{content:t.$t(`seedance.description.referenceImage`)},null,8,[`content`])])]),a(b,{ref:`uploader`,"file-list":t.fileList,"onUpdate:fileList":n[0]||=e=>t.fileList=e,name:`file`,accept:`.png,.jpg,.jpeg,.gif,.bmp,.webp`,limit:1,class:`upload-wrapper`,multiple:!1,"before-upload":t.beforeUploadSizeGuard,action:t.uploadUrl,"list-type":`picture`,"on-exceed":t.onExceed,"on-error":t.onError,"on-success":t.onSuccess,"on-remove":t.onRemove,headers:t.headers},{file:p(({file:e})=>[e.url&&e.percentage!==void 0?(g(),f(_,{key:0,url:e.url,name:e.name,percentage:e.percentage,onRemove:n=>t.fileList.splice(t.fileList.indexOf(e),1)},null,8,[`url`,`name`,`percentage`,`onRemove`])):o(``,!0)]),default:p(()=>[a(y,{round:``,type:`primary`,size:`small`,class:`btn btn-upload`},{default:p(()=>[a(v,{class:`icon mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`seedance.button.upload`)),1)]),_:1})]),_:1},8,[`file-list`,`before-upload`,`action`,`on-exceed`,`on-error`,`on-success`,`on-remove`,`headers`])])):o(``,!0)}var fn=K(on,[[`render`,dn],[`__scopeId`,`data-v-3ae3845d`]]),pn=v({name:`SeedanceReferenceAudio`,components:{UploadIcon:L,ElUpload:x,ElButton:G,InfoIcon:j},mixins:[Z,U,W],data(){return{fileList:[],uploadUrl:Y()+`/api/v1/files/`}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},model(){return this.$store.state.seedance?.config?.model},capability(){return B(this.model)},urls(){return this.fileList.map(e=>e?.response?.file_url)}},watch:{"capability.acceptsReferenceAudio"(e){e||(this.fileList=[],this.onSetReferenceAudios())}},methods:{onExceed(){T.warning(this.$t(`seedance.message.uploadExceed`))},onError(){T.error(this.$t(`seedance.message.uploadError`))},onSetReferenceAudios(){let e=(this.urls||[]).filter(Boolean);this.$store.commit(`seedance/setConfig`,{...this.$store.state.seedance?.config,audios:e.length>0?e.map(e=>({url:e})):void 0})},async onSuccess(){this.onSetReferenceAudios()},async onRemove(){this.onSetReferenceAudios()}}}),mn={key:0,class:`relative`},hn={class:`flex min-h-8 items-center pr-20`},gn={class:`flex justify-start items-center`},_n={class:`text-sm font-bold`};function vn(t,n,c,u,d,f){let m=l(`info-icon`),h=l(`upload-icon`),_=l(`el-button`),v=l(`el-upload`);return t.capability.acceptsReferenceAudio?(g(),s(`div`,mn,[e(`div`,hn,[e(`div`,gn,[e(`span`,_n,i(t.$t(`seedance.name.referenceAudio`)),1),a(m,{content:t.$t(`seedance.description.referenceAudio`)},null,8,[`content`])])]),a(v,{ref:`uploader`,"file-list":t.fileList,"onUpdate:fileList":n[0]||=e=>t.fileList=e,name:`file`,accept:`.mp3,.wav,.m4a,.aac,.ogg,.flac`,limit:1,class:`upload-wrapper`,multiple:!1,"before-upload":t.beforeUploadSizeGuard,action:t.uploadUrl,"list-type":`text`,"on-exceed":t.onExceed,"on-error":t.onError,"on-success":t.onSuccess,"on-remove":t.onRemove,headers:t.headers},{default:p(()=>[a(_,{round:``,type:`primary`,size:`small`,class:`btn btn-upload`},{default:p(()=>[a(h,{class:`icon mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`seedance.button.upload`)),1)]),_:1})]),_:1},8,[`file-list`,`before-upload`,`action`,`on-exceed`,`on-error`,`on-success`,`on-remove`,`headers`])])):o(``,!0)}var yn=K(pn,[[`render`,vn],[`__scopeId`,`data-v-99f6c8be`]]),bn=v({name:`SeedanceReferenceVideo`,components:{UploadIcon:L,ElUpload:x,ElButton:G,InfoIcon:j},mixins:[Z,U,W],data(){return{fileList:[],uploadUrl:Y()+`/api/v1/files/`}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},model(){return this.$store.state.seedance?.config?.model},capability(){return B(this.model)},urls(){return this.fileList.map(e=>e?.response?.file_url)}},watch:{"capability.acceptsReferenceVideo"(e){e||(this.fileList=[],this.onSetReferenceVideos())}},methods:{onExceed(){T.warning(this.$t(`seedance.message.uploadExceed`))},onError(){T.error(this.$t(`seedance.message.uploadError`))},onSetReferenceVideos(){let e=(this.urls||[]).filter(Boolean);this.$store.commit(`seedance/setConfig`,{...this.$store.state.seedance?.config,videos:e.length>0?e.map(e=>({url:e})):void 0})},async onSuccess(){this.onSetReferenceVideos()},async onRemove(){this.onSetReferenceVideos()}}}),xn={key:0,class:`relative`},Sn={class:`flex min-h-8 items-center pr-20`},Cn={class:`flex justify-start items-center`},wn={class:`text-sm font-bold`};function Tn(t,n,c,u,d,f){let m=l(`info-icon`),h=l(`upload-icon`),_=l(`el-button`),v=l(`el-upload`);return t.capability.acceptsReferenceVideo?(g(),s(`div`,xn,[e(`div`,Sn,[e(`div`,Cn,[e(`span`,wn,i(t.$t(`seedance.name.referenceVideo`)),1),a(m,{content:t.$t(`seedance.description.referenceVideo`)},null,8,[`content`])])]),a(v,{ref:`uploader`,"file-list":t.fileList,"onUpdate:fileList":n[0]||=e=>t.fileList=e,name:`file`,accept:`.mp4,.mov,.webm,.mkv,.avi`,limit:1,class:`upload-wrapper`,multiple:!1,"before-upload":t.beforeUploadSizeGuard,action:t.uploadUrl,"list-type":`text`,"on-exceed":t.onExceed,"on-error":t.onError,"on-success":t.onSuccess,"on-remove":t.onRemove,headers:t.headers},{default:p(()=>[a(_,{round:``,type:`primary`,size:`small`,class:`btn btn-upload`},{default:p(()=>[a(h,{class:`icon mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`seedance.button.upload`)),1)]),_:1})]),_:1},8,[`file-list`,`before-upload`,`action`,`on-exceed`,`on-error`,`on-success`,`on-remove`,`headers`])])):o(``,!0)}var En=K(bn,[[`render`,Tn],[`__scopeId`,`data-v-21bc6757`]]),Dn=v({name:`SeedanceReturnLastFrameSwitch`,components:{ElSwitch:O,InfoIcon:j},computed:{model(){return this.$store.state.seedance?.config?.model},isSupported(){return B(this.model).acceptsReturnLastFrame},value:{get(){return this.$store.state.seedance?.config?.return_last_frame},set(e){this.$store.commit(`seedance/setConfig`,{...this.$store.state.seedance?.config,return_last_frame:e})}}},watch:{isSupported(e){!e&&this.value&&(this.value=!1)}},mounted(){this.value===void 0&&(this.value=!1)}}),On={key:0,class:`field`},kn={class:`label`},An={class:`box`},jn={class:`title font-bold`},Mn={class:`value`};function Nn(t,n,r,c,u,d){let f=l(`info-icon`),p=l(`el-switch`);return t.isSupported?(g(),s(`div`,On,[e(`div`,kn,[e(`div`,An,[e(`h2`,jn,i(t.$t(`seedance.name.returnLastFrame`)),1),a(f,{content:t.$t(`seedance.description.returnLastFrame`),class:`info`},null,8,[`content`])])]),e(`div`,Mn,[a(p,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,"inline-prompt":``,"active-text":t.$t(`seedance.button.on`),"inactive-text":t.$t(`seedance.button.off`)},null,8,[`modelValue`,`active-text`,`inactive-text`])])])):o(``,!0)}var Pn=K(Dn,[[`render`,Nn],[`__scopeId`,`data-v-edea5451`]]),Fn=v({name:`SeedanceSeedInput`,components:{ElInputNumber:D,InfoIcon:j},computed:{value:{get(){let e=this.$store.state.seedance?.config?.seed;return typeof e==`number`?e:-1},set(e){let t={...this.$store.state.seedance?.config||{}};t.seed=typeof e==`number`&&Number.isInteger(e)?e:-1,this.$store.commit(`seedance/setConfig`,t)}}}}),In={class:`field`},Ln={class:`label`},Rn={class:`box`},zn={class:`title font-bold`},Bn={class:`value`};function Vn(t,n,r,o,c,u){let d=l(`info-icon`),f=l(`el-input-number`);return g(),s(`div`,In,[e(`div`,Ln,[e(`div`,Rn,[e(`h2`,zn,i(t.$t(`seedance.name.seed`)),1),a(d,{content:t.$t(`seedance.description.seed`),class:`info`},null,8,[`content`])])]),e(`div`,Bn,[a(f,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,min:-1,max:2147483647,step:1,size:`default`,"controls-position":`right`,class:`counter`},null,8,[`modelValue`])])])}var Hn=K(Fn,[[`render`,Vn],[`__scopeId`,`data-v-685a9869`]]),Un=new Set(Object.keys(ce)),Wn=e=>Array.isArray(e)?e.filter(e=>!!e?.url):[];function Gn(e){let t={...e||{}};if(typeof t.prompt==`string`&&(t.prompt=t.prompt.trim(),t.prompt||delete t.prompt),t.model&&!Un.has(t.model))return{reject:`modelUnsupported`};let n=B(t.model);t.images=Wn(t.images);let r=t.images.some(e=>e.role===`first_frame`),i=t.images.some(e=>e.role===`last_frame`);!r&&i&&(t.images=t.images.map(e=>e.role===`last_frame`?{...e,role:`first_frame`}:e));let a=t.images.length>0;if(a||delete t.images,delete t.service_tier,!n.acceptsImage&&a)return{reject:`modelRejectsImage`};if(!n.acceptsAudio&&t.generate_audio&&(t.generate_audio=!1),!n.acceptsReturnLastFrame&&t.return_last_frame&&(t.return_last_frame=!1),!n.acceptsLastFrame&&a&&(t.images=t.images.filter(e=>e.role!==`last_frame`),a=t.images.length>0,a||delete t.images),n.acceptsReferenceAudio&&Array.isArray(t.audios)&&(t.audios=t.audios.filter(e=>e?.url)),(!n.acceptsReferenceAudio||!Array.isArray(t.audios)||t.audios.length===0)&&delete t.audios,n.acceptsReferenceVideo&&Array.isArray(t.videos)&&(t.videos=t.videos.filter(e=>e?.url)),(!n.acceptsReferenceVideo||!Array.isArray(t.videos)||t.videos.length===0)&&delete t.videos,!n.acceptsReferenceImage&&Array.isArray(t.images)&&(t.images=t.images.filter(e=>e.role!==`reference_image`),t.images.length===0&&delete t.images),a=Array.isArray(t.images)&&t.images.length>0,n.requiresImage&&!a||!n.acceptsText&&!a)return{reject:`modelRequiresImage`};let o=Array.isArray(t.videos)&&t.videos.length>0;return Array.isArray(t.audios)&&t.audios.length>0&&!a&&!o?{reject:`audioRequiresReference`}:{request:{...t,async:!0}}}var Kn=v({name:`SeedanceConfigPanel`,components:{MagicIcon:R,ElButton:G,PromptInput:Je,ModelSelector:tt,DurationSelector:ct,ResolutionSelector:gt,RatioSelector:Dt,GenerateAudioSwitch:Ft,CameraFixedSwitch:Ut,ReturnLastFrameSwitch:Pn,SeedInput:Hn,FirstFrameImage:Zt,LastFrameImage:an,ReferenceImage:fn,ReferenceAudio:yn,ReferenceVideo:En,Consumption:Me,ScenarioPaymentMode:Ie},emits:[`generate`],data(){return{quoteTimer:0,quoteRunId:0}},computed:{config(){return this.$store.state.seedance?.config},consumption(){return Te(this.config,this.service?.cost)},service(){return this.$store.state.seedance?.service},walletMode(){return Ee()&&J(`seedance`).mode===`wallet`}},watch:{walletMode:{handler(e){e&&this.scheduleQuote()},immediate:!0},config:{handler(){this.walletMode&&this.scheduleQuote()},deep:!0}},beforeUnmount(){window.clearTimeout(this.quoteTimer),this.quoteRunId+=1},methods:{scheduleQuote(){window.clearTimeout(this.quoteTimer),this.quoteTimer=window.setTimeout(this.refreshQuote,350)},async refreshQuote(){let e=J(`seedance`),t=++this.quoteRunId;e.quoteLoading=!0,e.quoteUsdc=void 0;let{request:n}=Gn(this.config);try{if(!n)return;let r=await q.quote(n);t===this.quoteRunId&&e.mode===`wallet`&&(e.quoteUsdc=r.amountUsdc)}catch(e){console.warn(`x402 quote failed`,e)}finally{t===this.quoteRunId&&(e.quoteLoading=!1)}},onGenerate(){this.$emit(`generate`)}}}),qn={class:`flex flex-col h-full`},Jn={class:`flex-1 overflow-y-auto p-5`},Yn={class:`flex flex-col items-center justify-center px-5 pb-5`};function Xn(t,n,c,u,d,m){let h=l(`prompt-input`),_=l(`model-selector`),v=l(`ratio-selector`),y=l(`resolution-selector`),b=l(`duration-selector`),x=l(`generate-audio-switch`),S=l(`camera-fixed-switch`),C=l(`return-last-frame-switch`),w=l(`seed-input`),T=l(`first-frame-image`),E=l(`last-frame-image`),D=l(`reference-image`),O=l(`reference-audio`),k=l(`reference-video`),A=l(`scenario-payment-mode`),j=l(`consumption`),M=l(`magic-icon`),N=l(`el-button`);return g(),s(`div`,qn,[e(`div`,Jn,[a(h,{class:`mb-4`}),a(_,{class:`mb-4`}),a(v,{class:`mb-4`}),a(y,{class:`mb-4`}),a(b,{class:`mb-4`}),a(x,{class:`mb-4`}),a(S,{class:`mb-4`}),a(C,{class:`mb-4`}),a(w,{class:`mb-4`}),a(T,{class:`mb-4`}),a(E,{class:`mb-4`}),a(D,{class:`mb-4`}),a(O,{class:`mb-4`}),a(k,{class:`mb-4`})]),e(`div`,Yn,[a(A,{scenario:`seedance`}),t.walletMode?o(``,!0):(g(),f(j,{key:0,value:t.consumption,service:t.service},null,8,[`value`,`service`])),a(N,{type:`primary`,class:`btn w-full`,round:``,onClick:t.onGenerate},{default:p(()=>[a(M,{class:`mr-2`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`seedance.button.generate`)),1)]),_:1},8,[`onClick`])])])}var Zn=K(Kn,[[`render`,Xn]]),Qn=v({name:`SeedanceTaskPreview`,components:{DeleteIcon:I,ApplicationIcon:k,ChannelIcon:te,FullscreenIcon:P,InfoIcon:ne,MagicIcon:R,TimeIcon:A,VolumeIcon:ie,WarningIcon:re,CopyToClipboard:ke,ElAlert:C,VideoPlayer:Pe,ElTooltip:S,ElButton:G,ImageWrapper:ze,ImagePreview:Q,AudioPreview:Ne,VideoPreview:Fe,ApiCodeButton:Le,ReportButton:Ae},props:{modelValue:{type:Object,required:!0}},computed:{video(){return this.modelValue?.response?.data},apiCodeBody(){let e=this.modelValue?.request;if(!e)return e;let{service_tier:t,...n}=e;return n},promptText(){let e=this.modelValue?.request;if(e?.prompt)return e.prompt;let t=e?.content?.find(e=>e?.type===`text`&&e?.text);return t?.text?t.text:this.video?.prompt},referenceImages(){let e=this.collectImages();if(e.length===0)return[];let t=[],n=e.find(e=>e?.role===`first_frame`);n?.url&&t.push({url:n.url,name:`first-frame`});let r=e.find(e=>e?.role===`last_frame`);return r?.url&&t.push({url:r.url,name:`last-frame`}),e.forEach((e,n)=>{e?.url&&e.role!==`first_frame`&&e.role!==`last_frame`&&t.push({url:e.url,name:e.role||`image-${n}`})}),t},referenceAudios(){let e=this.modelValue?.request,t=(e?.audios??[]).map(e=>e?.url).filter(Boolean);return(e?.content??[]).forEach(e=>{e?.type===`audio_url`&&e?.audio_url?.url&&t.push(e.audio_url.url)}),t},referenceVideos(){let e=this.modelValue?.request,t=(e?.videos??[]).map(e=>e?.url).filter(Boolean);return(e?.content??[]).forEach(e=>{e?.type===`video_url`&&e?.video_url?.url&&t.push(e.video_url.url)}),t}},methods:{async onDelete(){let e=this.modelValue?.id;if(e){try{await Oe.confirm(this.$t(`common.message.deleteTaskConfirm`),this.$t(`common.button.delete`),{type:`warning`,confirmButtonText:this.$t(`common.button.delete`),cancelButtonText:this.$t(`common.button.cancel`),confirmButtonClass:`el-button--danger`})}catch{return}try{await this.$store.dispatch(`seedance/deleteTask`,{id:e}),T.success(this.$t(`common.message.deleteTaskSuccess`))}catch{T.error(this.$t(`common.message.deleteTaskFailed`))}}},collectImages(){let e=this.modelValue?.request,t=Array.isArray(e?.images)?[...e.images]:[];return(e?.content??[]).forEach(e=>{e?.type===`image_url`&&e?.image_url?.url&&t.push({url:e.image_url.url,role:e.role})}),t},onDownload(e){window.open(e,`_blank`)}}}),$n={class:`preview`},er={class:`left`},tr={class:`main`},nr={class:`bot`},rr={class:`datetime`},ir=[`aria-label`],ar={class:`info`},or={key:0,class:`flex justify-start items-center gap-2 mt-2 w-full overflow-x-auto`},sr={key:1,class:`prompt mt-2`},cr={key:0},lr={key:1},ur={key:0,class:n({content:!0})},dr={class:`text-[var(--el-text-color-regular)] text-xs mb-0`},fr={key:1,class:n({content:!0})},pr={key:0,class:`mb-4`},mr={key:1,class:`mb-4`},hr={key:2,class:n({operations:!0,"mt-2":!0,"mb-2":!0})},gr={key:0,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},_r={key:1,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},vr={key:2,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},yr={key:0},br={key:1},xr={key:3,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Sr={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Cr={key:4,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},wr={key:5,class:`text-[var(--el-text-color-regular)] text-xs mb-0`},Tr={key:2,class:n({content:!0})},Er={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Dr={key:0,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Or={key:1,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},kr={key:2,class:`text-[var(--el-text-color-regular)] text-xs mb-0`},Ar={key:3,class:n({content:!0})},jr={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Mr={key:0,class:`text-[var(--el-text-color-regular)] text-xs mb-0`};function Nr(n,u,d,m,_,v){let y=l(`capability-presentation`),b=l(`delete-icon`),x=l(`el-tooltip`),S=l(`image-preview`),C=l(`audio-preview`),w=l(`video-preview`),T=l(`time-icon`),E=l(`magic-icon`),D=l(`copy-to-clipboard`),O=l(`el-alert`),k=l(`video-player`),A=l(`image-wrapper`),j=l(`el-button`),M=l(`api-code-button`),N=l(`report-button`),P=l(`application-icon`),ee=l(`fullscreen-icon`),te=l(`volume-icon`),F=l(`channel-icon`),ne=l(`warning-icon`),I=l(`info-icon`);return g(),s(`div`,$n,[e(`div`,er,[a(y,{capability:`seedance`,part:`avatar`,class:`avatar`})]),e(`div`,tr,[e(`div`,nr,[a(y,{capability:`seedance`,part:`name`}),e(`span`,rr,i(n.$dayjs.format(``+new Date(parseFloat((n.modelValue?.created_at||``).toString())*1e3))),1),a(x,{effect:`dark`,content:n.$t(`common.button.delete`),placement:`top`},{default:p(()=>[n.modelValue?.id?(g(),s(`button`,{key:0,type:`button`,class:`btn-delete`,"aria-label":n.$t(`common.button.delete`),onClick:u[0]||=t((...e)=>n.onDelete&&n.onDelete(...e),[`stop`])},[a(b,{size:`1em`,"aria-hidden":`true`,focusable:`false`})],8,ir)):o(``,!0)]),_:1},8,[`content`])]),e(`div`,ar,[n.referenceImages.length>0||n.referenceAudios.length>0||n.referenceVideos.length>0?(g(),s(`div`,or,[(g(!0),s(c,null,h(n.referenceImages,(e,t)=>(g(),f(S,{key:`image-${t}`,url:e.url,name:e.name,closable:!1},null,8,[`url`,`name`]))),128)),(g(!0),s(c,null,h(n.referenceAudios,(e,t)=>(g(),f(C,{key:`audio-${t}`,url:e,name:`audio-${t+1}`},null,8,[`url`,`name`]))),128)),(g(!0),s(c,null,h(n.referenceVideos,(e,t)=>(g(),f(w,{key:`video-${t}`,url:e,name:`video-${t+1}`},null,8,[`url`,`name`]))),128))])):o(``,!0),n.promptText?(g(),s(`p`,sr,[r(i(n.promptText)+` `,1),n.modelValue?.response?n.video?.status===`processing`||n.video?.status===`pending`?(g(),s(`span`,lr,` - (`+i(n.$t(`seedance.status.processing`))+`) `,1)):o(``,!0):(g(),s(`span`,cr,` - (`+i(n.$t(`seedance.status.pending`))+`) `,1))])):o(``,!0)]),n.modelValue?.response?n.modelValue?.response?.success===!0?(g(),s(`div`,fr,[n.video?.video_url?(g(),s(`div`,pr,[a(k,{src:n.video?.video_url},null,8,[`src`])])):o(``,!0),n.video?.last_frame_url?(g(),s(`div`,mr,[a(A,{src:n.video?.last_frame_url,"raw-src":n.video?.last_frame_url},null,8,[`src`,`raw-src`])])):o(``,!0),n.video?.video_url?(g(),s(`div`,hr,[a(x,{class:`box-item`,effect:`dark`,content:n.$t(`seedance.message.downloadVideo`),placement:`top-start`},{default:p(()=>[a(j,{type:`info`,size:`small`,class:`btn-action`,onClick:u[1]||=t(e=>n.onDownload(n.video?.video_url),[`stop`])},{default:p(()=>[r(i(n.$t(`seedance.button.download`)),1)]),_:1})]),_:1},8,[`content`]),a(M,{path:`/seedance/videos`,body:n.apiCodeBody},null,8,[`body`]),a(N,{service:`seedance`,"target-id":n.modelValue?.id,snapshot:{prompt:n.modelValue?.request?.prompt}},null,8,[`target-id`,`snapshot`])])):o(``,!0),a(O,{closable:!1,class:`mt-2 success`},{default:p(()=>[n.modelValue?.request?.model?(g(),s(`p`,gr,[a(P,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`seedance.name.model`))+`: `+i(n.modelValue?.request?.model),1)])):o(``,!0),n.video?.duration?(g(),s(`p`,_r,[a(T,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`seedance.name.duration`))+`: `+i(n.video?.duration)+`s `,1)])):o(``,!0),n.video?.resolution?(g(),s(`p`,vr,[a(ee,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`seedance.name.resolution`))+`: `+i(n.video?.resolution)+` `,1),n.video?.ratio?(g(),s(`span`,yr,` · `+i(n.video?.ratio),1)):o(``,!0),n.video?.framespersecond?(g(),s(`span`,br,` · `+i(n.video?.framespersecond)+`fps`,1)):o(``,!0)])):o(``,!0),n.modelValue?.request?.generate_audio?(g(),s(`p`,xr,[a(te,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`seedance.name.generateAudio`))+`: `+i(n.$t(`seedance.button.on`)),1)])):o(``,!0),e(`p`,Sr,[a(E,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`seedance.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(D,{content:n.modelValue?.id,class:`btn-copy inline-block`},null,8,[`content`])]),n.modelValue?.elapsed?(g(),s(`p`,Cr,[a(T,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`seedance.name.elapsed`))+`: `+i(n.modelValue?.elapsed?.toFixed(2))+`s `,1)])):o(``,!0),n.modelValue?.response?.trace_id?(g(),s(`p`,wr,[a(F,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`seedance.name.traceId`))+`: `+i(n.modelValue?.response?.trace_id)+` `,1),a(D,{content:n.modelValue?.response?.trace_id,class:`btn-copy inline-block`},null,8,[`content`])])):o(``,!0)]),_:1})])):n.modelValue?.response?.success===!1?(g(),s(`div`,Tr,[a(O,{closable:!1,class:`failure`},{template:p(()=>[a(ne,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`seedance.name.failure`)),1)]),default:p(()=>[e(`p`,Er,[a(E,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`seedance.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(D,{content:n.modelValue?.id,class:`btn-copy inline-block`},null,8,[`content`])]),n.modelValue?.response?.error?.message?(g(),s(`p`,Dr,[a(I,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`seedance.name.failureReason`))+`: `+i(n.modelValue?.response?.error?.message)+` `,1),a(D,{content:n.modelValue?.response?.error?.message,class:`btn-copy inline-block`},null,8,[`content`])])):o(``,!0),n.modelValue?.elapsed?(g(),s(`p`,Or,[a(T,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`seedance.name.elapsed`))+`: `+i(n.modelValue?.elapsed?.toFixed(2))+`s `,1)])):o(``,!0),n.modelValue?.response?.trace_id?(g(),s(`p`,kr,[a(F,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`seedance.name.traceId`))+`: `+i(n.modelValue?.response?.trace_id)+` `,1),a(D,{content:n.modelValue?.response?.trace_id,class:`btn-copy inline-block`},null,8,[`content`])])):o(``,!0)]),_:1})])):(g(),s(`div`,Ar,[a(O,{closable:!1,class:`info`},{template:p(()=>[a(I,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`seedance.name.status`)),1)]),default:p(()=>[e(`p`,jr,[a(E,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`seedance.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(D,{content:n.modelValue?.id,class:`btn-copy inline-block`},null,8,[`content`])]),n.modelValue?.response?.trace_id?(g(),s(`p`,Mr,[a(F,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`seedance.name.traceId`))+`: `+i(n.modelValue?.response?.trace_id)+` `,1),a(D,{content:n.modelValue?.response?.trace_id,class:`btn-copy inline-block`},null,8,[`content`])])):o(``,!0)]),_:1})])):(g(),s(`div`,ur,[a(O,{closable:!1,class:`info`},{template:p(()=>[a(T,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`seedance.status.pending`)),1)]),default:p(()=>[e(`p`,dr,[a(E,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`seedance.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(D,{content:n.modelValue?.id,class:`btn-copy inline-block`},null,8,[`content`])])]),_:1})]))])])}var Pr=v({name:`SeedanceRecentPanel`,components:{TaskPreview:K(Qn,[[`render`,Nr],[`__scopeId`,`data-v-91bf07f2`]]),BotPlaceholder:Re,NoTasks:ee,ScrollList:N},props:{loading:{type:Boolean,default:!1}},emits:[`reach-top`],computed:{tasks(){return{...this.$store.state.seedance?.tasks,items:this.$store.state.seedance?.tasks?.items?.slice()}}},methods:{getScrollElement(){return this.$refs.scrollList?.getScrollElement?.()}}}),Fr={key:0},Ir={key:2,class:`w-full h-full flex items-center justify-center`};function Lr(e,t,n,r,i,u){let d=l(`bot-placeholder`),m=l(`task-preview`),_=l(`scroll-list`),v=l(`no-tasks`);return g(),s(c,null,[e.tasks?.items===void 0?(g(),s(`div`,Fr,[a(d)])):e.tasks?.items?.length&&e.tasks?.items?.length>0?(g(),f(_,{key:1,ref:`scrollList`,class:`tasks w-full h-full overflow-y-auto`,loading:e.loading,onReachTop:t[0]||=t=>e.$emit(`reach-top`)},{default:p(()=>[(g(!0),s(c,null,h(e.tasks?.items,e=>(g(),f(m,{key:e.id,"model-value":e},null,8,[`model-value`]))),128))]),_:1},8,[`loading`])):o(``,!0),e.tasks?.items?.length===0?(g(),s(`div`,Ir,[a(v)])):o(``,!0)],64)}var Rr=v({name:`SeedanceIndex`,components:{ConfigPanel:Zn,Layout:Ge,RecentPanel:K(Pr,[[`render`,Lr]])},mixins:[we],inject:[`initialized`],data(){return{task:void 0,job:0,loadingMore:!1,fetchingTasks:!1,walletTaskIds:[]}},computed:{applicationsLoading(){return this.$store.state.seedance?.status?.getApplications===w.Request},tasksLoading(){return this.$store.state.seedance?.status?.getTasks===w.Request||this.fetchingTasks},credential(){return this.$store.state.seedance?.credential},config(){return this.$store.state.seedance?.config},tasks(){return this.$store.state.seedance?.tasks},walletMode(){return Ee()&&J(`seedance`).mode===`wallet`}},watch:{walletMode:{async handler(e,t){if(!(t===void 0||e===t)){if(this.$store.commit(`seedance/setTasks`,void 0),e&&!this.job&&(this.job=window.setInterval(this.onGetTasks,5e3)),!e&&!this.credential?.token){window.clearInterval(this.job),this.job=0,await this.onScrollDown();return}await this.onGetTasks(),await this.onScrollDown()}}},initialized:{async handler(e){e&&(await this.onGetTasks(),await this.onScrollDown(),this.job||=window.setInterval(this.onGetTasks,5e3))},immediate:!0}},async mounted(){await this.onGetService()},async unmounted(){window.clearInterval(this.job)},methods:{async onReachTop(){await F({tasks:this.tasks,loading:this.loadingMore,setLoading:e=>this.loadingMore=e,isBlocked:()=>this.tasksLoading||this.applicationsLoading,fetch:e=>this.onGetTasks({createdAtMax:e}),getScrollElement:()=>this.getTasksScrollElement()})},async onGetService(){await this.$store.dispatch(`seedance/getService`)},async onScrollDown(){await this.$nextTick();let e=this.getTasksScrollElement();e&&(e.scrollTop=e.scrollHeight)},async onGetTasks(e){if(this.applicationsLoading||this.fetchingTasks)return;let{limit:t=5,createdAtMin:n,createdAtMax:r}=e||{};this.fetchingTasks=!0;try{await this.$store.dispatch(`seedance/getTasks`,{limit:t,createdAtMin:n,createdAtMax:r,...this.walletMode&&!this.credential?.token?{mode:`x402`,ids:this.walletTaskIds}:{}})}finally{this.fetchingTasks=!1}},async onGenerate(){if(!Se(this.uploadTracker,e=>this.$t(e),e=>T.warning(e)))return;let{request:e,reject:t}=Gn(this.config);if(t){T.warning(this.$t(`seedance.message.${t}`));return}if(!e)return;let n;if(this.walletMode){let t=this.getWalletContext();if(!t){T.warning(this.$t(`common.x402Scenario.connectWalletFirst`));return}n=q.generate(e,{mode:`x402`,x402:{wallet:t,confirm:e=>this.confirmWalletPayment(e),identityToken:this.credential?.token}})}else{if(!De())return;let t=this.credential?.token;if(!t)return;n=q.generate(e,{token:t})}T.info(this.$t(`seedance.message.startingTask`)),xe(`seedance`,n).then(e=>{let t=e?.data?.task_id;this.walletMode&&!this.credential?.token&&t&&!this.walletTaskIds.includes(t)&&this.walletTaskIds.unshift(t),T.success(this.$t(`seedance.message.startTaskSuccess`))}).catch(e=>{let t=e?.response?.data;e instanceof Ce||(t?.error?.code===`used_up`?T.error(this.$t(`seedance.message.usedUp`)):this.walletMode?T.error(`${this.$t(`common.x402Scenario.paymentFailed`)} ${e?.message||``}`.trim()):T.error(this.$t(`seedance.message.startTaskFailed`)+(t?.error?.message||``)))}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})},getWalletContext(){return be(this.$wallet)},async confirmWalletPayment(e){return Oe.confirm(this.$t(`common.x402Scenario.confirmPayment`,{amount:e.amountUsdc}),this.$t(`order.message.x402ConfirmTitle`),{confirmButtonText:this.$t(`order.message.x402WalletPayCta`),cancelButtonText:this.$t(`common.button.cancel`),type:`warning`}).then(()=>!0).catch(()=>!1)},getTasksScrollElement(){return this.$refs.recentPanel?.getScrollElement?.()}}});function zr(e,t,n,r,i,o){let s=l(`config-panel`),c=l(`recent-panel`),u=l(`layout`);return g(),f(u,null,{config:p(()=>[a(s,{onGenerate:e.onGenerate},null,8,[`onGenerate`])]),result:p(()=>[a(c,{ref:`recentPanel`,loading:e.loadingMore,onReachTop:e.onReachTop},null,8,[`loading`,`onReachTop`])]),_:1})}var Br=K(Rr,[[`render`,zr]]);export{Br as default};
|
|
1
|
+
import"./rolldown-runtime--c01j_DQ.js";import{A as e,C as t,Gt as n,I as r,Jt as i,L as a,M as o,N as s,T as c,at as l,ht as u,it as d,j as f,mt as p,qt as m,rt as h,tt as g,x as _,z as v}from"./vendor-chart-Dw-P17PN.js";import{r as y,t as b}from"./select-Bs3ZkE9R.js";import{t as x}from"./upload-uY7VeHmd.js";import{t as S}from"./tooltip-DtiQm14e.js";import{t as C}from"./alert-BprQRUmf.js";import{h as w,v as T}from"./models-CwklOk8Z.js";import{t as E}from"./drawer-C9ziMa5D.js";import{t as D}from"./input-number-D2KUI1kN.js";import{t as O}from"./switch-DRwxl6Da.js";import{t as k}from"./box-BVjGLFxS.js";import{t as A}from"./clock-CEYSZpiZ.js";import{a as j,i as M,n as N,o as P,r as ee,s as te,t as F}from"./pagination-B8FPaRIA.js";import{t as ne}from"./info-DlDYYYyz.js";import{t as I}from"./trash-2-84jnyEiH.js";import{t as re}from"./triangle-alert-DijP-r53.js";import{t as L}from"./upload-B-GObY7P.js";import{t as ie}from"./volume-2-CzcGTWGH.js";import{t as R}from"./wand-sparkles-dlhWJtt5.js";import{$t as ae,_n as z,an as oe,bn as B,cn as se,dn as ce,en as le,fn as ue,gn as V,hn as de,in as fe,ln as pe,mn as me,on as he,pn as ge,rn as _e,sn as ve,un as ye,vn as H}from"./constants-DlrPFkyM.js";import{$r as be,$t as U,Jt as W,Ma as G,O as K,Oi as xe,Qt as Se,Wn as q,Zr as Ce,en as we,hi as J,ia as Y,in as Te,mi as Ee,nn as X,pn as De,tn as Z,va as Oe}from"./index-BOCSBfUe.js";import{t as ke}from"./CopyToClipboard-Bt4pNx5a.js";import{t as Ae}from"./ReportButton-DzpX6LE5.js";import{t as Q}from"./ImagePreview-BtYz7VS_.js";import{n as je}from"./taskDrawerMixin-DyAUhFEq.js";import{t as Me}from"./Consumption-CQoAp-2Q.js";import{t as Ne}from"./AudioPreview-LQ8lEoP-.js";import{t as Pe}from"./VideoPlayer-Coh2RFTi.js";import{t as Fe}from"./VideoPreview-C5oYTkjm.js";import{t as Ie}from"./ScenarioPaymentMode-CqRu92vx.js";import{t as Le}from"./ApiCodeButton-BAkOBxie.js";import{t as Re}from"./BotPlaceholder-CBS4lAjm.js";import{t as ze}from"./ImageWrapper-CyPuHE9N.js";var Be=v({name:`LayoutSeedance`,components:{MagicIcon:R,ElDrawer:E,ElButton:G},mixins:[je]}),Ve={class:`main flex flex-row flex-1`},He={class:`config w-[320px] flex-none h-full min-h-0 overflow-hidden flex flex-col bg-[var(--app-sidebar-bg)] border-r border-[var(--app-border-subtle)]`},Ue={class:`result h-full p-6 flex-1 flex flex-col min-w-0 overflow-x-hidden bg-[var(--app-content-bg)]`};function We(t,n,r,i,o,c){let f=l(`magic-icon`),m=l(`el-button`),h=l(`el-drawer`);return g(),s(`div`,Ve,[e(`div`,He,[d(t.$slots,`config`,{},void 0,!0)]),e(`div`,Ue,[d(t.$slots,`result`,{},void 0,!0)]),u(a(m,{circle:``,class:`menu`,"aria-label":t.$t(`common.button.openMenu`),title:t.$t(`common.button.openMenu`),onClick:n[0]||=e=>t.drawer=!0},{default:p(()=>[a(f,{size:`1em`,"aria-hidden":`true`,focusable:`false`})]),_:1},8,[`aria-label`,`title`]),[[_,!t.tasksEmpty]]),a(h,{modelValue:t.drawer,"onUpdate:modelValue":n[1]||=e=>t.drawer=e,direction:`ltr`,"with-header":!1,size:`340px`,class:`generator-drawer`},{default:p(()=>[d(t.$slots,`config`,{},void 0,!0)]),_:3},8,[`modelValue`])])}var Ge=K(Be,[[`render`,We],[`__scopeId`,`data-v-ff53dce1`]]),Ke=v({name:`SeedancePromptInput`,components:{PromptTextarea:M},computed:{prompt:{get(){return this.$store.state.seedance?.config?.prompt},set(e){this.$store.commit(`seedance/setConfig`,{...this.$store.state.seedance?.config,prompt:e})}}},mounted(){this.prompt||=``}});function qe(e,t,n,r,i,a){let o=l(`prompt-textarea`);return g(),f(o,{modelValue:e.prompt,"onUpdate:modelValue":t[0]||=t=>e.prompt=t,title:e.$t(`seedance.name.prompt`),info:e.$t(`seedance.description.prompt`),placeholder:e.$t(`seedance.placeholder.prompt`),"min-rows":5},null,8,[`modelValue`,`title`,`info`,`placeholder`])}var Je=K(Ke,[[`render`,qe]]),Ye=v({name:`SeedanceModelSelector`,components:{ElSelect:y,ElOption:b,InfoIcon:j},data(){return{options:[{value:se,label:this.$t(`seedance.model.seedance20`)},{value:pe,label:this.$t(`seedance.model.seedance20Fast`)},{value:ye,label:this.$t(`seedance.model.seedance20Mini`)},{value:ve,label:this.$t(`seedance.model.seedance15pro`)},{value:oe,label:this.$t(`seedance.model.seedance10pro`)},{value:he,label:this.$t(`seedance.model.seedance10proFast`)},{value:fe,label:this.$t(`seedance.model.seedance10liteT2v`)},{value:_e,label:this.$t(`seedance.model.seedance10liteI2v`)}]}},computed:{value:{get(){return this.$store.state.seedance?.config?.model},set(e){this.$store.commit(`seedance/setConfig`,{...this.$store.state.seedance?.config,model:e})}}},mounted(){this.value||=ae}}),Xe={class:`field`},Ze={class:`label`},Qe={class:`box`},$e={class:`title font-bold`};function et(t,n,r,o,u,d){let m=l(`info-icon`),_=l(`el-option`),v=l(`el-select`);return g(),s(`div`,Xe,[e(`div`,Ze,[e(`div`,Qe,[e(`h2`,$e,i(t.$t(`seedance.name.model`)),1),a(m,{content:t.$t(`seedance.description.model`),class:`info`},null,8,[`content`])])]),a(v,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,class:`value`,placeholder:t.$t(`seedance.placeholder.select`)},{default:p(()=>[(g(!0),s(c,null,h(t.options,e=>(g(),f(_,{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`])])}var tt=K(Ye,[[`render`,et],[`__scopeId`,`data-v-deb4c429`]]),nt=v({name:`SeedanceDurationSelector`,components:{ElSelect:y,ElOption:b,InfoIcon:j},computed:{model(){return this.$store.state.seedance?.config?.model},capability(){return B(this.model)},options(){let e=[];this.capability.supportsAutoDuration&&e.push({value:-1,label:`${this.$t(`seedance.placeholder.seed`)} (-1)`});for(let t=this.capability.minDuration;t<=this.capability.maxDuration;t++)e.push({value:t,label:`${t}s`});return e},value:{get(){return this.$store.state.seedance?.config?.duration},set(e){this.$store.commit(`seedance/setConfig`,{...this.$store.state.seedance?.config,duration:e})}}},watch:{model(){this.clampValue()}},mounted(){this.value?this.clampValue():this.value=5},methods:{clampValue(){let e=this.value;e!==void 0&&!(e===-1&&this.capability.supportsAutoDuration)&&(e<this.capability.minDuration||e>this.capability.maxDuration)&&(this.value=5)}}}),rt={class:`field`},it={class:`label`},at={class:`box`},ot={class:`title font-bold`};function st(t,n,r,o,u,d){let m=l(`info-icon`),_=l(`el-option`),v=l(`el-select`);return g(),s(`div`,rt,[e(`div`,it,[e(`div`,at,[e(`h2`,ot,i(t.$t(`seedance.name.duration`)),1),a(m,{content:t.$t(`seedance.description.duration`),class:`info`},null,8,[`content`])])]),a(v,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,class:`value`,placeholder:t.$t(`seedance.placeholder.select`)},{default:p(()=>[(g(!0),s(c,null,h(t.options,e=>(g(),f(_,{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`])])}var ct=K(nt,[[`render`,st],[`__scopeId`,`data-v-d61cc21b`]]),$={[z]:0,[H]:1,[V]:2,"4k":3},lt=v({name:`SeedanceResolutionSelector`,components:{InfoIcon:j,ElTooltip:S},computed:{model(){return this.$store.state.seedance?.config?.model},capability(){return B(this.model)},options(){let e=[{value:z,label:`480p`},{value:H,label:`720p`},{value:V,label:`1080p`},{value:`4k`,label:`4k`}],t=$[this.capability.maxResolution]??$[`1080p`];return e.map(e=>({...e,disabled:$[e.value]>t}))},value:{get(){return this.$store.state.seedance?.config?.resolution},set(e){this.$store.commit(`seedance/setConfig`,{...this.$store.state.seedance?.config,resolution:e})}}},watch:{model(){this.clampValue()}},mounted(){this.value?this.clampValue():this.value=this.capability.defaultResolution||`720p`},methods:{onSelect(e){e.disabled||(this.value=e.value)},clampValue(){let e=this.value,t=this.options.find(t=>t.value===e);(!e||t&&t.disabled)&&(this.value=this.capability.defaultResolution||`720p`)}}}),ut={class:`resolution`},dt={class:`header`},ft={class:`title font-bold`},pt={class:`items`},mt=[`onClick`];function ht(t,r,o,u,d,m){let _=l(`info-icon`),v=l(`el-tooltip`);return g(),s(`div`,ut,[e(`div`,dt,[e(`h2`,ft,i(t.$t(`seedance.name.resolution`)),1),a(_,{content:t.$t(`seedance.description.resolution`),class:`info`},null,8,[`content`])]),e(`div`,pt,[(g(!0),s(c,null,h(t.options,r=>(g(),f(v,{key:r.value,content:t.$t(`seedance.message.resolutionNotSupported`),disabled:!r.disabled,placement:`top`},{default:p(()=>[e(`div`,{class:n([`item`,{active:t.value===r.value,disabled:r.disabled}]),onClick:e=>t.onSelect(r)},i(r.label),11,mt)]),_:2},1032,[`content`,`disabled`]))),128))])])}var gt=K(lt,[[`render`,ht],[`__scopeId`,`data-v-db7e8aff`]]),_t=v({name:`SeedanceRatioSelector`,components:{InfoIcon:j},computed:{options(){return[{value:ue,label:`16:9`,w:32,h:18},{value:me,label:`9:16`,w:18,h:32},{value:`4:3`,label:`4:3`,w:28,h:21},{value:`3:4`,label:`3:4`,w:21,h:28},{value:`1:1`,label:`1:1`,w:24,h:24},{value:ge,label:`21:9`,w:34,h:14},{value:de,label:this.$t(`seedance.ratio.adaptive`),w:0,h:0}]},value:{get(){return this.$store.state.seedance?.config?.ratio},set(e){this.$store.commit(`seedance/setConfig`,{...this.$store.state.seedance?.config,ratio:e})}}},mounted(){this.value||=le}}),vt={class:`ratio`},yt={class:`header`},bt={class:`title font-bold`},xt={class:`items`},St=[`onClick`],Ct={class:`preview`},wt={key:1,class:`rect rect-auto`},Tt={class:`name`};function Et(t,r,o,u,d,f){let p=l(`info-icon`);return g(),s(`div`,vt,[e(`div`,yt,[e(`h2`,bt,i(t.$t(`seedance.name.ratio`)),1),a(p,{content:t.$t(`seedance.description.ratio`),class:`info`},null,8,[`content`])]),e(`div`,xt,[(g(!0),s(c,null,h(t.options,r=>(g(),s(`div`,{key:r.value,class:n([`item`,{active:t.value===r.value}]),onClick:e=>t.value=r.value},[e(`div`,Ct,[r.w&&r.h?(g(),s(`div`,{key:0,class:`rect`,style:m({width:r.w+`px`,height:r.h+`px`})},null,4)):(g(),s(`div`,wt,`A`))]),e(`div`,Tt,i(r.label),1)],10,St))),128))])])}var Dt=K(_t,[[`render`,Et],[`__scopeId`,`data-v-8ddec2dd`]]),Ot=v({name:`SeedanceGenerateAudioSwitch`,components:{ElSwitch:O,InfoIcon:j},computed:{isSupported(){let e=this.$store.state.seedance?.config?.model;return B(e).acceptsAudio},value:{get(){return this.$store.state.seedance?.config?.generate_audio??!1},set(e){this.$store.commit(`seedance/setConfig`,{...this.$store.state.seedance?.config,generate_audio:e})}}},watch:{isSupported(e){!e&&this.value&&(this.value=!1)}},mounted(){this.value===void 0&&(this.value=!1)}}),kt={key:0,class:`field`},At={class:`label`},jt={class:`box`},Mt={class:`title font-bold`},Nt={class:`value`};function Pt(t,n,r,c,u,d){let f=l(`info-icon`),p=l(`el-switch`);return t.isSupported?(g(),s(`div`,kt,[e(`div`,At,[e(`div`,jt,[e(`h2`,Mt,i(t.$t(`seedance.name.generateAudio`)),1),a(f,{content:t.$t(`seedance.description.generateAudio`),class:`info`},null,8,[`content`])])]),e(`div`,Nt,[a(p,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,"inline-prompt":``,"active-text":t.$t(`seedance.button.on`),"inactive-text":t.$t(`seedance.button.off`)},null,8,[`modelValue`,`active-text`,`inactive-text`])])])):o(``,!0)}var Ft=K(Ot,[[`render`,Pt],[`__scopeId`,`data-v-df51dfbd`]]),It=v({name:`SeedanceCameraFixedSwitch`,components:{ElSwitch:O,InfoIcon:j},computed:{value:{get(){return this.$store.state.seedance?.config?.camerafixed??!1},set(e){this.$store.commit(`seedance/setConfig`,{...this.$store.state.seedance?.config,camerafixed:e})}}},mounted(){this.$store.state.seedance?.config?.camerafixed===void 0&&(this.value=!1)}}),Lt={class:`field`},Rt={class:`label`},zt={class:`box`},Bt={class:`title font-bold`},Vt={class:`value`};function Ht(t,n,r,o,c,u){let d=l(`info-icon`),f=l(`el-switch`);return g(),s(`div`,Lt,[e(`div`,Rt,[e(`div`,zt,[e(`h2`,Bt,i(t.$t(`seedance.name.cameraFixed`)),1),a(d,{content:t.$t(`seedance.description.cameraFixed`),class:`info`},null,8,[`content`])])]),e(`div`,Vt,[a(f,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,"inline-prompt":``,"active-text":t.$t(`seedance.button.on`),"inactive-text":t.$t(`seedance.button.off`)},null,8,[`modelValue`,`active-text`,`inactive-text`])])])}var Ut=K(It,[[`render`,Ht],[`__scopeId`,`data-v-ae777d61`]]),Wt=v({name:`SeedanceFirstFrameImage`,components:{UploadIcon:L,ElUpload:x,ElButton:G,InfoIcon:j,ImagePreview:Q},mixins:[X,Z,U,W],data(){return{fileList:[],uploadUrl:Y()+`/api/v1/files/`}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},model(){return this.$store.state.seedance?.config?.model},capability(){return B(this.model)},urls(){return this.fileList.map(e=>e?.response?.file_url)}},watch:{"capability.acceptsImage"(e){e||(this.fileList=[],this.onSetFirstFrameUrl())}},methods:{onExceed(){T.warning(this.$t(`seedance.message.uploadExceed`))},onError(){T.error(this.$t(`seedance.message.uploadError`))},onSetFirstFrameUrl(){let e=this.urls?.[0],t=(this.$store.state.seedance?.config?.images||[]).filter(e=>e?.role!==`first_frame`);e&&t.push({url:e,role:`first_frame`}),this.$store.commit(`seedance/setConfig`,{...this.$store.state.seedance?.config,images:t.length>0?t:void 0})},async onSuccess(){this.onSetFirstFrameUrl()},async onRemove(){this.onSetFirstFrameUrl()}}}),Gt={key:0,class:`relative`},Kt={class:`flex min-h-8 items-center pr-20`},qt={class:`flex justify-start items-center`},Jt={class:`text-sm font-bold`},Yt={key:0,class:`required-badge`};function Xt(t,n,c,u,d,m){let h=l(`info-icon`),_=l(`image-preview`),v=l(`upload-icon`),y=l(`el-button`),b=l(`el-upload`);return t.capability.acceptsImage?(g(),s(`div`,Gt,[e(`div`,Kt,[e(`div`,qt,[e(`span`,Jt,i(t.$t(`seedance.name.firstFrame`)),1),t.capability.requiresImage?(g(),s(`span`,Yt,i(t.$t(`seedance.name.required`)),1)):o(``,!0),a(h,{content:t.$t(`seedance.description.firstFrame`)},null,8,[`content`])])]),a(b,{ref:`uploader`,"file-list":t.fileList,"onUpdate:fileList":n[0]||=e=>t.fileList=e,name:`file`,accept:`.png,.jpg,.jpeg,.gif,.bmp,.webp`,limit:1,class:`upload-wrapper`,multiple:!1,"before-upload":t.beforeUploadSizeGuard,action:t.uploadUrl,"list-type":`picture`,"on-exceed":t.onExceed,"on-error":t.onError,"on-success":t.onSuccess,"on-remove":t.onRemove,headers:t.headers},{file:p(({file:e})=>[e.url&&e.percentage!==void 0?(g(),f(_,{key:0,url:e.url,name:e.name,percentage:e.percentage,onRemove:n=>t.fileList.splice(t.fileList.indexOf(e),1)},null,8,[`url`,`name`,`percentage`,`onRemove`])):o(``,!0)]),default:p(()=>[a(y,{round:``,type:`primary`,size:`small`,class:`btn btn-upload`},{default:p(()=>[a(v,{class:`icon mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`seedance.button.upload`)),1)]),_:1})]),_:1},8,[`file-list`,`before-upload`,`action`,`on-exceed`,`on-error`,`on-success`,`on-remove`,`headers`])])):o(``,!0)}var Zt=K(Wt,[[`render`,Xt],[`__scopeId`,`data-v-9ed26f7d`]]),Qt=v({name:`SeedanceLastFrameImage`,components:{UploadIcon:L,ElUpload:x,ElButton:G,ImagePreview:Q,InfoIcon:j},mixins:[X,Z,U,W],data(){return{fileList:[],uploadUrl:Y()+`/api/v1/files/`}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},model(){return this.$store.state.seedance?.config?.model},capability(){return B(this.model)},urls(){return this.fileList.map(e=>e?.response?.file_url)}},watch:{"capability.acceptsLastFrame"(e){e||(this.fileList=[],this.onSetLastFrameUrl())}},methods:{onExceed(){T.warning(this.$t(`seedance.message.uploadExceed`))},onError(){T.error(this.$t(`seedance.message.uploadError`))},onSetLastFrameUrl(){let e=this.urls?.[0],t=(this.$store.state.seedance?.config?.images||[]).filter(e=>e?.role!==`last_frame`);e&&t.push({url:e,role:`last_frame`}),this.$store.commit(`seedance/setConfig`,{...this.$store.state.seedance?.config,images:t.length>0?t:void 0})},async onSuccess(){this.onSetLastFrameUrl()},async onRemove(){this.onSetLastFrameUrl()}}}),$t={key:0,class:`relative`},en={class:`flex min-h-8 items-center pr-20`},tn={class:`flex justify-start items-center`},nn={class:`text-sm font-bold`};function rn(t,n,c,u,d,m){let h=l(`info-icon`),_=l(`image-preview`),v=l(`upload-icon`),y=l(`el-button`),b=l(`el-upload`);return t.capability.acceptsLastFrame?(g(),s(`div`,$t,[e(`div`,en,[e(`div`,tn,[e(`span`,nn,i(t.$t(`seedance.name.lastFrame`)),1),a(h,{content:t.$t(`seedance.description.lastFrame`)},null,8,[`content`])])]),a(b,{ref:`uploader`,"file-list":t.fileList,"onUpdate:fileList":n[0]||=e=>t.fileList=e,name:`file`,accept:`.png,.jpg,.jpeg,.gif,.bmp,.webp`,limit:1,class:`upload-wrapper`,multiple:!1,"before-upload":t.beforeUploadSizeGuard,action:t.uploadUrl,"list-type":`picture`,"on-exceed":t.onExceed,"on-error":t.onError,"on-success":t.onSuccess,"on-remove":t.onRemove,headers:t.headers},{file:p(({file:e})=>[e.url&&e.percentage!==void 0?(g(),f(_,{key:0,url:e.url,name:e.name,percentage:e.percentage,onRemove:n=>t.fileList.splice(t.fileList.indexOf(e),1)},null,8,[`url`,`name`,`percentage`,`onRemove`])):o(``,!0)]),default:p(()=>[a(y,{round:``,type:`primary`,size:`small`,class:`btn btn-upload`},{default:p(()=>[a(v,{class:`icon mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`seedance.button.upload`)),1)]),_:1})]),_:1},8,[`file-list`,`before-upload`,`action`,`on-exceed`,`on-error`,`on-success`,`on-remove`,`headers`])])):o(``,!0)}var an=K(Qt,[[`render`,rn],[`__scopeId`,`data-v-9b573754`]]),on=v({name:`SeedanceReferenceImage`,components:{UploadIcon:L,ElUpload:x,ElButton:G,InfoIcon:j,ImagePreview:Q},mixins:[X,Z,U,W],data(){return{fileList:[],uploadUrl:Y()+`/api/v1/files/`}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},model(){return this.$store.state.seedance?.config?.model},capability(){return B(this.model)},urls(){return this.fileList.map(e=>e?.response?.file_url)}},watch:{"capability.acceptsReferenceImage"(e){e||(this.fileList=[],this.onSetReferenceImageUrls())}},methods:{onExceed(){T.warning(this.$t(`seedance.message.uploadExceed`))},onError(){T.error(this.$t(`seedance.message.uploadError`))},onSetReferenceImageUrls(){let e=(this.urls||[]).filter(Boolean),t=(this.$store.state.seedance?.config?.images||[]).filter(e=>e?.role!==`reference_image`);e.forEach(e=>t.push({url:e,role:`reference_image`})),this.$store.commit(`seedance/setConfig`,{...this.$store.state.seedance?.config,images:t.length>0?t:void 0})},async onSuccess(){this.onSetReferenceImageUrls()},async onRemove(){this.onSetReferenceImageUrls()}}}),sn={key:0,class:`relative`},cn={class:`flex min-h-8 items-center pr-20`},ln={class:`flex justify-start items-center`},un={class:`text-sm font-bold`};function dn(t,n,c,u,d,m){let h=l(`info-icon`),_=l(`image-preview`),v=l(`upload-icon`),y=l(`el-button`),b=l(`el-upload`);return t.capability.acceptsReferenceImage?(g(),s(`div`,sn,[e(`div`,cn,[e(`div`,ln,[e(`span`,un,i(t.$t(`seedance.name.referenceImage`)),1),a(h,{content:t.$t(`seedance.description.referenceImage`)},null,8,[`content`])])]),a(b,{ref:`uploader`,"file-list":t.fileList,"onUpdate:fileList":n[0]||=e=>t.fileList=e,name:`file`,accept:`.png,.jpg,.jpeg,.gif,.bmp,.webp`,limit:1,class:`upload-wrapper`,multiple:!1,"before-upload":t.beforeUploadSizeGuard,action:t.uploadUrl,"list-type":`picture`,"on-exceed":t.onExceed,"on-error":t.onError,"on-success":t.onSuccess,"on-remove":t.onRemove,headers:t.headers},{file:p(({file:e})=>[e.url&&e.percentage!==void 0?(g(),f(_,{key:0,url:e.url,name:e.name,percentage:e.percentage,onRemove:n=>t.fileList.splice(t.fileList.indexOf(e),1)},null,8,[`url`,`name`,`percentage`,`onRemove`])):o(``,!0)]),default:p(()=>[a(y,{round:``,type:`primary`,size:`small`,class:`btn btn-upload`},{default:p(()=>[a(v,{class:`icon mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`seedance.button.upload`)),1)]),_:1})]),_:1},8,[`file-list`,`before-upload`,`action`,`on-exceed`,`on-error`,`on-success`,`on-remove`,`headers`])])):o(``,!0)}var fn=K(on,[[`render`,dn],[`__scopeId`,`data-v-3ae3845d`]]),pn=v({name:`SeedanceReferenceAudio`,components:{UploadIcon:L,ElUpload:x,ElButton:G,InfoIcon:j},mixins:[Z,U,W],data(){return{fileList:[],uploadUrl:Y()+`/api/v1/files/`}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},model(){return this.$store.state.seedance?.config?.model},capability(){return B(this.model)},urls(){return this.fileList.map(e=>e?.response?.file_url)}},watch:{"capability.acceptsReferenceAudio"(e){e||(this.fileList=[],this.onSetReferenceAudios())}},methods:{onExceed(){T.warning(this.$t(`seedance.message.uploadExceed`))},onError(){T.error(this.$t(`seedance.message.uploadError`))},onSetReferenceAudios(){let e=(this.urls||[]).filter(Boolean);this.$store.commit(`seedance/setConfig`,{...this.$store.state.seedance?.config,audios:e.length>0?e.map(e=>({url:e})):void 0})},async onSuccess(){this.onSetReferenceAudios()},async onRemove(){this.onSetReferenceAudios()}}}),mn={key:0,class:`relative`},hn={class:`flex min-h-8 items-center pr-20`},gn={class:`flex justify-start items-center`},_n={class:`text-sm font-bold`};function vn(t,n,c,u,d,f){let m=l(`info-icon`),h=l(`upload-icon`),_=l(`el-button`),v=l(`el-upload`);return t.capability.acceptsReferenceAudio?(g(),s(`div`,mn,[e(`div`,hn,[e(`div`,gn,[e(`span`,_n,i(t.$t(`seedance.name.referenceAudio`)),1),a(m,{content:t.$t(`seedance.description.referenceAudio`)},null,8,[`content`])])]),a(v,{ref:`uploader`,"file-list":t.fileList,"onUpdate:fileList":n[0]||=e=>t.fileList=e,name:`file`,accept:`.mp3,.wav,.m4a,.aac,.ogg,.flac`,limit:1,class:`upload-wrapper`,multiple:!1,"before-upload":t.beforeUploadSizeGuard,action:t.uploadUrl,"list-type":`text`,"on-exceed":t.onExceed,"on-error":t.onError,"on-success":t.onSuccess,"on-remove":t.onRemove,headers:t.headers},{default:p(()=>[a(_,{round:``,type:`primary`,size:`small`,class:`btn btn-upload`},{default:p(()=>[a(h,{class:`icon mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`seedance.button.upload`)),1)]),_:1})]),_:1},8,[`file-list`,`before-upload`,`action`,`on-exceed`,`on-error`,`on-success`,`on-remove`,`headers`])])):o(``,!0)}var yn=K(pn,[[`render`,vn],[`__scopeId`,`data-v-99f6c8be`]]),bn=v({name:`SeedanceReferenceVideo`,components:{UploadIcon:L,ElUpload:x,ElButton:G,InfoIcon:j},mixins:[Z,U,W],data(){return{fileList:[],uploadUrl:Y()+`/api/v1/files/`}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},model(){return this.$store.state.seedance?.config?.model},capability(){return B(this.model)},urls(){return this.fileList.map(e=>e?.response?.file_url)}},watch:{"capability.acceptsReferenceVideo"(e){e||(this.fileList=[],this.onSetReferenceVideos())}},methods:{onExceed(){T.warning(this.$t(`seedance.message.uploadExceed`))},onError(){T.error(this.$t(`seedance.message.uploadError`))},onSetReferenceVideos(){let e=(this.urls||[]).filter(Boolean);this.$store.commit(`seedance/setConfig`,{...this.$store.state.seedance?.config,videos:e.length>0?e.map(e=>({url:e})):void 0})},async onSuccess(){this.onSetReferenceVideos()},async onRemove(){this.onSetReferenceVideos()}}}),xn={key:0,class:`relative`},Sn={class:`flex min-h-8 items-center pr-20`},Cn={class:`flex justify-start items-center`},wn={class:`text-sm font-bold`};function Tn(t,n,c,u,d,f){let m=l(`info-icon`),h=l(`upload-icon`),_=l(`el-button`),v=l(`el-upload`);return t.capability.acceptsReferenceVideo?(g(),s(`div`,xn,[e(`div`,Sn,[e(`div`,Cn,[e(`span`,wn,i(t.$t(`seedance.name.referenceVideo`)),1),a(m,{content:t.$t(`seedance.description.referenceVideo`)},null,8,[`content`])])]),a(v,{ref:`uploader`,"file-list":t.fileList,"onUpdate:fileList":n[0]||=e=>t.fileList=e,name:`file`,accept:`.mp4,.mov,.webm,.mkv,.avi`,limit:1,class:`upload-wrapper`,multiple:!1,"before-upload":t.beforeUploadSizeGuard,action:t.uploadUrl,"list-type":`text`,"on-exceed":t.onExceed,"on-error":t.onError,"on-success":t.onSuccess,"on-remove":t.onRemove,headers:t.headers},{default:p(()=>[a(_,{round:``,type:`primary`,size:`small`,class:`btn btn-upload`},{default:p(()=>[a(h,{class:`icon mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`seedance.button.upload`)),1)]),_:1})]),_:1},8,[`file-list`,`before-upload`,`action`,`on-exceed`,`on-error`,`on-success`,`on-remove`,`headers`])])):o(``,!0)}var En=K(bn,[[`render`,Tn],[`__scopeId`,`data-v-21bc6757`]]),Dn=v({name:`SeedanceReturnLastFrameSwitch`,components:{ElSwitch:O,InfoIcon:j},computed:{model(){return this.$store.state.seedance?.config?.model},isSupported(){return B(this.model).acceptsReturnLastFrame},value:{get(){return this.$store.state.seedance?.config?.return_last_frame},set(e){this.$store.commit(`seedance/setConfig`,{...this.$store.state.seedance?.config,return_last_frame:e})}}},watch:{isSupported(e){!e&&this.value&&(this.value=!1)}},mounted(){this.value===void 0&&(this.value=!1)}}),On={key:0,class:`field`},kn={class:`label`},An={class:`box`},jn={class:`title font-bold`},Mn={class:`value`};function Nn(t,n,r,c,u,d){let f=l(`info-icon`),p=l(`el-switch`);return t.isSupported?(g(),s(`div`,On,[e(`div`,kn,[e(`div`,An,[e(`h2`,jn,i(t.$t(`seedance.name.returnLastFrame`)),1),a(f,{content:t.$t(`seedance.description.returnLastFrame`),class:`info`},null,8,[`content`])])]),e(`div`,Mn,[a(p,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,"inline-prompt":``,"active-text":t.$t(`seedance.button.on`),"inactive-text":t.$t(`seedance.button.off`)},null,8,[`modelValue`,`active-text`,`inactive-text`])])])):o(``,!0)}var Pn=K(Dn,[[`render`,Nn],[`__scopeId`,`data-v-edea5451`]]),Fn=v({name:`SeedanceSeedInput`,components:{ElInputNumber:D,InfoIcon:j},computed:{value:{get(){let e=this.$store.state.seedance?.config?.seed;return typeof e==`number`?e:-1},set(e){let t={...this.$store.state.seedance?.config||{}};t.seed=typeof e==`number`&&Number.isInteger(e)?e:-1,this.$store.commit(`seedance/setConfig`,t)}}}}),In={class:`field`},Ln={class:`label`},Rn={class:`box`},zn={class:`title font-bold`},Bn={class:`value`};function Vn(t,n,r,o,c,u){let d=l(`info-icon`),f=l(`el-input-number`);return g(),s(`div`,In,[e(`div`,Ln,[e(`div`,Rn,[e(`h2`,zn,i(t.$t(`seedance.name.seed`)),1),a(d,{content:t.$t(`seedance.description.seed`),class:`info`},null,8,[`content`])])]),e(`div`,Bn,[a(f,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,min:-1,max:2147483647,step:1,size:`default`,"controls-position":`right`,class:`counter`},null,8,[`modelValue`])])])}var Hn=K(Fn,[[`render`,Vn],[`__scopeId`,`data-v-685a9869`]]),Un=new Set(Object.keys(ce)),Wn=e=>Array.isArray(e)?e.filter(e=>!!e?.url):[];function Gn(e){let t={...e||{}};if(typeof t.prompt==`string`&&(t.prompt=t.prompt.trim(),t.prompt||delete t.prompt),t.model&&!Un.has(t.model))return{reject:`modelUnsupported`};let n=B(t.model);t.images=Wn(t.images);let r=t.images.some(e=>e.role===`first_frame`),i=t.images.some(e=>e.role===`last_frame`);!r&&i&&(t.images=t.images.map(e=>e.role===`last_frame`?{...e,role:`first_frame`}:e));let a=t.images.length>0;if(a||delete t.images,delete t.service_tier,!n.acceptsImage&&a)return{reject:`modelRejectsImage`};if(!n.acceptsAudio&&t.generate_audio&&(t.generate_audio=!1),!n.acceptsReturnLastFrame&&t.return_last_frame&&(t.return_last_frame=!1),!n.acceptsLastFrame&&a&&(t.images=t.images.filter(e=>e.role!==`last_frame`),a=t.images.length>0,a||delete t.images),n.acceptsReferenceAudio&&Array.isArray(t.audios)&&(t.audios=t.audios.filter(e=>e?.url)),(!n.acceptsReferenceAudio||!Array.isArray(t.audios)||t.audios.length===0)&&delete t.audios,n.acceptsReferenceVideo&&Array.isArray(t.videos)&&(t.videos=t.videos.filter(e=>e?.url)),(!n.acceptsReferenceVideo||!Array.isArray(t.videos)||t.videos.length===0)&&delete t.videos,!n.acceptsReferenceImage&&Array.isArray(t.images)&&(t.images=t.images.filter(e=>e.role!==`reference_image`),t.images.length===0&&delete t.images),a=Array.isArray(t.images)&&t.images.length>0,n.requiresImage&&!a||!n.acceptsText&&!a)return{reject:`modelRequiresImage`};let o=Array.isArray(t.videos)&&t.videos.length>0;return Array.isArray(t.audios)&&t.audios.length>0&&!a&&!o?{reject:`audioRequiresReference`}:{request:{...t,async:!0}}}var Kn=v({name:`SeedanceConfigPanel`,components:{MagicIcon:R,ElButton:G,PromptInput:Je,ModelSelector:tt,DurationSelector:ct,ResolutionSelector:gt,RatioSelector:Dt,GenerateAudioSwitch:Ft,CameraFixedSwitch:Ut,ReturnLastFrameSwitch:Pn,SeedInput:Hn,FirstFrameImage:Zt,LastFrameImage:an,ReferenceImage:fn,ReferenceAudio:yn,ReferenceVideo:En,Consumption:Me,ScenarioPaymentMode:Ie},emits:[`generate`],data(){return{quoteTimer:0,quoteRunId:0}},computed:{config(){return this.$store.state.seedance?.config},consumption(){return Te(this.config,this.service?.cost)},service(){return this.$store.state.seedance?.service},walletMode(){return Ee()&&J(`seedance`).mode===`wallet`}},watch:{walletMode:{handler(e){e&&this.scheduleQuote()},immediate:!0},config:{handler(){this.walletMode&&this.scheduleQuote()},deep:!0}},beforeUnmount(){window.clearTimeout(this.quoteTimer),this.quoteRunId+=1},methods:{scheduleQuote(){window.clearTimeout(this.quoteTimer),this.quoteTimer=window.setTimeout(this.refreshQuote,350)},async refreshQuote(){let e=J(`seedance`),t=++this.quoteRunId;e.quoteLoading=!0,e.quoteUsdc=void 0;let{request:n}=Gn(this.config);try{if(!n)return;let r=await q.quote(n);t===this.quoteRunId&&e.mode===`wallet`&&(e.quoteUsdc=r.amountUsdc)}catch(e){console.warn(`x402 quote failed`,e)}finally{t===this.quoteRunId&&(e.quoteLoading=!1)}},onGenerate(){this.$emit(`generate`)}}}),qn={class:`flex flex-col h-full`},Jn={class:`flex-1 overflow-y-auto p-5`},Yn={class:`flex flex-col items-center justify-center px-5 pb-5`};function Xn(t,n,c,u,d,m){let h=l(`prompt-input`),_=l(`model-selector`),v=l(`ratio-selector`),y=l(`resolution-selector`),b=l(`duration-selector`),x=l(`generate-audio-switch`),S=l(`camera-fixed-switch`),C=l(`return-last-frame-switch`),w=l(`seed-input`),T=l(`first-frame-image`),E=l(`last-frame-image`),D=l(`reference-image`),O=l(`reference-audio`),k=l(`reference-video`),A=l(`scenario-payment-mode`),j=l(`consumption`),M=l(`magic-icon`),N=l(`el-button`);return g(),s(`div`,qn,[e(`div`,Jn,[a(h,{class:`mb-4`}),a(_,{class:`mb-4`}),a(v,{class:`mb-4`}),a(y,{class:`mb-4`}),a(b,{class:`mb-4`}),a(x,{class:`mb-4`}),a(S,{class:`mb-4`}),a(C,{class:`mb-4`}),a(w,{class:`mb-4`}),a(T,{class:`mb-4`}),a(E,{class:`mb-4`}),a(D,{class:`mb-4`}),a(O,{class:`mb-4`}),a(k,{class:`mb-4`})]),e(`div`,Yn,[a(A,{scenario:`seedance`}),t.walletMode?o(``,!0):(g(),f(j,{key:0,value:t.consumption,service:t.service},null,8,[`value`,`service`])),a(N,{type:`primary`,class:`btn w-full`,round:``,onClick:t.onGenerate},{default:p(()=>[a(M,{class:`mr-2`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`seedance.button.generate`)),1)]),_:1},8,[`onClick`])])])}var Zn=K(Kn,[[`render`,Xn]]),Qn=v({name:`SeedanceTaskPreview`,components:{DeleteIcon:I,ApplicationIcon:k,ChannelIcon:te,FullscreenIcon:P,InfoIcon:ne,MagicIcon:R,TimeIcon:A,VolumeIcon:ie,WarningIcon:re,CopyToClipboard:ke,ElAlert:C,VideoPlayer:Pe,ElTooltip:S,ElButton:G,ImageWrapper:ze,ImagePreview:Q,AudioPreview:Ne,VideoPreview:Fe,ApiCodeButton:Le,ReportButton:Ae},props:{modelValue:{type:Object,required:!0}},computed:{video(){return this.modelValue?.response?.data},apiCodeBody(){let e=this.modelValue?.request;if(!e)return e;let{service_tier:t,...n}=e;return n},promptText(){let e=this.modelValue?.request;if(e?.prompt)return e.prompt;let t=e?.content?.find(e=>e?.type===`text`&&e?.text);return t?.text?t.text:this.video?.prompt},referenceImages(){let e=this.collectImages();if(e.length===0)return[];let t=[],n=e.find(e=>e?.role===`first_frame`);n?.url&&t.push({url:n.url,name:`first-frame`});let r=e.find(e=>e?.role===`last_frame`);return r?.url&&t.push({url:r.url,name:`last-frame`}),e.forEach((e,n)=>{e?.url&&e.role!==`first_frame`&&e.role!==`last_frame`&&t.push({url:e.url,name:e.role||`image-${n}`})}),t},referenceAudios(){let e=this.modelValue?.request,t=(e?.audios??[]).map(e=>e?.url).filter(Boolean);return(e?.content??[]).forEach(e=>{e?.type===`audio_url`&&e?.audio_url?.url&&t.push(e.audio_url.url)}),t},referenceVideos(){let e=this.modelValue?.request,t=(e?.videos??[]).map(e=>e?.url).filter(Boolean);return(e?.content??[]).forEach(e=>{e?.type===`video_url`&&e?.video_url?.url&&t.push(e.video_url.url)}),t}},methods:{async onDelete(){let e=this.modelValue?.id;if(e){try{await Oe.confirm(this.$t(`common.message.deleteTaskConfirm`),this.$t(`common.button.delete`),{type:`warning`,confirmButtonText:this.$t(`common.button.delete`),cancelButtonText:this.$t(`common.button.cancel`),confirmButtonClass:`el-button--danger`})}catch{return}try{await this.$store.dispatch(`seedance/deleteTask`,{id:e}),T.success(this.$t(`common.message.deleteTaskSuccess`))}catch{T.error(this.$t(`common.message.deleteTaskFailed`))}}},collectImages(){let e=this.modelValue?.request,t=Array.isArray(e?.images)?[...e.images]:[];return(e?.content??[]).forEach(e=>{e?.type===`image_url`&&e?.image_url?.url&&t.push({url:e.image_url.url,role:e.role})}),t},onDownload(e){window.open(e,`_blank`)}}}),$n={class:`preview`},er={class:`left`},tr={class:`main`},nr={class:`bot`},rr={class:`datetime`},ir=[`aria-label`],ar={class:`info`},or={key:0,class:`flex justify-start items-center gap-2 mt-2 w-full overflow-x-auto`},sr={key:1,class:`prompt mt-2`},cr={key:0},lr={key:1},ur={key:0,class:n({content:!0})},dr={class:`text-[var(--el-text-color-regular)] text-xs mb-0`},fr={key:1,class:n({content:!0})},pr={key:0,class:`mb-4`},mr={key:1,class:`mb-4`},hr={key:2,class:n({operations:!0,"mt-2":!0,"mb-2":!0})},gr={key:0,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},_r={key:1,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},vr={key:2,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},yr={key:0},br={key:1},xr={key:3,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Sr={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Cr={key:4,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},wr={key:5,class:`text-[var(--el-text-color-regular)] text-xs mb-0`},Tr={key:2,class:n({content:!0})},Er={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Dr={key:0,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Or={key:1,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},kr={key:2,class:`text-[var(--el-text-color-regular)] text-xs mb-0`},Ar={key:3,class:n({content:!0})},jr={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Mr={key:0,class:`text-[var(--el-text-color-regular)] text-xs mb-0`};function Nr(n,u,d,m,_,v){let y=l(`capability-presentation`),b=l(`delete-icon`),x=l(`el-tooltip`),S=l(`image-preview`),C=l(`audio-preview`),w=l(`video-preview`),T=l(`time-icon`),E=l(`magic-icon`),D=l(`copy-to-clipboard`),O=l(`el-alert`),k=l(`video-player`),A=l(`image-wrapper`),j=l(`el-button`),M=l(`api-code-button`),N=l(`report-button`),P=l(`application-icon`),ee=l(`fullscreen-icon`),te=l(`volume-icon`),F=l(`channel-icon`),ne=l(`warning-icon`),I=l(`info-icon`);return g(),s(`div`,$n,[e(`div`,er,[a(y,{capability:`seedance`,part:`avatar`,class:`avatar`})]),e(`div`,tr,[e(`div`,nr,[a(y,{capability:`seedance`,part:`name`}),e(`span`,rr,i(n.$dayjs.format(``+new Date(parseFloat((n.modelValue?.created_at||``).toString())*1e3))),1),a(x,{effect:`dark`,content:n.$t(`common.button.delete`),placement:`top`},{default:p(()=>[n.modelValue?.id?(g(),s(`button`,{key:0,type:`button`,class:`btn-delete`,"aria-label":n.$t(`common.button.delete`),onClick:u[0]||=t((...e)=>n.onDelete&&n.onDelete(...e),[`stop`])},[a(b,{size:`1em`,"aria-hidden":`true`,focusable:`false`})],8,ir)):o(``,!0)]),_:1},8,[`content`])]),e(`div`,ar,[n.referenceImages.length>0||n.referenceAudios.length>0||n.referenceVideos.length>0?(g(),s(`div`,or,[(g(!0),s(c,null,h(n.referenceImages,(e,t)=>(g(),f(S,{key:`image-${t}`,url:e.url,name:e.name,closable:!1},null,8,[`url`,`name`]))),128)),(g(!0),s(c,null,h(n.referenceAudios,(e,t)=>(g(),f(C,{key:`audio-${t}`,url:e,name:`audio-${t+1}`},null,8,[`url`,`name`]))),128)),(g(!0),s(c,null,h(n.referenceVideos,(e,t)=>(g(),f(w,{key:`video-${t}`,url:e,name:`video-${t+1}`},null,8,[`url`,`name`]))),128))])):o(``,!0),n.promptText?(g(),s(`p`,sr,[r(i(n.promptText)+` `,1),n.modelValue?.response?n.video?.status===`processing`||n.video?.status===`pending`?(g(),s(`span`,lr,` - (`+i(n.$t(`seedance.status.processing`))+`) `,1)):o(``,!0):(g(),s(`span`,cr,` - (`+i(n.$t(`seedance.status.pending`))+`) `,1))])):o(``,!0)]),n.modelValue?.response?n.modelValue?.response?.success===!0?(g(),s(`div`,fr,[n.video?.video_url?(g(),s(`div`,pr,[a(k,{src:n.video?.video_url},null,8,[`src`])])):o(``,!0),n.video?.last_frame_url?(g(),s(`div`,mr,[a(A,{src:n.video?.last_frame_url,"raw-src":n.video?.last_frame_url},null,8,[`src`,`raw-src`])])):o(``,!0),n.video?.video_url?(g(),s(`div`,hr,[a(x,{class:`box-item`,effect:`dark`,content:n.$t(`seedance.message.downloadVideo`),placement:`top-start`},{default:p(()=>[a(j,{type:`info`,size:`small`,class:`btn-action`,onClick:u[1]||=t(e=>n.onDownload(n.video?.video_url),[`stop`])},{default:p(()=>[r(i(n.$t(`seedance.button.download`)),1)]),_:1})]),_:1},8,[`content`]),a(M,{path:`/seedance/videos`,body:n.apiCodeBody},null,8,[`body`]),a(N,{service:`seedance`,"target-id":n.modelValue?.id,snapshot:{prompt:n.modelValue?.request?.prompt}},null,8,[`target-id`,`snapshot`])])):o(``,!0),a(O,{closable:!1,class:`mt-2 success`},{default:p(()=>[n.modelValue?.request?.model?(g(),s(`p`,gr,[a(P,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`seedance.name.model`))+`: `+i(n.modelValue?.request?.model),1)])):o(``,!0),n.video?.duration?(g(),s(`p`,_r,[a(T,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`seedance.name.duration`))+`: `+i(n.video?.duration)+`s `,1)])):o(``,!0),n.video?.resolution?(g(),s(`p`,vr,[a(ee,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`seedance.name.resolution`))+`: `+i(n.video?.resolution)+` `,1),n.video?.ratio?(g(),s(`span`,yr,` · `+i(n.video?.ratio),1)):o(``,!0),n.video?.framespersecond?(g(),s(`span`,br,` · `+i(n.video?.framespersecond)+`fps`,1)):o(``,!0)])):o(``,!0),n.modelValue?.request?.generate_audio?(g(),s(`p`,xr,[a(te,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`seedance.name.generateAudio`))+`: `+i(n.$t(`seedance.button.on`)),1)])):o(``,!0),e(`p`,Sr,[a(E,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`seedance.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(D,{content:n.modelValue?.id,class:`btn-copy inline-block`},null,8,[`content`])]),n.modelValue?.elapsed?(g(),s(`p`,Cr,[a(T,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`seedance.name.elapsed`))+`: `+i(n.modelValue?.elapsed?.toFixed(2))+`s `,1)])):o(``,!0),n.modelValue?.response?.trace_id?(g(),s(`p`,wr,[a(F,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`seedance.name.traceId`))+`: `+i(n.modelValue?.response?.trace_id)+` `,1),a(D,{content:n.modelValue?.response?.trace_id,class:`btn-copy inline-block`},null,8,[`content`])])):o(``,!0)]),_:1})])):n.modelValue?.response?.success===!1?(g(),s(`div`,Tr,[a(O,{closable:!1,class:`failure`},{template:p(()=>[a(ne,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`seedance.name.failure`)),1)]),default:p(()=>[e(`p`,Er,[a(E,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`seedance.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(D,{content:n.modelValue?.id,class:`btn-copy inline-block`},null,8,[`content`])]),n.modelValue?.response?.error?.message?(g(),s(`p`,Dr,[a(I,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`seedance.name.failureReason`))+`: `+i(n.modelValue?.response?.error?.message)+` `,1),a(D,{content:n.modelValue?.response?.error?.message,class:`btn-copy inline-block`},null,8,[`content`])])):o(``,!0),n.modelValue?.elapsed?(g(),s(`p`,Or,[a(T,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`seedance.name.elapsed`))+`: `+i(n.modelValue?.elapsed?.toFixed(2))+`s `,1)])):o(``,!0),n.modelValue?.response?.trace_id?(g(),s(`p`,kr,[a(F,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`seedance.name.traceId`))+`: `+i(n.modelValue?.response?.trace_id)+` `,1),a(D,{content:n.modelValue?.response?.trace_id,class:`btn-copy inline-block`},null,8,[`content`])])):o(``,!0)]),_:1})])):(g(),s(`div`,Ar,[a(O,{closable:!1,class:`info`},{template:p(()=>[a(I,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`seedance.name.status`)),1)]),default:p(()=>[e(`p`,jr,[a(E,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`seedance.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(D,{content:n.modelValue?.id,class:`btn-copy inline-block`},null,8,[`content`])]),n.modelValue?.response?.trace_id?(g(),s(`p`,Mr,[a(F,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`seedance.name.traceId`))+`: `+i(n.modelValue?.response?.trace_id)+` `,1),a(D,{content:n.modelValue?.response?.trace_id,class:`btn-copy inline-block`},null,8,[`content`])])):o(``,!0)]),_:1})])):(g(),s(`div`,ur,[a(O,{closable:!1,class:`info`},{template:p(()=>[a(T,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`seedance.status.pending`)),1)]),default:p(()=>[e(`p`,dr,[a(E,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`seedance.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(D,{content:n.modelValue?.id,class:`btn-copy inline-block`},null,8,[`content`])])]),_:1})]))])])}var Pr=v({name:`SeedanceRecentPanel`,components:{TaskPreview:K(Qn,[[`render`,Nr],[`__scopeId`,`data-v-91bf07f2`]]),BotPlaceholder:Re,NoTasks:ee,ScrollList:N},props:{loading:{type:Boolean,default:!1}},emits:[`reach-top`],computed:{tasks(){return{...this.$store.state.seedance?.tasks,items:this.$store.state.seedance?.tasks?.items?.slice()}}},methods:{getScrollElement(){return this.$refs.scrollList?.getScrollElement?.()}}}),Fr={key:0},Ir={key:2,class:`w-full h-full flex items-center justify-center`};function Lr(e,t,n,r,i,u){let d=l(`bot-placeholder`),m=l(`task-preview`),_=l(`scroll-list`),v=l(`no-tasks`);return g(),s(c,null,[e.tasks?.items===void 0?(g(),s(`div`,Fr,[a(d)])):e.tasks?.items?.length&&e.tasks?.items?.length>0?(g(),f(_,{key:1,ref:`scrollList`,class:`tasks w-full h-full overflow-y-auto`,loading:e.loading,onReachTop:t[0]||=t=>e.$emit(`reach-top`)},{default:p(()=>[(g(!0),s(c,null,h(e.tasks?.items,e=>(g(),f(m,{key:e.id,"model-value":e},null,8,[`model-value`]))),128))]),_:1},8,[`loading`])):o(``,!0),e.tasks?.items?.length===0?(g(),s(`div`,Ir,[a(v)])):o(``,!0)],64)}var Rr=v({name:`SeedanceIndex`,components:{ConfigPanel:Zn,Layout:Ge,RecentPanel:K(Pr,[[`render`,Lr]])},mixins:[we],inject:[`initialized`],data(){return{task:void 0,job:0,loadingMore:!1,fetchingTasks:!1,walletTaskIds:[]}},computed:{applicationsLoading(){return this.$store.state.seedance?.status?.getApplications===w.Request},tasksLoading(){return this.$store.state.seedance?.status?.getTasks===w.Request||this.fetchingTasks},credential(){return this.$store.state.seedance?.credential},config(){return this.$store.state.seedance?.config},tasks(){return this.$store.state.seedance?.tasks},walletMode(){return Ee()&&J(`seedance`).mode===`wallet`}},watch:{walletMode:{async handler(e,t){if(!(t===void 0||e===t)){if(this.$store.commit(`seedance/setTasks`,void 0),e&&!this.job&&(this.job=window.setInterval(this.onGetTasks,5e3)),!e&&!this.credential?.token){window.clearInterval(this.job),this.job=0,await this.onScrollDown();return}await this.onGetTasks(),await this.onScrollDown()}}},initialized:{async handler(e){e&&(await this.onGetTasks(),await this.onScrollDown(),this.job||=window.setInterval(this.onGetTasks,5e3))},immediate:!0}},async mounted(){await this.onGetService()},async unmounted(){window.clearInterval(this.job)},methods:{async onReachTop(){await F({tasks:this.tasks,loading:this.loadingMore,setLoading:e=>this.loadingMore=e,isBlocked:()=>this.tasksLoading||this.applicationsLoading,fetch:e=>this.onGetTasks({createdAtMax:e}),getScrollElement:()=>this.getTasksScrollElement()})},async onGetService(){await this.$store.dispatch(`seedance/getService`)},async onScrollDown(){await this.$nextTick();let e=this.getTasksScrollElement();e&&(e.scrollTop=e.scrollHeight)},async onGetTasks(e){if(this.applicationsLoading||this.fetchingTasks)return;let{limit:t=5,createdAtMin:n,createdAtMax:r}=e||{};this.fetchingTasks=!0;try{await this.$store.dispatch(`seedance/getTasks`,{limit:t,createdAtMin:n,createdAtMax:r,...this.walletMode&&!this.credential?.token?{mode:`x402`,ids:this.walletTaskIds}:{}})}finally{this.fetchingTasks=!1}},async onGenerate(){if(!Se(this.uploadTracker,e=>this.$t(e),e=>T.warning(e)))return;let{request:e,reject:t}=Gn(this.config);if(t){T.warning(this.$t(`seedance.message.${t}`));return}if(!e)return;let n;if(this.walletMode){let t=this.getWalletContext();if(!t){T.warning(this.$t(`common.x402Scenario.connectWalletFirst`));return}n=q.generate(e,{mode:`x402`,x402:{wallet:t,confirm:e=>this.confirmWalletPayment(e),identityToken:this.credential?.token}})}else{if(!De())return;let t=this.credential?.token;if(!t)return;n=q.generate(e,{token:t})}T.info(this.$t(`seedance.message.startingTask`)),xe(`seedance`,n).then(e=>{let t=e?.data?.task_id;this.walletMode&&!this.credential?.token&&t&&!this.walletTaskIds.includes(t)&&this.walletTaskIds.unshift(t),T.success(this.$t(`seedance.message.startTaskSuccess`))}).catch(e=>{let t=e?.response?.data;e instanceof Ce||(t?.error?.code===`used_up`?T.error(this.$t(`seedance.message.usedUp`)):this.walletMode?T.error(`${this.$t(`common.x402Scenario.paymentFailed`)} ${e?.message||``}`.trim()):T.error(this.$t(`seedance.message.startTaskFailed`)+(t?.error?.message||``)))}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})},getWalletContext(){return be(this.$wallet)},async confirmWalletPayment(e){return Oe.confirm(this.$t(`common.x402Scenario.confirmPayment`,{amount:e.amountUsdc}),this.$t(`order.message.x402ConfirmTitle`),{confirmButtonText:this.$t(`order.message.x402WalletPayCta`),cancelButtonText:this.$t(`common.button.cancel`),type:`warning`}).then(()=>!0).catch(()=>!1)},getTasksScrollElement(){return this.$refs.recentPanel?.getScrollElement?.()}}});function zr(e,t,n,r,i,o){let s=l(`config-panel`),c=l(`recent-panel`),u=l(`layout`);return g(),f(u,null,{config:p(()=>[a(s,{onGenerate:e.onGenerate},null,8,[`onGenerate`])]),result:p(()=>[a(c,{ref:`recentPanel`,loading:e.loadingMore,onReachTop:e.onReachTop},null,8,[`loading`,`onReachTop`])]),_:1})}var Br=K(Rr,[[`render`,zr]]);export{Br as default};
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import"./rolldown-runtime--c01j_DQ.js";import{A as e,C as t,F as n,I as r,Jt as i,L as a,M as o,N as s,S as c,T as l,at as u,it as d,j as f,mt as p,rt as m,tt as h,z as g}from"./vendor-chart-Dw-P17PN.js";import{r as _,t as v}from"./select-Cry04isu.js";import{n as y,t as b}from"./tabs-0et25VV-.js";import{t as x}from"./tooltip-DZp4IZF9.js";import{t as S}from"./alert-BprQRUmf.js";import{h as C,v as w}from"./models-CwklOk8Z.js";import{n as T,r as E}from"./radio-DteyTHLj.js";import{n as D,t as O}from"./collapse-Cr16lHVf.js";import{t as k}from"./drawer-CeDP7s5K.js";import{t as A}from"./input-number-BSo_V5QG.js";import{t as j}from"./switch-BwEZ0csi.js";import{t as M}from"./clock-0ZWwZ6xH.js";import{t as N}from"./external-link-C41sZeHD.js";import{t as P}from"./globe-DhjDen2y.js";import{t as ee}from"./info-CyK20dY7.js";import{t as te}from"./loader-circle-Dj1vDw3A.js";import{t as F}from"./tag-BrlIVDgW.js";import{t as I}from"./wand-sparkles-Dz4k9kgj.js";import{t as L}from"./zap-BTTyJZ27.js";import"./constants-DlrPFkyM.js";import{La as R,Ma as z,O as B,_a as V,in as H,pn as U,xa as W}from"./index-tH-0CTCd.js";import{t as G}from"./CopyToClipboard-nyXqwbLh.js";import{t as K}from"./Consumption-C9CaJF7U.js";var q=V(`signal`,[[`path`,{d:`M2 20h.01`,key:`4haj6o`}],[`path`,{d:`M7 20v-4`,key:`j294jx`}],[`path`,{d:`M12 20v-8`,key:`i3yub9`}],[`path`,{d:`M17 20V8`,key:`1tkaf5`}],[`path`,{d:`M22 4v16`,key:`sih9yq`}]]),J=g({name:`LayoutWebextrator`,components:{ControlsIcon:V(`sliders-horizontal`,[[`path`,{d:`M10 5H3`,key:`1qgfaw`}],[`path`,{d:`M12 19H3`,key:`yhmn1j`}],[`path`,{d:`M14 3v4`,key:`1sua03`}],[`path`,{d:`M16 17v4`,key:`1q0r14`}],[`path`,{d:`M21 12h-9`,key:`1o4lsq`}],[`path`,{d:`M21 19h-5`,key:`1rlt1p`}],[`path`,{d:`M21 5h-7`,key:`1oszz2`}],[`path`,{d:`M8 10v4`,key:`tgpxqk`}],[`path`,{d:`M8 12H3`,key:`a7s4jb`}]]),ElDrawer:k,ElButton:z},data(){return{drawer:!1}}}),Y={class:`main flex flex-row flex-1`},X={class:`config w-[340px] flex-none h-full overflow-y-auto bg-[var(--app-sidebar-bg)] border-r border-[var(--app-border-subtle)]`},Z={class:`result h-full flex-1 flex flex-col min-w-0 overflow-x-hidden bg-[var(--app-content-bg)]`};function Q(t,n,r,i,o,c){let l=u(`controls-icon`),f=u(`el-button`),m=u(`el-drawer`);return h(),s(`div`,Y,[e(`div`,X,[d(t.$slots,`config`,{},void 0,!0)]),e(`div`,Z,[d(t.$slots,`result`,{},void 0,!0)]),a(f,{circle:``,class:`menu`,"aria-label":t.$t(`common.button.openMenu`),title:t.$t(`common.button.openMenu`),onClick:n[0]||=e=>t.drawer=!0},{default:p(()=>[a(l,{size:`1em`,"aria-hidden":`true`,focusable:`false`})]),_:1},8,[`aria-label`,`title`]),a(m,{modelValue:t.drawer,"onUpdate:modelValue":n[1]||=e=>t.drawer=e,direction:`ltr`,"with-header":!1,size:`340px`,class:`drawer`},{default:p(()=>[d(t.$slots,`config`,{},void 0,!0)]),_:3},8,[`modelValue`])])}var ne=B(J,[[`render`,Q],[`__scopeId`,`data-v-0ca47a5f`]]),re=g({name:`ModeSelector`,components:{GlobeIcon:P,MagicIcon:I,ElRadioGroup:E,ElRadioButton:T},computed:{value:{get(){return this.$store.state.webextrator?.config?.mode},set(e){this.$store.commit(`webextrator/setConfig`,{...this.$store.state.webextrator?.config,mode:e})}}}}),ie={class:`field`},ae={class:`title font-bold`};function oe(t,n,o,c,l,d){let f=u(`magic-icon`),m=u(`el-radio-button`),g=u(`globe-icon`),_=u(`el-radio-group`);return h(),s(`div`,ie,[e(`h2`,ae,i(t.$t(`webextrator.name.mode`)),1),a(_,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,class:`value w-full`},{default:p(()=>[a(m,{label:`extract`,value:`extract`},{default:p(()=>[a(f,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`webextrator.mode.extract`)),1)]),_:1}),a(m,{label:`render`,value:`render`},{default:p(()=>[a(g,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`webextrator.mode.render`)),1)]),_:1})]),_:1},8,[`modelValue`])])}var se=B(re,[[`render`,oe],[`__scopeId`,`data-v-76c5bea5`]]),ce=g({name:`UrlInput`,components:{ElInput:R},emits:[`submit`],computed:{url:{get(){return this.$store.state.webextrator?.config?.url||``},set(e){this.$store.commit(`webextrator/setConfig`,{...this.$store.state.webextrator?.config,url:e})}}},methods:{onEnter(){this.$emit(`submit`)}}}),le={class:`field`},ue={class:`title font-bold`};function de(n,r,o,l,d,f){let p=u(`el-input`);return h(),s(`div`,le,[e(`h2`,ue,i(n.$t(`webextrator.name.url`)),1),a(p,{modelValue:n.url,"onUpdate:modelValue":r[0]||=e=>n.url=e,type:`textarea`,rows:2,class:`prompt`,placeholder:n.$t(`webextrator.placeholder.url`),onKeydown:c(t(n.onEnter,[`exact`,`prevent`]),[`enter`])},null,8,[`modelValue`,`placeholder`,`onKeydown`])])}var fe=B(ce,[[`render`,de],[`__scopeId`,`data-v-18488009`]]),pe=g({name:`ExpectedTypeSelector`,components:{ElSelect:_,ElOption:v},computed:{value:{get(){return this.$store.state.webextrator?.config?.expected_type},set(e){this.$store.commit(`webextrator/setConfig`,{...this.$store.state.webextrator?.config,expected_type:e})}}},mounted(){this.value||=`general`}}),me={class:`field`},he={class:`title font-bold`};function ge(t,n,r,o,c,l){let d=u(`el-option`),f=u(`el-select`);return h(),s(`div`,me,[e(`h2`,he,i(t.$t(`webextrator.name.expectedType`)),1),a(f,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,class:`value`},{default:p(()=>[a(d,{value:`general`,label:t.$t(`webextrator.expectedType.general`)},null,8,[`label`]),a(d,{value:`article`,label:t.$t(`webextrator.expectedType.article`)},null,8,[`label`]),a(d,{value:`product`,label:t.$t(`webextrator.expectedType.product`)},null,8,[`label`])]),_:1},8,[`modelValue`])])}var _e=B(pe,[[`render`,ge],[`__scopeId`,`data-v-3b572c49`]]),ve=g({name:`LlmToggle`,components:{InfoIcon:ee,ElSwitch:j,ElTooltip:x},computed:{value:{get(){return!!this.$store.state.webextrator?.config?.enable_llm},set(e){this.$store.commit(`webextrator/setConfig`,{...this.$store.state.webextrator?.config,enable_llm:e})}}}}),ye={class:`field`},be={class:`title font-bold`};function xe(t,n,o,c,l,d){let f=u(`info-icon`),m=u(`el-tooltip`),g=u(`el-switch`);return h(),s(`div`,ye,[e(`h2`,be,[r(i(t.$t(`webextrator.name.enableLlm`))+` `,1),a(m,{effect:`dark`,content:t.$t(`webextrator.description.enableLlm`),placement:`top`},{default:p(()=>[a(f,{class:`ml-1 text-[var(--el-text-color-secondary)] text-xs`,size:`1em`,"aria-hidden":`true`,focusable:`false`})]),_:1},8,[`content`])]),a(g,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,class:`value`},null,8,[`modelValue`])])}var Se=B(ve,[[`render`,xe],[`__scopeId`,`data-v-a0c2f78c`]]),Ce=[`image`,`font`,`media`,`stylesheet`,`xhr`,`fetch`],we=g({name:`AdvancedOptions`,components:{ElCollapse:O,ElCollapseItem:D,ElInput:R,ElInputNumber:A,ElSelect:_,ElOption:v},data(){return{active:[]}},computed:{resourceKinds(){return Ce},waitUntil:{get(){return this.$store.state.webextrator?.config?.wait_until||`networkidle`},set(e){this.commit({wait_until:e})}},waitForSelector:{get(){return this.$store.state.webextrator?.config?.wait_for_selector||``},set(e){this.commit({wait_for_selector:e})}},timeout:{get(){return this.$store.state.webextrator?.config?.timeout??30},set(e){this.commit({timeout:e})}},delay:{get(){return this.$store.state.webextrator?.config?.delay??0},set(e){this.commit({delay:e})}},blockResources:{get(){return this.$store.state.webextrator?.config?.block_resources||[]},set(e){this.commit({block_resources:e})}}},methods:{commit(e){this.$store.commit(`webextrator/setConfig`,{...this.$store.state.webextrator?.config,...e})}}}),Te={class:`field`},Ee={class:`sub-title`},De={class:`field`},Oe={class:`sub-title`},ke={class:`field`},Ae={class:`sub-title`},je={class:`field`},Me={class:`sub-title`},Ne={class:`field`},Pe={class:`sub-title`};function Fe(t,n,r,o,c,d){let g=u(`el-option`),_=u(`el-select`),v=u(`el-input`),y=u(`el-input-number`),b=u(`el-collapse-item`),x=u(`el-collapse`);return h(),f(x,{modelValue:t.active,"onUpdate:modelValue":n[5]||=e=>t.active=e,class:`advanced`},{default:p(()=>[a(b,{title:t.$t(`webextrator.name.advanced`),name:`advanced`},{default:p(()=>[e(`div`,Te,[e(`h2`,Ee,i(t.$t(`webextrator.name.waitUntil`)),1),a(_,{modelValue:t.waitUntil,"onUpdate:modelValue":n[0]||=e=>t.waitUntil=e,class:`value`},{default:p(()=>[a(g,{value:`networkidle`,label:t.$t(`webextrator.waitUntil.networkidle`)},null,8,[`label`]),a(g,{value:`load`,label:t.$t(`webextrator.waitUntil.load`)},null,8,[`label`]),a(g,{value:`domcontentloaded`,label:t.$t(`webextrator.waitUntil.domcontentloaded`)},null,8,[`label`]),a(g,{value:`commit`,label:t.$t(`webextrator.waitUntil.commit`)},null,8,[`label`])]),_:1},8,[`modelValue`])]),e(`div`,De,[e(`h2`,Oe,i(t.$t(`webextrator.name.waitForSelector`)),1),a(v,{modelValue:t.waitForSelector,"onUpdate:modelValue":n[1]||=e=>t.waitForSelector=e,placeholder:t.$t(`webextrator.placeholder.waitForSelector`)},null,8,[`modelValue`,`placeholder`])]),e(`div`,ke,[e(`h2`,Ae,i(t.$t(`webextrator.name.timeout`)),1),a(y,{modelValue:t.timeout,"onUpdate:modelValue":n[2]||=e=>t.timeout=e,min:1,max:120,step:5,"controls-position":`right`,class:`w-full`},null,8,[`modelValue`])]),e(`div`,je,[e(`h2`,Me,i(t.$t(`webextrator.name.delay`)),1),a(y,{modelValue:t.delay,"onUpdate:modelValue":n[3]||=e=>t.delay=e,min:0,max:30,step:1,"controls-position":`right`,class:`w-full`},null,8,[`modelValue`])]),e(`div`,Ne,[e(`h2`,Pe,i(t.$t(`webextrator.name.blockResources`)),1),a(_,{modelValue:t.blockResources,"onUpdate:modelValue":n[4]||=e=>t.blockResources=e,multiple:``,"collapse-tags":``,placeholder:t.$t(`webextrator.placeholder.blockResources`),class:`w-full`},{default:p(()=>[(h(!0),s(l,null,m(t.resourceKinds,e=>(h(),f(g,{key:e,label:t.$t(`webextrator.blockResource.${e}`),value:e},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`])])]),_:1},8,[`title`])]),_:1},8,[`modelValue`])}var Ie=g({name:`WebextratorConfigPanel`,components:{LightningIcon:L,ElButton:z,ModeSelector:se,UrlInput:fe,ExpectedTypeSelector:_e,LlmToggle:Se,AdvancedOptions:B(we,[[`render`,Fe],[`__scopeId`,`data-v-8f36d2df`]]),Consumption:K},emits:[`run`],computed:{config(){return this.$store.state.webextrator?.config},service(){return this.$store.state.webextrator?.service},consumption(){return H(this.config||{},this.service?.cost)},running(){return this.$store.state.webextrator?.status?.run===C.Request},isExtract(){return(this.config?.mode||`extract`)===`extract`},canRun(){let e=(this.config?.url||``).trim();return/^https?:\/\//i.test(e)}},methods:{onRun(){this.canRun&&this.$emit(`run`)}}}),Le={class:`flex flex-col h-full`},Re={class:`flex-1 overflow-y-auto p-5`},ze={class:`flex flex-col items-center justify-center px-5 pb-5`};function Be(t,n,c,d,f,m){let g=u(`mode-selector`),_=u(`url-input`),v=u(`expected-type-selector`),y=u(`llm-toggle`),b=u(`advanced-options`),x=u(`consumption`),S=u(`lightning-icon`),C=u(`el-button`);return h(),s(`div`,Le,[e(`div`,Re,[a(g,{class:`mb-4`}),a(_,{class:`mb-4`,onSubmit:t.onRun},null,8,[`onSubmit`]),t.isExtract?(h(),s(l,{key:0},[a(v,{class:`mb-4`}),a(y,{class:`mb-4`})],64)):o(``,!0),a(b,{class:`mb-4`})]),e(`div`,ze,[a(x,{value:t.consumption,service:t.service},null,8,[`value`,`service`]),a(C,{type:`primary`,class:`w-full`,round:``,loading:t.running,disabled:!t.canRun,onClick:t.onRun},{default:p(()=>[a(S,{class:`mr-2`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(t.isExtract?`webextrator.button.extract`:`webextrator.button.render`)),1)]),_:1},8,[`loading`,`disabled`,`onClick`])])])}var Ve=B(Ie,[[`render`,Be]]),He=e=>!!e&&e.kind!==`render`,Ue=g({name:`WebextratorResultPanel`,components:{ExternalLinkIcon:N,GlobeIcon:P,LabelIcon:F,LoadingIcon:te,SignalIcon:q,TimeIcon:M,ElAlert:S,ElImage:W,ElTabs:y,ElTabPane:b,CopyToClipboard:G},data(){return{activeTab:`markdown`}},computed:{response(){return this.$store.state.webextrator?.response},running(){return this.$store.state.webextrator?.status?.run===C.Request},data(){return this.response?.data},renderData(){return this.data&&this.data.kind===`render`?this.data:void 0},extractData(){return He(this.data)?this.data:void 0},finalUrl(){let e=this.data;return e?.finalUrl||e?.final_url||e?.url},contentTypeLabel(){let e=this.data;return e?.contentType||e?.content_type||e?.expected_type},screenshotSrc(){let e=this.data?.screenshot;if(e)return e.startsWith(`data:`)||e.startsWith(`http`)?e:`data:image/png;base64,${e}`},markdown(){let e=this.data;return e?.markdown||e?.content||``},plainText(){return this.data?.text||``},html(){return this.data?.html||``},links(){return Array.isArray(this.data?.links)?this.data.links:[]},linksPlain(){return this.links.join(`
|
|
1
|
+
import"./rolldown-runtime--c01j_DQ.js";import{A as e,C as t,F as n,I as r,Jt as i,L as a,M as o,N as s,S as c,T as l,at as u,it as d,j as f,mt as p,rt as m,tt as h,z as g}from"./vendor-chart-Dw-P17PN.js";import{r as _,t as v}from"./select-Bs3ZkE9R.js";import{n as y,t as b}from"./tabs-0et25VV-.js";import{t as x}from"./tooltip-DtiQm14e.js";import{t as S}from"./alert-BprQRUmf.js";import{h as C,v as w}from"./models-CwklOk8Z.js";import{n as T,r as E}from"./radio-DteyTHLj.js";import{n as D,t as O}from"./collapse-Cr16lHVf.js";import{t as k}from"./drawer-C9ziMa5D.js";import{t as A}from"./input-number-D2KUI1kN.js";import{t as j}from"./switch-DRwxl6Da.js";import{t as M}from"./clock-CEYSZpiZ.js";import{t as N}from"./external-link-Ik947zOn.js";import{t as P}from"./globe-jnFJnwZn.js";import{t as ee}from"./info-DlDYYYyz.js";import{t as te}from"./loader-circle-CD3osO-L.js";import{t as F}from"./tag-CDE6lSVO.js";import{t as I}from"./wand-sparkles-dlhWJtt5.js";import{t as L}from"./zap-CVI9h9l6.js";import"./constants-DlrPFkyM.js";import{La as R,Ma as z,O as B,_a as V,in as H,pn as U,xa as W}from"./index-BOCSBfUe.js";import{t as G}from"./CopyToClipboard-Bt4pNx5a.js";import{t as K}from"./Consumption-CQoAp-2Q.js";var q=V(`signal`,[[`path`,{d:`M2 20h.01`,key:`4haj6o`}],[`path`,{d:`M7 20v-4`,key:`j294jx`}],[`path`,{d:`M12 20v-8`,key:`i3yub9`}],[`path`,{d:`M17 20V8`,key:`1tkaf5`}],[`path`,{d:`M22 4v16`,key:`sih9yq`}]]),J=g({name:`LayoutWebextrator`,components:{ControlsIcon:V(`sliders-horizontal`,[[`path`,{d:`M10 5H3`,key:`1qgfaw`}],[`path`,{d:`M12 19H3`,key:`yhmn1j`}],[`path`,{d:`M14 3v4`,key:`1sua03`}],[`path`,{d:`M16 17v4`,key:`1q0r14`}],[`path`,{d:`M21 12h-9`,key:`1o4lsq`}],[`path`,{d:`M21 19h-5`,key:`1rlt1p`}],[`path`,{d:`M21 5h-7`,key:`1oszz2`}],[`path`,{d:`M8 10v4`,key:`tgpxqk`}],[`path`,{d:`M8 12H3`,key:`a7s4jb`}]]),ElDrawer:k,ElButton:z},data(){return{drawer:!1}}}),Y={class:`main flex flex-row flex-1`},X={class:`config w-[340px] flex-none h-full overflow-y-auto bg-[var(--app-sidebar-bg)] border-r border-[var(--app-border-subtle)]`},Z={class:`result h-full flex-1 flex flex-col min-w-0 overflow-x-hidden bg-[var(--app-content-bg)]`};function Q(t,n,r,i,o,c){let l=u(`controls-icon`),f=u(`el-button`),m=u(`el-drawer`);return h(),s(`div`,Y,[e(`div`,X,[d(t.$slots,`config`,{},void 0,!0)]),e(`div`,Z,[d(t.$slots,`result`,{},void 0,!0)]),a(f,{circle:``,class:`menu`,"aria-label":t.$t(`common.button.openMenu`),title:t.$t(`common.button.openMenu`),onClick:n[0]||=e=>t.drawer=!0},{default:p(()=>[a(l,{size:`1em`,"aria-hidden":`true`,focusable:`false`})]),_:1},8,[`aria-label`,`title`]),a(m,{modelValue:t.drawer,"onUpdate:modelValue":n[1]||=e=>t.drawer=e,direction:`ltr`,"with-header":!1,size:`340px`,class:`drawer`},{default:p(()=>[d(t.$slots,`config`,{},void 0,!0)]),_:3},8,[`modelValue`])])}var ne=B(J,[[`render`,Q],[`__scopeId`,`data-v-0ca47a5f`]]),re=g({name:`ModeSelector`,components:{GlobeIcon:P,MagicIcon:I,ElRadioGroup:E,ElRadioButton:T},computed:{value:{get(){return this.$store.state.webextrator?.config?.mode},set(e){this.$store.commit(`webextrator/setConfig`,{...this.$store.state.webextrator?.config,mode:e})}}}}),ie={class:`field`},ae={class:`title font-bold`};function oe(t,n,o,c,l,d){let f=u(`magic-icon`),m=u(`el-radio-button`),g=u(`globe-icon`),_=u(`el-radio-group`);return h(),s(`div`,ie,[e(`h2`,ae,i(t.$t(`webextrator.name.mode`)),1),a(_,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,class:`value w-full`},{default:p(()=>[a(m,{label:`extract`,value:`extract`},{default:p(()=>[a(f,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`webextrator.mode.extract`)),1)]),_:1}),a(m,{label:`render`,value:`render`},{default:p(()=>[a(g,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`webextrator.mode.render`)),1)]),_:1})]),_:1},8,[`modelValue`])])}var se=B(re,[[`render`,oe],[`__scopeId`,`data-v-76c5bea5`]]),ce=g({name:`UrlInput`,components:{ElInput:R},emits:[`submit`],computed:{url:{get(){return this.$store.state.webextrator?.config?.url||``},set(e){this.$store.commit(`webextrator/setConfig`,{...this.$store.state.webextrator?.config,url:e})}}},methods:{onEnter(){this.$emit(`submit`)}}}),le={class:`field`},ue={class:`title font-bold`};function de(n,r,o,l,d,f){let p=u(`el-input`);return h(),s(`div`,le,[e(`h2`,ue,i(n.$t(`webextrator.name.url`)),1),a(p,{modelValue:n.url,"onUpdate:modelValue":r[0]||=e=>n.url=e,type:`textarea`,rows:2,class:`prompt`,placeholder:n.$t(`webextrator.placeholder.url`),onKeydown:c(t(n.onEnter,[`exact`,`prevent`]),[`enter`])},null,8,[`modelValue`,`placeholder`,`onKeydown`])])}var fe=B(ce,[[`render`,de],[`__scopeId`,`data-v-18488009`]]),pe=g({name:`ExpectedTypeSelector`,components:{ElSelect:_,ElOption:v},computed:{value:{get(){return this.$store.state.webextrator?.config?.expected_type},set(e){this.$store.commit(`webextrator/setConfig`,{...this.$store.state.webextrator?.config,expected_type:e})}}},mounted(){this.value||=`general`}}),me={class:`field`},he={class:`title font-bold`};function ge(t,n,r,o,c,l){let d=u(`el-option`),f=u(`el-select`);return h(),s(`div`,me,[e(`h2`,he,i(t.$t(`webextrator.name.expectedType`)),1),a(f,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,class:`value`},{default:p(()=>[a(d,{value:`general`,label:t.$t(`webextrator.expectedType.general`)},null,8,[`label`]),a(d,{value:`article`,label:t.$t(`webextrator.expectedType.article`)},null,8,[`label`]),a(d,{value:`product`,label:t.$t(`webextrator.expectedType.product`)},null,8,[`label`])]),_:1},8,[`modelValue`])])}var _e=B(pe,[[`render`,ge],[`__scopeId`,`data-v-3b572c49`]]),ve=g({name:`LlmToggle`,components:{InfoIcon:ee,ElSwitch:j,ElTooltip:x},computed:{value:{get(){return!!this.$store.state.webextrator?.config?.enable_llm},set(e){this.$store.commit(`webextrator/setConfig`,{...this.$store.state.webextrator?.config,enable_llm:e})}}}}),ye={class:`field`},be={class:`title font-bold`};function xe(t,n,o,c,l,d){let f=u(`info-icon`),m=u(`el-tooltip`),g=u(`el-switch`);return h(),s(`div`,ye,[e(`h2`,be,[r(i(t.$t(`webextrator.name.enableLlm`))+` `,1),a(m,{effect:`dark`,content:t.$t(`webextrator.description.enableLlm`),placement:`top`},{default:p(()=>[a(f,{class:`ml-1 text-[var(--el-text-color-secondary)] text-xs`,size:`1em`,"aria-hidden":`true`,focusable:`false`})]),_:1},8,[`content`])]),a(g,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,class:`value`},null,8,[`modelValue`])])}var Se=B(ve,[[`render`,xe],[`__scopeId`,`data-v-a0c2f78c`]]),Ce=[`image`,`font`,`media`,`stylesheet`,`xhr`,`fetch`],we=g({name:`AdvancedOptions`,components:{ElCollapse:O,ElCollapseItem:D,ElInput:R,ElInputNumber:A,ElSelect:_,ElOption:v},data(){return{active:[]}},computed:{resourceKinds(){return Ce},waitUntil:{get(){return this.$store.state.webextrator?.config?.wait_until||`networkidle`},set(e){this.commit({wait_until:e})}},waitForSelector:{get(){return this.$store.state.webextrator?.config?.wait_for_selector||``},set(e){this.commit({wait_for_selector:e})}},timeout:{get(){return this.$store.state.webextrator?.config?.timeout??30},set(e){this.commit({timeout:e})}},delay:{get(){return this.$store.state.webextrator?.config?.delay??0},set(e){this.commit({delay:e})}},blockResources:{get(){return this.$store.state.webextrator?.config?.block_resources||[]},set(e){this.commit({block_resources:e})}}},methods:{commit(e){this.$store.commit(`webextrator/setConfig`,{...this.$store.state.webextrator?.config,...e})}}}),Te={class:`field`},Ee={class:`sub-title`},De={class:`field`},Oe={class:`sub-title`},ke={class:`field`},Ae={class:`sub-title`},je={class:`field`},Me={class:`sub-title`},Ne={class:`field`},Pe={class:`sub-title`};function Fe(t,n,r,o,c,d){let g=u(`el-option`),_=u(`el-select`),v=u(`el-input`),y=u(`el-input-number`),b=u(`el-collapse-item`),x=u(`el-collapse`);return h(),f(x,{modelValue:t.active,"onUpdate:modelValue":n[5]||=e=>t.active=e,class:`advanced`},{default:p(()=>[a(b,{title:t.$t(`webextrator.name.advanced`),name:`advanced`},{default:p(()=>[e(`div`,Te,[e(`h2`,Ee,i(t.$t(`webextrator.name.waitUntil`)),1),a(_,{modelValue:t.waitUntil,"onUpdate:modelValue":n[0]||=e=>t.waitUntil=e,class:`value`},{default:p(()=>[a(g,{value:`networkidle`,label:t.$t(`webextrator.waitUntil.networkidle`)},null,8,[`label`]),a(g,{value:`load`,label:t.$t(`webextrator.waitUntil.load`)},null,8,[`label`]),a(g,{value:`domcontentloaded`,label:t.$t(`webextrator.waitUntil.domcontentloaded`)},null,8,[`label`]),a(g,{value:`commit`,label:t.$t(`webextrator.waitUntil.commit`)},null,8,[`label`])]),_:1},8,[`modelValue`])]),e(`div`,De,[e(`h2`,Oe,i(t.$t(`webextrator.name.waitForSelector`)),1),a(v,{modelValue:t.waitForSelector,"onUpdate:modelValue":n[1]||=e=>t.waitForSelector=e,placeholder:t.$t(`webextrator.placeholder.waitForSelector`)},null,8,[`modelValue`,`placeholder`])]),e(`div`,ke,[e(`h2`,Ae,i(t.$t(`webextrator.name.timeout`)),1),a(y,{modelValue:t.timeout,"onUpdate:modelValue":n[2]||=e=>t.timeout=e,min:1,max:120,step:5,"controls-position":`right`,class:`w-full`},null,8,[`modelValue`])]),e(`div`,je,[e(`h2`,Me,i(t.$t(`webextrator.name.delay`)),1),a(y,{modelValue:t.delay,"onUpdate:modelValue":n[3]||=e=>t.delay=e,min:0,max:30,step:1,"controls-position":`right`,class:`w-full`},null,8,[`modelValue`])]),e(`div`,Ne,[e(`h2`,Pe,i(t.$t(`webextrator.name.blockResources`)),1),a(_,{modelValue:t.blockResources,"onUpdate:modelValue":n[4]||=e=>t.blockResources=e,multiple:``,"collapse-tags":``,placeholder:t.$t(`webextrator.placeholder.blockResources`),class:`w-full`},{default:p(()=>[(h(!0),s(l,null,m(t.resourceKinds,e=>(h(),f(g,{key:e,label:t.$t(`webextrator.blockResource.${e}`),value:e},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`])])]),_:1},8,[`title`])]),_:1},8,[`modelValue`])}var Ie=g({name:`WebextratorConfigPanel`,components:{LightningIcon:L,ElButton:z,ModeSelector:se,UrlInput:fe,ExpectedTypeSelector:_e,LlmToggle:Se,AdvancedOptions:B(we,[[`render`,Fe],[`__scopeId`,`data-v-8f36d2df`]]),Consumption:K},emits:[`run`],computed:{config(){return this.$store.state.webextrator?.config},service(){return this.$store.state.webextrator?.service},consumption(){return H(this.config||{},this.service?.cost)},running(){return this.$store.state.webextrator?.status?.run===C.Request},isExtract(){return(this.config?.mode||`extract`)===`extract`},canRun(){let e=(this.config?.url||``).trim();return/^https?:\/\//i.test(e)}},methods:{onRun(){this.canRun&&this.$emit(`run`)}}}),Le={class:`flex flex-col h-full`},Re={class:`flex-1 overflow-y-auto p-5`},ze={class:`flex flex-col items-center justify-center px-5 pb-5`};function Be(t,n,c,d,f,m){let g=u(`mode-selector`),_=u(`url-input`),v=u(`expected-type-selector`),y=u(`llm-toggle`),b=u(`advanced-options`),x=u(`consumption`),S=u(`lightning-icon`),C=u(`el-button`);return h(),s(`div`,Le,[e(`div`,Re,[a(g,{class:`mb-4`}),a(_,{class:`mb-4`,onSubmit:t.onRun},null,8,[`onSubmit`]),t.isExtract?(h(),s(l,{key:0},[a(v,{class:`mb-4`}),a(y,{class:`mb-4`})],64)):o(``,!0),a(b,{class:`mb-4`})]),e(`div`,ze,[a(x,{value:t.consumption,service:t.service},null,8,[`value`,`service`]),a(C,{type:`primary`,class:`w-full`,round:``,loading:t.running,disabled:!t.canRun,onClick:t.onRun},{default:p(()=>[a(S,{class:`mr-2`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(t.isExtract?`webextrator.button.extract`:`webextrator.button.render`)),1)]),_:1},8,[`loading`,`disabled`,`onClick`])])])}var Ve=B(Ie,[[`render`,Be]]),He=e=>!!e&&e.kind!==`render`,Ue=g({name:`WebextratorResultPanel`,components:{ExternalLinkIcon:N,GlobeIcon:P,LabelIcon:F,LoadingIcon:te,SignalIcon:q,TimeIcon:M,ElAlert:S,ElImage:W,ElTabs:y,ElTabPane:b,CopyToClipboard:G},data(){return{activeTab:`markdown`}},computed:{response(){return this.$store.state.webextrator?.response},running(){return this.$store.state.webextrator?.status?.run===C.Request},data(){return this.response?.data},renderData(){return this.data&&this.data.kind===`render`?this.data:void 0},extractData(){return He(this.data)?this.data:void 0},finalUrl(){let e=this.data;return e?.finalUrl||e?.final_url||e?.url},contentTypeLabel(){let e=this.data;return e?.contentType||e?.content_type||e?.expected_type},screenshotSrc(){let e=this.data?.screenshot;if(e)return e.startsWith(`data:`)||e.startsWith(`http`)?e:`data:image/png;base64,${e}`},markdown(){let e=this.data;return e?.markdown||e?.content||``},plainText(){return this.data?.text||``},html(){return this.data?.html||``},links(){return Array.isArray(this.data?.links)?this.data.links:[]},linksPlain(){return this.links.join(`
|
|
2
2
|
`)},images(){return Array.isArray(this.data?.images)?this.data.images:[]},structuredPretty(){return this.extractData?.structured?JSON.stringify(this.extractData.structured,null,2):``},rawPretty(){return this.response?JSON.stringify(this.response,null,2):``},errorMessage(){if(this.response?.success===!1){let e=this.response?.error;return e?.message||e?.code||this.$t(`webextrator.message.failed`)}}},watch:{response:{handler(){this.resetTab()},immediate:!0}},methods:{resetTab(){this.markdown?this.activeTab=`markdown`:this.extractData?.structured?this.activeTab=`structured`:this.plainText?this.activeTab=`text`:this.html?this.activeTab=`html`:this.activeTab=`raw`}}}),We={class:`h-full overflow-y-auto p-6`},Ge={key:0,class:`max-w-4xl mx-auto py-4`},Ke={class:`flex items-center gap-2 mb-3 text-[var(--el-color-primary)] text-sm`},qe={key:1,class:`flex flex-col items-center justify-center py-24 text-[var(--el-text-color-disabled)]`},Je={class:`text-base mb-1`},Ye={class:`text-xs opacity-70`},Xe={key:2,class:`max-w-4xl mx-auto py-4`},Ze={class:`text-xs whitespace-pre-wrap break-words`},Qe={key:3,class:`max-w-4xl mx-auto`},$e={class:`mb-4`},et={class:`text-xl font-semibold leading-snug mb-1 break-words text-[var(--el-text-color-primary)]`},tt={class:`flex flex-wrap items-center gap-x-3 gap-y-1 text-xs text-[var(--el-text-color-secondary)]`},nt=[`href`],rt={key:1},it={key:2},at={key:3},ot={key:0,class:`mt-2 text-sm text-[var(--el-text-color-regular)] leading-relaxed line-clamp-3`},st={key:0,class:`mb-5`},ct={class:`tab-toolbar`},lt={class:`content-block`},ut={class:`tab-toolbar`},dt={class:`content-block`},ft={class:`tab-toolbar`},$={class:`content-block code`},pt={class:`tab-toolbar`},mt={class:`links-list`},ht=[`href`],gt={class:`grid grid-cols-2 md:grid-cols-3 lg:grid-cols-4 gap-2`},_t={class:`tab-toolbar`},vt={class:`content-block code`},yt={class:`tab-toolbar`},bt={class:`content-block code`};function xt(t,c,d,g,_,v){let y=u(`loading-icon`),b=u(`globe-icon`),x=u(`el-alert`),S=u(`external-link-icon`),C=u(`signal-icon`),w=u(`time-icon`),T=u(`label-icon`),E=u(`el-image`),D=u(`copy-to-clipboard`),O=u(`el-tab-pane`),k=u(`el-tabs`);return h(),s(`div`,We,[t.running?(h(),s(`div`,Ge,[e(`div`,Ke,[a(y,{class:`adc-icon-spin`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),e(`span`,null,i(t.$t(`webextrator.message.running`)),1)]),c[1]||=n(`<div class="mb-6 animate-pulse" data-v-4ec341a6><div class="h-5 w-3/5 rounded bg-[var(--el-fill-color-dark)] mb-2" data-v-4ec341a6></div><div class="h-3 w-2/5 rounded bg-[var(--el-fill-color)] mb-4" data-v-4ec341a6></div><div class="h-64 w-full rounded bg-[var(--el-fill-color)] mb-3" data-v-4ec341a6></div><div class="h-3 w-full rounded bg-[var(--el-fill-color)] mb-1" data-v-4ec341a6></div><div class="h-3 w-5/6 rounded bg-[var(--el-fill-color)] mb-1" data-v-4ec341a6></div><div class="h-3 w-4/6 rounded bg-[var(--el-fill-color)]" data-v-4ec341a6></div></div>`,1)])):!t.response&&!t.errorMessage?(h(),s(`div`,qe,[a(b,{class:`text-6xl mb-4 opacity-30`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),e(`p`,Je,i(t.$t(`webextrator.description.intro`)),1),e(`p`,Ye,i(t.$t(`webextrator.description.introHint`)),1)])):t.errorMessage?(h(),s(`div`,Xe,[a(x,{type:`error`,closable:!1,"show-icon":``,title:t.$t(`webextrator.message.failed`)},{default:p(()=>[e(`pre`,Ze,i(t.errorMessage),1)]),_:1},8,[`title`])])):t.data?(h(),s(`div`,Qe,[e(`header`,$e,[e(`h1`,et,i(t.data.title||t.$t(`webextrator.message.untitled`)),1),e(`div`,tt,[t.finalUrl?(h(),s(`a`,{key:0,href:t.finalUrl,target:`_blank`,rel:`noopener`,class:`hover:underline truncate max-w-[60%]`},[a(S,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(i(t.finalUrl),1)],8,nt)):o(``,!0),t.renderData?.status?(h(),s(`span`,rt,[a(C,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(i(t.renderData.status),1)])):o(``,!0),t.response?.elapsed?(h(),s(`span`,it,[a(w,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(i(t.response.elapsed.toFixed(2))+`s `,1)])):o(``,!0),t.contentTypeLabel?(h(),s(`span`,at,[a(T,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(i(t.contentTypeLabel),1)])):o(``,!0)]),t.extractData?.description?(h(),s(`p`,ot,i(t.extractData.description),1)):o(``,!0)]),t.screenshotSrc?(h(),s(`figure`,st,[a(E,{src:t.screenshotSrc,fit:`contain`,"preview-src-list":[t.screenshotSrc],"preview-teleported":``,"hide-on-click-modal":``,class:`w-full max-h-[480px] rounded border border-[var(--app-border-subtle)] bg-[var(--el-fill-color-light)]`},null,8,[`src`,`preview-src-list`])])):o(``,!0),a(k,{modelValue:t.activeTab,"onUpdate:modelValue":c[0]||=e=>t.activeTab=e,class:`result-tabs`},{default:p(()=>[t.markdown?(h(),f(O,{key:0,label:t.$t(`webextrator.tab.markdown`),name:`markdown`},{default:p(()=>[e(`div`,ct,[a(D,{content:t.markdown},null,8,[`content`])]),e(`pre`,lt,i(t.markdown),1)]),_:1},8,[`label`])):o(``,!0),t.plainText?(h(),f(O,{key:1,label:t.$t(`webextrator.tab.text`),name:`text`},{default:p(()=>[e(`div`,ut,[a(D,{content:t.plainText},null,8,[`content`])]),e(`pre`,dt,i(t.plainText),1)]),_:1},8,[`label`])):o(``,!0),t.extractData?.structured?(h(),f(O,{key:2,label:t.$t(`webextrator.tab.structured`),name:`structured`},{default:p(()=>[e(`div`,ft,[a(D,{content:t.structuredPretty},null,8,[`content`])]),e(`pre`,$,i(t.structuredPretty),1)]),_:1},8,[`label`])):o(``,!0),t.links.length?(h(),f(O,{key:3,label:`${t.$t(`webextrator.tab.links`)} (${t.links.length})`,name:`links`},{default:p(()=>[e(`div`,pt,[a(D,{content:t.linksPlain},null,8,[`content`])]),e(`ul`,mt,[(h(!0),s(l,null,m(t.links,(t,n)=>(h(),s(`li`,{key:n,class:`truncate`},[e(`a`,{href:t,target:`_blank`,rel:`noopener`},i(t),9,ht)]))),128))])]),_:1},8,[`label`])):o(``,!0),t.images.length?(h(),f(O,{key:4,label:`${t.$t(`webextrator.tab.images`)} (${t.images.length})`,name:`images`},{default:p(()=>[e(`div`,gt,[(h(!0),s(l,null,m(t.images,(e,n)=>(h(),f(E,{key:n,src:e,fit:`cover`,loading:`lazy`,"preview-src-list":t.images,"initial-index":n,"preview-teleported":``,"hide-on-click-modal":``,class:`aspect-square w-full rounded bg-[var(--el-fill-color-light)]`},null,8,[`src`,`preview-src-list`,`initial-index`]))),128))])]),_:1},8,[`label`])):o(``,!0),t.html?(h(),f(O,{key:5,label:t.$t(`webextrator.tab.html`),name:`html`},{default:p(()=>[e(`div`,_t,[a(D,{content:t.html},null,8,[`content`])]),e(`pre`,vt,i(t.html),1)]),_:1},8,[`label`])):o(``,!0),a(O,{label:t.$t(`webextrator.tab.raw`),name:`raw`},{default:p(()=>[e(`div`,yt,[a(D,{content:t.rawPretty},null,8,[`content`])]),e(`pre`,bt,i(t.rawPretty),1)]),_:1},8,[`label`])]),_:1},8,[`modelValue`])])):o(``,!0)])}var St=g({name:`WebextratorIndex`,components:{Layout:ne,ConfigPanel:Ve,ResultPanel:B(Ue,[[`render`,xt],[`__scopeId`,`data-v-4ec341a6`]])},inject:[`initialized`],async mounted(){await this.$store.dispatch(`webextrator/getService`)},methods:{async onRun(){if(!U())return;let e=this.$store.state.webextrator?.config;if(!e?.url)return;let t=(e.mode||`extract`)===`extract`;w.info(this.$t(t?`webextrator.message.extracting`:`webextrator.message.rendering`));try{await this.$store.dispatch(`webextrator/run`),w.success(this.$t(`webextrator.message.success`))}catch(e){let t=e?.response?.data?.error?.code||e?.response?.data?.code;t===`used_up`?w.error(this.$t(`webextrator.message.usedUp`)):t===`too_many_requests`?w.error(this.$t(`webextrator.message.busy`)):t===`timeout`?w.error(this.$t(`webextrator.message.timeout`)):t===`antibot_blocked`?w.error(this.$t(`webextrator.message.antibotBlocked`)):w.error(this.$t(`webextrator.message.failed`))}}}});function Ct(e,t,n,r,i,o){let s=u(`config-panel`),c=u(`result-panel`),l=u(`layout`);return h(),f(l,null,{config:p(()=>[a(s,{onRun:e.onRun},null,8,[`onRun`])]),result:p(()=>[a(c)]),_:1})}var wt=B(St,[[`render`,Ct]]);export{wt as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import"./rolldown-runtime--c01j_DQ.js";import{A as e,C as t,Gt as n,I as r,Jt as i,L as a,M as o,N as s,T as c,at as l,ht as u,it as d,j as f,mt as p,qt as m,rt as h,tt as g,x as _,z as v}from"./vendor-chart-Dw-P17PN.js";import{r as y,t as b}from"./select-Cry04isu.js";import{n as x,t as S}from"./tabs-0et25VV-.js";import{t as C}from"./upload-uY7VeHmd.js";import{t as w}from"./tooltip-DZp4IZF9.js";import{t as T}from"./alert-BprQRUmf.js";import{h as E,v as D}from"./models-CwklOk8Z.js";import{t as O}from"./drawer-CeDP7s5K.js";import{t as k}from"./switch-BwEZ0csi.js";import{t as A}from"./box-BJ5AJ81R.js";import{t as j}from"./clock-0ZWwZ6xH.js";import{a as M,i as N,n as P,o as F,r as I,s as L,t as R}from"./pagination-D4-HZqNr.js";import{t as ee}from"./info-CyK20dY7.js";import{t as z}from"./languages-Dv63bUCX.js";import{t as B}from"./trash-2-BKP--pJx.js";import{t as te}from"./triangle-alert-BWbRHVGQ.js";import{t as ne}from"./upload-a1-BMlZq.js";import{t as V}from"./wand-sparkles-Dz4k9kgj.js";import{t as re}from"./zap-BTTyJZ27.js";import{ci as ie,li as ae,ui as oe}from"./constants-DlrPFkyM.js";import{$r as se,$t as H,Cr as U,Er as W,Jt as G,Ma as K,O as q,Oi as ce,Qt as le,Sr as J,Tr as ue,Zr as de,en as fe,hi as Y,ia as pe,in as me,mi as X,nn as he,pn as ge,tn as _e,va as Z,wr as ve}from"./index-tH-0CTCd.js";import{t as ye}from"./CopyToClipboard-nyXqwbLh.js";import{t as be}from"./ReportButton-1gsHQqMT.js";import{t as Q}from"./ImagePreview-B3pTp0IA.js";import{n as xe}from"./taskDrawerMixin-DyAUhFEq.js";import{t as Se}from"./Consumption-C9CaJF7U.js";import{t as Ce}from"./VideoPlayer-BhdFI_Dl.js";import{t as we}from"./ScenarioPaymentMode-DWw8ADoG.js";import{t as Te}from"./ApiCodeButton-DIudRxxI.js";import{t as Ee}from"./BotPlaceholder-CcjsDj0N.js";var De=v({name:`LayoutVeo`,components:{MagicIcon:V,ElDrawer:O,ElButton:K},mixins:[xe]}),Oe={class:`main flex flex-row flex-1`},ke={class:`config w-[320px] flex-none h-full min-h-0 overflow-hidden flex flex-col bg-[var(--app-sidebar-bg)] border-r border-[var(--app-border-subtle)]`},Ae={class:`result h-full p-6 flex-1 flex flex-col min-w-0 overflow-x-hidden bg-[var(--app-content-bg)]`};function je(t,n,r,i,o,c){let f=l(`magic-icon`),m=l(`el-button`),h=l(`el-drawer`);return g(),s(`div`,Oe,[e(`div`,ke,[d(t.$slots,`config`,{},void 0,!0)]),e(`div`,Ae,[d(t.$slots,`result`,{},void 0,!0)]),u(a(m,{circle:``,class:`menu`,"aria-label":t.$t(`common.button.openMenu`),title:t.$t(`common.button.openMenu`),onClick:n[0]||=e=>t.drawer=!0},{default:p(()=>[a(f,{size:`1em`,"aria-hidden":`true`,focusable:`false`})]),_:1},8,[`aria-label`,`title`]),[[_,!t.tasksEmpty]]),a(h,{modelValue:t.drawer,"onUpdate:modelValue":n[1]||=e=>t.drawer=e,direction:`ltr`,"with-header":!1,size:`340px`,class:`generator-drawer`},{default:p(()=>[d(t.$slots,`config`,{},void 0,!0)]),_:3},8,[`modelValue`])])}var Me=q(De,[[`render`,je],[`__scopeId`,`data-v-293c9493`]]),Ne=v({name:`ModelSelector`,components:{ElSelect:y,ElOption:b},computed:{isModelLocked(){return this.$store.state.veo?.config?.action===`ingredients2video`},options(){return this.isModelLocked?[{value:ue,label:`Veo 3.1 Fast`}]:ve},value:{get(){return this.$store.state.veo?.config?.model},set(e){this.$store.commit(`veo/setConfig`,{...this.$store.state.veo.config,model:e})}}},mounted(){this.value||=oe}}),Pe={class:`field`},Fe={class:`title font-bold`};function Ie(t,n,r,o,u,d){let m=l(`el-option`),_=l(`el-select`);return g(),s(`div`,Pe,[e(`h2`,Fe,i(t.$t(`veo.name.model`)),1),a(_,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,class:`value`,placeholder:t.$t(`veo.placeholder.select`),disabled:t.isModelLocked},{default:p(()=>[(g(!0),s(c,null,h(t.options,e=>(g(),f(m,{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`,`disabled`])])}var Le=q(Ne,[[`render`,Ie],[`__scopeId`,`data-v-90ed8cff`]]),Re=v({name:`ActionSelector`,components:{ElTabs:x,ElTabPane:S},data(){return{}},computed:{options(){return[{value:`text2video`,label:this.$t(`veo.button.action1`)},{value:`image2video`,label:this.$t(`veo.button.action2`)},{value:`ingredients2video`,label:this.$t(`veo.button.actionIngredients`)}]},value(){return this.$store.state.veo?.config?.action||`text2video`}},mounted(){this.$store.state.veo?.config?.action||this.onUpdate(ie)},methods:{onUpdate(e){this.$store.commit(`veo/setConfig`,W(this.$store.state.veo?.config,e))}}}),ze={class:`tab-label`},Be={class:`text`};function Ve(t,n,r,a,o,u){let d=l(`el-tab-pane`),m=l(`el-tabs`);return g(),f(m,{"model-value":t.value,class:`action-tabs scenario-tabs scenario-tabs--divided`,"onUpdate:modelValue":t.onUpdate},{default:p(()=>[(g(!0),s(c,null,h(t.options,t=>(g(),f(d,{key:t.value,name:t.value},{label:p(()=>[e(`span`,ze,[e(`span`,Be,i(t.label),1)])]),_:2},1032,[`name`]))),128))]),_:1},8,[`model-value`,`onUpdate:modelValue`])}var He=q(Re,[[`render`,Ve],[`__scopeId`,`data-v-c72fb85c`]]),Ue=v({name:`TranslationSelector`,components:{ElSwitch:k,InfoIcon:M},computed:{value:{get(){return this.$store.state.veo?.config?.translation},set(e){console.debug(`set translation`,e),this.$store.commit(`veo/setConfig`,{...this.$store.state.veo?.config,translation:e})}}},mounted(){this.value===void 0&&(this.value=!1)}}),We={class:`relative`},Ge={class:`flex justify-between`},Ke={class:`flex justify-start items-center`},qe={class:`text-sm font-bold`},Je={class:`flex justify-end items-center`};function Ye(t,n,r,o,c,u){let d=l(`info-icon`),f=l(`el-switch`);return g(),s(`div`,We,[e(`div`,Ge,[e(`div`,Ke,[e(`span`,qe,i(t.$t(`veo.name.translation`)),1),a(d,{content:t.$t(`veo.description.translation`)},null,8,[`content`])]),e(`div`,Je,[a(f,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,class:`value`},null,8,[`modelValue`])])])])}var Xe=q(Ue,[[`render`,Ye]]),Ze=v({name:`AspectRatioSelector`,data(){return{options:[{value:`16:9`,label:`16:9`,width:25,height:13},{value:`9:16`,label:`9:16`,width:13,height:25}]}},computed:{active(){return this.options.findIndex(e=>e.value===this.value)||0},value:{get(){return this.$store.state.veo?.config?.aspect_ratio},set(e){console.debug(`set aspect_ratio`,e),this.$store.commit(`veo/setConfig`,{...this.$store.state?.veo?.config,aspect_ratio:e})}}},mounted(){this.value||=ae}}),Qe={class:`text-sm font-bold mb-2 block`},$e={class:`items`},et=[`onClick`],tt={class:`name`};function nt(t,r,a,o,l,u){return g(),s(`div`,null,[e(`span`,Qe,i(t.$t(`veo.name.ratio`)),1),e(`div`,$e,[(g(!0),s(c,null,h(t.options,(r,a)=>(g(),s(`div`,{key:a,class:n({active:t.active===a,item:!0}),onClick:e=>t.value=r.value},[e(`div`,{class:n([`preview`,r.label])},[e(`div`,{class:`rect`,style:m({width:r.width+`px`,height:r.height+`px`})},null,4)],2),e(`p`,tt,i(r.label),1)],10,et))),128))])])}var rt=q(Ze,[[`render`,nt],[`__scopeId`,`data-v-28c472c4`]]),it=v({name:`StartEndImage`,components:{UploadIcon:ne,ElUpload:C,ElButton:K,InfoIcon:M,ImagePreview:Q},mixins:[he,_e,H,G],props:{limit:{type:Number,default:2},ingredients:{type:Boolean,default:!1}},emits:[`change`],data(){return{fileList:[],uploadUrl:pe()+`/api/v1/files/`}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},title(){return this.ingredients?this.$t(`veo.button.actionIngredients`):this.$t(`veo.name.startEndImage`)},description(){return this.ingredients?this.$t(`veo.description.imageUrl`):this.$t(`veo.description.uploadStartEndImage`)},urls(){return this.fileList.map(e=>e.response?.file_url||e.url).filter(e=>!!e)},value:{get(){return this.$store.state?.veo?.config?.image_urls},set(){}}},watch:{limit(){this.fileList.length>this.limit&&(this.fileList=this.fileList.slice(0,this.limit),this.onSetStartEndImageUrl())}},mounted(){this.fileList=(this.value||[]).map((e,t)=>({name:`reference-${t+1}`,percentage:100,response:{file_url:e},status:`success`,uid:Date.now()+t,url:e}))},methods:{onExceed(){D.warning(this.$t(`veo.message.uploadReferencesLimit`,{limit:this.limit}))},onError(){D.error(this.$t(`veo.message.uploadReferencesError`))},onSetStartEndImageUrl(){let e=this.urls;this.$store.commit(`veo/setConfig`,{...this.$store.state?.veo?.config,image_urls:e})},async onSuccess(){this.onSetStartEndImageUrl()},onRemove(e){let t=this.fileList.indexOf(e);t>=0&&this.fileList.splice(t,1),this.onSetStartEndImageUrl()}}}),at={class:`relative`},ot={class:`flex justify-between`},st={class:`flex justify-start items-center`},ct={class:`text-sm font-bold`};function lt(t,n,c,u,d,m){let h=l(`info-icon`),_=l(`image-preview`),v=l(`upload-icon`),y=l(`el-button`),b=l(`el-upload`);return g(),s(`div`,at,[e(`div`,ot,[e(`div`,st,[e(`span`,ct,i(t.title),1),a(h,{content:t.description},null,8,[`content`])])]),a(b,{ref:`uploader`,"file-list":t.fileList,"onUpdate:fileList":n[0]||=e=>t.fileList=e,name:`file`,accept:`.png,.jpg,.jpeg,.gif,.bmp,.webp`,limit:t.limit,class:`upload-wrapper`,multiple:!0,"before-upload":t.beforeUploadSizeGuard,action:t.uploadUrl,"list-type":`picture`,"on-exceed":t.onExceed,"on-error":t.onError,"on-success":t.onSuccess,headers:t.headers},{file:p(({file:e})=>[e.url&&e.percentage!==void 0?(g(),f(_,{key:0,url:e.url,name:e.name,percentage:e.percentage,onRemove:n=>t.onRemove(e)},null,8,[`url`,`name`,`percentage`,`onRemove`])):o(``,!0)]),default:p(()=>[a(y,{round:``,type:`primary`,size:`small`,class:`btn btn-upload`},{default:p(()=>[a(v,{class:`icon mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`veo.button.uploadReferences`)),1)]),_:1})]),_:1},8,[`file-list`,`limit`,`before-upload`,`action`,`on-exceed`,`on-error`,`on-success`,`headers`])])}var ut=q(it,[[`render`,lt],[`__scopeId`,`data-v-a4391199`]]),dt=v({name:`PromptInput`,components:{PromptTextarea:N},computed:{prompt:{get(){return this.$store.state.veo?.config?.prompt},set(e){this.$store.commit(`veo/setConfig`,{...this.$store.state.veo?.config,prompt:e})}}},mounted(){this.prompt||=``}});function ft(e,t,n,r,i,a){let o=l(`prompt-textarea`);return g(),f(o,{modelValue:e.prompt,"onUpdate:modelValue":t[0]||=t=>e.prompt=t,title:e.$t(`veo.name.prompt`),info:e.$t(`veo.description.prompt`),placeholder:e.$t(`veo.placeholder.prompt`)},null,8,[`modelValue`,`title`,`info`,`placeholder`])}var pt=v({name:`ConfigPanel`,components:{MagicIcon:V,ElButton:K,Consumption:Se,PromptInput:q(dt,[[`render`,ft]]),ModelSelector:Le,StartEndImage:ut,ActionSelector:He,TranslationSelector:Xe,AspectRatioSelector:rt,ScenarioPaymentMode:we},emits:[`generate`],data(){return{quoteTimer:0,quoteRunId:0}},computed:{config(){return this.$store.state.veo?.config},showsImages(){return this.config?.action===`image2video`||this.config?.action===`ingredients2video`},imageLimit(){return this.config?.action===`ingredients2video`?3:2},consumption(){return me(this.config,this.service?.cost)},service(){return this.$store.state.veo?.service},walletMode(){return X()&&Y(`veo`).mode===`wallet`}},watch:{walletMode:{handler(e){e&&this.scheduleQuote()},immediate:!0},config:{handler(){this.walletMode&&this.scheduleQuote()},deep:!0}},beforeUnmount(){window.clearTimeout(this.quoteTimer),this.quoteRunId+=1},methods:{scheduleQuote(){window.clearTimeout(this.quoteTimer),this.quoteTimer=window.setTimeout(this.refreshQuote,350)},async refreshQuote(){let e=Y(`veo`),t=++this.quoteRunId;e.quoteLoading=!0,e.quoteUsdc=void 0;try{let n=await U.quote(J(this.config));t===this.quoteRunId&&e.mode===`wallet`&&(e.quoteUsdc=n.amountUsdc)}catch(e){console.warn(`x402 quote failed`,e)}finally{t===this.quoteRunId&&(e.quoteLoading=!1)}},onGenerate(){this.$emit(`generate`)}}}),mt={class:`flex flex-col h-full`},ht={class:`flex-1 overflow-y-auto p-5`},gt={class:`flex flex-col items-center justify-center px-5 pb-5`};function _t(t,n,c,u,d,m){let h=l(`action-selector`),_=l(`model-selector`),v=l(`start-end-image`),y=l(`prompt-input`),b=l(`aspect-ratio-selector`),x=l(`translation-selector`),S=l(`scenario-payment-mode`),C=l(`consumption`),w=l(`magic-icon`),T=l(`el-button`);return g(),s(`div`,mt,[e(`div`,ht,[a(h,{class:`mb-4`}),a(_,{class:`mb-4`}),t.showsImages?(g(),f(v,{key:t.config?.action,class:`mb-4`,limit:t.imageLimit,ingredients:t.config?.action===`ingredients2video`},null,8,[`limit`,`ingredients`])):o(``,!0),a(y,{class:`mb-4`}),a(b,{class:`mb-4`}),a(x,{class:`mb-4`})]),e(`div`,gt,[a(S,{scenario:`veo`}),t.walletMode?o(``,!0):(g(),f(C,{key:0,value:t.consumption,service:t.service},null,8,[`value`,`service`])),a(T,{type:`primary`,class:`btn w-full`,round:``,onClick:t.onGenerate},{default:p(()=>[a(w,{class:`mr-2`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`veo.button.generate`)),1)]),_:1},8,[`onClick`])])])}var vt=q(pt,[[`render`,_t]]),yt=v({name:`TaskPreview`,components:{DeleteIcon:B,ApplicationIcon:A,ChannelIcon:L,ExpandIcon:F,InfoIcon:ee,LanguageIcon:z,LightningIcon:re,MagicIcon:V,TimeIcon:j,WarningIcon:te,CopyToClipboard:ye,ElAlert:T,VideoPlayer:Ce,ImagePreview:Q,ElTooltip:w,ElButton:K,ApiCodeButton:Te,ReportButton:be},props:{modelValue:{type:Object,required:!0}},data(){return{}},computed:{referenceImages(){let e=this.modelValue?.request?.image_urls;return Array.isArray(e)?e.filter(e=>typeof e==`string`&&!!e):[]},actionLabel(){let e=this.modelValue?.request,t=e?.model===`veo31-fast-ingredients`||this.referenceImages.length>2?`ingredients2video`:this.referenceImages.length>0?`image2video`:`text2video`,n=e?.action||t;return this.$t({text2video:`veo.button.action1`,image2video:`veo.button.action2`,ingredients2video:`veo.button.actionIngredients`}[n]||`veo.name.action`)},traceId(){return this.modelValue?.response?.trace_id||this.modelValue?.trace_id},taskInfoClass(){return this.modelValue?.response?.success===!0?`success`:this.modelValue?.response?.success===!1?`failure`:`info`}},methods:{async onDelete(){let e=this.modelValue?.id;if(e){try{await Z.confirm(this.$t(`common.message.deleteTaskConfirm`),this.$t(`common.button.delete`),{type:`warning`,confirmButtonText:this.$t(`common.button.delete`),cancelButtonText:this.$t(`common.button.cancel`),confirmButtonClass:`el-button--danger`})}catch{return}try{await this.$store.dispatch(`veo/deleteTask`,{id:e}),D.success(this.$t(`common.message.deleteTaskSuccess`))}catch{D.error(this.$t(`common.message.deleteTaskFailed`))}}},onDownload(e,t){e?.stopPropagation(),console.log(`on download`),window.open(t,`_blank`)},onOpenVideo(e){window.open(e,`_blank`)}}}),bt={class:`preview`},xt={class:`left`},St={class:`main`},Ct={class:`bot`},wt={class:`datetime`},Tt=[`aria-label`],Et={class:`info`},Dt={key:0,class:`flex justify-start items-center gap-2 mt-2 w-full overflow-x-auto`},Ot={key:1,class:`prompt mt-2`},kt={key:0},At={key:1},jt={key:0,class:n({content:!0,failed:!0})},Mt={key:0,class:`mb-4`},Nt={key:1,class:n({operations:!0,"mt-2":!0})},$={key:1,class:n({content:!0})},Pt={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Ft={class:n({content:!0})},It={key:0,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Lt={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Rt={key:1,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},zt={key:2,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Bt={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Vt={key:3,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Ht={key:4,class:`text-[var(--el-text-color-regular)] text-xs mb-0`};function Ut(u,d,m,_,v,y){let b=l(`capability-presentation`),x=l(`delete-icon`),S=l(`el-tooltip`),C=l(`image-preview`),w=l(`video-player`),T=l(`el-button`),E=l(`api-code-button`),D=l(`report-button`),O=l(`warning-icon`),k=l(`info-icon`),A=l(`copy-to-clipboard`),j=l(`el-alert`),M=l(`application-icon`),N=l(`lightning-icon`),P=l(`expand-icon`),F=l(`language-icon`),I=l(`magic-icon`),L=l(`time-icon`),R=l(`channel-icon`);return g(),s(`div`,bt,[e(`div`,xt,[a(b,{capability:`veo`,part:`avatar`,class:`avatar`})]),e(`div`,St,[e(`div`,Ct,[a(b,{capability:`veo`,part:`name`}),e(`span`,wt,i(u.$dayjs.format(``+new Date(parseFloat((u.modelValue?.created_at||``).toString())*1e3))),1),a(S,{effect:`dark`,content:u.$t(`common.button.delete`),placement:`top`},{default:p(()=>[u.modelValue?.id?(g(),s(`button`,{key:0,type:`button`,class:`btn-delete`,"aria-label":u.$t(`common.button.delete`),onClick:d[0]||=t((...e)=>u.onDelete&&u.onDelete(...e),[`stop`])},[a(x,{size:`1em`,"aria-hidden":`true`,focusable:`false`})],8,Tt)):o(``,!0)]),_:1},8,[`content`])]),e(`div`,Et,[u.referenceImages.length>0?(g(),s(`div`,Dt,[(g(!0),s(c,null,h(u.referenceImages,(e,t)=>(g(),f(C,{key:`${t}-${e}`,url:e,name:`reference-${t+1}`,closable:!1},null,8,[`url`,`name`]))),128))])):o(``,!0),u.modelValue?.request?.prompt?(g(),s(`p`,Ot,[r(i(u.modelValue?.request?.prompt)+` `,1),u.modelValue?.response?o(``,!0):(g(),s(`span`,kt,` - (`+i(u.$t(`veo.status.pending`))+`) `,1)),Array.isArray(u.modelValue?.response?.data)&&u.modelValue?.response?.data[0]?.state===`running`?(g(),s(`span`,At,` - (`+i(u.$t(`veo.status.processing`))+`) `,1)):o(``,!0)])):o(``,!0)]),u.modelValue?.response?.success===!0&&u.modelValue?.response?.data?(g(),s(`div`,jt,[u.modelValue?.response?.data[0]?.video_url?(g(),s(`div`,Mt,[a(w,{src:u.modelValue?.response?.data[0]?.video_url},null,8,[`src`])])):o(``,!0),u.modelValue?.response.success?(g(),s(`div`,Nt,[a(S,{class:`box-item`,effect:`dark`,content:u.$t(`veo.message.downloadVideo`),placement:`top-start`},{default:p(()=>[u.modelValue?.response?.data[0]?.video_url?(g(),f(T,{key:0,type:`info`,size:`small`,class:`btn-action`,onClick:d[1]||=e=>u.onDownload(e,u.modelValue?.response?.data[0]?.video_url)},{default:p(()=>[r(i(u.$t(`veo.button.download`)),1)]),_:1})):o(``,!0)]),_:1},8,[`content`]),a(E,{path:`/veo/videos`,body:u.modelValue?.request},null,8,[`body`]),a(D,{service:`veo`,"target-id":u.modelValue?.id,snapshot:{prompt:u.modelValue?.request?.prompt}},null,8,[`target-id`,`snapshot`])])):o(``,!0)])):o(``,!0),u.modelValue?.response?.success===!1?(g(),s(`div`,$,[a(j,{closable:!1,class:`failure`},{template:p(()=>[a(O,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(u.$t(`veo.name.failure`)),1)]),default:p(()=>[e(`p`,Pt,[a(k,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(u.$t(`veo.name.failureReason`))+`: `+i(u.modelValue?.response?.error?.message)+` `,1),a(A,{content:u.modelValue?.response?.error?.message},null,8,[`content`])])]),_:1})])):o(``,!0),e(`div`,Ft,[a(j,{closable:!1,class:n([`mt-2`,`task-metadata`,u.taskInfoClass])},{default:p(()=>[u.modelValue?.request?.model?(g(),s(`p`,It,[a(M,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(u.$t(`veo.name.model`))+`: `+i(u.modelValue?.request?.model),1)])):o(``,!0),e(`p`,Lt,[a(N,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(u.$t(`veo.name.action`))+`: `+i(u.actionLabel),1)]),u.modelValue?.request?.aspect_ratio?(g(),s(`p`,Rt,[a(P,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(u.$t(`veo.name.ratio`))+`: `+i(u.modelValue?.request?.aspect_ratio),1)])):o(``,!0),u.modelValue?.request?.translation===void 0?o(``,!0):(g(),s(`p`,zt,[a(F,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(u.$t(`veo.name.translation`))+`: `+i(u.$t(u.modelValue?.request?.translation?`seedance.button.on`:`seedance.button.off`)),1)])),e(`p`,Bt,[a(I,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(u.$t(`veo.name.taskId`))+`: `+i(u.modelValue?.id)+` `,1),a(A,{content:u.modelValue?.id,class:`btn-copy inline-block`},null,8,[`content`])]),u.modelValue?.elapsed?(g(),s(`p`,Vt,[a(L,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(u.$t(`veo.name.elapsed`))+`: `+i(u.modelValue?.elapsed?.toFixed(2))+`s `,1)])):o(``,!0),u.traceId?(g(),s(`p`,Ht,[a(R,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(u.$t(`veo.name.traceId`))+`: `+i(u.traceId)+` `,1),a(A,{content:u.traceId,class:`btn-copy inline-block`},null,8,[`content`])])):o(``,!0)]),_:1},8,[`class`])])])])}var Wt=v({name:`RecentPanel`,components:{TaskPreview:q(yt,[[`render`,Ut],[`__scopeId`,`data-v-eb0880c2`]]),NoTasks:I,BotPlaceholder:Ee,ScrollList:P},props:{loading:{type:Boolean,default:!1}},emits:[`reach-top`],data(){return{job:0}},computed:{tasks(){return{...this.$store.state.veo?.tasks,items:this.$store.state.veo?.tasks?.items?.slice()}}},methods:{getScrollElement(){return this.$refs.scrollList?.getScrollElement?.()}}}),Gt={key:0},Kt={key:2,class:`w-full h-full flex items-center justify-center`};function qt(e,t,n,r,i,u){let d=l(`bot-placeholder`),m=l(`task-preview`),_=l(`scroll-list`),v=l(`no-tasks`);return g(),s(c,null,[e.tasks?.items===void 0?(g(),s(`div`,Gt,[a(d)])):e.tasks?.items?.length&&e.tasks?.items?.length>0?(g(),f(_,{key:1,ref:`scrollList`,class:`tasks h-full w-full overflow-y-auto`,loading:e.loading,onReachTop:t[0]||=t=>e.$emit(`reach-top`)},{default:p(()=>[(g(!0),s(c,null,h(e.tasks?.items,(e,t)=>(g(),f(m,{key:t,"model-value":e},null,8,[`model-value`]))),128))]),_:1},8,[`loading`])):o(``,!0),e.tasks?.items?.length===0?(g(),s(`div`,Kt,[a(v)])):o(``,!0)],64)}var Jt=v({name:`VeoIndex`,components:{ConfigPanel:vt,Layout:Me,RecentPanel:q(Wt,[[`render`,qt]])},mixins:[fe],inject:[`initialized`],data(){return{task:void 0,job:0,loadingMore:!1,fetchingTasks:!1,walletTaskIds:[]}},computed:{applicationsLoading(){return this.$store.state.veo?.status?.getApplications===E.Request},tasksLoading(){return this.$store.state.veo?.status?.getTasks===E.Request||this.fetchingTasks},credential(){return this.$store.state.veo.credential},config(){return this.$store.state.veo.config},tasks(){return this.$store.state.veo.tasks},walletMode(){return X()&&Y(`veo`).mode===`wallet`}},watch:{walletMode:{async handler(e,t){if(!(t===void 0||e===t)){if(this.$store.commit(`veo/setTasks`,void 0),e&&!this.job&&(this.job=window.setInterval(this.onGetTasks,5e3)),!e&&!this.credential?.token){window.clearInterval(this.job),this.job=0,await this.onScrollDown();return}await this.onGetTasks(),await this.onScrollDown()}}},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 R({tasks:this.tasks,getTasks:()=>this.tasks,loading:this.loadingMore,setLoading:e=>this.loadingMore=e,isBlocked:()=>this.tasksLoading||this.applicationsLoading,fetch:e=>this.onGetTasks({createdAtMax:e}),getScrollElement:()=>this.getTasksScrollElement()})},async onGetService(){console.debug(`start onGetService`),await this.$store.dispatch(`veo/getService`),console.debug(`end onGetService`)},async onGetApplication(){console.debug(`start onGetApplication`),await this.$store.dispatch(`veo/getApplications`),console.debug(`end onGetApplication`),await this.onGetTasks()},async onScrollDown(){await this.$nextTick();let 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);let{limit:t=5,createdAtMin:n,createdAtMax:r}=e||{};console.debug(`limit`,t,`createdAtMin`,n,`createdAtMax`,r),this.fetchingTasks=!0;try{await this.$store.dispatch(`veo/getTasks`,{limit:t,createdAtMin:n,createdAtMax:r,...this.walletMode&&!this.credential?.token?{mode:`x402`,ids:this.walletTaskIds}:{}})}finally{this.fetchingTasks=!1}},async onGenerate(){if(!le(this.uploadTracker,e=>this.$t(e),e=>D.warning(e)))return;let e=J(this.config);if((e.action===`image2video`||e.action===`ingredients2video`)&&!(e.image_urls&&e.image_urls.length>0)){D.warning(this.$t(`veo.message.imageRequired`));return}let t;if(this.walletMode){let n=this.getWalletContext();if(!n){D.warning(this.$t(`common.x402Scenario.connectWalletFirst`));return}t=U.generate(e,{mode:`x402`,x402:{wallet:n,confirm:e=>this.confirmWalletPayment(e),identityToken:this.credential?.token}})}else{if(!ge())return;let n=this.credential?.token;if(!n)return;t=U.generate(e,{token:n})}D.info(this.$t(`veo.message.startingTask`)),ce(`veo`,t).then(e=>{let t=e?.data?.task_id;this.walletMode&&!this.credential?.token&&t&&!this.walletTaskIds.includes(t)&&this.walletTaskIds.unshift(t),D.success(this.$t(`veo.message.startTaskSuccess`))}).catch(e=>{let t=e?.response?.data;e instanceof de||(t?.error?.code===`used_up`?D.error(this.$t(`veo.message.usedUp`)):this.walletMode?D.error(`${this.$t(`common.x402Scenario.paymentFailed`)} ${e?.message||``}`.trim()):D.error(this.$t(`veo.message.startTaskFailed`)))}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})},getWalletContext(){return se(this.$wallet)},async confirmWalletPayment(e){return Z.confirm(this.$t(`common.x402Scenario.confirmPayment`,{amount:e.amountUsdc}),this.$t(`order.message.x402ConfirmTitle`),{confirmButtonText:this.$t(`order.message.x402WalletPayCta`),cancelButtonText:this.$t(`common.button.cancel`),type:`warning`}).then(()=>!0).catch(()=>!1)},getTasksScrollElement(){return this.$refs.recentPanel?.getScrollElement?.()}}});function Yt(e,t,n,r,i,o){let s=l(`config-panel`),c=l(`recent-panel`),u=l(`layout`);return g(),f(u,null,{config:p(()=>[a(s,{onGenerate:e.onGenerate},null,8,[`onGenerate`])]),result:p(()=>[a(c,{ref:`recentPanel`,loading:e.loadingMore,onReachTop:e.onReachTop},null,8,[`loading`,`onReachTop`])]),_:1})}var Xt=q(Jt,[[`render`,Yt]]);export{Xt as default};
|
|
1
|
+
import"./rolldown-runtime--c01j_DQ.js";import{A as e,C as t,Gt as n,I as r,Jt as i,L as a,M as o,N as s,T as c,at as l,ht as u,it as d,j as f,mt as p,qt as m,rt as h,tt as g,x as _,z as v}from"./vendor-chart-Dw-P17PN.js";import{r as y,t as b}from"./select-Bs3ZkE9R.js";import{n as x,t as S}from"./tabs-0et25VV-.js";import{t as C}from"./upload-uY7VeHmd.js";import{t as w}from"./tooltip-DtiQm14e.js";import{t as T}from"./alert-BprQRUmf.js";import{h as E,v as D}from"./models-CwklOk8Z.js";import{t as O}from"./drawer-C9ziMa5D.js";import{t as k}from"./switch-DRwxl6Da.js";import{t as A}from"./box-BVjGLFxS.js";import{t as j}from"./clock-CEYSZpiZ.js";import{a as M,i as N,n as P,o as F,r as I,s as L,t as R}from"./pagination-B8FPaRIA.js";import{t as ee}from"./info-DlDYYYyz.js";import{t as z}from"./languages-CeIhdhQe.js";import{t as B}from"./trash-2-84jnyEiH.js";import{t as te}from"./triangle-alert-DijP-r53.js";import{t as ne}from"./upload-B-GObY7P.js";import{t as V}from"./wand-sparkles-dlhWJtt5.js";import{t as re}from"./zap-CVI9h9l6.js";import{ci as ie,li as ae,ui as oe}from"./constants-DlrPFkyM.js";import{$r as se,$t as H,Cr as U,Er as W,Jt as G,Ma as K,O as q,Oi as ce,Qt as le,Sr as J,Tr as ue,Zr as de,en as fe,hi as Y,ia as pe,in as me,mi as X,nn as he,pn as ge,tn as _e,va as Z,wr as ve}from"./index-BOCSBfUe.js";import{t as ye}from"./CopyToClipboard-Bt4pNx5a.js";import{t as be}from"./ReportButton-DzpX6LE5.js";import{t as Q}from"./ImagePreview-BtYz7VS_.js";import{n as xe}from"./taskDrawerMixin-DyAUhFEq.js";import{t as Se}from"./Consumption-CQoAp-2Q.js";import{t as Ce}from"./VideoPlayer-Coh2RFTi.js";import{t as we}from"./ScenarioPaymentMode-CqRu92vx.js";import{t as Te}from"./ApiCodeButton-BAkOBxie.js";import{t as Ee}from"./BotPlaceholder-CBS4lAjm.js";var De=v({name:`LayoutVeo`,components:{MagicIcon:V,ElDrawer:O,ElButton:K},mixins:[xe]}),Oe={class:`main flex flex-row flex-1`},ke={class:`config w-[320px] flex-none h-full min-h-0 overflow-hidden flex flex-col bg-[var(--app-sidebar-bg)] border-r border-[var(--app-border-subtle)]`},Ae={class:`result h-full p-6 flex-1 flex flex-col min-w-0 overflow-x-hidden bg-[var(--app-content-bg)]`};function je(t,n,r,i,o,c){let f=l(`magic-icon`),m=l(`el-button`),h=l(`el-drawer`);return g(),s(`div`,Oe,[e(`div`,ke,[d(t.$slots,`config`,{},void 0,!0)]),e(`div`,Ae,[d(t.$slots,`result`,{},void 0,!0)]),u(a(m,{circle:``,class:`menu`,"aria-label":t.$t(`common.button.openMenu`),title:t.$t(`common.button.openMenu`),onClick:n[0]||=e=>t.drawer=!0},{default:p(()=>[a(f,{size:`1em`,"aria-hidden":`true`,focusable:`false`})]),_:1},8,[`aria-label`,`title`]),[[_,!t.tasksEmpty]]),a(h,{modelValue:t.drawer,"onUpdate:modelValue":n[1]||=e=>t.drawer=e,direction:`ltr`,"with-header":!1,size:`340px`,class:`generator-drawer`},{default:p(()=>[d(t.$slots,`config`,{},void 0,!0)]),_:3},8,[`modelValue`])])}var Me=q(De,[[`render`,je],[`__scopeId`,`data-v-293c9493`]]),Ne=v({name:`ModelSelector`,components:{ElSelect:y,ElOption:b},computed:{isModelLocked(){return this.$store.state.veo?.config?.action===`ingredients2video`},options(){return this.isModelLocked?[{value:ue,label:`Veo 3.1 Fast`}]:ve},value:{get(){return this.$store.state.veo?.config?.model},set(e){this.$store.commit(`veo/setConfig`,{...this.$store.state.veo.config,model:e})}}},mounted(){this.value||=oe}}),Pe={class:`field`},Fe={class:`title font-bold`};function Ie(t,n,r,o,u,d){let m=l(`el-option`),_=l(`el-select`);return g(),s(`div`,Pe,[e(`h2`,Fe,i(t.$t(`veo.name.model`)),1),a(_,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,class:`value`,placeholder:t.$t(`veo.placeholder.select`),disabled:t.isModelLocked},{default:p(()=>[(g(!0),s(c,null,h(t.options,e=>(g(),f(m,{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`,`disabled`])])}var Le=q(Ne,[[`render`,Ie],[`__scopeId`,`data-v-90ed8cff`]]),Re=v({name:`ActionSelector`,components:{ElTabs:x,ElTabPane:S},data(){return{}},computed:{options(){return[{value:`text2video`,label:this.$t(`veo.button.action1`)},{value:`image2video`,label:this.$t(`veo.button.action2`)},{value:`ingredients2video`,label:this.$t(`veo.button.actionIngredients`)}]},value(){return this.$store.state.veo?.config?.action||`text2video`}},mounted(){this.$store.state.veo?.config?.action||this.onUpdate(ie)},methods:{onUpdate(e){this.$store.commit(`veo/setConfig`,W(this.$store.state.veo?.config,e))}}}),ze={class:`tab-label`},Be={class:`text`};function Ve(t,n,r,a,o,u){let d=l(`el-tab-pane`),m=l(`el-tabs`);return g(),f(m,{"model-value":t.value,class:`action-tabs scenario-tabs scenario-tabs--divided`,"onUpdate:modelValue":t.onUpdate},{default:p(()=>[(g(!0),s(c,null,h(t.options,t=>(g(),f(d,{key:t.value,name:t.value},{label:p(()=>[e(`span`,ze,[e(`span`,Be,i(t.label),1)])]),_:2},1032,[`name`]))),128))]),_:1},8,[`model-value`,`onUpdate:modelValue`])}var He=q(Re,[[`render`,Ve],[`__scopeId`,`data-v-c72fb85c`]]),Ue=v({name:`TranslationSelector`,components:{ElSwitch:k,InfoIcon:M},computed:{value:{get(){return this.$store.state.veo?.config?.translation},set(e){console.debug(`set translation`,e),this.$store.commit(`veo/setConfig`,{...this.$store.state.veo?.config,translation:e})}}},mounted(){this.value===void 0&&(this.value=!1)}}),We={class:`relative`},Ge={class:`flex justify-between`},Ke={class:`flex justify-start items-center`},qe={class:`text-sm font-bold`},Je={class:`flex justify-end items-center`};function Ye(t,n,r,o,c,u){let d=l(`info-icon`),f=l(`el-switch`);return g(),s(`div`,We,[e(`div`,Ge,[e(`div`,Ke,[e(`span`,qe,i(t.$t(`veo.name.translation`)),1),a(d,{content:t.$t(`veo.description.translation`)},null,8,[`content`])]),e(`div`,Je,[a(f,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,class:`value`},null,8,[`modelValue`])])])])}var Xe=q(Ue,[[`render`,Ye]]),Ze=v({name:`AspectRatioSelector`,data(){return{options:[{value:`16:9`,label:`16:9`,width:25,height:13},{value:`9:16`,label:`9:16`,width:13,height:25}]}},computed:{active(){return this.options.findIndex(e=>e.value===this.value)||0},value:{get(){return this.$store.state.veo?.config?.aspect_ratio},set(e){console.debug(`set aspect_ratio`,e),this.$store.commit(`veo/setConfig`,{...this.$store.state?.veo?.config,aspect_ratio:e})}}},mounted(){this.value||=ae}}),Qe={class:`text-sm font-bold mb-2 block`},$e={class:`items`},et=[`onClick`],tt={class:`name`};function nt(t,r,a,o,l,u){return g(),s(`div`,null,[e(`span`,Qe,i(t.$t(`veo.name.ratio`)),1),e(`div`,$e,[(g(!0),s(c,null,h(t.options,(r,a)=>(g(),s(`div`,{key:a,class:n({active:t.active===a,item:!0}),onClick:e=>t.value=r.value},[e(`div`,{class:n([`preview`,r.label])},[e(`div`,{class:`rect`,style:m({width:r.width+`px`,height:r.height+`px`})},null,4)],2),e(`p`,tt,i(r.label),1)],10,et))),128))])])}var rt=q(Ze,[[`render`,nt],[`__scopeId`,`data-v-28c472c4`]]),it=v({name:`StartEndImage`,components:{UploadIcon:ne,ElUpload:C,ElButton:K,InfoIcon:M,ImagePreview:Q},mixins:[he,_e,H,G],props:{limit:{type:Number,default:2},ingredients:{type:Boolean,default:!1}},emits:[`change`],data(){return{fileList:[],uploadUrl:pe()+`/api/v1/files/`}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},title(){return this.ingredients?this.$t(`veo.button.actionIngredients`):this.$t(`veo.name.startEndImage`)},description(){return this.ingredients?this.$t(`veo.description.imageUrl`):this.$t(`veo.description.uploadStartEndImage`)},urls(){return this.fileList.map(e=>e.response?.file_url||e.url).filter(e=>!!e)},value:{get(){return this.$store.state?.veo?.config?.image_urls},set(){}}},watch:{limit(){this.fileList.length>this.limit&&(this.fileList=this.fileList.slice(0,this.limit),this.onSetStartEndImageUrl())}},mounted(){this.fileList=(this.value||[]).map((e,t)=>({name:`reference-${t+1}`,percentage:100,response:{file_url:e},status:`success`,uid:Date.now()+t,url:e}))},methods:{onExceed(){D.warning(this.$t(`veo.message.uploadReferencesLimit`,{limit:this.limit}))},onError(){D.error(this.$t(`veo.message.uploadReferencesError`))},onSetStartEndImageUrl(){let e=this.urls;this.$store.commit(`veo/setConfig`,{...this.$store.state?.veo?.config,image_urls:e})},async onSuccess(){this.onSetStartEndImageUrl()},onRemove(e){let t=this.fileList.indexOf(e);t>=0&&this.fileList.splice(t,1),this.onSetStartEndImageUrl()}}}),at={class:`relative`},ot={class:`flex justify-between`},st={class:`flex justify-start items-center`},ct={class:`text-sm font-bold`};function lt(t,n,c,u,d,m){let h=l(`info-icon`),_=l(`image-preview`),v=l(`upload-icon`),y=l(`el-button`),b=l(`el-upload`);return g(),s(`div`,at,[e(`div`,ot,[e(`div`,st,[e(`span`,ct,i(t.title),1),a(h,{content:t.description},null,8,[`content`])])]),a(b,{ref:`uploader`,"file-list":t.fileList,"onUpdate:fileList":n[0]||=e=>t.fileList=e,name:`file`,accept:`.png,.jpg,.jpeg,.gif,.bmp,.webp`,limit:t.limit,class:`upload-wrapper`,multiple:!0,"before-upload":t.beforeUploadSizeGuard,action:t.uploadUrl,"list-type":`picture`,"on-exceed":t.onExceed,"on-error":t.onError,"on-success":t.onSuccess,headers:t.headers},{file:p(({file:e})=>[e.url&&e.percentage!==void 0?(g(),f(_,{key:0,url:e.url,name:e.name,percentage:e.percentage,onRemove:n=>t.onRemove(e)},null,8,[`url`,`name`,`percentage`,`onRemove`])):o(``,!0)]),default:p(()=>[a(y,{round:``,type:`primary`,size:`small`,class:`btn btn-upload`},{default:p(()=>[a(v,{class:`icon mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`veo.button.uploadReferences`)),1)]),_:1})]),_:1},8,[`file-list`,`limit`,`before-upload`,`action`,`on-exceed`,`on-error`,`on-success`,`headers`])])}var ut=q(it,[[`render`,lt],[`__scopeId`,`data-v-a4391199`]]),dt=v({name:`PromptInput`,components:{PromptTextarea:N},computed:{prompt:{get(){return this.$store.state.veo?.config?.prompt},set(e){this.$store.commit(`veo/setConfig`,{...this.$store.state.veo?.config,prompt:e})}}},mounted(){this.prompt||=``}});function ft(e,t,n,r,i,a){let o=l(`prompt-textarea`);return g(),f(o,{modelValue:e.prompt,"onUpdate:modelValue":t[0]||=t=>e.prompt=t,title:e.$t(`veo.name.prompt`),info:e.$t(`veo.description.prompt`),placeholder:e.$t(`veo.placeholder.prompt`)},null,8,[`modelValue`,`title`,`info`,`placeholder`])}var pt=v({name:`ConfigPanel`,components:{MagicIcon:V,ElButton:K,Consumption:Se,PromptInput:q(dt,[[`render`,ft]]),ModelSelector:Le,StartEndImage:ut,ActionSelector:He,TranslationSelector:Xe,AspectRatioSelector:rt,ScenarioPaymentMode:we},emits:[`generate`],data(){return{quoteTimer:0,quoteRunId:0}},computed:{config(){return this.$store.state.veo?.config},showsImages(){return this.config?.action===`image2video`||this.config?.action===`ingredients2video`},imageLimit(){return this.config?.action===`ingredients2video`?3:2},consumption(){return me(this.config,this.service?.cost)},service(){return this.$store.state.veo?.service},walletMode(){return X()&&Y(`veo`).mode===`wallet`}},watch:{walletMode:{handler(e){e&&this.scheduleQuote()},immediate:!0},config:{handler(){this.walletMode&&this.scheduleQuote()},deep:!0}},beforeUnmount(){window.clearTimeout(this.quoteTimer),this.quoteRunId+=1},methods:{scheduleQuote(){window.clearTimeout(this.quoteTimer),this.quoteTimer=window.setTimeout(this.refreshQuote,350)},async refreshQuote(){let e=Y(`veo`),t=++this.quoteRunId;e.quoteLoading=!0,e.quoteUsdc=void 0;try{let n=await U.quote(J(this.config));t===this.quoteRunId&&e.mode===`wallet`&&(e.quoteUsdc=n.amountUsdc)}catch(e){console.warn(`x402 quote failed`,e)}finally{t===this.quoteRunId&&(e.quoteLoading=!1)}},onGenerate(){this.$emit(`generate`)}}}),mt={class:`flex flex-col h-full`},ht={class:`flex-1 overflow-y-auto p-5`},gt={class:`flex flex-col items-center justify-center px-5 pb-5`};function _t(t,n,c,u,d,m){let h=l(`action-selector`),_=l(`model-selector`),v=l(`start-end-image`),y=l(`prompt-input`),b=l(`aspect-ratio-selector`),x=l(`translation-selector`),S=l(`scenario-payment-mode`),C=l(`consumption`),w=l(`magic-icon`),T=l(`el-button`);return g(),s(`div`,mt,[e(`div`,ht,[a(h,{class:`mb-4`}),a(_,{class:`mb-4`}),t.showsImages?(g(),f(v,{key:t.config?.action,class:`mb-4`,limit:t.imageLimit,ingredients:t.config?.action===`ingredients2video`},null,8,[`limit`,`ingredients`])):o(``,!0),a(y,{class:`mb-4`}),a(b,{class:`mb-4`}),a(x,{class:`mb-4`})]),e(`div`,gt,[a(S,{scenario:`veo`}),t.walletMode?o(``,!0):(g(),f(C,{key:0,value:t.consumption,service:t.service},null,8,[`value`,`service`])),a(T,{type:`primary`,class:`btn w-full`,round:``,onClick:t.onGenerate},{default:p(()=>[a(w,{class:`mr-2`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`veo.button.generate`)),1)]),_:1},8,[`onClick`])])])}var vt=q(pt,[[`render`,_t]]),yt=v({name:`TaskPreview`,components:{DeleteIcon:B,ApplicationIcon:A,ChannelIcon:L,ExpandIcon:F,InfoIcon:ee,LanguageIcon:z,LightningIcon:re,MagicIcon:V,TimeIcon:j,WarningIcon:te,CopyToClipboard:ye,ElAlert:T,VideoPlayer:Ce,ImagePreview:Q,ElTooltip:w,ElButton:K,ApiCodeButton:Te,ReportButton:be},props:{modelValue:{type:Object,required:!0}},data(){return{}},computed:{referenceImages(){let e=this.modelValue?.request?.image_urls;return Array.isArray(e)?e.filter(e=>typeof e==`string`&&!!e):[]},actionLabel(){let e=this.modelValue?.request,t=e?.model===`veo31-fast-ingredients`||this.referenceImages.length>2?`ingredients2video`:this.referenceImages.length>0?`image2video`:`text2video`,n=e?.action||t;return this.$t({text2video:`veo.button.action1`,image2video:`veo.button.action2`,ingredients2video:`veo.button.actionIngredients`}[n]||`veo.name.action`)},traceId(){return this.modelValue?.response?.trace_id||this.modelValue?.trace_id},taskInfoClass(){return this.modelValue?.response?.success===!0?`success`:this.modelValue?.response?.success===!1?`failure`:`info`}},methods:{async onDelete(){let e=this.modelValue?.id;if(e){try{await Z.confirm(this.$t(`common.message.deleteTaskConfirm`),this.$t(`common.button.delete`),{type:`warning`,confirmButtonText:this.$t(`common.button.delete`),cancelButtonText:this.$t(`common.button.cancel`),confirmButtonClass:`el-button--danger`})}catch{return}try{await this.$store.dispatch(`veo/deleteTask`,{id:e}),D.success(this.$t(`common.message.deleteTaskSuccess`))}catch{D.error(this.$t(`common.message.deleteTaskFailed`))}}},onDownload(e,t){e?.stopPropagation(),console.log(`on download`),window.open(t,`_blank`)},onOpenVideo(e){window.open(e,`_blank`)}}}),bt={class:`preview`},xt={class:`left`},St={class:`main`},Ct={class:`bot`},wt={class:`datetime`},Tt=[`aria-label`],Et={class:`info`},Dt={key:0,class:`flex justify-start items-center gap-2 mt-2 w-full overflow-x-auto`},Ot={key:1,class:`prompt mt-2`},kt={key:0},At={key:1},jt={key:0,class:n({content:!0,failed:!0})},Mt={key:0,class:`mb-4`},Nt={key:1,class:n({operations:!0,"mt-2":!0})},$={key:1,class:n({content:!0})},Pt={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Ft={class:n({content:!0})},It={key:0,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Lt={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Rt={key:1,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},zt={key:2,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Bt={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Vt={key:3,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Ht={key:4,class:`text-[var(--el-text-color-regular)] text-xs mb-0`};function Ut(u,d,m,_,v,y){let b=l(`capability-presentation`),x=l(`delete-icon`),S=l(`el-tooltip`),C=l(`image-preview`),w=l(`video-player`),T=l(`el-button`),E=l(`api-code-button`),D=l(`report-button`),O=l(`warning-icon`),k=l(`info-icon`),A=l(`copy-to-clipboard`),j=l(`el-alert`),M=l(`application-icon`),N=l(`lightning-icon`),P=l(`expand-icon`),F=l(`language-icon`),I=l(`magic-icon`),L=l(`time-icon`),R=l(`channel-icon`);return g(),s(`div`,bt,[e(`div`,xt,[a(b,{capability:`veo`,part:`avatar`,class:`avatar`})]),e(`div`,St,[e(`div`,Ct,[a(b,{capability:`veo`,part:`name`}),e(`span`,wt,i(u.$dayjs.format(``+new Date(parseFloat((u.modelValue?.created_at||``).toString())*1e3))),1),a(S,{effect:`dark`,content:u.$t(`common.button.delete`),placement:`top`},{default:p(()=>[u.modelValue?.id?(g(),s(`button`,{key:0,type:`button`,class:`btn-delete`,"aria-label":u.$t(`common.button.delete`),onClick:d[0]||=t((...e)=>u.onDelete&&u.onDelete(...e),[`stop`])},[a(x,{size:`1em`,"aria-hidden":`true`,focusable:`false`})],8,Tt)):o(``,!0)]),_:1},8,[`content`])]),e(`div`,Et,[u.referenceImages.length>0?(g(),s(`div`,Dt,[(g(!0),s(c,null,h(u.referenceImages,(e,t)=>(g(),f(C,{key:`${t}-${e}`,url:e,name:`reference-${t+1}`,closable:!1},null,8,[`url`,`name`]))),128))])):o(``,!0),u.modelValue?.request?.prompt?(g(),s(`p`,Ot,[r(i(u.modelValue?.request?.prompt)+` `,1),u.modelValue?.response?o(``,!0):(g(),s(`span`,kt,` - (`+i(u.$t(`veo.status.pending`))+`) `,1)),Array.isArray(u.modelValue?.response?.data)&&u.modelValue?.response?.data[0]?.state===`running`?(g(),s(`span`,At,` - (`+i(u.$t(`veo.status.processing`))+`) `,1)):o(``,!0)])):o(``,!0)]),u.modelValue?.response?.success===!0&&u.modelValue?.response?.data?(g(),s(`div`,jt,[u.modelValue?.response?.data[0]?.video_url?(g(),s(`div`,Mt,[a(w,{src:u.modelValue?.response?.data[0]?.video_url},null,8,[`src`])])):o(``,!0),u.modelValue?.response.success?(g(),s(`div`,Nt,[a(S,{class:`box-item`,effect:`dark`,content:u.$t(`veo.message.downloadVideo`),placement:`top-start`},{default:p(()=>[u.modelValue?.response?.data[0]?.video_url?(g(),f(T,{key:0,type:`info`,size:`small`,class:`btn-action`,onClick:d[1]||=e=>u.onDownload(e,u.modelValue?.response?.data[0]?.video_url)},{default:p(()=>[r(i(u.$t(`veo.button.download`)),1)]),_:1})):o(``,!0)]),_:1},8,[`content`]),a(E,{path:`/veo/videos`,body:u.modelValue?.request},null,8,[`body`]),a(D,{service:`veo`,"target-id":u.modelValue?.id,snapshot:{prompt:u.modelValue?.request?.prompt}},null,8,[`target-id`,`snapshot`])])):o(``,!0)])):o(``,!0),u.modelValue?.response?.success===!1?(g(),s(`div`,$,[a(j,{closable:!1,class:`failure`},{template:p(()=>[a(O,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(u.$t(`veo.name.failure`)),1)]),default:p(()=>[e(`p`,Pt,[a(k,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(u.$t(`veo.name.failureReason`))+`: `+i(u.modelValue?.response?.error?.message)+` `,1),a(A,{content:u.modelValue?.response?.error?.message},null,8,[`content`])])]),_:1})])):o(``,!0),e(`div`,Ft,[a(j,{closable:!1,class:n([`mt-2`,`task-metadata`,u.taskInfoClass])},{default:p(()=>[u.modelValue?.request?.model?(g(),s(`p`,It,[a(M,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(u.$t(`veo.name.model`))+`: `+i(u.modelValue?.request?.model),1)])):o(``,!0),e(`p`,Lt,[a(N,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(u.$t(`veo.name.action`))+`: `+i(u.actionLabel),1)]),u.modelValue?.request?.aspect_ratio?(g(),s(`p`,Rt,[a(P,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(u.$t(`veo.name.ratio`))+`: `+i(u.modelValue?.request?.aspect_ratio),1)])):o(``,!0),u.modelValue?.request?.translation===void 0?o(``,!0):(g(),s(`p`,zt,[a(F,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(u.$t(`veo.name.translation`))+`: `+i(u.$t(u.modelValue?.request?.translation?`seedance.button.on`:`seedance.button.off`)),1)])),e(`p`,Bt,[a(I,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(u.$t(`veo.name.taskId`))+`: `+i(u.modelValue?.id)+` `,1),a(A,{content:u.modelValue?.id,class:`btn-copy inline-block`},null,8,[`content`])]),u.modelValue?.elapsed?(g(),s(`p`,Vt,[a(L,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(u.$t(`veo.name.elapsed`))+`: `+i(u.modelValue?.elapsed?.toFixed(2))+`s `,1)])):o(``,!0),u.traceId?(g(),s(`p`,Ht,[a(R,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(u.$t(`veo.name.traceId`))+`: `+i(u.traceId)+` `,1),a(A,{content:u.traceId,class:`btn-copy inline-block`},null,8,[`content`])])):o(``,!0)]),_:1},8,[`class`])])])])}var Wt=v({name:`RecentPanel`,components:{TaskPreview:q(yt,[[`render`,Ut],[`__scopeId`,`data-v-eb0880c2`]]),NoTasks:I,BotPlaceholder:Ee,ScrollList:P},props:{loading:{type:Boolean,default:!1}},emits:[`reach-top`],data(){return{job:0}},computed:{tasks(){return{...this.$store.state.veo?.tasks,items:this.$store.state.veo?.tasks?.items?.slice()}}},methods:{getScrollElement(){return this.$refs.scrollList?.getScrollElement?.()}}}),Gt={key:0},Kt={key:2,class:`w-full h-full flex items-center justify-center`};function qt(e,t,n,r,i,u){let d=l(`bot-placeholder`),m=l(`task-preview`),_=l(`scroll-list`),v=l(`no-tasks`);return g(),s(c,null,[e.tasks?.items===void 0?(g(),s(`div`,Gt,[a(d)])):e.tasks?.items?.length&&e.tasks?.items?.length>0?(g(),f(_,{key:1,ref:`scrollList`,class:`tasks h-full w-full overflow-y-auto`,loading:e.loading,onReachTop:t[0]||=t=>e.$emit(`reach-top`)},{default:p(()=>[(g(!0),s(c,null,h(e.tasks?.items,(e,t)=>(g(),f(m,{key:t,"model-value":e},null,8,[`model-value`]))),128))]),_:1},8,[`loading`])):o(``,!0),e.tasks?.items?.length===0?(g(),s(`div`,Kt,[a(v)])):o(``,!0)],64)}var Jt=v({name:`VeoIndex`,components:{ConfigPanel:vt,Layout:Me,RecentPanel:q(Wt,[[`render`,qt]])},mixins:[fe],inject:[`initialized`],data(){return{task:void 0,job:0,loadingMore:!1,fetchingTasks:!1,walletTaskIds:[]}},computed:{applicationsLoading(){return this.$store.state.veo?.status?.getApplications===E.Request},tasksLoading(){return this.$store.state.veo?.status?.getTasks===E.Request||this.fetchingTasks},credential(){return this.$store.state.veo.credential},config(){return this.$store.state.veo.config},tasks(){return this.$store.state.veo.tasks},walletMode(){return X()&&Y(`veo`).mode===`wallet`}},watch:{walletMode:{async handler(e,t){if(!(t===void 0||e===t)){if(this.$store.commit(`veo/setTasks`,void 0),e&&!this.job&&(this.job=window.setInterval(this.onGetTasks,5e3)),!e&&!this.credential?.token){window.clearInterval(this.job),this.job=0,await this.onScrollDown();return}await this.onGetTasks(),await this.onScrollDown()}}},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 R({tasks:this.tasks,getTasks:()=>this.tasks,loading:this.loadingMore,setLoading:e=>this.loadingMore=e,isBlocked:()=>this.tasksLoading||this.applicationsLoading,fetch:e=>this.onGetTasks({createdAtMax:e}),getScrollElement:()=>this.getTasksScrollElement()})},async onGetService(){console.debug(`start onGetService`),await this.$store.dispatch(`veo/getService`),console.debug(`end onGetService`)},async onGetApplication(){console.debug(`start onGetApplication`),await this.$store.dispatch(`veo/getApplications`),console.debug(`end onGetApplication`),await this.onGetTasks()},async onScrollDown(){await this.$nextTick();let 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);let{limit:t=5,createdAtMin:n,createdAtMax:r}=e||{};console.debug(`limit`,t,`createdAtMin`,n,`createdAtMax`,r),this.fetchingTasks=!0;try{await this.$store.dispatch(`veo/getTasks`,{limit:t,createdAtMin:n,createdAtMax:r,...this.walletMode&&!this.credential?.token?{mode:`x402`,ids:this.walletTaskIds}:{}})}finally{this.fetchingTasks=!1}},async onGenerate(){if(!le(this.uploadTracker,e=>this.$t(e),e=>D.warning(e)))return;let e=J(this.config);if((e.action===`image2video`||e.action===`ingredients2video`)&&!(e.image_urls&&e.image_urls.length>0)){D.warning(this.$t(`veo.message.imageRequired`));return}let t;if(this.walletMode){let n=this.getWalletContext();if(!n){D.warning(this.$t(`common.x402Scenario.connectWalletFirst`));return}t=U.generate(e,{mode:`x402`,x402:{wallet:n,confirm:e=>this.confirmWalletPayment(e),identityToken:this.credential?.token}})}else{if(!ge())return;let n=this.credential?.token;if(!n)return;t=U.generate(e,{token:n})}D.info(this.$t(`veo.message.startingTask`)),ce(`veo`,t).then(e=>{let t=e?.data?.task_id;this.walletMode&&!this.credential?.token&&t&&!this.walletTaskIds.includes(t)&&this.walletTaskIds.unshift(t),D.success(this.$t(`veo.message.startTaskSuccess`))}).catch(e=>{let t=e?.response?.data;e instanceof de||(t?.error?.code===`used_up`?D.error(this.$t(`veo.message.usedUp`)):this.walletMode?D.error(`${this.$t(`common.x402Scenario.paymentFailed`)} ${e?.message||``}`.trim()):D.error(this.$t(`veo.message.startTaskFailed`)))}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})},getWalletContext(){return se(this.$wallet)},async confirmWalletPayment(e){return Z.confirm(this.$t(`common.x402Scenario.confirmPayment`,{amount:e.amountUsdc}),this.$t(`order.message.x402ConfirmTitle`),{confirmButtonText:this.$t(`order.message.x402WalletPayCta`),cancelButtonText:this.$t(`common.button.cancel`),type:`warning`}).then(()=>!0).catch(()=>!1)},getTasksScrollElement(){return this.$refs.recentPanel?.getScrollElement?.()}}});function Yt(e,t,n,r,i,o){let s=l(`config-panel`),c=l(`recent-panel`),u=l(`layout`);return g(),f(u,null,{config:p(()=>[a(s,{onGenerate:e.onGenerate},null,8,[`onGenerate`])]),result:p(()=>[a(c,{ref:`recentPanel`,loading:e.loadingMore,onReachTop:e.onReachTop},null,8,[`loading`,`onReachTop`])]),_:1})}var Xt=q(Jt,[[`render`,Yt]]);export{Xt as default};
|