@acedatacloud/nexior 3.380.4 → 3.380.5
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-DSt2Pz0O.js → ApiCodeButton-DBR9tGBM.js} +1 -1
- package/dist/assets/{ApiCodeDialog-Byr4CPCS.js → ApiCodeDialog-CCg8lOq_.js} +2 -2
- package/dist/assets/{Artifacts-CwC_U4xA.js → Artifacts-w1CZhaPc.js} +1 -1
- package/dist/assets/{AskUserQuestionCard-D9fOfq80.js → AskUserQuestionCard-3OJbU7hp.js} +1 -1
- package/dist/assets/{AudioPreview-DbtJFAs7.js → AudioPreview-d8-NMxq_.js} +1 -1
- package/dist/assets/{Auth-b-NGU3Lu.js → Auth-CUD5XHGs.js} +1 -1
- package/dist/assets/{Bare-D0G3hFJE.js → Bare-DnWOFNQY.js} +1 -1
- package/dist/assets/{BotPlaceholder-BC8u-j84.js → BotPlaceholder-Cl_V5koZ.js} +1 -1
- package/dist/assets/{BottomFooter-CXPg4oia.js → BottomFooter-BY9m2ruR.js} +1 -1
- package/dist/assets/{BrowseConnectors-DS5nGp3i.js → BrowseConnectors-DAclKO9A.js} +1 -1
- package/dist/assets/{BrowserPairingDialog-NeyovLD-.js → BrowserPairingDialog-D_qGaX9S.js} +1 -1
- package/dist/assets/{Callback-DuZ9zjkR.js → Callback--vWw7wDq.js} +1 -1
- package/dist/assets/{CodeSnippet-Djz4eOTz.js → CodeSnippet-B4XBcVVB.js} +1 -1
- package/dist/assets/{Console-DcLA9Qt3.js → Console-BEN2f_7n.js} +1 -1
- package/dist/assets/{Conversation-O_Xv-6R6.js → Conversation-Bu85cN-Z.js} +1 -1
- package/dist/assets/{Conversation-BQ7kjoFg.js → Conversation-CvvQaGbk.js} +2 -2
- package/dist/assets/{CopyToClipboard-CQT78wob.js → CopyToClipboard-Dc_53C_9.js} +1 -1
- package/dist/assets/{Detail-BqVKPO9C.js → Detail-CP8XjrwP.js} +1 -1
- package/dist/assets/Extra-BzOxBC3f.js +1 -0
- package/dist/assets/{FilePreview-D640d7Cq.js → FilePreview-C0VlAjUT.js} +1 -1
- package/dist/assets/{Hailuo-ClYsc7Vc.js → Hailuo-CBlo8oMQ.js} +1 -1
- package/dist/assets/{History-DeAIxtE9.js → History-C_9oHSvo.js} +1 -1
- package/dist/assets/{ImagePreview-YXx0To-U.js → ImagePreview-QrO7VB3T.js} +1 -1
- package/dist/assets/{ImageWrapper-DH6OlBWC.js → ImageWrapper-D2sKN22b.js} +1 -1
- package/dist/assets/{Index-eY2m4uYt.js → Index--pdY-HXU.js} +1 -1
- package/dist/assets/Index-5JQ5PAph.js +2 -0
- package/dist/assets/{Index-VvE544ki.js → Index-B3zcmDVO.js} +1 -1
- package/dist/assets/{Index-CYJ4Mi3M.js → Index-BHxIkZ-a.js} +1 -1
- package/dist/assets/Index-Bp91Z4Nq.js +1 -0
- package/dist/assets/Index-Bv94reqL.js +1 -0
- package/dist/assets/Index-Bz5IEnOW.js +1 -0
- package/dist/assets/{Index-CjPN5GZr.js → Index-C5Mesekg.js} +1 -1
- package/dist/assets/Index-CCBr-lgF.js +1 -0
- package/dist/assets/{Index-DeE_gyAr.js → Index-CVKxg1nH.js} +1 -1
- package/dist/assets/{Index-GUuys43B.js → Index-ChES2Pak.js} +1 -1
- package/dist/assets/{Index-Cc2vUCVA.js → Index-Chl9pDC8.js} +1 -1
- package/dist/assets/{Index-Cuw-pJ0I.js → Index-Cm_sNblt.js} +1 -1
- package/dist/assets/{Index-BDNNQGYY.js → Index-Cqd_YqFI.js} +1 -1
- package/dist/assets/Index-CvMSByPg.js +1 -0
- package/dist/assets/{Index-B80CvBO0.js → Index-D9b419t3.js} +1 -1
- package/dist/assets/{Index-BHOeQ3H9.js → Index-DKmuO9HJ.js} +2 -2
- package/dist/assets/{Index-Chg7-uHY.js → Index-DTwqo9lt.js} +1 -1
- package/dist/assets/{Index-uBZSGiEh.js → Index-DVQTbl6Q.js} +1 -1
- package/dist/assets/{Index-DqwY22ln.js → Index-DWJoWMqg.js} +2 -2
- package/dist/assets/Index-DXJ-mdMu.js +1 -0
- package/dist/assets/{Index-DjMjXRYa.js → Index-DfFP79Ub.js} +1 -1
- package/dist/assets/{Index-De1b43q9.js → Index-DoKFeY1d.js} +1 -1
- package/dist/assets/Index-DrL4Kua7.js +1 -0
- package/dist/assets/{Index-CnknPEOW2.js → Index-DuKDKmH8.js} +1 -1
- package/dist/assets/Index-Dxg0HWdd.js +1 -0
- package/dist/assets/Index-DyowxMKL.js +1 -0
- package/dist/assets/Index-DzlQ8472.js +1 -0
- package/dist/assets/{Index-DK07tGm1.js → Index-EgwMAM87.js} +1 -1
- package/dist/assets/Index-HdBDAK282.js +1 -0
- package/dist/assets/{Index-7Lx1-FVY.js → Index-IOEjcrMN.js} +2 -2
- package/dist/assets/{Index-Bp-GjqgR.js → Index-TVvykHny.js} +1 -1
- package/dist/assets/Index-UHcGq0ot.css +1 -0
- package/dist/assets/{Index-uAG9GoTD.js → Index-jL6GyAo52.js} +1 -1
- package/dist/assets/Index-pygkRSdJ2.js +1 -0
- package/dist/assets/Index-t7wi6x-C.js +1 -0
- package/dist/assets/{Index-D0f6VCCu.js → Index-xPB2P_un.js} +1 -1
- package/dist/assets/{Invitees-DJE7UMCL.js → Invitees-CqoC6ZzI.js} +1 -1
- package/dist/assets/{List-B8wHqSvA.js → List-BKQsGfFn.js} +1 -1
- package/dist/assets/{List-DlT9iEAG.js → List-CJ0oDC8J.js} +1 -1
- package/dist/assets/{List-MtsKWkKG.js → List-Ca7YduxB.js} +1 -1
- package/dist/assets/{LocalTools-DlPjqmJb.js → LocalTools-Dj5qgU4Q.js} +1 -1
- package/dist/assets/LocalTools-Dk26D2gM.js +5 -0
- package/dist/assets/{Logo-BRsMoZUf.js → Logo-0tn3ckQt.js} +1 -1
- package/dist/assets/{Main-DkcDWNRf.js → Main-DZdJRNsj.js} +1 -1
- package/dist/assets/{Message-TyAQUCUU.js → Message-Dhxbifix.js} +2 -2
- package/dist/assets/{Model-DZqCeCtl.js → Model-BCLqf6xD.js} +1 -1
- package/dist/assets/{Navigator-DJR1Vv92.js → Navigator-D0to3R2l.js} +5 -5
- package/dist/assets/{NotFound-DCPalElg.js → NotFound-C1_UBaSi.js} +1 -1
- package/dist/assets/{PageHeader-DF-zuRdB.js → PageHeader-v-5kKXbh.js} +1 -1
- package/dist/assets/Pay-7EzYllB7.js +1 -0
- package/dist/assets/{Player-BofEgCOB.js → Player-DMEqEzbG.js} +1 -1
- package/dist/assets/{Poivelle-nb8MW5Qx.js → Poivelle-BPMERqNg.js} +1 -1
- package/dist/assets/{RealtimeCall-C9IB8DsU.js → RealtimeCall-YJoGDtET.js} +3 -3
- package/dist/assets/{ReportButton-B6G5OWJ0.js → ReportButton-BCWM_eUv.js} +1 -1
- package/dist/assets/{ReportDialog-C8ssbL5B.js → ReportDialog-C4nnqvVc.js} +1 -1
- package/dist/assets/{ScenarioPaymentMode-DRMdqOm9.js → ScenarioPaymentMode-DUv_xCgb.js} +1 -1
- package/dist/assets/{ScheduledTasks-BjZ3cZyb.js → ScheduledTasks-CGWohgpS.js} +2 -2
- package/dist/assets/{ServicePricingSummary-rLPlqY7R.js → ServicePricingSummary-BnnhtPm5.js} +1 -1
- package/dist/assets/{SharedMarkdown-BmNuEnIj.js → SharedMarkdown-DtzDZm3k.js} +1 -1
- package/dist/assets/{ShowcaseGrid-DOcNBb0W.js → ShowcaseGrid-CFbY09WG.js} +1 -1
- package/dist/assets/{ShowcaseResultTabs-CS9fv2h_.js → ShowcaseResultTabs-DoS1AGxi.js} +1 -1
- package/dist/assets/{SolanaWalletPickerDialog-zxd6nO8P.js → SolanaWalletPickerDialog-SPhdpzG5.js} +1 -1
- package/dist/assets/{Status-Pg6vKJcY.js → Status-D3X4rgdx.js} +1 -1
- package/dist/assets/{Subscribe-C5hDRcCw.js → Subscribe-CRjgaqCu.js} +1 -1
- package/dist/assets/{TabSwitcher-VfoHJIjb.js → TabSwitcher-DCp_o3dC.js} +1 -1
- package/dist/assets/{Tts-BaBl3ymq.js → Tts-BHWJBKlm.js} +1 -1
- package/dist/assets/{VideoPlayer-DuUSbT-p.js → VideoPlayer-Bt19ZgtM.js} +1 -1
- package/dist/assets/{VideoPreview-DiHzfmhx.js → VideoPreview-DbXtGsVJ.js} +1 -1
- package/dist/assets/{VueMarkdown-DX3n2_s6.js → VueMarkdown-xfBKJ0cL.js} +2 -2
- package/dist/assets/WriteSkillDialog-DEZTP_2V.js +1 -0
- package/dist/assets/{airwallexCheckout-DImF7qWM.js → airwallexCheckout-DG7dh0JD.js} +1 -1
- package/dist/assets/arrow-down-CCk6Sb03.js +1 -0
- package/dist/assets/arrow-left-CfzVpd8i.js +1 -0
- package/dist/assets/arrow-right-Dst44w5B.js +1 -0
- package/dist/assets/arrow-up-CvyTr6CH.js +1 -0
- package/dist/assets/{authorizeFlow-iv3I40NA.js → authorizeFlow-DJrWFBbA.js} +1 -1
- package/dist/assets/{avatar-Bk-KlfGF.js → avatar-C0t81PgD.js} +1 -1
- package/dist/assets/{back-navigation-DCnyH9QK.js → back-navigation-DsXpwk5c.js} +1 -1
- package/dist/assets/{basic-DhRe680f.js → basic-BtHDhrf8.js} +1 -1
- package/dist/assets/{book-open-EQsOnwpQ.js → book-open-VVs1gk2C.js} +1 -1
- package/dist/assets/{box-Eq7xsVMG.js → box-Bx0ypDsn.js} +1 -1
- package/dist/assets/{boxes-_p2gozxH.js → boxes-8WJI87Gu.js} +1 -1
- package/dist/assets/{brain-B3HPVkyt.js → brain-DYAdLxct.js} +1 -1
- package/dist/assets/{chart-no-axes-combined-wCOmZXlo.js → chart-no-axes-combined-Cc3WlsU6.js} +1 -1
- package/dist/assets/{chat-DlJM5HiQ.js → chat-Ci-R1f2k.js} +1 -1
- package/dist/assets/check-Bfb3v7Zr.js +1 -0
- package/dist/assets/chevron-down-BqX4KeBM.js +1 -0
- package/dist/assets/chevron-right-1mOXqXoj.js +1 -0
- package/dist/assets/{circle-alert-CudS64vb.js → circle-alert-DF1kIskJ.js} +1 -1
- package/dist/assets/circle-check-C6ll6g09.js +1 -0
- package/dist/assets/{circle-question-mark-CT3dP_S-.js → circle-question-mark-CNP_CdTe.js} +1 -1
- package/dist/assets/{clipboard-list-rh0gR3f-.js → clipboard-list-BhkjCno-.js} +1 -1
- package/dist/assets/clock-B6Xmh354.js +1 -0
- package/dist/assets/code-7YWrTdfy.js +1 -0
- package/dist/assets/codingBridge-CS16iqlt.js +2 -0
- package/dist/assets/{codingBridgeNotify-C68uE2gS.js → codingBridgeNotify-DQXmYQHs.js} +2 -2
- package/dist/assets/{coins-8GLEA8kx.js → coins-CVrCGMHa.js} +1 -1
- package/dist/assets/{collapse-Dwaru9dv.js → collapse-qfbCrPJN.js} +1 -1
- package/dist/assets/{constants-GmVIn7tC.js → constants-CVb0vrXj.js} +1 -1
- package/dist/assets/{copy-BIXUZXhN.js → copy-CP8f_ETR.js} +1 -1
- package/dist/assets/{createTaskActions-Bz2OI0ye.js → createTaskActions-DLJLKN-c.js} +1 -1
- package/dist/assets/{date-picker-qwrQLSa0.js → date-picker-BIwU4ojz.js} +1 -1
- package/dist/assets/{digitalhuman-EWWLamU7.js → digitalhuman-CfG_2-Wv.js} +1 -1
- package/dist/assets/{dollar-sign-3CctSein.js → dollar-sign-CFH1O621.js} +1 -1
- package/dist/assets/{download-0mLTP8WQ.js → download-aKoGQMz4.js} +1 -1
- package/dist/assets/{drawer-APcI0MuL.js → drawer-CF4BsAtW.js} +1 -1
- package/dist/assets/{dropdown-C1V-gXTG.js → dropdown-CLk44aHS.js} +1 -1
- package/dist/assets/{dropdown-BZ5uH0eb.js → dropdown-DzQEZ4Jy.js} +1 -1
- package/dist/assets/{ellipsis-DaK_tv_8.js → ellipsis-AczbhGQu.js} +1 -1
- package/dist/assets/{esm-CwuiP5gS.js → esm-Bq7l9xVL.js} +2 -2
- package/dist/assets/esm-Dc2aYU0J.js +1 -0
- package/dist/assets/{esm-DDwto2T_.js → esm-rGuxajaG.js} +2 -2
- package/dist/assets/{external-link-GS6joyO2.js → external-link-B5spIiHU.js} +1 -1
- package/dist/assets/{eye-BjqPsB38.js → eye-DOsuMFw9.js} +1 -1
- package/dist/assets/{file-DN0Fq1Cv.js → file-D5T6JpWA.js} +1 -1
- package/dist/assets/{file-output-CYRVDW3O.js → file-output-CAMglfrn.js} +1 -1
- package/dist/assets/{file-text-DLwLkvbZ.js → file-text-MxE-jd8A.js} +1 -1
- package/dist/assets/{fish-CuUidYqW.js → fish-mS1PJ3fj.js} +1 -1
- package/dist/assets/{flux-CkT5DOwc.js → flux-FQoAagDW.js} +1 -1
- package/dist/assets/{folder-DGjP5SDg.js → folder-Cbda4XN8.js} +1 -1
- package/dist/assets/gauge-DwHZCDNp.js +1 -0
- package/dist/assets/{generationInput--J_4Niw5.js → generationInput-jeoGp56s.js} +1 -1
- package/dist/assets/{globe-CfmQv6dc.js → globe-DZXgzAlm.js} +1 -1
- package/dist/assets/grokvideo-DISRpIM_.js +1 -0
- package/dist/assets/{luma-BnxSbH2s.js → hailuo-ZSUIO9UD.js} +1 -1
- package/dist/assets/{hash-GTQkcsQj.js → hash-BKpZIJo7.js} +1 -1
- package/dist/assets/{headphones-B8VUrUji.js → headphones--YKlJldO.js} +1 -1
- package/dist/assets/{history-BENBo59s.js → history-BYzfzIXf.js} +1 -1
- package/dist/assets/{house-WEmC14W_.js → house-DbXM7bV4.js} +1 -1
- package/dist/assets/{image-BEbYTJ0m.js → image-Dsh8h-Vr.js} +1 -1
- package/dist/assets/{imageRequests-BaQ60xKB.js → imageRequests-YA3-SUkx.js} +1 -1
- package/dist/assets/index-C643U2rX.js +572 -0
- package/dist/assets/{index.es-BADyL8Or.js → index.es-BS_qwYo-.js} +1 -1
- package/dist/assets/{info-PmX6OJ8X.js → info-CDs2D83H.js} +1 -1
- package/dist/assets/{input-number-CQyq1gfs.js → input-number-YpK_vIUu.js} +1 -1
- package/dist/assets/{kling-CSMDk42y.js → kling-BkuDhdIc.js} +1 -1
- package/dist/assets/{languages-D0-qojfd.js → languages-DFfBKj3V.js} +1 -1
- package/dist/assets/{laptop-CiCND6PE.js → laptop-DapobfQv.js} +1 -1
- package/dist/assets/{lightbulb-rCoLSMOl.js → lightbulb-D_g0yrw8.js} +1 -1
- package/dist/assets/{link-DfdSHXXz.js → link-DTTCfbSO.js} +1 -1
- package/dist/assets/loader-circle-BQqfluno.js +1 -0
- package/dist/assets/{qrart-PjwpBvHh.js → luma-C9imEL86.js} +1 -1
- package/dist/assets/maestro-BBLbhcdk.js +1 -0
- package/dist/assets/maestro-B_gsOOuc.js +1 -0
- package/dist/assets/maestro-BbjtdNWq.js +1 -0
- package/dist/assets/maestro-CI7kJGPZ.js +1 -0
- package/dist/assets/maestro-Cq-lw4mZ.js +1 -0
- package/dist/assets/maestro-CvrCSepF.js +1 -0
- package/dist/assets/maestro-DFNYslYD.js +1 -0
- package/dist/assets/maestro-DIk5m-7L.js +1 -0
- package/dist/assets/maestro-DuZPhVj-.js +1 -0
- package/dist/assets/maestro-Oxjr8OPC.js +1 -0
- package/dist/assets/maestro-VcPlmsOj.js +1 -0
- package/dist/assets/maestro-bsK4BW5L.js +1 -0
- package/dist/assets/maestro-h29lA6bR.js +1 -0
- package/dist/assets/{mail-LZDXgeS8.js → mail-C0_EFTNr.js} +1 -1
- package/dist/assets/{message-circle-VRo45xNQ.js → message-circle-DJ38XN8t.js} +1 -1
- package/dist/assets/{mic-x3pAaagI.js → mic-BYjF4A_x.js} +1 -1
- package/dist/assets/{midjourney-DiDJ_NAX.js → midjourney-DGnkUMtd.js} +1 -1
- package/dist/assets/{minimax-CezIM2Vc.js → minimax-ClPDICZU.js} +1 -1
- package/dist/assets/{mobileLocalExec-Ba06Ginw.js → mobileLocalExec-B_RtWm83.js} +2 -2
- package/dist/assets/{monitor-f-HdAnII.js → monitor-GBsAGWb5.js} +1 -1
- package/dist/assets/{mouse-pointer-2-D28_tEOD.js → mouse-pointer-2--BMykM3C.js} +1 -1
- package/dist/assets/music-2-DsnQPTru.js +1 -0
- package/dist/assets/{nanobanana-C47zn35Q.js → nanobanana-B80mlHG9.js} +1 -1
- package/dist/assets/{omni-BRhJ9p2L.js → omni-B15iT3Sl.js} +1 -1
- package/dist/assets/{openaiimage-DN5cekWI.js → openaiimage-DAuOj_l2.js} +1 -1
- package/dist/assets/{pagination-W-HQ78h5.js → pagination-BGnYVZvp.js} +1 -1
- package/dist/assets/{pagination-RVZs5Fps.js → pagination-BsPBo2WI.js} +1 -1
- package/dist/assets/{pagination-CkelWLyU.js → pagination-DqPdKWtk.js} +1 -1
- package/dist/assets/{palette-Bnao4N1E.js → palette-CSWZ3lMh.js} +1 -1
- package/dist/assets/{paperclip-BIrljPlV.js → paperclip-Ed5mDPx6.js} +1 -1
- package/dist/assets/{pause-B1oVLxPW.js → pause-BClTBQOr.js} +1 -1
- package/dist/assets/{pencil-tfoCLZ10.js → pencil-hdf5uaAO.js} +1 -1
- package/dist/assets/{pika-oMB8We5G.js → pika-Cx5cYUmj.js} +1 -1
- package/dist/assets/{pixverse-CrjkStpM.js → pixverse-WYyCcVn-.js} +1 -1
- package/dist/assets/play-BZy52WBc.js +1 -0
- package/dist/assets/{plug-CneJpKAI.js → plug-BrR77_0k.js} +1 -1
- package/dist/assets/plus-Cv4THF6Q.js +1 -0
- package/dist/assets/{poivelle-aDT78zU0.js → poivelle-B-fGy-mp.js} +1 -1
- package/dist/assets/{popover-CdWXDZ4Y.js → popover-DnGAvUIE.js} +1 -1
- package/dist/assets/{producer-Cmo7xf9M.js → producer-DKQI0Cq6.js} +1 -1
- package/dist/assets/{veo-BooE6Coe.js → qrart-BypAVHHT.js} +1 -1
- package/dist/assets/{qwenimage-DiCadgpU.js → qwenimage-Z73dnVux.js} +1 -1
- package/dist/assets/{realtime-cKmm03Gk.js → realtime-i4smTIH8.js} +1 -1
- package/dist/assets/{refresh-cw-Bx7-OW-L.js → refresh-cw-Dnm3KhKi.js} +1 -1
- package/dist/assets/rotate-ccw-CKzZLPvG.js +1 -0
- package/dist/assets/rotate-cw-CEoa6Gbp.js +1 -0
- package/dist/assets/{row-DNp_zRGz.js → row-BTg1B7Rq.js} +1 -1
- package/dist/assets/{scheduledTasks-DfyCRMUo.js → scheduledTasks-BKFHEZEq.js} +1 -1
- package/dist/assets/{scroll-text-BznQ-upq.js → scroll-text-11dAwBrb.js} +1 -1
- package/dist/assets/search-BWxJsKnb.js +1 -0
- package/dist/assets/{seedance-B5iHVffg.js → seedance-C7VjAFhT.js} +1 -1
- package/dist/assets/{seedream-BUCCanJU.js → seedream-BNeM6wGx.js} +1 -1
- package/dist/assets/{select-GALwUZll.js → select-Dxkn5fnG.js} +1 -1
- package/dist/assets/{serp-ByhpOEFk.js → serp-CxGGkmaS.js} +1 -1
- package/dist/assets/{shield-zOrEMlZR.js → shield-DgibaIqT.js} +1 -1
- package/dist/assets/{showcase-ClAsok_u.js → showcase-C7ITFcZN.js} +1 -1
- package/dist/assets/{showcaseRecreateMixin-Dhdr3T0y.js → showcaseRecreateMixin-BvSTHecE.js} +1 -1
- package/dist/assets/{shuffle-Bsn1YQVr.js → shuffle-BylmN-er.js} +1 -1
- package/dist/assets/{siteHome-DOZxDTUA.js → siteHome-Cryc_q93.js} +1 -1
- package/dist/assets/{slider-C8pY6U4o.js → slider-DyGvOBhi.js} +1 -1
- package/dist/assets/{solana-wallets-Cib8AJ2S.js → solana-wallets--z2A3Apa.js} +2 -2
- package/dist/assets/{sora-8X-omnaE.js → sora-D29KqrzE.js} +1 -1
- package/dist/assets/{sparkles-C1bLa319.js → sparkles-x66jEqTw.js} +1 -1
- package/dist/assets/square-84JHxm2_.js +1 -0
- package/dist/assets/{suno-DoUkooAP.js → suno-BtOeCZcQ.js} +1 -1
- package/dist/assets/{switch-4nC3Yz4b.js → switch-FNAnbKSR.js} +1 -1
- package/dist/assets/{table-CHg1iLS7.js → table-DcbbzgnI.js} +1 -1
- package/dist/assets/{tabs-8Um-YKWZ.js → tabs-0J-7r8zS.js} +1 -1
- package/dist/assets/{tag-ILhm5hh0.js → tag-DmliP9Ok.js} +1 -1
- package/dist/assets/{taskPolling-DfRWd0Q5.js → taskPolling-Bi1lm4L2.js} +1 -1
- package/dist/assets/terminal-fLAKhYLu.js +1 -0
- package/dist/assets/{time-picker-DqmuplAb.js → time-picker-DXRHL55A.js} +1 -1
- package/dist/assets/{tooltip-4w7ghPQM.js → tooltip-CsVgfK1f.js} +1 -1
- package/dist/assets/{trash-2-BkEkcSHv.js → trash-2-rtHpr3JN.js} +1 -1
- package/dist/assets/{triangle-alert-DBmpuUlm.js → triangle-alert-D_wd4w3Z.js} +1 -1
- package/dist/assets/{upload-Sju4DbiY.js → upload-ChEGBjQd.js} +1 -1
- package/dist/assets/{upload-DidTvyIg.js → upload-DoPPJ2yy.js} +1 -1
- package/dist/assets/user-bjnB3b4c.js +1 -0
- package/dist/assets/{hailuo-DaQVZPNi.js → veo-BueyYArF.js} +1 -1
- package/dist/assets/{video-DwVV0C_d.js → video-C2QohmLe.js} +1 -1
- package/dist/assets/{volume-2-CpkYjlNM.js → volume-2-BoZZadxh.js} +1 -1
- package/dist/assets/{vuex.esm-bundler-BV9tXD4i.js → vuex.esm-bundler-uM-kqbAF.js} +1 -1
- package/dist/assets/{wallet-CSEdeUVb.js → wallet-BtENm1mj.js} +1 -1
- package/dist/assets/{wan-NceqaOX8.js → wan-BxExpn0G.js} +1 -1
- package/dist/assets/{wand-sparkles-CwgjO5Gl.js → wand-sparkles-CReI7Ekg.js} +1 -1
- package/dist/assets/{web-ChTQtMOV.js → web-B_mNetg-.js} +1 -1
- package/dist/assets/{web-DR1td9xt.js → web-CwqQtLOY.js} +1 -1
- package/dist/assets/{web-CtwYyIHk.js → web-DHf2pHB5.js} +1 -1
- package/dist/assets/{web-DYYogIAJ.js → web-DSR3VOq9.js} +1 -1
- package/dist/assets/{web-Be7eYSTS.js → web-I_RIjvbu.js} +1 -1
- package/dist/assets/{webextrator-DcBVygf6.js → webextrator-eme27gPN.js} +1 -1
- package/dist/assets/{zap-5TJ16_7J.js → zap-BVQJGqe4.js} +1 -1
- package/dist/index.html +3 -3
- package/package.json +1 -1
- package/dist/assets/Extra-RTJPBXX1.js +0 -1
- package/dist/assets/Index-3enMEt0q.js +0 -1
- package/dist/assets/Index-4M6goWY5.js +0 -1
- package/dist/assets/Index-B0S_YnIQ.js +0 -1
- package/dist/assets/Index-B2mD07Ei.js +0 -1
- package/dist/assets/Index-BRky2LVx.js +0 -1
- package/dist/assets/Index-BjS0ggii.js +0 -2
- package/dist/assets/Index-Bm_JpxRb.css +0 -1
- package/dist/assets/Index-CyKGM7MD.js +0 -1
- package/dist/assets/Index-DTFPAlsp.js +0 -1
- package/dist/assets/Index-Dx52UhVA.js +0 -1
- package/dist/assets/Index-Mw1xrmbA.js +0 -1
- package/dist/assets/Index-NwESkz1G.js +0 -1
- package/dist/assets/Index-eXdcllSH.js +0 -1
- package/dist/assets/Index-jZMrIwYv.js +0 -1
- package/dist/assets/Index-uemFTdfN.js +0 -1
- package/dist/assets/LocalTools-C5elVqih.js +0 -5
- package/dist/assets/Pay-5sKP-5mn.js +0 -1
- package/dist/assets/WriteSkillDialog-B4lxIDJK.js +0 -1
- package/dist/assets/arrow-down-B7gY3qc0.js +0 -1
- package/dist/assets/arrow-left-D9PzI6lU.js +0 -1
- package/dist/assets/arrow-right-BZVVykF9.js +0 -1
- package/dist/assets/arrow-up-vjX6ESSZ.js +0 -1
- package/dist/assets/check-DEuTU4c8.js +0 -1
- package/dist/assets/chevron-down-CCvMOkAm.js +0 -1
- package/dist/assets/chevron-right-CMN7EUPl.js +0 -1
- package/dist/assets/circle-check-BzGCItgQ.js +0 -1
- package/dist/assets/clock-BooSG6zB.js +0 -1
- package/dist/assets/code-DyNs0diY.js +0 -1
- package/dist/assets/codingBridge-D5m47vOt.js +0 -2
- package/dist/assets/esm-Czt26omG.js +0 -1
- package/dist/assets/gauge-DRD3bzzD.js +0 -1
- package/dist/assets/grokvideo-jylBR3ej.js +0 -1
- package/dist/assets/index-Dr2ooWnm.js +0 -572
- package/dist/assets/loader-circle-DlDNc4da.js +0 -1
- package/dist/assets/maestro-BZjKR3qb.js +0 -1
- package/dist/assets/maestro-BseWpiuj.js +0 -1
- package/dist/assets/maestro-C1SfpTGL.js +0 -1
- package/dist/assets/maestro-C3qz5VUl.js +0 -1
- package/dist/assets/maestro-CA9H8dEG.js +0 -1
- package/dist/assets/maestro-CEEx8qvF.js +0 -1
- package/dist/assets/maestro-CZsW3Nlk.js +0 -1
- package/dist/assets/maestro-ChDcMauc.js +0 -1
- package/dist/assets/maestro-CsqrFYgi.js +0 -1
- package/dist/assets/maestro-DM9tDnMK.js +0 -1
- package/dist/assets/maestro-DdTH473R.js +0 -1
- package/dist/assets/maestro-ZR8sSyLR.js +0 -1
- package/dist/assets/maestro-lQnNR9WV.js +0 -1
- package/dist/assets/maestroLanguages-BCseVxSx.js +0 -1
- package/dist/assets/music-2-DimqlZ0P.js +0 -1
- package/dist/assets/play-CKD5ICgk.js +0 -1
- package/dist/assets/plus-B_fnUe1I.js +0 -1
- package/dist/assets/rotate-ccw-DxSDeWPl.js +0 -1
- package/dist/assets/rotate-cw-ZIUqlSwU.js +0 -1
- package/dist/assets/search-CgyxhhlQ.js +0 -1
- package/dist/assets/square-CT3nJzJZ.js +0 -1
- package/dist/assets/terminal-B0UFZK-h.js +0 -1
- package/dist/assets/user-D8eTVZ1t.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,qt as m,rt as h,tt as g,x as _,z as v}from"./vendor-chart-Dw-P17PN.js";import{t as y}from"./upload-Sju4DbiY.js";import{t as b}from"./tooltip-4w7ghPQM.js";import{t as x}from"./alert-BprQRUmf.js";import{_ as S,v as C}from"./vuex.esm-bundler-BV9tXD4i.js";import{t as w}from"./drawer-APcI0MuL.js";import{t as T}from"./box-Eq7xsVMG.js";import{t as E}from"./clock-BooSG6zB.js";import{t as D}from"./hash-GTQkcsQj.js";import{t as O}from"./info-PmX6OJ8X.js";import{a as k,i as A,n as j,o as M,r as ee,t as N}from"./pagination-W-HQ78h5.js";import{t as te}from"./trash-2-BkEkcSHv.js";import{t as ne}from"./triangle-alert-DBmpuUlm.js";import{t as P}from"./upload-DidTvyIg.js";import{t as F}from"./wand-sparkles-CwgjO5Gl.js";import{Mt as I,Nt as L,Ot as R,Pt as re,jt as ie,kt as ae}from"./constants-GmVIn7tC.js";import{D as z,Gn as B,Mi as V,Na as H,Pi as U,Qa as W,T as G,Tn as K,Wn as q,at as J,ct as Y,it as oe,lt as se,nt as ce,oi as le,ot as X,qi as ue,ri as de,rt as fe,st as pe,ta as me,tt as he,za as Z}from"./index-Dr2ooWnm.js";import{t as ge}from"./CopyToClipboard-CQT78wob.js";import{t as _e}from"./ReportButton-B6G5OWJ0.js";import{t as ve}from"./FilePreview-D640d7Cq.js";import{t as Q}from"./ImagePreview-YXx0To-U.js";import{n as ye}from"./taskDrawerMixin-DyAUhFEq.js";import{t as be}from"./ServicePricingSummary-rLPlqY7R.js";import{t as xe}from"./VideoPlayer-DuUSbT-p.js";import{t as Se}from"./ScenarioPaymentMode-DRMdqOm9.js";import{t as Ce}from"./ApiCodeButton-DSt2Pz0O.js";import{t as we}from"./BotPlaceholder-BC8u-j84.js";import{t as Te}from"./taskPollingMixin-CcLxtz8z.js";var Ee=v({name:`LayoutOmni`,components:{MagicIcon:F,ElDrawer:w,ElButton:W},mixins:[ye]}),De={class:`main flex flex-row flex-1`},Oe={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)]`},ke={class:`result h-full p-4 flex-1 flex flex-col min-w-0 overflow-x-hidden bg-[var(--app-content-bg)]`};function Ae(t,n,r,i,o,c){let f=l(`magic-icon`),m=l(`el-button`),h=l(`el-drawer`);return g(),s(`div`,De,[e(`div`,Oe,[d(t.$slots,`config`,{},void 0,!0)]),e(`div`,ke,[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 je=z(Ee,[[`render`,Ae],[`__scopeId`,`data-v-847afabf`]]),Me=v({name:`OmniPromptInput`,components:{PromptTextarea:A},computed:{prompt:{get(){return this.$store.state.omni?.config?.prompt},set(e){this.$store.commit(`omni/setConfig`,{...this.$store.state.omni?.config,prompt:e})}}},mounted(){this.prompt||=``}});function Ne(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(`omni.name.prompt`),info:e.$t(`omni.description.prompt`),placeholder:e.$t(`omni.placeholder.prompt`),"min-rows":5},null,8,[`modelValue`,`title`,`info`,`placeholder`])}var Pe=z(Me,[[`render`,Ne]]),Fe=v({name:`OmniResolutionSelector`,components:{InfoIcon:k},data(){return{options:[{value:re,label:`720p`},{value:L,label:`1080p`}]}},computed:{value:{get(){return this.$store.state.omni?.config?.resolution},set(e){this.$store.commit(`omni/setConfig`,{...this.$store.state.omni?.config,resolution:e})}}},mounted(){this.value||=ae}}),Ie={class:`resolution`},Le={class:`header`},Re={class:`title font-bold`},ze={class:`items`},Be=[`onClick`];function Ve(t,r,o,u,d,f){let p=l(`info-icon`);return g(),s(`div`,Ie,[e(`div`,Le,[e(`h2`,Re,i(t.$t(`omni.name.resolution`)),1),a(p,{content:t.$t(`omni.description.resolution`),class:`info`},null,8,[`content`])]),e(`div`,ze,[(g(!0),s(c,null,h(t.options,e=>(g(),s(`div`,{key:e.value,class:n([`item`,{active:t.value===e.value}]),onClick:n=>t.value=e.value},i(e.label),11,Be))),128))])])}var He=z(Fe,[[`render`,Ve],[`__scopeId`,`data-v-1f9abe29`]]),Ue=v({name:`OmniRatioSelector`,components:{InfoIcon:k},computed:{options(){return[{value:ie,label:`16:9`,w:32,h:18},{value:I,label:`9:16`,w:18,h:32}]},value:{get(){return this.$store.state.omni?.config?.aspect_ratio},set(e){this.$store.commit(`omni/setConfig`,{...this.$store.state.omni?.config,aspect_ratio:e})}}},mounted(){this.value||=R}}),We={class:`ratio`},Ge={class:`header`},Ke={class:`title font-bold`},qe={class:`items`},Je=[`onClick`],Ye={class:`preview`},Xe={class:`name`};function Ze(t,r,o,u,d,f){let p=l(`info-icon`);return g(),s(`div`,We,[e(`div`,Ge,[e(`h2`,Ke,i(t.$t(`omni.name.ratio`)),1),a(p,{content:t.$t(`omni.description.ratio`),class:`info`},null,8,[`content`])]),e(`div`,qe,[(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`,Ye,[e(`div`,{class:`rect`,style:m({width:r.w+`px`,height:r.h+`px`})},null,4)]),e(`div`,Xe,i(r.label),1)],10,Je))),128))])])}var Qe=z(Ue,[[`render`,Ze],[`__scopeId`,`data-v-1c0c1511`]]),$e=4,et=v({name:`OmniReferenceImagesInput`,components:{ElUpload:y,ElButton:W,InfoIcon:k,ImagePreview:Q,UploadIcon:P},mixins:[se,Y,X,he],data(){return{fileList:[],uploadUrl:H()+`/api/v1/files/`,limit:$e,suppressWatch:!1}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},urls(){return this.fileList.map(e=>e?.response?.file_url).filter(e=>!!e)||[]},value(){return this.$store.state.omni?.config?.image_urls}},watch:{value:{immediate:!0,handler(e){if(this.suppressWatch)return;if(!e||e.length===0){let e=(this.fileList||[]).filter(e=>!e?.response?.file_url);this.fileList=e.length?e:[];return}let t=[];e.forEach(e=>{let n=this.fileList.find(t=>t?.response?.file_url===e||t?.url===e);n?t.push(n):t.push({name:e.split(`/`).pop()||e,url:e,status:`success`,percentage:100,response:{file_url:e}})}),(this.fileList||[]).filter(e=>!e?.response?.file_url).forEach(e=>{t.some(t=>t===e||t?.url===e?.url||t?.response?.file_url===e?.response?.file_url)||t.push(e)}),this.fileList=t}}},methods:{onChange(e){if(!e?.url&&e?.raw)try{e.url=URL.createObjectURL(e.raw)}catch{}},onRemove(e){if(e?.url&&typeof e.url==`string`&&e.url.startsWith(`blob:`))try{URL.revokeObjectURL(e.url)}catch{}this.onSetReferenceImages()},onExceed(){C.warning(this.$t(`omni.message.uploadReferenceExceed`))},onError(){C.error(this.$t(`omni.message.uploadError`))},onSetReferenceImages(){let e=this.urls;this.suppressWatch=!0,this.$store.commit(`omni/setConfig`,{...this.$store.state.omni?.config,image_urls:e.length?e:void 0}),this.$nextTick(()=>{this.suppressWatch=!1})},async onSuccess(e,t){e?.file_url&&(t.url=e.file_url,t.response=e),this.onSetReferenceImages()},onRemovePreview(e,t){if(this.fileList.splice(e,1),t?.url&&typeof t.url==`string`&&t.url.startsWith(`blob:`))try{URL.revokeObjectURL(t.url)}catch{}this.onSetReferenceImages()}}}),tt={class:`field mb-[10px] flex min-h-8 w-full items-center justify-between gap-3`},nt={class:`flex min-w-0 items-center`},rt={class:`title m-0 text-[14px] font-bold`},it={class:`file-list flex flex-wrap gap-[10px]`};function at(t,n,o,u,d,m){let _=l(`info-icon`),v=l(`upload-icon`),y=l(`el-button`),b=l(`el-upload`),x=l(`image-preview`);return g(),s(`div`,null,[e(`div`,tt,[e(`div`,nt,[e(`h2`,rt,i(t.$t(`omni.name.referenceImages`)),1),a(_,{content:t.$t(`omni.description.referenceImages`)},null,8,[`content`])]),a(b,{ref:`uploader`,"file-list":t.fileList,"onUpdate:fileList":n[0]||=e=>t.fileList=e,accept:`.png,.jpg,.jpeg,.gif,.bmp,.webp`,name:`file`,class:`value shrink-0`,limit:t.limit,multiple:!0,"show-file-list":!1,"before-upload":t.beforeUploadSizeGuard,action:t.uploadUrl,"on-exceed":t.onExceed,"on-error":t.onError,"on-success":t.onSuccess,"on-change":t.onChange,"on-remove":t.onRemove,headers:t.headers},{default:p(()=>[a(y,{size:`small`,type:`primary`,round:``},{default:p(()=>[a(v,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`omni.button.upload`)),1)]),_:1})]),_:1},8,[`file-list`,`limit`,`before-upload`,`action`,`on-exceed`,`on-error`,`on-success`,`on-change`,`on-remove`,`headers`])]),e(`div`,it,[(g(!0),s(c,null,h(t.fileList,(e,n)=>(g(),f(x,{key:e.uid||e?.response?.file_url||e.url||n,url:e.url||e?.response?.file_url,name:e.name,percentage:e.percentage,onRemove:r=>t.onRemovePreview(n,e)},null,8,[`url`,`name`,`percentage`,`onRemove`]))),128))])])}var ot=z(et,[[`render`,at]]),st=v({name:`OmniVideoInput`,components:{ElUpload:y,ElButton:W,InfoIcon:k,FilePreview:ve,UploadIcon:P},mixins:[Y,X],data(){return{fileList:[],uploadUrl:H()+`/api/v1/files/`}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},videoUrl(){return this.$store.state.omni?.config?.video_urls?.[0]},videoName(){let e=this.videoUrl||``;return e.split(`/`).pop()||e}},methods:{onExceed(){C.warning(this.$t(`omni.message.uploadVideoExceed`))},onError(){C.error(this.$t(`omni.message.uploadVideoError`))},beforeUpload(e){let t=e.type===`video/mp4`||e.type===`video/quicktime`,n=oe(e.size);return t?n?!0:(C.error(this.$t(`omni.message.uploadVideoSizeExceed`,{max:fe(ce)})),!1):(C.error(this.$t(`omni.message.uploadVideoTypeFailed`)),!1)},setVideoUrls(e){this.$store.commit(`omni/setConfig`,{...this.$store.state.omni?.config,video_urls:e?[e]:void 0})},onRemove(){this.fileList=[],this.setVideoUrls(void 0)},async onSuccess(e,t){let n=e?.file_url||t?.response?.file_url;this.setVideoUrls(n||void 0)}}}),ct={class:`field flex min-h-8 w-full items-center justify-between gap-3`},lt={class:`flex min-w-0 items-center`},ut={class:`title m-0 text-[14px] font-bold`},dt={key:0,class:`file-list flex flex-wrap gap-[10px]`};function ft(t,n,c,u,d,f){let m=l(`info-icon`),h=l(`upload-icon`),_=l(`el-button`),v=l(`el-upload`),y=l(`file-preview`);return g(),s(`div`,null,[e(`div`,ct,[e(`div`,lt,[e(`h2`,ut,i(t.$t(`omni.name.referenceVideo`)),1),a(m,{content:t.$t(`omni.description.referenceVideo`)},null,8,[`content`])]),a(v,{ref:`uploader`,"file-list":t.fileList,"onUpdate:fileList":n[0]||=e=>t.fileList=e,accept:`.mp4,.mov`,name:`file`,class:`value shrink-0`,"show-file-list":!1,limit:1,multiple:!1,action:t.uploadUrl,"before-upload":t.beforeUpload,"on-exceed":t.onExceed,"on-error":t.onError,"on-success":t.onSuccess,headers:t.headers},{default:p(()=>[a(_,{size:`small`,type:`primary`,round:``},{default:p(()=>[a(h,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`omni.button.uploadVideo`)),1)]),_:1})]),_:1},8,[`file-list`,`action`,`before-upload`,`on-exceed`,`on-error`,`on-success`,`headers`])]),t.videoUrl?(g(),s(`div`,dt,[a(y,{url:t.videoUrl,name:t.videoName,percentage:100,onRemove:t.onRemove},null,8,[`url`,`name`,`onRemove`])])):o(``,!0)])}var pt=v({name:`OmniConfigPanel`,components:{ElButton:W,MagicIcon:F,PromptInput:Pe,ResolutionSelector:He,RatioSelector:Qe,ReferenceImagesInput:ot,VideoInput:z(st,[[`render`,ft],[`__scopeId`,`data-v-b87d1e4e`]]),ServicePricingSummary:be,ScenarioPaymentMode:Se},emits:[`generate`],data(){return{quoteTimer:0,quoteRunId:0}},computed:{config(){return this.$store.state.omni?.config},consumption(){return K(this.config,this.service?.cost)},service(){return this.$store.state.omni?.service},walletMode(){return V()&&U(`omni`).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=U(`omni`),t=++this.quoteRunId;e.quoteLoading=!0,e.quoteUsdc=void 0;try{let n=await B.quote(q(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(`prompt-input`),_=l(`ratio-selector`),v=l(`resolution-selector`),y=l(`reference-images-input`),b=l(`video-input`),x=l(`scenario-payment-mode`),S=l(`service-pricing-summary`),C=l(`magic-icon`),w=l(`el-button`);return g(),s(`div`,mt,[e(`div`,ht,[a(h,{class:`mb-4`}),a(_,{class:`mb-4`}),a(v,{class:`mb-4`}),a(y,{class:`mb-4`}),a(b,{class:`mb-4`})]),e(`div`,gt,[a(x,{scenario:`omni`}),t.walletMode?o(``,!0):(g(),f(S,{key:0,value:t.consumption,service:t.service},null,8,[`value`,`service`])),a(w,{type:`primary`,class:`btn w-full`,round:``,onClick:t.onGenerate},{default:p(()=>[a(C,{class:`mr-2`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`omni.button.generate`)),1)]),_:1},8,[`onClick`])])])}var vt=z(pt,[[`render`,_t]]),yt=v({name:`OmniTaskPreview`,components:{DeleteIcon:te,ApplicationIcon:T,ChannelIcon:D,CopyToClipboard:ge,ExpandIcon:M,InfoIcon:O,MagicIcon:F,TimeIcon:E,WarningIcon:ne,ElAlert:x,VideoPlayer:xe,ElTooltip:b,ElButton:W,ImagePreview:Q,ApiCodeButton:Ce,ReportButton:_e},props:{modelValue:{type:Object,required:!0}},data(){return{nowTs:Date.now(),timer:0}},computed:{video(){return this.modelValue?.response?.data?.[0]},inputImage(){return this.modelValue?.request?.image_urls?.[0]},pendingElapsed(){let e=parseFloat((this.modelValue?.created_at||``).toString());if(e)return Math.max(0,Math.floor(this.nowTs/1e3-e))}},watch:{"modelValue.response":{handler(e){e&&this.stopTimer()}}},mounted(){this.modelValue?.response||(this.timer=window.setInterval(()=>{this.nowTs=Date.now()},1e3))},beforeUnmount(){this.stopTimer()},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(`omni/deleteTask`,{id:e}),C.success(this.$t(`common.message.deleteTaskSuccess`))}catch{C.error(this.$t(`common.message.deleteTaskFailed`))}}},stopTimer(){this.timer&&=(window.clearInterval(this.timer),0)},onDownload(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})},Mt={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Nt={key:0,class:`text-[var(--el-text-color-regular)] text-xs mb-0`},Pt={key:1,class:n({content:!0})},Ft={key:0,class:`mb-4`},It={key:1,class:n({operations:!0,"mt-2":!0,"mb-2":!0})},Lt={key:0,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:0},Bt={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},$={key:2,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Vt={key:3,class:`text-[var(--el-text-color-regular)] text-xs mb-0`},Ht={key:2,class:n({content:!0})},Ut={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Wt={key:0,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Gt={key:1,class:`text-[var(--el-text-color-regular)] text-xs mb-0`},Kt={key:3,class:n({content:!0})},qt={class:`text-[var(--el-text-color-regular)] text-xs mb-0`};function Jt(n,c,u,d,f,m){let h=l(`capability-presentation`),_=l(`delete-icon`),v=l(`el-tooltip`),y=l(`image-preview`),b=l(`time-icon`),x=l(`magic-icon`),S=l(`copy-to-clipboard`),C=l(`el-alert`),w=l(`video-player`),T=l(`el-button`),E=l(`api-code-button`),D=l(`report-button`),O=l(`application-icon`),k=l(`expand-icon`),A=l(`channel-icon`),j=l(`warning-icon`),M=l(`info-icon`);return g(),s(`div`,bt,[e(`div`,xt,[a(h,{capability:`omni`,part:`avatar`,class:`avatar`})]),e(`div`,St,[e(`div`,Ct,[a(h,{capability:`omni`,part:`name`}),e(`span`,wt,i(n.$dayjs.format(``+new Date(parseFloat((n.modelValue?.created_at||``).toString())*1e3))),1),a(v,{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:c[0]||=t((...e)=>n.onDelete&&n.onDelete(...e),[`stop`])},[a(_,{size:`1em`,"aria-hidden":`true`,focusable:`false`})],8,Tt)):o(``,!0)]),_:1},8,[`content`])]),e(`div`,Et,[n.inputImage?(g(),s(`div`,Dt,[a(y,{url:n.inputImage,name:`image`,closable:!1},null,8,[`url`])])):o(``,!0),n.modelValue?.request?.prompt?(g(),s(`p`,Ot,[r(i(n.modelValue?.request?.prompt)+` `,1),n.modelValue?.response?n.video?.state===`processing`||n.video?.state===`pending`?(g(),s(`span`,At,` - (`+i(n.$t(`omni.status.processing`))+`) `,1)):o(``,!0):(g(),s(`span`,kt,` - (`+i(n.$t(`omni.status.pending`))+`) `,1))])):o(``,!0)]),n.modelValue?.response?n.modelValue?.response?.success===!0?(g(),s(`div`,Pt,[n.video?.video_url?(g(),s(`div`,Ft,[a(w,{src:n.video?.video_url},null,8,[`src`])])):o(``,!0),n.video?.video_url?(g(),s(`div`,It,[a(v,{class:`box-item`,effect:`dark`,content:n.$t(`omni.message.downloadVideo`),placement:`top-start`},{default:p(()=>[a(T,{type:`info`,size:`small`,class:`btn-action`,onClick:c[1]||=t(e=>n.onDownload(n.video?.video_url),[`stop`])},{default:p(()=>[r(i(n.$t(`common.button.download`)),1)]),_:1})]),_:1},8,[`content`]),a(E,{path:`/gemini/videos`,body:n.modelValue?.request},null,8,[`body`]),a(D,{service:`omni`,"target-id":n.modelValue?.id,snapshot:{prompt:n.modelValue?.request?.prompt}},null,8,[`target-id`,`snapshot`])])):o(``,!0),a(C,{closable:!1,class:`mt-2 success`},{default:p(()=>[n.modelValue?.request?.model?(g(),s(`p`,Lt,[a(O,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`omni.name.model`))+`: `+i(n.modelValue?.request?.model),1)])):o(``,!0),n.modelValue?.request?.resolution?(g(),s(`p`,Rt,[a(k,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`omni.name.resolution`))+`: `+i(n.modelValue?.request?.resolution)+` `,1),n.modelValue?.request?.aspect_ratio?(g(),s(`span`,zt,` · `+i(n.modelValue?.request?.aspect_ratio),1)):o(``,!0)])):o(``,!0),e(`p`,Bt,[a(x,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`omni.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(S,{content:n.modelValue?.id,class:`btn-copy inline-block`},null,8,[`content`])]),n.modelValue?.elapsed?(g(),s(`p`,$,[a(b,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`omni.name.elapsed`))+`: `+i(n.modelValue?.elapsed?.toFixed(2))+`s `,1)])):o(``,!0),n.modelValue?.response?.trace_id?(g(),s(`p`,Vt,[a(A,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`omni.name.traceId`))+`: `+i(n.modelValue?.response?.trace_id)+` `,1),a(S,{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`,Ht,[a(C,{closable:!1,class:`failure`},{template:p(()=>[a(j,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`omni.name.failure`)),1)]),default:p(()=>[e(`p`,Ut,[a(x,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`omni.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(S,{content:n.modelValue?.id,class:`btn-copy inline-block`},null,8,[`content`])]),n.modelValue?.response?.error?.message?(g(),s(`p`,Wt,[a(M,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`omni.name.failureReason`))+`: `+i(n.modelValue?.response?.error?.message)+` `,1),a(S,{content:n.modelValue?.response?.error?.message,class:`btn-copy inline-block`},null,8,[`content`])])):o(``,!0),n.modelValue?.response?.trace_id?(g(),s(`p`,Gt,[a(A,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`omni.name.traceId`))+`: `+i(n.modelValue?.response?.trace_id)+` `,1),a(S,{content:n.modelValue?.response?.trace_id,class:`btn-copy inline-block`},null,8,[`content`])])):o(``,!0)]),_:1})])):(g(),s(`div`,Kt,[a(C,{closable:!1,class:`info`},{template:p(()=>[a(M,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`omni.name.status`)),1)]),default:p(()=>[e(`p`,qt,[a(x,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`omni.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(S,{content:n.modelValue?.id,class:`btn-copy inline-block`},null,8,[`content`])])]),_:1})])):(g(),s(`div`,jt,[a(C,{closable:!1,class:`info`},{template:p(()=>[a(b,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`omni.status.pending`)),1)]),default:p(()=>[e(`p`,Mt,[a(x,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`omni.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(S,{content:n.modelValue?.id,class:`btn-copy inline-block`},null,8,[`content`])]),n.pendingElapsed===void 0?o(``,!0):(g(),s(`p`,Nt,[a(b,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`omni.name.elapsed`))+`: `+i(n.pendingElapsed)+`s `,1)]))]),_:1})]))])])}var Yt=v({name:`OmniRecentPanel`,components:{TaskPreview:z(yt,[[`render`,Jt],[`__scopeId`,`data-v-83851ad5`]]),BotPlaceholder:we,NoTasks:ee,ScrollList:j},props:{loading:{type:Boolean,default:!1}},emits:[`reach-top`],computed:{tasks(){return{...this.$store.state.omni?.tasks,items:this.$store.state.omni?.tasks?.items?.slice()}}},methods:{getScrollElement(){return this.$refs.scrollList?.getScrollElement?.()}}}),Xt={key:0},Zt={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`,Xt,[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`,Zt,[a(v)])):o(``,!0)],64)}var $t=v({name:`OmniIndex`,components:{ConfigPanel:vt,Layout:je,RecentPanel:z(Yt,[[`render`,Qt]])},mixins:[pe,Te(`omni`)],inject:[`initialized`],data(){return{task:void 0,job:0,loadingMore:!1,fetchingTasks:!1,walletTaskIds:[]}},computed:{applicationsLoading(){return this.$store.state.omni?.status?.getApplications===S.Request},tasksLoading(){return this.$store.state.omni?.status?.getTasks===S.Request||this.fetchingTasks},credential(){return this.$store.state.omni?.credential},config(){return this.$store.state.omni?.config},tasks(){return this.$store.state.omni?.tasks},walletMode(){return V()&&U(`omni`).mode===`wallet`}},watch:{walletMode:{async handler(e,t){if(!(t===void 0||e===t)){if(this.$store.commit(`omni/setTasks`,void 0),e&&!this.job&&(this.job=window.setInterval(this.onPollTasks,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.onPollTasks,5e3))},immediate:!0}},async mounted(){await this.onGetService()},async unmounted(){window.clearInterval(this.job)},methods:{async onReachTop(){await N({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(`omni/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(`omni/getTasks`,{limit:t,createdAtMin:n,createdAtMax:r,...this.walletMode&&!this.credential?.token?{mode:`x402`,ids:this.walletTaskIds}:{}})}finally{this.fetchingTasks=!1}},async onGenerate(){if(!J(this.uploadTracker,e=>this.$t(e),e=>C.warning(e)))return;let e=q(this.config);if(!e.prompt){C.warning(this.$t(`omni.message.promptRequired`));return}if(e.video_urls&&!e.image_urls){C.warning(this.$t(`omni.message.videoRequiresImage`));return}let t;if(this.walletMode){let n=this.getWalletContext();if(!n){C.warning(this.$t(`common.x402Scenario.connectWalletFirst`));return}t=B.generate(e,{mode:`x402`,x402:{wallet:n,confirm:e=>this.confirmWalletPayment(e),identityToken:this.credential?.token}})}else{if(!me())return;let n=this.credential?.token;if(!n)return;t=B.generate(e,{token:n})}C.info(this.$t(`omni.message.startingTask`)),ue(`omni`,t).then(e=>{let t=e?.data?.task_id;this.walletMode&&!this.credential?.token&&t&&!this.walletTaskIds.includes(t)&&this.walletTaskIds.unshift(t),C.success(this.$t(`omni.message.startTaskSuccess`))}).catch(e=>{let t=e?.response?.data;e instanceof de||G(e,`omni`)||(this.walletMode?C.error(this.$t(`common.x402Scenario.paymentFailed`)):C.error(this.$t(`omni.message.startTaskFailed`)+(t?.error?.message||``)))}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})},getWalletContext(){return le(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 en(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 tn=z($t,[[`render`,en]]);export{tn 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{t as y}from"./upload-ChEGBjQd.js";import{t as b}from"./tooltip-CsVgfK1f.js";import{t as x}from"./alert-BprQRUmf.js";import{_ as S,v as C}from"./vuex.esm-bundler-uM-kqbAF.js";import{t as w}from"./drawer-CF4BsAtW.js";import{t as T}from"./box-Bx0ypDsn.js";import{t as E}from"./clock-B6Xmh354.js";import{t as D}from"./hash-BKpZIJo7.js";import{t as O}from"./info-CDs2D83H.js";import{a as k,i as A,n as j,o as M,r as ee,t as N}from"./pagination-BGnYVZvp.js";import{t as te}from"./trash-2-rtHpr3JN.js";import{t as ne}from"./triangle-alert-D_wd4w3Z.js";import{t as P}from"./upload-DoPPJ2yy.js";import{t as F}from"./wand-sparkles-CReI7Ekg.js";import{Mt as I,Nt as L,Ot as R,Pt as re,jt as ie,kt as ae}from"./constants-CVb0vrXj.js";import{D as z,Fi as B,Gn as V,Ha as H,Ia as U,Li as W,T as G,Tn as K,Wn as q,Xi as J,at as oe,ct as Y,ia as se,it as ce,li as le,lt as ue,nt as de,oi as fe,ot as X,rt as pe,st as me,to as Z,tt as he}from"./index-C643U2rX.js";import{t as ge}from"./CopyToClipboard-Dc_53C_9.js";import{t as _e}from"./ReportButton-BCWM_eUv.js";import{t as ve}from"./FilePreview-C0VlAjUT.js";import{t as Q}from"./ImagePreview-QrO7VB3T.js";import{n as ye}from"./taskDrawerMixin-DyAUhFEq.js";import{t as be}from"./ServicePricingSummary-BnnhtPm5.js";import{t as xe}from"./VideoPlayer-Bt19ZgtM.js";import{t as Se}from"./ScenarioPaymentMode-DUv_xCgb.js";import{t as Ce}from"./ApiCodeButton-DBR9tGBM.js";import{t as we}from"./BotPlaceholder-Cl_V5koZ.js";import{t as Te}from"./taskPollingMixin-CcLxtz8z.js";var Ee=v({name:`LayoutOmni`,components:{MagicIcon:F,ElDrawer:w,ElButton:Z},mixins:[ye]}),De={class:`main flex flex-row flex-1`},Oe={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)]`},ke={class:`result h-full p-4 flex-1 flex flex-col min-w-0 overflow-x-hidden bg-[var(--app-content-bg)]`};function Ae(t,n,r,i,o,c){let f=l(`magic-icon`),m=l(`el-button`),h=l(`el-drawer`);return g(),s(`div`,De,[e(`div`,Oe,[d(t.$slots,`config`,{},void 0,!0)]),e(`div`,ke,[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 je=z(Ee,[[`render`,Ae],[`__scopeId`,`data-v-847afabf`]]),Me=v({name:`OmniPromptInput`,components:{PromptTextarea:A},computed:{prompt:{get(){return this.$store.state.omni?.config?.prompt},set(e){this.$store.commit(`omni/setConfig`,{...this.$store.state.omni?.config,prompt:e})}}},mounted(){this.prompt||=``}});function Ne(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(`omni.name.prompt`),info:e.$t(`omni.description.prompt`),placeholder:e.$t(`omni.placeholder.prompt`),"min-rows":5},null,8,[`modelValue`,`title`,`info`,`placeholder`])}var Pe=z(Me,[[`render`,Ne]]),Fe=v({name:`OmniResolutionSelector`,components:{InfoIcon:k},data(){return{options:[{value:re,label:`720p`},{value:L,label:`1080p`}]}},computed:{value:{get(){return this.$store.state.omni?.config?.resolution},set(e){this.$store.commit(`omni/setConfig`,{...this.$store.state.omni?.config,resolution:e})}}},mounted(){this.value||=ae}}),Ie={class:`resolution`},Le={class:`header`},Re={class:`title font-bold`},ze={class:`items`},Be=[`onClick`];function Ve(t,r,o,u,d,f){let p=l(`info-icon`);return g(),s(`div`,Ie,[e(`div`,Le,[e(`h2`,Re,i(t.$t(`omni.name.resolution`)),1),a(p,{content:t.$t(`omni.description.resolution`),class:`info`},null,8,[`content`])]),e(`div`,ze,[(g(!0),s(c,null,h(t.options,e=>(g(),s(`div`,{key:e.value,class:n([`item`,{active:t.value===e.value}]),onClick:n=>t.value=e.value},i(e.label),11,Be))),128))])])}var He=z(Fe,[[`render`,Ve],[`__scopeId`,`data-v-1f9abe29`]]),Ue=v({name:`OmniRatioSelector`,components:{InfoIcon:k},computed:{options(){return[{value:ie,label:`16:9`,w:32,h:18},{value:I,label:`9:16`,w:18,h:32}]},value:{get(){return this.$store.state.omni?.config?.aspect_ratio},set(e){this.$store.commit(`omni/setConfig`,{...this.$store.state.omni?.config,aspect_ratio:e})}}},mounted(){this.value||=R}}),We={class:`ratio`},Ge={class:`header`},Ke={class:`title font-bold`},qe={class:`items`},Je=[`onClick`],Ye={class:`preview`},Xe={class:`name`};function Ze(t,r,o,u,d,f){let p=l(`info-icon`);return g(),s(`div`,We,[e(`div`,Ge,[e(`h2`,Ke,i(t.$t(`omni.name.ratio`)),1),a(p,{content:t.$t(`omni.description.ratio`),class:`info`},null,8,[`content`])]),e(`div`,qe,[(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`,Ye,[e(`div`,{class:`rect`,style:m({width:r.w+`px`,height:r.h+`px`})},null,4)]),e(`div`,Xe,i(r.label),1)],10,Je))),128))])])}var Qe=z(Ue,[[`render`,Ze],[`__scopeId`,`data-v-1c0c1511`]]),$e=4,et=v({name:`OmniReferenceImagesInput`,components:{ElUpload:y,ElButton:Z,InfoIcon:k,ImagePreview:Q,UploadIcon:P},mixins:[ue,Y,X,he],data(){return{fileList:[],uploadUrl:U()+`/api/v1/files/`,limit:$e,suppressWatch:!1}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},urls(){return this.fileList.map(e=>e?.response?.file_url).filter(e=>!!e)||[]},value(){return this.$store.state.omni?.config?.image_urls}},watch:{value:{immediate:!0,handler(e){if(this.suppressWatch)return;if(!e||e.length===0){let e=(this.fileList||[]).filter(e=>!e?.response?.file_url);this.fileList=e.length?e:[];return}let t=[];e.forEach(e=>{let n=this.fileList.find(t=>t?.response?.file_url===e||t?.url===e);n?t.push(n):t.push({name:e.split(`/`).pop()||e,url:e,status:`success`,percentage:100,response:{file_url:e}})}),(this.fileList||[]).filter(e=>!e?.response?.file_url).forEach(e=>{t.some(t=>t===e||t?.url===e?.url||t?.response?.file_url===e?.response?.file_url)||t.push(e)}),this.fileList=t}}},methods:{onChange(e){if(!e?.url&&e?.raw)try{e.url=URL.createObjectURL(e.raw)}catch{}},onRemove(e){if(e?.url&&typeof e.url==`string`&&e.url.startsWith(`blob:`))try{URL.revokeObjectURL(e.url)}catch{}this.onSetReferenceImages()},onExceed(){C.warning(this.$t(`omni.message.uploadReferenceExceed`))},onError(){C.error(this.$t(`omni.message.uploadError`))},onSetReferenceImages(){let e=this.urls;this.suppressWatch=!0,this.$store.commit(`omni/setConfig`,{...this.$store.state.omni?.config,image_urls:e.length?e:void 0}),this.$nextTick(()=>{this.suppressWatch=!1})},async onSuccess(e,t){e?.file_url&&(t.url=e.file_url,t.response=e),this.onSetReferenceImages()},onRemovePreview(e,t){if(this.fileList.splice(e,1),t?.url&&typeof t.url==`string`&&t.url.startsWith(`blob:`))try{URL.revokeObjectURL(t.url)}catch{}this.onSetReferenceImages()}}}),tt={class:`field mb-[10px] flex min-h-8 w-full items-center justify-between gap-3`},nt={class:`flex min-w-0 items-center`},rt={class:`title m-0 text-[14px] font-bold`},it={class:`file-list flex flex-wrap gap-[10px]`};function at(t,n,o,u,d,m){let _=l(`info-icon`),v=l(`upload-icon`),y=l(`el-button`),b=l(`el-upload`),x=l(`image-preview`);return g(),s(`div`,null,[e(`div`,tt,[e(`div`,nt,[e(`h2`,rt,i(t.$t(`omni.name.referenceImages`)),1),a(_,{content:t.$t(`omni.description.referenceImages`)},null,8,[`content`])]),a(b,{ref:`uploader`,"file-list":t.fileList,"onUpdate:fileList":n[0]||=e=>t.fileList=e,accept:`.png,.jpg,.jpeg,.gif,.bmp,.webp`,name:`file`,class:`value shrink-0`,limit:t.limit,multiple:!0,"show-file-list":!1,"before-upload":t.beforeUploadSizeGuard,action:t.uploadUrl,"on-exceed":t.onExceed,"on-error":t.onError,"on-success":t.onSuccess,"on-change":t.onChange,"on-remove":t.onRemove,headers:t.headers},{default:p(()=>[a(y,{size:`small`,type:`primary`,round:``},{default:p(()=>[a(v,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`omni.button.upload`)),1)]),_:1})]),_:1},8,[`file-list`,`limit`,`before-upload`,`action`,`on-exceed`,`on-error`,`on-success`,`on-change`,`on-remove`,`headers`])]),e(`div`,it,[(g(!0),s(c,null,h(t.fileList,(e,n)=>(g(),f(x,{key:e.uid||e?.response?.file_url||e.url||n,url:e.url||e?.response?.file_url,name:e.name,percentage:e.percentage,onRemove:r=>t.onRemovePreview(n,e)},null,8,[`url`,`name`,`percentage`,`onRemove`]))),128))])])}var ot=z(et,[[`render`,at]]),st=v({name:`OmniVideoInput`,components:{ElUpload:y,ElButton:Z,InfoIcon:k,FilePreview:ve,UploadIcon:P},mixins:[Y,X],data(){return{fileList:[],uploadUrl:U()+`/api/v1/files/`}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},videoUrl(){return this.$store.state.omni?.config?.video_urls?.[0]},videoName(){let e=this.videoUrl||``;return e.split(`/`).pop()||e}},methods:{onExceed(){C.warning(this.$t(`omni.message.uploadVideoExceed`))},onError(){C.error(this.$t(`omni.message.uploadVideoError`))},beforeUpload(e){let t=e.type===`video/mp4`||e.type===`video/quicktime`,n=ce(e.size);return t?n?!0:(C.error(this.$t(`omni.message.uploadVideoSizeExceed`,{max:pe(de)})),!1):(C.error(this.$t(`omni.message.uploadVideoTypeFailed`)),!1)},setVideoUrls(e){this.$store.commit(`omni/setConfig`,{...this.$store.state.omni?.config,video_urls:e?[e]:void 0})},onRemove(){this.fileList=[],this.setVideoUrls(void 0)},async onSuccess(e,t){let n=e?.file_url||t?.response?.file_url;this.setVideoUrls(n||void 0)}}}),ct={class:`field flex min-h-8 w-full items-center justify-between gap-3`},lt={class:`flex min-w-0 items-center`},ut={class:`title m-0 text-[14px] font-bold`},dt={key:0,class:`file-list flex flex-wrap gap-[10px]`};function ft(t,n,c,u,d,f){let m=l(`info-icon`),h=l(`upload-icon`),_=l(`el-button`),v=l(`el-upload`),y=l(`file-preview`);return g(),s(`div`,null,[e(`div`,ct,[e(`div`,lt,[e(`h2`,ut,i(t.$t(`omni.name.referenceVideo`)),1),a(m,{content:t.$t(`omni.description.referenceVideo`)},null,8,[`content`])]),a(v,{ref:`uploader`,"file-list":t.fileList,"onUpdate:fileList":n[0]||=e=>t.fileList=e,accept:`.mp4,.mov`,name:`file`,class:`value shrink-0`,"show-file-list":!1,limit:1,multiple:!1,action:t.uploadUrl,"before-upload":t.beforeUpload,"on-exceed":t.onExceed,"on-error":t.onError,"on-success":t.onSuccess,headers:t.headers},{default:p(()=>[a(_,{size:`small`,type:`primary`,round:``},{default:p(()=>[a(h,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`omni.button.uploadVideo`)),1)]),_:1})]),_:1},8,[`file-list`,`action`,`before-upload`,`on-exceed`,`on-error`,`on-success`,`headers`])]),t.videoUrl?(g(),s(`div`,dt,[a(y,{url:t.videoUrl,name:t.videoName,percentage:100,onRemove:t.onRemove},null,8,[`url`,`name`,`onRemove`])])):o(``,!0)])}var pt=v({name:`OmniConfigPanel`,components:{ElButton:Z,MagicIcon:F,PromptInput:Pe,ResolutionSelector:He,RatioSelector:Qe,ReferenceImagesInput:ot,VideoInput:z(st,[[`render`,ft],[`__scopeId`,`data-v-b87d1e4e`]]),ServicePricingSummary:be,ScenarioPaymentMode:Se},emits:[`generate`],data(){return{quoteTimer:0,quoteRunId:0}},computed:{config(){return this.$store.state.omni?.config},consumption(){return K(this.config,this.service?.cost)},service(){return this.$store.state.omni?.service},walletMode(){return B()&&W(`omni`).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=W(`omni`),t=++this.quoteRunId;e.quoteLoading=!0,e.quoteUsdc=void 0;try{let n=await V.quote(q(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(`prompt-input`),_=l(`ratio-selector`),v=l(`resolution-selector`),y=l(`reference-images-input`),b=l(`video-input`),x=l(`scenario-payment-mode`),S=l(`service-pricing-summary`),C=l(`magic-icon`),w=l(`el-button`);return g(),s(`div`,mt,[e(`div`,ht,[a(h,{class:`mb-4`}),a(_,{class:`mb-4`}),a(v,{class:`mb-4`}),a(y,{class:`mb-4`}),a(b,{class:`mb-4`})]),e(`div`,gt,[a(x,{scenario:`omni`}),t.walletMode?o(``,!0):(g(),f(S,{key:0,value:t.consumption,service:t.service},null,8,[`value`,`service`])),a(w,{type:`primary`,class:`btn w-full`,round:``,onClick:t.onGenerate},{default:p(()=>[a(C,{class:`mr-2`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`omni.button.generate`)),1)]),_:1},8,[`onClick`])])])}var vt=z(pt,[[`render`,_t]]),yt=v({name:`OmniTaskPreview`,components:{DeleteIcon:te,ApplicationIcon:T,ChannelIcon:D,CopyToClipboard:ge,ExpandIcon:M,InfoIcon:O,MagicIcon:F,TimeIcon:E,WarningIcon:ne,ElAlert:x,VideoPlayer:xe,ElTooltip:b,ElButton:Z,ImagePreview:Q,ApiCodeButton:Ce,ReportButton:_e},props:{modelValue:{type:Object,required:!0}},data(){return{nowTs:Date.now(),timer:0}},computed:{video(){return this.modelValue?.response?.data?.[0]},inputImage(){return this.modelValue?.request?.image_urls?.[0]},pendingElapsed(){let e=parseFloat((this.modelValue?.created_at||``).toString());if(e)return Math.max(0,Math.floor(this.nowTs/1e3-e))}},watch:{"modelValue.response":{handler(e){e&&this.stopTimer()}}},mounted(){this.modelValue?.response||(this.timer=window.setInterval(()=>{this.nowTs=Date.now()},1e3))},beforeUnmount(){this.stopTimer()},methods:{async onDelete(){let e=this.modelValue?.id;if(e){try{await H.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(`omni/deleteTask`,{id:e}),C.success(this.$t(`common.message.deleteTaskSuccess`))}catch{C.error(this.$t(`common.message.deleteTaskFailed`))}}},stopTimer(){this.timer&&=(window.clearInterval(this.timer),0)},onDownload(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})},Mt={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Nt={key:0,class:`text-[var(--el-text-color-regular)] text-xs mb-0`},Pt={key:1,class:n({content:!0})},Ft={key:0,class:`mb-4`},It={key:1,class:n({operations:!0,"mt-2":!0,"mb-2":!0})},Lt={key:0,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:0},Bt={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},$={key:2,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Vt={key:3,class:`text-[var(--el-text-color-regular)] text-xs mb-0`},Ht={key:2,class:n({content:!0})},Ut={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Wt={key:0,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Gt={key:1,class:`text-[var(--el-text-color-regular)] text-xs mb-0`},Kt={key:3,class:n({content:!0})},qt={class:`text-[var(--el-text-color-regular)] text-xs mb-0`};function Jt(n,c,u,d,f,m){let h=l(`capability-presentation`),_=l(`delete-icon`),v=l(`el-tooltip`),y=l(`image-preview`),b=l(`time-icon`),x=l(`magic-icon`),S=l(`copy-to-clipboard`),C=l(`el-alert`),w=l(`video-player`),T=l(`el-button`),E=l(`api-code-button`),D=l(`report-button`),O=l(`application-icon`),k=l(`expand-icon`),A=l(`channel-icon`),j=l(`warning-icon`),M=l(`info-icon`);return g(),s(`div`,bt,[e(`div`,xt,[a(h,{capability:`omni`,part:`avatar`,class:`avatar`})]),e(`div`,St,[e(`div`,Ct,[a(h,{capability:`omni`,part:`name`}),e(`span`,wt,i(n.$dayjs.format(``+new Date(parseFloat((n.modelValue?.created_at||``).toString())*1e3))),1),a(v,{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:c[0]||=t((...e)=>n.onDelete&&n.onDelete(...e),[`stop`])},[a(_,{size:`1em`,"aria-hidden":`true`,focusable:`false`})],8,Tt)):o(``,!0)]),_:1},8,[`content`])]),e(`div`,Et,[n.inputImage?(g(),s(`div`,Dt,[a(y,{url:n.inputImage,name:`image`,closable:!1},null,8,[`url`])])):o(``,!0),n.modelValue?.request?.prompt?(g(),s(`p`,Ot,[r(i(n.modelValue?.request?.prompt)+` `,1),n.modelValue?.response?n.video?.state===`processing`||n.video?.state===`pending`?(g(),s(`span`,At,` - (`+i(n.$t(`omni.status.processing`))+`) `,1)):o(``,!0):(g(),s(`span`,kt,` - (`+i(n.$t(`omni.status.pending`))+`) `,1))])):o(``,!0)]),n.modelValue?.response?n.modelValue?.response?.success===!0?(g(),s(`div`,Pt,[n.video?.video_url?(g(),s(`div`,Ft,[a(w,{src:n.video?.video_url},null,8,[`src`])])):o(``,!0),n.video?.video_url?(g(),s(`div`,It,[a(v,{class:`box-item`,effect:`dark`,content:n.$t(`omni.message.downloadVideo`),placement:`top-start`},{default:p(()=>[a(T,{type:`info`,size:`small`,class:`btn-action`,onClick:c[1]||=t(e=>n.onDownload(n.video?.video_url),[`stop`])},{default:p(()=>[r(i(n.$t(`common.button.download`)),1)]),_:1})]),_:1},8,[`content`]),a(E,{path:`/gemini/videos`,body:n.modelValue?.request},null,8,[`body`]),a(D,{service:`omni`,"target-id":n.modelValue?.id,snapshot:{prompt:n.modelValue?.request?.prompt}},null,8,[`target-id`,`snapshot`])])):o(``,!0),a(C,{closable:!1,class:`mt-2 success`},{default:p(()=>[n.modelValue?.request?.model?(g(),s(`p`,Lt,[a(O,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`omni.name.model`))+`: `+i(n.modelValue?.request?.model),1)])):o(``,!0),n.modelValue?.request?.resolution?(g(),s(`p`,Rt,[a(k,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`omni.name.resolution`))+`: `+i(n.modelValue?.request?.resolution)+` `,1),n.modelValue?.request?.aspect_ratio?(g(),s(`span`,zt,` · `+i(n.modelValue?.request?.aspect_ratio),1)):o(``,!0)])):o(``,!0),e(`p`,Bt,[a(x,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`omni.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(S,{content:n.modelValue?.id,class:`btn-copy inline-block`},null,8,[`content`])]),n.modelValue?.elapsed?(g(),s(`p`,$,[a(b,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`omni.name.elapsed`))+`: `+i(n.modelValue?.elapsed?.toFixed(2))+`s `,1)])):o(``,!0),n.modelValue?.response?.trace_id?(g(),s(`p`,Vt,[a(A,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`omni.name.traceId`))+`: `+i(n.modelValue?.response?.trace_id)+` `,1),a(S,{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`,Ht,[a(C,{closable:!1,class:`failure`},{template:p(()=>[a(j,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`omni.name.failure`)),1)]),default:p(()=>[e(`p`,Ut,[a(x,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`omni.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(S,{content:n.modelValue?.id,class:`btn-copy inline-block`},null,8,[`content`])]),n.modelValue?.response?.error?.message?(g(),s(`p`,Wt,[a(M,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`omni.name.failureReason`))+`: `+i(n.modelValue?.response?.error?.message)+` `,1),a(S,{content:n.modelValue?.response?.error?.message,class:`btn-copy inline-block`},null,8,[`content`])])):o(``,!0),n.modelValue?.response?.trace_id?(g(),s(`p`,Gt,[a(A,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`omni.name.traceId`))+`: `+i(n.modelValue?.response?.trace_id)+` `,1),a(S,{content:n.modelValue?.response?.trace_id,class:`btn-copy inline-block`},null,8,[`content`])])):o(``,!0)]),_:1})])):(g(),s(`div`,Kt,[a(C,{closable:!1,class:`info`},{template:p(()=>[a(M,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`omni.name.status`)),1)]),default:p(()=>[e(`p`,qt,[a(x,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`omni.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(S,{content:n.modelValue?.id,class:`btn-copy inline-block`},null,8,[`content`])])]),_:1})])):(g(),s(`div`,jt,[a(C,{closable:!1,class:`info`},{template:p(()=>[a(b,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`omni.status.pending`)),1)]),default:p(()=>[e(`p`,Mt,[a(x,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`omni.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(S,{content:n.modelValue?.id,class:`btn-copy inline-block`},null,8,[`content`])]),n.pendingElapsed===void 0?o(``,!0):(g(),s(`p`,Nt,[a(b,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`omni.name.elapsed`))+`: `+i(n.pendingElapsed)+`s `,1)]))]),_:1})]))])])}var Yt=v({name:`OmniRecentPanel`,components:{TaskPreview:z(yt,[[`render`,Jt],[`__scopeId`,`data-v-83851ad5`]]),BotPlaceholder:we,NoTasks:ee,ScrollList:j},props:{loading:{type:Boolean,default:!1}},emits:[`reach-top`],computed:{tasks(){return{...this.$store.state.omni?.tasks,items:this.$store.state.omni?.tasks?.items?.slice()}}},methods:{getScrollElement(){return this.$refs.scrollList?.getScrollElement?.()}}}),Xt={key:0},Zt={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`,Xt,[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`,Zt,[a(v)])):o(``,!0)],64)}var $t=v({name:`OmniIndex`,components:{ConfigPanel:vt,Layout:je,RecentPanel:z(Yt,[[`render`,Qt]])},mixins:[me,Te(`omni`)],inject:[`initialized`],data(){return{task:void 0,job:0,loadingMore:!1,fetchingTasks:!1,walletTaskIds:[]}},computed:{applicationsLoading(){return this.$store.state.omni?.status?.getApplications===S.Request},tasksLoading(){return this.$store.state.omni?.status?.getTasks===S.Request||this.fetchingTasks},credential(){return this.$store.state.omni?.credential},config(){return this.$store.state.omni?.config},tasks(){return this.$store.state.omni?.tasks},walletMode(){return B()&&W(`omni`).mode===`wallet`}},watch:{walletMode:{async handler(e,t){if(!(t===void 0||e===t)){if(this.$store.commit(`omni/setTasks`,void 0),e&&!this.job&&(this.job=window.setInterval(this.onPollTasks,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.onPollTasks,5e3))},immediate:!0}},async mounted(){await this.onGetService()},async unmounted(){window.clearInterval(this.job)},methods:{async onReachTop(){await N({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(`omni/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(`omni/getTasks`,{limit:t,createdAtMin:n,createdAtMax:r,...this.walletMode&&!this.credential?.token?{mode:`x402`,ids:this.walletTaskIds}:{}})}finally{this.fetchingTasks=!1}},async onGenerate(){if(!oe(this.uploadTracker,e=>this.$t(e),e=>C.warning(e)))return;let e=q(this.config);if(!e.prompt){C.warning(this.$t(`omni.message.promptRequired`));return}if(e.video_urls&&!e.image_urls){C.warning(this.$t(`omni.message.videoRequiresImage`));return}let t;if(this.walletMode){let n=this.getWalletContext();if(!n){C.warning(this.$t(`common.x402Scenario.connectWalletFirst`));return}t=V.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=V.generate(e,{token:n})}C.info(this.$t(`omni.message.startingTask`)),J(`omni`,t).then(e=>{let t=e?.data?.task_id;this.walletMode&&!this.credential?.token&&t&&!this.walletTaskIds.includes(t)&&this.walletTaskIds.unshift(t),C.success(this.$t(`omni.message.startTaskSuccess`))}).catch(e=>{let t=e?.response?.data;e instanceof fe||G(e,`omni`)||(this.walletMode?C.error(this.$t(`common.x402Scenario.paymentFailed`)):C.error(this.$t(`omni.message.startTaskFailed`)+(t?.error?.message||``)))}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})},getWalletContext(){return le(this.$wallet)},async confirmWalletPayment(e){return H.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 en(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 tn=z($t,[[`render`,en]]);export{tn as default};
|
|
@@ -0,0 +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-Dxkn5fnG.js";import{t as b}from"./upload-ChEGBjQd.js";import{t as x}from"./tooltip-CsVgfK1f.js";import{t as S}from"./alert-BprQRUmf.js";import{_ as C,v as w}from"./vuex.esm-bundler-uM-kqbAF.js";import{t as T}from"./checkbox-DXMDpaxv.js";import{t as E}from"./drawer-CF4BsAtW.js";import{t as D}from"./input-number-YpK_vIUu.js";import{t as O}from"./box-Bx0ypDsn.js";import{t as k}from"./clock-B6Xmh354.js";import{t as A}from"./hash-BKpZIJo7.js";import{t as j}from"./image-Dsh8h-Vr.js";import{t as M}from"./info-CDs2D83H.js";import{a as N,i as P,n as F,r as I,t as ee}from"./pagination-BGnYVZvp.js";import{t as L}from"./trash-2-rtHpr3JN.js";import{t as te}from"./triangle-alert-D_wd4w3Z.js";import{t as ne}from"./upload-DoPPJ2yy.js";import{t as R}from"./wand-sparkles-CReI7Ekg.js";import{t as re}from"./zap-BVQJGqe4.js";import{On as ie}from"./constants-CVb0vrXj.js";import{D as z,Ha as B,Ia as V,T as H,Tn as U,Xi as W,Yn as G,at as K,ct as q,ia as J,lo as Y,lt as ae,ot as oe,st as se,to as X,tt as ce}from"./index-C643U2rX.js";import{t as le}from"./CopyToClipboard-Dc_53C_9.js";import{t as ue}from"./ReportButton-BCWM_eUv.js";import{t as Z}from"./ImagePreview-QrO7VB3T.js";import{n as de}from"./taskDrawerMixin-DyAUhFEq.js";import{t as fe}from"./ServicePricingSummary-BnnhtPm5.js";import{t as pe}from"./ApiCodeButton-DBR9tGBM.js";import{t as me}from"./BotPlaceholder-Cl_V5koZ.js";import{t as he}from"./taskPollingMixin-CcLxtz8z.js";import{t as ge}from"./ShowcaseResultTabs-DoS1AGxi.js";import{t as _e}from"./showcaseRecreateMixin-BvSTHecE.js";import{n as ve,t as ye}from"./generationInput-jeoGp56s.js";import{t as be}from"./ImageWrapper-D2sKN22b.js";var xe=_({name:`LayoutQwenImage`,components:{MagicIcon:R,ElDrawer:E,ElButton:X},mixins:[de]}),Se={class:`main flex flex-row flex-1`},Ce={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)]`},we={class:`result h-full p-4 flex-1 flex flex-col min-w-0 overflow-x-hidden bg-[var(--app-content-bg)]`};function Te(t,n,r,i,o,c){let f=l(`magic-icon`),m=l(`el-button`),_=l(`el-drawer`);return h(),s(`div`,Se,[e(`div`,Ce,[d(t.$slots,`config`,{},void 0,!0)]),e(`div`,we,[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 Ee=z(xe,[[`render`,Te],[`__scopeId`,`data-v-55d4f45e`]]),De=_({name:`QwenImagePromptInput`,components:{PromptTextarea:P},computed:{prompt:{get(){return this.$store.state.qwenimage?.config?.prompt},set(e){this.$store.commit(`qwenimage/setConfig`,{...this.$store.state.qwenimage?.config,prompt:e})}}},mounted(){this.prompt||=``}});function Oe(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(`qwenimage.name.prompt`),info:e.$t(`qwenimage.description.prompt`),placeholder:e.$t(`qwenimage.placeholder.prompt`)},null,8,[`modelValue`,`title`,`info`,`placeholder`])}var ke=z(De,[[`render`,Oe]]),Ae=e=>({image:!0}),je=_({name:`QwenImageImageInput`,components:{UploadIcon:ne,ElUpload:b,ElButton:X,InfoIcon:N,ImagePreview:Z},mixins:[ae,q,oe,ce],data(){return{fileList:[],uploadUrl:V()+`/api/v1/files/`,suppressWatch:!1}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},urls(){return this.fileList.map(e=>e?.response?.file_url).filter(e=>!!e)},value(){return this.$store.state.qwenimage?.config?.image},model(){return this.$store.state.qwenimage?.config?.model},supported(){return Ae(this.model).image}},watch:{value:{immediate:!0,handler(e){if(this.suppressWatch)return;if(!e||e.length===0){let e=(this.fileList||[]).filter(e=>!e?.response?.file_url);this.fileList=e.length?e:[];return}let t=[];e.forEach(e=>{let n=this.fileList.find(t=>t?.response?.file_url===e||t?.url===e);n?t.push(n):t.push({name:e.split(`/`).pop()||e,url:e,status:`success`,percentage:100,response:{file_url:e}})}),(this.fileList||[]).filter(e=>!e?.response?.file_url).forEach(e=>{t.some(t=>t===e||t?.url===e?.url||t?.response?.file_url===e?.response?.file_url)||t.push(e)}),this.fileList=t}}},methods:{onChange(e){if(!e?.url&&e?.raw)try{e.url=URL.createObjectURL(e.raw)}catch{}},onRemove(e){if(e?.url&&typeof e.url==`string`&&e.url.startsWith(`blob:`))try{URL.revokeObjectURL(e.url)}catch{}this.onSetImages()},onExceed(){w.warning(this.$t(`qwenimage.message.uploadImageExceed`))},onError(){w.error(this.$t(`qwenimage.message.uploadImageError`))},onSetImages(){let e=this.urls;this.suppressWatch=!0,this.$store.commit(`qwenimage/setConfig`,{...this.$store.state.qwenimage?.config,image:e}),this.$nextTick(()=>{this.suppressWatch=!1})},async onSuccess(e,t){e?.file_url&&(t.url=e.file_url,t.response=e),this.onSetImages()},onRemovePreview(e,t){if(this.fileList.splice(e,1),t?.url&&typeof t.url==`string`&&t.url.startsWith(`blob:`))try{URL.revokeObjectURL(t.url)}catch{}this.onSetImages()}}}),Me={key:0},Ne={class:`field`},Pe={class:`label`},Fe={class:`box`},Ie={class:`title font-bold`},Le={class:`value`},Re={class:`file-list mt-2 flex flex-wrap gap-[10px]`};function ze(t,n,u,d,g,_){let v=l(`info-icon`),y=l(`upload-icon`),b=l(`el-button`),x=l(`el-upload`),S=l(`image-preview`);return t.supported?(h(),s(`div`,Me,[e(`div`,Ne,[e(`div`,Pe,[e(`div`,Fe,[e(`h2`,Ie,i(t.$t(`qwenimage.name.imageUrls`)),1),a(v,{content:t.$t(`qwenimage.description.imageUrls`),class:`info`},null,8,[`content`])])]),e(`div`,Le,[a(x,{ref:`uploader`,"file-list":t.fileList,"onUpdate:fileList":n[0]||=e=>t.fileList=e,accept:`.png,.jpg,.jpeg,.gif,.bmp,.webp`,name:`file`,limit:14,multiple:!0,"show-file-list":!1,"before-upload":t.beforeUploadSizeGuard,action:t.uploadUrl,"on-exceed":t.onExceed,"on-error":t.onError,"on-success":t.onSuccess,"on-change":t.onChange,"on-remove":t.onRemove,headers:t.headers},{default:p(()=>[a(b,{size:`small`,type:`primary`,round:``},{default:p(()=>[a(y,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`qwenimage.button.uploadImageUrls`)),1)]),_:1})]),_:1},8,[`file-list`,`before-upload`,`action`,`on-exceed`,`on-error`,`on-success`,`on-change`,`on-remove`,`headers`])])]),e(`div`,Re,[(h(!0),s(c,null,m(t.fileList,(e,n)=>(h(),f(S,{key:e.uid||e?.response?.file_url||e.url||n,url:e.url||e?.response?.file_url,name:e.name,percentage:e.percentage,onRemove:r=>t.onRemovePreview(n,e)},null,8,[`url`,`name`,`percentage`,`onRemove`]))),128))])])):o(``,!0)}var Be=z(je,[[`render`,ze],[`__scopeId`,`data-v-1c07f3a8`]]),Q=e=>{let t={...e||{}};typeof t.prompt==`string`&&(t.prompt=t.prompt.trim());let n=t.image?.length?t.image:void 0;return delete t.image,{...t,image_urls:n,watermark:!1,async:!0}},Ve=_({name:`QwenImageConfigPanel`,components:{ElButton:X,ElSelect:v,ElOption:y,ElInput:Y,ElInputNumber:D,ElCheckbox:T,PromptInput:ke,ImageInput:Be,ServicePricingSummary:fe},emits:[`generate`],computed:{canGenerate(){return ye(`qwenimage`,Q(this.config))},config(){return this.$store.state.qwenimage?.config},service(){return this.$store.state.qwenimage?.service},consumption(){return U(Q(this.config),this.service?.cost)},model:{get(){return this.config?.model||`qwen-image-3.0`},set(e){this.set({model:e})}},size:{get(){return this.config?.size||`1024*1024`},set(e){this.set({size:e})}},n:{get(){return this.config?.n||1},set(e){this.set({n:e})}},thinking:{get(){return this.config?.enable_thinking!==!1},set(e){this.set({enable_thinking:e})}}},methods:{set(e){this.$store.commit(`qwenimage/setConfig`,{...this.config,...e})}}}),He={class:`flex flex-col h-full`},Ue={class:`flex-1 overflow-y-auto p-5 space-y-4`},We={class:`px-5 pb-5`};function Ge(t,n,o,c,u,d){let f=l(`el-option`),m=l(`el-select`),g=l(`prompt-input`),_=l(`image-input`),v=l(`el-input`),y=l(`el-input-number`),b=l(`el-checkbox`),x=l(`service-pricing-summary`),S=l(`el-button`);return h(),s(`div`,He,[e(`div`,Ue,[e(`div`,null,[e(`b`,null,i(t.$t(`qwenimage.name.model`)),1),a(m,{modelValue:t.model,"onUpdate:modelValue":n[0]||=e=>t.model=e,class:`w-full`},{default:p(()=>[a(f,{value:`qwen-image-3.0`,label:`qwen-image-3.0`}),a(f,{value:`qwen-image-3.0-pro`,label:`qwen-image-3.0-pro`})]),_:1},8,[`modelValue`])]),a(g),a(_),e(`div`,null,[e(`b`,null,i(t.$t(`qwenimage.name.size`)),1),a(v,{modelValue:t.size,"onUpdate:modelValue":n[1]||=e=>t.size=e,placeholder:`1024*1024`},null,8,[`modelValue`])]),e(`div`,null,[e(`b`,null,i(t.$t(`qwenimage.name.count`)),1),a(y,{modelValue:t.n,"onUpdate:modelValue":n[2]||=e=>t.n=e,min:1,max:6},null,8,[`modelValue`])]),a(b,{modelValue:t.thinking,"onUpdate:modelValue":n[3]||=e=>t.thinking=e},{default:p(()=>[r(i(t.$t(`qwenimage.name.thinking`)),1)]),_:1},8,[`modelValue`])]),e(`div`,We,[a(x,{value:t.consumption,service:t.service},null,8,[`value`,`service`]),a(S,{type:`primary`,class:`w-full`,round:``,disabled:!t.canGenerate,onClick:n[4]||=e=>t.$emit(`generate`)},{default:p(()=>[r(i(t.$t(`qwenimage.button.generate`)),1)]),_:1},8,[`disabled`])])])}var Ke=z(Ve,[[`render`,Ge]]),qe=_({name:`QwenImageTaskPreview`,components:{DeleteIcon:L,ApplicationIcon:O,ChannelIcon:A,ImageIcon:j,InfoIcon:M,LightningIcon:re,MagicIcon:R,TimeIcon:k,WarningIcon:te,CopyToClipboard:le,ElAlert:S,ImageWrapper:be,ElButton:X,ElTooltip:x,ImagePreview:Z,ApiCodeButton:pe,ReportButton:ue},props:{modelValue:{type:Object,required:!0}},computed:{apiRequest(){return Q(this.modelValue?.request)},isEdit(){return Array.isArray(this.modelValue?.request?.image_urls)&&(this.modelValue?.request?.image_urls?.length||0)>0},images(){let e=[];return Array.isArray(this.modelValue?.response?.data)&&this.modelValue?.response?.data?.forEach(t=>{e.push(t)}),e}},methods:{async onDelete(){let e=this.modelValue?.id;if(e){try{await B.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(`qwenimage/deleteTask`,{id:e}),w.success(this.$t(`common.message.deleteTaskSuccess`))}catch{w.error(this.$t(`common.message.deleteTaskFailed`))}}},shortModel(e){return ie(e)||e},onEdit(e){if(!e)return;console.debug(`Edit image:`,e);let t={...this.$store.state.qwenimage?.config||{}};t.image=[e],this.$store.commit(`qwenimage/setConfig`,t)}}}),Je={class:`preview`},Ye={class:`left`},Xe={class:`main`},Ze={class:`bot`},Qe={class:`datetime`},$e=[`aria-label`],et={class:`info`},tt={key:0,class:`flex justify-start items-center gap-2 mt-2 w-full overflow-x-auto`},nt={key:1,class:`prompt mt-2`},rt={key:0},it={key:0,class:n({content:!0})},at={class:`text-[var(--el-text-color-regular)] text-xs mb-0`},ot={key:1,class:n({content:!0,failed:!0})},st={class:`flex justify-start items-center gap-4 w-full overflow-x-auto`},ct={class:n({operations:!0,"mt-2":!0,"mb-2":!0})},lt={key:0,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},ut={key:1,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},dt={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},ft={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},pt={key:2,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},mt={key:3,class:`text-[var(--el-text-color-regular)] text-xs mb-0`},ht={key:2,class:`content`},gt={key:0,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},_t={key:1,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},vt={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},yt={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},$={key:2,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},bt={key:3,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},xt={key:4,class:`text-[var(--el-text-color-regular)] text-xs mb-0`},St={key:3,class:n({content:!0})},Ct={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},wt={key:0,class:`text-[var(--el-text-color-regular)] text-xs mb-0`};function Tt(n,u,d,g,_,v){let y=l(`capability-presentation`),b=l(`delete-icon`),x=l(`el-tooltip`),S=l(`image-preview`),C=l(`time-icon`),w=l(`magic-icon`),T=l(`copy-to-clipboard`),E=l(`el-alert`),D=l(`image-wrapper`),O=l(`el-button`),k=l(`api-code-button`),A=l(`report-button`),j=l(`application-icon`),M=l(`image-icon`),N=l(`lightning-icon`),P=l(`channel-icon`),F=l(`warning-icon`),I=l(`info-icon`);return h(),s(`div`,Je,[e(`div`,Ye,[a(y,{capability:`qwenimage`,part:`avatar`,class:`avatar`})]),e(`div`,Xe,[e(`div`,Ze,[a(y,{capability:`qwenimage`,part:`name`}),e(`span`,Qe,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,$e)):o(``,!0)]),_:1},8,[`content`])]),e(`div`,et,[Array.isArray(n.modelValue?.request?.image_urls)&&n.modelValue?.request?.image_urls.length>0?(h(),s(`div`,tt,[(h(!0),s(c,null,m(n.modelValue?.request?.image_urls,(e,t)=>(h(),f(S,{key:t,url:e,name:`image-${t+1}`,closable:!1},null,8,[`url`,`name`]))),128))])):o(``,!0),n.modelValue?.request?.prompt?(h(),s(`p`,nt,[r(i(n.modelValue?.request?.prompt)+` `,1),n.modelValue?.response?o(``,!0):(h(),s(`span`,rt,` - (`+i(n.$t(`qwenimage.status.pending`))+`) `,1))])):o(``,!0)]),n.modelValue?.response?n.modelValue?.response?.success===!0?(h(),s(`div`,ot,[e(`div`,st,[(h(!0),s(c,null,m(n.images,(e,t)=>(h(),f(D,{key:t,src:e?.image_url,"raw-src":e?.image_url},null,8,[`src`,`raw-src`]))),128))]),e(`div`,ct,[a(x,{class:`box-item`,effect:`dark`,content:n.$t(`common.button.edit`),placement:`top-start`},{default:p(()=>[a(O,{type:`info`,size:`small`,class:`btn-action`,onClick:u[1]||=t(e=>n.onEdit(n.images?.[0]?.image_url),[`stop`])},{default:p(()=>[r(i(n.$t(`common.button.edit`)),1)]),_:1})]),_:1},8,[`content`]),a(k,{path:`/qwenimage/images`,body:n.apiRequest},null,8,[`body`]),a(A,{service:`qwenimage`,"target-id":n.modelValue?.id,snapshot:{prompt:n.modelValue?.request?.prompt}},null,8,[`target-id`,`snapshot`])]),a(E,{closable:!1,class:`mt-2 success`},{default:p(()=>[n.modelValue?.request?.model?(h(),s(`p`,lt,[a(j,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`qwenimage.name.model`))+`: `+i(n.shortModel(n.modelValue?.request?.model)),1)])):o(``,!0),n.modelValue?.request?.size?(h(),s(`p`,ut,[a(M,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`qwenimage.name.size`))+`: `+i(n.modelValue?.request?.size),1)])):o(``,!0),e(`p`,dt,[a(N,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`qwenimage.name.task`))+`: `+i(n.isEdit?n.$t(`qwenimage.name.edits`):n.$t(`qwenimage.name.generate`)),1)]),e(`p`,ft,[a(w,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`qwenimage.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(T,{content:n.modelValue?.id,class:`btn-copy inline-block`},null,8,[`content`])]),n.modelValue?.elapsed?(h(),s(`p`,pt,[a(C,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`qwenimage.name.elapsed`))+`: `+i(n.modelValue?.elapsed?.toFixed(2))+`s `,1)])):o(``,!0),n.modelValue?.response?.trace_id?(h(),s(`p`,mt,[a(P,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`qwenimage.name.traceId`))+`: `+i(n.modelValue?.response?.trace_id)+` `,1),a(T,{content:n.modelValue?.response?.trace_id,class:`btn-copy inline-block`},null,8,[`content`])])):o(``,!0)]),_:1})])):n.modelValue?.response?.success===!1?(h(),s(`div`,ht,[a(E,{closable:!1,class:`failure`},{template:p(()=>[a(F,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`qwenimage.name.failure`)),1)]),default:p(()=>[n.modelValue?.request?.model?(h(),s(`p`,gt,[a(j,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`qwenimage.name.model`))+`: `+i(n.shortModel(n.modelValue?.request?.model)),1)])):o(``,!0),n.modelValue?.request?.size?(h(),s(`p`,_t,[a(M,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`qwenimage.name.size`))+`: `+i(n.modelValue?.request?.size),1)])):o(``,!0),e(`p`,vt,[a(N,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`qwenimage.name.task`))+`: `+i(n.isEdit?n.$t(`qwenimage.name.edits`):n.$t(`qwenimage.name.generate`)),1)]),e(`p`,yt,[a(w,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`qwenimage.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(T,{content:n.modelValue?.id,class:`btn-copy`},null,8,[`content`])]),n.modelValue?.response?.error?.message?(h(),s(`p`,$,[a(I,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`qwenimage.name.failureReason`))+`: `+i(n.modelValue?.response?.error?.message)+` `,1),a(T,{content:n.modelValue?.response?.error?.message,class:`btn-copy`},null,8,[`content`])])):o(``,!0),n.modelValue?.elapsed?(h(),s(`p`,bt,[a(C,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`qwenimage.name.elapsed`))+`: `+i(n.modelValue?.elapsed?.toFixed(2))+`s `,1)])):o(``,!0),n.modelValue?.response?.trace_id?(h(),s(`p`,xt,[a(P,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`qwenimage.name.traceId`))+`: `+i(n.modelValue?.response?.trace_id)+` `,1),a(T,{content:n.modelValue?.response?.trace_id,class:`btn-copy`},null,8,[`content`])])):o(``,!0)]),_:1})])):(h(),s(`div`,St,[a(E,{closable:!1,class:`info`},{template:p(()=>[a(I,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`qwenimage.name.status`)),1)]),default:p(()=>[e(`p`,Ct,[a(w,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`qwenimage.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(T,{content:n.modelValue?.id,class:`btn-copy`},null,8,[`content`])]),n.modelValue?.response?.trace_id?(h(),s(`p`,wt,[a(P,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`qwenimage.name.traceId`))+`: `+i(n.modelValue?.response?.trace_id)+` `,1),a(T,{content:n.modelValue?.response?.trace_id,class:`btn-copy`},null,8,[`content`])])):o(``,!0)]),_:1})])):(h(),s(`div`,it,[a(E,{closable:!1,class:`info`},{template:p(()=>[a(C,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`qwenimage.status.pending`)),1)]),default:p(()=>[e(`p`,at,[a(w,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`qwenimage.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(T,{content:n.modelValue?.id,class:`btn-copy inline-block`},null,8,[`content`])])]),_:1})]))])])}var Et=_({name:`QwenImageRecentPanel`,components:{TaskPreview:z(qe,[[`render`,Tt],[`__scopeId`,`data-v-0aeb264f`]]),BotPlaceholder:me,NoTasks:I,ScrollList:F},props:{loading:{type:Boolean,default:!1}},emits:[`reach-top`],computed:{tasks(){return{...this.$store.state.qwenimage?.tasks,items:this.$store.state.qwenimage?.tasks?.items?.slice()}}},methods:{getScrollElement(){return this.$refs.scrollList?.getScrollElement?.()}}}),Dt={key:0},Ot={key:2,class:`w-full h-full flex items-center justify-center`};function kt(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`,Dt,[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`,Ot,[a(v)])):o(``,!0)],64)}var At=_({name:`QwenImageIndex`,components:{ConfigPanel:Ke,Layout:Ee,RecentPanel:z(Et,[[`render`,kt]]),ShowcaseResultTabs:ge},mixins:[se,_e(`qwenimage`),he(`qwenimage`)],inject:[`initialized`],data(){return{task:void 0,job:0,loading:!1}},computed:{applicationsLoading(){return this.$store.state.qwenimage?.status?.getApplications===C.Request},tasksLoading(){return this.$store.state.qwenimage?.status?.getTasks===C.Request},credential(){return this.$store.state.qwenimage?.credential},config(){return this.$store.state.qwenimage?.config},application(){return this.$store.state.qwenimage?.application},tasks(){return this.$store.state.qwenimage?.tasks}},watch:{tasks:{handler(e,t){e?.items?.length>t?.items?.length&&console.debug(`new tasks detected`)},deep:!0},initialized:{async handler(e){e&&(console.debug(`layout initialized`),await this.onGetTasks(),await this.onScrollDown(),this.job=window.setInterval(()=>{this.onPollTasks()},5e3))},immediate:!0}},async mounted(){await this.onGetService()},async unmounted(){window.clearInterval(this.job)},methods:{async onReachTop(){await ee({tasks:this.tasks,getTasks:()=>this.tasks,loading:this.loading,setLoading:e=>this.loading=e,isBlocked:()=>this.tasksLoading,fetch:e=>this.onGetTasks({createdAtMax:e}),getScrollElement:()=>this.getTasksScrollElement()})},async onGetService(){console.debug(`start onGetService`),await this.$store.dispatch(`qwenimage/getService`),console.debug(`end onGetService`)},async onGetApplication(){console.debug(`start onGetApplication`),await this.$store.dispatch(`qwenimage/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.tasksLoading){console.debug(`loading`);return}console.debug(`start onGetTasks`,e);let{limit:t=20,createdAtMin:n,createdAtMax:r}=e||{};console.debug(`limit`,t,`createdAtMin`,n,`createdAtMax`,r),await this.$store.dispatch(`qwenimage/getTasks`,{limit:t,createdAtMin:n,createdAtMax:r})},async onGenerate(){let e=Q(this.config),t=ve(`qwenimage`,e);if(t){w.error(this.$t(`common.message.${t}`));return}if(!K(this.uploadTracker,e=>this.$t(e),e=>w.warning(e))||!J())return;let n=this.credential?.token;if(!n){console.error(`no token specified`);return}w.info(this.$t(`qwenimage.message.startingTask`)),W(`qwenimage`,G.generate(e,{token:n})).then(()=>{w.success(this.$t(`qwenimage.message.startTaskSuccess`))}).catch(e=>{let t=e?.response?.data;H(e,`qwenimage`)||w.error(this.$t(`qwenimage.message.startTaskFailed`)+(t?.error?.message||``))}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})},getTasksScrollElement(){return this.$refs.recentPanel?.getScrollElement?.()}}});function jt(e,t,n,r,i,o){let s=l(`config-panel`),c=l(`recent-panel`),u=l(`showcase-result-tabs`),d=l(`layout`);return h(),f(d,null,{config:p(()=>[a(s,{onGenerate:e.onGenerate},null,8,[`onGenerate`])]),result:p(()=>[a(u,{service:`qwenimage`},{tasks:p(()=>[a(c,{ref:`recentPanel`,loading:e.loading,onReachTop:e.onReachTop},null,8,[`loading`,`onReachTop`])]),_:1})]),_:1})}var Mt=z(At,[[`render`,jt]]);export{Mt as default};
|
|
@@ -0,0 +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,S as c,T as l,at as u,bt as d,ht as f,it as p,j as m,mt as h,qt as g,rt as _,st as v,tt as y,x as ee,z as b}from"./vendor-chart-Dw-P17PN.js";import{F as x}from"./icon-CDmWyIgD.js";import{r as S,t as C}from"./select-Dxkn5fnG.js";import{t as w}from"./upload-ChEGBjQd.js";import{t as T}from"./tooltip-CsVgfK1f.js";import{t as E}from"./alert-BprQRUmf.js";import{_ as D,v as O}from"./vuex.esm-bundler-uM-kqbAF.js";import{t as k}from"./drawer-CF4BsAtW.js";import{t as A}from"./input-number-YpK_vIUu.js";import{t as j}from"./switch-FNAnbKSR.js";import{t as M}from"./check-Bfb3v7Zr.js";import{t as N}from"./clock-B6Xmh354.js";import{t as P}from"./download-aKoGQMz4.js";import{t as F}from"./hash-BKpZIJo7.js";import{t as I}from"./info-CDs2D83H.js";import{t as L}from"./languages-DFfBKj3V.js";import{t as R}from"./loader-circle-BQqfluno.js";import{a as z,i as B,n as V,o as te,r as ne,t as re}from"./pagination-BGnYVZvp.js";import{t as ie}from"./palette-CSWZ3lMh.js";import{t as ae}from"./paperclip-Ed5mDPx6.js";import{t as oe}from"./pause-BClTBQOr.js";import{t as se}from"./play-BZy52WBc.js";import{t as ce}from"./rotate-cw-CEoa6Gbp.js";import{t as le}from"./trash-2-rtHpr3JN.js";import{t as ue}from"./triangle-alert-D_wd4w3Z.js";import{t as de}from"./video-C2QohmLe.js";import{t as H}from"./wand-sparkles-CReI7Ekg.js";import{$r as fe,Ga as U,Ja as W,Wa as pe,ci as me,fi as he,ii as ge,mi as _e,ni as ve,oi as ye,ri as be,ti as xe,ui as Se}from"./constants-CVb0vrXj.js";import{Cr as G,D as K,Dr as q,Er as Ce,Fi as we,Ha as Te,Ia as Ee,Li as J,Or as De,Sr as Y,T as Oe,Xi as ke,ct as Ae,ia as je,li as Me,oi as Ne,to as X,tt as Pe,wr as Fe}from"./index-C643U2rX.js";import{t as Ie}from"./CopyToClipboard-Dc_53C_9.js";import{t as Le}from"./ReportButton-BCWM_eUv.js";import{t as Re}from"./FilePreview-C0VlAjUT.js";import{t as ze}from"./ImagePreview-QrO7VB3T.js";import{n as Be}from"./taskDrawerMixin-DyAUhFEq.js";import{t as Ve}from"./ServicePricingSummary-BnnhtPm5.js";import{t as He}from"./AudioPreview-d8-NMxq_.js";import{t as Ue}from"./VideoPlayer-Bt19ZgtM.js";import{t as We}from"./VideoPreview-DbXtGsVJ.js";import{t as Ge}from"./ScenarioPaymentMode-DUv_xCgb.js";import{t as Ke}from"./ApiCodeButton-DBR9tGBM.js";import{t as qe}from"./BotPlaceholder-Cl_V5koZ.js";import{t as Je}from"./taskPollingMixin-CcLxtz8z.js";import{t as Ye}from"./ShowcaseResultTabs-DoS1AGxi.js";import{t as Xe}from"./showcaseRecreateMixin-BvSTHecE.js";import{n as Ze,t as Qe}from"./generationInput-jeoGp56s.js";var $e=b({name:`LayoutMaestro`,components:{MagicIcon:H,ElDrawer:k,ElButton:X},mixins:[Be]}),et={class:`main flex flex-row flex-1`},tt={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)]`},nt={class:`result h-full p-4 flex-1 flex flex-col min-w-0 overflow-x-hidden bg-[var(--app-content-bg)]`};function rt(t,n,r,i,o,c){let l=u(`magic-icon`),d=u(`el-button`),m=u(`el-drawer`);return y(),s(`div`,et,[e(`div`,tt,[p(t.$slots,`config`,{},void 0,!0)]),e(`div`,nt,[p(t.$slots,`result`,{},void 0,!0)]),f(a(d,{circle:``,class:`menu`,"aria-label":t.$t(`common.button.openMenu`),title:t.$t(`common.button.openMenu`),onClick:n[0]||=e=>t.drawer=!0},{default:h(()=>[a(l,{size:`1em`,"aria-hidden":`true`,focusable:`false`})]),_:1},8,[`aria-label`,`title`]),[[ee,!t.tasksEmpty]]),a(m,{modelValue:t.drawer,"onUpdate:modelValue":n[1]||=e=>t.drawer=e,direction:`ltr`,"with-header":!1,size:`340px`,class:`generator-drawer`},{default:h(()=>[p(t.$slots,`config`,{},void 0,!0)]),_:3},8,[`modelValue`])])}var it=K($e,[[`render`,rt],[`__scopeId`,`data-v-43f3f7f4`]]),at=b({name:`MaestroFileUrlsInput`,components:{AttachmentIcon:ae,ElUpload:w,ElButton:X},mixins:[Ae,Pe],data(){return{fileList:[],uploadUrl:Ee()+`/api/v1/files/`,MAESTRO_FILE_ACCEPT:Se,MAESTRO_FILE_LIMIT:20}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},value(){return this.$store.state.maestro?.config?.file_urls||[]}},watch:{value:{immediate:!0,handler(e){let t=new Map(this.fileList.map(e=>[e?.response?.file_url||e.url,e])),n=e.map(e=>t.get(e)||{name:e.split(`/`).pop()||e,url:e,status:`success`,percentage:100,response:{file_url:e}}),r=this.fileList.filter(e=>!(e?.response?.file_url||e.url));this.fileList=[...n,...r]}}},methods:{onExceed(){O.warning(this.$t(`maestro.message.uploadExceed`))},onError(){O.error(this.$t(`maestro.message.uploadError`))},onChange(){let e=this.fileList.map(e=>e?.response?.file_url||e.url).filter(e=>!!e);this.$store.commit(`maestro/setConfig`,{...this.$store.state.maestro?.config,file_urls:e})}}});function ot(e,t,n,o,c,l){let d=u(`attachment-icon`),f=u(`el-button`),p=u(`el-upload`);return y(),s(`div`,null,[a(p,{ref:`uploader`,"file-list":e.fileList,"onUpdate:fileList":t[0]||=t=>e.fileList=t,accept:e.MAESTRO_FILE_ACCEPT,name:`file`,class:`w-full`,limit:e.MAESTRO_FILE_LIMIT,multiple:!0,"before-upload":e.beforeUploadSizeGuard,action:e.uploadUrl,headers:e.headers,"on-exceed":e.onExceed,"on-error":e.onError,"on-success":e.onChange,"on-remove":e.onChange},{default:h(()=>[a(f,{size:`small`,round:``},{default:h(()=>[a(d,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(e.$t(`maestro.button.uploadFiles`)),1)]),_:1})]),_:1},8,[`file-list`,`accept`,`limit`,`before-upload`,`action`,`headers`,`on-exceed`,`on-error`,`on-success`,`on-remove`])])}var st=K(at,[[`render`,ot]]),ct=.7;function Z(e){return Math.min(300,Math.max(5,typeof e==`number`&&Number.isFinite(e)?Math.round(e):30))}function lt(e){return Number((Z(e)*ct).toFixed(2))}var ut={"9:16":{width:15,height:26},"16:9":{width:26,height:15},"1:1":{width:20,height:20}},dt=b({name:`ConfigPanel`,components:{MagicIcon:H,ElButton:X,ElSelect:S,ElOption:C,ElInputNumber:A,ElAlert:E,ElSwitch:j,InfoIcon:z,PauseIcon:oe,PlayIcon:se,PromptTextarea:B,FileUrlsInput:st,ScenarioPaymentMode:Ge,ServicePricingSummary:Ve},emits:[`generate`],data(){return{MAESTRO_MIN_DURATION:5,MAESTRO_MAX_DURATION:300,MAESTRO_ALLOWED_SCENARIOS:xe,MAESTRO_SCENARIO_THUMBNAILS:he,MAESTRO_ALLOWED_STYLES:ve,MAESTRO_ALLOWED_VOICES:be,playing:!1,audioEl:null,quoteTimer:0,quoteRunId:0}},computed:{config(){return this.$store.state.maestro?.config},service(){return this.$store.state.maestro?.service},ratioOptions(){return fe.map(e=>({value:e,...ut[e]??{width:20,height:20}}))},isRemixing(){let e=this.config?.action;return!!e&&e!==`generate`&&!!this.config?.ref_task_id},refTaskId(){return this.config?.ref_task_id},needsRequiredUpload(){if(!this.scenarioCustomizationEnabled)return!1;let e=this.config?.scenario;if(!e||!_e.includes(e))return!1;let t=this.config?.file_urls||[];return e===`captions`?!t.some(e=>W(e)):!t.some(e=>U(e))},canGenerate(){return Qe(`maestro`,Y(this.config))&&!this.needsRequiredUpload},prompt:{get(){return this.config?.prompt},set(e){this.update({prompt:e})}},langs:{get(){return q(this.config?.langs)},set(e){this.update({langs:q(e)})}},languageOptions(){return Ce(this.$i18n.locale)},primaryLanguage:{get(){return this.langs[0]||ye[0]},set(e){this.update({langs:De(this.langs,e)})}},estimatedCredits(){return lt(this.duration||30)},aspect:{get(){return this.config?.aspect},set(e){this.update({aspect:e})}},duration:{get(){return this.config?.duration},set(e){this.update({duration:Z(e)})}},scenarioCustomizationEnabled:{get(){return this.config?.scenario_customization_enabled??!1},set(e){this.update({scenario_customization_enabled:e})}},styleCustomizationEnabled:{get(){return this.config?.style_customization_enabled??!1},set(e){this.update({style_customization_enabled:e})}},voiceCustomizationEnabled:{get(){return this.config?.voice_customization_enabled??!1},set(e){e||this.stopSample(),this.update({voice_customization_enabled:e})}},scenario:{get(){return this.config?.scenario},set(e){this.update({scenario:e})}},style:{get(){return this.config?.style},set(e){let t=e?.trim();this.update({style:!t||t.toLowerCase()===`auto`?me:t})}},voice:{get(){return this.config?.voice},set(e){this.stopSample(),this.update({voice:e||`warm-female`})}},currentSample(){return be.find(e=>e.key===this.voice)?.sample},walletMode(){return we()&&J(`maestro`).mode===`wallet`}},watch:{walletMode:{handler(e){e&&this.scheduleQuote()},immediate:!0},config:{handler(){this.walletMode&&this.scheduleQuote()},deep:!0},voiceCustomizationEnabled(e){e||this.stopSample()},voice(){this.stopSample()}},mounted(){let e=q(this.config?.langs);this.update({action:this.config?.action??`generate`,langs:e,aspect:this.config?.aspect??`9:16`,duration:Z(this.config?.duration),scenario:this.config?.scenario||`narrated`})},beforeUnmount(){this.stopSample(),window.clearTimeout(this.quoteTimer),this.quoteRunId+=1},methods:{scheduleQuote(){window.clearTimeout(this.quoteTimer),this.quoteRunId+=1;let e=J(`maestro`);e.quoteUsdc=void 0,e.quoteLoading=!1,this.canGenerate&&(this.quoteTimer=window.setTimeout(this.refreshQuote,350))},async refreshQuote(){if(!this.canGenerate)return;let e=J(`maestro`),t=++this.quoteRunId;e.quoteLoading=!0,e.quoteUsdc=void 0;try{let n=await G.quote(Y(this.config));t===this.quoteRunId&&e.mode===`wallet`&&this.canGenerate&&(e.quoteUsdc=n.amountUsdc)}catch(e){console.warn(`x402 quote failed`,e)}finally{t===this.quoteRunId&&(e.quoteLoading=!1)}},update(e){this.$store.commit(`maestro/setConfig`,{...this.config,...e})},onClearRemix(){this.update({action:ge,ref_task_id:void 0})},onToggleSample(){let e=this.currentSample;if(e){if(this.audioEl||(this.audioEl=d(new Audio),this.audioEl.addEventListener(`ended`,()=>{this.playing=!1})),this.playing){this.audioEl.pause(),this.playing=!1;return}this.audioEl.src!==e&&(this.audioEl.src=e),this.audioEl.currentTime=0,this.audioEl.play().then(()=>{this.playing=!0}).catch(()=>{this.playing=!1})}},stopSample(){this.audioEl&&(this.audioEl.pause(),this.audioEl.currentTime=0),this.playing=!1},onGenerate(){this.$emit(`generate`)}}}),ft={class:`flex flex-col h-full`},pt={class:`flex-1 overflow-y-auto p-5`},mt={class:`text-xs mb-1`},ht={class:`field-block mb-5`},gt={class:`field-head`},_t={class:`field-title font-bold`},vt={class:`field-block mb-5`},yt={class:`field-head`},bt={class:`field-title font-bold`},xt={class:`field-block mb-5`},St={class:`field-head`},Ct={class:`field-title font-bold`},wt=[`aria-label`],Tt=[`aria-checked`,`aria-label`,`onClick`,`onKeydown`],Et={class:`ratio-preview`},Dt={class:`ratio-name`},Ot={class:`field-row mb-4`},kt={class:`field-head`},At={class:`field-title font-bold`},jt={class:`custom-field`},Mt={class:`custom-field-header mb-2`},Nt={class:`field-head`},Pt={class:`field-title font-bold`},Ft=[`aria-label`,`aria-disabled`],It=[`aria-checked`,`aria-disabled`,`aria-label`,`tabindex`,`onClick`,`onKeydown`],Lt={class:`scenario-thumb`},Rt=[`src`,`alt`],zt={class:`scenario-name`},Bt={class:`custom-field`},Vt={class:`custom-field-header mb-2`},Ht={class:`field-head`},Ut={class:`field-title font-bold`},Wt={class:`custom-field`},Gt={class:`custom-field-header mb-2`},Kt={class:`field-head`},qt={class:`field-title font-bold`},Jt={class:`voice-row`},Yt={class:`flex flex-col items-center justify-center px-5 pb-5`};function Xt(d,f,p,v,ee,b){let x=u(`magic-icon`),S=u(`el-button`),C=u(`el-alert`),w=u(`prompt-textarea`),T=u(`info-icon`),E=u(`file-urls-input`),D=u(`el-option`),O=u(`el-select`),k=u(`el-input-number`),A=u(`el-switch`),j=u(`pause-icon`),M=u(`play-icon`),N=u(`scenario-payment-mode`),P=u(`service-pricing-summary`);return y(),s(`div`,ft,[e(`div`,pt,[d.isRemixing?(y(),m(C,{key:0,closable:!1,type:`info`,class:`mb-5`},{default:h(()=>[e(`p`,mt,[a(x,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(d.$t(`maestro.name.remixing`))+`: `+i(d.refTaskId),1)]),a(S,{size:`small`,text:``,onClick:d.onClearRemix},{default:h(()=>[r(i(d.$t(`maestro.button.cancelRemix`)),1)]),_:1},8,[`onClick`])]),_:1})):o(``,!0),a(w,{modelValue:d.prompt,"onUpdate:modelValue":f[0]||=e=>d.prompt=e,class:`mb-5`,title:d.$t(`maestro.name.prompt`),info:d.$t(`maestro.description.prompt`),placeholder:d.$t(`maestro.placeholder.prompt`),"min-rows":6},null,8,[`modelValue`,`title`,`info`,`placeholder`]),e(`div`,ht,[e(`div`,gt,[e(`h2`,_t,i(d.$t(`maestro.name.files`)),1),a(T,{content:d.$t(`maestro.description.files`),class:`ml-1`},null,8,[`content`])]),a(E)]),e(`div`,vt,[e(`div`,yt,[e(`h2`,bt,i(d.$t(`maestro.name.langs`)),1),a(T,{content:d.$t(`maestro.description.langs`),class:`ml-1`},null,8,[`content`])]),a(O,{modelValue:d.primaryLanguage,"onUpdate:modelValue":f[1]||=e=>d.primaryLanguage=e,class:`w-full`,"aria-label":d.$t(`maestro.name.langs`)},{default:h(()=>[(y(!0),s(l,null,_(d.languageOptions,e=>(y(),m(D,{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`aria-label`])]),e(`div`,xt,[e(`div`,St,[e(`h2`,Ct,i(d.$t(`maestro.name.aspect`)),1)]),e(`div`,{class:`ratio-items`,role:`radiogroup`,"aria-label":d.$t(`maestro.name.aspect`)},[(y(!0),s(l,null,_(d.ratioOptions,r=>(y(),s(`div`,{key:r.value,class:n([`ratio-item`,{active:d.aspect===r.value}]),role:`radio`,"aria-checked":d.aspect===r.value,"aria-label":r.value,tabindex:`0`,onClick:e=>d.aspect=r.value,onKeydown:[c(t(e=>d.aspect=r.value,[`prevent`]),[`enter`]),c(t(e=>d.aspect=r.value,[`prevent`]),[`space`])]},[e(`div`,Et,[e(`div`,{class:`ratio-rect`,style:g({width:r.width+`px`,height:r.height+`px`})},null,4)]),e(`p`,Dt,i(r.value),1)],42,Tt))),128))],8,wt)]),e(`div`,Ot,[e(`div`,kt,[e(`h2`,At,i(d.$t(`maestro.name.duration`)),1),a(T,{content:d.$t(`maestro.description.duration`),class:`ml-1`},null,8,[`content`])]),a(k,{modelValue:d.duration,"onUpdate:modelValue":f[2]||=e=>d.duration=e,class:`field-control`,min:d.MAESTRO_MIN_DURATION,max:d.MAESTRO_MAX_DURATION,step:5,"controls-position":`right`},null,8,[`modelValue`,`min`,`max`])]),e(`div`,jt,[e(`div`,Mt,[e(`div`,Nt,[e(`h2`,Pt,i(d.$t(`maestro.name.customizeScenario`)),1),a(T,{content:d.$t(`maestro.description.scenario`),class:`ml-1`},null,8,[`content`])]),a(A,{modelValue:d.scenarioCustomizationEnabled,"onUpdate:modelValue":f[3]||=e=>d.scenarioCustomizationEnabled=e,"aria-label":d.$t(`maestro.name.customizeScenario`)},null,8,[`modelValue`,`aria-label`])]),e(`div`,{class:n([`scenario-cards`,{"is-disabled":!d.scenarioCustomizationEnabled}]),role:`radiogroup`,"aria-label":d.$t(`maestro.name.scenario`),"aria-disabled":!d.scenarioCustomizationEnabled},[(y(!0),s(l,null,_(d.MAESTRO_ALLOWED_SCENARIOS,r=>(y(),s(`div`,{key:r,class:n([`scenario-card`,{active:d.scenarioCustomizationEnabled&&d.scenario===r,disabled:!d.scenarioCustomizationEnabled}]),role:`radio`,"aria-checked":d.scenarioCustomizationEnabled&&d.scenario===r,"aria-disabled":!d.scenarioCustomizationEnabled,"aria-label":d.$t(`maestro.option.scenario.${r}`),tabindex:d.scenarioCustomizationEnabled?0:-1,onClick:e=>d.scenarioCustomizationEnabled&&(d.scenario=r),onKeydown:[c(t(e=>d.scenarioCustomizationEnabled&&(d.scenario=r),[`prevent`]),[`enter`]),c(t(e=>d.scenarioCustomizationEnabled&&(d.scenario=r),[`prevent`]),[`space`])]},[e(`div`,Lt,[e(`img`,{src:d.MAESTRO_SCENARIO_THUMBNAILS[r],alt:d.$t(`maestro.option.scenario.${r}`),loading:`lazy`},null,8,Rt)]),e(`p`,zt,i(d.$t(`maestro.option.scenario.${r}`)),1)],42,It))),128))],10,Ft),d.needsRequiredUpload?(y(),m(C,{key:0,title:d.$t(d.scenario===`avatar`?`maestro.message.avatarNeedsImage`:`maestro.message.captionsNeedVideo`),type:`warning`,closable:!1,"show-icon":``,class:`mt-2`},null,8,[`title`])):o(``,!0)]),e(`div`,Bt,[e(`div`,Vt,[e(`div`,Ht,[e(`h2`,Ut,i(d.$t(`maestro.name.customizeStyle`)),1),a(T,{content:d.$t(`maestro.description.style`),class:`ml-1`},null,8,[`content`])]),a(A,{modelValue:d.styleCustomizationEnabled,"onUpdate:modelValue":f[4]||=e=>d.styleCustomizationEnabled=e,"aria-label":d.$t(`maestro.name.customizeStyle`)},null,8,[`modelValue`,`aria-label`])]),a(O,{modelValue:d.style,"onUpdate:modelValue":f[5]||=e=>d.style=e,class:`w-full`,filterable:``,"allow-create":``,"default-first-option":``,disabled:!d.styleCustomizationEnabled,"aria-label":d.$t(`maestro.name.customizeStyle`),placeholder:d.$t(`maestro.placeholder.select`)},{default:h(()=>[(y(!0),s(l,null,_(d.MAESTRO_ALLOWED_STYLES,e=>(y(),m(D,{key:e,label:d.$t(`maestro.option.style.${e}`),value:e},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`disabled`,`aria-label`,`placeholder`])]),e(`div`,Wt,[e(`div`,Gt,[e(`div`,Kt,[e(`h2`,qt,i(d.$t(`maestro.name.customizeVoice`)),1),a(T,{content:d.$t(`maestro.description.voice`),class:`ml-1`},null,8,[`content`])]),a(A,{modelValue:d.voiceCustomizationEnabled,"onUpdate:modelValue":f[6]||=e=>d.voiceCustomizationEnabled=e,"aria-label":d.$t(`maestro.name.customizeVoice`)},null,8,[`modelValue`,`aria-label`])]),e(`div`,Jt,[a(O,{modelValue:d.voice,"onUpdate:modelValue":f[7]||=e=>d.voice=e,class:`voice-select`,disabled:!d.voiceCustomizationEnabled,"aria-label":d.$t(`maestro.name.customizeVoice`),placeholder:d.$t(`maestro.placeholder.select`)},{default:h(()=>[(y(!0),s(l,null,_(d.MAESTRO_ALLOWED_VOICES,e=>(y(),m(D,{key:e.key,label:d.$t(`maestro.option.voice.${e.key}`),value:e.key},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`disabled`,`aria-label`,`placeholder`]),a(S,{class:`voice-play`,disabled:!d.voiceCustomizationEnabled||!d.currentSample,title:d.$t(`maestro.button.preview`),"aria-label":d.$t(`maestro.button.preview`),onClick:d.onToggleSample},{default:h(()=>[d.playing?(y(),m(j,{key:0,size:`1em`,"aria-hidden":`true`,focusable:`false`})):(y(),m(M,{key:1,size:`1em`,"aria-hidden":`true`,focusable:`false`}))]),_:1},8,[`disabled`,`title`,`aria-label`,`onClick`])])])]),e(`div`,Yt,[a(N,{scenario:`maestro`}),d.walletMode?o(``,!0):(y(),m(P,{key:0,value:d.estimatedCredits,service:d.service},null,8,[`value`,`service`])),a(S,{type:`primary`,class:`btn w-full`,round:``,disabled:!d.canGenerate,onClick:d.onGenerate},{default:h(()=>[a(x,{class:`mr-2`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(d.$t(`maestro.button.generate`)),1)]),_:1},8,[`disabled`,`onClick`])])])}var Zt=K(dt,[[`render`,Xt],[`__scopeId`,`data-v-d9acbf89`]]),Qt=50,$t=1e4,Q=new Map,$=new Map,en=(e,t)=>{if(Q.set(e,t),Q.size>Qt){let e=Q.keys().next().value;e&&Q.delete(e)}};async function tn(e,t){let n=`${t.credentialKey}:${e}`,r=Q.get(n);if(r)return r;let i=$.get(n);if(i)return i.promise;let a=new AbortController,o,s={controller:a,promise:void 0},c=G.task(e,{token:t.token,signal:a.signal}).then(({data:e})=>{if(!a.signal.aborted)return en(n,e),e}).catch(t=>{a.signal.aborted||console.warn(`failed to load maestro remix reference task`,e,t)}),l=new Promise(e=>{o=window.setTimeout(()=>{a.abort(),e(void 0)},$t)});return s.promise=Promise.race([c,l]).finally(()=>{o!==void 0&&window.clearTimeout(o),$.get(n)===s&&$.delete(n)}),$.set(n,s),s.promise}var nn=[`plan`,`source`,`voice`,`compose`,`render`,`deliver`];function rn(e){if(!e)return-1;let t=e.toLowerCase(),n=nn.indexOf(t);return n>=0?n:/plan|storyboard|script|brief/.test(t)?0:/source|search|image|photo|asset|media/.test(t)?1:/voice|tts|audio|narrat/.test(t)?2:/compose|composit|build|layout|scene/.test(t)?3:/render|encode/.test(t)?4:/deliver|upload|cdn|complete|done|finish/.test(t)?5:-1}var an=b({name:`ProgressSteps`,components:{ElIcon:x,Loading:R,Check:M},props:{modelValue:{type:Object,required:!0}},computed:{currentIndex(){let e=this.modelValue?.response?.data?.progress||[],t=-1;for(let n of e)t=Math.max(t,rn(n?.stage));return t=Math.max(t,rn(this.modelValue?.response?.data?.stage)),Math.max(t,0)},detail(){let e=this.modelValue?.response?.data;if(e?.activity)return e.activity;let t=e?.progress||[];for(let e=t.length-1;e>=0;e--)if(t[e]?.message)return t[e]?.message},steps(){return nn.map(e=>({key:e}))}},methods:{stateOf(e){let t=this.currentIndex;return e<t?`done`:e===t?`active`:`pending`}}}),on={class:`progress-steps`,"aria-live":`polite`},sn=[`aria-current`],cn={class:`ico`},ln={class:`txt`},un={key:0,class:`detail`};function dn(t,r,c,d,f,p){let g=u(`loading`),v=u(`el-icon`),ee=u(`check`);return y(),s(`div`,on,[(y(!0),s(l,null,_(t.steps,(r,c)=>(y(),s(`div`,{key:r.key,class:n([`step`,t.stateOf(c)]),"aria-current":c===t.currentIndex?`step`:void 0},[e(`span`,cn,[c===t.currentIndex?(y(),m(v,{key:0,class:`is-loading`,"aria-label":t.$t(`maestro.step.${r.key}`)},{default:h(()=>[a(g,{size:`1em`,"aria-hidden":`true`,focusable:`false`})]),_:1},8,[`aria-label`])):c<t.currentIndex?(y(),m(v,{key:1},{default:h(()=>[a(ee,{size:`1em`,"aria-hidden":`true`,focusable:`false`})]),_:1})):o(``,!0)]),e(`span`,ln,i(t.$t(`maestro.step.${r.key}`)),1)],10,sn))),128)),t.detail?(y(),s(`p`,un,i(t.detail),1)):o(``,!0)])}var fn=K(an,[[`render`,dn],[`__scopeId`,`data-v-8a883977`]]),pn=[`succeeded`,`failed`],mn=[1e3,3e3],hn=b({name:`TaskPreview`,components:{DeleteIcon:le,ElTooltip:T,ChannelIcon:F,DownloadIcon:P,InfoIcon:I,LanguageIcon:L,MagicIcon:H,RedoIcon:ce,TimeIcon:N,WarningIcon:ue,CopyToClipboard:Ie,ElAlert:E,VideoPlayer:Ue,ElButton:X,ApiCodeButton:Ke,ReportButton:Le,ImagePreview:ze,AudioPreview:He,VideoPreview:We,FilePreview:Re,ProgressSteps:fn},props:{modelValue:{type:Object,required:!0}},data(){return{fetchedReferenceTask:void 0,fetchedReferenceKey:void 0,referenceLoadAttempt:0,referenceLoadFailed:!1,referenceLoadTimer:void 0,referenceLoadVersion:0}},computed:{variants(){return this.modelValue?.response?.data?.variants||[]},files(){let e=[...this.modelValue?.request?.file_urls||[]];if(this.referenceTaskId)for(let t of this.referenceTask?.response?.data?.variants||[])t.output_url&&e.push(t.output_url);return[...new Set(e)].filter(e=>!!e).map(e=>{let t=e.split(`?`)[0].split(`#`)[0],n=U(t)?`image`:W(t)?`video`:pe(t)?`audio`:`file`;return{url:e,name:this.fileName(t),kind:n}})},referenceTaskId(){let e=this.modelValue?.request;return e?.action===`remix`?e?.ref_task_id:void 0},referenceLoadKey(){let e=this.$store.state.maestro?.credential,t=e?.token;if(!(!this.referenceTaskId||!t))return JSON.stringify([this.referenceTaskId,e?.id||e?.user_id||t,t])},referenceTask(){if(this.referenceTaskId)return this.$store.state.maestro?.tasks?.items?.find(e=>e.id===this.referenceTaskId)||(this.fetchedReferenceKey===this.referenceLoadKey?this.fetchedReferenceTask:void 0)},isTerminal(){return pn.includes(this.modelValue?.status||``)},traceId(){return this.modelValue?.trace_id||this.modelValue?.response?.trace_id},progressPct(){let e=this.modelValue?.response?.data?.progress,t=e?.length?e[e.length-1]:void 0;return typeof t?.pct==`number`?t.pct:void 0},progressText(){return this.progressPct===void 0?this.statusLabel:`${this.progressPct}%`},statusLabel(){let e=`maestro.status.${this.modelValue?.status||`pending`}`,t=this.$t(e);return t===e?this.$t(`maestro.status.processing`):t},failureReason(){let e=this.modelValue?.response?.error;if(e)return typeof e==`string`?e:e?.message},requestParams(){let e=this.modelValue?.request;if(!e)return[];let t=[];return e.action&&t.push({icon:d(H),label:this.$t(`maestro.name.mode`),value:this.optionLabel(`maestro.option.action`,e.action)}),e.scenario&&t.push({icon:d(de),label:this.$t(`maestro.name.scenario`),value:this.optionLabel(`maestro.option.scenario`,e.scenario)}),e.style&&t.push({icon:d(ie),label:this.$t(`maestro.name.style`),value:this.optionLabel(`maestro.option.style`,e.style)}),e.aspect&&t.push({icon:d(te),label:this.$t(`maestro.name.aspect`),value:e.aspect}),e.duration&&t.push({icon:d(N),label:this.$t(`maestro.name.duration`),value:`${e.duration}s`}),e.langs?.length&&t.push({icon:d(L),label:this.$t(`maestro.name.langs`),value:e.langs.join(` · `)}),t}},watch:{referenceLoadKey:{immediate:!0,handler(e){this.resetReferenceLoad(),e&&!this.referenceTask&&this.loadReferenceTask(e)}}},beforeUnmount(){this.resetReferenceLoad()},methods:{async onDelete(){let e=this.modelValue?.id;if(e){try{await Te.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(`maestro/deleteTask`,{id:e}),O.success(this.$t(`common.message.deleteTaskSuccess`))}catch{O.error(this.$t(`common.message.deleteTaskFailed`))}}},resetReferenceLoad(){this.referenceLoadTimer!==void 0&&window.clearTimeout(this.referenceLoadTimer),this.referenceLoadTimer=void 0,this.referenceLoadVersion+=1,this.referenceLoadAttempt=0,this.referenceLoadFailed=!1,this.fetchedReferenceTask=void 0,this.fetchedReferenceKey=void 0},async loadReferenceTask(e){if(e!==this.referenceLoadKey||this.referenceTask)return;let t=this.$store.state.maestro?.credential,n=t?.token,r=this.referenceTaskId;if(!r||!n)return;let i=t?.id||t?.user_id||n,a=this.referenceLoadVersion;this.referenceLoadAttempt+=1;let o=await tn(r,{token:n,credentialKey:i});if(a!==this.referenceLoadVersion||e!==this.referenceLoadKey)return;if(o){this.fetchedReferenceTask=o,this.fetchedReferenceKey=e,this.referenceLoadFailed=!1;return}let s=mn[this.referenceLoadAttempt-1];s===void 0?this.referenceLoadFailed=!0:this.referenceLoadTimer=window.setTimeout(()=>{this.referenceLoadTimer=void 0,this.loadReferenceTask(e)},s)},retryReferenceTask(){let e=this.referenceLoadKey;this.resetReferenceLoad(),e&&this.loadReferenceTask(e)},optionLabel(e,t){let n=`${e}.${t}`,r=this.$t(n);return r===n?t:r},fileName(e){let t=e.substring(e.lastIndexOf(`/`)+1);try{return decodeURIComponent(t)||e}catch{return t||e}},onDownload(e,t){e?.stopPropagation(),window.open(t,`_blank`)},onRemix(){if(!this.modelValue)return;let e=Fe(this.$store.state.maestro?.config,this.modelValue);this.$store.commit(`maestro/setConfig`,e),O.info(this.$t(`maestro.message.remixLoaded`))}}}),gn={class:`preview`},_n={class:`left`},vn={class:`main`},yn={class:`bot`},bn={class:`datetime`},xn=[`aria-label`],Sn={class:`info`},Cn={key:0,class:`flex justify-start items-center gap-2 mt-2 w-full overflow-x-auto`},wn=[`href`,`title`],Tn={key:1,class:`reference-load-failed flex items-center gap-1 mt-2 text-xs text-[var(--el-text-color-secondary)]`},En={key:2,class:`prompt mt-2`},Dn={key:0,class:`progress-pct`},On={key:0,class:`content`},kn={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},An={key:0,class:`text-[var(--el-text-color-regular)] text-xs mb-0`},jn={key:1,class:`content`},Mn={class:`text-xs text-[var(--el-text-color-secondary)] mb-1`},Nn={key:0},Pn={class:`operations`},Fn={key:0},In={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Ln={key:0,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Rn={key:1,class:`text-[var(--el-text-color-regular)] text-xs mb-0`},zn={key:2,class:`content`},Bn={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Vn={key:0,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Hn={key:1,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Un={key:2,class:`text-[var(--el-text-color-regular)] text-xs mb-0`};function Wn(c,d,f,p,g,ee){let b=u(`capability-presentation`),x=u(`delete-icon`),S=u(`el-tooltip`),C=u(`image-preview`),w=u(`video-preview`),T=u(`audio-preview`),E=u(`file-preview`),D=u(`info-icon`),O=u(`redo-icon`),k=u(`el-button`),A=u(`progress-steps`),j=u(`magic-icon`),M=u(`copy-to-clipboard`),N=u(`channel-icon`),P=u(`el-alert`),F=u(`language-icon`),I=u(`video-player`),L=u(`download-icon`),R=u(`api-code-button`),z=u(`report-button`),B=u(`time-icon`),V=u(`warning-icon`);return y(),s(`div`,gn,[e(`div`,_n,[a(b,{capability:`maestro`,part:`avatar`,class:`avatar`})]),e(`div`,vn,[e(`div`,yn,[a(b,{capability:`maestro`,part:`name`}),e(`span`,bn,i(c.$dayjs.format(``+new Date(parseFloat((c.modelValue?.created_at||``).toString())*1e3))),1),a(S,{effect:`dark`,content:c.$t(`common.button.delete`),placement:`top`},{default:h(()=>[c.modelValue?.id?(y(),s(`button`,{key:0,type:`button`,class:`btn-delete`,"aria-label":c.$t(`common.button.delete`),onClick:d[0]||=t((...e)=>c.onDelete&&c.onDelete(...e),[`stop`])},[a(x,{size:`1em`,"aria-hidden":`true`,focusable:`false`})],8,xn)):o(``,!0)]),_:1},8,[`content`])]),e(`div`,Sn,[c.files.length?(y(),s(`div`,Cn,[(y(!0),s(l,null,_(c.files,(e,t)=>(y(),s(l,{key:t},[e.kind===`image`?(y(),m(C,{key:0,url:e.url,name:e.name,closable:!1},null,8,[`url`,`name`])):e.kind===`video`?(y(),m(w,{key:1,url:e.url,name:e.name},null,8,[`url`,`name`])):e.kind===`audio`?(y(),m(T,{key:2,url:e.url,name:e.name},null,8,[`url`,`name`])):(y(),s(`a`,{key:3,href:e.url,title:e.name,target:`_blank`,rel:`noopener noreferrer`,class:`shrink-0 no-underline`},[a(E,{name:e.name,closable:!1},null,8,[`name`])],8,wn))],64))),128))])):o(``,!0),c.referenceLoadFailed&&c.referenceTaskId&&!c.referenceTask?(y(),s(`div`,Tn,[a(D,{size:`1em`,"aria-hidden":`true`,focusable:`false`}),e(`span`,null,i(c.$t(`maestro.name.files`))+`: `+i(c.$t(`maestro.name.failure`)),1),a(k,{class:`reference-retry`,size:`small`,text:``,circle:``,title:c.$t(`codingBridge.session.retry`),"aria-label":c.$t(`codingBridge.session.retry`),onClick:c.retryReferenceTask},{default:h(()=>[a(O,{size:`1em`,"aria-hidden":`true`,focusable:`false`})]),_:1},8,[`title`,`aria-label`,`onClick`])])):o(``,!0),c.modelValue?.request?.prompt?(y(),s(`p`,En,[r(i(c.modelValue?.request?.prompt)+` `,1),c.isTerminal?o(``,!0):(y(),s(`span`,Dn,` · `+i(c.progressText),1))])):o(``,!0)]),c.isTerminal?o(``,!0):(y(),s(`div`,On,[a(P,{closable:!1,class:`mt-2 processing`},{default:h(()=>[a(A,{"model-value":c.modelValue},null,8,[`model-value`]),(y(!0),s(l,null,_(c.requestParams,(e,t)=>(y(),s(`p`,{key:`param-${t}`,class:n([`text-[var(--el-text-color-regular)] text-xs mb-2`,{"mt-3":t===0}])},[(y(),m(v(e.icon),{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`})),r(` `+i(e.label)+`: `+i(e.value),1)],2))),128)),e(`p`,kn,[a(j,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(c.$t(`maestro.name.taskId`))+`: `+i(c.modelValue?.id)+` `,1),a(M,{content:c.modelValue?.id},null,8,[`content`])]),c.traceId?(y(),s(`p`,An,[a(N,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(c.$t(`maestro.name.traceId`))+`: `+i(c.traceId)+` `,1),a(M,{content:c.traceId},null,8,[`content`])])):o(``,!0)]),_:1})])),c.modelValue?.response?.success===!0&&c.variants.length?(y(),s(`div`,jn,[(y(!0),s(l,null,_(c.variants,(t,n)=>(y(),s(`div`,{key:n,class:`mb-4`},[e(`p`,Mn,[a(F,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(i(t.lang),1),t.title?(y(),s(`span`,Nn,` · `+i(t.title),1)):o(``,!0)]),t.output_url?(y(),m(I,{key:0,src:t.output_url},null,8,[`src`])):o(``,!0)]))),128)),e(`div`,Pn,[(y(!0),s(l,null,_(c.variants,(e,t)=>(y(),s(l,{key:t},[e.output_url?(y(),m(k,{key:0,type:`info`,size:`small`,class:`btn-action`,onClick:t=>c.onDownload(t,e.output_url)},{default:h(()=>[a(L,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(c.$t(`maestro.button.download`)),1),c.variants.length>1?(y(),s(`span`,Fn,` · `+i(e.lang),1)):o(``,!0)]),_:2},1032,[`onClick`])):o(``,!0)],64))),128)),a(k,{size:`small`,type:`primary`,class:`btn-action`,onClick:c.onRemix},{default:h(()=>[a(j,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(c.$t(`maestro.button.remix`)),1)]),_:1},8,[`onClick`]),a(R,{path:`/maestro/videos`,body:c.modelValue?.request},null,8,[`body`]),a(z,{service:`maestro`,"target-id":c.modelValue?.id,snapshot:{prompt:c.modelValue?.request?.prompt}},null,8,[`target-id`,`snapshot`])]),a(P,{closable:!1,class:`mt-2 success`},{default:h(()=>[(y(!0),s(l,null,_(c.requestParams,(e,t)=>(y(),s(`p`,{key:`param-${t}`,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},[(y(),m(v(e.icon),{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`})),r(` `+i(e.label)+`: `+i(e.value),1)]))),128)),e(`p`,In,[a(j,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(c.$t(`maestro.name.taskId`))+`: `+i(c.modelValue?.id)+` `,1),a(M,{content:c.modelValue?.id},null,8,[`content`])]),c.modelValue?.elapsed?(y(),s(`p`,Ln,[a(B,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(c.$t(`maestro.name.elapsed`))+`: `+i(c.modelValue?.elapsed?.toFixed(2))+`s `,1)])):o(``,!0),c.traceId?(y(),s(`p`,Rn,[a(N,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(c.$t(`maestro.name.traceId`))+`: `+i(c.traceId)+` `,1),a(M,{content:c.traceId},null,8,[`content`])])):o(``,!0)]),_:1})])):o(``,!0),c.modelValue?.response?.success===!1?(y(),s(`div`,zn,[a(P,{closable:!1,class:`failure`},{template:h(()=>[a(V,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(c.$t(`maestro.name.failure`)),1)]),default:h(()=>[(y(!0),s(l,null,_(c.requestParams,(e,t)=>(y(),s(`p`,{key:`param-${t}`,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},[(y(),m(v(e.icon),{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`})),r(` `+i(e.label)+`: `+i(e.value),1)]))),128)),e(`p`,Bn,[a(j,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(c.$t(`maestro.name.taskId`))+`: `+i(c.modelValue?.id)+` `,1),a(M,{content:c.modelValue?.id},null,8,[`content`])]),c.failureReason?(y(),s(`p`,Vn,[a(D,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(c.$t(`maestro.name.failureReason`))+`: `+i(c.failureReason),1)])):o(``,!0),c.modelValue?.elapsed?(y(),s(`p`,Hn,[a(B,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(c.$t(`maestro.name.elapsed`))+`: `+i(c.modelValue?.elapsed?.toFixed(2))+`s `,1)])):o(``,!0),c.traceId?(y(),s(`p`,Un,[a(N,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(c.$t(`maestro.name.traceId`))+`: `+i(c.traceId)+` `,1),a(M,{content:c.traceId},null,8,[`content`])])):o(``,!0)]),_:1})])):o(``,!0)])])}var Gn=b({name:`RecentPanel`,components:{TaskPreview:K(hn,[[`render`,Wn],[`__scopeId`,`data-v-ef9ae897`]]),NoTasks:ne,BotPlaceholder:qe,ScrollList:V},props:{loading:{type:Boolean,default:!1}},emits:[`reach-top`],computed:{tasks(){return{...this.$store.state.maestro?.tasks,items:this.$store.state.maestro?.tasks?.items?.slice()}}},methods:{getScrollElement(){return this.$refs.scrollList?.getScrollElement?.()}}}),Kn={key:0},qn={key:2,class:`w-full h-full flex items-center justify-center`};function Jn(e,t,n,r,i,c){let d=u(`bot-placeholder`),f=u(`task-preview`),p=u(`scroll-list`),g=u(`no-tasks`);return y(),s(l,null,[e.tasks?.items===void 0?(y(),s(`div`,Kn,[a(d)])):e.tasks?.items?.length&&e.tasks?.items?.length>0?(y(),m(p,{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:h(()=>[(y(!0),s(l,null,_(e.tasks?.items,(e,t)=>(y(),m(f,{key:t,"model-value":e},null,8,[`model-value`]))),128))]),_:1},8,[`loading`])):o(``,!0),e.tasks?.items?.length===0?(y(),s(`div`,qn,[a(g)])):o(``,!0)],64)}var Yn=b({name:`MaestroIndex`,components:{ConfigPanel:Zt,Layout:it,RecentPanel:K(Gn,[[`render`,Jn]]),ShowcaseResultTabs:Ye},mixins:[Xe(`maestro`),Je(`maestro`,!1)],inject:[`initialized`],data(){return{job:0,loadingMore:!1,fetchingTasks:!1,walletTaskIds:[]}},computed:{applicationsLoading(){return this.$store.state.maestro?.status?.getApplications===D.Request},tasksLoading(){return this.$store.state.maestro?.status?.getTasks===D.Request||this.fetchingTasks},credential(){return this.$store.state.maestro.credential},config(){return this.$store.state.maestro.config},tasks(){return this.$store.state.maestro.tasks},walletMode(){return we()&&J(`maestro`).mode===`wallet`}},watch:{walletMode:{async handler(e,t){if(!(t===void 0||e===t)){if(this.$store.commit(`maestro/setTasks`,void 0),e&&!this.job&&(this.job=window.setInterval(this.onPollTasks,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.onPollTasks,5e3))},immediate:!0}},async mounted(){await this.onGetService()},async unmounted(){window.clearInterval(this.job)},methods:{async onReachTop(){await re({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(){await this.$store.dispatch(`maestro/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(`maestro/getTasks`,{limit:t,createdAtMin:n,createdAtMax:r,...this.walletMode&&!this.credential?.token?{mode:`x402`,ids:this.walletTaskIds}:{}})}finally{this.fetchingTasks=!1}},async onGenerate(){let e=Y(this.config),t=Ze(`maestro`,e);if(t){O.error(this.$t(`common.message.${t}`));return}let n;if(this.walletMode){let t=this.getWalletContext();if(!t){O.warning(this.$t(`common.x402Scenario.connectWalletFirst`));return}n=G.generate(e,{mode:`x402`,x402:{wallet:t,confirm:e=>this.confirmWalletPayment(e),identityToken:this.credential?.token}})}else{if(!je())return;let t=this.credential?.token;if(!t)return;n=G.generate(e,{token:t})}O.info(this.$t(`maestro.message.startingTask`)),ke(`maestro`,n).then(e=>{let t=e?.data?.task_id;this.walletMode&&!this.credential?.token&&t&&!this.walletTaskIds.includes(t)&&this.walletTaskIds.unshift(t),O.success(this.$t(`maestro.message.startTaskSuccess`))}).catch(e=>{e instanceof Ne||Oe(e,`maestro`)||(this.walletMode?O.error(this.$t(`common.x402Scenario.paymentFailed`)):O.error(this.$t(`maestro.message.startTaskFailed`)))}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})},getWalletContext(){return Me(this.$wallet)},async confirmWalletPayment(e){return Te.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 Xn(e,t,n,r,i,o){let s=u(`config-panel`),c=u(`recent-panel`),l=u(`showcase-result-tabs`),d=u(`layout`);return y(),m(d,null,{config:h(()=>[a(s,{onGenerate:e.onGenerate},null,8,[`onGenerate`])]),result:h(()=>[a(l,{service:`maestro`},{tasks:h(()=>[a(c,{ref:`recentPanel`,loading:e.loadingMore,onReachTop:e.onReachTop},null,8,[`loading`,`onReachTop`])]),_:1})]),_:1})}var Zn=K(Yn,[[`render`,Xn]]);export{Zn as default};
|
|
@@ -0,0 +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-Dxkn5fnG.js";import{t as b}from"./upload-ChEGBjQd.js";import{t as x}from"./tooltip-CsVgfK1f.js";import{t as S}from"./alert-BprQRUmf.js";import{_ as C,v as w}from"./vuex.esm-bundler-uM-kqbAF.js";import{t as T}from"./checkbox-DXMDpaxv.js";import{t as E}from"./drawer-CF4BsAtW.js";import{t as D}from"./input-number-YpK_vIUu.js";import{t as O}from"./clock-B6Xmh354.js";import{t as k}from"./hash-BKpZIJo7.js";import{t as ee}from"./info-CDs2D83H.js";import{a as A,i as j,n as M,r as N,t as P}from"./pagination-BGnYVZvp.js";import{t as F}from"./trash-2-rtHpr3JN.js";import{t as te}from"./triangle-alert-D_wd4w3Z.js";import{t as I}from"./wand-sparkles-CReI7Ekg.js";import{xt as ne}from"./constants-CVb0vrXj.js";import{Bn as L,D as R,Fi as z,Ha as B,Ia as V,Li as H,T as U,Tn as W,Vn as G,Xi as K,at as q,ct as J,ia as Y,li as X,lo as Z,lt as re,oi as ie,ot as ae,st as oe,to as Q,tt as se}from"./index-C643U2rX.js";import{t as ce}from"./CopyToClipboard-Dc_53C_9.js";import{t as le}from"./ReportButton-BCWM_eUv.js";import{t as ue}from"./ImagePreview-QrO7VB3T.js";import{n as de}from"./taskDrawerMixin-DyAUhFEq.js";import{t as fe}from"./ServicePricingSummary-BnnhtPm5.js";import{t as pe}from"./VideoPlayer-Bt19ZgtM.js";import{t as me}from"./ScenarioPaymentMode-DUv_xCgb.js";import{t as he}from"./ApiCodeButton-DBR9tGBM.js";import{t as ge}from"./BotPlaceholder-Cl_V5koZ.js";import{t as _e}from"./taskPollingMixin-CcLxtz8z.js";import{n as ve,t as ye}from"./generationInput-jeoGp56s.js";var be=_({name:`LayoutWan`,components:{MagicIcon:I,ElDrawer:E,ElButton:Q},mixins:[de]}),xe={class:`main flex flex-row flex-1`},Se={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)]`},Ce={class:`result h-full p-4 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`),_=l(`el-drawer`);return h(),s(`div`,xe,[e(`div`,Se,[d(t.$slots,`config`,{},void 0,!0)]),e(`div`,Ce,[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:`generator-drawer`},{default:p(()=>[d(t.$slots,`config`,{},void 0,!0)]),_:3},8,[`modelValue`])])}var Te=R(be,[[`render`,we],[`__scopeId`,`data-v-20dc9571`]]),Ee=_({name:`ModelSelector`,components:{ElSelect:v,ElOption:y},data(){return{}},computed:{options(){return[{value:`wan2.6-t2v`,label:this.$t(`wan.button.modelT2v`)},{value:`wan2.6-i2v`,label:this.$t(`wan.button.modelI2v`)},{value:`wan2.6-i2v-flash`,label:this.$t(`wan.button.modelI2vFlash`)},{value:`wan2.6-r2v`,label:this.$t(`wan.button.modelR2v`)},{value:`wan3.0-video`,label:this.$t(`wan.button.modelWan3`)}]},value:{get(){return this.$store.state.wan?.config?.model},set(e){this.$store.commit(`wan/setConfig`,{...this.$store.state.wan?.config,model:e})}}},mounted(){this.value||=ne}}),De={class:`field`},Oe={class:`title font-bold`},ke={class:`float-left`};function Ae(t,n,r,o,u,d){let g=l(`el-option`),_=l(`el-select`);return h(),s(`div`,De,[e(`h2`,Oe,i(t.$t(`wan.name.model`)),1),a(_,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,class:`value`,placeholder:t.$t(`wan.placeholder.select`),clearable:``},{default:p(()=>[(h(!0),s(c,null,m(t.options,t=>(h(),f(g,{key:t.value,label:t.label,value:t.value},{default:p(()=>[e(`span`,ke,i(t.label),1)]),_:2},1032,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`])])}var je=R(Ee,[[`render`,Ae],[`__scopeId`,`data-v-f4ee3412`]]),Me=`720p`,Ne=_({name:`ResolutionSelector`,components:{ElSelect:v,ElOption:y},computed:{options(){return[{value:`480p`,label:this.$t(`wan.name.resolution480p`)},{value:`720p`,label:this.$t(`wan.name.resolution720p`)},{value:`1080p`,label:this.$t(`wan.name.resolution1080p`)}]},value:{get(){return this.$store.state.wan?.config?.resolution},set(e){this.$store.commit(`wan/setConfig`,{...this.$store.state.wan?.config,resolution:e})}}},mounted(){this.value||=Me}}),Pe={class:`field`},Fe={class:`title font-bold`},Ie={class:`float-left`};function Le(t,n,r,o,u,d){let g=l(`el-option`),_=l(`el-select`);return h(),s(`div`,Pe,[e(`h2`,Fe,i(t.$t(`wan.name.resolution`)),1),a(_,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,class:`value`,placeholder:t.$t(`wan.placeholder.select`),clearable:``},{default:p(()=>[(h(!0),s(c,null,m(t.options,t=>(h(),f(g,{key:t.value,label:t.label,value:t.value},{default:p(()=>[e(`span`,Ie,i(t.label),1)]),_:2},1032,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`])])}var Re=R(Ne,[[`render`,Le],[`__scopeId`,`data-v-3e39f44e`]]),ze=5,Be=_({name:`DurationSelector`,components:{ElSelect:v,ElOption:y},computed:{options(){return[{value:5,label:this.$t(`wan.name.duration5s`)},{value:10,label:this.$t(`wan.name.duration10s`)},{value:15,label:this.$t(`wan.name.duration15s`)}]},value:{get(){return this.$store.state.wan?.config?.duration},set(e){this.$store.commit(`wan/setConfig`,{...this.$store.state.wan?.config,duration:e})}}},mounted(){this.value||=ze}}),Ve={class:`field`},He={class:`title font-bold`},Ue={class:`float-left`};function We(t,n,r,o,u,d){let g=l(`el-option`),_=l(`el-select`);return h(),s(`div`,Ve,[e(`h2`,He,i(t.$t(`wan.name.duration`)),1),a(_,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,class:`value`,placeholder:t.$t(`wan.placeholder.select`),clearable:``},{default:p(()=>[(h(!0),s(c,null,m(t.options,t=>(h(),f(g,{key:t.value,label:t.label,value:t.value},{default:p(()=>[e(`span`,Ue,i(t.label),1)]),_:2},1032,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`])])}var Ge=R(Be,[[`render`,We],[`__scopeId`,`data-v-5f35a2cf`]]),Ke=_({name:`ImageUrlInput`,components:{ElUpload:b,ElButton:Q,InfoIcon:A,ImagePreview:ue},mixins:[re,J,ae,se],data(){return{fileList:[],uploadUrl:V()+`/api/v1/files/`}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},urls(){return this.fileList.map(e=>e.url).filter(e=>e!==void 0)},value:{get(){return this.$store.state.wan?.config?.image_url},set(){let e=this.urls?.[0];this.$store.commit(`wan/setConfig`,{...this.$store.state.wan?.config,image_url:e})}}},mounted(){this.value||=void 0,this.onSetImageUrl()},methods:{onExceed(){w.warning(this.$t(`wan.message.uploadImageExceed`))},onError(){w.error(this.$t(`wan.message.uploadImageError`))},async onRemove(){w.error(this.$t(`wan.message.uploadImageError`))},onSetImageUrl(){let e=this.urls?.[0];this.$store.commit(`wan/setConfig`,{...this.$store.state.wan?.config,image_url:e})},async onSuccess(){this.onSetImageUrl()}}}),qe={class:`relative`},Je={class:`flex justify-between`},Ye={class:`flex justify-start items-center`},Xe={class:`text-sm font-bold`};function Ze(t,n,c,u,d,m){let g=l(`info-icon`),_=l(`image-preview`),v=l(`el-button`),y=l(`el-upload`);return h(),s(`div`,qe,[e(`div`,Je,[e(`div`,Ye,[e(`span`,Xe,i(t.$t(`wan.name.imageUrl`)),1),a(g,{content:t.$t(`wan.description.imageUrl`),class:`info`},null,8,[`content`])])]),a(y,{ref:`uploader`,"file-list":t.fileList,"onUpdate:fileList":n[0]||=e=>t.fileList=e,accept:`.png,.jpg,.jpeg,.gif,.bmp,.webp`,name:`file`,"show-file-list":!0,limit:1,multiple:!1,"list-type":`picture`,"before-upload":t.beforeUploadSizeGuard,action:t.uploadUrl,"on-exceed":t.onExceed,"on-error":t.onError,"on-remove":t.onRemove,"on-success":t.onSuccess,headers:t.headers},{file:p(({file:e})=>[e.url&&e.percentage!==void 0?(h(),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(v,{size:`small`,type:`primary`,class:`btn btn-upload`,round:``},{default:p(()=>[r(i(t.$t(`wan.button.uploadImageUrl`)),1)]),_:1})]),_:1},8,[`file-list`,`before-upload`,`action`,`on-exceed`,`on-error`,`on-remove`,`on-success`,`headers`])])}var Qe=R(Ke,[[`render`,Ze],[`__scopeId`,`data-v-56929914`]]),$e=_({name:`PromptInput`,components:{PromptTextarea:j},computed:{prompt:{get(){return this.$store.state.wan?.config?.prompt},set(e){this.$store.commit(`wan/setConfig`,{...this.$store.state.wan?.config,prompt:e})}}},mounted(){this.prompt||=``}});function et(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(`wan.name.prompt`),info:e.$t(`wan.description.prompt`),placeholder:e.$t(`wan.placeholder.prompt`)},null,8,[`modelValue`,`title`,`info`,`placeholder`])}var tt=R($e,[[`render`,et]]),nt=_({name:`WanMediaInput`,components:{ElInput:Z},computed:{value:{get(){return this.$store.state.wan?.config?.media_text||``},set(e){this.$store.commit(`wan/setConfig`,{...this.$store.state.wan?.config,media_text:e})}}}}),rt={class:`field`},it={class:`flex items-center mb-2`},at={class:`text-sm font-bold`},ot={class:`text-xs mt-1 text-[var(--el-text-color-secondary)]`};function st(t,n,r,o,c,u){let d=l(`el-input`);return h(),s(`div`,rt,[e(`div`,it,[e(`span`,at,i(t.$t(`wan.name.media`)),1)]),a(d,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,type:`textarea`,rows:5,placeholder:t.$t(`wan.placeholder.media`)},null,8,[`modelValue`,`placeholder`]),e(`p`,ot,i(t.$t(`wan.description.media`)),1)])}var ct=R(nt,[[`render`,st]]),lt=_({name:`Wan3Options`,components:{ElSelect:v,ElOption:y,ElInputNumber:D,ElCheckbox:T},data:()=>({ratios:[`adaptive`,`16:9`,`4:3`,`1:1`,`3:4`,`9:16`]}),computed:{ratio:{get(){return this.$store.state.wan?.config?.ratio||`adaptive`},set(e){this.set({ratio:e})}},duration:{get(){return this.$store.state.wan?.config?.duration??5},set(e){this.set({duration:e})}},audio:{get(){return this.$store.state.wan?.config?.audio!==!1},set(e){this.set({audio:e})}}},methods:{set(e){this.$store.commit(`wan/setConfig`,{...this.$store.state.wan?.config,...e})}}}),ut={class:`space-y-4`},dt={class:`field`},ft={class:`label`},pt={class:`field`},mt={class:`label`};function ht(t,n,o,u,d,g){let _=l(`el-option`),v=l(`el-select`),y=l(`el-input-number`),b=l(`el-checkbox`);return h(),s(`div`,ut,[e(`div`,dt,[e(`span`,ft,i(t.$t(`wan.name.ratio`)),1),a(v,{modelValue:t.ratio,"onUpdate:modelValue":n[0]||=e=>t.ratio=e},{default:p(()=>[(h(!0),s(c,null,m(t.ratios,e=>(h(),f(_,{key:e,label:e,value:e},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`])]),e(`div`,pt,[e(`span`,mt,i(t.$t(`wan.name.duration`)),1),a(y,{modelValue:t.duration,"onUpdate:modelValue":n[1]||=e=>t.duration=e,min:-1,max:30},null,8,[`modelValue`])]),a(b,{modelValue:t.audio,"onUpdate:modelValue":n[2]||=e=>t.audio=e},{default:p(()=>[r(i(t.$t(`wan.name.audio`)),1)]),_:1},8,[`modelValue`])])}var gt=_({name:`PresetPanel`,components:{MagicIcon:I,ElButton:Q,PromptInput:tt,ImageUrlInput:Qe,ModelSelector:je,ResolutionSelector:Re,DurationSelector:Ge,MediaInput:ct,Wan3Options:R(lt,[[`render`,ht],[`__scopeId`,`data-v-49568593`]]),ServicePricingSummary:fe,ScenarioPaymentMode:me},emits:[`generate`],data(){return{quoteTimer:0,quoteRunId:0}},computed:{canGenerate(){return ye(`wan`,L(this.config))},config(){return this.$store.state.wan?.config},consumption(){return W(this.config,this.service?.cost)},service(){return this.$store.state.wan?.service},supportsResolution(){let e=this.config?.model;return e===`wan2.6-t2v`||e===`wan2.6-i2v`||e===`wan2.6-i2v-flash`||e===`wan3.0-video`},supportsDuration(){return this.config?.model===`wan2.6-t2v`},isWan3(){return this.config?.model===`wan3.0-video`},supportsImageUrl(){let e=this.config?.model;return e===`wan2.6-i2v`||e===`wan2.6-i2v-flash`},walletMode(){return z()&&H(`wan`).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.quoteRunId+=1;let e=H(`wan`);e.quoteUsdc=void 0,e.quoteLoading=!1,this.canGenerate&&(this.quoteTimer=window.setTimeout(this.refreshQuote,350))},async refreshQuote(){if(!this.canGenerate)return;let e=H(`wan`),t=++this.quoteRunId;e.quoteLoading=!0,e.quoteUsdc=void 0;try{let n=await G.quote(L(this.config));t===this.quoteRunId&&e.mode===`wallet`&&this.canGenerate&&(e.quoteUsdc=n.amountUsdc)}catch(e){console.warn(`x402 quote failed`,e)}finally{t===this.quoteRunId&&(e.quoteLoading=!1)}},onGenerate(){this.$emit(`generate`)}}}),_t={class:`flex flex-col h-full`},vt={class:`flex-1 overflow-y-auto p-5`},yt={class:`flex flex-col items-center justify-center px-5 pb-5`};function bt(t,n,c,u,d,m){let g=l(`prompt-input`),_=l(`model-selector`),v=l(`resolution-selector`),y=l(`duration-selector`),b=l(`image-url-input`),x=l(`media-input`),S=l(`wan3-options`),C=l(`scenario-payment-mode`),w=l(`service-pricing-summary`),T=l(`magic-icon`),E=l(`el-button`);return h(),s(`div`,_t,[e(`div`,vt,[a(g,{class:`mb-4`}),a(_,{class:`mb-4`}),t.supportsResolution?(h(),f(v,{key:0,class:`mb-4`})):o(``,!0),t.supportsDuration?(h(),f(y,{key:1,class:`mb-4`})):o(``,!0),t.supportsImageUrl?(h(),f(b,{key:2,class:`mb-4`})):o(``,!0),t.isWan3?(h(),f(x,{key:3,class:`mb-4`})):o(``,!0),t.isWan3?(h(),f(S,{key:4,class:`mb-4`})):o(``,!0)]),e(`div`,yt,[a(C,{scenario:`wan`}),t.walletMode?o(``,!0):(h(),f(w,{key:0,value:t.consumption,service:t.service},null,8,[`value`,`service`])),a(E,{type:`primary`,class:`btn w-full`,round:``,disabled:!t.canGenerate,onClick:t.onGenerate},{default:p(()=>[a(T,{class:`mr-2`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`wan.button.generate`)),1)]),_:1},8,[`disabled`,`onClick`])])])}var xt=R(gt,[[`render`,bt]]),St=_({name:`TaskPreview`,components:{DeleteIcon:F,ChannelIcon:k,InfoIcon:ee,MagicIcon:I,TimeIcon:O,WarningIcon:te,CopyToClipboard:ce,ElAlert:S,VideoPlayer:pe,ElTooltip:x,ElButton:Q,ApiCodeButton:he,ReportButton:le},props:{modelValue:{type:Object,required:!0}},computed:{isFailure(){let e=this.modelValue?.response;return e?.success===!1||!!e?.error||e?.state===`failed`||e?.state===`cancelled`},isWaiting(){let e=this.modelValue?.response;return e?this.isFailure?!1:[`queued`,`pending`,`processing`,`running`].includes(e.state||``)?!0:e.success!==!0&&!e.state:!0},application(){return this.$store.state.wan?.application},config(){return this.$store.state.wan?.config}},methods:{async onDelete(){let e=this.modelValue?.id;if(e){try{await B.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(`wan/deleteTask`,{id:e}),w.success(this.$t(`common.message.deleteTaskSuccess`))}catch{w.error(this.$t(`common.message.deleteTaskFailed`))}}},onDownload(e){console.debug(`on download wan video`,e),window.open(e,`_blank`)}}}),Ct={class:`preview`},wt={class:`left`},Tt={class:`main`},Et={class:`bot`},Dt={class:`datetime`},Ot=[`aria-label`],kt={class:`info`},At={key:0,class:`prompt mt-2`},jt={key:0},Mt={key:1},Nt={key:0,class:n({content:!0,failed:!0})},Pt={key:0,class:`mb-4`},Ft={key:1,class:n({operations:!0,"mt-2":!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-0`},zt={key:1,class:n({content:!0})},Bt={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},$={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Vt={key:0,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Ht={class:`text-[var(--el-text-color-regular)] text-xs mb-0`},Ut={key:2,class:n({content:!0})},Wt={class:`text-[var(--el-text-color-regular)] text-xs mb-0`};function Gt(n,c,u,d,f,m){let g=l(`capability-presentation`),_=l(`delete-icon`),v=l(`el-tooltip`),y=l(`video-player`),b=l(`el-button`),x=l(`api-code-button`),S=l(`report-button`),C=l(`channel-icon`),w=l(`copy-to-clipboard`),T=l(`magic-icon`),E=l(`time-icon`),D=l(`el-alert`),O=l(`warning-icon`),k=l(`info-icon`);return h(),s(`div`,Ct,[e(`div`,wt,[a(g,{capability:`wan`,part:`avatar`,class:`avatar`})]),e(`div`,Tt,[e(`div`,Et,[a(g,{capability:`wan`,part:`name`}),e(`span`,Dt,i(n.$dayjs.format(``+new Date(parseFloat((n.modelValue?.created_at||``).toString())*1e3))),1),a(v,{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:c[0]||=t((...e)=>n.onDelete&&n.onDelete(...e),[`stop`])},[a(_,{size:`1em`,"aria-hidden":`true`,focusable:`false`})],8,Ot)):o(``,!0)]),_:1},8,[`content`])]),e(`div`,kt,[n.modelValue?.request?.prompt?(h(),s(`p`,At,[r(i(n.modelValue?.request?.prompt)+` `,1),n.modelValue?.response?o(``,!0):(h(),s(`span`,jt,` - (`+i(n.$t(`wan.status.pending`))+`) `,1)),n.modelValue?.response&&n.isWaiting?(h(),s(`span`,Mt,` - (`+i(n.$t(`wan.status.processing`))+`) `,1)):o(``,!0)])):o(``,!0)]),n.modelValue?.response?.success===!0&&!n.isFailure&&!n.isWaiting?(h(),s(`div`,Nt,[n.modelValue?.response?.video_url?(h(),s(`div`,Pt,[a(y,{src:n.modelValue?.response?.video_url},null,8,[`src`])])):o(``,!0),n.modelValue?.response?.video_url?(h(),s(`div`,Ft,[a(v,{class:`box-item`,effect:`dark`,content:n.$t(`wan.message.downloadVideo`),placement:`top-start`},{default:p(()=>[a(b,{type:`info`,size:`small`,class:`mb-2`,onClick:c[1]||=t(e=>n.onDownload(n.modelValue?.response?.video_url),[`stop`])},{default:p(()=>[r(i(n.$t(`wan.button.download`)),1)]),_:1})]),_:1},8,[`content`]),a(x,{path:`/wan/videos`,body:n.modelValue?.request},null,8,[`body`]),a(S,{service:`wan`,"target-id":n.modelValue?.id,snapshot:{prompt:n.modelValue?.request?.prompt}},null,8,[`target-id`,`snapshot`])])):o(``,!0),a(D,{closable:!1,class:`mt-2 success`},{default:p(()=>[n.modelValue?.request?.model?(h(),s(`p`,It,[a(C,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`wan.name.model`))+`: `+i(n.modelValue?.request?.model)+` `,1),a(w,{content:n.modelValue?.id},null,8,[`content`])])):o(``,!0),e(`p`,Lt,[a(T,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`wan.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(w,{content:n.modelValue?.id},null,8,[`content`])]),n.modelValue?.elapsed?(h(),s(`p`,Rt,[a(E,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`wan.name.elapsed`))+`: `+i(n.modelValue?.elapsed?.toFixed(2))+`s `,1)])):o(``,!0)]),_:1})])):o(``,!0),n.isFailure?(h(),s(`div`,zt,[a(D,{closable:!1,class:`failure`},{template:p(()=>[a(O,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`wan.name.failure`)),1)]),default:p(()=>[e(`p`,Bt,[a(T,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`wan.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(w,{content:n.modelValue?.id},null,8,[`content`])]),e(`p`,$,[a(k,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`wan.name.failureReason`))+`: `+i(n.modelValue?.response?.error?.message)+` `,1),a(w,{content:n.modelValue?.response?.error?.message},null,8,[`content`])]),n.modelValue?.elapsed?(h(),s(`p`,Vt,[a(E,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`wan.name.elapsed`))+`: `+i(n.modelValue?.elapsed?.toFixed(2))+`s `,1)])):o(``,!0),e(`p`,Ht,[a(C,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`wan.name.traceId`))+`: `+i(n.modelValue?.response?.trace_id)+` `,1),a(w,{content:n.modelValue?.response?.trace_id},null,8,[`content`])])]),_:1})])):o(``,!0),n.isWaiting?(h(),s(`div`,Ut,[a(D,{closable:!1,class:`info`},{template:p(()=>[a(E,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(n.modelValue?.response?`wan.status.processing`:`wan.status.pending`)),1)]),default:p(()=>[e(`p`,Wt,[a(T,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`wan.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(w,{content:n.modelValue?.id},null,8,[`content`])])]),_:1})])):o(``,!0)])])}var Kt=_({name:`RecentPanel`,components:{TaskPreview:R(St,[[`render`,Gt],[`__scopeId`,`data-v-f180e91e`]]),BotPlaceholder:ge,NoTasks:N,ScrollList:M},props:{loading:{type:Boolean,default:!1}},emits:[`reach-top`],data(){return{job:0}},computed:{tasks(){return{...this.$store.state.wan?.tasks,items:this.$store.state.wan?.tasks?.items?.slice()}}},methods:{getScrollElement(){return this.$refs.scrollList?.getScrollElement?.()}}}),qt={key:0},Jt={key:2,class:`w-full h-full flex items-center justify-center`};function Yt(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`,qt,[a(d)])):e.tasks?.items?.length&&e.tasks?.items?.length>0?(h(),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(()=>[(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`,Jt,[a(v)])):o(``,!0)],64)}var Xt=_({name:`WanIndex`,components:{ConfigPanel:xt,Layout:Te,RecentPanel:R(Kt,[[`render`,Yt]])},mixins:[oe,_e(`wan`)],inject:[`initialized`],data(){return{task:void 0,job:0,timer:void 0,loadingMore:!1,fetchingTasks:!1,walletTaskIds:[]}},computed:{applicationsLoading(){return this.$store.state.wan?.status?.getApplications===C.Request},tasksLoading(){return this.$store.state.wan?.status?.getTasks===C.Request||this.fetchingTasks},credential(){return this.$store.state.wan.credential},config(){return this.$store.state.wan.config},application(){return this.$store.state.wan.application},tasks(){return this.$store.state.wan.tasks},walletMode(){return z()&&H(`wan`).mode===`wallet`}},watch:{walletMode:{async handler(e,t){if(!(t===void 0||e===t)){if(this.$store.commit(`wan/setTasks`,void 0),e&&!this.job&&(this.job=window.setInterval(this.onPollTasks,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.onPollTasks,5e3))},immediate:!0}},async mounted(){await this.onGetService()},async unmounted(){window.clearInterval(this.job)},methods:{async onReachTop(){await P({tasks:this.tasks,getTasks:()=>this.tasks,loading:this.loadingMore,setLoading:e=>this.loadingMore=e,isBlocked:()=>this.tasksLoading||this.applicationsLoading,fetch:e=>this.onGetTasks({createdAtMax:e}),getScrollElement:()=>this.getTasksScrollElement()})},async onGetService(){console.debug(`start onGetService`),await this.$store.dispatch(`wan/getService`),console.debug(`end onGetService`)},async onGetApplication(){console.debug(`start onGetApplication`),await this.$store.dispatch(`wan/getApplications`),console.debug(`end onGetApplication`),await this.onGetTasks()},async onScrollDown(){await this.$nextTick();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(`wan/getTasks`,{limit:t,createdAtMin:n,createdAtMax:r,...this.walletMode&&!this.credential?.token?{mode:`x402`,ids:this.walletTaskIds}:{}})}finally{this.fetchingTasks=!1}},async onGenerate(){let e=L(this.config),t=ve(`wan`,e);if(t){w.error(this.$t(`common.message.${t}`));return}if(!q(this.uploadTracker,e=>this.$t(e),e=>w.warning(e)))return;let n;if(this.walletMode){let t=this.getWalletContext();if(!t){w.warning(this.$t(`common.x402Scenario.connectWalletFirst`));return}n=G.generate(e,{mode:`x402`,x402:{wallet:t,confirm:e=>this.confirmWalletPayment(e),identityToken:this.credential?.token}})}else{if(!Y())return;let t=this.credential?.token;if(!t)return;n=G.generate(e,{token:t})}w.info(this.$t(`wan.message.startingTask`)),K(`wan`,n).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(`wan.message.startTaskSuccess`))}).catch(e=>{e instanceof ie||U(e,`wan`)||(this.walletMode?w.error(this.$t(`common.x402Scenario.paymentFailed`)):w.error(this.$t(`wan.message.startTaskFailed`)))}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})},getWalletContext(){return X(this.$wallet)},async confirmWalletPayment(e){return B.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 Zt(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 Qt=R(Xt,[[`render`,Zt]]);export{Qt as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import"./rolldown-runtime--c01j_DQ.js";import{A as e,I as t,Jt as n,L as r,M as i,N as a,T as o,at as s,j as c,mt as l,rt as u,tt as d,z as f}from"./vendor-chart-Dw-P17PN.js";import{v as p}from"./vuex.esm-bundler-
|
|
1
|
+
import"./rolldown-runtime--c01j_DQ.js";import{A as e,I as t,Jt as n,L as r,M as i,N as a,T as o,at as s,j as c,mt as l,rt as u,tt as d,z as f}from"./vendor-chart-Dw-P17PN.js";import{v as p}from"./vuex.esm-bundler-uM-kqbAF.js";import{t as m}from"./card-IQwqnRJR.js";import{t as h}from"./skeleton-Dj_a_iIP.js";import{t as g}from"./monitor-GBsAGWb5.js";import{t as _}from"./plus-Cv4THF6Q.js";import{D as v,Ha as y,Tt as b,qa as x,to as S,za as C}from"./index-C643U2rX.js";import{n as w,t as T}from"./BrowserPairingDialog-D_qGaX9S.js";import{t as E}from"./PageHeader-v-5kKXbh.js";var D=f({name:`ConsoleBrowserDevices`,components:{StatusBadge:C,AddIcon:_,BrowserPairingDialog:T,ConsolePageHeader:E,DesktopIcon:g,ElButton:S,ElCard:m,ElEmpty:x,ElSkeleton:h},data(){return{devices:[],loading:!1,busyId:null,pairingVisible:!1}},mounted(){this.refresh()},methods:{async refresh(){this.loading=!0;try{let{data:e}=await w.list();this.devices=e.filter(e=>e.status===`active`)}catch(e){p.error(this.errorDetail(e,`user.browserDevice.loadFailed`))}finally{this.loading=!1}},async rename(e){let t=await y.prompt(this.$t(`user.browserDevice.renamePrompt`),this.$t(`user.browserDevice.renameTitle`),{confirmButtonText:this.$t(`common.button.confirm`),cancelButtonText:this.$t(`common.button.cancel`),inputValue:e.name,inputValidator:e=>!!e.trim()&&e.trim().length<=128||this.$t(`user.browserDevice.nameRequired`)}).catch(()=>null);if(!t)return;let n=t.value?.trim();if(n){this.busyId=e.id;try{let{data:t}=await w.rename(e.id,n);this.devices=this.devices.map(e=>e.id===t.id?t:e),p.success(this.$t(`user.browserDevice.renameSuccess`))}catch(e){p.error(this.errorDetail(e,`user.browserDevice.renameFailed`))}finally{this.busyId=null}}},async remove(e){if(await y.confirm(this.$t(`user.browserDevice.deleteConfirm`,{name:e.name,count:e.active_session_count}),this.$t(`user.browserDevice.deleteTitle`),{confirmButtonText:this.$t(`user.browserDevice.delete`),cancelButtonText:this.$t(`common.button.cancel`),type:`warning`}).catch(()=>!1)){this.busyId=e.id;try{await w.delete(e.id),await this.refresh(),p.success(this.$t(`user.browserDevice.deleteSuccess`))}catch(e){p.error(this.errorDetail(e,`user.browserDevice.deleteFailed`))}finally{this.busyId=null}}},onPaired(e){e.status===`active`&&(this.devices=[e,...this.devices.filter(t=>t.id!==e.id)])},openConnectors(){this.$router.push({name:b})},compatibilityLabel(e){return e.compatible?String(this.$t(`connection.message.browserCompatible`)):String(this.$t(`connection.message.browserIncompatibility.${e.incompatibility_reason}`))},compatibilityTagType(e){return e.compatible?`success`:e.incompatibility_reason===`device_offline`?`warning`:`danger`},errorDetail(e,t){let n=e?.response?.data;return(Array.isArray(n?.name)?n.name[0]:n?.name)||n?.detail||String(this.$t(t))}}}),O={class:`devices-page`},k={class:`devices-actions`},A={key:0,class:`devices-loading`},j={key:2,class:`device-list`},M={class:`device-icon`},N={class:`device-content`},P={class:`device-heading`},F={class:`device-meta`},I={class:`device-digest-row`},L={class:`device-actions`};function R(f,p,m,h,g,_){let v=s(`console-page-header`),y=s(`add-icon`),b=s(`el-button`),x=s(`el-skeleton`),S=s(`el-empty`),C=s(`desktop-icon`),w=s(`status-badge`),T=s(`el-card`),E=s(`browser-pairing-dialog`);return d(),a(`div`,O,[r(v,{title:f.$t(`user.browserDevice.title`),subtitle:f.$t(`user.browserDevice.subtitle`)},null,8,[`title`,`subtitle`]),e(`div`,k,[r(b,{type:`primary`,onClick:p[0]||=e=>f.pairingVisible=!0},{default:l(()=>[r(y,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),t(` `+n(f.$t(`user.browserDevice.pairButton`)),1)]),_:1})]),r(T,{shadow:`never`,class:`devices-panel`,"body-style":{padding:0}},{default:l(()=>[f.loading?(d(),a(`div`,A,[r(x,{rows:5,animated:``})])):f.devices.length===0?(d(),c(S,{key:1,description:f.$t(`user.browserDevice.empty`)},null,8,[`description`])):(d(),a(`div`,j,[(d(!0),a(o,null,u(f.devices,o=>(d(),a(`article`,{key:o.id,class:`device-row`},[e(`div`,M,[r(C,{size:`1em`,"aria-hidden":`true`,focusable:`false`})]),e(`div`,N,[e(`div`,P,[e(`strong`,null,n(o.name),1),r(w,{tone:f.compatibilityTagType(o),density:`compact`},{default:l(()=>[t(n(f.compatibilityLabel(o)),1)]),_:2},1032,[`tone`])]),e(`dl`,F,[e(`div`,null,[e(`dt`,null,n(f.$t(`user.browserDevice.platform`)),1),e(`dd`,null,n(o.platform),1)]),e(`div`,null,[e(`dt`,null,n(f.$t(`user.browserDevice.extensionVersion`)),1),e(`dd`,null,n(o.extension_version),1)]),e(`div`,null,[e(`dt`,null,n(f.$t(`user.browserDevice.lastSeen`)),1),e(`dd`,null,n(o.last_seen_at?f.$dayjs.format(o.last_seen_at):f.$t(`user.browserDevice.neverSeen`)),1)]),e(`div`,null,[e(`dt`,null,n(f.$t(`user.browserDevice.capabilities`)),1),e(`dd`,null,n(o.capabilities.length?o.capabilities.join(`, `):`—`),1)]),e(`div`,null,[e(`dt`,null,n(f.$t(`user.browserDevice.onlineStatus`)),1),e(`dd`,null,n(f.$t(o.online?`connection.message.browserOnline`:`connection.message.browserOffline`)),1)]),e(`div`,null,[e(`dt`,null,n(f.$t(`user.browserDevice.activeSessions`)),1),e(`dd`,null,n(o.active_session_count),1)]),e(`div`,I,[e(`dt`,null,n(f.$t(`user.browserDevice.wireContractDigest`)),1),e(`dd`,null,n(o.wire_contract_digest),1)])])]),e(`div`,L,[o.status!==`revoked`&&o.active_session_count?(d(),c(b,{key:0,size:`small`,onClick:f.openConnectors},{default:l(()=>[t(n(f.$t(`user.browserDevice.manageSessions`)),1)]),_:1},8,[`onClick`])):i(``,!0),o.status===`revoked`?i(``,!0):(d(),c(b,{key:1,size:`small`,disabled:f.busyId===o.id,onClick:e=>f.rename(o)},{default:l(()=>[t(n(f.$t(`user.browserDevice.rename`)),1)]),_:1},8,[`disabled`,`onClick`])),o.status===`revoked`?i(``,!0):(d(),c(b,{key:2,size:`small`,type:`danger`,loading:f.busyId===o.id,onClick:e=>f.remove(o)},{default:l(()=>[t(n(f.$t(`user.browserDevice.delete`)),1)]),_:1},8,[`loading`,`onClick`]))])]))),128))]))]),_:1}),r(E,{modelValue:f.pairingVisible,"onUpdate:modelValue":p[1]||=e=>f.pairingVisible=e,onPaired:f.onPaired},null,8,[`modelValue`,`onPaired`])])}var z=v(D,[[`render`,R],[`__scopeId`,`data-v-663811e0`]]);export{z as default};
|
|
@@ -0,0 +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,S as c,T as l,at as u,ht as d,it as f,j as p,mt as m,qt as h,rt as g,tt as _,x as v,z as y}from"./vendor-chart-Dw-P17PN.js";import{r as b,t as x}from"./select-Dxkn5fnG.js";import{t as S}from"./upload-ChEGBjQd.js";import{t as C}from"./tooltip-CsVgfK1f.js";import{t as w}from"./alert-BprQRUmf.js";import{_ as T,v as E}from"./vuex.esm-bundler-uM-kqbAF.js";import{t as D}from"./drawer-CF4BsAtW.js";import{t as O}from"./box-Bx0ypDsn.js";import{t as k}from"./clock-B6Xmh354.js";import{t as A}from"./external-link-B5spIiHU.js";import{t as j}from"./hash-BKpZIJo7.js";import{t as M}from"./image-Dsh8h-Vr.js";import{t as N}from"./info-CDs2D83H.js";import{a as P,i as F,n as I,r as L,t as ee}from"./pagination-BGnYVZvp.js";import{t as te}from"./trash-2-rtHpr3JN.js";import{t as ne}from"./triangle-alert-D_wd4w3Z.js";import{t as re}from"./upload-DoPPJ2yy.js";import{t as R}from"./wand-sparkles-CReI7Ekg.js";import{t as z}from"./zap-BVQJGqe4.js";import{$a as B,Ua as V,_r as H,gr as ie,hr as ae,pr as oe,vr as U,yr as se}from"./constants-CVb0vrXj.js";import{D as W,Fi as G,Ha as K,Ia as ce,Li as q,Qn as J,T as le,Tn as ue,Xi as de,at as fe,ct as pe,ia as Y,li as me,lt as he,oi as ge,ot as _e,st as ve,to as X,tt as ye}from"./index-C643U2rX.js";import{t as be}from"./CopyToClipboard-Dc_53C_9.js";import{t as xe}from"./ReportButton-BCWM_eUv.js";import{t as Z}from"./ImagePreview-QrO7VB3T.js";import{n as Se}from"./taskDrawerMixin-DyAUhFEq.js";import{t as Ce}from"./ServicePricingSummary-BnnhtPm5.js";import{t as we}from"./ScenarioPaymentMode-DUv_xCgb.js";import{t as Te}from"./ApiCodeButton-DBR9tGBM.js";import{t as Ee}from"./BotPlaceholder-Cl_V5koZ.js";import{t as De}from"./taskPollingMixin-CcLxtz8z.js";import{t as Oe}from"./ShowcaseResultTabs-DoS1AGxi.js";import{t as ke}from"./showcaseRecreateMixin-BvSTHecE.js";import{t as Ae}from"./ImageWrapper-D2sKN22b.js";import{t as Q}from"./imageRequests-YA3-SUkx.js";var je=y({name:`LayoutNanobanana`,components:{MagicIcon:R,ElDrawer:D,ElButton:X},mixins:[Se]}),Me={class:`main flex flex-row flex-1`},Ne={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)]`},Pe={class:`result h-full p-4 flex-1 flex flex-col min-w-0 overflow-x-hidden bg-[var(--app-content-bg)]`};function Fe(t,n,r,i,o,c){let l=u(`magic-icon`),p=u(`el-button`),h=u(`el-drawer`);return _(),s(`div`,Me,[e(`div`,Ne,[f(t.$slots,`config`,{},void 0,!0)]),e(`div`,Pe,[f(t.$slots,`result`,{},void 0,!0)]),d(a(p,{circle:``,class:`menu`,"aria-label":t.$t(`common.button.openMenu`),title:t.$t(`common.button.openMenu`),onClick:n[0]||=e=>t.drawer=!0},{default:m(()=>[a(l,{size:`1em`,"aria-hidden":`true`,focusable:`false`})]),_:1},8,[`aria-label`,`title`]),[[v,!t.tasksEmpty]]),a(h,{modelValue:t.drawer,"onUpdate:modelValue":n[1]||=e=>t.drawer=e,direction:`ltr`,"with-header":!1,size:`340px`,class:`drawer generator-drawer`},{default:m(()=>[f(t.$slots,`config`,{},void 0,!0)]),_:3},8,[`modelValue`])])}var Ie=W(je,[[`render`,Fe],[`__scopeId`,`data-v-6f553b1e`]]),Le=y({name:`PromptInput`,components:{PromptTextarea:F},computed:{prompt:{get(){return this.$store.state.nanobanana?.config?.prompt},set(e){this.$store.commit(`nanobanana/setConfig`,{...this.$store.state.nanobanana?.config,prompt:e})}}},mounted(){this.prompt||=``}});function Re(e,t,n,r,i,a){let o=u(`prompt-textarea`);return _(),p(o,{modelValue:e.prompt,"onUpdate:modelValue":t[0]||=t=>e.prompt=t,title:e.$t(`nanobanana.name.prompt`),info:e.$t(`nanobanana.description.prompt`),placeholder:e.$t(`nanobanana.placeholder.prompt`)},null,8,[`modelValue`,`title`,`info`,`placeholder`])}var ze=W(Le,[[`render`,Re]]),Be=y({name:`ImageUrlsInput`,components:{UploadIcon:re,ElUpload:S,ElButton:X,InfoIcon:P,ImagePreview:Z},mixins:[he,pe,_e,ye],data(){return{fileList:[],uploadUrl:ce()+`/api/v1/files/`,suppressWatch:!1}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},urls(){return this.fileList.map(e=>e?.response?.file_url).filter(e=>!!e)},value(){return this.$store.state.nanobanana?.config?.image_urls}},watch:{value:{immediate:!0,handler(e){if(this.suppressWatch)return;if(!e||e.length===0){let e=(this.fileList||[]).filter(e=>!e?.response?.file_url);this.fileList=e.length?e:[];return}let t=[];e.forEach(e=>{let n=this.fileList.find(t=>t?.response?.file_url===e||t?.url===e);n?t.push(n):t.push({name:e.split(`/`).pop()||e,url:e,status:`success`,percentage:100,response:{file_url:e}})}),(this.fileList||[]).filter(e=>!e?.response?.file_url).forEach(e=>{t.some(t=>t===e||t?.url===e?.url||t?.response?.file_url===e?.response?.file_url)||t.push(e)}),this.fileList=t}}},mounted(){},methods:{onChange(e){if(!e?.url&&e?.raw)try{e.url=URL.createObjectURL(e.raw)}catch{}},onRemove(e){if(e?.url&&typeof e.url==`string`&&e.url.startsWith(`blob:`))try{URL.revokeObjectURL(e.url)}catch{}this.onSetImageUrls()},onExceed(){E.warning(this.$t(`nanobanana.message.uploadImageExceed`))},onError(){E.error(this.$t(`nanobanana.message.uploadImageError`))},onSetImageUrls(){let e=this.urls;this.suppressWatch=!0,this.$store.commit(`nanobanana/setConfig`,{...this.$store.state.nanobanana?.config,image_urls:e}),this.$nextTick(()=>{this.suppressWatch=!1})},async onSuccess(e,t){e?.file_url&&(t.url=e.file_url,t.response=e),this.onSetImageUrls()},onRemovePreview(e,t){if(this.fileList.splice(e,1),t?.url&&typeof t.url==`string`&&t.url.startsWith(`blob:`))try{URL.revokeObjectURL(t.url)}catch{}this.onSetImageUrls()}}}),Ve={class:`field mb-[10px] flex min-h-8 w-full items-center justify-between gap-3`},He={class:`flex min-w-0 items-center`},Ue={class:`title m-0 text-[14px] font-bold`},We={class:`file-list flex flex-wrap gap-[10px]`};function Ge(t,n,o,c,d,f){let h=u(`info-icon`),v=u(`upload-icon`),y=u(`el-button`),b=u(`el-upload`),x=u(`image-preview`);return _(),s(`div`,null,[e(`div`,Ve,[e(`div`,He,[e(`h2`,Ue,i(t.$t(`nanobanana.name.imageUrls`)),1),a(h,{content:t.$t(`nanobanana.description.imageUrls`)},null,8,[`content`])]),a(b,{ref:`uploader`,"file-list":t.fileList,"onUpdate:fileList":n[0]||=e=>t.fileList=e,accept:`.png,.jpg,.jpeg,.gif,.bmp,.webp`,name:`file`,class:`value shrink-0`,limit:5,multiple:!0,"show-file-list":!1,"before-upload":t.beforeUploadSizeGuard,action:t.uploadUrl,"on-exceed":t.onExceed,"on-error":t.onError,"on-success":t.onSuccess,"on-change":t.onChange,"on-remove":t.onRemove,headers:t.headers},{default:m(()=>[a(y,{size:`small`,type:`primary`,round:``},{default:m(()=>[a(v,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`nanobanana.button.uploadImageUrls`)),1)]),_:1})]),_:1},8,[`file-list`,`before-upload`,`action`,`on-exceed`,`on-error`,`on-success`,`on-change`,`on-remove`,`headers`])]),e(`div`,We,[(_(!0),s(l,null,g(t.fileList,(e,n)=>(_(),p(x,{key:e.uid||e?.response?.file_url||e.url||n,url:e.url||e?.response?.file_url,name:e.name,percentage:e.percentage,onRemove:r=>t.onRemovePreview(n,e)},null,8,[`url`,`name`,`percentage`,`onRemove`]))),128))])])}var Ke=W(Be,[[`render`,Ge]]),qe=y({name:`AspectRatioSelector`,components:{InfoIcon:P},data(){return{options:[{value:`1:1`,label:`1:1`,width:20,height:20},{value:`3:2`,label:`3:2`,width:27,height:18},{value:`2:3`,label:`2:3`,width:18,height:27},{value:`16:9`,label:`16:9`,width:25,height:13},{value:`9:16`,label:`9:16`,width:13,height:25},{value:`4:3`,label:`4:3`,width:24,height:18},{value:`3:4`,label:`3:4`,width:18,height:24}]}},computed:{value(){return this.$store.state.nanobanana?.config?.aspect_ratio}},methods:{onSelect(e){let t=this.value===e?void 0:e,n={...this.$store.state.nanobanana?.config||{}};t?n.aspect_ratio=t:delete n.aspect_ratio,this.$store.commit(`nanobanana/setConfig`,n)}}}),Je={class:`ratio`},Ye={class:`header`},Xe={class:`title font-bold`},Ze=[`aria-label`],Qe=[`aria-checked`,`aria-label`,`onClick`,`onKeydown`],$e={class:`preview`},et={class:`name`};function tt(r,o,d,f,p,m){let v=u(`info-icon`);return _(),s(`div`,Je,[e(`div`,Ye,[e(`h2`,Xe,i(r.$t(`nanobanana.name.aspectRatio`)),1),a(v,{content:r.$t(`nanobanana.description.aspectRatio`),class:`ml-1`},null,8,[`content`])]),e(`div`,{class:`items`,role:`radiogroup`,"aria-label":r.$t(`nanobanana.name.aspectRatio`)},[(_(!0),s(l,null,g(r.options,a=>(_(),s(`div`,{key:a.value,class:n([`item`,{active:r.value===a.value}]),role:`radio`,"aria-checked":r.value===a.value,"aria-label":a.label,tabindex:`0`,onClick:e=>r.onSelect(a.value),onKeydown:[c(t(e=>r.onSelect(a.value),[`prevent`]),[`enter`]),c(t(e=>r.onSelect(a.value),[`prevent`]),[`space`])]},[e(`div`,$e,[e(`div`,{class:`rect`,style:h({width:a.width+`px`,height:a.height+`px`})},null,4)]),e(`p`,et,i(a.label),1)],42,Qe))),128))],8,Ze)])}var nt=W(qe,[[`render`,tt],[`__scopeId`,`data-v-7131eb97`]]),rt=y({name:`NanobananaModelSelector`,components:{ElSelect:b,ElOption:x,InfoIcon:P},data(){return{options:[{value:ae,label:this.$t(`nanobanana.model.nanoBanana`)},{value:U,label:U},{value:se,label:this.$t(`nanobanana.model.nanoBananaPro`)},{value:ie,label:this.$t(`nanobanana.model.nanoBanana2`)},{value:H,label:H}]}},computed:{value:{get(){return this.$store.state.nanobanana?.config?.model},set(e){this.$store.commit(`nanobanana/setConfig`,{...this.$store.state.nanobanana?.config,model:e})}},modelDescription(){return this.$t(`nanobanana.description.model`)}},mounted(){this.value||=oe}}),it={class:`field`},at={class:`label`},ot={class:`box`},st={class:`title font-bold`};function ct(t,n,r,o,c,d){let f=u(`info-icon`),h=u(`el-option`),v=u(`el-select`);return _(),s(`div`,it,[e(`div`,at,[e(`div`,ot,[e(`h2`,st,i(t.$t(`nanobanana.name.model`)),1),a(f,{content:t.modelDescription,class:`info`},null,8,[`content`])])]),a(v,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,class:`value`,placeholder:t.$t(`nanobanana.placeholder.select`)},{default:m(()=>[(_(!0),s(l,null,g(t.options,e=>(_(),p(h,{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`])])}var lt=W(rt,[[`render`,ct],[`__scopeId`,`data-v-a04056e6`]]),ut=y({name:`NanobananaResolutionSelector`,components:{ElSelect:b,ElOption:x,InfoIcon:P},data(){return{cachedResolution:`1K`,options:[{value:`1K`,label:`1K`},{value:`2K`,label:`2K`},{value:`4K`,label:`4K`}]}},computed:{value:{get(){return this.$store.state.nanobanana?.config?.resolution},set(e){this.$store.commit(`nanobanana/setConfig`,{...this.$store.state.nanobanana?.config,resolution:e})}},supportsResolution(){let e=this.$store.state.nanobanana?.config?.model;return e===`nano-banana-2`||e===`nano-banana-2.1`||e===`nano-banana-pro`}},watch:{value(e){this.supportsResolution&&e&&(this.cachedResolution=e)},supportsResolution(e){e?this.value||=this.cachedResolution||`1K`:(this.value&&(this.cachedResolution=this.value),this.$store.commit(`nanobanana/setConfig`,{...this.$store.state.nanobanana?.config,resolution:void 0}))}},mounted(){this.supportsResolution&&!this.value&&(this.value=`1K`),!this.supportsResolution&&this.value&&(this.cachedResolution=this.value,this.$store.commit(`nanobanana/setConfig`,{...this.$store.state.nanobanana?.config,resolution:void 0}))}}),dt={class:`field`},ft={class:`label`},pt={class:`box`},mt={class:`title font-bold`};function ht(t,n,r,o,c,d){let f=u(`info-icon`),h=u(`el-option`),v=u(`el-select`);return _(),s(`div`,dt,[e(`div`,ft,[e(`div`,pt,[e(`h2`,mt,i(t.$t(`nanobanana.name.resolution`)),1),a(f,{content:t.$t(`nanobanana.description.resolutionProOnly`),class:`info`},null,8,[`content`])])]),a(v,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,class:`value`,placeholder:t.$t(`nanobanana.placeholder.select`),disabled:!t.supportsResolution},{default:m(()=>[(_(!0),s(l,null,g(t.options,e=>(_(),p(h,{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`,`disabled`])])}var gt=W(ut,[[`render`,ht],[`__scopeId`,`data-v-6246047b`]]),_t=350,vt=y({name:`ConfigPanel`,components:{MagicIcon:R,ElButton:X,PromptInput:ze,ServicePricingSummary:Ce,ImageUrlsInput:Ke,AspectRatioSelector:nt,ModelSelector:lt,ResolutionSelector:gt,ScenarioPaymentMode:we},props:{identityToken:{type:String,default:void 0}},emits:[`generate`],data(){return{quoteTimer:0,quoteRunId:0}},computed:{config(){return this.$store.state.nanobanana?.config},canGenerate(){return V(this.config?.prompt)},consumption(){let e={...this.config||{}},t=Array.isArray(e?.image_urls)&&e.image_urls.length>0;return ue({...e,action:t?`edit`:`generate`},this.service?.cost)},service(){return this.$store.state.nanobanana?.service},walletMode(){return G()&&q(`nanobanana`).mode===`wallet`}},watch:{walletMode:{handler(e){e?this.scheduleQuote():this.clearQuote()},immediate:!0},config:{handler(){this.walletMode&&this.scheduleQuote()},deep:!0},identityToken(){this.walletMode&&this.scheduleQuote()}},beforeUnmount(){this.clearQuote()},methods:{clearQuote(){window.clearTimeout(this.quoteTimer),this.quoteRunId+=1;let e=q(`nanobanana`);e.quoteUsdc=void 0,e.quoteLoading=!1},scheduleQuote(){this.clearQuote(),!(!this.walletMode||!this.canGenerate)&&(this.quoteTimer=window.setTimeout(this.refreshQuote,_t))},async refreshQuote(){if(!this.walletMode||!this.canGenerate){this.clearQuote();return}let e=q(`nanobanana`),t=++this.quoteRunId;e.quoteLoading=!0,e.quoteUsdc=void 0;try{let n=await J.quote(Q(this.config),this.identityToken);t===this.quoteRunId&&e.mode===`wallet`&&this.canGenerate&&(e.quoteUsdc=n.amountUsdc)}catch(e){console.warn(`x402 quote failed`,e)}finally{t===this.quoteRunId&&(e.quoteLoading=!1)}},onGenerate(){this.$emit(`generate`)}}}),yt={class:`flex flex-col h-full`},bt={class:`flex-1 overflow-y-auto p-5`},xt={class:`flex flex-col items-center justify-center px-5 pb-5`};function St(t,n,c,l,d,f){let h=u(`model-selector`),g=u(`resolution-selector`),v=u(`prompt-input`),y=u(`aspect-ratio-selector`),b=u(`image-urls-input`),x=u(`scenario-payment-mode`),S=u(`service-pricing-summary`),C=u(`magic-icon`),w=u(`el-button`);return _(),s(`div`,yt,[e(`div`,bt,[a(h,{class:`mb-4`}),a(g,{class:`mb-4`}),a(v,{class:`mb-4`}),a(y,{class:`mb-4`}),a(b,{class:`mb-4`})]),e(`div`,xt,[a(x,{scenario:`nanobanana`}),t.walletMode?o(``,!0):(_(),p(S,{key:0,value:t.consumption,service:t.service,"pricing-unit-aliases":{count:`image`}},null,8,[`value`,`service`])),a(w,{type:`primary`,class:`btn w-full`,round:``,disabled:!t.canGenerate,onClick:t.onGenerate},{default:m(()=>[a(C,{class:`mr-2`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`nanobanana.button.generate`)),1)]),_:1},8,[`disabled`,`onClick`])])])}var Ct=W(vt,[[`render`,St]]),wt=y({name:`TaskPreview`,components:{ApplicationIcon:O,ChannelIcon:j,DeleteIcon:te,ExternalLinkIcon:A,ImageIcon:M,InfoIcon:N,LightningIcon:z,MagicIcon:R,TimeIcon:k,WarningIcon:ne,CopyToClipboard:be,ElAlert:w,ImageWrapper:Ae,ElButton:X,ElTooltip:C,ImagePreview:Z,ApiCodeButton:Te,ReportButton:xe},props:{modelValue:{type:Object,required:!0}},computed:{images(){let e=[];return Array.isArray(this.modelValue?.response?.data)&&this.modelValue?.response?.data?.forEach(t=>{e.push(t)}),e},hasImages(){return this.images.some(e=>!!e?.image_url)},isFailure(){let e=this.modelValue?.response;return e?.success===!1||!!e?.error},showResult(){let e=this.modelValue?.response;return!e||this.isFailure?!1:(e.success,this.hasImages)},reportSnapshot(){return{prompt:this.modelValue?.request?.prompt,image_urls:this.images.map(e=>e.image_url).filter(Boolean),model:this.modelValue?.request?.model,action:this.modelValue?.request?.action,task_id:this.modelValue?.id,trace_id:this.modelValue?.response?.trace_id}}},methods:{onEdit(e){if(!e)return;console.debug(`Edit image:`,e);let t={...this.$store.state.nanobanana?.config||{}};delete t.action,t.image_urls=[e],this.$store.commit(`nanobanana/setConfig`,t)},async onDelete(){let e=this.modelValue?.id;if(e){try{await K.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(`nanobanana/deleteTask`,{id:e}),E.success(this.$t(`common.message.deleteTaskSuccess`))}catch{E.error(this.$t(`common.message.deleteTaskFailed`))}}}}}),Tt={class:`preview`},Et={class:`left`},Dt={class:`main`},Ot={class:`bot`},kt={class:`datetime`},At=[`aria-label`],jt={class:`info`},Mt={key:0,class:`flex justify-start items-center gap-2 mt-2 w-full overflow-x-auto`},Nt={key:1,class:`prompt mt-2`},Pt={key:0},Ft={key:0,class:n({content:!0,failed:!0})},It={class:`flex justify-start items-center gap-4 w-full overflow-x-auto`},Lt={class:n({operations:!0,"mt-2":!0,"mb-2":!0})},Rt={key:0,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},zt={key:1,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Bt={key:2,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={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Ut={key:4,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Wt={key:5,class:`text-[var(--el-text-color-regular)] text-xs mb-0`},Gt={key:1,class:n({content:!0})},Kt={key:0,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},qt={key:1,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},$={key:2,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Jt={key:3,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Yt={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Xt={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Zt={key:4,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Qt={key:5,class:`text-[var(--el-text-color-regular)] text-xs mb-0`},$t={key:2,class:n({content:!0})},en={key:0,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},tn={key:1,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},nn={key:2,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},rn={key:3,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},an={class:`text-[var(--el-text-color-regular)] text-xs mb-2`};function on(n,c,d,f,h,v){let y=u(`capability-presentation`),b=u(`delete-icon`),x=u(`el-tooltip`),S=u(`image-preview`),C=u(`image-wrapper`),w=u(`el-button`),T=u(`api-code-button`),E=u(`report-button`),D=u(`application-icon`),O=u(`image-icon`),k=u(`external-link-icon`),A=u(`lightning-icon`),j=u(`magic-icon`),M=u(`copy-to-clipboard`),N=u(`time-icon`),P=u(`channel-icon`),F=u(`el-alert`),I=u(`warning-icon`),L=u(`info-icon`);return _(),s(`div`,Tt,[e(`div`,Et,[a(y,{capability:`nanobanana`,part:`avatar`,class:`avatar`})]),e(`div`,Dt,[e(`div`,Ot,[a(y,{capability:`nanobanana`,part:`name`}),e(`span`,kt,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:m(()=>[n.modelValue?.id?(_(),s(`button`,{key:0,type:`button`,class:`btn-delete`,"aria-label":n.$t(`common.button.delete`),onClick:c[0]||=t((...e)=>n.onDelete&&n.onDelete(...e),[`stop`])},[a(b,{size:`1em`,"aria-hidden":`true`,focusable:`false`})],8,At)):o(``,!0)]),_:1},8,[`content`])]),e(`div`,jt,[n.modelValue?.request?.image_urls&&n.modelValue?.request?.image_urls.length>0?(_(),s(`div`,Mt,[(_(!0),s(l,null,g(n.modelValue?.request?.image_urls,(e,t)=>(_(),p(S,{key:t,url:e,name:`image-${t+1}`,closable:!1},null,8,[`url`,`name`]))),128))])):o(``,!0),n.modelValue?.request?.prompt?(_(),s(`p`,Nt,[r(i(n.modelValue?.request?.prompt)+` `,1),n.modelValue?.response?o(``,!0):(_(),s(`span`,Pt,` - (`+i(n.$t(`nanobanana.status.pending`))+`) `,1))])):o(``,!0)]),n.showResult?(_(),s(`div`,Ft,[e(`div`,It,[(_(!0),s(l,null,g(n.images,(e,t)=>(_(),p(C,{key:t,src:e?.image_url,"raw-src":e?.image_url},null,8,[`src`,`raw-src`]))),128))]),e(`div`,Lt,[a(x,{class:`box-item`,effect:`dark`,content:n.$t(`common.button.edit`),placement:`top-start`},{default:m(()=>[a(w,{type:`info`,size:`small`,class:`btn-action`,onClick:c[1]||=t(e=>n.onEdit(n.images?.[0]?.image_url),[`stop`])},{default:m(()=>[r(i(n.$t(`common.button.edit`)),1)]),_:1})]),_:1},8,[`content`]),a(T,{path:`/nano-banana/images`,body:n.modelValue?.request},null,8,[`body`]),a(E,{service:`nanobanana`,"target-id":n.modelValue?.id,snapshot:n.reportSnapshot,"show-label":``},null,8,[`target-id`,`snapshot`])]),a(F,{closable:!1,class:`mt-2 success`},{default:m(()=>[n.modelValue?.request?.model?(_(),s(`p`,Rt,[a(D,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`nanobanana.name.model`))+`: `+i(n.modelValue?.request?.model),1)])):o(``,!0),n.modelValue?.request?.resolution?(_(),s(`p`,zt,[a(O,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`nanobanana.name.resolution`))+`: `+i(n.modelValue?.request?.resolution),1)])):o(``,!0),n.modelValue?.request?.aspect_ratio?(_(),s(`p`,Bt,[a(k,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`nanobanana.name.aspectRatio`))+`: `+i(n.modelValue?.request?.aspect_ratio),1)])):o(``,!0),n.modelValue?.request?.action?(_(),s(`p`,Vt,[a(A,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`nanobanana.name.task`))+`: `+i(n.modelValue?.request?.action===`generate`?n.$t(`nanobanana.name.generate`):n.$t(`nanobanana.name.edits`)),1)])):o(``,!0),e(`p`,Ht,[a(j,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`nanobanana.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(M,{content:n.modelValue?.id,class:`btn-copy inline-block`},null,8,[`content`])]),n.modelValue?.elapsed?(_(),s(`p`,Ut,[a(N,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`nanobanana.name.elapsed`))+`: `+i(n.modelValue?.elapsed?.toFixed(2))+`s `,1)])):o(``,!0),n.modelValue?.response?.trace_id?(_(),s(`p`,Wt,[a(P,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`nanobanana.name.traceId`))+`: `+i(n.modelValue?.response?.trace_id)+` `,1),a(M,{content:n.modelValue?.response?.trace_id,class:`btn-copy inline-block`},null,8,[`content`])])):o(``,!0)]),_:1})])):n.isFailure?(_(),s(`div`,Gt,[a(F,{closable:!1,class:`failure`},{template:m(()=>[a(I,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`nanobanana.name.failure`)),1)]),default:m(()=>[n.modelValue?.request?.model?(_(),s(`p`,Kt,[a(D,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`nanobanana.name.model`))+`: `+i(n.modelValue?.request?.model),1)])):o(``,!0),n.modelValue?.request?.resolution?(_(),s(`p`,qt,[a(O,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`nanobanana.name.resolution`))+`: `+i(n.modelValue?.request?.resolution),1)])):o(``,!0),n.modelValue?.request?.aspect_ratio?(_(),s(`p`,$,[a(k,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`nanobanana.name.aspectRatio`))+`: `+i(n.modelValue?.request?.aspect_ratio),1)])):o(``,!0),n.modelValue?.request?.action?(_(),s(`p`,Jt,[a(A,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`nanobanana.name.task`))+`: `+i(n.modelValue?.request?.action===`generate`?n.$t(`nanobanana.name.generate`):n.$t(`nanobanana.name.edits`)),1)])):o(``,!0),e(`p`,Yt,[a(j,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`nanobanana.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(M,{content:n.modelValue?.id,class:`btn-copy`},null,8,[`content`])]),e(`p`,Xt,[a(L,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`nanobanana.name.failureReason`))+`: `+i(n.modelValue?.response?.error?.message)+` `,1),a(M,{content:n.modelValue?.response?.error?.message,class:`btn-copy`},null,8,[`content`])]),n.modelValue?.elapsed?(_(),s(`p`,Zt,[a(N,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`nanobanana.name.elapsed`))+`: `+i(n.modelValue?.elapsed?.toFixed(2))+`s `,1)])):o(``,!0),n.modelValue?.response?.trace_id?(_(),s(`p`,Qt,[a(P,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`nanobanana.name.traceId`))+`: `+i(n.modelValue?.response?.trace_id)+` `,1),a(M,{content:n.modelValue?.response?.trace_id,class:`btn-copy`},null,8,[`content`])])):o(``,!0)]),_:1})])):(_(),s(`div`,$t,[a(F,{closable:!1,class:`info`},{template:m(()=>[a(N,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`nanobanana.status.pending`)),1)]),default:m(()=>[n.modelValue?.request?.model?(_(),s(`p`,en,[a(D,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`nanobanana.name.model`))+`: `+i(n.modelValue?.request?.model),1)])):o(``,!0),n.modelValue?.request?.resolution?(_(),s(`p`,tn,[a(O,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`nanobanana.name.resolution`))+`: `+i(n.modelValue?.request?.resolution),1)])):o(``,!0),n.modelValue?.request?.aspect_ratio?(_(),s(`p`,nn,[a(k,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`nanobanana.name.aspectRatio`))+`: `+i(n.modelValue?.request?.aspect_ratio),1)])):o(``,!0),n.modelValue?.request?.action?(_(),s(`p`,rn,[a(A,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`nanobanana.name.task`))+`: `+i(n.modelValue?.request?.action===`generate`?n.$t(`nanobanana.name.generate`):n.$t(`nanobanana.name.edits`)),1)])):o(``,!0),e(`p`,an,[a(j,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`nanobanana.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(M,{content:n.modelValue?.id,class:`btn-copy`},null,8,[`content`])])]),_:1})]))])])}var sn=y({name:`RecentPanel`,components:{TaskPreview:W(wt,[[`render`,on],[`__scopeId`,`data-v-aa642ec8`]]),BotPlaceholder:Ee,NoTasks:L,ScrollList:I},props:{loading:{type:Boolean,default:!1}},emits:[`reach-top`],data(){return{job:0}},computed:{tasks(){return{...this.$store.state.nanobanana?.tasks,items:this.$store.state.nanobanana?.tasks?.items?.slice()}}},methods:{getScrollElement(){return this.$refs.scrollList?.getScrollElement?.()}}}),cn={key:0},ln={key:2,class:`w-full h-full flex items-center justify-center`};function un(e,t,n,r,i,c){let d=u(`bot-placeholder`),f=u(`task-preview`),h=u(`scroll-list`),v=u(`no-tasks`);return _(),s(l,null,[e.tasks?.items===void 0?(_(),s(`div`,cn,[a(d)])):e.tasks?.items?.length&&e.tasks?.items?.length>0?(_(),p(h,{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:m(()=>[(_(!0),s(l,null,g(e.tasks?.items,e=>(_(),p(f,{key:e.id,"model-value":e},null,8,[`model-value`]))),128))]),_:1},8,[`loading`])):o(``,!0),e.tasks?.items?.length===0?(_(),s(`div`,ln,[a(v)])):o(``,!0)],64)}var dn=y({name:`NanobananaIndex`,components:{ConfigPanel:Ct,Layout:Ie,RecentPanel:W(sn,[[`render`,un]]),ShowcaseResultTabs:Oe},mixins:[ve,ke(`nanobanana`),De(`nanobanana`)],inject:[`initialized`],data(){return{task:void 0,job:0,loading:!1,walletTaskIds:[]}},computed:{applicationsLoading(){return this.$store.state.nanobanana?.status?.getApplications===T.Request},tasksLoading(){return this.$store.state.nanobanana?.status?.getTasks===T.Request},credential(){return this.$store.state.nanobanana?.credential},config(){return this.$store.state.nanobanana?.config},application(){return this.$store.state.nanobanana?.application},tasks(){return this.$store.state.nanobanana?.tasks},walletMode(){return G()&&q(`nanobanana`).mode===`wallet`}},watch:{walletMode:{async handler(e,t){t===void 0||e===t||(this.$store.commit(`nanobanana/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.onPollTasks()},5e3))},immediate:!0}},async mounted(){await this.onGetService()},async unmounted(){window.clearInterval(this.job)},methods:{async onReachTop(){await ee({tasks:this.tasks,getTasks:()=>this.tasks,loading:this.loading,setLoading:e=>this.loading=e,isBlocked:()=>this.tasksLoading,fetch:e=>this.onGetTasks({createdAtMax:e}),getScrollElement:()=>this.getTasksScrollElement()})},async onGetService(){console.debug(`start onGetService`),await this.$store.dispatch(`nanobanana/getService`),console.debug(`end onGetService`)},async onGetApplication(){console.debug(`start onGetApplication`),await this.$store.dispatch(`nanobanana/getApplications`),console.debug(`end onGetApplication`),await this.onGetTasks()},async onScrollDown(){await this.$nextTick();let e=this.getTasksScrollElement();e&&(e.scrollTop=e.scrollHeight)},async onGetTasks(e){if(this.applicationsLoading||this.tasksLoading){console.debug(`loading`);return}let{limit:t=20,createdAtMin:n,createdAtMax:r}=e||{};await this.$store.dispatch(`nanobanana/getTasks`,{limit:t,createdAtMin:n,createdAtMax:r,...this.walletMode&&!this.credential?.token?{mode:`x402`,ids:this.walletTaskIds}:{}})},async onGenerate(){if(B()&&!Y())return;if(!V(this.config?.prompt)){E.error(this.$t(`common.message.promptRequired`));return}if(!fe(this.uploadTracker,e=>this.$t(e),e=>E.warning(e)))return;let e=Q(this.config),t;if(this.walletMode){let n=this.getWalletContext();if(!n){E.warning(this.$t(`common.x402Scenario.connectWalletFirst`));return}t=J.generate(e,{mode:`x402`,x402:{wallet:n,confirm:e=>this.confirmWalletPayment(e),identityToken:this.credential?.token}})}else{if(!Y())return;let n=this.credential?.token;if(!n){console.error(`no token specified`);return}t=J.generate(e,{token:n})}E.info(this.$t(`nanobanana.message.startingTask`)),de(`nanobanana`,t).then(e=>{let t=e?.data?.task_id;this.walletMode&&!this.credential?.token&&t&&!this.walletTaskIds.includes(t)&&this.walletTaskIds.unshift(t),E.success(this.$t(`nanobanana.message.startTaskSuccess`))}).catch(e=>{if(e instanceof ge)return;let t=e?.response?.data;le(e,`nanobanana`)||(this.walletMode?E.error(this.$t(`common.x402Scenario.paymentFailed`)):E.error(this.$t(`nanobanana.message.startTaskFailed`)+(t?.error?.message||``)))}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})},getWalletContext(){return me(this.$wallet)},async confirmWalletPayment(e){return K.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 fn(e,t,n,r,i,o){let s=u(`config-panel`),c=u(`recent-panel`),l=u(`showcase-result-tabs`),d=u(`layout`);return _(),p(d,null,{config:m(()=>[a(s,{"identity-token":e.credential?.token,onGenerate:e.onGenerate},null,8,[`identity-token`,`onGenerate`])]),result:m(()=>[a(l,{service:`nano-banana`},{tasks:m(()=>[a(c,{ref:`recentPanel`,loading:e.loading,onReachTop:e.onReachTop},null,8,[`loading`,`onReachTop`])]),_:1})]),_:1})}var pn=W(dn,[[`render`,fn]]);export{pn as default};
|