@acedatacloud/nexior 3.368.4 → 3.370.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +5 -5
- package/dist/assets/{ApiCodeButton-DVo6zCaG.js → ApiCodeButton-Kf0YW598.js} +1 -1
- package/dist/assets/{ApiCodeDialog-CVKSBLuF.js → ApiCodeDialog-eupmQpFd.js} +2 -2
- package/dist/assets/{Artifacts-Zar-1Bk3.js → Artifacts-D0WCG3lQ.js} +1 -1
- package/dist/assets/{AskUserQuestionCard-Ck_fobVl.js → AskUserQuestionCard-Qs7paslE.js} +1 -1
- package/dist/assets/{AudioPreview-DQkXvyXZ.js → AudioPreview-BbA_8mBX.js} +1 -1
- package/dist/assets/{Auth-BzssRRji.js → Auth-CNM6Inro.js} +1 -1
- package/dist/assets/{Bare-BGz8iWB8.js → Bare-DMGBZLxH.js} +1 -1
- package/dist/assets/{BotPlaceholder-CDAbpMqY.js → BotPlaceholder-DtVSvucb.js} +1 -1
- package/dist/assets/{BottomFooter-BNdzhWE6.js → BottomFooter-BwmtVWnU.js} +1 -1
- package/dist/assets/{BrowseConnectors-B8OaBaYG.js → BrowseConnectors-Brj2tBaE.js} +1 -1
- package/dist/assets/{BrowserPairingDialog-2DqNsyzr.js → BrowserPairingDialog-C6hXFjxh.js} +1 -1
- package/dist/assets/{Callback-DH7-V_KD.js → Callback-DCCNkFcT.js} +1 -1
- package/dist/assets/{CodeSnippet-DzLZ7nzz.js → CodeSnippet-RkpgcQWU.js} +1 -1
- package/dist/assets/{Console-DteYuo6I.js → Console-BCChkWzR.js} +1 -1
- package/dist/assets/{Conversation-CKcQYWa4.js → Conversation-BZ9RJm2L.js} +1 -1
- package/dist/assets/Conversation-Dp56xSUZ.js +1 -0
- package/dist/assets/{CopyToClipboard-DJpxsYt7.js → CopyToClipboard-BOqZRXW2.js} +1 -1
- package/dist/assets/{Detail-DhWqpWFo.js → Detail-Bn8iDUHF.js} +1 -1
- package/dist/assets/Extra-CgpOXG_2.js +1 -0
- package/dist/assets/{FilePreview-rOOIltmJ.js → FilePreview-BQW8k5Kr.js} +1 -1
- package/dist/assets/{Hailuo-koeLtW2n.js → Hailuo-BOpfOZbf.js} +1 -1
- package/dist/assets/{History-Bm1i_Myr.js → History-AcyCCqtI.js} +1 -1
- package/dist/assets/{ImagePreview-C28tnA4Y.js → ImagePreview-DkFAu6RG.js} +1 -1
- package/dist/assets/{ImageWrapper-Ca7bPjzs.js → ImageWrapper-I_WuilT5.js} +1 -1
- package/dist/assets/{Index-DMipsSbQ.js → Index--7vFmR1C.js} +1 -1
- package/dist/assets/{Index-pcLfOUmN.js → Index-7C0AabpK.js} +1 -1
- package/dist/assets/{Index-C6Ub6PhQ.js → Index-B84-6cQC.js} +1 -1
- package/dist/assets/{Index-CWXh-bwM.js → Index-BBlSp5dG.js} +1 -1
- package/dist/assets/{Index-DAN9xkOf.js → Index-BCVW46II.js} +1 -1
- package/dist/assets/Index-BGYXBTCL.js +1 -0
- package/dist/assets/Index-BXxpBq3C.js +1 -0
- package/dist/assets/Index-Bfqy0LDb.js +1 -0
- package/dist/assets/{Index-C45Gh3bC.js → Index-BnS7Mbvw.js} +1 -1
- package/dist/assets/{Index-D7zC5Vl9.js → Index-BsdzdxoU.js} +1 -1
- package/dist/assets/Index-BuRCqUkK.js +1 -0
- package/dist/assets/Index-BwJ0mB0k.js +1 -0
- package/dist/assets/{Index-Byqu434D.css → Index-Bx51kak2.css} +1 -1
- package/dist/assets/{Index-CQS1dr3F.js → Index-C-jKfQMz.js} +1 -1
- package/dist/assets/Index-C7b06ew8.js +1 -0
- package/dist/assets/Index-CLPFqXIs.js +1 -0
- package/dist/assets/Index-CS1D30ku.js +1 -0
- package/dist/assets/{Index-FV9I25s7.js → Index-CSFz38g9.js} +1 -1
- package/dist/assets/Index-CTnSmrut.js +1 -0
- package/dist/assets/Index-CeNYpFHe.js +1 -0
- package/dist/assets/{Index-CIK5E5Mw.js → Index-Clz-A4Z1.js} +1 -1
- package/dist/assets/{Index-CvF0lnq4.js → Index-CmDoOOD-.js} +1 -1
- package/dist/assets/{Index-493sI3jP.js → Index-Cz8z99Pe.js} +1 -1
- package/dist/assets/Index-DRpSR05S.js +1 -0
- package/dist/assets/Index-DabF4FMy.js +1 -0
- package/dist/assets/{Index-f0y-ACyC.js → Index-DbUjhdEa.js} +1 -1
- package/dist/assets/{Index-DaUaMEsk.js → Index-DonPIB7E.js} +1 -1
- package/dist/assets/Index-DtWxYGAI.js +1 -0
- package/dist/assets/{Index-CVe_ACJn.css → Index-Dyppen7N.css} +1 -1
- package/dist/assets/{Index-COQUjBaI.js → Index-EIQxcXWG.js} +2 -2
- package/dist/assets/{Index-Bb_FwHip.js → Index-HrO2hpwI.js} +1 -1
- package/dist/assets/{Index-VQfTY8MI.js → Index-IUPDFdP_.js} +2 -2
- package/dist/assets/Index-OnGb6jh7.css +1 -0
- package/dist/assets/{Index-CtXAi84S.js → Index-QMgl-kBR.js} +1 -1
- package/dist/assets/Index-a6saty8f.js +1 -0
- package/dist/assets/{Index-xY_XPdRg.js → Index-g-x1llER.js} +1 -1
- package/dist/assets/Index-hQ2j8pug.js +1 -0
- package/dist/assets/Index-iWm3t3u3.js +1 -0
- package/dist/assets/{Index-qj27KFlr2.js → Index-xcbhdSMe2.js} +1 -1
- package/dist/assets/{Invitees-rDxr_Tmy.js → Invitees-Daa3WkuV.js} +1 -1
- package/dist/assets/{List-CgkUOCLF.js → List-CNw3PvGr.js} +1 -1
- package/dist/assets/{List-BGaRgrTC.js → List-CcrD-Txq.js} +1 -1
- package/dist/assets/{List-DUVXAkh-.js → List-D_k6zQ6c.js} +1 -1
- package/dist/assets/LocalTools-CHRt6Ufb.js +5 -0
- package/dist/assets/{LocalTools-DSpv1wWT.js → LocalTools-_wmap9Pg.js} +1 -1
- package/dist/assets/{Logo-DOXqleU2.js → Logo-CiTn4GoV.js} +1 -1
- package/dist/assets/Main-2giJlOFm.css +1 -0
- package/dist/assets/Main-W4irqsjH.js +1 -0
- package/dist/assets/{Message-exyjP7KD.js → Message-o27vrZNx.js} +2 -2
- package/dist/assets/Model-d612ygeB.js +1 -0
- package/dist/assets/{Navigator-szE1t4h7.css → Navigator-DHM-1Xv0.css} +1 -1
- package/dist/assets/Navigator-dz7TUIiY.js +8 -0
- package/dist/assets/{NotFound-BcFUwyPB.js → NotFound-BzmcLM7F.js} +1 -1
- package/dist/assets/{PageHeader-Dwh-CEoY.js → PageHeader-D5vHZ1xw.js} +1 -1
- package/dist/assets/Pay-C4MvUQpT.js +1 -0
- package/dist/assets/{Player-BO6NYG3E.js → Player-lQjFxjfE.js} +1 -1
- package/dist/assets/{Poivelle-CDplJl8I.js → Poivelle-PU6Clh2b.js} +1 -1
- package/dist/assets/{RealtimeCall-Bkf0qLRG.js → RealtimeCall-DmW-uhWz.js} +1 -1
- package/dist/assets/{ReportButton-Ck_k83fR.js → ReportButton-HdJK0yBN.js} +1 -1
- package/dist/assets/{ReportDialog-wcwtyli7.js → ReportDialog-L1h6F-Wb.js} +1 -1
- package/dist/assets/{ScenarioPaymentMode-D54kz0_D.js → ScenarioPaymentMode-Ck7XJ7yx.js} +1 -1
- package/dist/assets/{ScheduledTasks-DYVAKZyi.js → ScheduledTasks-RQcnmNqO.js} +2 -2
- package/dist/assets/{ServicePricingSummary-BrKegtWK.js → ServicePricingSummary-Cf2pTQAq.js} +1 -1
- package/dist/assets/{ShowcaseGrid-CdEDJVZr.js → ShowcaseGrid-Dfudv7Tk.js} +1 -1
- package/dist/assets/{ShowcaseResultTabs-BjOlINh7.js → ShowcaseResultTabs-B3MAcV_C.js} +1 -1
- package/dist/assets/{SolanaWalletPickerDialog-C1OTKBOa.js → SolanaWalletPickerDialog-WWqaBFZF.js} +1 -1
- package/dist/assets/{Status-C79KLUpm.js → Status-DO240Ab3.js} +1 -1
- package/dist/assets/{Subscribe-DFrvoePc.js → Subscribe-DYH-hntH.js} +1 -1
- package/dist/assets/{TabSwitcher-CwI5FKzJ.js → TabSwitcher-eJhROhty.js} +1 -1
- package/dist/assets/{Tts-CkZL8CZ6.js → Tts-CcPKmPpJ.js} +1 -1
- package/dist/assets/{VideoPlayer-sC3lXtsY.js → VideoPlayer-DSnod19L.js} +1 -1
- package/dist/assets/{VideoPreview-DmfUPEX4.js → VideoPreview-KKeoBRBL.js} +1 -1
- package/dist/assets/application-5TztdOTv.js +1 -0
- package/dist/assets/application-BHObgf_Z.js +1 -0
- package/dist/assets/application-BOPYZO9r.js +1 -0
- package/dist/assets/application-BTnZdkl_.js +1 -0
- package/dist/assets/application-CHzKbASi.js +1 -0
- package/dist/assets/application-CbyPLkJ8.js +1 -0
- package/dist/assets/application-Cy4T3xVD.js +1 -0
- package/dist/assets/application-D4oTcKlb.js +1 -0
- package/dist/assets/application-D9WN0Uhb.js +1 -0
- package/dist/assets/application-DQ55J-u-.js +1 -0
- package/dist/assets/application-DrXKYZ3V.js +1 -0
- package/dist/assets/application-PQuVMF-N.js +1 -0
- package/dist/assets/ar-GGfX1ixg.js +1 -0
- package/dist/assets/arrow-down-CPKbE1O1.js +1 -0
- package/dist/assets/{arrow-down-wide-narrow-BR_lFBkv.js → arrow-down-wide-narrow-CVmXCVuv.js} +1 -1
- package/dist/assets/arrow-left-SMie-9d3.js +1 -0
- package/dist/assets/arrow-right-CKsUpgZQ.js +1 -0
- package/dist/assets/arrow-up-t3Qkq23F.js +1 -0
- package/dist/assets/authorizeFlow-BTh-Ycso.js +1 -0
- package/dist/assets/{avatar-BPsNl2Hy.js → avatar-BnqnQ3uu.js} +1 -1
- package/dist/assets/{basic-Wdnp-200.js → basic-W0pPYNHE.js} +1 -1
- package/dist/assets/{book-open-D3d3ENxR.js → book-open-B4xrfUIH.js} +1 -1
- package/dist/assets/{box-D6lx8lT2.js → box-B3O3BFZN.js} +1 -1
- package/dist/assets/{boxes-BprA4lua.js → boxes-8PubQFrI.js} +1 -1
- package/dist/assets/{brain-BrafO8yH.js → brain-Crw0smdD.js} +1 -1
- package/dist/assets/{chart-no-axes-combined-DcNvnZQ9.js → chart-no-axes-combined-CPlUQTua.js} +1 -1
- package/dist/assets/{chat-B50Nddps.js → chat-CnXjQrXv.js} +1 -1
- package/dist/assets/check-B2Sc3LAN.js +1 -0
- package/dist/assets/chevron-down-B71qVIES.js +1 -0
- package/dist/assets/chevron-right-BbxJIPLU.js +1 -0
- package/dist/assets/{circle-alert-2_WD9o6o.js → circle-alert-WZxtHvQR.js} +1 -1
- package/dist/assets/circle-check-DVGrcQH1.js +1 -0
- package/dist/assets/{circle-question-mark-nioVU5VV.js → circle-question-mark-irJ4kfZM.js} +1 -1
- package/dist/assets/{clipboard-list-CiBrlTEA.js → clipboard-list-AYPMdqeb.js} +1 -1
- package/dist/assets/clock-BiVJAvmB.js +1 -0
- package/dist/assets/code-5Y0klNd4.js +1 -0
- package/dist/assets/{codingBridge-BOstCb8-.js → codingBridge-B57aDduX.js} +2 -2
- package/dist/assets/{codingBridgeNotify-CZgtRbzg.js → codingBridgeNotify-BY7V2VSd.js} +1 -1
- package/dist/assets/{coins-B7xYm0qY.js → coins-C1lG_zY_.js} +1 -1
- package/dist/assets/{collapse-CaRZT369.js → collapse-DC8Y5Jc1.js} +1 -1
- package/dist/assets/common-B-naMt3f.js +1 -0
- package/dist/assets/common-CBeUN_4N.js +1 -0
- package/dist/assets/common-CsuVAjb2.js +1 -0
- package/dist/assets/common-CttZ81z_.js +1 -0
- package/dist/assets/common-CzqDf6qm.js +1 -0
- package/dist/assets/common-D0NOF46f.js +1 -0
- package/dist/assets/common-DOk62LaU.js +1 -0
- package/dist/assets/{common-h1ufa8LB.js → common-DVv3wMoO.js} +1 -1
- package/dist/assets/common-DqDwhMY3.js +1 -0
- package/dist/assets/common-DvPTnG81.js +1 -0
- package/dist/assets/common-kAbFbf_h.js +1 -0
- package/dist/assets/common-o8erZCBv.js +1 -0
- package/dist/assets/constants-_TDjlKzj.js +1 -0
- package/dist/assets/{copy-jpzoUc2h.js → copy-BXfMa63W.js} +1 -1
- package/dist/assets/{createTaskActions-CfxJoFwW.js → createTaskActions-DYIMZtBU.js} +1 -1
- package/dist/assets/{date-picker-Lapc0XFU.js → date-picker-DfrWUbZk.js} +1 -1
- package/dist/assets/de-D88s2Z3D.js +1 -0
- package/dist/assets/{digitalhuman-V1uh6IN9.js → digitalhuman-CeTVjLxD.js} +1 -1
- package/dist/assets/{dollar-sign-ILyuLJf7.js → dollar-sign-SlzDLrO4.js} +1 -1
- package/dist/assets/{download-BPNiLWLV.js → download-D10kdmHQ.js} +1 -1
- package/dist/assets/{drawer-BOOfQsQd.js → drawer-Cw-xPJEK.js} +1 -1
- package/dist/assets/{dropdown-CG7kf5bq.js → dropdown-Cd_vaabZ.js} +1 -1
- package/dist/assets/{dropdown-D0mVbp1o.js → dropdown-Obaez86x.js} +1 -1
- package/dist/assets/{ellipsis-DIl67G15.js → ellipsis-Dwx2Yayq.js} +1 -1
- package/dist/assets/en-CLYmzDUK.js +1 -0
- package/dist/assets/es-BFcqtLTc.js +1 -0
- package/dist/assets/{esm-wvLGOxBQ.js → esm-BUkgW5_h.js} +2 -2
- package/dist/assets/{external-link-DNKsNOZc.js → external-link-cXqPloNA.js} +1 -1
- package/dist/assets/{eye-D2-cK3Jk.js → eye-BQHa5Ri0.js} +1 -1
- package/dist/assets/{file-CqS8LEhG.js → file-AJ6yTxtA.js} +1 -1
- package/dist/assets/{file-output-Cn-vmlwu.js → file-output-DqWx5maG.js} +1 -1
- package/dist/assets/{file-text-DuCYDdZ0.js → file-text-b4Bajc2L.js} +1 -1
- package/dist/assets/{fish-CaHuGSTY.js → fish-VyB89b2w.js} +1 -1
- package/dist/assets/flux-C_b1f0SB.js +1 -0
- package/dist/assets/{folder-BINlD2eS.js → folder-CPYfk9H-.js} +1 -1
- package/dist/assets/fr-BGvShmJj.js +1 -0
- package/dist/assets/gauge-CP985bMj.js +1 -0
- package/dist/assets/{generationInput-DXkY82LE.js → generationInput-BTPgtuyi.js} +1 -1
- package/dist/assets/{globe-Cb6k1AWT.js → globe-M6rPqhoc.js} +1 -1
- package/dist/assets/grokvideo-Dmaqtykj.js +1 -0
- package/dist/assets/{hailuo-7LrnziRn.js → hailuo-BRQYP-XS.js} +1 -1
- package/dist/assets/{headphones-GkBGHwF1.js → headphones-BM5CNSBt.js} +1 -1
- package/dist/assets/{history-Ca9G_CoO.js → history-BeY0NAwC.js} +1 -1
- package/dist/assets/{house-Dv3Pi1lg.js → house-CutAJ73T.js} +1 -1
- package/dist/assets/{i18n-3SO3fOsw.js → i18n-e13-kcXv.js} +1 -1
- package/dist/assets/{image-KRyLUCe5.js → image-DU_hNaI0.js} +1 -1
- package/dist/assets/{imageRequests-CJlJxYzs.js → imageRequests-DMEm2BD2.js} +1 -1
- package/dist/assets/{index-BD_7p-5J.js → index-CZhYemAK.js} +17 -17
- package/dist/assets/{index.es-D6mB3OFo.js → index.es-BegIkFdv.js} +1 -1
- package/dist/assets/{info-HaRat4AM.js → info-oi3mtgtk.js} +1 -1
- package/dist/assets/{input-number-1WO0sD-L.js → input-number-CEYHrpbh.js} +1 -1
- package/dist/assets/it-2d1Zc7fw.js +1 -0
- package/dist/assets/ja-CELneK0Z.js +1 -0
- package/dist/assets/{key-round-DywZ3WU4.js → key-round-o6PzW3kz.js} +1 -1
- package/dist/assets/{kling-D71F0gnF.js → kling-Co0o8kbR.js} +1 -1
- package/dist/assets/ko-DmehJ3Uz.js +1 -0
- package/dist/assets/{languages-oRYWGK-o.js → languages-CFlj940I.js} +1 -1
- package/dist/assets/{laptop-BZsLgvfB.js → laptop-EGhR3QDR.js} +1 -1
- package/dist/assets/{lightbulb-BFp7EhHV.js → lightbulb-D8mw2mHl.js} +1 -1
- package/dist/assets/{link-BkUFKuai.js → link-Bal3Gz23.js} +1 -1
- package/dist/assets/loader-circle-j3K7qgEn.js +1 -0
- package/dist/assets/{lock-BlGfEbYy.js → lock-CKncictk.js} +1 -1
- package/dist/assets/{luma-DQo7azrB.js → luma--jo7Gi3F.js} +1 -1
- package/dist/assets/{maestro-DAKMplTu.js → maestro-DHpKWUes.js} +1 -1
- package/dist/assets/{maestroLanguages-DLgxAWhw.js → maestroLanguages-DCfCwShf.js} +1 -1
- package/dist/assets/{mail-DSaWUGB_.js → mail-tj6NJZQb.js} +1 -1
- package/dist/assets/{message-circle-T3NyiaPk.js → message-circle-C8iWR3J5.js} +1 -1
- package/dist/assets/{mic-B_mBnNVm.js → mic-Dki9-zzA.js} +1 -1
- package/dist/assets/{midjourney-BR59xRPA.js → midjourney-BfR7Ftv9.js} +1 -1
- package/dist/assets/{minimax-BM56DiRD.js → minimax-B2F-oC2m.js} +1 -1
- package/dist/assets/{mobileLocalExec-ww_YIPFb.js → mobileLocalExec-jL4UAnRK.js} +1 -1
- package/dist/assets/{models-CaAeRVKM.js → models-BMOmATPQ.js} +1 -1
- package/dist/assets/{monitor-DRkpf1mq.js → monitor-DF-wK21j.js} +1 -1
- package/dist/assets/{mouse-pointer-2-FAKQuYb_.js → mouse-pointer-2-DDkZ3foF.js} +1 -1
- package/dist/assets/music-2-CZ1JIwEb.js +1 -0
- package/dist/assets/{nanobanana-bhCgveiu.js → nanobanana-CkF5xApp.js} +1 -1
- package/dist/assets/{omni-BpWBwe7H.js → omni-s0w2kcgV.js} +1 -1
- package/dist/assets/{openaiimage-DFRy4Wp_.js → openaiimage-BdSAUNcS.js} +1 -1
- package/dist/assets/{openaiimage-BMFIY9rU.js → openaiimage-Bv7qGbKM.js} +1 -1
- package/dist/assets/{openaiimage--kB0Y9wh.js → openaiimage-C6c_JnqI.js} +1 -1
- package/dist/assets/{openaiimage-DGw0SQEf.js → openaiimage-C99BMPzr.js} +1 -1
- package/dist/assets/{openaiimage-BQYZvwFH.js → openaiimage-CQsujQnW.js} +1 -1
- package/dist/assets/{openaiimage-DLaKaYSW.js → openaiimage-Ccy1A76U.js} +1 -1
- package/dist/assets/{openaiimage-qixGCZIW.js → openaiimage-D31IGt_l.js} +1 -1
- package/dist/assets/{openaiimage-BYlnYMjd.js → openaiimage-DJN2Ct9T.js} +1 -1
- package/dist/assets/{openaiimage-B_6656F8.js → openaiimage-DXJScwOs.js} +1 -1
- package/dist/assets/{openaiimage-B8aEKjL2.js → openaiimage-DiGQK-vZ.js} +1 -1
- package/dist/assets/{openaiimage-DBy5rvO0.js → openaiimage-W6Qjv0ZX.js} +1 -1
- package/dist/assets/{openaiimage-BsfZtjNE.js → openaiimage-pCmThaEj.js} +1 -1
- package/dist/assets/{openaiimage-D4zzujiv.js → openaiimage-qTF1GUn3.js} +1 -1
- package/dist/assets/{pagination-BBZDRjpM.js → pagination-BIbpZyFD.js} +1 -1
- package/dist/assets/{pagination-CJYdJ-4v.js → pagination-DRbPFMFP.js} +1 -1
- package/dist/assets/{pagination-Cs6-z30Y.js → pagination-DlhjZ1Rd.js} +1 -1
- package/dist/assets/{palette-DGQbamQy.js → palette-lXllAoSk.js} +1 -1
- package/dist/assets/{paperclip-DVMtUkPL.js → paperclip-CBqmCTUX.js} +1 -1
- package/dist/assets/{pause-O2R4T8_z.js → pause-C7759kFH.js} +1 -1
- package/dist/assets/{pencil-D8iFUHFk.js → pencil-im1JSGeQ.js} +1 -1
- package/dist/assets/{pika-Bm6ffou0.js → pika-DhqTgsNf.js} +1 -1
- package/dist/assets/{pixverse-Bnx-mxD4.js → pixverse-BJ7Q0wus.js} +1 -1
- package/dist/assets/play-B5w6t1dM.js +1 -0
- package/dist/assets/{plug-oBd4b0Gi.js → plug-Ir329MB2.js} +1 -1
- package/dist/assets/plus-B_q_HVnH.js +1 -0
- package/dist/assets/{poivelle-CyqYTzZH.js → poivelle-DUS2gNbj.js} +1 -1
- package/dist/assets/{popover-DZ8ZIKY_.js → popover-BFyvH2Y7.js} +1 -1
- package/dist/assets/{producer-Vw85F_Ig.js → producer-DL7gGVo8.js} +1 -1
- package/dist/assets/pt-b-Oo5yRB.js +1 -0
- package/dist/assets/{qrart-DXkrA0YM.js → qrart-VQk4BkaF.js} +1 -1
- package/dist/assets/{qwenimage-CEiNtHTW.js → qwenimage-Ccd1vNEz.js} +1 -1
- package/dist/assets/{realtime-D2Zqt0G_.js → realtime-WFjxyzGc.js} +1 -1
- package/dist/assets/{refresh-cw-9Hnxywq3.js → refresh-cw-BfoI6Ww0.js} +1 -1
- package/dist/assets/rotate-ccw-D1M0buCQ.js +1 -0
- package/dist/assets/rotate-cw-C7JMcflF.js +1 -0
- package/dist/assets/{row-C_pAoDEj.js → row-CMfTExDY.js} +1 -1
- package/dist/assets/ru-CJYAPJeG.js +1 -0
- package/dist/assets/search-D2NauUsP.js +1 -0
- package/dist/assets/{seedance-CMB66dvY.js → seedance-DvSnPn0d.js} +1 -1
- package/dist/assets/{seedream-WO1qMCe_.js → seedream-60kO2l4K.js} +1 -1
- package/dist/assets/{seedream-BJjycflx.js → seedream-BhHe_lj4.js} +1 -1
- package/dist/assets/{seedream-CXDwIWu5.js → seedream-CaH4c7Yg.js} +1 -1
- package/dist/assets/{seedream-Cq6bFpYs.js → seedream-Cj5p22Q1.js} +1 -1
- package/dist/assets/{seedream-FoDgETid.js → seedream-CtWO-F9Y.js} +1 -1
- package/dist/assets/{seedream-Cn0jJCvM.js → seedream-CtcFo51c.js} +1 -1
- package/dist/assets/{seedream-FqFOB8ZM.js → seedream-CxKz-XLa.js} +1 -1
- package/dist/assets/{seedream-C4oRIG6t.js → seedream-D2GnsPRT.js} +1 -1
- package/dist/assets/{seedream-PXKuTTOI.js → seedream-D481A5Nw.js} +1 -1
- package/dist/assets/{seedream-D2KP6pd_.js → seedream-DC_z3p8d.js} +1 -1
- package/dist/assets/{seedream-B5QX3JKa.js → seedream-DZ714j3Z.js} +1 -1
- package/dist/assets/{seedream-Du3QoKCT.js → seedream-Du2voJlj.js} +1 -1
- package/dist/assets/{seedream-CJ-xtnPa.js → seedream-UsaVHTzw.js} +1 -1
- package/dist/assets/{select-BGkNWMh9.js → select-EQ72LO3F.js} +1 -1
- package/dist/assets/{serp-DoGVuaed.js → serp-Cs7E-3yH.js} +1 -1
- package/dist/assets/{shield-CGw2Cjng.js → shield-IU91JyBs.js} +1 -1
- package/dist/assets/{showcase-WJ8IRB5g.js → showcase-D_zR-sV4.js} +1 -1
- package/dist/assets/{showcaseRecreateMixin-Lq7H3eKy.js → showcaseRecreateMixin-B6AE_mI9.js} +1 -1
- package/dist/assets/{shuffle-DyH4mZhP.js → shuffle-DhYL_3RW.js} +1 -1
- package/dist/assets/site-7QjnU6o4.js +1 -0
- package/dist/assets/site-B-eM1NX3.js +1 -0
- package/dist/assets/site-B7RAogv8.js +1 -0
- package/dist/assets/site-CLGBABK9.js +1 -0
- package/dist/assets/site-CVNSyDD9.js +1 -0
- package/dist/assets/site-CZcS_bjw.js +1 -0
- package/dist/assets/site-DO7S81TT.js +1 -0
- package/dist/assets/site-TzwFhSRg.js +1 -0
- package/dist/assets/site-l6frvofE.js +1 -0
- package/dist/assets/site-lAcj2wNm.js +1 -0
- package/dist/assets/site-vUTQLicl.js +1 -0
- package/dist/assets/site-xWLjSPnB.js +1 -0
- package/dist/assets/{siteBanner-BY4xzJLo.js → siteBanner-D_p2zmaS.js} +1 -1
- package/dist/assets/{slider-Br85yvaZ.js → slider-BhehU7S7.js} +1 -1
- package/dist/assets/{solana-wallets-D450rzYg.js → solana-wallets-Qjg7vafk.js} +2 -2
- package/dist/assets/{sora-NfnMu_cn.js → sora--MHdvLqJ.js} +1 -1
- package/dist/assets/{sparkles-z-4J_Mig.js → sparkles-nNHDqCqB.js} +1 -1
- package/dist/assets/square-CD22N3gv.js +1 -0
- package/dist/assets/{store-DIXXrUff.js → store-DbS1uB1B.js} +1 -1
- package/dist/assets/{suno-zROJIjUN.js → suno-B23D1rjx.js} +1 -1
- package/dist/assets/{switch-2O2zlbWx.js → switch-DdxLIYo3.js} +1 -1
- package/dist/assets/{table-PFFpu6SB.js → table-CkkBOWxs.js} +1 -1
- package/dist/assets/{tabs-DBeg5Jlu.js → tabs-DDQ8q2wY.js} +1 -1
- package/dist/assets/{tag-CrDC45IG.js → tag-Oepxp-ws.js} +1 -1
- package/dist/assets/taskPolling-BwPxm54a.js +1 -0
- package/dist/assets/terminal-B_awAZB9.js +1 -0
- package/dist/assets/{time-picker-Eh71x2yr.js → time-picker-D1zoCjl6.js} +1 -1
- package/dist/assets/{tooltip-Lqp4poID.js → tooltip-DP16dKGj.js} +1 -1
- package/dist/assets/{trash-2-Do-u3hXn.js → trash-2-BajHbves.js} +1 -1
- package/dist/assets/{triangle-alert-Bggkkxk6.js → triangle-alert-C51VtTWm.js} +1 -1
- package/dist/assets/{upload-CSGwkxuc.js → upload-BZW4P6RL.js} +1 -1
- package/dist/assets/{upload-NGwnPPlZ.js → upload-DwxzDAyJ.js} +1 -1
- package/dist/assets/user-dgyodm4B.js +1 -0
- package/dist/assets/{veo-DsX0F0Bd.js → veo-zgbcnum1.js} +1 -1
- package/dist/assets/{video-CzfdTb9c.js → video-Dj3lXycY.js} +1 -1
- package/dist/assets/{volume-2-JgUwCEIO.js → volume-2-CUr_0LMx.js} +1 -1
- package/dist/assets/{wallet-B1WWY7D5.js → wallet-DEM8S-t9.js} +1 -1
- package/dist/assets/{wan-BIbEav7I.js → wan-ikMVoz3j.js} +1 -1
- package/dist/assets/{wand-sparkles-DbyPXHvt.js → wand-sparkles-CWwVsj-U.js} +1 -1
- package/dist/assets/{web-BBRFoKvI.js → web-8byVsIpC.js} +1 -1
- package/dist/assets/{webextrator-3ReRUftn.js → webextrator-CZ5Ldd1T.js} +1 -1
- package/dist/assets/{zap-CroA-83d.js → zap-CgqhnhSg.js} +1 -1
- package/dist/assets/zh-CN-CWLTggDa.js +1 -0
- package/dist/assets/zh-TW-CepK71p9.js +1 -0
- package/dist/index.html +4 -7
- package/package.json +1 -1
- package/dist/assets/Conversation-BX1hSi9g.js +0 -1
- package/dist/assets/Extra-DQPy-rSq.js +0 -1
- package/dist/assets/Index-1qBpS0Sn.js +0 -1
- package/dist/assets/Index-4BNYOSe0.js +0 -1
- package/dist/assets/Index-B7DkYQT0.js +0 -1
- package/dist/assets/Index-BoqssPwI.js +0 -1
- package/dist/assets/Index-BxBfKxRp.js +0 -1
- package/dist/assets/Index-CFrFLY65.js +0 -1
- package/dist/assets/Index-ChTS8kzf.js +0 -1
- package/dist/assets/Index-Cp_eWtyD.js +0 -1
- package/dist/assets/Index-CxJJ6qfr.css +0 -1
- package/dist/assets/Index-Czn6veyq.js +0 -1
- package/dist/assets/Index-DFhaxXyX.js +0 -1
- package/dist/assets/Index-DHQ7gMV5.js +0 -1
- package/dist/assets/Index-DOS1xgT_.js +0 -1
- package/dist/assets/Index-DaDSxccm.js +0 -1
- package/dist/assets/Index-KcLwZ8aS.js +0 -1
- package/dist/assets/Index-jkujXy88.js +0 -1
- package/dist/assets/Index-tX8eovwf.js +0 -1
- package/dist/assets/LocalTools-DHVfksSU.js +0 -5
- package/dist/assets/Main-BEVS1Stp.css +0 -1
- package/dist/assets/Main-DTYFAYNg.js +0 -1
- package/dist/assets/Model-DhZA6Bzg.js +0 -1
- package/dist/assets/Navigator-C6EVJpPT.js +0 -8
- package/dist/assets/Pay-I8fJtIxK.js +0 -1
- package/dist/assets/application-BCjHFlvB.js +0 -1
- package/dist/assets/application-BFFFrext.js +0 -1
- package/dist/assets/application-BMsppmzF.js +0 -1
- package/dist/assets/application-BauHmojA.js +0 -1
- package/dist/assets/application-Bmgtz2pj.js +0 -1
- package/dist/assets/application-BxWkr4G9.js +0 -1
- package/dist/assets/application-ChG0Mtz4.js +0 -1
- package/dist/assets/application-DCkXqWPw.js +0 -1
- package/dist/assets/application-DH0bhwfk.js +0 -1
- package/dist/assets/application-DNz_117E.js +0 -1
- package/dist/assets/application-ITpyqhTH.js +0 -1
- package/dist/assets/application-nZGcQ0zA.js +0 -1
- package/dist/assets/ar-8h-U0faB.js +0 -1
- package/dist/assets/arrow-down-CFGr8iFr.js +0 -1
- package/dist/assets/arrow-left-C_KQ5yHG.js +0 -1
- package/dist/assets/arrow-right-nm8h1ZTW.js +0 -1
- package/dist/assets/arrow-up-4Tv_57Kh.js +0 -1
- package/dist/assets/authorizeFlow-DdWWbbYw.js +0 -1
- package/dist/assets/check-BOkh4Uhy.js +0 -1
- package/dist/assets/chevron-down-CS7EtS26.js +0 -1
- package/dist/assets/chevron-right-kkR13BCG.js +0 -1
- package/dist/assets/circle-check-CIXqDFK2.js +0 -1
- package/dist/assets/clock-1txUnUIB.js +0 -1
- package/dist/assets/code-BCJUkfkC.js +0 -1
- package/dist/assets/common-B-JAJRDq.js +0 -1
- package/dist/assets/common-BSsAi2kE.js +0 -1
- package/dist/assets/common-BY73HZyk.js +0 -1
- package/dist/assets/common-CJ5KZTik.js +0 -1
- package/dist/assets/common-CWv5CO7h.js +0 -1
- package/dist/assets/common-CcfVFHBe.js +0 -1
- package/dist/assets/common-DD-U-2F3.js +0 -1
- package/dist/assets/common-DElVGZ1Y.js +0 -1
- package/dist/assets/common-DgC-cYfo.js +0 -1
- package/dist/assets/common-Dp93RClk.js +0 -1
- package/dist/assets/common-UZYnT4lx.js +0 -1
- package/dist/assets/constants-DjRIlNef.js +0 -1
- package/dist/assets/de-y6-LFIpZ.js +0 -1
- package/dist/assets/en-Y0k7njKi.js +0 -1
- package/dist/assets/es-DGBnC71C.js +0 -1
- package/dist/assets/flux-BVY8YyI4.js +0 -1
- package/dist/assets/fr-lOiSfqiV.js +0 -1
- package/dist/assets/gauge-B9_3ezOw.js +0 -1
- package/dist/assets/grokvideo-CZKONXoZ.js +0 -1
- package/dist/assets/it-Cl-tbfc7.js +0 -1
- package/dist/assets/ja-DFyrQ7hH.js +0 -1
- package/dist/assets/ko-C4hE59CB.js +0 -1
- package/dist/assets/loader-circle-DScPxIDS.js +0 -1
- package/dist/assets/music-2-BMDwmfma.js +0 -1
- package/dist/assets/play-_nCk-V3m.js +0 -1
- package/dist/assets/plus-BdGLqdGZ.js +0 -1
- package/dist/assets/pt-CcCENRh4.js +0 -1
- package/dist/assets/rotate-ccw-Dr_yPDGT.js +0 -1
- package/dist/assets/rotate-cw-zmihwTDm.js +0 -1
- package/dist/assets/ru-BEYXZc2U.js +0 -1
- package/dist/assets/search-D20wjTlh.js +0 -1
- package/dist/assets/site-6yuJ18xm.js +0 -1
- package/dist/assets/site-B6DrE9qr.js +0 -1
- package/dist/assets/site-BBUmbFa5.js +0 -1
- package/dist/assets/site-BlYgfpAI.js +0 -1
- package/dist/assets/site-BpIe_XLO.js +0 -1
- package/dist/assets/site-C-xCY0DT.js +0 -1
- package/dist/assets/site-D2y0jjm-.js +0 -1
- package/dist/assets/site-D73fCTOL.js +0 -1
- package/dist/assets/site-DLa_V_Th.js +0 -1
- package/dist/assets/site-DnfEYo2J.js +0 -1
- package/dist/assets/site-DoaddLa6.js +0 -1
- package/dist/assets/site-ydEZ7wke.js +0 -1
- package/dist/assets/square-BbDrJpPO.js +0 -1
- package/dist/assets/taskPolling-CaSXBi12.js +0 -1
- package/dist/assets/terminal-Cul2-VrQ.js +0 -1
- package/dist/assets/user-DsZmtdNs.js +0 -1
- package/dist/assets/zh-CN-DjcjGmt3.js +0 -1
- package/dist/assets/zh-TW-B1S3M_fH.js +0 -1
|
@@ -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,qt as m,rt as h,tt as g,x as _,z as v}from"./vendor-chart-Dw-P17PN.js";import{r as y,t as b}from"./select-EQ72LO3F.js";import{n as x,t as S}from"./tabs-DDQ8q2wY.js";import{t as C}from"./upload-DwxzDAyJ.js";import{t as w}from"./tooltip-DP16dKGj.js";import{t as T}from"./alert-BprQRUmf.js";import{h as E,v as D}from"./models-BMOmATPQ.js";import{t as O}from"./drawer-Cw-xPJEK.js";import{t as k}from"./switch-DdxLIYo3.js";import{t as A}from"./box-B3O3BFZN.js";import{t as j}from"./clock-BiVJAvmB.js";import{a as M,i as N,n as P,o as F,r as I,s as L,t as R}from"./pagination-DRbPFMFP.js";import{t as ee}from"./info-oi3mtgtk.js";import{t as z}from"./languages-CFlj940I.js";import{t as B}from"./trash-2-BajHbves.js";import{t as te}from"./triangle-alert-C51VtTWm.js";import{t as ne}from"./upload-BZW4P6RL.js";import{t as V}from"./wand-sparkles-CWwVsj-U.js";import{t as re}from"./zap-CgqhnhSg.js";import{Ci as ie,Si as ae,xi as oe}from"./constants-_TDjlKzj.js";import{$ as se,$i as H,A as U,Ar as W,Fa as G,Ki as K,Mr as ce,Ni as q,O as le,Or as J,Y as ue,Ya as Y,ai as de,et as fe,ja as pe,ji as X,jr as me,kr as Z,nt as he,ri as ge,rt as _e,tt as ve,vn as ye}from"./index-CZhYemAK.js";import{t as be}from"./CopyToClipboard-BOqZRXW2.js";import{t as xe}from"./ReportButton-HdJK0yBN.js";import{t as Q}from"./ImagePreview-DkFAu6RG.js";import{n as Se}from"./taskDrawerMixin-DyAUhFEq.js";import{t as Ce}from"./ServicePricingSummary-Cf2pTQAq.js";import{t as we}from"./VideoPlayer-DSnod19L.js";import{t as Te}from"./ScenarioPaymentMode-Ck7XJ7yx.js";import{t as Ee}from"./ApiCodeButton-Kf0YW598.js";import{t as De}from"./BotPlaceholder-DtVSvucb.js";import{t as Oe}from"./taskPollingMixin-CcLxtz8z.js";import{t as ke}from"./ShowcaseResultTabs-B3MAcV_C.js";import{t as Ae}from"./showcaseRecreateMixin-B6AE_mI9.js";import{n as je,t as Me}from"./generationInput-BTPgtuyi.js";var Ne=v({name:`LayoutVeo`,components:{MagicIcon:V,ElDrawer:O,ElButton:Y},mixins:[Se]}),Pe={class:`main flex flex-row flex-1`},Fe={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)]`},Ie={class:`result h-full p-4 flex-1 flex flex-col min-w-0 overflow-x-hidden bg-[var(--app-content-bg)]`};function Le(t,n,r,i,o,c){let f=l(`magic-icon`),m=l(`el-button`),h=l(`el-drawer`);return g(),s(`div`,Pe,[e(`div`,Fe,[d(t.$slots,`config`,{},void 0,!0)]),e(`div`,Ie,[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 Re=U(Ne,[[`render`,Le],[`__scopeId`,`data-v-c990ae5b`]]),ze=v({name:`ModelSelector`,components:{ElSelect:y,ElOption:b},computed:{isModelLocked(){return this.$store.state.veo?.config?.action===`ingredients2video`},options(){return this.isModelLocked?[{value:me,label:`Veo 3.1 Fast`}]:W},value:{get(){return this.$store.state.veo?.config?.model},set(e){this.$store.commit(`veo/setConfig`,{...this.$store.state.veo.config,model:e})}}},mounted(){this.value||=ie}}),Be={class:`field`},Ve={class:`title font-bold`};function He(t,n,r,o,u,d){let m=l(`el-option`),_=l(`el-select`);return g(),s(`div`,Be,[e(`h2`,Ve,i(t.$t(`veo.name.model`)),1),a(_,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,class:`value`,placeholder:t.$t(`veo.placeholder.select`),disabled:t.isModelLocked},{default:p(()=>[(g(!0),s(c,null,h(t.options,e=>(g(),f(m,{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`,`disabled`])])}var Ue=U(ze,[[`render`,He],[`__scopeId`,`data-v-90ed8cff`]]),We=v({name:`ActionSelector`,components:{ElTabs:x,ElTabPane:S},data(){return{}},computed:{options(){return[{value:`text2video`,label:this.$t(`veo.button.action1`)},{value:`image2video`,label:this.$t(`veo.button.action2`)},{value:`ingredients2video`,label:this.$t(`veo.button.actionIngredients`)}]},value(){return this.$store.state.veo?.config?.action||`text2video`}},mounted(){this.$store.state.veo?.config?.action||this.onUpdate(oe)},methods:{onUpdate(e){this.$store.commit(`veo/setConfig`,ce(this.$store.state.veo?.config,e))}}}),Ge={class:`tab-label`},Ke={class:`text`};function qe(t,n,r,a,o,u){let d=l(`el-tab-pane`),m=l(`el-tabs`);return g(),f(m,{"model-value":t.value,class:`action-tabs scenario-tabs scenario-tabs--divided`,"onUpdate:modelValue":t.onUpdate},{default:p(()=>[(g(!0),s(c,null,h(t.options,t=>(g(),f(d,{key:t.value,name:t.value},{label:p(()=>[e(`span`,Ge,[e(`span`,Ke,i(t.label),1)])]),_:2},1032,[`name`]))),128))]),_:1},8,[`model-value`,`onUpdate:modelValue`])}var Je=U(We,[[`render`,qe],[`__scopeId`,`data-v-c72fb85c`]]),Ye=v({name:`TranslationSelector`,components:{ElSwitch:k,InfoIcon:M},computed:{value:{get(){return this.$store.state.veo?.config?.translation},set(e){console.debug(`set translation`,e),this.$store.commit(`veo/setConfig`,{...this.$store.state.veo?.config,translation:e})}}},mounted(){this.value===void 0&&(this.value=!1)}}),Xe={class:`relative`},Ze={class:`flex justify-between`},Qe={class:`flex justify-start items-center`},$e={class:`text-sm font-bold`},et={class:`flex justify-end items-center`};function tt(t,n,r,o,c,u){let d=l(`info-icon`),f=l(`el-switch`);return g(),s(`div`,Xe,[e(`div`,Ze,[e(`div`,Qe,[e(`span`,$e,i(t.$t(`veo.name.translation`)),1),a(d,{content:t.$t(`veo.description.translation`)},null,8,[`content`])]),e(`div`,et,[a(f,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,class:`value`},null,8,[`modelValue`])])])])}var nt=U(Ye,[[`render`,tt]]),rt=v({name:`AspectRatioSelector`,data(){return{options:[{value:`16:9`,label:`16:9`,width:25,height:13},{value:`9:16`,label:`9:16`,width:13,height:25}]}},computed:{active(){return this.options.findIndex(e=>e.value===this.value)||0},value:{get(){return this.$store.state.veo?.config?.aspect_ratio},set(e){console.debug(`set aspect_ratio`,e),this.$store.commit(`veo/setConfig`,{...this.$store.state?.veo?.config,aspect_ratio:e})}}},mounted(){this.value||=ae}}),it={class:`text-sm font-bold mb-2 block`},at={class:`items`},ot=[`onClick`],st={class:`name`};function ct(t,r,a,o,l,u){return g(),s(`div`,null,[e(`span`,it,i(t.$t(`veo.name.ratio`)),1),e(`div`,at,[(g(!0),s(c,null,h(t.options,(r,a)=>(g(),s(`div`,{key:a,class:n({active:t.active===a,item:!0}),onClick:e=>t.value=r.value},[e(`div`,{class:n([`preview`,r.label])},[e(`div`,{class:`rect`,style:m({width:r.width+`px`,height:r.height+`px`})},null,4)],2),e(`p`,st,i(r.label),1)],10,ot))),128))])])}var lt=U(rt,[[`render`,ct],[`__scopeId`,`data-v-28c472c4`]]),ut=v({name:`StartEndImage`,components:{UploadIcon:ne,ElUpload:C,ElButton:Y,InfoIcon:M,ImagePreview:Q},mixins:[_e,he,fe,ue],props:{limit:{type:Number,default:2},ingredients:{type:Boolean,default:!1}},emits:[`change`],data(){return{fileList:[],uploadUrl:pe()+`/api/v1/files/`}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},title(){return this.ingredients?this.$t(`veo.button.actionIngredients`):this.$t(`veo.name.startEndImage`)},description(){return this.ingredients?this.$t(`veo.description.imageUrl`):this.$t(`veo.description.uploadStartEndImage`)},urls(){return this.fileList.map(e=>e.response?.file_url||e.url).filter(e=>!!e)},value:{get(){return this.$store.state?.veo?.config?.image_urls},set(){}}},watch:{limit(){this.fileList.length>this.limit&&(this.fileList=this.fileList.slice(0,this.limit),this.onSetStartEndImageUrl())}},mounted(){this.fileList=(this.value||[]).map((e,t)=>({name:`reference-${t+1}`,percentage:100,response:{file_url:e},status:`success`,uid:Date.now()+t,url:e}))},methods:{onExceed(){D.warning(this.$t(`veo.message.uploadReferencesLimit`,{limit:this.limit}))},onError(){D.error(this.$t(`veo.message.uploadReferencesError`))},onSetStartEndImageUrl(){let e=this.urls;this.$store.commit(`veo/setConfig`,{...this.$store.state?.veo?.config,image_urls:e})},async onSuccess(){this.onSetStartEndImageUrl()},onRemove(e){let t=this.fileList.indexOf(e);t>=0&&this.fileList.splice(t,1),this.onSetStartEndImageUrl()}}}),dt={class:`relative`},ft={class:`flex justify-between`},pt={class:`flex justify-start items-center`},mt={class:`text-sm font-bold`};function ht(t,n,c,u,d,m){let h=l(`info-icon`),_=l(`image-preview`),v=l(`upload-icon`),y=l(`el-button`),b=l(`el-upload`);return g(),s(`div`,dt,[e(`div`,ft,[e(`div`,pt,[e(`span`,mt,i(t.title),1),a(h,{content:t.description},null,8,[`content`])])]),a(b,{ref:`uploader`,"file-list":t.fileList,"onUpdate:fileList":n[0]||=e=>t.fileList=e,name:`file`,accept:`.png,.jpg,.jpeg,.gif,.bmp,.webp`,limit:t.limit,class:`upload-wrapper`,multiple:!0,"before-upload":t.beforeUploadSizeGuard,action:t.uploadUrl,"list-type":`picture`,"on-exceed":t.onExceed,"on-error":t.onError,"on-success":t.onSuccess,headers:t.headers},{file:p(({file:e})=>[e.url&&e.percentage!==void 0?(g(),f(_,{key:0,url:e.url,name:e.name,percentage:e.percentage,onRemove:n=>t.onRemove(e)},null,8,[`url`,`name`,`percentage`,`onRemove`])):o(``,!0)]),default:p(()=>[a(y,{round:``,type:`primary`,size:`small`,class:`btn btn-upload`},{default:p(()=>[a(v,{class:`icon mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`veo.button.uploadReferences`)),1)]),_:1})]),_:1},8,[`file-list`,`limit`,`before-upload`,`action`,`on-exceed`,`on-error`,`on-success`,`headers`])])}var gt=U(ut,[[`render`,ht],[`__scopeId`,`data-v-a4391199`]]),_t=v({name:`PromptInput`,components:{PromptTextarea:N},computed:{prompt:{get(){return this.$store.state.veo?.config?.prompt},set(e){this.$store.commit(`veo/setConfig`,{...this.$store.state.veo?.config,prompt:e})}}},mounted(){this.prompt||=``}});function vt(e,t,n,r,i,a){let o=l(`prompt-textarea`);return g(),f(o,{modelValue:e.prompt,"onUpdate:modelValue":t[0]||=t=>e.prompt=t,title:e.$t(`veo.name.prompt`),info:e.$t(`veo.description.prompt`),placeholder:e.$t(`veo.placeholder.prompt`)},null,8,[`modelValue`,`title`,`info`,`placeholder`])}var yt=v({name:`ConfigPanel`,components:{MagicIcon:V,ElButton:Y,ServicePricingSummary:Ce,PromptInput:U(_t,[[`render`,vt]]),ModelSelector:Ue,StartEndImage:gt,ActionSelector:Je,TranslationSelector:nt,AspectRatioSelector:lt,ScenarioPaymentMode:Te},emits:[`generate`],data(){return{quoteTimer:0,quoteRunId:0}},computed:{canGenerate(){return Me(`veo`,J(this.config))},config(){return this.$store.state.veo?.config},showsImages(){return this.config?.action===`image2video`||this.config?.action===`ingredients2video`},imageLimit(){return this.config?.action===`ingredients2video`?3:2},consumption(){return ye(this.config,this.service?.cost)},service(){return this.$store.state.veo?.service},walletMode(){return X()&&q(`veo`).mode===`wallet`}},watch:{walletMode:{handler(e){e&&this.scheduleQuote()},immediate:!0},config:{handler(){this.walletMode&&this.scheduleQuote()},deep:!0}},beforeUnmount(){window.clearTimeout(this.quoteTimer),this.quoteRunId+=1},methods:{scheduleQuote(){window.clearTimeout(this.quoteTimer),this.quoteRunId+=1;let e=q(`veo`);e.quoteUsdc=void 0,e.quoteLoading=!1,this.canGenerate&&(this.quoteTimer=window.setTimeout(this.refreshQuote,350))},async refreshQuote(){if(!this.canGenerate)return;let e=q(`veo`),t=++this.quoteRunId;e.quoteLoading=!0,e.quoteUsdc=void 0;try{let n=await Z.quote(J(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`)}}}),bt={class:`flex flex-col h-full`},xt={class:`flex-1 overflow-y-auto p-5`},St={class:`flex flex-col items-center justify-center px-5 pb-5`};function Ct(t,n,c,u,d,m){let h=l(`action-selector`),_=l(`model-selector`),v=l(`start-end-image`),y=l(`prompt-input`),b=l(`aspect-ratio-selector`),x=l(`translation-selector`),S=l(`scenario-payment-mode`),C=l(`service-pricing-summary`),w=l(`magic-icon`),T=l(`el-button`);return g(),s(`div`,bt,[e(`div`,xt,[a(h,{class:`mb-4`}),a(_,{class:`mb-4`}),t.showsImages?(g(),f(v,{key:t.config?.action,class:`mb-4`,limit:t.imageLimit,ingredients:t.config?.action===`ingredients2video`},null,8,[`limit`,`ingredients`])):o(``,!0),a(y,{class:`mb-4`}),a(b,{class:`mb-4`}),a(x,{class:`mb-4`})]),e(`div`,St,[a(S,{scenario:`veo`}),t.walletMode?o(``,!0):(g(),f(C,{key:0,value:t.consumption,service:t.service},null,8,[`value`,`service`])),a(T,{type:`primary`,class:`btn w-full`,round:``,disabled:!t.canGenerate,onClick:t.onGenerate},{default:p(()=>[a(w,{class:`mr-2`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`veo.button.generate`)),1)]),_:1},8,[`disabled`,`onClick`])])])}var wt=U(yt,[[`render`,Ct]]),Tt=v({name:`TaskPreview`,components:{DeleteIcon:B,ApplicationIcon:A,ChannelIcon:L,ExpandIcon:F,InfoIcon:ee,LanguageIcon:z,LightningIcon:re,MagicIcon:V,TimeIcon:j,WarningIcon:te,CopyToClipboard:be,ElAlert:T,VideoPlayer:we,ImagePreview:Q,ElTooltip:w,ElButton:Y,ApiCodeButton:Ee,ReportButton:xe},props:{modelValue:{type:Object,required:!0}},data(){return{}},computed:{referenceImages(){let e=this.modelValue?.request?.image_urls;return Array.isArray(e)?e.filter(e=>typeof e==`string`&&!!e):[]},actionLabel(){let e=this.modelValue?.request,t=e?.model===`veo31-fast-ingredients`||this.referenceImages.length>2?`ingredients2video`:this.referenceImages.length>0?`image2video`:`text2video`,n=e?.action||t;return this.$t({text2video:`veo.button.action1`,image2video:`veo.button.action2`,ingredients2video:`veo.button.actionIngredients`}[n]||`veo.name.action`)},traceId(){return this.modelValue?.response?.trace_id||this.modelValue?.trace_id},taskInfoClass(){return this.modelValue?.response?.success===!0?`success`:this.modelValue?.response?.success===!1?`failure`:`info`}},methods:{async onDelete(){let e=this.modelValue?.id;if(e){try{await G.confirm(this.$t(`common.message.deleteTaskConfirm`),this.$t(`common.button.delete`),{type:`warning`,confirmButtonText:this.$t(`common.button.delete`),cancelButtonText:this.$t(`common.button.cancel`),confirmButtonClass:`el-button--danger`})}catch{return}try{await this.$store.dispatch(`veo/deleteTask`,{id:e}),D.success(this.$t(`common.message.deleteTaskSuccess`))}catch{D.error(this.$t(`common.message.deleteTaskFailed`))}}},onDownload(e,t){e?.stopPropagation(),console.log(`on download`),window.open(t,`_blank`)},onOpenVideo(e){window.open(e,`_blank`)}}}),Et={class:`preview`},Dt={class:`left`},Ot={class:`main`},kt={class:`bot`},At={class:`datetime`},jt=[`aria-label`],Mt={class:`info`},Nt={key:0,class:`flex justify-start items-center gap-2 mt-2 w-full overflow-x-auto`},Pt={key:1,class:`prompt mt-2`},Ft={key:0},It={key:1},Lt={key:0,class:n({content:!0,failed:!0})},Rt={key:0,class:`mb-4`},zt={key:1,class:n({operations:!0,"mt-2":!0})},Bt={key:1,class:n({content:!0})},$={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Vt={class:n({content:!0})},Ht={key:0,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Ut={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Wt={key:1,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Gt={key:2,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Kt={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},qt={key:3,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Jt={key:4,class:`text-[var(--el-text-color-regular)] text-xs mb-0`};function Yt(u,d,m,_,v,y){let b=l(`capability-presentation`),x=l(`delete-icon`),S=l(`el-tooltip`),C=l(`image-preview`),w=l(`video-player`),T=l(`el-button`),E=l(`api-code-button`),D=l(`report-button`),O=l(`warning-icon`),k=l(`info-icon`),A=l(`copy-to-clipboard`),j=l(`el-alert`),M=l(`application-icon`),N=l(`lightning-icon`),P=l(`expand-icon`),F=l(`language-icon`),I=l(`magic-icon`),L=l(`time-icon`),R=l(`channel-icon`);return g(),s(`div`,Et,[e(`div`,Dt,[a(b,{capability:`veo`,part:`avatar`,class:`avatar`})]),e(`div`,Ot,[e(`div`,kt,[a(b,{capability:`veo`,part:`name`}),e(`span`,At,i(u.$dayjs.format(``+new Date(parseFloat((u.modelValue?.created_at||``).toString())*1e3))),1),a(S,{effect:`dark`,content:u.$t(`common.button.delete`),placement:`top`},{default:p(()=>[u.modelValue?.id?(g(),s(`button`,{key:0,type:`button`,class:`btn-delete`,"aria-label":u.$t(`common.button.delete`),onClick:d[0]||=t((...e)=>u.onDelete&&u.onDelete(...e),[`stop`])},[a(x,{size:`1em`,"aria-hidden":`true`,focusable:`false`})],8,jt)):o(``,!0)]),_:1},8,[`content`])]),e(`div`,Mt,[u.referenceImages.length>0?(g(),s(`div`,Nt,[(g(!0),s(c,null,h(u.referenceImages,(e,t)=>(g(),f(C,{key:`${t}-${e}`,url:e,name:`reference-${t+1}`,closable:!1},null,8,[`url`,`name`]))),128))])):o(``,!0),u.modelValue?.request?.prompt?(g(),s(`p`,Pt,[r(i(u.modelValue?.request?.prompt)+` `,1),u.modelValue?.response?o(``,!0):(g(),s(`span`,Ft,` - (`+i(u.$t(`veo.status.pending`))+`) `,1)),Array.isArray(u.modelValue?.response?.data)&&u.modelValue?.response?.data[0]?.state===`running`?(g(),s(`span`,It,` - (`+i(u.$t(`veo.status.processing`))+`) `,1)):o(``,!0)])):o(``,!0)]),u.modelValue?.response?.success===!0&&u.modelValue?.response?.data?(g(),s(`div`,Lt,[u.modelValue?.response?.data[0]?.video_url?(g(),s(`div`,Rt,[a(w,{src:u.modelValue?.response?.data[0]?.video_url},null,8,[`src`])])):o(``,!0),u.modelValue?.response.success?(g(),s(`div`,zt,[a(S,{class:`box-item`,effect:`dark`,content:u.$t(`veo.message.downloadVideo`),placement:`top-start`},{default:p(()=>[u.modelValue?.response?.data[0]?.video_url?(g(),f(T,{key:0,type:`info`,size:`small`,class:`btn-action`,onClick:d[1]||=e=>u.onDownload(e,u.modelValue?.response?.data[0]?.video_url)},{default:p(()=>[r(i(u.$t(`veo.button.download`)),1)]),_:1})):o(``,!0)]),_:1},8,[`content`]),a(E,{path:`/veo/videos`,body:u.modelValue?.request},null,8,[`body`]),a(D,{service:`veo`,"target-id":u.modelValue?.id,snapshot:{prompt:u.modelValue?.request?.prompt}},null,8,[`target-id`,`snapshot`])])):o(``,!0)])):o(``,!0),u.modelValue?.response?.success===!1?(g(),s(`div`,Bt,[a(j,{closable:!1,class:`failure`},{template:p(()=>[a(O,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(u.$t(`veo.name.failure`)),1)]),default:p(()=>[e(`p`,$,[a(k,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(u.$t(`veo.name.failureReason`))+`: `+i(u.modelValue?.response?.error?.message)+` `,1),a(A,{content:u.modelValue?.response?.error?.message},null,8,[`content`])])]),_:1})])):o(``,!0),e(`div`,Vt,[a(j,{closable:!1,class:n([`mt-2`,`task-metadata`,u.taskInfoClass])},{default:p(()=>[u.modelValue?.request?.model?(g(),s(`p`,Ht,[a(M,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(u.$t(`veo.name.model`))+`: `+i(u.modelValue?.request?.model),1)])):o(``,!0),e(`p`,Ut,[a(N,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(u.$t(`veo.name.action`))+`: `+i(u.actionLabel),1)]),u.modelValue?.request?.aspect_ratio?(g(),s(`p`,Wt,[a(P,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(u.$t(`veo.name.ratio`))+`: `+i(u.modelValue?.request?.aspect_ratio),1)])):o(``,!0),u.modelValue?.request?.translation===void 0?o(``,!0):(g(),s(`p`,Gt,[a(F,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(u.$t(`veo.name.translation`))+`: `+i(u.$t(u.modelValue?.request?.translation?`seedance.button.on`:`seedance.button.off`)),1)])),e(`p`,Kt,[a(I,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(u.$t(`veo.name.taskId`))+`: `+i(u.modelValue?.id)+` `,1),a(A,{content:u.modelValue?.id,class:`btn-copy inline-block`},null,8,[`content`])]),u.modelValue?.elapsed?(g(),s(`p`,qt,[a(L,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(u.$t(`veo.name.elapsed`))+`: `+i(u.modelValue?.elapsed?.toFixed(2))+`s `,1)])):o(``,!0),u.traceId?(g(),s(`p`,Jt,[a(R,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(u.$t(`veo.name.traceId`))+`: `+i(u.traceId)+` `,1),a(A,{content:u.traceId,class:`btn-copy inline-block`},null,8,[`content`])])):o(``,!0)]),_:1},8,[`class`])])])])}var Xt=v({name:`RecentPanel`,components:{TaskPreview:U(Tt,[[`render`,Yt],[`__scopeId`,`data-v-eb0880c2`]]),NoTasks:I,BotPlaceholder:De,ScrollList:P},props:{loading:{type:Boolean,default:!1}},emits:[`reach-top`],data(){return{job:0}},computed:{tasks(){return{...this.$store.state.veo?.tasks,items:this.$store.state.veo?.tasks?.items?.slice()}}},methods:{getScrollElement(){return this.$refs.scrollList?.getScrollElement?.()}}}),Zt={key:0},Qt={key:2,class:`w-full h-full flex items-center justify-center`};function $t(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`,Zt,[a(d)])):e.tasks?.items?.length&&e.tasks?.items?.length>0?(g(),f(_,{key:1,ref:`scrollList`,class:`tasks h-full w-full overflow-y-auto`,loading:e.loading,onReachTop:t[0]||=t=>e.$emit(`reach-top`)},{default:p(()=>[(g(!0),s(c,null,h(e.tasks?.items,(e,t)=>(g(),f(m,{key:t,"model-value":e},null,8,[`model-value`]))),128))]),_:1},8,[`loading`])):o(``,!0),e.tasks?.items?.length===0?(g(),s(`div`,Qt,[a(v)])):o(``,!0)],64)}var en=v({name:`VeoIndex`,components:{ConfigPanel:wt,Layout:Re,RecentPanel:U(Xt,[[`render`,$t]]),ShowcaseResultTabs:ke},mixins:[ve,Ae(`veo`),Oe(`veo`)],inject:[`initialized`],data(){return{task:void 0,job:0,loadingMore:!1,fetchingTasks:!1,walletTaskIds:[]}},computed:{applicationsLoading(){return this.$store.state.veo?.status?.getApplications===E.Request},tasksLoading(){return this.$store.state.veo?.status?.getTasks===E.Request||this.fetchingTasks},credential(){return this.$store.state.veo.credential},config(){return this.$store.state.veo.config},tasks(){return this.$store.state.veo.tasks},walletMode(){return X()&&q(`veo`).mode===`wallet`}},watch:{walletMode:{async handler(e,t){if(!(t===void 0||e===t)){if(this.$store.commit(`veo/setTasks`,void 0),e&&!this.job&&(this.job=window.setInterval(this.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 R({tasks:this.tasks,getTasks:()=>this.tasks,loading:this.loadingMore,setLoading:e=>this.loadingMore=e,isBlocked:()=>this.tasksLoading||this.applicationsLoading,fetch:e=>this.onGetTasks({createdAtMax:e}),getScrollElement:()=>this.getTasksScrollElement()})},async onGetService(){console.debug(`start onGetService`),await this.$store.dispatch(`veo/getService`),console.debug(`end onGetService`)},async onGetApplication(){console.debug(`start onGetApplication`),await this.$store.dispatch(`veo/getApplications`),console.debug(`end onGetApplication`),await this.onGetTasks()},async onScrollDown(){await this.$nextTick();let e=this.getTasksScrollElement();e&&(e.scrollTop=e.scrollHeight)},async onGetTasks(e){if(this.applicationsLoading||this.fetchingTasks){console.debug(`loading`);return}console.debug(`start onGetTasks`,e);let{limit:t=5,createdAtMin:n,createdAtMax:r}=e||{};console.debug(`limit`,t,`createdAtMin`,n,`createdAtMax`,r),this.fetchingTasks=!0;try{await this.$store.dispatch(`veo/getTasks`,{limit:t,createdAtMin:n,createdAtMax:r,...this.walletMode&&!this.credential?.token?{mode:`x402`,ids:this.walletTaskIds}:{}})}finally{this.fetchingTasks=!1}},async onGenerate(){let e=J(this.config),t=je(`veo`,e);if(t){D.error(this.$t(`common.message.${t}`));return}if(!se(this.uploadTracker,e=>this.$t(e),e=>D.warning(e)))return;if((e.action===`image2video`||e.action===`ingredients2video`)&&!(e.image_urls&&e.image_urls.length>0)){D.warning(this.$t(`veo.message.imageRequired`));return}let n;if(this.walletMode){let t=this.getWalletContext();if(!t){D.warning(this.$t(`common.x402Scenario.connectWalletFirst`));return}n=Z.generate(e,{mode:`x402`,x402:{wallet:t,confirm:e=>this.confirmWalletPayment(e),identityToken:this.credential?.token}})}else{if(!H())return;let t=this.credential?.token;if(!t)return;n=Z.generate(e,{token:t})}D.info(this.$t(`veo.message.startingTask`)),K(`veo`,n).then(e=>{let t=e?.data?.task_id;this.walletMode&&!this.credential?.token&&t&&!this.walletTaskIds.includes(t)&&this.walletTaskIds.unshift(t),D.success(this.$t(`veo.message.startTaskSuccess`))}).catch(e=>{e instanceof ge||le(e,`veo`)||(this.walletMode?D.error(this.$t(`common.x402Scenario.paymentFailed`)):D.error(this.$t(`veo.message.startTaskFailed`)))}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})},getWalletContext(){return de(this.$wallet)},async confirmWalletPayment(e){return G.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 tn(e,t,n,r,i,o){let s=l(`config-panel`),c=l(`recent-panel`),u=l(`showcase-result-tabs`),d=l(`layout`);return g(),f(d,null,{config:p(()=>[a(s,{onGenerate:e.onGenerate},null,8,[`onGenerate`])]),result:p(()=>[a(u,{service:`veo`},{tasks:p(()=>[a(c,{ref:`recentPanel`,loading:e.loadingMore,onReachTop:e.onReachTop},null,8,[`loading`,`onReachTop`])]),_:1})]),_:1})}var nn=U(en,[[`render`,tn]]);export{nn as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import"./rolldown-runtime--c01j_DQ.js";import{A as e,C as t,Gt as n,I as r,Jt as i,L as a,M as o,N as s,T as c,at as l,ht as u,it as d,j as f,mt as p,qt as m,rt as h,tt as g,x as _,z as v}from"./vendor-chart-Dw-P17PN.js";import{r as y,t as b}from"./select-BGkNWMh9.js";import{t as x}from"./upload-NGwnPPlZ.js";import{t as S}from"./tooltip-Lqp4poID.js";import{t as C}from"./alert-BprQRUmf.js";import{h as w,v as T}from"./models-CaAeRVKM.js";import{t as E}from"./drawer-BOOfQsQd.js";import{t as D}from"./box-D6lx8lT2.js";import{t as O}from"./clock-1txUnUIB.js";import{a as k,i as A,n as j,o as M,r as ee,s as te,t as ne}from"./pagination-CJYdJ-4v.js";import{t as re}from"./info-HaRat4AM.js";import{t as ie}from"./trash-2-Do-u3hXn.js";import{t as ae}from"./triangle-alert-Bggkkxk6.js";import{t as N}from"./upload-CSGwkxuc.js";import{t as P}from"./wand-sparkles-DbyPXHvt.js";import{Bt as oe,Ft as se,Gt as ce,Ht as le,It as ue,Jt as de,Kt as fe,Lt as pe,Qt as F,Rt as me,Ut as I,Vt as L,Wt as R,Xt as z,Zt as he,qt as ge}from"./constants-DjRIlNef.js";import{$ as _e,A as B,Aa as V,Ja as H,Ki as ve,Kn as U,Ni as W,O as ye,Pa as G,Qi as be,Y as K,ai as xe,et as q,ji as J,nt as Y,qn as X,ri as Se,rt as Z,tt as Ce,vn as we}from"./index-BD_7p-5J.js";import{t as Te}from"./CopyToClipboard-DJpxsYt7.js";import{t as Ee}from"./ReportButton-Ck_k83fR.js";import{t as Q}from"./ImagePreview-C28tnA4Y.js";import{n as De}from"./taskDrawerMixin-DyAUhFEq.js";import{t as Oe}from"./ServicePricingSummary-BrKegtWK.js";import{t as ke}from"./VideoPlayer-sC3lXtsY.js";import{t as Ae}from"./ScenarioPaymentMode-D54kz0_D.js";import{t as je}from"./ApiCodeButton-DVo6zCaG.js";import{t as Me}from"./BotPlaceholder-CDAbpMqY.js";import{t as Ne}from"./taskPollingMixin-CcLxtz8z.js";import{t as Pe}from"./ShowcaseResultTabs-BjOlINh7.js";import{t as Fe}from"./showcaseRecreateMixin-Lq7H3eKy.js";var Ie=v({name:`LayoutGrokVideo`,components:{MagicIcon:P,ElDrawer:E,ElButton:H},mixins:[De]}),Le={class:`main flex flex-row flex-1`},Re={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)]`},ze={class:`result h-full p-4 flex-1 flex flex-col min-w-0 overflow-x-hidden bg-[var(--app-content-bg)]`};function Be(t,n,r,i,o,c){let f=l(`magic-icon`),m=l(`el-button`),h=l(`el-drawer`);return g(),s(`div`,Le,[e(`div`,Re,[d(t.$slots,`config`,{},void 0,!0)]),e(`div`,ze,[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 Ve=B(Ie,[[`render`,Be],[`__scopeId`,`data-v-babf4135`]]),He=v({name:`GrokVideoPromptInput`,components:{PromptTextarea:A},computed:{prompt:{get(){return this.$store.state.grokvideo?.config?.prompt},set(e){this.$store.commit(`grokvideo/setConfig`,{...this.$store.state.grokvideo?.config,prompt:e})}}},mounted(){this.prompt||=``}});function Ue(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(`grokvideo.name.prompt`),info:e.$t(`grokvideo.description.prompt`),placeholder:e.$t(`grokvideo.placeholder.prompt`),"min-rows":5},null,8,[`modelValue`,`title`,`info`,`placeholder`])}var We=B(He,[[`render`,Ue]]),Ge=v({name:`GrokVideoModelSelector`,components:{ElSelect:y,ElOption:b,InfoIcon:k},data(){return{options:[{value:L,label:this.$t(`grokvideo.model.fastReverse`)},{value:I,label:this.$t(`grokvideo.model.reverse`)},{value:le,label:this.$t(`grokvideo.model.official`)},{value:oe,label:this.$t(`grokvideo.model.official15`)}]}},computed:{value:{get(){return this.$store.state.grokvideo?.config?.model},set(e){this.$store.commit(`grokvideo/setConfig`,{...this.$store.state.grokvideo?.config,model:e})}}},mounted(){this.value||=se}}),Ke={class:`field`},qe={class:`label`},Je={class:`box`},Ye={class:`title font-bold`};function Xe(t,n,r,o,u,d){let m=l(`info-icon`),_=l(`el-option`),v=l(`el-select`);return g(),s(`div`,Ke,[e(`div`,qe,[e(`div`,Je,[e(`h2`,Ye,i(t.$t(`grokvideo.name.model`)),1),a(m,{content:t.$t(`grokvideo.description.model`),class:`info`},null,8,[`content`])])]),a(v,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,class:`value`,placeholder:t.$t(`grokvideo.placeholder.select`)},{default:p(()=>[(g(!0),s(c,null,h(t.options,e=>(g(),f(_,{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`])])}var Ze=B(Ge,[[`render`,Xe],[`__scopeId`,`data-v-9e6fef88`]]),Qe=v({name:`GrokVideoDurationSelector`,components:{ElSelect:y,ElOption:b,InfoIcon:k},computed:{model(){return this.$store.state.grokvideo?.config?.model},maxDuration(){return z(this.model)},minDuration(){return he(this.model)},options(){return me.filter(e=>e>=this.minDuration&&e<=this.maxDuration).map(e=>({value:e,label:`${e}s`}))},value:{get(){return this.$store.state.grokvideo?.config?.duration},set(e){this.$store.commit(`grokvideo/setConfig`,{...this.$store.state.grokvideo?.config,duration:e})}}},watch:{maxDuration(e){this.value&&this.value>e&&(this.value=e)},minDuration(e){this.value&&this.value<e&&(this.value=e)}},mounted(){this.value||=6}}),$e={class:`field`},et={class:`label`},tt={class:`box`},nt={class:`title font-bold`};function rt(t,n,r,o,u,d){let m=l(`info-icon`),_=l(`el-option`),v=l(`el-select`);return g(),s(`div`,$e,[e(`div`,et,[e(`div`,tt,[e(`h2`,nt,i(t.$t(`grokvideo.name.duration`)),1),a(m,{content:t.$t(`grokvideo.description.duration`),class:`info`},null,8,[`content`])])]),a(v,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,class:`value`,placeholder:t.$t(`grokvideo.placeholder.select`)},{default:p(()=>[(g(!0),s(c,null,h(t.options,e=>(g(),f(_,{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`])])}var it=B(Qe,[[`render`,rt],[`__scopeId`,`data-v-673a8bbc`]]),at=v({name:`GrokVideoResolutionSelector`,components:{InfoIcon:k},data(){return{options:[{value:ge,label:`480p`},{value:de,label:`720p`},{value:fe,label:`1080p`}]}},computed:{value:{get(){return this.$store.state.grokvideo?.config?.resolution},set(e){this.$store.commit(`grokvideo/setConfig`,{...this.$store.state.grokvideo?.config,resolution:e})}}},mounted(){this.value||=pe}}),ot={class:`resolution`},st={class:`header`},ct={class:`title font-bold`},lt={class:`items`},ut=[`onClick`];function dt(t,r,o,u,d,f){let p=l(`info-icon`);return g(),s(`div`,ot,[e(`div`,st,[e(`h2`,ct,i(t.$t(`grokvideo.name.resolution`)),1),a(p,{content:t.$t(`grokvideo.description.resolution`),class:`info`},null,8,[`content`])]),e(`div`,lt,[(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,ut))),128))])])}var ft=B(at,[[`render`,dt],[`__scopeId`,`data-v-54f22a22`]]),pt=v({name:`GrokVideoRatioSelector`,components:{InfoIcon:k},computed:{options(){return[{value:R,label:`16:9`,w:32,h:18},{value:ce,label:`9:16`,w:18,h:32},{value:`1:1`,label:`1:1`,w:24,h:24},{value:`4:3`,label:`4:3`,w:28,h:21},{value:`3:4`,label:`3:4`,w:21,h:28},{value:`3:2`,label:`3:2`,w:30,h:20},{value:`2:3`,label:`2:3`,w:20,h:30}]},value:{get(){return this.$store.state.grokvideo?.config?.aspect_ratio},set(e){this.$store.commit(`grokvideo/setConfig`,{...this.$store.state.grokvideo?.config,aspect_ratio:e})}}},mounted(){this.value||=ue}}),mt={class:`ratio`},ht={class:`header`},gt={class:`title font-bold`},_t={class:`items`},vt=[`onClick`],yt={class:`preview`},bt={class:`name`};function xt(t,r,o,u,d,f){let p=l(`info-icon`);return g(),s(`div`,mt,[e(`div`,ht,[e(`h2`,gt,i(t.$t(`grokvideo.name.ratio`)),1),a(p,{content:t.$t(`grokvideo.description.ratio`),class:`info`},null,8,[`content`])]),e(`div`,_t,[(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`,yt,[e(`div`,{class:`rect`,style:m({width:r.w+`px`,height:r.h+`px`})},null,4)]),e(`div`,bt,i(r.label),1)],10,vt))),128))])])}var St=B(pt,[[`render`,xt],[`__scopeId`,`data-v-70115284`]]),Ct=v({name:`GrokVideoImageInput`,components:{UploadIcon:N,ElUpload:x,ElButton:H,InfoIcon:k,ImagePreview:Q},mixins:[Z,Y,q,K],data(){return{fileList:[],uploadUrl:V()+`/api/v1/files/`}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},required(){return F(this.$store.state.grokvideo?.config?.model)},urls(){return this.fileList.map(e=>e?.response?.file_url)}},methods:{onExceed(){T.warning(this.$t(`grokvideo.message.uploadExceed`))},onError(){T.error(this.$t(`grokvideo.message.uploadError`))},onSetImageUrl(){let e=this.urls?.[0];this.$store.commit(`grokvideo/setConfig`,{...this.$store.state.grokvideo?.config,image_url:e||void 0})},async onSuccess(){this.onSetImageUrl()},async onRemove(){this.onSetImageUrl()}}}),wt={class:`relative`},Tt={class:`flex justify-between`},Et={class:`flex justify-start items-center`},Dt={class:`text-sm font-bold`},Ot={key:0,class:`required-badge`};function kt(t,n,c,u,d,m){let h=l(`info-icon`),_=l(`image-preview`),v=l(`upload-icon`),y=l(`el-button`),b=l(`el-upload`);return g(),s(`div`,wt,[e(`div`,Tt,[e(`div`,Et,[e(`span`,Dt,i(t.$t(`grokvideo.name.image`)),1),t.required?(g(),s(`span`,Ot,i(t.$t(`grokvideo.name.required`)),1)):o(``,!0),a(h,{content:t.$t(`grokvideo.description.image`)},null,8,[`content`])])]),a(b,{ref:`uploader`,"file-list":t.fileList,"onUpdate:fileList":n[0]||=e=>t.fileList=e,name:`file`,accept:`.png,.jpg,.jpeg,.gif,.bmp,.webp`,limit:1,class:`upload-wrapper`,multiple:!1,"before-upload":t.beforeUploadSizeGuard,action:t.uploadUrl,"list-type":`picture`,"on-exceed":t.onExceed,"on-error":t.onError,"on-success":t.onSuccess,"on-remove":t.onRemove,headers:t.headers},{file:p(({file:e})=>[e.url&&e.percentage!==void 0?(g(),f(_,{key:0,url:e.url,name:e.name,percentage:e.percentage,onRemove:n=>t.fileList.splice(t.fileList.indexOf(e),1)},null,8,[`url`,`name`,`percentage`,`onRemove`])):o(``,!0)]),default:p(()=>[a(y,{round:``,type:`primary`,size:`small`,class:`btn btn-upload`},{default:p(()=>[a(v,{class:`icon mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`grokvideo.button.upload`)),1)]),_:1})]),_:1},8,[`file-list`,`before-upload`,`action`,`on-exceed`,`on-error`,`on-success`,`on-remove`,`headers`])])}var At=B(Ct,[[`render`,kt],[`__scopeId`,`data-v-ea7c012a`]]),jt=4,Mt=v({name:`GrokVideoReferenceImagesInput`,components:{UploadIcon:N,ElUpload:x,ElButton:H,InfoIcon:k,ImagePreview:Q},mixins:[Z,Y,q,K],data(){return{fileList:[],uploadUrl:V()+`/api/v1/files/`,limit:jt,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.grokvideo?.config?.reference_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(){T.warning(this.$t(`grokvideo.message.uploadReferenceExceed`))},onError(){T.error(this.$t(`grokvideo.message.uploadError`))},onSetReferenceImages(){let e=this.urls;this.suppressWatch=!0,this.$store.commit(`grokvideo/setConfig`,{...this.$store.state.grokvideo?.config,reference_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()}}}),Nt={class:`field mb-[10px] flex min-h-8 w-full items-center justify-between gap-3`},Pt={class:`flex min-w-0 items-center`},Ft={class:`title m-0 text-[14px] font-bold`},It={class:`file-list flex flex-wrap gap-[10px]`};function Lt(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`,Nt,[e(`div`,Pt,[e(`h2`,Ft,i(t.$t(`grokvideo.name.referenceImages`)),1),a(_,{content:t.$t(`grokvideo.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(`grokvideo.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 Rt=v({name:`GrokVideoConfigPanel`,components:{MagicIcon:P,ElButton:H,PromptInput:We,ModelSelector:Ze,DurationSelector:it,ResolutionSelector:ft,RatioSelector:St,ImageInput:At,ReferenceImagesInput:B(Mt,[[`render`,Lt]]),ServicePricingSummary:Oe,ScenarioPaymentMode:Ae},emits:[`generate`],data(){return{quoteTimer:0,quoteRunId:0}},computed:{config(){return this.$store.state.grokvideo?.config},supportsReferenceImages(){return!F(this.$store.state.grokvideo?.config?.model)},consumption(){return we(this.config,this.service?.cost)},service(){return this.$store.state.grokvideo?.service},walletMode(){return J()&&W(`grokvideo`).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(`grokvideo`),t=++this.quoteRunId;e.quoteLoading=!0,e.quoteUsdc=void 0;try{let n=await X.quote(U(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`)}}}),zt={class:`flex flex-col h-full`},Bt={class:`flex-1 overflow-y-auto p-5`},Vt={class:`flex flex-col items-center justify-center px-5 pb-5`};function Ht(t,n,c,u,d,m){let h=l(`prompt-input`),_=l(`model-selector`),v=l(`ratio-selector`),y=l(`resolution-selector`),b=l(`duration-selector`),x=l(`image-input`),S=l(`reference-images-input`),C=l(`scenario-payment-mode`),w=l(`service-pricing-summary`),T=l(`magic-icon`),E=l(`el-button`);return g(),s(`div`,zt,[e(`div`,Bt,[a(h,{class:`mb-4`}),a(_,{class:`mb-4`}),a(v,{class:`mb-4`}),a(y,{class:`mb-4`}),a(b,{class:`mb-4`}),a(x,{class:`mb-4`}),t.supportsReferenceImages?(g(),f(S,{key:0,class:`mb-4`})):o(``,!0)]),e(`div`,Vt,[a(C,{scenario:`grokvideo`}),t.walletMode?o(``,!0):(g(),f(w,{key:0,value:t.consumption,service:t.service},null,8,[`value`,`service`])),a(E,{type:`primary`,class:`btn w-full`,round:``,onClick:t.onGenerate},{default:p(()=>[a(T,{class:`mr-2`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`grokvideo.button.generate`)),1)]),_:1},8,[`onClick`])])])}var Ut=B(Rt,[[`render`,Ht]]),Wt=v({name:`GrokVideoTaskPreview`,components:{DeleteIcon:ie,ApplicationIcon:D,ChannelIcon:te,FullscreenIcon:M,InfoIcon:re,MagicIcon:P,TimeIcon:O,WarningIcon:ae,CopyToClipboard:Te,ElAlert:C,VideoPlayer:ke,ElTooltip:S,ElButton:H,ImagePreview:Q,ApiCodeButton:je,ReportButton:Ee},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_url},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 G.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(`grokvideo/deleteTask`,{id:e}),T.success(this.$t(`common.message.deleteTaskSuccess`))}catch{T.error(this.$t(`common.message.deleteTaskFailed`))}}},stopTimer(){this.timer&&=(window.clearInterval(this.timer),0)},onDownload(e){window.open(e,`_blank`)}}}),Gt={class:`preview`},Kt={class:`left`},qt={class:`main`},Jt={class:`bot`},Yt={class:`datetime`},Xt=[`aria-label`],Zt={class:`info`},Qt={key:0,class:`flex justify-start items-center gap-2 mt-2 w-full overflow-x-auto`},$t={key:1,class:`prompt mt-2`},en={key:0},tn={key:1},nn={key:0,class:n({content:!0})},rn={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`},on={key:1,class:n({content:!0})},sn={key:0,class:`mb-4`},cn={key:1,class:n({operations:!0,"mt-2":!0,"mb-2":!0})},$={key:0,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},ln={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-2`},dn={key:0},fn={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},pn={key:3,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},mn={key:4,class:`text-[var(--el-text-color-regular)] text-xs mb-0`},hn={key:2,class:n({content:!0})},gn={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},_n={key:0,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},vn={key:1,class:`text-[var(--el-text-color-regular)] text-xs mb-0`},yn={key:3,class:n({content:!0})},bn={class:`text-[var(--el-text-color-regular)] text-xs mb-0`};function xn(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(`fullscreen-icon`),A=l(`channel-icon`),j=l(`warning-icon`),M=l(`info-icon`);return g(),s(`div`,Gt,[e(`div`,Kt,[a(h,{capability:`grokvideo`,part:`avatar`,class:`avatar`})]),e(`div`,qt,[e(`div`,Jt,[a(h,{capability:`grokvideo`,part:`name`}),e(`span`,Yt,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,Xt)):o(``,!0)]),_:1},8,[`content`])]),e(`div`,Zt,[n.inputImage?(g(),s(`div`,Qt,[a(y,{url:n.inputImage,name:`image`,closable:!1},null,8,[`url`])])):o(``,!0),n.modelValue?.request?.prompt?(g(),s(`p`,$t,[r(i(n.modelValue?.request?.prompt)+` `,1),n.modelValue?.response?n.video?.state===`processing`||n.video?.state===`pending`?(g(),s(`span`,tn,` - (`+i(n.$t(`grokvideo.status.processing`))+`) `,1)):o(``,!0):(g(),s(`span`,en,` - (`+i(n.$t(`grokvideo.status.pending`))+`) `,1))])):o(``,!0)]),n.modelValue?.response?n.modelValue?.response?.success===!0?(g(),s(`div`,on,[n.video?.video_url?(g(),s(`div`,sn,[a(w,{src:n.video?.video_url},null,8,[`src`])])):o(``,!0),n.video?.video_url?(g(),s(`div`,cn,[a(v,{class:`box-item`,effect:`dark`,content:n.$t(`grokvideo.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:`/grok/videos`,body:n.modelValue?.request},null,8,[`body`]),a(D,{service:`grokvideo`,"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`,$,[a(O,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`grokvideo.name.model`))+`: `+i(n.modelValue?.request?.model),1)])):o(``,!0),n.video?.duration?(g(),s(`p`,ln,[a(b,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`grokvideo.name.duration`))+`: `+i(n.video?.duration)+`s `,1)])):o(``,!0),n.modelValue?.request?.resolution?(g(),s(`p`,un,[a(k,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`grokvideo.name.resolution`))+`: `+i(n.modelValue?.request?.resolution)+` `,1),n.modelValue?.request?.aspect_ratio?(g(),s(`span`,dn,` · `+i(n.modelValue?.request?.aspect_ratio),1)):o(``,!0)])):o(``,!0),e(`p`,fn,[a(x,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`grokvideo.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`,pn,[a(b,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`grokvideo.name.elapsed`))+`: `+i(n.modelValue?.elapsed?.toFixed(2))+`s `,1)])):o(``,!0),n.modelValue?.response?.trace_id?(g(),s(`p`,mn,[a(A,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`grokvideo.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`,hn,[a(C,{closable:!1,class:`failure`},{template:p(()=>[a(j,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`grokvideo.name.failure`)),1)]),default:p(()=>[e(`p`,gn,[a(x,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`grokvideo.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`,_n,[a(M,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`grokvideo.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`,vn,[a(A,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`grokvideo.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`,yn,[a(C,{closable:!1,class:`info`},{template:p(()=>[a(M,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`grokvideo.name.status`)),1)]),default:p(()=>[e(`p`,bn,[a(x,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`grokvideo.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`,nn,[a(C,{closable:!1,class:`info`},{template:p(()=>[a(b,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`grokvideo.status.pending`)),1)]),default:p(()=>[e(`p`,rn,[a(x,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`grokvideo.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`,an,[a(b,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`grokvideo.name.elapsed`))+`: `+i(n.pendingElapsed)+`s `,1)]))]),_:1})]))])])}var Sn=v({name:`GrokVideoRecentPanel`,components:{TaskPreview:B(Wt,[[`render`,xn],[`__scopeId`,`data-v-5c3b05ea`]]),BotPlaceholder:Me,NoTasks:ee,ScrollList:j},props:{loading:{type:Boolean,default:!1}},emits:[`reach-top`],computed:{tasks(){return{...this.$store.state.grokvideo?.tasks,items:this.$store.state.grokvideo?.tasks?.items?.slice()}}},methods:{getScrollElement(){return this.$refs.scrollList?.getScrollElement?.()}}}),Cn={key:0},wn={key:2,class:`w-full h-full flex items-center justify-center`};function Tn(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`,Cn,[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`,wn,[a(v)])):o(``,!0)],64)}var En=v({name:`GrokVideoIndex`,components:{ConfigPanel:Ut,Layout:Ve,RecentPanel:B(Sn,[[`render`,Tn]]),ShowcaseResultTabs:Pe},mixins:[Ce,Fe(`grokvideo`),Ne(`grokvideo`)],inject:[`initialized`],data(){return{task:void 0,job:0,loadingMore:!1,fetchingTasks:!1,walletTaskIds:[]}},computed:{applicationsLoading(){return this.$store.state.grokvideo?.status?.getApplications===w.Request},tasksLoading(){return this.$store.state.grokvideo?.status?.getTasks===w.Request||this.fetchingTasks},credential(){return this.$store.state.grokvideo?.credential},config(){return this.$store.state.grokvideo?.config},tasks(){return this.$store.state.grokvideo?.tasks},walletMode(){return J()&&W(`grokvideo`).mode===`wallet`}},watch:{walletMode:{async handler(e,t){if(!(t===void 0||e===t)){if(this.$store.commit(`grokvideo/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 ne({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(`grokvideo/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(`grokvideo/getTasks`,{limit:t,createdAtMin:n,createdAtMax:r,...this.walletMode&&!this.credential?.token?{mode:`x402`,ids:this.walletTaskIds}:{}})}finally{this.fetchingTasks=!1}},async onGenerate(){if(!_e(this.uploadTracker,e=>this.$t(e),e=>T.warning(e)))return;let e=U(this.config),t=!!e.image_url;if(F(e.model)&&!t){T.warning(this.$t(`grokvideo.message.modelRequiresImage`));return}if(!t&&!e.prompt){T.warning(this.$t(`grokvideo.message.promptOrImageRequired`));return}let n;if(this.walletMode){let t=this.getWalletContext();if(!t){T.warning(this.$t(`common.x402Scenario.connectWalletFirst`));return}n=X.generate(e,{mode:`x402`,x402:{wallet:t,confirm:e=>this.confirmWalletPayment(e),identityToken:this.credential?.token}})}else{if(!be())return;let t=this.credential?.token;if(!t)return;n=X.generate(e,{token:t})}T.info(this.$t(`grokvideo.message.startingTask`)),ve(`grokvideo`,n).then(e=>{let t=e?.data?.task_id;this.walletMode&&!this.credential?.token&&t&&!this.walletTaskIds.includes(t)&&this.walletTaskIds.unshift(t),T.success(this.$t(`grokvideo.message.startTaskSuccess`))}).catch(e=>{let t=e?.response?.data;e instanceof Se||ye(e,`grokvideo`)||(this.walletMode?T.error(this.$t(`common.x402Scenario.paymentFailed`)):T.error(this.$t(`grokvideo.message.startTaskFailed`)+(t?.error?.message||``)))}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})},getWalletContext(){return xe(this.$wallet)},async confirmWalletPayment(e){return G.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 Dn(e,t,n,r,i,o){let s=l(`config-panel`),c=l(`recent-panel`),u=l(`showcase-result-tabs`),d=l(`layout`);return g(),f(d,null,{config:p(()=>[a(s,{onGenerate:e.onGenerate},null,8,[`onGenerate`])]),result:p(()=>[a(u,{service:`grok`},{tasks:p(()=>[a(c,{ref:`recentPanel`,loading:e.loadingMore,onReachTop:e.onReachTop},null,8,[`loading`,`onReachTop`])]),_:1})]),_:1})}var On=B(En,[[`render`,Dn]]);export{On as default};
|
|
1
|
+
import"./rolldown-runtime--c01j_DQ.js";import{A as e,C as t,Gt as n,I as r,Jt as i,L as a,M as o,N as s,T as c,at as l,ht as u,it as d,j as f,mt as p,qt as m,rt as h,tt as g,x as _,z as v}from"./vendor-chart-Dw-P17PN.js";import{r as y,t as b}from"./select-EQ72LO3F.js";import{t as x}from"./upload-DwxzDAyJ.js";import{t as S}from"./tooltip-DP16dKGj.js";import{t as C}from"./alert-BprQRUmf.js";import{h as w,v as T}from"./models-BMOmATPQ.js";import{t as E}from"./drawer-Cw-xPJEK.js";import{t as D}from"./box-B3O3BFZN.js";import{t as O}from"./clock-BiVJAvmB.js";import{a as k,i as A,n as j,o as M,r as ee,s as te,t as ne}from"./pagination-DRbPFMFP.js";import{t as re}from"./info-oi3mtgtk.js";import{t as ie}from"./trash-2-BajHbves.js";import{t as ae}from"./triangle-alert-C51VtTWm.js";import{t as N}from"./upload-BZW4P6RL.js";import{t as P}from"./wand-sparkles-CWwVsj-U.js";import{Bt as oe,Ft as se,Gt as ce,Ht as le,It as ue,Jt as de,Kt as fe,Lt as pe,Qt as F,Rt as me,Ut as I,Vt as L,Wt as R,Xt as z,Zt as he,qt as ge}from"./constants-_TDjlKzj.js";import{$ as _e,$i as ve,A as B,Fa as V,Ki as ye,Kn as H,Ni as U,O as be,Y as W,Ya as G,ai as xe,et as K,ja as q,ji as J,nt as Y,qn as X,ri as Se,rt as Z,tt as Ce,vn as we}from"./index-CZhYemAK.js";import{t as Te}from"./CopyToClipboard-BOqZRXW2.js";import{t as Ee}from"./ReportButton-HdJK0yBN.js";import{t as Q}from"./ImagePreview-DkFAu6RG.js";import{n as De}from"./taskDrawerMixin-DyAUhFEq.js";import{t as Oe}from"./ServicePricingSummary-Cf2pTQAq.js";import{t as ke}from"./VideoPlayer-DSnod19L.js";import{t as Ae}from"./ScenarioPaymentMode-Ck7XJ7yx.js";import{t as je}from"./ApiCodeButton-Kf0YW598.js";import{t as Me}from"./BotPlaceholder-DtVSvucb.js";import{t as Ne}from"./taskPollingMixin-CcLxtz8z.js";import{t as Pe}from"./ShowcaseResultTabs-B3MAcV_C.js";import{t as Fe}from"./showcaseRecreateMixin-B6AE_mI9.js";var Ie=v({name:`LayoutGrokVideo`,components:{MagicIcon:P,ElDrawer:E,ElButton:G},mixins:[De]}),Le={class:`main flex flex-row flex-1`},Re={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)]`},ze={class:`result h-full p-4 flex-1 flex flex-col min-w-0 overflow-x-hidden bg-[var(--app-content-bg)]`};function Be(t,n,r,i,o,c){let f=l(`magic-icon`),m=l(`el-button`),h=l(`el-drawer`);return g(),s(`div`,Le,[e(`div`,Re,[d(t.$slots,`config`,{},void 0,!0)]),e(`div`,ze,[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 Ve=B(Ie,[[`render`,Be],[`__scopeId`,`data-v-babf4135`]]),He=v({name:`GrokVideoPromptInput`,components:{PromptTextarea:A},computed:{prompt:{get(){return this.$store.state.grokvideo?.config?.prompt},set(e){this.$store.commit(`grokvideo/setConfig`,{...this.$store.state.grokvideo?.config,prompt:e})}}},mounted(){this.prompt||=``}});function Ue(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(`grokvideo.name.prompt`),info:e.$t(`grokvideo.description.prompt`),placeholder:e.$t(`grokvideo.placeholder.prompt`),"min-rows":5},null,8,[`modelValue`,`title`,`info`,`placeholder`])}var We=B(He,[[`render`,Ue]]),Ge=v({name:`GrokVideoModelSelector`,components:{ElSelect:y,ElOption:b,InfoIcon:k},data(){return{options:[{value:L,label:this.$t(`grokvideo.model.fastReverse`)},{value:I,label:this.$t(`grokvideo.model.reverse`)},{value:le,label:this.$t(`grokvideo.model.official`)},{value:oe,label:this.$t(`grokvideo.model.official15`)}]}},computed:{value:{get(){return this.$store.state.grokvideo?.config?.model},set(e){this.$store.commit(`grokvideo/setConfig`,{...this.$store.state.grokvideo?.config,model:e})}}},mounted(){this.value||=se}}),Ke={class:`field`},qe={class:`label`},Je={class:`box`},Ye={class:`title font-bold`};function Xe(t,n,r,o,u,d){let m=l(`info-icon`),_=l(`el-option`),v=l(`el-select`);return g(),s(`div`,Ke,[e(`div`,qe,[e(`div`,Je,[e(`h2`,Ye,i(t.$t(`grokvideo.name.model`)),1),a(m,{content:t.$t(`grokvideo.description.model`),class:`info`},null,8,[`content`])])]),a(v,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,class:`value`,placeholder:t.$t(`grokvideo.placeholder.select`)},{default:p(()=>[(g(!0),s(c,null,h(t.options,e=>(g(),f(_,{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`])])}var Ze=B(Ge,[[`render`,Xe],[`__scopeId`,`data-v-9e6fef88`]]),Qe=v({name:`GrokVideoDurationSelector`,components:{ElSelect:y,ElOption:b,InfoIcon:k},computed:{model(){return this.$store.state.grokvideo?.config?.model},maxDuration(){return z(this.model)},minDuration(){return he(this.model)},options(){return me.filter(e=>e>=this.minDuration&&e<=this.maxDuration).map(e=>({value:e,label:`${e}s`}))},value:{get(){return this.$store.state.grokvideo?.config?.duration},set(e){this.$store.commit(`grokvideo/setConfig`,{...this.$store.state.grokvideo?.config,duration:e})}}},watch:{maxDuration(e){this.value&&this.value>e&&(this.value=e)},minDuration(e){this.value&&this.value<e&&(this.value=e)}},mounted(){this.value||=6}}),$e={class:`field`},et={class:`label`},tt={class:`box`},nt={class:`title font-bold`};function rt(t,n,r,o,u,d){let m=l(`info-icon`),_=l(`el-option`),v=l(`el-select`);return g(),s(`div`,$e,[e(`div`,et,[e(`div`,tt,[e(`h2`,nt,i(t.$t(`grokvideo.name.duration`)),1),a(m,{content:t.$t(`grokvideo.description.duration`),class:`info`},null,8,[`content`])])]),a(v,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,class:`value`,placeholder:t.$t(`grokvideo.placeholder.select`)},{default:p(()=>[(g(!0),s(c,null,h(t.options,e=>(g(),f(_,{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`])])}var it=B(Qe,[[`render`,rt],[`__scopeId`,`data-v-673a8bbc`]]),at=v({name:`GrokVideoResolutionSelector`,components:{InfoIcon:k},data(){return{options:[{value:ge,label:`480p`},{value:de,label:`720p`},{value:fe,label:`1080p`}]}},computed:{value:{get(){return this.$store.state.grokvideo?.config?.resolution},set(e){this.$store.commit(`grokvideo/setConfig`,{...this.$store.state.grokvideo?.config,resolution:e})}}},mounted(){this.value||=pe}}),ot={class:`resolution`},st={class:`header`},ct={class:`title font-bold`},lt={class:`items`},ut=[`onClick`];function dt(t,r,o,u,d,f){let p=l(`info-icon`);return g(),s(`div`,ot,[e(`div`,st,[e(`h2`,ct,i(t.$t(`grokvideo.name.resolution`)),1),a(p,{content:t.$t(`grokvideo.description.resolution`),class:`info`},null,8,[`content`])]),e(`div`,lt,[(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,ut))),128))])])}var ft=B(at,[[`render`,dt],[`__scopeId`,`data-v-54f22a22`]]),pt=v({name:`GrokVideoRatioSelector`,components:{InfoIcon:k},computed:{options(){return[{value:R,label:`16:9`,w:32,h:18},{value:ce,label:`9:16`,w:18,h:32},{value:`1:1`,label:`1:1`,w:24,h:24},{value:`4:3`,label:`4:3`,w:28,h:21},{value:`3:4`,label:`3:4`,w:21,h:28},{value:`3:2`,label:`3:2`,w:30,h:20},{value:`2:3`,label:`2:3`,w:20,h:30}]},value:{get(){return this.$store.state.grokvideo?.config?.aspect_ratio},set(e){this.$store.commit(`grokvideo/setConfig`,{...this.$store.state.grokvideo?.config,aspect_ratio:e})}}},mounted(){this.value||=ue}}),mt={class:`ratio`},ht={class:`header`},gt={class:`title font-bold`},_t={class:`items`},vt=[`onClick`],yt={class:`preview`},bt={class:`name`};function xt(t,r,o,u,d,f){let p=l(`info-icon`);return g(),s(`div`,mt,[e(`div`,ht,[e(`h2`,gt,i(t.$t(`grokvideo.name.ratio`)),1),a(p,{content:t.$t(`grokvideo.description.ratio`),class:`info`},null,8,[`content`])]),e(`div`,_t,[(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`,yt,[e(`div`,{class:`rect`,style:m({width:r.w+`px`,height:r.h+`px`})},null,4)]),e(`div`,bt,i(r.label),1)],10,vt))),128))])])}var St=B(pt,[[`render`,xt],[`__scopeId`,`data-v-70115284`]]),Ct=v({name:`GrokVideoImageInput`,components:{UploadIcon:N,ElUpload:x,ElButton:G,InfoIcon:k,ImagePreview:Q},mixins:[Z,Y,K,W],data(){return{fileList:[],uploadUrl:q()+`/api/v1/files/`}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},required(){return F(this.$store.state.grokvideo?.config?.model)},urls(){return this.fileList.map(e=>e?.response?.file_url)}},methods:{onExceed(){T.warning(this.$t(`grokvideo.message.uploadExceed`))},onError(){T.error(this.$t(`grokvideo.message.uploadError`))},onSetImageUrl(){let e=this.urls?.[0];this.$store.commit(`grokvideo/setConfig`,{...this.$store.state.grokvideo?.config,image_url:e||void 0})},async onSuccess(){this.onSetImageUrl()},async onRemove(){this.onSetImageUrl()}}}),wt={class:`relative`},Tt={class:`flex justify-between`},Et={class:`flex justify-start items-center`},Dt={class:`text-sm font-bold`},Ot={key:0,class:`required-badge`};function kt(t,n,c,u,d,m){let h=l(`info-icon`),_=l(`image-preview`),v=l(`upload-icon`),y=l(`el-button`),b=l(`el-upload`);return g(),s(`div`,wt,[e(`div`,Tt,[e(`div`,Et,[e(`span`,Dt,i(t.$t(`grokvideo.name.image`)),1),t.required?(g(),s(`span`,Ot,i(t.$t(`grokvideo.name.required`)),1)):o(``,!0),a(h,{content:t.$t(`grokvideo.description.image`)},null,8,[`content`])])]),a(b,{ref:`uploader`,"file-list":t.fileList,"onUpdate:fileList":n[0]||=e=>t.fileList=e,name:`file`,accept:`.png,.jpg,.jpeg,.gif,.bmp,.webp`,limit:1,class:`upload-wrapper`,multiple:!1,"before-upload":t.beforeUploadSizeGuard,action:t.uploadUrl,"list-type":`picture`,"on-exceed":t.onExceed,"on-error":t.onError,"on-success":t.onSuccess,"on-remove":t.onRemove,headers:t.headers},{file:p(({file:e})=>[e.url&&e.percentage!==void 0?(g(),f(_,{key:0,url:e.url,name:e.name,percentage:e.percentage,onRemove:n=>t.fileList.splice(t.fileList.indexOf(e),1)},null,8,[`url`,`name`,`percentage`,`onRemove`])):o(``,!0)]),default:p(()=>[a(y,{round:``,type:`primary`,size:`small`,class:`btn btn-upload`},{default:p(()=>[a(v,{class:`icon mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`grokvideo.button.upload`)),1)]),_:1})]),_:1},8,[`file-list`,`before-upload`,`action`,`on-exceed`,`on-error`,`on-success`,`on-remove`,`headers`])])}var At=B(Ct,[[`render`,kt],[`__scopeId`,`data-v-ea7c012a`]]),jt=4,Mt=v({name:`GrokVideoReferenceImagesInput`,components:{UploadIcon:N,ElUpload:x,ElButton:G,InfoIcon:k,ImagePreview:Q},mixins:[Z,Y,K,W],data(){return{fileList:[],uploadUrl:q()+`/api/v1/files/`,limit:jt,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.grokvideo?.config?.reference_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(){T.warning(this.$t(`grokvideo.message.uploadReferenceExceed`))},onError(){T.error(this.$t(`grokvideo.message.uploadError`))},onSetReferenceImages(){let e=this.urls;this.suppressWatch=!0,this.$store.commit(`grokvideo/setConfig`,{...this.$store.state.grokvideo?.config,reference_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()}}}),Nt={class:`field mb-[10px] flex min-h-8 w-full items-center justify-between gap-3`},Pt={class:`flex min-w-0 items-center`},Ft={class:`title m-0 text-[14px] font-bold`},It={class:`file-list flex flex-wrap gap-[10px]`};function Lt(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`,Nt,[e(`div`,Pt,[e(`h2`,Ft,i(t.$t(`grokvideo.name.referenceImages`)),1),a(_,{content:t.$t(`grokvideo.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(`grokvideo.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 Rt=v({name:`GrokVideoConfigPanel`,components:{MagicIcon:P,ElButton:G,PromptInput:We,ModelSelector:Ze,DurationSelector:it,ResolutionSelector:ft,RatioSelector:St,ImageInput:At,ReferenceImagesInput:B(Mt,[[`render`,Lt]]),ServicePricingSummary:Oe,ScenarioPaymentMode:Ae},emits:[`generate`],data(){return{quoteTimer:0,quoteRunId:0}},computed:{config(){return this.$store.state.grokvideo?.config},supportsReferenceImages(){return!F(this.$store.state.grokvideo?.config?.model)},consumption(){return we(this.config,this.service?.cost)},service(){return this.$store.state.grokvideo?.service},walletMode(){return J()&&U(`grokvideo`).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(`grokvideo`),t=++this.quoteRunId;e.quoteLoading=!0,e.quoteUsdc=void 0;try{let n=await X.quote(H(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`)}}}),zt={class:`flex flex-col h-full`},Bt={class:`flex-1 overflow-y-auto p-5`},Vt={class:`flex flex-col items-center justify-center px-5 pb-5`};function Ht(t,n,c,u,d,m){let h=l(`prompt-input`),_=l(`model-selector`),v=l(`ratio-selector`),y=l(`resolution-selector`),b=l(`duration-selector`),x=l(`image-input`),S=l(`reference-images-input`),C=l(`scenario-payment-mode`),w=l(`service-pricing-summary`),T=l(`magic-icon`),E=l(`el-button`);return g(),s(`div`,zt,[e(`div`,Bt,[a(h,{class:`mb-4`}),a(_,{class:`mb-4`}),a(v,{class:`mb-4`}),a(y,{class:`mb-4`}),a(b,{class:`mb-4`}),a(x,{class:`mb-4`}),t.supportsReferenceImages?(g(),f(S,{key:0,class:`mb-4`})):o(``,!0)]),e(`div`,Vt,[a(C,{scenario:`grokvideo`}),t.walletMode?o(``,!0):(g(),f(w,{key:0,value:t.consumption,service:t.service},null,8,[`value`,`service`])),a(E,{type:`primary`,class:`btn w-full`,round:``,onClick:t.onGenerate},{default:p(()=>[a(T,{class:`mr-2`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`grokvideo.button.generate`)),1)]),_:1},8,[`onClick`])])])}var Ut=B(Rt,[[`render`,Ht]]),Wt=v({name:`GrokVideoTaskPreview`,components:{DeleteIcon:ie,ApplicationIcon:D,ChannelIcon:te,FullscreenIcon:M,InfoIcon:re,MagicIcon:P,TimeIcon:O,WarningIcon:ae,CopyToClipboard:Te,ElAlert:C,VideoPlayer:ke,ElTooltip:S,ElButton:G,ImagePreview:Q,ApiCodeButton:je,ReportButton:Ee},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_url},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 V.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(`grokvideo/deleteTask`,{id:e}),T.success(this.$t(`common.message.deleteTaskSuccess`))}catch{T.error(this.$t(`common.message.deleteTaskFailed`))}}},stopTimer(){this.timer&&=(window.clearInterval(this.timer),0)},onDownload(e){window.open(e,`_blank`)}}}),Gt={class:`preview`},Kt={class:`left`},qt={class:`main`},Jt={class:`bot`},Yt={class:`datetime`},Xt=[`aria-label`],Zt={class:`info`},Qt={key:0,class:`flex justify-start items-center gap-2 mt-2 w-full overflow-x-auto`},$t={key:1,class:`prompt mt-2`},en={key:0},tn={key:1},nn={key:0,class:n({content:!0})},rn={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`},on={key:1,class:n({content:!0})},sn={key:0,class:`mb-4`},cn={key:1,class:n({operations:!0,"mt-2":!0,"mb-2":!0})},$={key:0,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},ln={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-2`},dn={key:0},fn={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},pn={key:3,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},mn={key:4,class:`text-[var(--el-text-color-regular)] text-xs mb-0`},hn={key:2,class:n({content:!0})},gn={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},_n={key:0,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},vn={key:1,class:`text-[var(--el-text-color-regular)] text-xs mb-0`},yn={key:3,class:n({content:!0})},bn={class:`text-[var(--el-text-color-regular)] text-xs mb-0`};function xn(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(`fullscreen-icon`),A=l(`channel-icon`),j=l(`warning-icon`),M=l(`info-icon`);return g(),s(`div`,Gt,[e(`div`,Kt,[a(h,{capability:`grokvideo`,part:`avatar`,class:`avatar`})]),e(`div`,qt,[e(`div`,Jt,[a(h,{capability:`grokvideo`,part:`name`}),e(`span`,Yt,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,Xt)):o(``,!0)]),_:1},8,[`content`])]),e(`div`,Zt,[n.inputImage?(g(),s(`div`,Qt,[a(y,{url:n.inputImage,name:`image`,closable:!1},null,8,[`url`])])):o(``,!0),n.modelValue?.request?.prompt?(g(),s(`p`,$t,[r(i(n.modelValue?.request?.prompt)+` `,1),n.modelValue?.response?n.video?.state===`processing`||n.video?.state===`pending`?(g(),s(`span`,tn,` - (`+i(n.$t(`grokvideo.status.processing`))+`) `,1)):o(``,!0):(g(),s(`span`,en,` - (`+i(n.$t(`grokvideo.status.pending`))+`) `,1))])):o(``,!0)]),n.modelValue?.response?n.modelValue?.response?.success===!0?(g(),s(`div`,on,[n.video?.video_url?(g(),s(`div`,sn,[a(w,{src:n.video?.video_url},null,8,[`src`])])):o(``,!0),n.video?.video_url?(g(),s(`div`,cn,[a(v,{class:`box-item`,effect:`dark`,content:n.$t(`grokvideo.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:`/grok/videos`,body:n.modelValue?.request},null,8,[`body`]),a(D,{service:`grokvideo`,"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`,$,[a(O,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`grokvideo.name.model`))+`: `+i(n.modelValue?.request?.model),1)])):o(``,!0),n.video?.duration?(g(),s(`p`,ln,[a(b,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`grokvideo.name.duration`))+`: `+i(n.video?.duration)+`s `,1)])):o(``,!0),n.modelValue?.request?.resolution?(g(),s(`p`,un,[a(k,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`grokvideo.name.resolution`))+`: `+i(n.modelValue?.request?.resolution)+` `,1),n.modelValue?.request?.aspect_ratio?(g(),s(`span`,dn,` · `+i(n.modelValue?.request?.aspect_ratio),1)):o(``,!0)])):o(``,!0),e(`p`,fn,[a(x,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`grokvideo.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`,pn,[a(b,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`grokvideo.name.elapsed`))+`: `+i(n.modelValue?.elapsed?.toFixed(2))+`s `,1)])):o(``,!0),n.modelValue?.response?.trace_id?(g(),s(`p`,mn,[a(A,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`grokvideo.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`,hn,[a(C,{closable:!1,class:`failure`},{template:p(()=>[a(j,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`grokvideo.name.failure`)),1)]),default:p(()=>[e(`p`,gn,[a(x,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`grokvideo.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`,_n,[a(M,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`grokvideo.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`,vn,[a(A,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`grokvideo.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`,yn,[a(C,{closable:!1,class:`info`},{template:p(()=>[a(M,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`grokvideo.name.status`)),1)]),default:p(()=>[e(`p`,bn,[a(x,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`grokvideo.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`,nn,[a(C,{closable:!1,class:`info`},{template:p(()=>[a(b,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`grokvideo.status.pending`)),1)]),default:p(()=>[e(`p`,rn,[a(x,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`grokvideo.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`,an,[a(b,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`grokvideo.name.elapsed`))+`: `+i(n.pendingElapsed)+`s `,1)]))]),_:1})]))])])}var Sn=v({name:`GrokVideoRecentPanel`,components:{TaskPreview:B(Wt,[[`render`,xn],[`__scopeId`,`data-v-5c3b05ea`]]),BotPlaceholder:Me,NoTasks:ee,ScrollList:j},props:{loading:{type:Boolean,default:!1}},emits:[`reach-top`],computed:{tasks(){return{...this.$store.state.grokvideo?.tasks,items:this.$store.state.grokvideo?.tasks?.items?.slice()}}},methods:{getScrollElement(){return this.$refs.scrollList?.getScrollElement?.()}}}),Cn={key:0},wn={key:2,class:`w-full h-full flex items-center justify-center`};function Tn(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`,Cn,[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`,wn,[a(v)])):o(``,!0)],64)}var En=v({name:`GrokVideoIndex`,components:{ConfigPanel:Ut,Layout:Ve,RecentPanel:B(Sn,[[`render`,Tn]]),ShowcaseResultTabs:Pe},mixins:[Ce,Fe(`grokvideo`),Ne(`grokvideo`)],inject:[`initialized`],data(){return{task:void 0,job:0,loadingMore:!1,fetchingTasks:!1,walletTaskIds:[]}},computed:{applicationsLoading(){return this.$store.state.grokvideo?.status?.getApplications===w.Request},tasksLoading(){return this.$store.state.grokvideo?.status?.getTasks===w.Request||this.fetchingTasks},credential(){return this.$store.state.grokvideo?.credential},config(){return this.$store.state.grokvideo?.config},tasks(){return this.$store.state.grokvideo?.tasks},walletMode(){return J()&&U(`grokvideo`).mode===`wallet`}},watch:{walletMode:{async handler(e,t){if(!(t===void 0||e===t)){if(this.$store.commit(`grokvideo/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 ne({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(`grokvideo/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(`grokvideo/getTasks`,{limit:t,createdAtMin:n,createdAtMax:r,...this.walletMode&&!this.credential?.token?{mode:`x402`,ids:this.walletTaskIds}:{}})}finally{this.fetchingTasks=!1}},async onGenerate(){if(!_e(this.uploadTracker,e=>this.$t(e),e=>T.warning(e)))return;let e=H(this.config),t=!!e.image_url;if(F(e.model)&&!t){T.warning(this.$t(`grokvideo.message.modelRequiresImage`));return}if(!t&&!e.prompt){T.warning(this.$t(`grokvideo.message.promptOrImageRequired`));return}let n;if(this.walletMode){let t=this.getWalletContext();if(!t){T.warning(this.$t(`common.x402Scenario.connectWalletFirst`));return}n=X.generate(e,{mode:`x402`,x402:{wallet:t,confirm:e=>this.confirmWalletPayment(e),identityToken:this.credential?.token}})}else{if(!ve())return;let t=this.credential?.token;if(!t)return;n=X.generate(e,{token:t})}T.info(this.$t(`grokvideo.message.startingTask`)),ye(`grokvideo`,n).then(e=>{let t=e?.data?.task_id;this.walletMode&&!this.credential?.token&&t&&!this.walletTaskIds.includes(t)&&this.walletTaskIds.unshift(t),T.success(this.$t(`grokvideo.message.startTaskSuccess`))}).catch(e=>{let t=e?.response?.data;e instanceof Se||be(e,`grokvideo`)||(this.walletMode?T.error(this.$t(`common.x402Scenario.paymentFailed`)):T.error(this.$t(`grokvideo.message.startTaskFailed`)+(t?.error?.message||``)))}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})},getWalletContext(){return xe(this.$wallet)},async confirmWalletPayment(e){return V.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 Dn(e,t,n,r,i,o){let s=l(`config-panel`),c=l(`recent-panel`),u=l(`showcase-result-tabs`),d=l(`layout`);return g(),f(d,null,{config:p(()=>[a(s,{onGenerate:e.onGenerate},null,8,[`onGenerate`])]),result:p(()=>[a(u,{service:`grok`},{tasks:p(()=>[a(c,{ref:`recentPanel`,loading:e.loadingMore,onReachTop:e.onReachTop},null,8,[`loading`,`onReachTop`])]),_:1})]),_:1})}var On=B(En,[[`render`,Dn]]);export{On as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import"./rolldown-runtime--c01j_DQ.js";import{A as e,C as t,Gt as n,I as r,Jt as i,L as a,M as o,N as s,T as c,at as l,ht as u,it as d,j as f,mt as p,rt as m,tt as h,x as g,z as _}from"./vendor-chart-Dw-P17PN.js";import{t as v}from"./upload-NGwnPPlZ.js";import{t as y}from"./tooltip-Lqp4poID.js";import{t as b}from"./alert-BprQRUmf.js";import{h as x,v as S}from"./models-CaAeRVKM.js";import{t as C}from"./drawer-BOOfQsQd.js";import{t as w}from"./switch-2O2zlbWx.js";import{t as T}from"./clock-1txUnUIB.js";import{a as E,i as D,n as O,r as k,s as A,t as ee}from"./pagination-CJYdJ-4v.js";import{t as te}from"./info-HaRat4AM.js";import{t as j}from"./trash-2-Do-u3hXn.js";import{t as M}from"./triangle-alert-Bggkkxk6.js";import{t as N}from"./upload-CSGwkxuc.js";import{t as P}from"./wand-sparkles-DbyPXHvt.js";import"./constants-DjRIlNef.js";import{$ as ne,A as F,Aa as I,Ja as L,Ki as R,Ni as z,O as re,Pa as B,Qi as ie,Rr as V,Y as H,ai as U,et as W,ji as G,nt as K,ri as q,rt as J,tt as Y,vn as ae,zr as X}from"./index-BD_7p-5J.js";import{t as oe}from"./CopyToClipboard-DJpxsYt7.js";import{t as se}from"./ReportButton-Ck_k83fR.js";import{t as ce}from"./FilePreview-rOOIltmJ.js";import{t as Z}from"./ImagePreview-C28tnA4Y.js";import{n as le}from"./taskDrawerMixin-DyAUhFEq.js";import{t as ue}from"./ServicePricingSummary-BrKegtWK.js";import{t as Q}from"./VideoPlayer-sC3lXtsY.js";import{t as de}from"./ScenarioPaymentMode-D54kz0_D.js";import{t as fe}from"./ApiCodeButton-DVo6zCaG.js";import{t as pe}from"./BotPlaceholder-CDAbpMqY.js";import{t as me}from"./taskPollingMixin-CcLxtz8z.js";var he=_({name:`LayoutLuma`,components:{MagicIcon:P,ElDrawer:C,ElButton:L},mixins:[le]}),ge={class:`main flex flex-row flex-1`},_e={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)]`},ve={class:`result h-full p-4 flex-1 flex flex-col min-w-0 overflow-x-hidden bg-[var(--app-content-bg)]`};function ye(t,n,r,i,o,c){let f=l(`magic-icon`),m=l(`el-button`),_=l(`el-drawer`);return h(),s(`div`,ge,[e(`div`,_e,[d(t.$slots,`config`,{},void 0,!0)]),e(`div`,ve,[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 be=F(he,[[`render`,ye],[`__scopeId`,`data-v-4ab11479`]]),xe=_({name:`EnhancementSelector`,components:{ElSwitch:w,InfoIcon:E},computed:{value:{get(){return this.$store.state.luma?.config?.enhancement},set(e){console.debug(`set enhancement`,e),this.$store.commit(`luma/setConfig`,{...this.$store.state.luma?.config,enhancement:e})}}},mounted(){this.value===void 0&&(this.value=!0)}}),Se={class:`relative`},Ce={class:`flex justify-between`},we={class:`flex justify-start items-center`},Te={class:`text-sm font-bold`},Ee={class:`flex justify-end items-center`};function De(t,n,r,o,c,u){let d=l(`info-icon`),f=l(`el-switch`);return h(),s(`div`,Se,[e(`div`,Ce,[e(`div`,we,[e(`span`,Te,i(t.$t(`luma.name.enhancement`)),1),a(d,{content:t.$t(`luma.description.enhancement`)},null,8,[`content`])]),e(`div`,Ee,[a(f,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,class:`value`},null,8,[`modelValue`])])])])}var Oe=F(xe,[[`render`,De]]),ke=_({name:`CustomSelector`,components:{ElSwitch:w,InfoIcon:E},computed:{value:{get(){return this.$store.state.luma?.config?.custom},set(e){console.debug(`set custom`,e),this.$store.commit(`luma/setConfig`,{...this.$store.state.luma?.config,custom:e})}}},mounted(){this.value===void 0&&(this.value=!1)}}),Ae={class:`relative`},je={class:`flex justify-between`},Me={class:`flex justify-start items-center`},Ne={class:`text-sm font-bold`},Pe={class:`flex justify-end items-center`};function Fe(t,n,r,o,c,u){let d=l(`info-icon`),f=l(`el-switch`);return h(),s(`div`,Ae,[e(`div`,je,[e(`div`,Me,[e(`span`,Ne,i(t.$t(`luma.name.custom`)),1),a(d,{content:t.$t(`luma.description.custom`)},null,8,[`content`])]),e(`div`,Pe,[a(f,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,class:`value`},null,8,[`modelValue`])])])])}var Ie=F(ke,[[`render`,Fe]]),Le=_({name:`LoopSelector`,components:{ElSwitch:w,InfoIcon:E},computed:{value:{get(){return this.$store.state.luma?.config?.loop},set(e){console.debug(`set loop`,e),this.$store.commit(`luma/setConfig`,{...this.$store.state.luma?.config,loop:e})}}},mounted(){this.value===void 0&&(this.value=!1)}}),Re={class:`relative`},ze={class:`flex justify-between`},Be={class:`flex justify-start items-center`},Ve={class:`text-sm font-bold`},He={class:`flex justify-end items-center`};function Ue(t,n,r,o,c,u){let d=l(`info-icon`),f=l(`el-switch`);return h(),s(`div`,Re,[e(`div`,ze,[e(`div`,Be,[e(`span`,Ve,i(t.$t(`luma.name.loop`)),1),a(d,{content:t.$t(`luma.description.loop`)},null,8,[`content`])]),e(`div`,He,[a(f,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,class:`value`},null,8,[`modelValue`])])])])}var We=F(Le,[[`render`,Ue]]),Ge=_({name:`EndImage`,components:{UploadIcon:N,ElUpload:v,ElButton:L,ImagePreview:Z,InfoIcon:E},mixins:[J,K,W,H],data(){return{fileList:[],uploadUrl:I()+`/api/v1/files/`}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},urls(){return this.fileList.map(e=>e?.response?.file_url)},value:{get(){return this.$store.state?.luma?.config?.start_image_url},set(){}}},mounted(){this.value||=void 0,this.onSetEndImageUrl()},methods:{onExceed(){S.warning(this.$t(`luma.message.uploadReferencesExceed`))},onError(){S.error(this.$t(`luma.message.uploadReferencesError`))},onSetEndImageUrl(){let e=this.urls?.[0];this.$store.commit(`luma/setConfig`,{...this.$store.state.luma?.config,end_image_url:e})},async onSuccess(){this.onSetEndImageUrl()}}}),Ke={class:`relative`},qe={class:`flex justify-between`},Je={class:`flex justify-start items-center`},Ye={class:`text-sm font-bold`};function Xe(t,n,c,u,d,m){let g=l(`info-icon`),_=l(`image-preview`),v=l(`upload-icon`),y=l(`el-button`),b=l(`el-upload`);return h(),s(`div`,Ke,[e(`div`,qe,[e(`div`,Je,[e(`span`,Ye,i(t.$t(`luma.name.endImageUrl`)),1),a(g,{content:t.$t(`luma.description.endImageUrl`)},null,8,[`content`])])]),a(b,{ref:`uploader`,"file-list":t.fileList,"onUpdate:fileList":n[0]||=e=>t.fileList=e,name:`file`,accept:`.png,.jpg,.jpeg,.gif,.bmp,.webp`,limit:5,class:`upload-wrapper`,multiple:!1,"before-upload":t.beforeUploadSizeGuard,action:t.uploadUrl,"list-type":`picture`,"on-exceed":t.onExceed,"on-error":t.onError,"on-success":t.onSuccess,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(y,{round:``,type:`primary`,size:`small`,class:`btn btn-upload`},{default:p(()=>[a(v,{class:`icon mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`luma.button.uploadEndImageUrl`)),1)]),_:1})]),_:1},8,[`file-list`,`before-upload`,`action`,`on-exceed`,`on-error`,`on-success`,`headers`])])}var Ze=F(Ge,[[`render`,Xe],[`__scopeId`,`data-v-04c461bb`]]),Qe=_({name:`StartImage`,components:{UploadIcon:N,ElUpload:v,ElButton:L,ImagePreview:Z,InfoIcon:E},mixins:[J,K,W,H],data(){return{fileList:[],uploadUrl:I()+`/api/v1/files/`}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},urls(){return this.fileList.map(e=>e?.response?.file_url)},value:{get(){return this.$store.state?.luma?.config?.start_image_url},set(){}}},mounted(){this.value||=void 0,this.onSetStartImageUrl()},methods:{onExceed(){S.warning(this.$t(`luma.message.uploadReferencesExceed`))},onError(){S.error(this.$t(`luma.message.uploadReferencesError`))},onSetStartImageUrl(){let e=this.urls?.[0];this.$store.commit(`luma/setConfig`,{...this.$store.state.luma?.config,start_image_url:e})},async onSuccess(){this.onSetStartImageUrl()}}}),$e={class:`relative`},et={class:`flex justify-between`},tt={class:`flex justify-start items-center`},nt={class:`text-sm font-bold`};function rt(t,n,c,u,d,m){let g=l(`info-icon`),_=l(`image-preview`),v=l(`upload-icon`),y=l(`el-button`),b=l(`el-upload`);return h(),s(`div`,$e,[e(`div`,et,[e(`div`,tt,[e(`span`,nt,i(t.$t(`luma.name.startImageUrl`)),1),a(g,{content:t.$t(`luma.description.startImageUrl`)},null,8,[`content`])])]),a(b,{ref:`uploader`,"file-list":t.fileList,"onUpdate:fileList":n[0]||=e=>t.fileList=e,name:`file`,accept:`.png,.jpg,.jpeg,.gif,.bmp,.webp`,limit:5,class:`upload-wrapper`,multiple:!1,"before-upload":t.beforeUploadSizeGuard,action:t.uploadUrl,"list-type":`picture`,"on-exceed":t.onExceed,"on-error":t.onError,"on-success":t.onSuccess,headers:t.headers},{file:p(({file:e})=>[e.percentage==null?o(``,!0):(h(),f(_,{key:0,url:e.url||e.response.file_url,name:e.name,percentage:e.percentage,onRemove:n=>t.fileList.splice(t.fileList.indexOf(e),1)},null,8,[`url`,`name`,`percentage`,`onRemove`]))]),default:p(()=>[a(y,{round:``,type:`primary`,size:`small`,class:`btn btn-upload`},{default:p(()=>[a(v,{class:`icon mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`luma.button.uploadStartImageUrl`)),1)]),_:1})]),_:1},8,[`file-list`,`before-upload`,`action`,`on-exceed`,`on-error`,`on-success`,`headers`])])}var it=F(Qe,[[`render`,rt],[`__scopeId`,`data-v-31c07a19`]]),at=_({name:`UploadVideo`,components:{UploadIcon:N,ElUpload:v,ElButton:L,InfoIcon:E,FilePreview:ce},mixins:[K,W],data(){return{fileList:[],uploadUrl:I()+`/api/v1/files/`}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},urls(){return this.fileList.map(e=>e?.response?.file_url)},value:{get(){return this.$store.state.luma?.config?.video_url},set(){let e=this.urls?.[0];this.$store.commit(`luma/setConfig`,{...this.$store.state.luma?.config,video_url:e})}}},mounted(){this.value||=void 0},methods:{onExceed(){S.warning(this.$t(`luma.message.uploadVideoExceed`))},onError(){S.error(this.$t(`luma.message.uploadVideoError`))},beforeUpload(e){let t=e.type===`video/mp4`,n=e.size/1024/1024<10;return t?n?!0:(S.error(this.$t(`luma.message.uploadVideoSizeExceed`)),!1):(S.error(this.$t(`luma.message.uploadVideoTypeFailed`)),!1)},onSetVideoUrl(){let e=this.urls?.[0];this.$store.commit(`luma/setConfig`,{...this.$store.state.luma?.config,video_url:e,action:`extend`})},async onSuccess(){this.onSetVideoUrl()}}}),ot={class:`relative`},st={class:`flex justify-between`},ct={class:`flex justify-start items-center`},lt={class:`text-sm font-bold`};function ut(t,n,c,u,d,m){let g=l(`info-icon`),_=l(`file-preview`),v=l(`upload-icon`),y=l(`el-button`),b=l(`el-upload`);return h(),s(`div`,ot,[e(`div`,st,[e(`div`,ct,[e(`span`,lt,i(t.$t(`luma.name.videoUrl`)),1),a(g,{content:t.$t(`luma.description.videoUrl`)},null,8,[`content`])])]),a(b,{ref:`uploader`,"file-list":t.fileList,"onUpdate:fileList":n[0]||=e=>t.fileList=e,accept:`.mp4`,name:`file`,class:`value`,"show-file-list":!0,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},{file:p(({file:e})=>[e.percentage==null?o(``,!0):(h(),f(_,{key:0,url:e.url||e.response?.file_url,name:e.name,percentage:e.percentage,onRemove:n=>t.fileList.splice(t.fileList.indexOf(e),1)},null,8,[`url`,`name`,`percentage`,`onRemove`]))]),default:p(()=>[a(y,{round:``,type:`primary`,size:`small`,class:`btn btn-upload`},{default:p(()=>[a(v,{class:`icon mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`luma.button.uploadVideoUrl`)),1)]),_:1})]),_:1},8,[`file-list`,`action`,`before-upload`,`on-exceed`,`on-error`,`on-success`,`headers`])])}var dt=F(at,[[`render`,ut],[`__scopeId`,`data-v-2189fc52`]]),ft=_({name:`PromptInput`,components:{PromptTextarea:D},computed:{prompt:{get(){return this.$store.state.luma?.config?.prompt},set(e){this.$store.commit(`luma/setConfig`,{...this.$store.state.luma?.config,prompt:e})}}},mounted(){this.prompt||=``}});function pt(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(`luma.name.prompt`),info:e.$t(`luma.description.prompt`),placeholder:e.$t(`luma.placeholder.prompt`)},null,8,[`modelValue`,`title`,`info`,`placeholder`])}var mt=F(ft,[[`render`,pt]]),ht=_({name:`ExtendFromInput`,components:{VideoPlayer:Q},props:{modelValue:{type:Object,required:!1,default:void 0}},data(){return{options:{quality:{default:`1080p`}}}},computed:{config(){return this.$store.state.luma?.config}}}),gt={class:`relative`},_t={class:`flex mb-2`},vt={class:`text-sm font-bold`};function yt(t,n,r,a,c,u){let d=l(`video-player`);return h(),s(`div`,gt,[e(`div`,_t,[e(`span`,vt,i(t.$t(`luma.name.extend`)),1)]),e(`div`,null,[t.config?.video_url?(h(),f(d,{key:0,src:t.config?.video_url},null,8,[`src`])):o(``,!0)])])}var bt=_({name:`ConfigPanel`,components:{MagicIcon:P,LoopSelector:We,StartImageInput:it,EndImageInput:Ze,EnhancementSelector:Oe,ElButton:L,PromptInput:mt,ExtendFromInput:F(ht,[[`render`,yt]]),CustomSelector:Ie,UploadVideo:dt,ServicePricingSummary:ue,ScenarioPaymentMode:de},emits:[`generate`],data(){return{quoteTimer:0,quoteRunId:0}},computed:{config(){return this.$store.state.luma?.config},consumption(){return ae(this.config,this.service?.cost)},service(){return this.$store.state.luma?.service},walletMode(){return G()&&z(`luma`).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=z(`luma`),t=++this.quoteRunId;e.quoteLoading=!0,e.quoteUsdc=void 0;try{let n=await X.quote(V(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`)}}}),xt={class:`flex flex-col h-full`},St={class:`flex-1 overflow-y-auto p-5`},Ct={class:`flex flex-col items-center justify-center px-5 pb-5`};function wt(t,n,c,u,d,m){let g=l(`extend-from-input`),_=l(`prompt-input`),v=l(`custom-selector`),y=l(`upload-video`),b=l(`start-image-input`),x=l(`end-image-input`),S=l(`enhancement-selector`),C=l(`loop-selector`),w=l(`scenario-payment-mode`),T=l(`service-pricing-summary`),E=l(`magic-icon`),D=l(`el-button`);return h(),s(`div`,xt,[e(`div`,St,[t.config?.video_id||t.config?.video_url?(h(),f(g,{key:0,class:`mb-4`})):o(``,!0),a(_,{class:`mb-4`}),t.config?.video_id?o(``,!0):(h(),f(v,{key:1,class:`mb-4`})),t.config?.custom?(h(),f(y,{key:2,class:`mb-4`})):o(``,!0),!(t.config?.video_id||t.config?.video_url)&&!t.config?.custom?(h(),f(b,{key:3,class:`mb-4`})):o(``,!0),a(x,{class:`mb-4`}),a(S,{class:`mb-4`}),a(C,{class:`mb-4`})]),e(`div`,Ct,[a(w,{scenario:`luma`}),t.walletMode?o(``,!0):(h(),f(T,{key:0,value:t.consumption,service:t.service},null,8,[`value`,`service`])),t.config?.video_url!==void 0||t.config?.custom?(h(),f(D,{key:1,type:`primary`,class:`btn w-full`,round:``,onClick:t.onGenerate},{default:p(()=>[a(E,{class:`mr-2`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`luma.button.extend`)),1)]),_:1},8,[`onClick`])):(h(),f(D,{key:2,type:`primary`,class:`btn w-full`,round:``,onClick:t.onGenerate},{default:p(()=>[a(E,{class:`mr-2`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`luma.button.generate`)),1)]),_:1},8,[`onClick`]))])])}var Tt=F(bt,[[`render`,wt]]),Et=_({name:`TaskPreview`,components:{DeleteIcon:j,ChannelIcon:A,InfoIcon:te,MagicIcon:P,TimeIcon:T,WarningIcon:M,CopyToClipboard:oe,ElAlert:b,VideoPlayer:Q,ElTooltip:y,ElButton:L,ApiCodeButton:fe,ReportButton:se},props:{modelValue:{type:Object,required:!0}},emits:[`extend`],data(){return{}},computed:{application(){return this.$store.state.luma?.application},config(){return this.$store.state.luma?.config}},methods:{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(`luma/deleteTask`,{id:e}),S.success(this.$t(`common.message.deleteTaskSuccess`))}catch{S.error(this.$t(`common.message.deleteTaskFailed`))}}},onExtend(e,t){console.debug(`set config`,t),this.$store.commit(`luma/setConfig`,{...this.$store.state.luma?.config,video_id:t.video_id,prompt:t.prompt,action:`extend`,thumbnail_url:t.thumbnail_url,video_url:t.video_url}),this.$emit(`extend`)},onDownload(e){window.open(e,`_blank`)}}}),Dt={class:`preview`},Ot={class:`left`},kt={class:`main`},At={class:`bot`},jt={class:`datetime`},Mt=[`aria-label`],Nt={class:`info`},Pt={key:0,class:`prompt mt-2`},Ft={key:0},It={key:1},Lt={key:0,class:n({content:!0,failed:!0})},Rt={key:0,class:`mb-4`},zt={key:1,class:n({operations:!0,"mt-2":!0,"mb-4":!0})},Bt={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},$={key:0,class:`text-[var(--el-text-color-regular)] text-xs mb-0`},Vt={key:1,class:n({content:!0})},Ht={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},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={class:`text-[var(--el-text-color-regular)] text-xs mb-0`},Kt={key:2,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 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(`magic-icon`),w=l(`copy-to-clipboard`),T=l(`time-icon`),E=l(`el-alert`),D=l(`warning-icon`),O=l(`info-icon`),k=l(`channel-icon`);return h(),s(`div`,Dt,[e(`div`,Ot,[a(g,{capability:`luma`,part:`avatar`,class:`avatar`})]),e(`div`,kt,[e(`div`,At,[a(g,{capability:`luma`,part:`name`}),e(`span`,jt,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,Mt)):o(``,!0)]),_:1},8,[`content`])]),e(`div`,Nt,[n.modelValue?.request?.prompt?(h(),s(`p`,Pt,[r(i(n.modelValue?.request?.prompt)+` `,1),n.modelValue?.response?o(``,!0):(h(),s(`span`,Ft,` - (`+i(n.$t(`luma.status.pending`))+`) `,1)),n.modelValue?.response?.state===`processing`||n.modelValue?.response?.state===`pending`?(h(),s(`span`,It,` - (`+i(n.$t(`luma.status.processing`))+`) `,1)):o(``,!0)])):o(``,!0)]),n.modelValue?.response?.success===!0?(h(),s(`div`,Lt,[n.modelValue.response.video_url?(h(),s(`div`,Rt,[a(y,{src:n.modelValue.response.video_url},null,8,[`src`])])):o(``,!0),n.modelValue?.response&&!n.config?.custom?(h(),s(`div`,zt,[a(v,{class:`box-item`,effect:`dark`,content:n.$t(`luma.message.extendVideo`),placement:`top-start`},{default:p(()=>[a(b,{type:`info`,size:`small`,class:`btn-action`,onClick:c[1]||=t(e=>n.onExtend(e,n.modelValue?.response),[`stop`])},{default:p(()=>[r(i(n.$t(`luma.button.extend`)),1)]),_:1})]),_:1},8,[`content`]),a(v,{class:`box-item`,effect:`dark`,content:n.$t(`luma.message.downloadVideo`),placement:`top-start`},{default:p(()=>[a(b,{type:`info`,size:`small`,class:`btn-action`,onClick:c[2]||=t(e=>n.onDownload(n.modelValue?.response?.video_url),[`stop`])},{default:p(()=>[r(i(n.$t(`luma.button.download`)),1)]),_:1})]),_:1},8,[`content`]),a(x,{path:`/luma/videos`,body:n.modelValue?.request},null,8,[`body`]),a(S,{service:`luma`,"target-id":n.modelValue?.id,snapshot:{prompt:n.modelValue?.request?.prompt}},null,8,[`target-id`,`snapshot`])])):o(``,!0),a(E,{closable:!1,class:`mt-2 success`},{default:p(()=>[e(`p`,Bt,[a(C,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`luma.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(w,{content:n.modelValue?.id},null,8,[`content`])]),n.modelValue?.elapsed?(h(),s(`p`,$,[a(T,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`luma.name.elapsed`))+`: `+i(n.modelValue?.elapsed?.toFixed(2))+`s `,1)])):o(``,!0)]),_:1})])):o(``,!0),n.modelValue?.response?.state===`failed`||n.modelValue?.response?.success===!1?(h(),s(`div`,Vt,[a(E,{closable:!1,class:`failure`},{template:p(()=>[a(D,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`luma.name.failure`)),1)]),default:p(()=>[e(`p`,Ht,[a(C,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`luma.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(w,{content:n.modelValue?.id},null,8,[`content`])]),e(`p`,Ut,[a(O,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`luma.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`,Wt,[a(T,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`luma.name.elapsed`))+`: `+i(n.modelValue?.elapsed?.toFixed(2))+`s `,1)])):o(``,!0),e(`p`,Gt,[a(k,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`luma.name.traceId`))+`: `+i(n.modelValue?.trace_id)+` `,1),a(w,{content:n.modelValue?.response?.trace_id},null,8,[`content`])])]),_:1})])):o(``,!0),!n.modelValue?.response||n.modelValue?.response?.state===`processing`||n.modelValue?.response?.state===`pending`?(h(),s(`div`,Kt,[a(E,{closable:!1,class:`info`},{template:p(()=>[a(T,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(n.modelValue?.response?`luma.status.processing`:`luma.status.pending`)),1)]),default:p(()=>[e(`p`,qt,[a(C,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`luma.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(w,{content:n.modelValue?.id},null,8,[`content`])])]),_:1})])):o(``,!0)])])}var Yt=_({name:`RecentPanel`,components:{BotPlaceholder:pe,TaskPreview:F(Et,[[`render`,Jt],[`__scopeId`,`data-v-46a32bda`]]),NoTasks:k,ScrollList:O},props:{loading:{type:Boolean,default:!1}},emits:[`reach-top`,`extend`],data(){return{job:0}},computed:{tasks(){return{...this.$store.state.luma?.tasks,items:this.$store.state.luma?.tasks?.items?.slice()}}},methods:{getScrollElement(){return this.$refs.scrollList?.getScrollElement?.()}}}),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`),g=l(`task-preview`),_=l(`scroll-list`),v=l(`no-tasks`);return h(),s(c,null,[e.tasks?.items===void 0?(h(),s(`div`,Xt,[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[1]||=t=>e.$emit(`reach-top`)},{default:p(()=>[(h(!0),s(c,null,m(e.tasks?.items,n=>(h(),f(g,{key:n.id,"model-value":n,onExtend:t[0]||=t=>e.$emit(`extend`)},null,8,[`model-value`]))),128))]),_:1},8,[`loading`])):o(``,!0),e.tasks?.items?.length===0?(h(),s(`div`,Zt,[a(v)])):o(``,!0)],64)}var $t=_({name:`LumaIndex`,components:{ConfigPanel:Tt,Layout:be,RecentPanel:F(Yt,[[`render`,Qt]])},mixins:[Y,me(`luma`)],inject:[`initialized`],emits:[`extend`],data(){return{task:void 0,job:0,loadingMore:!1,fetchingTasks:!1,walletTaskIds:[]}},computed:{applicationsLoading(){return this.$store.state.luma?.status?.getApplications===x.Request},tasksLoading(){return this.$store.state.luma?.status?.getTasks===x.Request||this.fetchingTasks},credential(){return this.$store.state.luma.credential},config(){return this.$store.state.luma.config},application(){return this.$store.state.luma.application},tasks(){return this.$store.state.luma.tasks},walletMode(){return G()&&z(`luma`).mode===`wallet`}},watch:{walletMode:{async handler(e,t){if(!(t===void 0||e===t)){if(this.$store.commit(`luma/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 ee({tasks:this.tasks,getTasks:()=>this.tasks,loading:this.loadingMore,setLoading:e=>this.loadingMore=e,isBlocked:()=>this.tasksLoading||this.applicationsLoading,fetch:e=>this.onGetTasks({createdAtMax:e}),getScrollElement:()=>this.getTasksScrollElement()})},async onGetService(){console.debug(`start onGetService`),await this.$store.dispatch(`luma/getService`),console.debug(`end onGetService`)},async onGetApplication(){console.debug(`start onGetApplication`),await this.$store.dispatch(`luma/getApplications`),console.debug(`end onGetApplication`),await this.onGetTasks()},async onScrollDown(){console.debug(`scrolling down`),await this.$nextTick();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(`luma/getTasks`,{limit:t,createdAtMin:n,createdAtMax:r,...this.walletMode&&!this.credential?.token?{mode:`x402`,ids:this.walletTaskIds}:{}})}finally{this.fetchingTasks=!1}},async onGenerate(){if(!ne(this.uploadTracker,e=>this.$t(e),e=>S.warning(e)))return;let e=V(this.config);if(!this.hasText(e.prompt)){S.error(this.$t(`luma.message.promptRequired`));return}e.prompt=e.prompt?.trim();let t;if(this.walletMode){let n=this.getWalletContext();if(!n){S.warning(this.$t(`common.x402Scenario.connectWalletFirst`));return}t=X.generate(e,{mode:`x402`,x402:{wallet:n,confirm:e=>this.confirmWalletPayment(e),identityToken:this.credential?.token}})}else{if(!ie())return;let n=this.credential?.token;if(!n)return;t=X.generate(e,{token:n})}S.info(this.$t(`luma.message.startingTask`)),R(`luma`,t).then(e=>{let t=e?.data?.task_id;this.walletMode&&!this.credential?.token&&t&&!this.walletTaskIds.includes(t)&&this.walletTaskIds.unshift(t),S.success(this.$t(`luma.message.startTaskSuccess`))}).catch(e=>{e instanceof q||re(e,`luma`)||(this.walletMode?S.error(this.$t(`common.x402Scenario.paymentFailed`)):S.error(this.$t(`luma.message.startTaskFailed`)))}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})},getWalletContext(){return U(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?.()},hasText(e){return typeof e==`string`&&e.trim().length>0}}});function en(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,onExtend:t[0]||=t=>e.$emit(`extend`)},null,8,[`loading`,`onReachTop`])]),_:1})}var tn=F($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,rt as m,tt as h,x as g,z as _}from"./vendor-chart-Dw-P17PN.js";import{t as v}from"./upload-DwxzDAyJ.js";import{t as y}from"./tooltip-DP16dKGj.js";import{t as b}from"./alert-BprQRUmf.js";import{h as x,v as S}from"./models-BMOmATPQ.js";import{t as C}from"./drawer-Cw-xPJEK.js";import{t as w}from"./switch-DdxLIYo3.js";import{t as T}from"./clock-BiVJAvmB.js";import{a as E,i as D,n as O,r as k,s as ee,t as te}from"./pagination-DRbPFMFP.js";import{t as A}from"./info-oi3mtgtk.js";import{t as j}from"./trash-2-BajHbves.js";import{t as M}from"./triangle-alert-C51VtTWm.js";import{t as N}from"./upload-BZW4P6RL.js";import{t as P}from"./wand-sparkles-CWwVsj-U.js";import"./constants-_TDjlKzj.js";import{$ as ne,$i as F,A as I,Fa as L,Ki as R,Ni as z,O as re,Rr as B,Y as V,Ya as H,ai as ie,et as U,ja as W,ji as G,nt as K,ri as q,rt as J,tt as Y,vn as ae,zr as X}from"./index-CZhYemAK.js";import{t as oe}from"./CopyToClipboard-BOqZRXW2.js";import{t as se}from"./ReportButton-HdJK0yBN.js";import{t as ce}from"./FilePreview-BQW8k5Kr.js";import{t as Z}from"./ImagePreview-DkFAu6RG.js";import{n as le}from"./taskDrawerMixin-DyAUhFEq.js";import{t as ue}from"./ServicePricingSummary-Cf2pTQAq.js";import{t as Q}from"./VideoPlayer-DSnod19L.js";import{t as de}from"./ScenarioPaymentMode-Ck7XJ7yx.js";import{t as fe}from"./ApiCodeButton-Kf0YW598.js";import{t as pe}from"./BotPlaceholder-DtVSvucb.js";import{t as me}from"./taskPollingMixin-CcLxtz8z.js";var he=_({name:`LayoutLuma`,components:{MagicIcon:P,ElDrawer:C,ElButton:H},mixins:[le]}),ge={class:`main flex flex-row flex-1`},_e={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)]`},ve={class:`result h-full p-4 flex-1 flex flex-col min-w-0 overflow-x-hidden bg-[var(--app-content-bg)]`};function ye(t,n,r,i,o,c){let f=l(`magic-icon`),m=l(`el-button`),_=l(`el-drawer`);return h(),s(`div`,ge,[e(`div`,_e,[d(t.$slots,`config`,{},void 0,!0)]),e(`div`,ve,[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 be=I(he,[[`render`,ye],[`__scopeId`,`data-v-4ab11479`]]),xe=_({name:`EnhancementSelector`,components:{ElSwitch:w,InfoIcon:E},computed:{value:{get(){return this.$store.state.luma?.config?.enhancement},set(e){console.debug(`set enhancement`,e),this.$store.commit(`luma/setConfig`,{...this.$store.state.luma?.config,enhancement:e})}}},mounted(){this.value===void 0&&(this.value=!0)}}),Se={class:`relative`},Ce={class:`flex justify-between`},we={class:`flex justify-start items-center`},Te={class:`text-sm font-bold`},Ee={class:`flex justify-end items-center`};function De(t,n,r,o,c,u){let d=l(`info-icon`),f=l(`el-switch`);return h(),s(`div`,Se,[e(`div`,Ce,[e(`div`,we,[e(`span`,Te,i(t.$t(`luma.name.enhancement`)),1),a(d,{content:t.$t(`luma.description.enhancement`)},null,8,[`content`])]),e(`div`,Ee,[a(f,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,class:`value`},null,8,[`modelValue`])])])])}var Oe=I(xe,[[`render`,De]]),ke=_({name:`CustomSelector`,components:{ElSwitch:w,InfoIcon:E},computed:{value:{get(){return this.$store.state.luma?.config?.custom},set(e){console.debug(`set custom`,e),this.$store.commit(`luma/setConfig`,{...this.$store.state.luma?.config,custom:e})}}},mounted(){this.value===void 0&&(this.value=!1)}}),Ae={class:`relative`},je={class:`flex justify-between`},Me={class:`flex justify-start items-center`},Ne={class:`text-sm font-bold`},Pe={class:`flex justify-end items-center`};function Fe(t,n,r,o,c,u){let d=l(`info-icon`),f=l(`el-switch`);return h(),s(`div`,Ae,[e(`div`,je,[e(`div`,Me,[e(`span`,Ne,i(t.$t(`luma.name.custom`)),1),a(d,{content:t.$t(`luma.description.custom`)},null,8,[`content`])]),e(`div`,Pe,[a(f,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,class:`value`},null,8,[`modelValue`])])])])}var Ie=I(ke,[[`render`,Fe]]),Le=_({name:`LoopSelector`,components:{ElSwitch:w,InfoIcon:E},computed:{value:{get(){return this.$store.state.luma?.config?.loop},set(e){console.debug(`set loop`,e),this.$store.commit(`luma/setConfig`,{...this.$store.state.luma?.config,loop:e})}}},mounted(){this.value===void 0&&(this.value=!1)}}),Re={class:`relative`},ze={class:`flex justify-between`},Be={class:`flex justify-start items-center`},Ve={class:`text-sm font-bold`},He={class:`flex justify-end items-center`};function Ue(t,n,r,o,c,u){let d=l(`info-icon`),f=l(`el-switch`);return h(),s(`div`,Re,[e(`div`,ze,[e(`div`,Be,[e(`span`,Ve,i(t.$t(`luma.name.loop`)),1),a(d,{content:t.$t(`luma.description.loop`)},null,8,[`content`])]),e(`div`,He,[a(f,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,class:`value`},null,8,[`modelValue`])])])])}var We=I(Le,[[`render`,Ue]]),Ge=_({name:`EndImage`,components:{UploadIcon:N,ElUpload:v,ElButton:H,ImagePreview:Z,InfoIcon:E},mixins:[J,K,U,V],data(){return{fileList:[],uploadUrl:W()+`/api/v1/files/`}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},urls(){return this.fileList.map(e=>e?.response?.file_url)},value:{get(){return this.$store.state?.luma?.config?.start_image_url},set(){}}},mounted(){this.value||=void 0,this.onSetEndImageUrl()},methods:{onExceed(){S.warning(this.$t(`luma.message.uploadReferencesExceed`))},onError(){S.error(this.$t(`luma.message.uploadReferencesError`))},onSetEndImageUrl(){let e=this.urls?.[0];this.$store.commit(`luma/setConfig`,{...this.$store.state.luma?.config,end_image_url:e})},async onSuccess(){this.onSetEndImageUrl()}}}),Ke={class:`relative`},qe={class:`flex justify-between`},Je={class:`flex justify-start items-center`},Ye={class:`text-sm font-bold`};function Xe(t,n,c,u,d,m){let g=l(`info-icon`),_=l(`image-preview`),v=l(`upload-icon`),y=l(`el-button`),b=l(`el-upload`);return h(),s(`div`,Ke,[e(`div`,qe,[e(`div`,Je,[e(`span`,Ye,i(t.$t(`luma.name.endImageUrl`)),1),a(g,{content:t.$t(`luma.description.endImageUrl`)},null,8,[`content`])])]),a(b,{ref:`uploader`,"file-list":t.fileList,"onUpdate:fileList":n[0]||=e=>t.fileList=e,name:`file`,accept:`.png,.jpg,.jpeg,.gif,.bmp,.webp`,limit:5,class:`upload-wrapper`,multiple:!1,"before-upload":t.beforeUploadSizeGuard,action:t.uploadUrl,"list-type":`picture`,"on-exceed":t.onExceed,"on-error":t.onError,"on-success":t.onSuccess,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(y,{round:``,type:`primary`,size:`small`,class:`btn btn-upload`},{default:p(()=>[a(v,{class:`icon mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`luma.button.uploadEndImageUrl`)),1)]),_:1})]),_:1},8,[`file-list`,`before-upload`,`action`,`on-exceed`,`on-error`,`on-success`,`headers`])])}var Ze=I(Ge,[[`render`,Xe],[`__scopeId`,`data-v-04c461bb`]]),Qe=_({name:`StartImage`,components:{UploadIcon:N,ElUpload:v,ElButton:H,ImagePreview:Z,InfoIcon:E},mixins:[J,K,U,V],data(){return{fileList:[],uploadUrl:W()+`/api/v1/files/`}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},urls(){return this.fileList.map(e=>e?.response?.file_url)},value:{get(){return this.$store.state?.luma?.config?.start_image_url},set(){}}},mounted(){this.value||=void 0,this.onSetStartImageUrl()},methods:{onExceed(){S.warning(this.$t(`luma.message.uploadReferencesExceed`))},onError(){S.error(this.$t(`luma.message.uploadReferencesError`))},onSetStartImageUrl(){let e=this.urls?.[0];this.$store.commit(`luma/setConfig`,{...this.$store.state.luma?.config,start_image_url:e})},async onSuccess(){this.onSetStartImageUrl()}}}),$e={class:`relative`},et={class:`flex justify-between`},tt={class:`flex justify-start items-center`},nt={class:`text-sm font-bold`};function rt(t,n,c,u,d,m){let g=l(`info-icon`),_=l(`image-preview`),v=l(`upload-icon`),y=l(`el-button`),b=l(`el-upload`);return h(),s(`div`,$e,[e(`div`,et,[e(`div`,tt,[e(`span`,nt,i(t.$t(`luma.name.startImageUrl`)),1),a(g,{content:t.$t(`luma.description.startImageUrl`)},null,8,[`content`])])]),a(b,{ref:`uploader`,"file-list":t.fileList,"onUpdate:fileList":n[0]||=e=>t.fileList=e,name:`file`,accept:`.png,.jpg,.jpeg,.gif,.bmp,.webp`,limit:5,class:`upload-wrapper`,multiple:!1,"before-upload":t.beforeUploadSizeGuard,action:t.uploadUrl,"list-type":`picture`,"on-exceed":t.onExceed,"on-error":t.onError,"on-success":t.onSuccess,headers:t.headers},{file:p(({file:e})=>[e.percentage==null?o(``,!0):(h(),f(_,{key:0,url:e.url||e.response.file_url,name:e.name,percentage:e.percentage,onRemove:n=>t.fileList.splice(t.fileList.indexOf(e),1)},null,8,[`url`,`name`,`percentage`,`onRemove`]))]),default:p(()=>[a(y,{round:``,type:`primary`,size:`small`,class:`btn btn-upload`},{default:p(()=>[a(v,{class:`icon mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`luma.button.uploadStartImageUrl`)),1)]),_:1})]),_:1},8,[`file-list`,`before-upload`,`action`,`on-exceed`,`on-error`,`on-success`,`headers`])])}var it=I(Qe,[[`render`,rt],[`__scopeId`,`data-v-31c07a19`]]),at=_({name:`UploadVideo`,components:{UploadIcon:N,ElUpload:v,ElButton:H,InfoIcon:E,FilePreview:ce},mixins:[K,U],data(){return{fileList:[],uploadUrl:W()+`/api/v1/files/`}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},urls(){return this.fileList.map(e=>e?.response?.file_url)},value:{get(){return this.$store.state.luma?.config?.video_url},set(){let e=this.urls?.[0];this.$store.commit(`luma/setConfig`,{...this.$store.state.luma?.config,video_url:e})}}},mounted(){this.value||=void 0},methods:{onExceed(){S.warning(this.$t(`luma.message.uploadVideoExceed`))},onError(){S.error(this.$t(`luma.message.uploadVideoError`))},beforeUpload(e){let t=e.type===`video/mp4`,n=e.size/1024/1024<10;return t?n?!0:(S.error(this.$t(`luma.message.uploadVideoSizeExceed`)),!1):(S.error(this.$t(`luma.message.uploadVideoTypeFailed`)),!1)},onSetVideoUrl(){let e=this.urls?.[0];this.$store.commit(`luma/setConfig`,{...this.$store.state.luma?.config,video_url:e,action:`extend`})},async onSuccess(){this.onSetVideoUrl()}}}),ot={class:`relative`},st={class:`flex justify-between`},ct={class:`flex justify-start items-center`},lt={class:`text-sm font-bold`};function ut(t,n,c,u,d,m){let g=l(`info-icon`),_=l(`file-preview`),v=l(`upload-icon`),y=l(`el-button`),b=l(`el-upload`);return h(),s(`div`,ot,[e(`div`,st,[e(`div`,ct,[e(`span`,lt,i(t.$t(`luma.name.videoUrl`)),1),a(g,{content:t.$t(`luma.description.videoUrl`)},null,8,[`content`])])]),a(b,{ref:`uploader`,"file-list":t.fileList,"onUpdate:fileList":n[0]||=e=>t.fileList=e,accept:`.mp4`,name:`file`,class:`value`,"show-file-list":!0,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},{file:p(({file:e})=>[e.percentage==null?o(``,!0):(h(),f(_,{key:0,url:e.url||e.response?.file_url,name:e.name,percentage:e.percentage,onRemove:n=>t.fileList.splice(t.fileList.indexOf(e),1)},null,8,[`url`,`name`,`percentage`,`onRemove`]))]),default:p(()=>[a(y,{round:``,type:`primary`,size:`small`,class:`btn btn-upload`},{default:p(()=>[a(v,{class:`icon mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`luma.button.uploadVideoUrl`)),1)]),_:1})]),_:1},8,[`file-list`,`action`,`before-upload`,`on-exceed`,`on-error`,`on-success`,`headers`])])}var dt=I(at,[[`render`,ut],[`__scopeId`,`data-v-2189fc52`]]),ft=_({name:`PromptInput`,components:{PromptTextarea:D},computed:{prompt:{get(){return this.$store.state.luma?.config?.prompt},set(e){this.$store.commit(`luma/setConfig`,{...this.$store.state.luma?.config,prompt:e})}}},mounted(){this.prompt||=``}});function pt(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(`luma.name.prompt`),info:e.$t(`luma.description.prompt`),placeholder:e.$t(`luma.placeholder.prompt`)},null,8,[`modelValue`,`title`,`info`,`placeholder`])}var mt=I(ft,[[`render`,pt]]),ht=_({name:`ExtendFromInput`,components:{VideoPlayer:Q},props:{modelValue:{type:Object,required:!1,default:void 0}},data(){return{options:{quality:{default:`1080p`}}}},computed:{config(){return this.$store.state.luma?.config}}}),gt={class:`relative`},_t={class:`flex mb-2`},vt={class:`text-sm font-bold`};function yt(t,n,r,a,c,u){let d=l(`video-player`);return h(),s(`div`,gt,[e(`div`,_t,[e(`span`,vt,i(t.$t(`luma.name.extend`)),1)]),e(`div`,null,[t.config?.video_url?(h(),f(d,{key:0,src:t.config?.video_url},null,8,[`src`])):o(``,!0)])])}var bt=_({name:`ConfigPanel`,components:{MagicIcon:P,LoopSelector:We,StartImageInput:it,EndImageInput:Ze,EnhancementSelector:Oe,ElButton:H,PromptInput:mt,ExtendFromInput:I(ht,[[`render`,yt]]),CustomSelector:Ie,UploadVideo:dt,ServicePricingSummary:ue,ScenarioPaymentMode:de},emits:[`generate`],data(){return{quoteTimer:0,quoteRunId:0}},computed:{config(){return this.$store.state.luma?.config},consumption(){return ae(this.config,this.service?.cost)},service(){return this.$store.state.luma?.service},walletMode(){return G()&&z(`luma`).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=z(`luma`),t=++this.quoteRunId;e.quoteLoading=!0,e.quoteUsdc=void 0;try{let n=await X.quote(B(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`)}}}),xt={class:`flex flex-col h-full`},St={class:`flex-1 overflow-y-auto p-5`},Ct={class:`flex flex-col items-center justify-center px-5 pb-5`};function wt(t,n,c,u,d,m){let g=l(`extend-from-input`),_=l(`prompt-input`),v=l(`custom-selector`),y=l(`upload-video`),b=l(`start-image-input`),x=l(`end-image-input`),S=l(`enhancement-selector`),C=l(`loop-selector`),w=l(`scenario-payment-mode`),T=l(`service-pricing-summary`),E=l(`magic-icon`),D=l(`el-button`);return h(),s(`div`,xt,[e(`div`,St,[t.config?.video_id||t.config?.video_url?(h(),f(g,{key:0,class:`mb-4`})):o(``,!0),a(_,{class:`mb-4`}),t.config?.video_id?o(``,!0):(h(),f(v,{key:1,class:`mb-4`})),t.config?.custom?(h(),f(y,{key:2,class:`mb-4`})):o(``,!0),!(t.config?.video_id||t.config?.video_url)&&!t.config?.custom?(h(),f(b,{key:3,class:`mb-4`})):o(``,!0),a(x,{class:`mb-4`}),a(S,{class:`mb-4`}),a(C,{class:`mb-4`})]),e(`div`,Ct,[a(w,{scenario:`luma`}),t.walletMode?o(``,!0):(h(),f(T,{key:0,value:t.consumption,service:t.service},null,8,[`value`,`service`])),t.config?.video_url!==void 0||t.config?.custom?(h(),f(D,{key:1,type:`primary`,class:`btn w-full`,round:``,onClick:t.onGenerate},{default:p(()=>[a(E,{class:`mr-2`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`luma.button.extend`)),1)]),_:1},8,[`onClick`])):(h(),f(D,{key:2,type:`primary`,class:`btn w-full`,round:``,onClick:t.onGenerate},{default:p(()=>[a(E,{class:`mr-2`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`luma.button.generate`)),1)]),_:1},8,[`onClick`]))])])}var Tt=I(bt,[[`render`,wt]]),Et=_({name:`TaskPreview`,components:{DeleteIcon:j,ChannelIcon:ee,InfoIcon:A,MagicIcon:P,TimeIcon:T,WarningIcon:M,CopyToClipboard:oe,ElAlert:b,VideoPlayer:Q,ElTooltip:y,ElButton:H,ApiCodeButton:fe,ReportButton:se},props:{modelValue:{type:Object,required:!0}},emits:[`extend`],data(){return{}},computed:{application(){return this.$store.state.luma?.application},config(){return this.$store.state.luma?.config}},methods:{async onDelete(){let e=this.modelValue?.id;if(e){try{await L.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(`luma/deleteTask`,{id:e}),S.success(this.$t(`common.message.deleteTaskSuccess`))}catch{S.error(this.$t(`common.message.deleteTaskFailed`))}}},onExtend(e,t){console.debug(`set config`,t),this.$store.commit(`luma/setConfig`,{...this.$store.state.luma?.config,video_id:t.video_id,prompt:t.prompt,action:`extend`,thumbnail_url:t.thumbnail_url,video_url:t.video_url}),this.$emit(`extend`)},onDownload(e){window.open(e,`_blank`)}}}),Dt={class:`preview`},Ot={class:`left`},kt={class:`main`},At={class:`bot`},jt={class:`datetime`},Mt=[`aria-label`],Nt={class:`info`},Pt={key:0,class:`prompt mt-2`},Ft={key:0},It={key:1},Lt={key:0,class:n({content:!0,failed:!0})},Rt={key:0,class:`mb-4`},zt={key:1,class:n({operations:!0,"mt-2":!0,"mb-4":!0})},Bt={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},$={key:0,class:`text-[var(--el-text-color-regular)] text-xs mb-0`},Vt={key:1,class:n({content:!0})},Ht={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},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={class:`text-[var(--el-text-color-regular)] text-xs mb-0`},Kt={key:2,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 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(`magic-icon`),w=l(`copy-to-clipboard`),T=l(`time-icon`),E=l(`el-alert`),D=l(`warning-icon`),O=l(`info-icon`),k=l(`channel-icon`);return h(),s(`div`,Dt,[e(`div`,Ot,[a(g,{capability:`luma`,part:`avatar`,class:`avatar`})]),e(`div`,kt,[e(`div`,At,[a(g,{capability:`luma`,part:`name`}),e(`span`,jt,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,Mt)):o(``,!0)]),_:1},8,[`content`])]),e(`div`,Nt,[n.modelValue?.request?.prompt?(h(),s(`p`,Pt,[r(i(n.modelValue?.request?.prompt)+` `,1),n.modelValue?.response?o(``,!0):(h(),s(`span`,Ft,` - (`+i(n.$t(`luma.status.pending`))+`) `,1)),n.modelValue?.response?.state===`processing`||n.modelValue?.response?.state===`pending`?(h(),s(`span`,It,` - (`+i(n.$t(`luma.status.processing`))+`) `,1)):o(``,!0)])):o(``,!0)]),n.modelValue?.response?.success===!0?(h(),s(`div`,Lt,[n.modelValue.response.video_url?(h(),s(`div`,Rt,[a(y,{src:n.modelValue.response.video_url},null,8,[`src`])])):o(``,!0),n.modelValue?.response&&!n.config?.custom?(h(),s(`div`,zt,[a(v,{class:`box-item`,effect:`dark`,content:n.$t(`luma.message.extendVideo`),placement:`top-start`},{default:p(()=>[a(b,{type:`info`,size:`small`,class:`btn-action`,onClick:c[1]||=t(e=>n.onExtend(e,n.modelValue?.response),[`stop`])},{default:p(()=>[r(i(n.$t(`luma.button.extend`)),1)]),_:1})]),_:1},8,[`content`]),a(v,{class:`box-item`,effect:`dark`,content:n.$t(`luma.message.downloadVideo`),placement:`top-start`},{default:p(()=>[a(b,{type:`info`,size:`small`,class:`btn-action`,onClick:c[2]||=t(e=>n.onDownload(n.modelValue?.response?.video_url),[`stop`])},{default:p(()=>[r(i(n.$t(`luma.button.download`)),1)]),_:1})]),_:1},8,[`content`]),a(x,{path:`/luma/videos`,body:n.modelValue?.request},null,8,[`body`]),a(S,{service:`luma`,"target-id":n.modelValue?.id,snapshot:{prompt:n.modelValue?.request?.prompt}},null,8,[`target-id`,`snapshot`])])):o(``,!0),a(E,{closable:!1,class:`mt-2 success`},{default:p(()=>[e(`p`,Bt,[a(C,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`luma.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(w,{content:n.modelValue?.id},null,8,[`content`])]),n.modelValue?.elapsed?(h(),s(`p`,$,[a(T,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`luma.name.elapsed`))+`: `+i(n.modelValue?.elapsed?.toFixed(2))+`s `,1)])):o(``,!0)]),_:1})])):o(``,!0),n.modelValue?.response?.state===`failed`||n.modelValue?.response?.success===!1?(h(),s(`div`,Vt,[a(E,{closable:!1,class:`failure`},{template:p(()=>[a(D,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`luma.name.failure`)),1)]),default:p(()=>[e(`p`,Ht,[a(C,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`luma.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(w,{content:n.modelValue?.id},null,8,[`content`])]),e(`p`,Ut,[a(O,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`luma.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`,Wt,[a(T,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`luma.name.elapsed`))+`: `+i(n.modelValue?.elapsed?.toFixed(2))+`s `,1)])):o(``,!0),e(`p`,Gt,[a(k,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`luma.name.traceId`))+`: `+i(n.modelValue?.trace_id)+` `,1),a(w,{content:n.modelValue?.response?.trace_id},null,8,[`content`])])]),_:1})])):o(``,!0),!n.modelValue?.response||n.modelValue?.response?.state===`processing`||n.modelValue?.response?.state===`pending`?(h(),s(`div`,Kt,[a(E,{closable:!1,class:`info`},{template:p(()=>[a(T,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(n.modelValue?.response?`luma.status.processing`:`luma.status.pending`)),1)]),default:p(()=>[e(`p`,qt,[a(C,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`luma.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(w,{content:n.modelValue?.id},null,8,[`content`])])]),_:1})])):o(``,!0)])])}var Yt=_({name:`RecentPanel`,components:{BotPlaceholder:pe,TaskPreview:I(Et,[[`render`,Jt],[`__scopeId`,`data-v-46a32bda`]]),NoTasks:k,ScrollList:O},props:{loading:{type:Boolean,default:!1}},emits:[`reach-top`,`extend`],data(){return{job:0}},computed:{tasks(){return{...this.$store.state.luma?.tasks,items:this.$store.state.luma?.tasks?.items?.slice()}}},methods:{getScrollElement(){return this.$refs.scrollList?.getScrollElement?.()}}}),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`),g=l(`task-preview`),_=l(`scroll-list`),v=l(`no-tasks`);return h(),s(c,null,[e.tasks?.items===void 0?(h(),s(`div`,Xt,[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[1]||=t=>e.$emit(`reach-top`)},{default:p(()=>[(h(!0),s(c,null,m(e.tasks?.items,n=>(h(),f(g,{key:n.id,"model-value":n,onExtend:t[0]||=t=>e.$emit(`extend`)},null,8,[`model-value`]))),128))]),_:1},8,[`loading`])):o(``,!0),e.tasks?.items?.length===0?(h(),s(`div`,Zt,[a(v)])):o(``,!0)],64)}var $t=_({name:`LumaIndex`,components:{ConfigPanel:Tt,Layout:be,RecentPanel:I(Yt,[[`render`,Qt]])},mixins:[Y,me(`luma`)],inject:[`initialized`],emits:[`extend`],data(){return{task:void 0,job:0,loadingMore:!1,fetchingTasks:!1,walletTaskIds:[]}},computed:{applicationsLoading(){return this.$store.state.luma?.status?.getApplications===x.Request},tasksLoading(){return this.$store.state.luma?.status?.getTasks===x.Request||this.fetchingTasks},credential(){return this.$store.state.luma.credential},config(){return this.$store.state.luma.config},application(){return this.$store.state.luma.application},tasks(){return this.$store.state.luma.tasks},walletMode(){return G()&&z(`luma`).mode===`wallet`}},watch:{walletMode:{async handler(e,t){if(!(t===void 0||e===t)){if(this.$store.commit(`luma/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 te({tasks:this.tasks,getTasks:()=>this.tasks,loading:this.loadingMore,setLoading:e=>this.loadingMore=e,isBlocked:()=>this.tasksLoading||this.applicationsLoading,fetch:e=>this.onGetTasks({createdAtMax:e}),getScrollElement:()=>this.getTasksScrollElement()})},async onGetService(){console.debug(`start onGetService`),await this.$store.dispatch(`luma/getService`),console.debug(`end onGetService`)},async onGetApplication(){console.debug(`start onGetApplication`),await this.$store.dispatch(`luma/getApplications`),console.debug(`end onGetApplication`),await this.onGetTasks()},async onScrollDown(){console.debug(`scrolling down`),await this.$nextTick();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(`luma/getTasks`,{limit:t,createdAtMin:n,createdAtMax:r,...this.walletMode&&!this.credential?.token?{mode:`x402`,ids:this.walletTaskIds}:{}})}finally{this.fetchingTasks=!1}},async onGenerate(){if(!ne(this.uploadTracker,e=>this.$t(e),e=>S.warning(e)))return;let e=B(this.config);if(!this.hasText(e.prompt)){S.error(this.$t(`luma.message.promptRequired`));return}e.prompt=e.prompt?.trim();let t;if(this.walletMode){let n=this.getWalletContext();if(!n){S.warning(this.$t(`common.x402Scenario.connectWalletFirst`));return}t=X.generate(e,{mode:`x402`,x402:{wallet:n,confirm:e=>this.confirmWalletPayment(e),identityToken:this.credential?.token}})}else{if(!F())return;let n=this.credential?.token;if(!n)return;t=X.generate(e,{token:n})}S.info(this.$t(`luma.message.startingTask`)),R(`luma`,t).then(e=>{let t=e?.data?.task_id;this.walletMode&&!this.credential?.token&&t&&!this.walletTaskIds.includes(t)&&this.walletTaskIds.unshift(t),S.success(this.$t(`luma.message.startTaskSuccess`))}).catch(e=>{e instanceof q||re(e,`luma`)||(this.walletMode?S.error(this.$t(`common.x402Scenario.paymentFailed`)):S.error(this.$t(`luma.message.startTaskFailed`)))}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})},getWalletContext(){return ie(this.$wallet)},async confirmWalletPayment(e){return L.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?.()},hasText(e){return typeof e==`string`&&e.trim().length>0}}});function en(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,onExtend:t[0]||=t=>e.$emit(`extend`)},null,8,[`loading`,`onReachTop`])]),_:1})}var tn=I($t,[[`render`,en]]);export{tn as default};
|