@acedatacloud/nexior 3.362.4 → 3.362.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/assets/{ApiCodeButton-BA7mDSbv.js → ApiCodeButton-C_dp8MuJ.js} +1 -1
- package/dist/assets/{ApiCodeDialog-BsRU8WFT.js → ApiCodeDialog-BLEnKZjI.js} +1 -1
- package/dist/assets/{Artifacts-DJBH37uq.js → Artifacts-DiUqc3Sb.js} +1 -1
- package/dist/assets/{AskUserQuestionCard-DjYhfs68.js → AskUserQuestionCard-akc1YMtx.js} +1 -1
- package/dist/assets/{AudioPreview-4SXEbJja.js → AudioPreview-vjoUTGMO.js} +1 -1
- package/dist/assets/{Auth-BOif7xOO.js → Auth-Bvdnu3X9.js} +1 -1
- package/dist/assets/{Bare-B5Gm4K8P.js → Bare-CSfDxUHK.js} +1 -1
- package/dist/assets/{BotPlaceholder-C--FHvts.js → BotPlaceholder-DKkxXInm.js} +1 -1
- package/dist/assets/{BottomFooter-Diy1dxTR.js → BottomFooter-D7A5_Xlp.js} +1 -1
- package/dist/assets/{BrowseConnectors-BfZCwj7s.js → BrowseConnectors-DFppE4yM.js} +1 -1
- package/dist/assets/{BrowserPairingDialog-CwcFHrVH.js → BrowserPairingDialog-SpVfnsge.js} +1 -1
- package/dist/assets/{Callback-DUubRo9v.js → Callback-DARIhRQR.js} +1 -1
- package/dist/assets/{CodeSnippet-B0neSlgP.js → CodeSnippet-BGqV4i-2.js} +1 -1
- package/dist/assets/{Console-D8pv2zPD.js → Console-Bex3lCkU.js} +1 -1
- package/dist/assets/{Consumption-BK4nImFR.js → Consumption-gbjpxptE.js} +1 -1
- package/dist/assets/{Conversation-BXtScsLN.js → Conversation-BVK91u-s.js} +1 -1
- package/dist/assets/{Conversation-Cv9VbfEe.js → Conversation-BrHSp-Xe.js} +1 -1
- package/dist/assets/{CopyToClipboard-AvaqCeXT.js → CopyToClipboard-QFe7Cn4_.js} +1 -1
- package/dist/assets/Detail-CsmSqQzC.js +2 -0
- package/dist/assets/{Detail-BbDnDZ62.css → Detail-D0VXAJ_e.css} +1 -1
- package/dist/assets/{Extra-Dy27Xepl.js → Extra-Dk6Hp_wi.js} +1 -1
- package/dist/assets/{FilePreview-BNtZwLa2.js → FilePreview-DI9LxA3P.js} +1 -1
- package/dist/assets/{Hailuo-CUHHmlNz.js → Hailuo-BR72DJZp.js} +1 -1
- package/dist/assets/{History-BrR8Yf_Z.js → History-DRSmy2AO.js} +1 -1
- package/dist/assets/{ImagePreview-DPhaVe-K.js → ImagePreview-Bb3mYw3m.js} +1 -1
- package/dist/assets/{ImageWrapper-DwDvvMD7.js → ImageWrapper-BfDpkYJA.js} +1 -1
- package/dist/assets/{Index-DaePlNci.js → Index-BGQtjLK9.js} +1 -1
- package/dist/assets/{Index-DKrXlrk-.js → Index-B_XUs3dD.js} +1 -1
- package/dist/assets/{Index-BgP1xjT5.js → Index-BeJlx-9q.js} +1 -1
- package/dist/assets/{Index-BmXYFehz.js → Index-BtJRmTxI.js} +1 -1
- package/dist/assets/{Index-Bm_crXl-.js → Index-C6l188rj.js} +1 -1
- package/dist/assets/{Index-BIccEBEN.js → Index-C7BqGUOv.js} +1 -1
- package/dist/assets/{Index-DMQ9DZGa.js → Index-C7a3GeIN.js} +1 -1
- package/dist/assets/{Index-ChX8EfQ8.js → Index-CBWJ3bh7.js} +1 -1
- package/dist/assets/{Index-B83b9_wi.js → Index-CHPGNQGH.js} +1 -1
- package/dist/assets/{Index-D948p6ES.js → Index-CSQlE6Us.js} +1 -1
- package/dist/assets/{Index-DlofPOmV.js → Index-Cc0BJv32.js} +1 -1
- package/dist/assets/{Index-Crdhl-Vx.js → Index-CpIVSIgU.js} +1 -1
- package/dist/assets/{Index-D8Y03OtA.js → Index-CtL4ygHX.js} +1 -1
- package/dist/assets/{Index-BXnU9Nhc.js → Index-Cxufo6vo.js} +1 -1
- package/dist/assets/{Index-B1Kw72wN.js → Index-CzBJwmqV.js} +1 -1
- package/dist/assets/{Index-CMSWNfN_.js → Index-D0lk9n2n.js} +1 -1
- package/dist/assets/{Index-OwzwOsGt.js → Index-D7FOLOnS.js} +1 -1
- package/dist/assets/{Index-BthkIMLu.js → Index-DYo_8IfS.js} +1 -1
- package/dist/assets/{Index-CqRMg-uH.js → Index-DZk9fmIX.js} +1 -1
- package/dist/assets/{Index-DbsIgIEX.js → Index-DbOiGC48.js} +1 -1
- package/dist/assets/{Index-DvmQuJd4.js → Index-De2BQ_Wj.js} +1 -1
- package/dist/assets/{Index-CLKH3TKM.js → Index-DeUBNCZY.js} +1 -1
- package/dist/assets/{Index-CMu0wO8E.js → Index-DqATchy4.js} +1 -1
- package/dist/assets/{Index-0tDHczbM.js → Index-DtIPk58o.js} +1 -1
- package/dist/assets/{Index-CaIBqmIZ.js → Index-DtIiLPFH.js} +1 -1
- package/dist/assets/{Index-B2gSKiZ3.js → Index-Dy3RvsJc.js} +1 -1
- package/dist/assets/{Index-CTZWRaZt.js → Index-Eusdi6Fv.js} +1 -1
- package/dist/assets/{Index-2pUrfZDO.js → Index-P6XrKYCT.js} +1 -1
- package/dist/assets/{Index-7fi1vULC2.js → Index-W-7bFZd12.js} +1 -1
- package/dist/assets/{Index-BneErBTq.js → Index-apjA2pwy.js} +1 -1
- package/dist/assets/{Index-CGEzzwMb.js → Index-g-R_CbbQ.js} +1 -1
- package/dist/assets/{Index-BadgGV7L.js → Index-ob9SQEGZ.js} +1 -1
- package/dist/assets/{Index-BhVRicE6.js → Index-pHFwycSO.js} +1 -1
- package/dist/assets/{Index-DWCDjaXA.js → Index-sfXjm8fk.js} +1 -1
- package/dist/assets/{Index-D-kQkhOh.js → Index-w9r1VzQj.js} +1 -1
- package/dist/assets/{Invitees-DL1P2x5O.js → Invitees-CZqn_3Tn.js} +1 -1
- package/dist/assets/{List-By1Vg7U3.js → List-BIYtmLHd.js} +1 -1
- package/dist/assets/{List-B7gE17Uu.js → List-DiSgMGF_.js} +1 -1
- package/dist/assets/{List-ByRoWUqS.js → List-O_f32ddz.js} +1 -1
- package/dist/assets/{LocalTools-Dw-cSEm5.js → LocalTools-BzKWJgcv.js} +1 -1
- package/dist/assets/{LocalTools-C0CsQekj.js → LocalTools-CM0ThL84.js} +1 -1
- package/dist/assets/{Logo-B5pb3LXw.js → Logo-CHfoXMq8.js} +1 -1
- package/dist/assets/{Main-gugFahba.js → Main-CBoA-WCI.js} +1 -1
- package/dist/assets/{Message-C0-5k24c.js → Message-BWy61toK.js} +1 -1
- package/dist/assets/{Model-DSVl1m8-.js → Model-COYZvYm9.js} +1 -1
- package/dist/assets/Navigator-BWwXDF0d.css +1 -0
- package/dist/assets/{Navigator-B-NGLAVz.js → Navigator-DARKa-NL.js} +4 -4
- package/dist/assets/{NotFound-Bp7eiYNh.js → NotFound-C8bH3X66.js} +1 -1
- package/dist/assets/{PageHeader-5PIb-pRr.js → PageHeader-5Xfl78bc.js} +1 -1
- package/dist/assets/{Pay-BXFjGCjg.js → Pay-BcxsJZzz.js} +1 -1
- package/dist/assets/{Player-BDjTM_TZ.js → Player-BmHe8rL9.js} +1 -1
- package/dist/assets/{Poivelle-CATRUvJM.js → Poivelle-BvbPTsxC.js} +1 -1
- package/dist/assets/{RealtimeCall-4hZrsGbX.js → RealtimeCall-By6gPdJe.js} +1 -1
- package/dist/assets/{ReportButton-D07ABYgs.js → ReportButton-ChQMpn6o.js} +1 -1
- package/dist/assets/{ReportDialog-CZ_kBqmh.js → ReportDialog-BJ0RWYu2.js} +1 -1
- package/dist/assets/{ScenarioPaymentMode-DHx-gf_J.js → ScenarioPaymentMode-BlvIIqGE.js} +1 -1
- package/dist/assets/{ScheduledTasks-BTdAj5bj.js → ScheduledTasks-S4Z71gh-.js} +1 -1
- package/dist/assets/{SolanaWalletPickerDialog-Dyf4OrtZ.js → SolanaWalletPickerDialog-Cd5vajex.js} +1 -1
- package/dist/assets/{Status-BAOOm7Y6.js → Status-DNOaXznc.js} +1 -1
- package/dist/assets/{Subscribe-Qqvq4kcb.js → Subscribe-A8OqkeSR.js} +1 -1
- package/dist/assets/{TabSwitcher-SRPkuCQO.js → TabSwitcher-SiRMNexm.js} +1 -1
- package/dist/assets/{Tts-CiW_3IBs.js → Tts-DyMpN8hW.js} +1 -1
- package/dist/assets/{VideoPlayer-89YYttvk.js → VideoPlayer-DZp6QESw.js} +1 -1
- package/dist/assets/{VideoPreview-BlX_PPPl.js → VideoPreview-CPsP_3Pp.js} +1 -1
- package/dist/assets/arrow-down-DvuSfXw8.js +1 -0
- package/dist/assets/{arrow-down-wide-narrow-DaI6Uvy0.js → arrow-down-wide-narrow-jXLUrrhB.js} +1 -1
- package/dist/assets/arrow-left-ClF3w0x3.js +1 -0
- package/dist/assets/arrow-right-DTyFeaP3.js +1 -0
- package/dist/assets/arrow-up-DYfHgEeO.js +1 -0
- package/dist/assets/{authorizeFlow-CujA2Sko.js → authorizeFlow-CdT1zXJd.js} +1 -1
- package/dist/assets/{avatar-C6N1pFHe.js → avatar-siturufG.js} +1 -1
- package/dist/assets/{basic-CPefaDNi.js → basic-BR1wKocS.js} +1 -1
- package/dist/assets/{book-open-DAATULmD.js → book-open-BRv0flSZ.js} +1 -1
- package/dist/assets/{box-BShXku0x.js → box-CGknPyOM.js} +1 -1
- package/dist/assets/{boxes-OOy_NK7l.js → boxes-CrrqBGNb.js} +1 -1
- package/dist/assets/{brain-Cu-lPJz-.js → brain-CPbpRfZ5.js} +1 -1
- package/dist/assets/{chart-no-axes-combined-cFmOkyoL.js → chart-no-axes-combined-2KvJOzr0.js} +1 -1
- package/dist/assets/{chat-2mnC6M1U.js → chat-v0s-5f0-.js} +1 -1
- package/dist/assets/check-BZheDjvI.js +1 -0
- package/dist/assets/chevron-down-Balu-tP0.js +1 -0
- package/dist/assets/chevron-right-B5YkTYcE.js +1 -0
- package/dist/assets/circle-check-Ykp05scz.js +1 -0
- package/dist/assets/{circle-question-mark-ChtLUjT_.js → circle-question-mark-DVPxarhq.js} +1 -1
- package/dist/assets/{clipboard-list-BYEYDrSf.js → clipboard-list-BbAJHKUF.js} +1 -1
- package/dist/assets/clock-_L5j4mM2.js +1 -0
- package/dist/assets/code-C9uo_JrJ.js +1 -0
- package/dist/assets/{codingBridge-DSl0gsJ9.js → codingBridge-Djlq6OYX.js} +1 -1
- package/dist/assets/{codingBridgeNotify-kOlSTgx4.js → codingBridgeNotify-B8Q52a6w.js} +2 -2
- package/dist/assets/{coins-DwMmRk4F.js → coins-DEk5buRk.js} +1 -1
- package/dist/assets/{collapse-GpKda_4j.js → collapse-DuU6GFQ5.js} +1 -1
- package/dist/assets/{common-BKsvEmV6.js → common--c1slE1u.js} +1 -1
- package/dist/assets/{common-BqAdpno_.js → common-1y1xR6Hq.js} +1 -1
- package/dist/assets/{common-0gFKvUbv.js → common-5CGWhWTi.js} +1 -1
- package/dist/assets/{common-37ohr-XT.js → common-BBDXNloB.js} +1 -1
- package/dist/assets/{common-DZSi3Hh_.js → common-BF5e88UD.js} +1 -1
- package/dist/assets/{common-B4An_YTm.js → common-BJk75FxQ.js} +1 -1
- package/dist/assets/{common-xxhDQiia.js → common-BWLoKbl8.js} +1 -1
- package/dist/assets/{common-DUhRMhh_.js → common-Bd6DEYvm.js} +1 -1
- package/dist/assets/{common-DRbsZfM1.js → common-BoO0zCSB.js} +1 -1
- package/dist/assets/{common-jvlgniqw.js → common-C-XfsW3T.js} +1 -1
- package/dist/assets/{common-MsalCK0u.js → common-CJWEoJSY.js} +1 -1
- package/dist/assets/{common-CWaCL-rT.js → common-CJzTDJqS.js} +1 -1
- package/dist/assets/{common-B651gMfj.js → common-DoY46wUe.js} +1 -1
- package/dist/assets/{common-CFrdR7cP.js → common-WBrc34-3.js} +1 -1
- package/dist/assets/{common-CDAa_Wy3.js → common-fo0L07YJ.js} +1 -1
- package/dist/assets/{common-CRdaMls6.js → common-gCVhIaMo.js} +1 -1
- package/dist/assets/{common-OrWJ1sIs.js → common-lwxg-JGj.js} +1 -1
- package/dist/assets/{common-BPYnF8a5.js → common-m8zExVQB.js} +1 -1
- package/dist/assets/{constants-COIxBjYU.js → constants-DB14FZRU.js} +1 -1
- package/dist/assets/{copy-BCep57w1.js → copy-Tlgyz9eC.js} +1 -1
- package/dist/assets/{createTaskActions-BXMbF95s.js → createTaskActions-y84vbeM7.js} +1 -1
- package/dist/assets/{digitalhuman-Bnx1V9mB.js → digitalhuman-DDRB4Csy.js} +1 -1
- package/dist/assets/{dollar-sign--p8_eDBy.js → dollar-sign-wjjCBpcj.js} +1 -1
- package/dist/assets/{download-Dt0wWdpW.js → download-on3oR6zb.js} +1 -1
- package/dist/assets/{drawer-BUv2WEZF.js → drawer-DzFnbtlL.js} +1 -1
- package/dist/assets/{dropdown-CBx7fAAp.js → dropdown-CCVkZbVe.js} +1 -1
- package/dist/assets/{dropdown-UTgACN7Q.js → dropdown-uqg5asHe.js} +1 -1
- package/dist/assets/{ellipsis-yuDcWrJ4.js → ellipsis-CuEXKGT9.js} +1 -1
- package/dist/assets/{esm-C9MRpvkK.js → esm-BSPqkRnF.js} +2 -2
- package/dist/assets/{esm-D4Ha2HnB.js → esm-Cb9tjqlT.js} +2 -2
- package/dist/assets/esm-DxuQ0cdg.js +1 -0
- package/dist/assets/{external-link-CYfNxhR8.js → external-link-BajnLjH5.js} +1 -1
- package/dist/assets/{eye-oDfmxiDV.js → eye-Dnck1A5C.js} +1 -1
- package/dist/assets/{file-tjfJc6_R.js → file-CppnGTAr.js} +1 -1
- package/dist/assets/{file-output-XcBh5O_y.js → file-output-CfSdodAg.js} +1 -1
- package/dist/assets/{file-text-DkDLGLgh.js → file-text-D8oDKfdh.js} +1 -1
- package/dist/assets/{fish-Cx9f10Gm.js → fish-ChT_zMsL.js} +1 -1
- package/dist/assets/{flux-Bmcbakjy.js → flux-o57okWf1.js} +1 -1
- package/dist/assets/{folder-DAsfhav6.js → folder-B-ltG5dw.js} +1 -1
- package/dist/assets/gauge-cE9IBSwQ.js +1 -0
- package/dist/assets/{globe-v5rghgGg.js → globe-CzzZWblu.js} +1 -1
- package/dist/assets/{grokvideo-C8TWPKxr.js → grokvideo-DzYUI1pB.js} +1 -1
- package/dist/assets/{hailuo-C1kObLTr.js → hailuo-Dq4un_YM.js} +1 -1
- package/dist/assets/{headphones-B3pskUHm.js → headphones-D2_Mmzg_.js} +1 -1
- package/dist/assets/{history-BZjtFlQ0.js → history-BrJLYCx6.js} +1 -1
- package/dist/assets/{house-f-R5K_9D.js → house-CtSC2H5m.js} +1 -1
- package/dist/assets/{i18n-DBTdUKZz.js → i18n-xBtzqNWD.js} +1 -1
- package/dist/assets/{image-CR04SjVv.js → image-Dg9vPbEl.js} +1 -1
- package/dist/assets/{imageRequests-CLSZhX1d.js → imageRequests-BqaDdLsP.js} +1 -1
- package/dist/assets/{index-CTn7SLTr.js → index-DOhge-pp.js} +4 -4
- package/dist/assets/{index.es-DB6BDgPr.js → index.es-CydCZe7h.js} +1 -1
- package/dist/assets/{info-zYDWDLVP.js → info-GJzZVDF8.js} +1 -1
- package/dist/assets/{input-number-B0xcuDnW.js → input-number-BoZYCfN1.js} +1 -1
- package/dist/assets/{key-round-BX8FPmcu.js → key-round-5TDczo_1.js} +1 -1
- package/dist/assets/{kling-tUEGRRxO.js → kling-QatxYm1a.js} +1 -1
- package/dist/assets/{languages-DKKUB3AY.js → languages-UTY7yc7j.js} +1 -1
- package/dist/assets/{laptop-DSbqbKpY.js → laptop-BJGSHVnD.js} +1 -1
- package/dist/assets/{lightbulb-NABKBXyu.js → lightbulb-ZjHrMfU4.js} +1 -1
- package/dist/assets/{link-ByjYUxSr.js → link-BqsXc2R1.js} +1 -1
- package/dist/assets/loader-circle-DZSyEkt1.js +1 -0
- package/dist/assets/{lock-gJ6pDfMu.js → lock-D0qOcVzH.js} +1 -1
- package/dist/assets/{luma-CfpOdZqb.js → luma-Svwqljg_.js} +1 -1
- package/dist/assets/{maestro-yRubvEFE.js → maestro-C3HE3Qrs.js} +1 -1
- package/dist/assets/{maestroLanguages-B0F58ijw.js → maestroLanguages-CtrBBaF5.js} +1 -1
- package/dist/assets/{mail-DZpi5J9I.js → mail-n46eyUuz.js} +1 -1
- package/dist/assets/{message-circle-D8K26AlF.js → message-circle-BTMUXFus.js} +1 -1
- package/dist/assets/{mic-DKCR-fiK.js → mic-lGrOxDMY.js} +1 -1
- package/dist/assets/{midjourney-DM-JhLuX.js → midjourney-DxxPfzWB.js} +1 -1
- package/dist/assets/{minimax-DxlvMTWd.js → minimax-fXPALjsU.js} +1 -1
- package/dist/assets/{mobileLocalExec-IQ4ZYo9T.js → mobileLocalExec-Dgbyv9K_.js} +2 -2
- package/dist/assets/{models-DAfyWAqc.js → models-BoFv4bCY.js} +1 -1
- package/dist/assets/{monitor-dn1EyIUV.js → monitor-D51qa6h5.js} +1 -1
- package/dist/assets/{mouse-pointer-2-C7O4LVbr.js → mouse-pointer-2-qje-E-S2.js} +1 -1
- package/dist/assets/music-2-FnictHi2.js +1 -0
- package/dist/assets/{nanobanana-CxpWeSUn.js → nanobanana-CGSjj0RF.js} +1 -1
- package/dist/assets/{omni-DxA9Ux8Y.js → omni-Bvnq4XTT.js} +1 -1
- package/dist/assets/{openaiimage-DlDGJtH4.js → openaiimage-CyIt5hLu.js} +1 -1
- package/dist/assets/{pagination-NMff1SYZ.js → pagination-COP0MNDx.js} +1 -1
- package/dist/assets/{pagination-DMwQC4ut.js → pagination-DGp5KHs3.js} +1 -1
- package/dist/assets/{pagination-C5hWM-uh.js → pagination-c0CsKTZZ.js} +1 -1
- package/dist/assets/{palette-CRW1qOCG.js → palette-DFYlQ_Pt.js} +1 -1
- package/dist/assets/{paperclip-HA2RNkmq.js → paperclip-7FI_t6Um.js} +1 -1
- package/dist/assets/{pause-09GpN31S.js → pause-D7ms_ncg.js} +1 -1
- package/dist/assets/{pencil-CD6MLBSx.js → pencil-Cays9IO7.js} +1 -1
- package/dist/assets/{pika-CxjINjjD.js → pika-BnM61JJW.js} +1 -1
- package/dist/assets/{pixverse-CzR8RnTd.js → pixverse-DTniVLBT.js} +1 -1
- package/dist/assets/play-BVfZoHZf.js +1 -0
- package/dist/assets/{plug-D6wUveI9.js → plug-Bh4gquso.js} +1 -1
- package/dist/assets/plus-Dd_HPxkY.js +1 -0
- package/dist/assets/{poivelle-ChqnXNHp.js → poivelle-V318LQcC.js} +1 -1
- package/dist/assets/{popover-8bFfKyEx.js → popover-DTZ9rVtt.js} +1 -1
- package/dist/assets/{producer-CZdiq23k.js → producer-CbvJlCch.js} +1 -1
- package/dist/assets/{qrart-T4a6zkdJ.js → qrart-DuUIjvyD.js} +1 -1
- package/dist/assets/{realtime-C0bVe3k2.js → realtime-DSTjRcVx.js} +1 -1
- package/dist/assets/{refresh-cw-3eBUX5Ea.js → refresh-cw-D2Sl0W82.js} +1 -1
- package/dist/assets/rotate-ccw-D4NNsiWQ.js +1 -0
- package/dist/assets/rotate-cw-Bk6VIECX.js +1 -0
- package/dist/assets/{row-BQUMxfsY.js → row-BlMc5HGF.js} +1 -1
- package/dist/assets/search-F_fqjja6.js +1 -0
- package/dist/assets/{seedance-DWR0aqWj.js → seedance-BvbqVhP1.js} +1 -1
- package/dist/assets/{seedream-CMXDmAzS.js → seedream-BftI-vhj.js} +1 -1
- package/dist/assets/{select-C0yzkTif.js → select-B6369cNi.js} +1 -1
- package/dist/assets/{serp-Dt_PQkXV.js → serp-Cl3p1JHx.js} +1 -1
- package/dist/assets/{shield-wdrqyAOI.js → shield-D8UrbLLz.js} +1 -1
- package/dist/assets/{shuffle-Bqjf3c86.js → shuffle-ChVPnZdn.js} +1 -1
- package/dist/assets/{slider-BDLlDUDz.js → slider-CjdcTpL2.js} +1 -1
- package/dist/assets/{solana-wallets-C-BcnEbE.js → solana-wallets-BUubMUZ5.js} +2 -2
- package/dist/assets/{sora-DFX7Ridx.js → sora-CEMQ0XPI.js} +1 -1
- package/dist/assets/{sparkles-BoTKvrNO.js → sparkles-CRO_Parr.js} +1 -1
- package/dist/assets/square-Cn7IwKvp.js +1 -0
- package/dist/assets/{store-B3O9u73-.js → store-B5udVX4a.js} +1 -1
- package/dist/assets/{suno-DCe2XW0B.js → suno-CjxAiuI5.js} +1 -1
- package/dist/assets/{switch-C7dNKdGq.js → switch-D_YnlIp5.js} +1 -1
- package/dist/assets/{table-UhquZYel.js → table-BkodlB9h.js} +1 -1
- package/dist/assets/{tabs-BwvMWaWZ.js → tabs-CxRafyJg.js} +1 -1
- package/dist/assets/{tag-BJxLMPQ4.js → tag-CVhgierF.js} +1 -1
- package/dist/assets/terminal-AQLyjj8U.js +1 -0
- package/dist/assets/{time-picker-DoJ_mwqy.js → time-picker-CKEVaP9F.js} +1 -1
- package/dist/assets/{tooltip-CY9KP5TS.js → tooltip-3ZZ1q2k4.js} +1 -1
- package/dist/assets/{trash-2-B1wBangj.js → trash-2-DmWihZi_.js} +1 -1
- package/dist/assets/{triangle-alert-CAuu6B-W.js → triangle-alert-CZwE_T9Q.js} +1 -1
- package/dist/assets/{upload-D_4LkjOW.js → upload-CdoLg_bk.js} +1 -1
- package/dist/assets/{upload-D6AM_V-z.js → upload-KvU-H2Pn.js} +1 -1
- package/dist/assets/user-0NnJ74ST.js +1 -0
- package/dist/assets/{veo-W71kXy0Z.js → veo-ONNSpkhL.js} +1 -1
- package/dist/assets/{video-DVgqKgsY.js → video-Ds6UnEus.js} +1 -1
- package/dist/assets/{volume-2-DocaJU2F.js → volume-2--yglTc_s.js} +1 -1
- package/dist/assets/{wallet-RBRJCWek.js → wallet-DvYGlknw.js} +1 -1
- package/dist/assets/{wan-CgXklc_4.js → wan-BesmSQWo.js} +1 -1
- package/dist/assets/{wand-sparkles-CJH0v5L4.js → wand-sparkles-Ck5CAolV.js} +1 -1
- package/dist/assets/{web-BjNw9wT3.js → web-BpazWmuF.js} +1 -1
- package/dist/assets/{web-D29bO3g4.js → web-CC4Ds7ZI.js} +1 -1
- package/dist/assets/{web-9nZX65Vh.js → web-CdcSxdGo.js} +1 -1
- package/dist/assets/{web-DRJhyBh_.js → web-Q5iTq2oM.js} +1 -1
- package/dist/assets/{web-nUZelD8c.js → web-YLsKC2g3.js} +1 -1
- package/dist/assets/{webextrator-C1x7ltX3.js → webextrator-BVrMNlao.js} +1 -1
- package/dist/assets/{zap-Bo8Pzpwk.js → zap-FPxiKD8O.js} +1 -1
- package/dist/index.html +4 -4
- package/package.json +1 -1
- package/dist/assets/Detail-BynbMCsg.js +0 -2
- package/dist/assets/Navigator-DJAPAK_Y.css +0 -1
- package/dist/assets/arrow-down-M2F1qebD.js +0 -1
- package/dist/assets/arrow-left-D_2mJNNF.js +0 -1
- package/dist/assets/arrow-right-abRRWNmS.js +0 -1
- package/dist/assets/arrow-up-DMpA1IsJ.js +0 -1
- package/dist/assets/check-TtZdHrlm.js +0 -1
- package/dist/assets/chevron-down-DMXTi49q.js +0 -1
- package/dist/assets/chevron-right-DIQNv_0r.js +0 -1
- package/dist/assets/circle-check-DKBPWCH5.js +0 -1
- package/dist/assets/clock-D5NbflY9.js +0 -1
- package/dist/assets/code-wKSqPZcq.js +0 -1
- package/dist/assets/esm-BgUDy7vB.js +0 -1
- package/dist/assets/gauge-DP9sk0Fe.js +0 -1
- package/dist/assets/loader-circle-r7o2cOdj.js +0 -1
- package/dist/assets/music-2-UxfKU68J.js +0 -1
- package/dist/assets/play-1r8M6tGa.js +0 -1
- package/dist/assets/plus-Dzhx2WdR.js +0 -1
- package/dist/assets/rotate-ccw-DFETd1JJ.js +0 -1
- package/dist/assets/rotate-cw-BLViYEn3.js +0 -1
- package/dist/assets/search-CiYRAPUv.js +0 -1
- package/dist/assets/square-B9lxDeHX.js +0 -1
- package/dist/assets/terminal-C5ne2YRf.js +0 -1
- package/dist/assets/user-B3wTOjwB.js +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
import"./rolldown-runtime--c01j_DQ.js";import{A as e,C as t,Gt as n,I as r,Jt as i,L as a,M as o,N as s,T as c,at as l,j as u,mt as d,qt as f,rt as p,tt as m,z as h}from"./vendor-chart-Dw-P17PN.js";import{r as g,t as _}from"./select-C0yzkTif.js";import{t as v}from"./upload-D6AM_V-z.js";import{t as y}from"./tooltip-CY9KP5TS.js";import{t as b}from"./alert-BprQRUmf.js";import{h as x,v as S}from"./models-DAfyWAqc.js";import{t as C}from"./progress-BuyYfFZn.js";import{t as w}from"./clock-D5NbflY9.js";import{a as T,i as E,n as D,r as O,s as k,t as A}from"./pagination-NMff1SYZ.js";import{t as ee}from"./info-zYDWDLVP.js";import{t as j}from"./trash-2-B1wBangj.js";import{t as M}from"./triangle-alert-CAuu6B-W.js";import{t as N}from"./upload-D_4LkjOW.js";import{t as P}from"./wand-sparkles-CJH0v5L4.js";import"./constants-COIxBjYU.js";import{G as F,J as te,K as ne,Na as I,O as L,Qr as R,V as z,Va as B,Y as V,_a as H,aa as U,an as W,ar as G,ei as K,gi as q,hi as J,ki as Y,mn as X,or as Z,q as re,ya as Q}from"./index-CTn7SLTr.js";import{t as ie}from"./CopyToClipboard-AvaqCeXT.js";import{t as ae}from"./ReportButton-D07ABYgs.js";import{t as oe}from"./ImagePreview-DPhaVe-K.js";import{t as se}from"./Consumption-BK4nImFR.js";import{t as ce}from"./AudioPreview-4SXEbJja.js";import{t as le}from"./VideoPlayer-89YYttvk.js";import{t as ue}from"./ScenarioPaymentMode-DHx-gf_J.js";import{t as de}from"./BotPlaceholder-C--FHvts.js";import{t as fe}from"./Hailuo-CUHHmlNz.js";var pe=h({name:`MinimaxFieldTitle`,components:{InfoIcon:T},props:{title:{type:String,required:!0},description:{type:String,required:!0},inline:{type:Boolean,default:!1}}}),me={class:`m-0 text-[14px] font-bold`};function he(t,r,o,c,u,d){let f=l(`info-icon`);return m(),s(`div`,{class:n([`flex min-h-8 items-center`,{"mb-[10px]":!t.inline}])},[e(`h2`,me,i(t.title),1),a(f,{content:t.description},null,8,[`content`])],2)}var ge=L(pe,[[`render`,he]]),_e=h({name:`MinimaxReferenceMediaInput`,components:{AudioPreview:ce,CloseIcon:H,ElButton:I,ElProgress:C,ElUpload:v,ImagePreview:oe,InfoIcon:T,UploadIcon:N},mixins:[V,te,ne,z],props:{modelValue:{type:Array,default:()=>[]},kind:{type:String,required:!0},title:{type:String,required:!0},description:{type:String,required:!0},limit:{type:Number,required:!0}},emits:[`update:modelValue`],data(){return{fileList:[],uploadUrl:U()+`/api/v1/files/`}},computed:{accept(){return this.kind===`image`?`.png,.jpg,.jpeg,.gif,.bmp,.webp,image/*`:`.mp3,.wav,.m4a,.aac,.ogg,.flac,audio/*`},pasteAccept(){return this.accept},headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}}},watch:{modelValue:{immediate:!0,handler(e){let t=this.fileList.filter(e=>!this.uploadedUrl(e)),n=e.map(e=>this.fileList.find(t=>this.uploadedUrl(t)===e)||{name:e.split(`/`).pop()||e,url:e,status:`success`,percentage:100,response:{file_url:e}});this.fileList=[...n,...t]}}},methods:{uploadedUrl(e){return e.response?.file_url},onChange(e){!e.url&&e.raw&&(e.url=URL.createObjectURL(e.raw))},onError(){S.error(this.$t(`minimax.message.uploadError`))},onExceed(){S.warning(this.$t(`minimax.message.${this.kind}Limit`))},onSuccess(e,t){e?.file_url&&(t.url?.startsWith(`blob:`)&&URL.revokeObjectURL(t.url),t.url=e.file_url,t.response=e),this.emitUrls()},removeFile(e,t){this.fileList.splice(e,1),t.url?.startsWith(`blob:`)&&URL.revokeObjectURL(t.url),this.emitUrls()},emitUrls(){this.$emit(`update:modelValue`,this.fileList.map(e=>this.uploadedUrl(e)).filter(e=>!!e))}}}),ve={class:`mb-[10px] flex min-h-8 w-full items-center justify-between gap-3`},ye={class:`flex min-w-0 items-center`},be={class:`m-0 text-[14px] font-bold`},xe={key:0,class:`flex flex-wrap gap-[10px]`},Se=[`aria-label`,`onClick`];function Ce(t,n,f,h,g,_){let v=l(`info-icon`),y=l(`upload-icon`),b=l(`el-button`),x=l(`el-upload`),S=l(`image-preview`),C=l(`audio-preview`),w=l(`el-progress`),T=l(`close-icon`);return m(),s(`div`,null,[e(`div`,ve,[e(`div`,ye,[e(`h2`,be,i(t.title),1),a(v,{content:t.description},null,8,[`content`])]),a(x,{ref:`uploader`,"file-list":t.fileList,"onUpdate:fileList":n[0]||=e=>t.fileList=e,name:`file`,class:`shrink-0`,accept:t.accept,limit:t.limit,multiple:!0,"show-file-list":!1,"before-upload":t.beforeUploadSizeGuard,action:t.uploadUrl,headers:t.headers,"on-change":t.onChange,"on-error":t.onError,"on-exceed":t.onExceed,"on-success":t.onSuccess},{default:d(()=>[a(b,{size:`small`,type:`primary`,round:``},{default:d(()=>[a(y,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`minimax.button.upload`)),1)]),_:1})]),_:1},8,[`file-list`,`accept`,`limit`,`before-upload`,`action`,`headers`,`on-change`,`on-error`,`on-exceed`,`on-success`])]),t.fileList.length?(m(),s(`div`,xe,[(m(!0),s(c,null,p(t.fileList,(n,r)=>(m(),s(`div`,{key:n.uid||t.uploadedUrl(n)||r,class:`relative`},[t.kind===`image`?(m(),u(S,{key:0,url:n.url||t.uploadedUrl(n),name:n.name,percentage:n.percentage,onRemove:e=>t.removeFile(r,n)},null,8,[`url`,`name`,`percentage`,`onRemove`])):(m(),s(c,{key:1},[t.uploadedUrl(n)?(m(),u(C,{key:0,url:t.uploadedUrl(n),name:n.name},null,8,[`url`,`name`])):(m(),u(w,{key:1,type:`circle`,percentage:n.percentage||0,width:50,"stroke-width":3},null,8,[`percentage`])),e(`button`,{type:`button`,class:`remove-button`,"aria-label":t.$t(`common.button.delete`),onClick:e=>t.removeFile(r,n)},[a(T,{size:`0.75em`,"aria-hidden":`true`,focusable:`false`})],8,Se)],64))]))),128))])):o(``,!0)])}var we=L(_e,[[`render`,Ce],[`__scopeId`,`data-v-155379bf`]]),Te=e=>{if(!e.content.some(e=>e.type===`text`&&e.text.trim()))return`promptRequired`;if(e.content.filter(e=>e.type===`image_url`).length>9)return`imageLimit`;if(e.content.filter(e=>e.type===`audio_url`).length>3)return`audioLimit`;if(!e.content.some(e=>e.type!==`text`)&&e.ratio===`adaptive`)return`textRatioRequired`},Ee=h({name:`MinimaxConfigPanel`,components:{MagicIcon:P,Consumption:se,ElButton:I,ElInput:B,ElOption:_,ElSelect:g,FieldTitle:ge,PromptTextarea:E,ReferenceMediaInput:we,ScenarioPaymentMode:ue},emits:[`generate`],data(){return{form:{prompt:``,imageUrls:[],audioUrls:[],resolution:`2K`,ratio:`16:9`,duration:4},resolutions:[`768P`,`2K`],ratios:[{value:`adaptive`,width:`21px`,height:`21px`},{value:`21:9`,width:`28px`,height:`12px`},{value:`16:9`,width:`25px`,height:`13px`},{value:`4:3`,width:`22px`,height:`17px`},{value:`1:1`,width:`19px`,height:`19px`},{value:`3:4`,width:`17px`,height:`22px`},{value:`9:16`,width:`13px`,height:`25px`}],durations:Array.from({length:12},(e,t)=>t+4),quoteTimer:0,quoteRunId:0}},computed:{config(){let e=[],t=this.form.prompt.trim();t&&e.push({type:`text`,text:t});let n=this.form.imageUrls.length>1||this.form.audioUrls.length>0;return this.form.imageUrls.forEach(t=>{e.push({type:`image_url`,image_url:{url:t},role:n?`reference_image`:`first_frame`})}),this.form.audioUrls.forEach(t=>{e.push({type:`audio_url`,audio_url:{url:t},role:`reference_audio`})}),{model:`MiniMax-H3`,content:e,resolution:this.form.resolution,ratio:this.form.imageUrls.length===1&&!this.form.audioUrls.length?`adaptive`:this.form.ratio,duration:this.form.duration}},consumption(){return W(this.config,this.service?.cost)},service(){return this.$store.state.minimax?.service},walletMode(){return J()&&q(`minimax`).mode===`wallet`}},watch:{walletMode:{handler(e){e&&this.scheduleQuote()},immediate:!0},config:{handler(e){this.$store.commit(`minimax/setConfig`,e),this.walletMode&&this.scheduleQuote()},deep:!0,immediate:!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=q(`minimax`),t=++this.quoteRunId;e.quoteLoading=!0,e.quoteUsdc=void 0;try{let n=await Z.quote(G(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(){let e=Te(this.config);if(e){S.warning(this.$t(`minimax.message.${e}`));return}this.$emit(`generate`)}}}),De={class:`flex flex-col h-full`},Oe={class:`flex-1 overflow-y-auto p-5`},ke={class:`mb-4`},Ae={class:`mb-4`},je={class:`option-grid`},Me=[`aria-pressed`,`onClick`],Ne={class:`mb-4`},Pe={class:`ratio-options`},Fe=[`aria-pressed`,`onClick`],Ie={class:`ratio-preview`},Le={class:`setting-row mb-4`},Re={class:`flex flex-col items-center justify-center px-5 pb-5`};function ze(t,h,g,_,v,y){let b=l(`field-title`),x=l(`el-input`),S=l(`prompt-textarea`),C=l(`reference-media-input`),w=l(`el-option`),T=l(`el-select`),E=l(`scenario-payment-mode`),D=l(`consumption`),O=l(`magic-icon`),k=l(`el-button`);return m(),s(`div`,De,[e(`div`,Oe,[e(`div`,ke,[a(b,{title:t.$t(`minimax.name.model`),description:t.$t(`minimax.description.model`)},null,8,[`title`,`description`]),a(x,{"model-value":`MiniMax-H3`,disabled:``})]),a(S,{modelValue:t.form.prompt,"onUpdate:modelValue":h[0]||=e=>t.form.prompt=e,class:`mb-4`,title:t.$t(`minimax.name.prompt`),info:t.$t(`minimax.description.prompt`),placeholder:t.$t(`minimax.placeholder.prompt`),"min-rows":4},null,8,[`modelValue`,`title`,`info`,`placeholder`]),a(C,{modelValue:t.form.imageUrls,"onUpdate:modelValue":h[1]||=e=>t.form.imageUrls=e,class:`mb-4`,kind:`image`,title:t.$t(`minimax.name.referenceImages`),description:t.$t(`minimax.description.referenceImages`),limit:9},null,8,[`modelValue`,`title`,`description`]),a(C,{modelValue:t.form.audioUrls,"onUpdate:modelValue":h[2]||=e=>t.form.audioUrls=e,class:`mb-4`,kind:`audio`,title:t.$t(`minimax.name.referenceAudios`),description:t.$t(`minimax.description.referenceAudios`),limit:3},null,8,[`modelValue`,`title`,`description`]),e(`div`,Ae,[a(b,{title:t.$t(`minimax.name.resolution`),description:t.$t(`minimax.description.resolution`)},null,8,[`title`,`description`]),e(`div`,je,[(m(!0),s(c,null,p(t.resolutions,e=>(m(),s(`button`,{key:e,type:`button`,class:n([`option-button`,{active:t.form.resolution===e}]),"aria-pressed":t.form.resolution===e,onClick:n=>t.form.resolution=e},i(e),11,Me))),128))])]),e(`div`,Ne,[a(b,{title:t.$t(`minimax.name.ratio`),description:t.$t(`minimax.description.ratio`)},null,8,[`title`,`description`]),e(`div`,Pe,[(m(!0),s(c,null,p(t.ratios,r=>(m(),s(`button`,{key:r.value,type:`button`,class:n([`ratio-button`,{active:t.form.ratio===r.value}]),"aria-pressed":t.form.ratio===r.value,onClick:e=>t.form.ratio=r.value},[e(`span`,Ie,[e(`span`,{style:f({width:r.width,height:r.height}),"aria-hidden":`true`},null,4)]),e(`span`,null,i(r.value),1)],10,Fe))),128))])]),e(`div`,Le,[a(b,{inline:``,title:t.$t(`minimax.name.duration`),description:t.$t(`minimax.description.duration`)},null,8,[`title`,`description`]),a(T,{modelValue:t.form.duration,"onUpdate:modelValue":h[3]||=e=>t.form.duration=e,class:`setting-value`},{default:d(()=>[(m(!0),s(c,null,p(t.durations,e=>(m(),u(w,{key:e,label:`${e}s`,value:e},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`])])]),e(`div`,Re,[a(E,{scenario:`minimax`}),t.walletMode?o(``,!0):(m(),u(D,{key:0,value:t.consumption,service:t.service},null,8,[`value`,`service`])),a(k,{type:`primary`,class:`btn w-full`,round:``,onClick:t.onGenerate},{default:d(()=>[a(O,{class:`mr-2`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`minimax.button.generate`)),1)]),_:1},8,[`onClick`])])])}var Be=L(Ee,[[`render`,ze],[`__scopeId`,`data-v-3c619c51`]]),Ve=h({name:`TaskPreview`,components:{DeleteIcon:j,ChannelIcon:k,InfoIcon:ee,MagicIcon:P,TimeIcon:w,WarningIcon:M,CopyToClipboard:ie,ElAlert:b,VideoPlayer:le,ElTooltip:y,ElButton:I,ReportButton:ae},props:{modelValue:{type:Object,required:!0}},computed:{isFailure(){return this.modelValue?.status===`failed`||this.modelValue?.status===`cancelled`},isWaiting(){return this.modelValue?.status===`queued`||this.modelValue?.status===`running`},application(){return this.$store.state.minimax?.application},config(){return this.$store.state.minimax?.config}},methods:{async onDelete(){let e=this.modelValue?.id;if(e){try{await Q.confirm(this.$t(`common.message.deleteTaskConfirm`),this.$t(`common.button.delete`),{type:`warning`,confirmButtonText:this.$t(`common.button.delete`),cancelButtonText:this.$t(`common.button.cancel`),confirmButtonClass:`el-button--danger`})}catch{return}try{await this.$store.dispatch(`minimax/deleteTask`,{id:e}),S.success(this.$t(`common.message.deleteTaskSuccess`))}catch{S.error(this.$t(`common.message.deleteTaskFailed`))}}},onDownload(e){console.debug(`on download minimax video`,e),window.open(e,`_blank`)}}}),He={class:`preview`},Ue={class:`left`},We={class:`main`},Ge={class:`bot`},Ke={class:`datetime`},qe=[`aria-label`],Je={key:0,class:n({content:!0,failed:!0})},$={key:0,class:`mb-4`},Ye={key:1,class:n({operations:!0,"mt-2":!0})},Xe={key:0,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Ze={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Qe={key:1,class:n({content:!0})},$e={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},et={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},tt={key:2,class:n({content:!0})},nt={class:`text-[var(--el-text-color-regular)] text-xs mb-0`};function rt(n,c,f,p,h,g){let _=l(`capability-presentation`),v=l(`delete-icon`),y=l(`el-tooltip`),b=l(`video-player`),x=l(`el-button`),S=l(`report-button`),C=l(`channel-icon`),w=l(`copy-to-clipboard`),T=l(`magic-icon`),E=l(`el-alert`),D=l(`warning-icon`),O=l(`info-icon`),k=l(`time-icon`);return m(),s(`div`,He,[e(`div`,Ue,[a(_,{capability:`minimax`,part:`avatar`,class:`avatar`})]),e(`div`,We,[e(`div`,Ge,[a(_,{capability:`minimax`,part:`name`}),e(`span`,Ke,i(n.$dayjs.format(``+new Date(parseFloat((n.modelValue?.created_at||``).toString())*1e3))),1),a(y,{effect:`dark`,content:n.$t(`common.button.delete`),placement:`top`},{default:d(()=>[n.modelValue?.id?(m(),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(v,{size:`1em`,"aria-hidden":`true`,focusable:`false`})],8,qe)):o(``,!0)]),_:1},8,[`content`])]),c[2]||=e(`div`,{class:`info`},null,-1),n.modelValue?.status===`succeeded`?(m(),s(`div`,Je,[n.modelValue?.content?.url?(m(),s(`div`,$,[a(b,{src:n.modelValue.content.url},null,8,[`src`])])):o(``,!0),n.modelValue?.content?.url?(m(),s(`div`,Ye,[a(y,{class:`box-item`,effect:`dark`,content:n.$t(`minimax.message.downloadVideo`),placement:`top-start`},{default:d(()=>[n.modelValue?.content?.url?(m(),u(x,{key:0,type:`info`,size:`small`,class:`mb-2`,onClick:c[1]||=t(e=>n.onDownload(n.modelValue.content.url),[`stop`])},{default:d(()=>[r(i(n.$t(`minimax.button.download`)),1)]),_:1})):o(``,!0)]),_:1},8,[`content`]),a(S,{service:`minimax`,"target-id":n.modelValue?.id,snapshot:{model:n.modelValue?.model,task_id:n.modelValue?.id}},null,8,[`target-id`,`snapshot`])])):o(``,!0),a(E,{closable:!1,class:`mt-2 success`},{default:d(()=>[n.modelValue?.model?(m(),s(`p`,Xe,[a(C,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`minimax.name.model`))+`: `+i(n.modelValue?.model)+` `,1),a(w,{content:n.modelValue?.id},null,8,[`content`])])):o(``,!0),e(`p`,Ze,[a(T,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`minimax.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(w,{content:n.modelValue?.id},null,8,[`content`])])]),_:1})])):o(``,!0),n.isFailure?(m(),s(`div`,Qe,[a(E,{closable:!1,class:`failure`},{template:d(()=>[a(D,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`minimax.name.failure`)),1)]),default:d(()=>[e(`p`,$e,[a(T,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`minimax.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(w,{content:n.modelValue?.id},null,8,[`content`])]),e(`p`,et,[a(O,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`minimax.name.failureReason`))+`: `+i(n.modelValue?.error?.message)+` `,1),a(w,{content:n.modelValue?.error?.message},null,8,[`content`])])]),_:1})])):o(``,!0),n.isWaiting?(m(),s(`div`,tt,[a(E,{closable:!1,class:`info`},{template:d(()=>[a(k,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(n.modelValue?.status===`queued`?`minimax.status.pending`:`minimax.status.processing`)),1)]),default:d(()=>[e(`p`,nt,[a(T,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`minimax.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(w,{content:n.modelValue?.id},null,8,[`content`])])]),_:1})])):o(``,!0)])])}var it=h({name:`RecentPanel`,components:{TaskPreview:L(Ve,[[`render`,rt],[`__scopeId`,`data-v-2f8bed02`]]),BotPlaceholder:de,NoTasks:O,ScrollList:D},props:{loading:{type:Boolean,default:!1}},emits:[`reach-top`],data(){return{job:0}},computed:{tasks(){return{...this.$store.state.minimax?.tasks,items:this.$store.state.minimax?.tasks?.items?.slice()}}},methods:{getScrollElement(){return this.$refs.scrollList?.getScrollElement?.()}}}),at={key:0},ot={key:2,class:`w-full h-full flex items-center justify-center`};function st(e,t,n,r,i,f){let h=l(`bot-placeholder`),g=l(`task-preview`),_=l(`scroll-list`),v=l(`no-tasks`);return m(),s(c,null,[e.tasks?.items===void 0?(m(),s(`div`,at,[a(h)])):e.tasks?.items?.length&&e.tasks?.items?.length>0?(m(),u(_,{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:d(()=>[(m(!0),s(c,null,p(e.tasks?.items,e=>(m(),u(g,{key:e.id,"model-value":e},null,8,[`model-value`]))),128))]),_:1},8,[`loading`])):o(``,!0),e.tasks?.items?.length===0?(m(),s(`div`,ot,[a(v)])):o(``,!0)],64)}var ct=h({name:`MinimaxIndex`,components:{ConfigPanel:Be,Layout:fe,RecentPanel:L(it,[[`render`,st]])},mixins:[re],inject:[`initialized`],data(){return{task:void 0,job:0,timer:void 0,loadingMore:!1,fetchingTasks:!1,walletTaskIds:[]}},computed:{applicationsLoading(){return this.$store.state.minimax?.status?.getApplications===x.Request},tasksLoading(){return this.$store.state.minimax?.status?.getTasks===x.Request||this.fetchingTasks},credential(){return this.$store.state.minimax.credential},config(){return this.$store.state.minimax.config},application(){return this.$store.state.minimax.application},tasks(){return this.$store.state.minimax.tasks},walletMode(){return J()&&q(`minimax`).mode===`wallet`}},watch:{walletMode:{async handler(e,t){if(!(t===void 0||e===t)){if(this.$store.commit(`minimax/setTasks`,void 0),e&&!this.job&&(this.job=window.setInterval(this.onGetTasks,5e3)),!e&&!this.credential?.token){window.clearInterval(this.job),this.job=0,await this.onScrollDown();return}await this.onGetTasks(),await this.onScrollDown()}}},tasks:{handler(e,t){e?.items?.length>t?.items?.length&&console.debug(`new tasks detected`)},deep:!0},initialized:{async handler(e){e&&(console.debug(`layout initialized`),await this.onGetTasks(),await this.onScrollDown(),this.job||=window.setInterval(this.onGetTasks,5e3))},immediate:!0}},async mounted(){await this.onGetService()},async unmounted(){window.clearInterval(this.job)},methods:{async onReachTop(){await A({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(`minimax/getService`),console.debug(`end onGetService`)},async onGetApplication(){console.debug(`start onGetApplication`),await this.$store.dispatch(`minimax/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(`minimax/getTasks`,{limit:t,createdAtMin:n,createdAtMax:r,...this.walletMode&&!this.credential?.token?{mode:`x402`,ids:this.walletTaskIds}:{}})}finally{this.fetchingTasks=!1}},async onGenerate(){if(!F(this.uploadTracker,e=>this.$t(e),e=>S.warning(e)))return;let e=G(this.config),t;if(this.walletMode){let n=this.getWalletContext();if(!n){S.warning(this.$t(`common.x402Scenario.connectWalletFirst`));return}t=Z.generate(e,{mode:`x402`,x402:{wallet:n,confirm:e=>this.confirmWalletPayment(e),identityToken:this.credential?.token}})}else{if(!X())return;let n=this.credential?.token;if(!n)return;t=Z.generate(e,{token:n})}S.info(this.$t(`minimax.message.startingTask`)),Y(`minimax`,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(`minimax.message.startTaskSuccess`))}).catch(e=>{let t=e?.response?.data;e instanceof R||(t?.error?.code===`used_up`?S.error(this.$t(`minimax.message.usedUp`)):this.walletMode?S.error(`${this.$t(`common.x402Scenario.paymentFailed`)} ${e?.message||``}`.trim()):S.error(this.$t(`minimax.message.startTaskFailed`)))}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})},getWalletContext(){return K(this.$wallet)},async confirmWalletPayment(e){return Q.confirm(this.$t(`common.x402Scenario.confirmPayment`,{amount:e.amountUsdc}),this.$t(`order.message.x402ConfirmTitle`),{confirmButtonText:this.$t(`order.message.x402WalletPayCta`),cancelButtonText:this.$t(`common.button.cancel`),type:`warning`}).then(()=>!0).catch(()=>!1)},getTasksScrollElement(){return this.$refs.recentPanel?.getScrollElement?.()}}});function lt(e,t,n,r,i,o){let s=l(`config-panel`),c=l(`recent-panel`),f=l(`layout`);return m(),u(f,null,{config:d(()=>[a(s,{onGenerate:e.onGenerate},null,8,[`onGenerate`])]),result:d(()=>[a(c,{ref:`recentPanel`,loading:e.loadingMore,onReachTop:e.onReachTop},null,8,[`loading`,`onReachTop`])]),_:1})}var ut=L(ct,[[`render`,lt]]);export{ut 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,j as u,mt as d,qt as f,rt as p,tt as m,z as h}from"./vendor-chart-Dw-P17PN.js";import{r as g,t as _}from"./select-B6369cNi.js";import{t as v}from"./upload-KvU-H2Pn.js";import{t as y}from"./tooltip-3ZZ1q2k4.js";import{t as b}from"./alert-BprQRUmf.js";import{h as x,v as S}from"./models-BoFv4bCY.js";import{t as C}from"./progress-BuyYfFZn.js";import{t as w}from"./clock-_L5j4mM2.js";import{a as T,i as E,n as D,r as O,s as k,t as A}from"./pagination-COP0MNDx.js";import{t as ee}from"./info-GJzZVDF8.js";import{t as j}from"./trash-2-DmWihZi_.js";import{t as M}from"./triangle-alert-CZwE_T9Q.js";import{t as N}from"./upload-CdoLg_bk.js";import{t as P}from"./wand-sparkles-Ck5CAolV.js";import"./constants-DB14FZRU.js";import{G as F,J as te,K as ne,Na as I,O as L,Qr as R,V as z,Va as B,Y as V,_a as H,aa as U,an as W,ar as G,ei as K,gi as q,hi as J,ki as Y,mn as X,or as Z,q as re,ya as Q}from"./index-DOhge-pp.js";import{t as ie}from"./CopyToClipboard-QFe7Cn4_.js";import{t as ae}from"./ReportButton-ChQMpn6o.js";import{t as oe}from"./ImagePreview-Bb3mYw3m.js";import{t as se}from"./Consumption-gbjpxptE.js";import{t as ce}from"./AudioPreview-vjoUTGMO.js";import{t as le}from"./VideoPlayer-DZp6QESw.js";import{t as ue}from"./ScenarioPaymentMode-BlvIIqGE.js";import{t as de}from"./BotPlaceholder-DKkxXInm.js";import{t as fe}from"./Hailuo-BR72DJZp.js";var pe=h({name:`MinimaxFieldTitle`,components:{InfoIcon:T},props:{title:{type:String,required:!0},description:{type:String,required:!0},inline:{type:Boolean,default:!1}}}),me={class:`m-0 text-[14px] font-bold`};function he(t,r,o,c,u,d){let f=l(`info-icon`);return m(),s(`div`,{class:n([`flex min-h-8 items-center`,{"mb-[10px]":!t.inline}])},[e(`h2`,me,i(t.title),1),a(f,{content:t.description},null,8,[`content`])],2)}var ge=L(pe,[[`render`,he]]),_e=h({name:`MinimaxReferenceMediaInput`,components:{AudioPreview:ce,CloseIcon:H,ElButton:I,ElProgress:C,ElUpload:v,ImagePreview:oe,InfoIcon:T,UploadIcon:N},mixins:[V,te,ne,z],props:{modelValue:{type:Array,default:()=>[]},kind:{type:String,required:!0},title:{type:String,required:!0},description:{type:String,required:!0},limit:{type:Number,required:!0}},emits:[`update:modelValue`],data(){return{fileList:[],uploadUrl:U()+`/api/v1/files/`}},computed:{accept(){return this.kind===`image`?`.png,.jpg,.jpeg,.gif,.bmp,.webp,image/*`:`.mp3,.wav,.m4a,.aac,.ogg,.flac,audio/*`},pasteAccept(){return this.accept},headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}}},watch:{modelValue:{immediate:!0,handler(e){let t=this.fileList.filter(e=>!this.uploadedUrl(e)),n=e.map(e=>this.fileList.find(t=>this.uploadedUrl(t)===e)||{name:e.split(`/`).pop()||e,url:e,status:`success`,percentage:100,response:{file_url:e}});this.fileList=[...n,...t]}}},methods:{uploadedUrl(e){return e.response?.file_url},onChange(e){!e.url&&e.raw&&(e.url=URL.createObjectURL(e.raw))},onError(){S.error(this.$t(`minimax.message.uploadError`))},onExceed(){S.warning(this.$t(`minimax.message.${this.kind}Limit`))},onSuccess(e,t){e?.file_url&&(t.url?.startsWith(`blob:`)&&URL.revokeObjectURL(t.url),t.url=e.file_url,t.response=e),this.emitUrls()},removeFile(e,t){this.fileList.splice(e,1),t.url?.startsWith(`blob:`)&&URL.revokeObjectURL(t.url),this.emitUrls()},emitUrls(){this.$emit(`update:modelValue`,this.fileList.map(e=>this.uploadedUrl(e)).filter(e=>!!e))}}}),ve={class:`mb-[10px] flex min-h-8 w-full items-center justify-between gap-3`},ye={class:`flex min-w-0 items-center`},be={class:`m-0 text-[14px] font-bold`},xe={key:0,class:`flex flex-wrap gap-[10px]`},Se=[`aria-label`,`onClick`];function Ce(t,n,f,h,g,_){let v=l(`info-icon`),y=l(`upload-icon`),b=l(`el-button`),x=l(`el-upload`),S=l(`image-preview`),C=l(`audio-preview`),w=l(`el-progress`),T=l(`close-icon`);return m(),s(`div`,null,[e(`div`,ve,[e(`div`,ye,[e(`h2`,be,i(t.title),1),a(v,{content:t.description},null,8,[`content`])]),a(x,{ref:`uploader`,"file-list":t.fileList,"onUpdate:fileList":n[0]||=e=>t.fileList=e,name:`file`,class:`shrink-0`,accept:t.accept,limit:t.limit,multiple:!0,"show-file-list":!1,"before-upload":t.beforeUploadSizeGuard,action:t.uploadUrl,headers:t.headers,"on-change":t.onChange,"on-error":t.onError,"on-exceed":t.onExceed,"on-success":t.onSuccess},{default:d(()=>[a(b,{size:`small`,type:`primary`,round:``},{default:d(()=>[a(y,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`minimax.button.upload`)),1)]),_:1})]),_:1},8,[`file-list`,`accept`,`limit`,`before-upload`,`action`,`headers`,`on-change`,`on-error`,`on-exceed`,`on-success`])]),t.fileList.length?(m(),s(`div`,xe,[(m(!0),s(c,null,p(t.fileList,(n,r)=>(m(),s(`div`,{key:n.uid||t.uploadedUrl(n)||r,class:`relative`},[t.kind===`image`?(m(),u(S,{key:0,url:n.url||t.uploadedUrl(n),name:n.name,percentage:n.percentage,onRemove:e=>t.removeFile(r,n)},null,8,[`url`,`name`,`percentage`,`onRemove`])):(m(),s(c,{key:1},[t.uploadedUrl(n)?(m(),u(C,{key:0,url:t.uploadedUrl(n),name:n.name},null,8,[`url`,`name`])):(m(),u(w,{key:1,type:`circle`,percentage:n.percentage||0,width:50,"stroke-width":3},null,8,[`percentage`])),e(`button`,{type:`button`,class:`remove-button`,"aria-label":t.$t(`common.button.delete`),onClick:e=>t.removeFile(r,n)},[a(T,{size:`0.75em`,"aria-hidden":`true`,focusable:`false`})],8,Se)],64))]))),128))])):o(``,!0)])}var we=L(_e,[[`render`,Ce],[`__scopeId`,`data-v-155379bf`]]),Te=e=>{if(!e.content.some(e=>e.type===`text`&&e.text.trim()))return`promptRequired`;if(e.content.filter(e=>e.type===`image_url`).length>9)return`imageLimit`;if(e.content.filter(e=>e.type===`audio_url`).length>3)return`audioLimit`;if(!e.content.some(e=>e.type!==`text`)&&e.ratio===`adaptive`)return`textRatioRequired`},Ee=h({name:`MinimaxConfigPanel`,components:{MagicIcon:P,Consumption:se,ElButton:I,ElInput:B,ElOption:_,ElSelect:g,FieldTitle:ge,PromptTextarea:E,ReferenceMediaInput:we,ScenarioPaymentMode:ue},emits:[`generate`],data(){return{form:{prompt:``,imageUrls:[],audioUrls:[],resolution:`2K`,ratio:`16:9`,duration:4},resolutions:[`768P`,`2K`],ratios:[{value:`adaptive`,width:`21px`,height:`21px`},{value:`21:9`,width:`28px`,height:`12px`},{value:`16:9`,width:`25px`,height:`13px`},{value:`4:3`,width:`22px`,height:`17px`},{value:`1:1`,width:`19px`,height:`19px`},{value:`3:4`,width:`17px`,height:`22px`},{value:`9:16`,width:`13px`,height:`25px`}],durations:Array.from({length:12},(e,t)=>t+4),quoteTimer:0,quoteRunId:0}},computed:{config(){let e=[],t=this.form.prompt.trim();t&&e.push({type:`text`,text:t});let n=this.form.imageUrls.length>1||this.form.audioUrls.length>0;return this.form.imageUrls.forEach(t=>{e.push({type:`image_url`,image_url:{url:t},role:n?`reference_image`:`first_frame`})}),this.form.audioUrls.forEach(t=>{e.push({type:`audio_url`,audio_url:{url:t},role:`reference_audio`})}),{model:`MiniMax-H3`,content:e,resolution:this.form.resolution,ratio:this.form.imageUrls.length===1&&!this.form.audioUrls.length?`adaptive`:this.form.ratio,duration:this.form.duration}},consumption(){return W(this.config,this.service?.cost)},service(){return this.$store.state.minimax?.service},walletMode(){return J()&&q(`minimax`).mode===`wallet`}},watch:{walletMode:{handler(e){e&&this.scheduleQuote()},immediate:!0},config:{handler(e){this.$store.commit(`minimax/setConfig`,e),this.walletMode&&this.scheduleQuote()},deep:!0,immediate:!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=q(`minimax`),t=++this.quoteRunId;e.quoteLoading=!0,e.quoteUsdc=void 0;try{let n=await Z.quote(G(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(){let e=Te(this.config);if(e){S.warning(this.$t(`minimax.message.${e}`));return}this.$emit(`generate`)}}}),De={class:`flex flex-col h-full`},Oe={class:`flex-1 overflow-y-auto p-5`},ke={class:`mb-4`},Ae={class:`mb-4`},je={class:`option-grid`},Me=[`aria-pressed`,`onClick`],Ne={class:`mb-4`},Pe={class:`ratio-options`},Fe=[`aria-pressed`,`onClick`],Ie={class:`ratio-preview`},Le={class:`setting-row mb-4`},Re={class:`flex flex-col items-center justify-center px-5 pb-5`};function ze(t,h,g,_,v,y){let b=l(`field-title`),x=l(`el-input`),S=l(`prompt-textarea`),C=l(`reference-media-input`),w=l(`el-option`),T=l(`el-select`),E=l(`scenario-payment-mode`),D=l(`consumption`),O=l(`magic-icon`),k=l(`el-button`);return m(),s(`div`,De,[e(`div`,Oe,[e(`div`,ke,[a(b,{title:t.$t(`minimax.name.model`),description:t.$t(`minimax.description.model`)},null,8,[`title`,`description`]),a(x,{"model-value":`MiniMax-H3`,disabled:``})]),a(S,{modelValue:t.form.prompt,"onUpdate:modelValue":h[0]||=e=>t.form.prompt=e,class:`mb-4`,title:t.$t(`minimax.name.prompt`),info:t.$t(`minimax.description.prompt`),placeholder:t.$t(`minimax.placeholder.prompt`),"min-rows":4},null,8,[`modelValue`,`title`,`info`,`placeholder`]),a(C,{modelValue:t.form.imageUrls,"onUpdate:modelValue":h[1]||=e=>t.form.imageUrls=e,class:`mb-4`,kind:`image`,title:t.$t(`minimax.name.referenceImages`),description:t.$t(`minimax.description.referenceImages`),limit:9},null,8,[`modelValue`,`title`,`description`]),a(C,{modelValue:t.form.audioUrls,"onUpdate:modelValue":h[2]||=e=>t.form.audioUrls=e,class:`mb-4`,kind:`audio`,title:t.$t(`minimax.name.referenceAudios`),description:t.$t(`minimax.description.referenceAudios`),limit:3},null,8,[`modelValue`,`title`,`description`]),e(`div`,Ae,[a(b,{title:t.$t(`minimax.name.resolution`),description:t.$t(`minimax.description.resolution`)},null,8,[`title`,`description`]),e(`div`,je,[(m(!0),s(c,null,p(t.resolutions,e=>(m(),s(`button`,{key:e,type:`button`,class:n([`option-button`,{active:t.form.resolution===e}]),"aria-pressed":t.form.resolution===e,onClick:n=>t.form.resolution=e},i(e),11,Me))),128))])]),e(`div`,Ne,[a(b,{title:t.$t(`minimax.name.ratio`),description:t.$t(`minimax.description.ratio`)},null,8,[`title`,`description`]),e(`div`,Pe,[(m(!0),s(c,null,p(t.ratios,r=>(m(),s(`button`,{key:r.value,type:`button`,class:n([`ratio-button`,{active:t.form.ratio===r.value}]),"aria-pressed":t.form.ratio===r.value,onClick:e=>t.form.ratio=r.value},[e(`span`,Ie,[e(`span`,{style:f({width:r.width,height:r.height}),"aria-hidden":`true`},null,4)]),e(`span`,null,i(r.value),1)],10,Fe))),128))])]),e(`div`,Le,[a(b,{inline:``,title:t.$t(`minimax.name.duration`),description:t.$t(`minimax.description.duration`)},null,8,[`title`,`description`]),a(T,{modelValue:t.form.duration,"onUpdate:modelValue":h[3]||=e=>t.form.duration=e,class:`setting-value`},{default:d(()=>[(m(!0),s(c,null,p(t.durations,e=>(m(),u(w,{key:e,label:`${e}s`,value:e},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`])])]),e(`div`,Re,[a(E,{scenario:`minimax`}),t.walletMode?o(``,!0):(m(),u(D,{key:0,value:t.consumption,service:t.service},null,8,[`value`,`service`])),a(k,{type:`primary`,class:`btn w-full`,round:``,onClick:t.onGenerate},{default:d(()=>[a(O,{class:`mr-2`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`minimax.button.generate`)),1)]),_:1},8,[`onClick`])])])}var Be=L(Ee,[[`render`,ze],[`__scopeId`,`data-v-3c619c51`]]),Ve=h({name:`TaskPreview`,components:{DeleteIcon:j,ChannelIcon:k,InfoIcon:ee,MagicIcon:P,TimeIcon:w,WarningIcon:M,CopyToClipboard:ie,ElAlert:b,VideoPlayer:le,ElTooltip:y,ElButton:I,ReportButton:ae},props:{modelValue:{type:Object,required:!0}},computed:{isFailure(){return this.modelValue?.status===`failed`||this.modelValue?.status===`cancelled`},isWaiting(){return this.modelValue?.status===`queued`||this.modelValue?.status===`running`},application(){return this.$store.state.minimax?.application},config(){return this.$store.state.minimax?.config}},methods:{async onDelete(){let e=this.modelValue?.id;if(e){try{await Q.confirm(this.$t(`common.message.deleteTaskConfirm`),this.$t(`common.button.delete`),{type:`warning`,confirmButtonText:this.$t(`common.button.delete`),cancelButtonText:this.$t(`common.button.cancel`),confirmButtonClass:`el-button--danger`})}catch{return}try{await this.$store.dispatch(`minimax/deleteTask`,{id:e}),S.success(this.$t(`common.message.deleteTaskSuccess`))}catch{S.error(this.$t(`common.message.deleteTaskFailed`))}}},onDownload(e){console.debug(`on download minimax video`,e),window.open(e,`_blank`)}}}),He={class:`preview`},Ue={class:`left`},We={class:`main`},Ge={class:`bot`},Ke={class:`datetime`},qe=[`aria-label`],Je={key:0,class:n({content:!0,failed:!0})},$={key:0,class:`mb-4`},Ye={key:1,class:n({operations:!0,"mt-2":!0})},Xe={key:0,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Ze={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Qe={key:1,class:n({content:!0})},$e={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},et={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},tt={key:2,class:n({content:!0})},nt={class:`text-[var(--el-text-color-regular)] text-xs mb-0`};function rt(n,c,f,p,h,g){let _=l(`capability-presentation`),v=l(`delete-icon`),y=l(`el-tooltip`),b=l(`video-player`),x=l(`el-button`),S=l(`report-button`),C=l(`channel-icon`),w=l(`copy-to-clipboard`),T=l(`magic-icon`),E=l(`el-alert`),D=l(`warning-icon`),O=l(`info-icon`),k=l(`time-icon`);return m(),s(`div`,He,[e(`div`,Ue,[a(_,{capability:`minimax`,part:`avatar`,class:`avatar`})]),e(`div`,We,[e(`div`,Ge,[a(_,{capability:`minimax`,part:`name`}),e(`span`,Ke,i(n.$dayjs.format(``+new Date(parseFloat((n.modelValue?.created_at||``).toString())*1e3))),1),a(y,{effect:`dark`,content:n.$t(`common.button.delete`),placement:`top`},{default:d(()=>[n.modelValue?.id?(m(),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(v,{size:`1em`,"aria-hidden":`true`,focusable:`false`})],8,qe)):o(``,!0)]),_:1},8,[`content`])]),c[2]||=e(`div`,{class:`info`},null,-1),n.modelValue?.status===`succeeded`?(m(),s(`div`,Je,[n.modelValue?.content?.url?(m(),s(`div`,$,[a(b,{src:n.modelValue.content.url},null,8,[`src`])])):o(``,!0),n.modelValue?.content?.url?(m(),s(`div`,Ye,[a(y,{class:`box-item`,effect:`dark`,content:n.$t(`minimax.message.downloadVideo`),placement:`top-start`},{default:d(()=>[n.modelValue?.content?.url?(m(),u(x,{key:0,type:`info`,size:`small`,class:`mb-2`,onClick:c[1]||=t(e=>n.onDownload(n.modelValue.content.url),[`stop`])},{default:d(()=>[r(i(n.$t(`minimax.button.download`)),1)]),_:1})):o(``,!0)]),_:1},8,[`content`]),a(S,{service:`minimax`,"target-id":n.modelValue?.id,snapshot:{model:n.modelValue?.model,task_id:n.modelValue?.id}},null,8,[`target-id`,`snapshot`])])):o(``,!0),a(E,{closable:!1,class:`mt-2 success`},{default:d(()=>[n.modelValue?.model?(m(),s(`p`,Xe,[a(C,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`minimax.name.model`))+`: `+i(n.modelValue?.model)+` `,1),a(w,{content:n.modelValue?.id},null,8,[`content`])])):o(``,!0),e(`p`,Ze,[a(T,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`minimax.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(w,{content:n.modelValue?.id},null,8,[`content`])])]),_:1})])):o(``,!0),n.isFailure?(m(),s(`div`,Qe,[a(E,{closable:!1,class:`failure`},{template:d(()=>[a(D,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`minimax.name.failure`)),1)]),default:d(()=>[e(`p`,$e,[a(T,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`minimax.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(w,{content:n.modelValue?.id},null,8,[`content`])]),e(`p`,et,[a(O,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`minimax.name.failureReason`))+`: `+i(n.modelValue?.error?.message)+` `,1),a(w,{content:n.modelValue?.error?.message},null,8,[`content`])])]),_:1})])):o(``,!0),n.isWaiting?(m(),s(`div`,tt,[a(E,{closable:!1,class:`info`},{template:d(()=>[a(k,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(n.modelValue?.status===`queued`?`minimax.status.pending`:`minimax.status.processing`)),1)]),default:d(()=>[e(`p`,nt,[a(T,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`minimax.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(w,{content:n.modelValue?.id},null,8,[`content`])])]),_:1})])):o(``,!0)])])}var it=h({name:`RecentPanel`,components:{TaskPreview:L(Ve,[[`render`,rt],[`__scopeId`,`data-v-2f8bed02`]]),BotPlaceholder:de,NoTasks:O,ScrollList:D},props:{loading:{type:Boolean,default:!1}},emits:[`reach-top`],data(){return{job:0}},computed:{tasks(){return{...this.$store.state.minimax?.tasks,items:this.$store.state.minimax?.tasks?.items?.slice()}}},methods:{getScrollElement(){return this.$refs.scrollList?.getScrollElement?.()}}}),at={key:0},ot={key:2,class:`w-full h-full flex items-center justify-center`};function st(e,t,n,r,i,f){let h=l(`bot-placeholder`),g=l(`task-preview`),_=l(`scroll-list`),v=l(`no-tasks`);return m(),s(c,null,[e.tasks?.items===void 0?(m(),s(`div`,at,[a(h)])):e.tasks?.items?.length&&e.tasks?.items?.length>0?(m(),u(_,{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:d(()=>[(m(!0),s(c,null,p(e.tasks?.items,e=>(m(),u(g,{key:e.id,"model-value":e},null,8,[`model-value`]))),128))]),_:1},8,[`loading`])):o(``,!0),e.tasks?.items?.length===0?(m(),s(`div`,ot,[a(v)])):o(``,!0)],64)}var ct=h({name:`MinimaxIndex`,components:{ConfigPanel:Be,Layout:fe,RecentPanel:L(it,[[`render`,st]])},mixins:[re],inject:[`initialized`],data(){return{task:void 0,job:0,timer:void 0,loadingMore:!1,fetchingTasks:!1,walletTaskIds:[]}},computed:{applicationsLoading(){return this.$store.state.minimax?.status?.getApplications===x.Request},tasksLoading(){return this.$store.state.minimax?.status?.getTasks===x.Request||this.fetchingTasks},credential(){return this.$store.state.minimax.credential},config(){return this.$store.state.minimax.config},application(){return this.$store.state.minimax.application},tasks(){return this.$store.state.minimax.tasks},walletMode(){return J()&&q(`minimax`).mode===`wallet`}},watch:{walletMode:{async handler(e,t){if(!(t===void 0||e===t)){if(this.$store.commit(`minimax/setTasks`,void 0),e&&!this.job&&(this.job=window.setInterval(this.onGetTasks,5e3)),!e&&!this.credential?.token){window.clearInterval(this.job),this.job=0,await this.onScrollDown();return}await this.onGetTasks(),await this.onScrollDown()}}},tasks:{handler(e,t){e?.items?.length>t?.items?.length&&console.debug(`new tasks detected`)},deep:!0},initialized:{async handler(e){e&&(console.debug(`layout initialized`),await this.onGetTasks(),await this.onScrollDown(),this.job||=window.setInterval(this.onGetTasks,5e3))},immediate:!0}},async mounted(){await this.onGetService()},async unmounted(){window.clearInterval(this.job)},methods:{async onReachTop(){await A({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(`minimax/getService`),console.debug(`end onGetService`)},async onGetApplication(){console.debug(`start onGetApplication`),await this.$store.dispatch(`minimax/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(`minimax/getTasks`,{limit:t,createdAtMin:n,createdAtMax:r,...this.walletMode&&!this.credential?.token?{mode:`x402`,ids:this.walletTaskIds}:{}})}finally{this.fetchingTasks=!1}},async onGenerate(){if(!F(this.uploadTracker,e=>this.$t(e),e=>S.warning(e)))return;let e=G(this.config),t;if(this.walletMode){let n=this.getWalletContext();if(!n){S.warning(this.$t(`common.x402Scenario.connectWalletFirst`));return}t=Z.generate(e,{mode:`x402`,x402:{wallet:n,confirm:e=>this.confirmWalletPayment(e),identityToken:this.credential?.token}})}else{if(!X())return;let n=this.credential?.token;if(!n)return;t=Z.generate(e,{token:n})}S.info(this.$t(`minimax.message.startingTask`)),Y(`minimax`,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(`minimax.message.startTaskSuccess`))}).catch(e=>{let t=e?.response?.data;e instanceof R||(t?.error?.code===`used_up`?S.error(this.$t(`minimax.message.usedUp`)):this.walletMode?S.error(`${this.$t(`common.x402Scenario.paymentFailed`)} ${e?.message||``}`.trim()):S.error(this.$t(`minimax.message.startTaskFailed`)))}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})},getWalletContext(){return K(this.$wallet)},async confirmWalletPayment(e){return Q.confirm(this.$t(`common.x402Scenario.confirmPayment`,{amount:e.amountUsdc}),this.$t(`order.message.x402ConfirmTitle`),{confirmButtonText:this.$t(`order.message.x402WalletPayCta`),cancelButtonText:this.$t(`common.button.cancel`),type:`warning`}).then(()=>!0).catch(()=>!1)},getTasksScrollElement(){return this.$refs.recentPanel?.getScrollElement?.()}}});function lt(e,t,n,r,i,o){let s=l(`config-panel`),c=l(`recent-panel`),f=l(`layout`);return m(),u(f,null,{config:d(()=>[a(s,{onGenerate:e.onGenerate},null,8,[`onGenerate`])]),result:d(()=>[a(c,{ref:`recentPanel`,loading:e.loadingMore,onReachTop:e.onReachTop},null,8,[`loading`,`onReachTop`])]),_:1})}var ut=L(ct,[[`render`,lt]]);export{ut 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,P as c,T as l,at as u,ht as d,it as f,j as p,mt 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-C0yzkTif.js";import{t as x}from"./upload-D6AM_V-z.js";import{t as S}from"./tooltip-CY9KP5TS.js";import{t as C}from"./alert-BprQRUmf.js";import{h as w,v as T}from"./models-DAfyWAqc.js";import{n as E,r as D}from"./radio-BNhFzeBO.js";import{n as O,t as k}from"./collapse-GpKda_4j.js";import{t as A}from"./drawer-BUv2WEZF.js";import{t as j}from"./input-number-B0xcuDnW.js";import{t as M}from"./progress-BuyYfFZn.js";import{t as N}from"./clock-D5NbflY9.js";import{a as ee,i as P,n as te,o as ne,r as re,s as ie,t as ae}from"./pagination-NMff1SYZ.js";import{t as oe}from"./info-zYDWDLVP.js";import{t as se}from"./music-2-UxfKU68J.js";import{t as ce}from"./plus-Dzhx2WdR.js";import{t as F}from"./trash-2-B1wBangj.js";import{t as I}from"./triangle-alert-CAuu6B-W.js";import{t as le}from"./upload-D_4LkjOW.js";import{t as ue}from"./user-B3wTOjwB.js";import{t as de}from"./video-DVgqKgsY.js";import{t as L}from"./wand-sparkles-CJH0v5L4.js";import{Ar as fe,Dr as pe,Er as me,Tr as R,jr as he,wr as ge}from"./constants-COIxBjYU.js";import{G as _e,J as ve,K as ye,Na as z,O as B,Qr as V,V as be,Va as xe,Y as Se,_a as Ce,aa as we,an as Te,ei as H,gi as U,hi as W,hr as G,ki as Ee,mn as De,mr as Oe,pr as K,q as ke,wa as Ae,ya as q}from"./index-CTn7SLTr.js";import{t as je}from"./CopyToClipboard-AvaqCeXT.js";import{t as Me}from"./ReportButton-D07ABYgs.js";import{t as J}from"./ImagePreview-DPhaVe-K.js";import{n as Ne}from"./taskDrawerMixin-DyAUhFEq.js";import{t as Y}from"./Consumption-BK4nImFR.js";import{t as X}from"./AudioPreview-4SXEbJja.js";import{t as Pe}from"./VideoPlayer-89YYttvk.js";import{t as Z}from"./VideoPreview-BlX_PPPl.js";import{t as Fe}from"./ScenarioPaymentMode-DHx-gf_J.js";import{t as Ie}from"./ApiCodeButton-BA7mDSbv.js";import{t as Le}from"./BotPlaceholder-C--FHvts.js";var Re=v({name:`LayoutDigitalHuman`,components:{UserIcon:ue,ElDrawer:A,ElButton:z},mixins:[Ne]}),ze={class:`main flex flex-row flex-1`},Be={class:`config w-[320px] flex-none h-full min-h-0 overflow-hidden flex flex-col bg-[var(--app-sidebar-bg)] border-r border-[var(--app-border-subtle)]`},Ve={class:`result h-full p-6 flex-1 flex flex-col min-w-0 overflow-x-hidden bg-[var(--app-content-bg)]`};function He(t,n,r,i,o,c){let l=u(`user-icon`),p=u(`el-button`),h=u(`el-drawer`);return g(),s(`div`,ze,[e(`div`,Be,[f(t.$slots,`config`,{},void 0,!0)]),e(`div`,Ve,[f(t.$slots,`result`,{},void 0,!0)]),d(a(p,{circle:``,class:`menu`,"aria-label":t.$t(`common.button.openMenu`),title:t.$t(`common.button.openMenu`),onClick:n[0]||=e=>t.drawer=!0},{default:m(()=>[a(l,{size:`1em`,"aria-hidden":`true`,focusable:`false`})]),_:1},8,[`aria-label`,`title`]),[[_,!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:m(()=>[f(t.$slots,`config`,{},void 0,!0)]),_:3},8,[`modelValue`])])}var Ue=B(Re,[[`render`,He],[`__scopeId`,`data-v-e912fd04`]]),We=v({name:`DigitalHumanMediaInput`,components:{AudioPreview:X,CloseIcon:Ce,ElButton:z,ElProgress:M,ElUpload:x,ImagePreview:J,MusicIcon:se,UploadIcon:le,VideoIcon:de,VideoPreview:Z},mixins:[Se,ve,ye,be],props:{kind:{type:String,required:!0},accept:{type:String,default:``},buttonText:{type:String,default:``},hint:{type:String,default:``}},emits:[`change`],data(){return{fileList:[],uploadUrl:we()+`/api/v1/files/`}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},hasFile(){return this.fileList.length>0}},methods:{uploadedUrl(e){return e?.response?.file_url},isPending(e){return e.status===`ready`||e.status===`uploading`},onExceed(e){let t=this.$refs.uploader;t?.clearFiles();let n=e[0];n&&(t?.handleStart?.(n),t?.submit?.())},onError(){T.error(this.$t(`digitalhuman.message.uploadError`))},onRemoveFile(e){let t=this.fileList.indexOf(e);t>=0&&this.fileList.splice(t,1),this.onChange()},onChange(){let e=this.fileList?.[0];this.$emit(`change`,e?this.uploadedUrl(e):void 0)}}}),Ge={class:`thumb`},Ke={key:2,class:`placeholder`},qe=[`title`],Je=[`aria-label`,`title`,`onClick`],Ye={key:0,class:`hint`};function Xe(c,d,f,h,_,v){let y=u(`image-preview`),b=u(`video-preview`),x=u(`audio-preview`),S=u(`el-progress`),C=u(`video-icon`),w=u(`music-icon`),T=u(`close-icon`),E=u(`upload-icon`),D=u(`el-button`),O=u(`el-upload`);return g(),p(O,{ref:`uploader`,"file-list":c.fileList,"onUpdate:fileList":d[0]||=e=>c.fileList=e,accept:c.accept,name:`file`,class:`media-input`,limit:1,multiple:!1,"before-upload":c.beforeUploadSizeGuard,action:c.uploadUrl,headers:c.headers,"on-exceed":c.onExceed,"on-error":c.onError,"on-success":c.onChange,"on-remove":c.onChange},{file:m(({file:r})=>[e(`div`,{class:n([`slot`,{pending:c.isPending(r)}])},[c.kind===`image`&&r.url?(g(),p(y,{key:0,url:r.url,name:r.name,percentage:r.percentage,onRemove:e=>c.onRemoveFile(r)},null,8,[`url`,`name`,`percentage`,`onRemove`])):(g(),s(l,{key:1},[e(`div`,Ge,[c.kind===`video`&&c.uploadedUrl(r)?(g(),p(b,{key:0,url:c.uploadedUrl(r)},null,8,[`url`])):c.kind===`audio`&&c.uploadedUrl(r)?(g(),p(x,{key:1,url:c.uploadedUrl(r)},null,8,[`url`])):(g(),s(`div`,Ke,[c.isPending(r)?(g(),p(S,{key:0,type:`circle`,"stroke-width":4,percentage:Math.round(r.percentage||0),width:34},null,8,[`percentage`])):c.kind===`video`?(g(),p(C,{key:1,size:`1em`,"aria-hidden":`true`,focusable:`false`})):(g(),p(w,{key:2,size:`1em`,"aria-hidden":`true`,focusable:`false`}))]))]),e(`span`,{class:`filename`,title:r.name},i(r.name),9,qe),e(`button`,{type:`button`,class:`remove`,"aria-label":c.$t(`common.button.close`),title:c.$t(`common.button.close`),onClick:t(e=>c.onRemoveFile(r),[`stop`])},[a(T,{size:`1em`,"aria-hidden":`true`,focusable:`false`})],8,Je)],64))],2)]),default:m(()=>[a(D,{round:``,type:`primary`,size:`small`,class:`btn`},{default:m(()=>[a(E,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(c.hasFile?c.$t(`digitalhuman.button.replace`):c.buttonText),1)]),_:1}),c.hint?(g(),s(`p`,Ye,i(c.hint),1)):o(``,!0)]),_:1},8,[`file-list`,`accept`,`before-upload`,`action`,`headers`,`on-exceed`,`on-error`,`on-success`,`on-remove`])}var Q=B(We,[[`render`,Xe],[`__scopeId`,`data-v-db0590a9`]]),Ze=20,Qe=e=>{let t=e;return!!t&&typeof t.voice_id==`string`&&!!t.voice_id&&typeof t.name==`string`},$=()=>{try{let e=JSON.parse(localStorage.getItem(`digitalhuman.voices`)||`[]`);return Array.isArray(e)?e.filter(Qe).map(e=>({voice_id:e.voice_id,name:e.name,lang:typeof e.lang==`string`?e.lang:`zh`,created_at:typeof e.created_at==`number`?e.created_at:0})):[]}catch{return[]}},$e=e=>{try{localStorage.setItem(he,JSON.stringify(e))}catch{}return e},et=e=>Qe(e)?$e([e,...$().filter(t=>t.voice_id!==e.voice_id)].slice(0,Ze)):$(),tt=e=>$e($().filter(t=>t.voice_id!==e)),nt=e=>`${e} ${$().length+1}`,rt=3e3,it=60,at=v({name:`DigitalHumanVoiceCloneDialog`,components:{Consumption:Y,ElAlert:C,ElButton:z,ElDialog:Ae,ElInput:xe,ElRadioButton:E,ElRadioGroup:D,MediaInput:Q},props:{visible:{type:Boolean,default:!1}},emits:[`update:visible`,`cloned`],data(){return{sampleUrl:void 0,name:``,lang:`zh`,cloning:!1,destroyed:!1,runId:0,DIGITALHUMAN_AUDIO_ACCEPT:R,DIGITALHUMAN_VOICE_CLONE_CONSUMPTION:2,voiceQuoteUsdc:void 0,voiceQuoteLoading:!1,quoteRunId:0}},computed:{service(){return this.$store.state.digitalhuman?.service},credentialToken(){return this.$store.state.digitalhuman?.credential?.token},walletMode(){return W()&&U(`digitalhuman`).mode===`wallet`},langOptions(){return ge.map(e=>({value:e,label:this.$t(`digitalhuman.name.lang_${e}`)}))}},watch:{walletMode(e){this.voiceQuoteUsdc=void 0,e&&this.visible&&this.sampleUrl&&this.refreshVoiceQuote()},visible(e){e?(this.sampleUrl=void 0,this.name=nt(this.$t(`digitalhuman.name.myVoice`)),this.lang=`zh`):(this.runId++,this.quoteRunId++,this.cloning=!1,this.voiceQuoteLoading=!1)}},beforeUnmount(){this.destroyed=!0,this.runId++,this.quoteRunId++},methods:{onVisible(e){this.cloning&&!e||this.$emit(`update:visible`,e)},onSampleChange(e){this.sampleUrl=e,this.voiceQuoteUsdc=void 0,e&&this.walletMode&&this.refreshVoiceQuote()},isStale(e){return this.destroyed||e!==this.runId},sleep(e){return new Promise(t=>setTimeout(t,e))},async refreshVoiceQuote(){if(!this.sampleUrl)return;let e=++this.quoteRunId;this.voiceQuoteLoading=!0;try{let t=await G.quoteVoice(this.voiceRequest());e===this.quoteRunId&&this.walletMode&&(this.voiceQuoteUsdc=t.amountUsdc)}catch(e){console.warn(`x402 voice quote failed`,e)}finally{e===this.quoteRunId&&(this.voiceQuoteLoading=!1)}},voiceRequest(){return Oe({audio_url:this.sampleUrl||``,lang:this.lang,name:this.name||void 0})},paymentOptions(){if(!this.walletMode)return this.credentialToken?{token:this.credentialToken}:void 0;let e=this.getWalletContext();if(!e){T.warning(this.$t(`common.x402Scenario.connectWalletFirst`));return}return{mode:`x402`,x402:{wallet:e,confirm:e=>this.confirmWalletPayment(e),identityToken:this.credentialToken}}},async onClone(){if(!this.sampleUrl)return;let e=this.paymentOptions();if(!e)return;let t=++this.runId;this.cloning=!0;try{let{data:n}=await G.cloneVoice(this.voiceRequest(),e);if(this.isStale(t))return;if(n?.voice_id){this.onCloned(n.voice_id);return}if(n?.task_id)await this.pollVoice(n.task_id,t);else throw Error(`no task`)}catch(e){if(e instanceof V)return;this.isStale(t)||T.error(this.$t(`digitalhuman.message.voiceCloneFailed`))}finally{this.isStale(t)||(this.cloning=!1)}},async pollVoice(e,t){for(let n=0;n<it;n++){if(this.isStale(t)||(await this.sleep(rt),this.isStale(t)))return;let n=this.credentialToken,{data:r}=await G.pollTask(e,n?{token:n}:{mode:`x402`});if(this.isStale(t))return;if(r?.voice_id){this.onCloned(r.voice_id);return}if(r?.state===`failed`)throw Error(`clone failed`)}throw Error(`timeout`)},getWalletContext(){return H(this.$wallet)},async confirmWalletPayment(e){return q.confirm(this.$t(`common.x402Scenario.confirmPayment`,{amount:e.amountUsdc}),this.$t(`order.message.x402ConfirmTitle`),{confirmButtonText:this.$t(`order.message.x402WalletPayCta`),cancelButtonText:this.$t(`common.button.cancel`),type:`warning`}).then(()=>!0).catch(()=>!1)},onCloned(e){et({voice_id:e,name:this.name||this.$t(`digitalhuman.name.myVoice`),lang:this.lang,created_at:Date.now()/1e3}),T.success(this.$t(`digitalhuman.message.voiceCloneSuccess`)),this.cloning=!1,this.$emit(`cloned`,e),this.$emit(`update:visible`,!1)}}}),ot={class:`text-xs text-[var(--el-text-color-secondary)] mb-3`},st={class:`field mb-3`},ct={class:`label`},lt={class:`field`},ut={class:`label`},dt={class:`text-xs mb-0`},ft={key:1,class:`mt-4 text-xs text-[var(--el-text-color-secondary)]`},pt={class:`footer`},mt={key:0,class:`cost text-xs text-[var(--el-text-color-secondary)]`};function ht(t,n,o,c,d,f){let _=u(`media-input`),v=u(`el-input`),y=u(`el-radio-button`),b=u(`el-radio-group`),x=u(`el-alert`),S=u(`consumption`),C=u(`el-button`),w=u(`el-dialog`);return g(),p(w,{"model-value":t.visible,title:t.$t(`digitalhuman.name.cloneVoice`),width:`440`,"align-center":``,"append-to-body":``,"close-on-click-modal":!t.cloning,"close-on-press-escape":!t.cloning,"onUpdate:modelValue":t.onVisible},{footer:m(()=>[e(`div`,pt,[t.walletMode?(g(),s(`span`,mt,i(t.voiceQuoteLoading?`…`:t.voiceQuoteUsdc?`${t.voiceQuoteUsdc} USDC`:t.$t(`common.x402Scenario.quoteBeforeSigning`)),1)):(g(),p(S,{key:1,value:t.DIGITALHUMAN_VOICE_CLONE_CONSUMPTION,service:t.service,class:`cost`},null,8,[`value`,`service`])),e(`div`,null,[a(C,{disabled:t.cloning,onClick:n[2]||=e=>t.onVisible(!1)},{default:m(()=>[r(i(t.$t(`common.button.cancel`)),1)]),_:1},8,[`disabled`]),a(C,{type:`primary`,loading:t.cloning,disabled:!t.sampleUrl||t.cloning,onClick:t.onClone},{default:m(()=>[r(i(t.$t(`digitalhuman.button.startClone`)),1)]),_:1},8,[`loading`,`disabled`,`onClick`])])])]),default:m(()=>[e(`p`,ot,i(t.$t(`digitalhuman.message.voiceCloneHint`)),1),a(_,{kind:`audio`,accept:t.DIGITALHUMAN_AUDIO_ACCEPT,"button-text":t.$t(`digitalhuman.button.uploadSample`),hint:t.$t(`digitalhuman.message.audioHint`),class:`mb-4`,onChange:t.onSampleChange},null,8,[`accept`,`button-text`,`hint`,`onChange`]),e(`div`,st,[e(`span`,ct,i(t.$t(`digitalhuman.name.voiceName`)),1),a(v,{modelValue:t.name,"onUpdate:modelValue":n[0]||=e=>t.name=e,class:`control`,placeholder:t.$t(`digitalhuman.placeholder.voiceName`)},null,8,[`modelValue`,`placeholder`])]),e(`div`,lt,[e(`span`,ut,i(t.$t(`digitalhuman.name.voiceLang`)),1),a(b,{modelValue:t.lang,"onUpdate:modelValue":n[1]||=e=>t.lang=e,class:`control`},{default:m(()=>[(g(!0),s(l,null,h(t.langOptions,e=>(g(),p(y,{key:e.value,value:e.value},{default:m(()=>[r(i(e.label),1)]),_:2},1032,[`value`]))),128))]),_:1},8,[`modelValue`])]),t.cloning?(g(),p(x,{key:0,closable:!1,type:`info`,class:`mt-4`},{default:m(()=>[e(`p`,dt,i(t.$t(`digitalhuman.message.voiceCloneRunning`)),1)]),_:1})):(g(),s(`p`,ft,i(t.$t(`digitalhuman.message.voiceStoredLocally`)),1))]),_:1},8,[`model-value`,`title`,`close-on-click-modal`,`close-on-press-escape`,`onUpdate:modelValue`])}var gt=v({name:`DigitalHumanTimbreSelector`,components:{AddIcon:ce,DeleteIcon:F,ElButton:z,ElOption:b,ElSelect:y,VoiceCloneDialog:B(at,[[`render`,ht],[`__scopeId`,`data-v-037c810e`]])},props:{modelValue:{type:String,default:void 0}},emits:[`update:modelValue`],data(){return{voices:$(),dialogVisible:!1}},mounted(){this.modelValue&&!this.voices.some(e=>e.voice_id===this.modelValue)&&this.$emit(`update:modelValue`,void 0)},methods:{labelFor(e){let t=this.$t(`digitalhuman.name.lang_${e.lang}`);return t.startsWith(`digitalhuman.`)?e.name:`${e.name} · ${t}`},onCloned(e){this.voices=$(),this.$emit(`update:modelValue`,e)},onRemove(e){this.voices=tt(e),this.modelValue===e&&this.$emit(`update:modelValue`,void 0)}}}),_t={class:`row`},vt={class:`label`},yt={class:`option`},bt={class:`option-name`},xt=[`aria-label`,`title`,`onClick`],St={class:`empty`};function Ct(n,o,d,f,_,v){let y=u(`delete-icon`),b=u(`el-option`),x=u(`el-select`),S=u(`add-icon`),C=u(`el-button`),w=u(`voice-clone-dialog`);return g(),s(`div`,null,[e(`div`,_t,[e(`span`,vt,i(n.$t(`digitalhuman.name.timbre`)),1),a(x,{"model-value":n.modelValue,class:`control`,placeholder:n.$t(`digitalhuman.placeholder.pickTimbre`),"onUpdate:modelValue":o[0]||=e=>n.$emit(`update:modelValue`,e)},c({default:m(()=>[(g(!0),s(l,null,h(n.voices,r=>(g(),p(b,{key:r.voice_id,label:n.labelFor(r),value:r.voice_id},{default:m(()=>[e(`span`,yt,[e(`span`,bt,i(n.labelFor(r)),1),e(`button`,{type:`button`,class:`option-remove`,"aria-label":n.$t(`common.button.delete`),title:n.$t(`common.button.delete`),onClick:t(e=>n.onRemove(r.voice_id),[`stop`])},[a(y,{size:`1em`,"aria-hidden":`true`,focusable:`false`})],8,xt)])]),_:2},1032,[`label`,`value`]))),128))]),_:2},[n.voices.length===0?{name:`empty`,fn:m(()=>[e(`p`,St,i(n.$t(`digitalhuman.message.noVoiceYet`)),1)]),key:`0`}:void 0]),1032,[`model-value`,`placeholder`])]),a(C,{size:`small`,text:``,type:`primary`,class:`clone`,onClick:o[1]||=e=>n.dialogVisible=!0},{default:m(()=>[a(S,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`digitalhuman.button.cloneNewVoice`)),1)]),_:1}),a(w,{visible:n.dialogVisible,"onUpdate:visible":o[2]||=e=>n.dialogVisible=e,onCloned:n.onCloned},null,8,[`visible`,`onCloned`])])}var wt=v({name:`ConfigPanel`,components:{Consumption:Y,ElButton:z,ElCollapse:k,ElCollapseItem:O,ElInputNumber:j,ElRadioButton:E,ElRadioGroup:D,InfoIcon:ee,MagicIcon:L,MediaInput:Q,PromptTextarea:P,TimbreSelector:B(gt,[[`render`,Ct],[`__scopeId`,`data-v-e191cc56`]]),WarningIcon:I,ScenarioPaymentMode:Fe},emits:[`generate`],data(){return{faceMode:`video`,voiceMode:`text`,advancedOpen:[],DIGITALHUMAN_VIDEO_ACCEPT:fe,DIGITALHUMAN_IMAGE_ACCEPT:pe,DIGITALHUMAN_AUDIO_ACCEPT:R,quoteTimer:0,quoteRunId:0}},computed:{config(){return this.$store.state.digitalhuman?.config},service(){return this.$store.state.digitalhuman?.service},consumption(){return Te(this.config,this.service?.cost)},missing(){let e=[];return(this.faceMode===`video`?this.config?.video_url:this.config?.image_url)||e.push({key:`face`,message:this.$t(`digitalhuman.message.missingFace`)}),this.voiceMode===`text`?(this.config?.text?.trim()||e.push({key:`text`,message:this.$t(`digitalhuman.message.missingText`)}),this.config?.voice_id||e.push({key:`timbre`,message:this.$t(`digitalhuman.message.missingTimbre`)})):this.config?.audio_url||e.push({key:`audio`,message:this.$t(`digitalhuman.message.missingAudio`)}),e},text:{get(){return this.config?.text},set(e){this.update({text:e})}},voiceId:{get(){return this.config?.voice_id},set(e){this.update({voice_id:e})}},speed:{get(){return this.config?.speed??1},set(e){this.update({speed:e})}},walletMode(){return W()&&U(`digitalhuman`).mode===`wallet`}},watch:{walletMode:{handler(e){e&&this.scheduleQuote()},immediate:!0},config:{handler(){this.walletMode&&this.scheduleQuote()},deep:!0},faceMode(){this.walletMode&&this.scheduleQuote()},voiceMode(){this.walletMode&&this.scheduleQuote()}},mounted(){this.config?.image_url&&!this.config?.video_url&&(this.faceMode=`photo`),this.config?.audio_url&&(this.voiceMode=`audio`)},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(`digitalhuman`),t=++this.quoteRunId;e.quoteLoading=!0,e.quoteUsdc=void 0;try{let n=K(this.config,this.faceMode,this.voiceMode),r=await G.quote(n);t===this.quoteRunId&&e.mode===`wallet`&&(e.quoteUsdc=r.amountUsdc)}catch(e){console.warn(`x402 quote failed`,e)}finally{t===this.quoteRunId&&(e.quoteLoading=!1)}},isMissing(e){return this.missing.some(t=>t.key===e)},update(e){this.$store.commit(`digitalhuman/setConfig`,{...this.config,...e})},onFaceModeChange(e){this.update(e===`video`?{image_url:void 0}:{video_url:void 0})},onVoiceModeChange(e){this.update(e===`audio`?{text:void 0,voice_id:void 0}:{audio_url:void 0})},onFaceVideoChange(e){this.update({video_url:e})},onFacePhotoChange(e){this.update({image_url:e})},onAudioChange(e){this.update({audio_url:e})},onGenerate(){let e=this.missing[0];if(e){T.warning(e.message);let t=e.key===`face`?`face`:`voice`;this.$refs[t]?.scrollIntoView?.({behavior:`smooth`,block:`center`});return}this.$emit(`generate`,K(this.config,this.faceMode,this.voiceMode))}}}),Tt={class:`flex flex-col h-full`},Et={class:`flex-1 overflow-y-auto p-5`},Dt={ref:`face`,class:`field-block mb-6`},Ot={class:`field-head`},kt={class:`field-title font-bold`},At={key:0,class:`required-badge`},jt={ref:`voice`,class:`field-block mb-6`},Mt={class:`field-head`},Nt={class:`field-title font-bold`},Pt={key:0,class:`required-badge`},Ft={class:`field-row`},It={class:`field-head`},Lt={class:`field-title font-bold`},Rt={class:`flex flex-col items-center justify-center px-5 pb-5`},zt={key:0,class:`hint-missing`},Bt={class:`hint-eta`};function Vt(t,n,c,d,f,h){let _=u(`info-icon`),v=u(`el-radio-button`),y=u(`el-radio-group`),b=u(`media-input`),x=u(`prompt-textarea`),S=u(`timbre-selector`),C=u(`el-input-number`),w=u(`el-collapse-item`),T=u(`el-collapse`),E=u(`warning-icon`),D=u(`scenario-payment-mode`),O=u(`consumption`),k=u(`magic-icon`),A=u(`el-button`);return g(),s(`div`,Tt,[e(`div`,Et,[e(`section`,Dt,[e(`div`,Ot,[e(`h2`,kt,i(t.$t(`digitalhuman.name.step1`)),1),t.isMissing(`face`)?(g(),s(`span`,At,i(t.$t(`digitalhuman.name.required`)),1)):o(``,!0),a(_,{content:t.$t(`digitalhuman.description.step1`),class:`ml-1`},null,8,[`content`])]),a(y,{modelValue:t.faceMode,"onUpdate:modelValue":n[0]||=e=>t.faceMode=e,class:`mode-switch mb-3`,onChange:t.onFaceModeChange},{default:m(()=>[a(v,{value:`video`},{default:m(()=>[r(i(t.$t(`digitalhuman.name.faceModeVideo`)),1)]),_:1}),a(v,{value:`photo`},{default:m(()=>[r(i(t.$t(`digitalhuman.name.faceModePhoto`)),1)]),_:1})]),_:1},8,[`modelValue`,`onChange`]),t.faceMode===`video`?(g(),p(b,{key:0,kind:`video`,accept:t.DIGITALHUMAN_VIDEO_ACCEPT,"button-text":t.$t(`digitalhuman.button.uploadFaceVideo`),hint:t.$t(`digitalhuman.message.faceVideoHint`),onChange:t.onFaceVideoChange},null,8,[`accept`,`button-text`,`hint`,`onChange`])):(g(),p(b,{key:1,kind:`image`,accept:t.DIGITALHUMAN_IMAGE_ACCEPT,"button-text":t.$t(`digitalhuman.button.uploadFacePhoto`),hint:t.$t(`digitalhuman.message.facePhotoHint`),onChange:t.onFacePhotoChange},null,8,[`accept`,`button-text`,`hint`,`onChange`]))],512),e(`section`,jt,[e(`div`,Mt,[e(`h2`,Nt,i(t.$t(`digitalhuman.name.step2`)),1),t.isMissing(`text`)||t.isMissing(`timbre`)||t.isMissing(`audio`)?(g(),s(`span`,Pt,i(t.$t(`digitalhuman.name.required`)),1)):o(``,!0),a(_,{content:t.$t(`digitalhuman.description.step2`),class:`ml-1`},null,8,[`content`])]),a(y,{modelValue:t.voiceMode,"onUpdate:modelValue":n[1]||=e=>t.voiceMode=e,class:`mode-switch mb-3`,onChange:t.onVoiceModeChange},{default:m(()=>[a(v,{value:`text`},{default:m(()=>[r(i(t.$t(`digitalhuman.name.voiceModeText`)),1)]),_:1}),a(v,{value:`audio`},{default:m(()=>[r(i(t.$t(`digitalhuman.name.voiceModeAudio`)),1)]),_:1})]),_:1},8,[`modelValue`,`onChange`]),t.voiceMode===`text`?(g(),s(l,{key:0},[a(x,{modelValue:t.text,"onUpdate:modelValue":n[2]||=e=>t.text=e,class:`mb-3`,title:t.$t(`digitalhuman.name.speech`),placeholder:t.$t(`digitalhuman.placeholder.speech`),"min-rows":5,"max-rows":14},null,8,[`modelValue`,`title`,`placeholder`]),a(S,{modelValue:t.voiceId,"onUpdate:modelValue":n[3]||=e=>t.voiceId=e},null,8,[`modelValue`])],64)):(g(),p(b,{key:1,kind:`audio`,accept:t.DIGITALHUMAN_AUDIO_ACCEPT,"button-text":t.$t(`digitalhuman.button.uploadSpeechAudio`),hint:t.$t(`digitalhuman.message.audioHint`),onChange:t.onAudioChange},null,8,[`accept`,`button-text`,`hint`,`onChange`]))],512),a(T,{modelValue:t.advancedOpen,"onUpdate:modelValue":n[5]||=e=>t.advancedOpen=e,class:`advanced`},{default:m(()=>[a(w,{name:`advanced`,title:t.$t(`digitalhuman.name.advanced`)},{default:m(()=>[e(`div`,Ft,[e(`div`,It,[e(`h2`,Lt,i(t.$t(`digitalhuman.name.speed`)),1),a(_,{content:t.$t(`digitalhuman.description.speed`),class:`ml-1`},null,8,[`content`])]),a(C,{modelValue:t.speed,"onUpdate:modelValue":n[4]||=e=>t.speed=e,class:`field-control`,min:.5,max:2,step:.1,precision:1,"controls-position":`right`},null,8,[`modelValue`])])]),_:1},8,[`title`])]),_:1},8,[`modelValue`])]),e(`div`,Rt,[t.missing.length>0?(g(),s(`p`,zt,[a(E,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.missing[0].message),1)])):o(``,!0),a(D,{scenario:`digitalhuman`}),t.walletMode?o(``,!0):(g(),p(O,{key:1,value:t.consumption,service:t.service},null,8,[`value`,`service`])),a(A,{type:`primary`,class:`btn w-full`,round:``,onClick:t.onGenerate},{default:m(()=>[a(k,{class:`mr-2`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`digitalhuman.button.generateVideo`)),1)]),_:1},8,[`onClick`]),e(`p`,Bt,i(t.$t(`digitalhuman.message.eta`)),1)])])}var Ht=B(wt,[[`render`,Vt],[`__scopeId`,`data-v-30f81f39`]]),Ut=[`.jpg`,`.jpeg`,`.png`,`.webp`,`.bmp`,`.gif`],Wt=v({name:`TaskPreview`,components:{ApiCodeButton:Ie,AudioPreview:X,ChannelIcon:ie,CopyToClipboard:je,DeleteIcon:F,ElAlert:C,ElButton:z,ElProgress:M,ElTooltip:S,FullscreenIcon:ne,ImagePreview:J,InfoIcon:oe,MagicIcon:L,ReportButton:Me,TimeIcon:N,VideoPlayer:Pe,VideoPreview:Z,WarningIcon:I},props:{modelValue:{type:Object,required:!0}},computed:{status(){return this.modelValue?.status||this.modelValue?.response?.state||`pending`},isSuccess(){return[`succeed`,`succeeded`].includes(this.status)||!!this.modelValue?.response?.video_url},isFailure(){return[`failed`,`dead`].includes(this.status)||this.modelValue?.response?.success===!1},isTerminal(){return this.isSuccess||this.isFailure},videoUrl(){return this.modelValue?.response?.video_url},progressPct(){let e=this.modelValue?.response?.progress;return typeof e==`number`?e:0},voiceLabel(){return this.modelValue?.request?.audio_url?this.$t(`digitalhuman.name.audioDriven`):this.$t(`digitalhuman.name.textDriven`)},faceUrl(){return this.modelValue?.request?.video_url||this.modelValue?.request?.image_url},isPhotoFace(){if(this.modelValue?.request?.image_url)return!0;let e=(this.faceUrl||``).split(`?`)[0].toLowerCase();return Ut.some(t=>e.endsWith(t))},audioUrl(){return this.modelValue?.request?.audio_url},outputSize(){let{width:e,height:t}=this.modelValue?.response||{};return e&&t?`${e}×${t}`:void 0},etaText(){let e=parseFloat((this.modelValue?.created_at||``).toString());if(!e)return;let t=me-(Date.now()/1e3-e);return t<=60?this.$t(`digitalhuman.message.etaAlmostDone`):this.$t(`digitalhuman.message.etaRemaining`,{minutes:Math.ceil(t/60)})},statusLabel(){let e=`digitalhuman.status.${this.status}`,t=this.$t(e);return t===e?this.$t(`digitalhuman.status.processing`):t},failureReason(){let e=this.modelValue?.response?.error;if(e)return typeof e==`string`?e:e?.message}},methods:{async onDelete(){let e=this.modelValue?.id;if(e){try{await q.confirm(this.$t(`common.message.deleteTaskConfirm`),this.$t(`common.button.delete`),{type:`warning`,confirmButtonText:this.$t(`common.button.delete`),cancelButtonText:this.$t(`common.button.cancel`),confirmButtonClass:`el-button--danger`})}catch{return}try{await this.$store.dispatch(`digitalhuman/deleteTask`,{id:e}),T.success(this.$t(`common.message.deleteTaskSuccess`))}catch{T.error(this.$t(`common.message.deleteTaskFailed`))}}},onDownload(e,t){e?.stopPropagation(),window.open(t,`_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={class:`prompt mt-2`},en={key:0},tn={key:0,class:`content`},nn={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},rn={key:0,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},an={class:`text-[var(--el-text-color-regular)] text-xs mb-0`},on={key:1,class:`content`},sn={class:`operations mt-2`},cn={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={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},dn={key:2,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},fn={key:3,class:`text-[var(--el-text-color-regular)] text-xs mb-0`},pn={key:2,class:`content`},mn={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},hn={key:0,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},gn={key:1,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},_n={key:2,class:`text-[var(--el-text-color-regular)] text-xs mb-0`};function vn(n,c,l,d,f,h){let _=u(`capability-presentation`),v=u(`delete-icon`),y=u(`el-tooltip`),b=u(`image-preview`),x=u(`video-preview`),S=u(`audio-preview`),C=u(`time-icon`),w=u(`el-progress`),T=u(`magic-icon`),E=u(`copy-to-clipboard`),D=u(`el-alert`),O=u(`video-player`),k=u(`el-button`),A=u(`api-code-button`),j=u(`report-button`),M=u(`fullscreen-icon`),N=u(`channel-icon`),ee=u(`warning-icon`),P=u(`info-icon`);return g(),s(`div`,Gt,[e(`div`,Kt,[a(_,{capability:`digitalhuman`,part:`avatar`,class:`avatar`})]),e(`div`,qt,[e(`div`,Jt,[a(_,{capability:`digitalhuman`,part:`name`}),e(`span`,Yt,i(n.$dayjs.format(``+new Date(parseFloat((n.modelValue?.created_at||``).toString())*1e3))),1),a(y,{effect:`dark`,content:n.$t(`common.button.delete`),placement:`top`},{default:m(()=>[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(v,{size:`1em`,"aria-hidden":`true`,focusable:`false`})],8,Xt)):o(``,!0)]),_:1},8,[`content`])]),e(`div`,Zt,[n.faceUrl||n.audioUrl?(g(),s(`div`,Qt,[n.faceUrl&&n.isPhotoFace?(g(),p(b,{key:0,url:n.faceUrl,name:`face`,closable:!1},null,8,[`url`])):n.faceUrl?(g(),p(x,{key:1,url:n.faceUrl,name:`face`},null,8,[`url`])):o(``,!0),n.audioUrl?(g(),p(S,{key:2,url:n.audioUrl,name:`audio`},null,8,[`url`])):o(``,!0)])):o(``,!0),e(`p`,$t,[r(i(n.modelValue?.request?.text||n.voiceLabel)+` `,1),n.isTerminal?o(``,!0):(g(),s(`span`,en,` - (`+i(n.statusLabel)+`) `,1))])]),n.isTerminal?o(``,!0):(g(),s(`div`,tn,[a(D,{closable:!1,class:`info-state`},{default:m(()=>[e(`p`,nn,[a(C,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.statusLabel),1)]),a(w,{percentage:n.progressPct,"stroke-width":6,class:`mb-2`},null,8,[`percentage`]),n.etaText?(g(),s(`p`,rn,[a(C,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`digitalhuman.name.etaLabel`))+`: `+i(n.etaText),1)])):o(``,!0),e(`p`,an,[a(T,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`digitalhuman.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(E,{content:n.modelValue?.id},null,8,[`content`])])]),_:1})])),n.isSuccess?(g(),s(`div`,on,[n.videoUrl?(g(),p(O,{key:0,src:n.videoUrl},null,8,[`src`])):o(``,!0),e(`div`,sn,[n.videoUrl?(g(),p(k,{key:0,type:`info`,size:`small`,class:`btn-action`,onClick:c[1]||=e=>n.onDownload(e,n.videoUrl)},{default:m(()=>[r(i(n.$t(`digitalhuman.button.download`)),1)]),_:1})):o(``,!0),a(A,{path:`/digital-human/videos`,body:n.modelValue?.request},null,8,[`body`]),a(j,{service:`digitalhuman`,"target-id":n.modelValue?.id,snapshot:{text:n.modelValue?.request?.text}},null,8,[`target-id`,`snapshot`])]),a(D,{closable:!1,class:`mt-2 success`},{default:m(()=>[n.modelValue?.response?.duration?(g(),s(`p`,cn,[a(C,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`digitalhuman.name.duration`))+`: `+i(n.modelValue?.response?.duration?.toFixed(1))+`s `,1)])):o(``,!0),n.outputSize?(g(),s(`p`,ln,[a(M,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`digitalhuman.name.outputSize`))+`: `+i(n.outputSize),1)])):o(``,!0),e(`p`,un,[a(T,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`digitalhuman.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(E,{content:n.modelValue?.id},null,8,[`content`])]),n.modelValue?.elapsed?(g(),s(`p`,dn,[a(C,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`digitalhuman.name.elapsed`))+`: `+i(n.modelValue?.elapsed?.toFixed(2))+`s `,1)])):o(``,!0),n.modelValue?.response?.trace_id?(g(),s(`p`,fn,[a(N,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`digitalhuman.name.traceId`))+`: `+i(n.modelValue?.response?.trace_id)+` `,1),a(E,{content:n.modelValue?.response?.trace_id},null,8,[`content`])])):o(``,!0)]),_:1})])):o(``,!0),n.isFailure?(g(),s(`div`,pn,[a(D,{closable:!1,class:`failure`},{template:m(()=>[a(ee,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`digitalhuman.name.failure`)),1)]),default:m(()=>[e(`p`,mn,[a(T,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`digitalhuman.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(E,{content:n.modelValue?.id},null,8,[`content`])]),n.failureReason?(g(),s(`p`,hn,[a(P,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`digitalhuman.name.failureReason`))+`: `+i(n.failureReason)+` `,1),a(E,{content:n.failureReason},null,8,[`content`])])):o(``,!0),n.modelValue?.elapsed?(g(),s(`p`,gn,[a(C,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`digitalhuman.name.elapsed`))+`: `+i(n.modelValue?.elapsed?.toFixed(2))+`s `,1)])):o(``,!0),n.modelValue?.response?.trace_id?(g(),s(`p`,_n,[a(N,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`digitalhuman.name.traceId`))+`: `+i(n.modelValue?.response?.trace_id)+` `,1),a(E,{content:n.modelValue?.response?.trace_id},null,8,[`content`])])):o(``,!0)]),_:1})])):o(``,!0)])])}var yn=v({name:`RecentPanel`,components:{TaskPreview:B(Wt,[[`render`,vn],[`__scopeId`,`data-v-342f1d6d`]]),NoTasks:re,BotPlaceholder:Le,ScrollList:te},props:{loading:{type:Boolean,default:!1}},emits:[`reach-top`],computed:{tasks(){return{...this.$store.state.digitalhuman?.tasks,items:this.$store.state.digitalhuman?.tasks?.items?.slice()}}},methods:{getScrollElement(){return this.$refs.scrollList?.getScrollElement?.()}}}),bn={key:0},xn={key:2,class:`w-full h-full flex items-center justify-center`};function Sn(e,t,n,r,i,c){let d=u(`bot-placeholder`),f=u(`task-preview`),_=u(`scroll-list`),v=u(`no-tasks`);return g(),s(l,null,[e.tasks?.items===void 0?(g(),s(`div`,bn,[a(d)])):e.tasks?.items?.length&&e.tasks?.items?.length>0?(g(),p(_,{key:1,ref:`scrollList`,class:`tasks h-full w-full overflow-y-auto`,loading:e.loading,onReachTop:t[0]||=t=>e.$emit(`reach-top`)},{default:m(()=>[(g(!0),s(l,null,h(e.tasks?.items,(e,t)=>(g(),p(f,{key:t,"model-value":e},null,8,[`model-value`]))),128))]),_:1},8,[`loading`])):o(``,!0),e.tasks?.items?.length===0?(g(),s(`div`,xn,[a(v)])):o(``,!0)],64)}var Cn=v({name:`DigitalHumanIndex`,components:{ConfigPanel:Ht,Layout:Ue,RecentPanel:B(yn,[[`render`,Sn]])},mixins:[ke],inject:[`initialized`],data(){return{job:0,loadingMore:!1,fetchingTasks:!1,walletTaskIds:[]}},computed:{applicationsLoading(){return this.$store.state.digitalhuman?.status?.getApplications===w.Request},tasksLoading(){return this.$store.state.digitalhuman?.status?.getTasks===w.Request||this.fetchingTasks},credential(){return this.$store.state.digitalhuman.credential},config(){return this.$store.state.digitalhuman.config},tasks(){return this.$store.state.digitalhuman.tasks},walletMode(){return W()&&U(`digitalhuman`).mode===`wallet`}},watch:{walletMode:{async handler(e,t){if(!(t===void 0||e===t)){if(this.$store.commit(`digitalhuman/setTasks`,void 0),e&&!this.job&&(this.job=window.setInterval(this.onGetTasks,5e3)),!e&&!this.credential?.token){window.clearInterval(this.job),this.job=0,await this.onScrollDown();return}await this.onGetTasks(),await this.onScrollDown()}}},initialized:{async handler(e){window.clearInterval(this.job),e&&(await this.onGetTasks(),await this.onScrollDown(),this.job||=window.setInterval(this.onGetTasks,5e3))},immediate:!0}},async mounted(){await this.onGetService()},async unmounted(){window.clearInterval(this.job)},methods:{async onReachTop(){await ae({tasks:this.tasks,getTasks:()=>this.tasks,loading:this.loadingMore,setLoading:e=>this.loadingMore=e,isBlocked:()=>this.tasksLoading||this.applicationsLoading,fetch:e=>this.onGetTasks({createdAtMax:e}),getScrollElement:()=>this.getTasksScrollElement()})},async onGetService(){await this.$store.dispatch(`digitalhuman/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(`digitalhuman/getTasks`,{limit:t,createdAtMin:n,createdAtMax:r,...this.walletMode&&!this.credential?.token?{mode:`x402`,ids:this.walletTaskIds}:{}})}finally{this.fetchingTasks=!1}},async onGenerate(e){if(!_e(this.uploadTracker,e=>this.$t(e),e=>T.warning(e)))return;let t;if(this.walletMode){let n=this.getWalletContext();if(!n){T.warning(this.$t(`common.x402Scenario.connectWalletFirst`));return}t=G.generate(e,{mode:`x402`,x402:{wallet:n,confirm:e=>this.confirmWalletPayment(e),identityToken:this.credential?.token}})}else{if(!De())return;let n=this.credential?.token;if(!n)return;t=G.generate(e,{token:n})}T.info(this.$t(`digitalhuman.message.startingTask`)),Ee(`digitalhuman`,t).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(`digitalhuman.message.startTaskSuccess`))}).catch(e=>{e instanceof V||((e?.response?.data)?.error?.code===`used_up`?T.error(this.$t(`digitalhuman.message.usedUp`)):this.walletMode?T.error(`${this.$t(`common.x402Scenario.paymentFailed`)} ${e?.message||``}`.trim()):T.error(this.$t(`digitalhuman.message.startTaskFailed`)))}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})},getWalletContext(){return H(this.$wallet)},async confirmWalletPayment(e){return q.confirm(this.$t(`common.x402Scenario.confirmPayment`,{amount:e.amountUsdc}),this.$t(`order.message.x402ConfirmTitle`),{confirmButtonText:this.$t(`order.message.x402WalletPayCta`),cancelButtonText:this.$t(`common.button.cancel`),type:`warning`}).then(()=>!0).catch(()=>!1)},getTasksScrollElement(){return this.$refs.recentPanel?.getScrollElement?.()}}});function wn(e,t,n,r,i,o){let s=u(`config-panel`),c=u(`recent-panel`),l=u(`layout`);return g(),p(l,null,{config:m(()=>[a(s,{onGenerate:e.onGenerate},null,8,[`onGenerate`])]),result:m(()=>[a(c,{ref:`recentPanel`,loading:e.loadingMore,onReachTop:e.onReachTop},null,8,[`loading`,`onReachTop`])]),_:1})}var Tn=B(Cn,[[`render`,wn]]);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,P as c,T as l,at as u,ht as d,it as f,j as p,mt 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-B6369cNi.js";import{t as x}from"./upload-KvU-H2Pn.js";import{t as S}from"./tooltip-3ZZ1q2k4.js";import{t as C}from"./alert-BprQRUmf.js";import{h as w,v as T}from"./models-BoFv4bCY.js";import{n as E,r as D}from"./radio-BNhFzeBO.js";import{n as O,t as k}from"./collapse-DuU6GFQ5.js";import{t as A}from"./drawer-DzFnbtlL.js";import{t as j}from"./input-number-BoZYCfN1.js";import{t as M}from"./progress-BuyYfFZn.js";import{t as N}from"./clock-_L5j4mM2.js";import{a as ee,i as P,n as te,o as ne,r as re,s as ie,t as ae}from"./pagination-COP0MNDx.js";import{t as oe}from"./info-GJzZVDF8.js";import{t as se}from"./music-2-FnictHi2.js";import{t as ce}from"./plus-Dd_HPxkY.js";import{t as F}from"./trash-2-DmWihZi_.js";import{t as I}from"./triangle-alert-CZwE_T9Q.js";import{t as le}from"./upload-CdoLg_bk.js";import{t as ue}from"./user-0NnJ74ST.js";import{t as de}from"./video-Ds6UnEus.js";import{t as L}from"./wand-sparkles-Ck5CAolV.js";import{Ar as fe,Dr as pe,Er as me,Tr as R,jr as he,wr as ge}from"./constants-DB14FZRU.js";import{G as _e,J as ve,K as ye,Na as z,O as B,Qr as V,V as be,Va as xe,Y as Se,_a as Ce,aa as we,an as Te,ei as H,gi as U,hi as W,hr as G,ki as Ee,mn as De,mr as Oe,pr as K,q as ke,wa as Ae,ya as q}from"./index-DOhge-pp.js";import{t as je}from"./CopyToClipboard-QFe7Cn4_.js";import{t as Me}from"./ReportButton-ChQMpn6o.js";import{t as J}from"./ImagePreview-Bb3mYw3m.js";import{n as Ne}from"./taskDrawerMixin-DyAUhFEq.js";import{t as Y}from"./Consumption-gbjpxptE.js";import{t as X}from"./AudioPreview-vjoUTGMO.js";import{t as Pe}from"./VideoPlayer-DZp6QESw.js";import{t as Z}from"./VideoPreview-CPsP_3Pp.js";import{t as Fe}from"./ScenarioPaymentMode-BlvIIqGE.js";import{t as Ie}from"./ApiCodeButton-C_dp8MuJ.js";import{t as Le}from"./BotPlaceholder-DKkxXInm.js";var Re=v({name:`LayoutDigitalHuman`,components:{UserIcon:ue,ElDrawer:A,ElButton:z},mixins:[Ne]}),ze={class:`main flex flex-row flex-1`},Be={class:`config w-[320px] flex-none h-full min-h-0 overflow-hidden flex flex-col bg-[var(--app-sidebar-bg)] border-r border-[var(--app-border-subtle)]`},Ve={class:`result h-full p-6 flex-1 flex flex-col min-w-0 overflow-x-hidden bg-[var(--app-content-bg)]`};function He(t,n,r,i,o,c){let l=u(`user-icon`),p=u(`el-button`),h=u(`el-drawer`);return g(),s(`div`,ze,[e(`div`,Be,[f(t.$slots,`config`,{},void 0,!0)]),e(`div`,Ve,[f(t.$slots,`result`,{},void 0,!0)]),d(a(p,{circle:``,class:`menu`,"aria-label":t.$t(`common.button.openMenu`),title:t.$t(`common.button.openMenu`),onClick:n[0]||=e=>t.drawer=!0},{default:m(()=>[a(l,{size:`1em`,"aria-hidden":`true`,focusable:`false`})]),_:1},8,[`aria-label`,`title`]),[[_,!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:m(()=>[f(t.$slots,`config`,{},void 0,!0)]),_:3},8,[`modelValue`])])}var Ue=B(Re,[[`render`,He],[`__scopeId`,`data-v-e912fd04`]]),We=v({name:`DigitalHumanMediaInput`,components:{AudioPreview:X,CloseIcon:Ce,ElButton:z,ElProgress:M,ElUpload:x,ImagePreview:J,MusicIcon:se,UploadIcon:le,VideoIcon:de,VideoPreview:Z},mixins:[Se,ve,ye,be],props:{kind:{type:String,required:!0},accept:{type:String,default:``},buttonText:{type:String,default:``},hint:{type:String,default:``}},emits:[`change`],data(){return{fileList:[],uploadUrl:we()+`/api/v1/files/`}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},hasFile(){return this.fileList.length>0}},methods:{uploadedUrl(e){return e?.response?.file_url},isPending(e){return e.status===`ready`||e.status===`uploading`},onExceed(e){let t=this.$refs.uploader;t?.clearFiles();let n=e[0];n&&(t?.handleStart?.(n),t?.submit?.())},onError(){T.error(this.$t(`digitalhuman.message.uploadError`))},onRemoveFile(e){let t=this.fileList.indexOf(e);t>=0&&this.fileList.splice(t,1),this.onChange()},onChange(){let e=this.fileList?.[0];this.$emit(`change`,e?this.uploadedUrl(e):void 0)}}}),Ge={class:`thumb`},Ke={key:2,class:`placeholder`},qe=[`title`],Je=[`aria-label`,`title`,`onClick`],Ye={key:0,class:`hint`};function Xe(c,d,f,h,_,v){let y=u(`image-preview`),b=u(`video-preview`),x=u(`audio-preview`),S=u(`el-progress`),C=u(`video-icon`),w=u(`music-icon`),T=u(`close-icon`),E=u(`upload-icon`),D=u(`el-button`),O=u(`el-upload`);return g(),p(O,{ref:`uploader`,"file-list":c.fileList,"onUpdate:fileList":d[0]||=e=>c.fileList=e,accept:c.accept,name:`file`,class:`media-input`,limit:1,multiple:!1,"before-upload":c.beforeUploadSizeGuard,action:c.uploadUrl,headers:c.headers,"on-exceed":c.onExceed,"on-error":c.onError,"on-success":c.onChange,"on-remove":c.onChange},{file:m(({file:r})=>[e(`div`,{class:n([`slot`,{pending:c.isPending(r)}])},[c.kind===`image`&&r.url?(g(),p(y,{key:0,url:r.url,name:r.name,percentage:r.percentage,onRemove:e=>c.onRemoveFile(r)},null,8,[`url`,`name`,`percentage`,`onRemove`])):(g(),s(l,{key:1},[e(`div`,Ge,[c.kind===`video`&&c.uploadedUrl(r)?(g(),p(b,{key:0,url:c.uploadedUrl(r)},null,8,[`url`])):c.kind===`audio`&&c.uploadedUrl(r)?(g(),p(x,{key:1,url:c.uploadedUrl(r)},null,8,[`url`])):(g(),s(`div`,Ke,[c.isPending(r)?(g(),p(S,{key:0,type:`circle`,"stroke-width":4,percentage:Math.round(r.percentage||0),width:34},null,8,[`percentage`])):c.kind===`video`?(g(),p(C,{key:1,size:`1em`,"aria-hidden":`true`,focusable:`false`})):(g(),p(w,{key:2,size:`1em`,"aria-hidden":`true`,focusable:`false`}))]))]),e(`span`,{class:`filename`,title:r.name},i(r.name),9,qe),e(`button`,{type:`button`,class:`remove`,"aria-label":c.$t(`common.button.close`),title:c.$t(`common.button.close`),onClick:t(e=>c.onRemoveFile(r),[`stop`])},[a(T,{size:`1em`,"aria-hidden":`true`,focusable:`false`})],8,Je)],64))],2)]),default:m(()=>[a(D,{round:``,type:`primary`,size:`small`,class:`btn`},{default:m(()=>[a(E,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(c.hasFile?c.$t(`digitalhuman.button.replace`):c.buttonText),1)]),_:1}),c.hint?(g(),s(`p`,Ye,i(c.hint),1)):o(``,!0)]),_:1},8,[`file-list`,`accept`,`before-upload`,`action`,`headers`,`on-exceed`,`on-error`,`on-success`,`on-remove`])}var Q=B(We,[[`render`,Xe],[`__scopeId`,`data-v-db0590a9`]]),Ze=20,Qe=e=>{let t=e;return!!t&&typeof t.voice_id==`string`&&!!t.voice_id&&typeof t.name==`string`},$=()=>{try{let e=JSON.parse(localStorage.getItem(`digitalhuman.voices`)||`[]`);return Array.isArray(e)?e.filter(Qe).map(e=>({voice_id:e.voice_id,name:e.name,lang:typeof e.lang==`string`?e.lang:`zh`,created_at:typeof e.created_at==`number`?e.created_at:0})):[]}catch{return[]}},$e=e=>{try{localStorage.setItem(he,JSON.stringify(e))}catch{}return e},et=e=>Qe(e)?$e([e,...$().filter(t=>t.voice_id!==e.voice_id)].slice(0,Ze)):$(),tt=e=>$e($().filter(t=>t.voice_id!==e)),nt=e=>`${e} ${$().length+1}`,rt=3e3,it=60,at=v({name:`DigitalHumanVoiceCloneDialog`,components:{Consumption:Y,ElAlert:C,ElButton:z,ElDialog:Ae,ElInput:xe,ElRadioButton:E,ElRadioGroup:D,MediaInput:Q},props:{visible:{type:Boolean,default:!1}},emits:[`update:visible`,`cloned`],data(){return{sampleUrl:void 0,name:``,lang:`zh`,cloning:!1,destroyed:!1,runId:0,DIGITALHUMAN_AUDIO_ACCEPT:R,DIGITALHUMAN_VOICE_CLONE_CONSUMPTION:2,voiceQuoteUsdc:void 0,voiceQuoteLoading:!1,quoteRunId:0}},computed:{service(){return this.$store.state.digitalhuman?.service},credentialToken(){return this.$store.state.digitalhuman?.credential?.token},walletMode(){return W()&&U(`digitalhuman`).mode===`wallet`},langOptions(){return ge.map(e=>({value:e,label:this.$t(`digitalhuman.name.lang_${e}`)}))}},watch:{walletMode(e){this.voiceQuoteUsdc=void 0,e&&this.visible&&this.sampleUrl&&this.refreshVoiceQuote()},visible(e){e?(this.sampleUrl=void 0,this.name=nt(this.$t(`digitalhuman.name.myVoice`)),this.lang=`zh`):(this.runId++,this.quoteRunId++,this.cloning=!1,this.voiceQuoteLoading=!1)}},beforeUnmount(){this.destroyed=!0,this.runId++,this.quoteRunId++},methods:{onVisible(e){this.cloning&&!e||this.$emit(`update:visible`,e)},onSampleChange(e){this.sampleUrl=e,this.voiceQuoteUsdc=void 0,e&&this.walletMode&&this.refreshVoiceQuote()},isStale(e){return this.destroyed||e!==this.runId},sleep(e){return new Promise(t=>setTimeout(t,e))},async refreshVoiceQuote(){if(!this.sampleUrl)return;let e=++this.quoteRunId;this.voiceQuoteLoading=!0;try{let t=await G.quoteVoice(this.voiceRequest());e===this.quoteRunId&&this.walletMode&&(this.voiceQuoteUsdc=t.amountUsdc)}catch(e){console.warn(`x402 voice quote failed`,e)}finally{e===this.quoteRunId&&(this.voiceQuoteLoading=!1)}},voiceRequest(){return Oe({audio_url:this.sampleUrl||``,lang:this.lang,name:this.name||void 0})},paymentOptions(){if(!this.walletMode)return this.credentialToken?{token:this.credentialToken}:void 0;let e=this.getWalletContext();if(!e){T.warning(this.$t(`common.x402Scenario.connectWalletFirst`));return}return{mode:`x402`,x402:{wallet:e,confirm:e=>this.confirmWalletPayment(e),identityToken:this.credentialToken}}},async onClone(){if(!this.sampleUrl)return;let e=this.paymentOptions();if(!e)return;let t=++this.runId;this.cloning=!0;try{let{data:n}=await G.cloneVoice(this.voiceRequest(),e);if(this.isStale(t))return;if(n?.voice_id){this.onCloned(n.voice_id);return}if(n?.task_id)await this.pollVoice(n.task_id,t);else throw Error(`no task`)}catch(e){if(e instanceof V)return;this.isStale(t)||T.error(this.$t(`digitalhuman.message.voiceCloneFailed`))}finally{this.isStale(t)||(this.cloning=!1)}},async pollVoice(e,t){for(let n=0;n<it;n++){if(this.isStale(t)||(await this.sleep(rt),this.isStale(t)))return;let n=this.credentialToken,{data:r}=await G.pollTask(e,n?{token:n}:{mode:`x402`});if(this.isStale(t))return;if(r?.voice_id){this.onCloned(r.voice_id);return}if(r?.state===`failed`)throw Error(`clone failed`)}throw Error(`timeout`)},getWalletContext(){return H(this.$wallet)},async confirmWalletPayment(e){return q.confirm(this.$t(`common.x402Scenario.confirmPayment`,{amount:e.amountUsdc}),this.$t(`order.message.x402ConfirmTitle`),{confirmButtonText:this.$t(`order.message.x402WalletPayCta`),cancelButtonText:this.$t(`common.button.cancel`),type:`warning`}).then(()=>!0).catch(()=>!1)},onCloned(e){et({voice_id:e,name:this.name||this.$t(`digitalhuman.name.myVoice`),lang:this.lang,created_at:Date.now()/1e3}),T.success(this.$t(`digitalhuman.message.voiceCloneSuccess`)),this.cloning=!1,this.$emit(`cloned`,e),this.$emit(`update:visible`,!1)}}}),ot={class:`text-xs text-[var(--el-text-color-secondary)] mb-3`},st={class:`field mb-3`},ct={class:`label`},lt={class:`field`},ut={class:`label`},dt={class:`text-xs mb-0`},ft={key:1,class:`mt-4 text-xs text-[var(--el-text-color-secondary)]`},pt={class:`footer`},mt={key:0,class:`cost text-xs text-[var(--el-text-color-secondary)]`};function ht(t,n,o,c,d,f){let _=u(`media-input`),v=u(`el-input`),y=u(`el-radio-button`),b=u(`el-radio-group`),x=u(`el-alert`),S=u(`consumption`),C=u(`el-button`),w=u(`el-dialog`);return g(),p(w,{"model-value":t.visible,title:t.$t(`digitalhuman.name.cloneVoice`),width:`440`,"align-center":``,"append-to-body":``,"close-on-click-modal":!t.cloning,"close-on-press-escape":!t.cloning,"onUpdate:modelValue":t.onVisible},{footer:m(()=>[e(`div`,pt,[t.walletMode?(g(),s(`span`,mt,i(t.voiceQuoteLoading?`…`:t.voiceQuoteUsdc?`${t.voiceQuoteUsdc} USDC`:t.$t(`common.x402Scenario.quoteBeforeSigning`)),1)):(g(),p(S,{key:1,value:t.DIGITALHUMAN_VOICE_CLONE_CONSUMPTION,service:t.service,class:`cost`},null,8,[`value`,`service`])),e(`div`,null,[a(C,{disabled:t.cloning,onClick:n[2]||=e=>t.onVisible(!1)},{default:m(()=>[r(i(t.$t(`common.button.cancel`)),1)]),_:1},8,[`disabled`]),a(C,{type:`primary`,loading:t.cloning,disabled:!t.sampleUrl||t.cloning,onClick:t.onClone},{default:m(()=>[r(i(t.$t(`digitalhuman.button.startClone`)),1)]),_:1},8,[`loading`,`disabled`,`onClick`])])])]),default:m(()=>[e(`p`,ot,i(t.$t(`digitalhuman.message.voiceCloneHint`)),1),a(_,{kind:`audio`,accept:t.DIGITALHUMAN_AUDIO_ACCEPT,"button-text":t.$t(`digitalhuman.button.uploadSample`),hint:t.$t(`digitalhuman.message.audioHint`),class:`mb-4`,onChange:t.onSampleChange},null,8,[`accept`,`button-text`,`hint`,`onChange`]),e(`div`,st,[e(`span`,ct,i(t.$t(`digitalhuman.name.voiceName`)),1),a(v,{modelValue:t.name,"onUpdate:modelValue":n[0]||=e=>t.name=e,class:`control`,placeholder:t.$t(`digitalhuman.placeholder.voiceName`)},null,8,[`modelValue`,`placeholder`])]),e(`div`,lt,[e(`span`,ut,i(t.$t(`digitalhuman.name.voiceLang`)),1),a(b,{modelValue:t.lang,"onUpdate:modelValue":n[1]||=e=>t.lang=e,class:`control`},{default:m(()=>[(g(!0),s(l,null,h(t.langOptions,e=>(g(),p(y,{key:e.value,value:e.value},{default:m(()=>[r(i(e.label),1)]),_:2},1032,[`value`]))),128))]),_:1},8,[`modelValue`])]),t.cloning?(g(),p(x,{key:0,closable:!1,type:`info`,class:`mt-4`},{default:m(()=>[e(`p`,dt,i(t.$t(`digitalhuman.message.voiceCloneRunning`)),1)]),_:1})):(g(),s(`p`,ft,i(t.$t(`digitalhuman.message.voiceStoredLocally`)),1))]),_:1},8,[`model-value`,`title`,`close-on-click-modal`,`close-on-press-escape`,`onUpdate:modelValue`])}var gt=v({name:`DigitalHumanTimbreSelector`,components:{AddIcon:ce,DeleteIcon:F,ElButton:z,ElOption:b,ElSelect:y,VoiceCloneDialog:B(at,[[`render`,ht],[`__scopeId`,`data-v-037c810e`]])},props:{modelValue:{type:String,default:void 0}},emits:[`update:modelValue`],data(){return{voices:$(),dialogVisible:!1}},mounted(){this.modelValue&&!this.voices.some(e=>e.voice_id===this.modelValue)&&this.$emit(`update:modelValue`,void 0)},methods:{labelFor(e){let t=this.$t(`digitalhuman.name.lang_${e.lang}`);return t.startsWith(`digitalhuman.`)?e.name:`${e.name} · ${t}`},onCloned(e){this.voices=$(),this.$emit(`update:modelValue`,e)},onRemove(e){this.voices=tt(e),this.modelValue===e&&this.$emit(`update:modelValue`,void 0)}}}),_t={class:`row`},vt={class:`label`},yt={class:`option`},bt={class:`option-name`},xt=[`aria-label`,`title`,`onClick`],St={class:`empty`};function Ct(n,o,d,f,_,v){let y=u(`delete-icon`),b=u(`el-option`),x=u(`el-select`),S=u(`add-icon`),C=u(`el-button`),w=u(`voice-clone-dialog`);return g(),s(`div`,null,[e(`div`,_t,[e(`span`,vt,i(n.$t(`digitalhuman.name.timbre`)),1),a(x,{"model-value":n.modelValue,class:`control`,placeholder:n.$t(`digitalhuman.placeholder.pickTimbre`),"onUpdate:modelValue":o[0]||=e=>n.$emit(`update:modelValue`,e)},c({default:m(()=>[(g(!0),s(l,null,h(n.voices,r=>(g(),p(b,{key:r.voice_id,label:n.labelFor(r),value:r.voice_id},{default:m(()=>[e(`span`,yt,[e(`span`,bt,i(n.labelFor(r)),1),e(`button`,{type:`button`,class:`option-remove`,"aria-label":n.$t(`common.button.delete`),title:n.$t(`common.button.delete`),onClick:t(e=>n.onRemove(r.voice_id),[`stop`])},[a(y,{size:`1em`,"aria-hidden":`true`,focusable:`false`})],8,xt)])]),_:2},1032,[`label`,`value`]))),128))]),_:2},[n.voices.length===0?{name:`empty`,fn:m(()=>[e(`p`,St,i(n.$t(`digitalhuman.message.noVoiceYet`)),1)]),key:`0`}:void 0]),1032,[`model-value`,`placeholder`])]),a(C,{size:`small`,text:``,type:`primary`,class:`clone`,onClick:o[1]||=e=>n.dialogVisible=!0},{default:m(()=>[a(S,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`digitalhuman.button.cloneNewVoice`)),1)]),_:1}),a(w,{visible:n.dialogVisible,"onUpdate:visible":o[2]||=e=>n.dialogVisible=e,onCloned:n.onCloned},null,8,[`visible`,`onCloned`])])}var wt=v({name:`ConfigPanel`,components:{Consumption:Y,ElButton:z,ElCollapse:k,ElCollapseItem:O,ElInputNumber:j,ElRadioButton:E,ElRadioGroup:D,InfoIcon:ee,MagicIcon:L,MediaInput:Q,PromptTextarea:P,TimbreSelector:B(gt,[[`render`,Ct],[`__scopeId`,`data-v-e191cc56`]]),WarningIcon:I,ScenarioPaymentMode:Fe},emits:[`generate`],data(){return{faceMode:`video`,voiceMode:`text`,advancedOpen:[],DIGITALHUMAN_VIDEO_ACCEPT:fe,DIGITALHUMAN_IMAGE_ACCEPT:pe,DIGITALHUMAN_AUDIO_ACCEPT:R,quoteTimer:0,quoteRunId:0}},computed:{config(){return this.$store.state.digitalhuman?.config},service(){return this.$store.state.digitalhuman?.service},consumption(){return Te(this.config,this.service?.cost)},missing(){let e=[];return(this.faceMode===`video`?this.config?.video_url:this.config?.image_url)||e.push({key:`face`,message:this.$t(`digitalhuman.message.missingFace`)}),this.voiceMode===`text`?(this.config?.text?.trim()||e.push({key:`text`,message:this.$t(`digitalhuman.message.missingText`)}),this.config?.voice_id||e.push({key:`timbre`,message:this.$t(`digitalhuman.message.missingTimbre`)})):this.config?.audio_url||e.push({key:`audio`,message:this.$t(`digitalhuman.message.missingAudio`)}),e},text:{get(){return this.config?.text},set(e){this.update({text:e})}},voiceId:{get(){return this.config?.voice_id},set(e){this.update({voice_id:e})}},speed:{get(){return this.config?.speed??1},set(e){this.update({speed:e})}},walletMode(){return W()&&U(`digitalhuman`).mode===`wallet`}},watch:{walletMode:{handler(e){e&&this.scheduleQuote()},immediate:!0},config:{handler(){this.walletMode&&this.scheduleQuote()},deep:!0},faceMode(){this.walletMode&&this.scheduleQuote()},voiceMode(){this.walletMode&&this.scheduleQuote()}},mounted(){this.config?.image_url&&!this.config?.video_url&&(this.faceMode=`photo`),this.config?.audio_url&&(this.voiceMode=`audio`)},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(`digitalhuman`),t=++this.quoteRunId;e.quoteLoading=!0,e.quoteUsdc=void 0;try{let n=K(this.config,this.faceMode,this.voiceMode),r=await G.quote(n);t===this.quoteRunId&&e.mode===`wallet`&&(e.quoteUsdc=r.amountUsdc)}catch(e){console.warn(`x402 quote failed`,e)}finally{t===this.quoteRunId&&(e.quoteLoading=!1)}},isMissing(e){return this.missing.some(t=>t.key===e)},update(e){this.$store.commit(`digitalhuman/setConfig`,{...this.config,...e})},onFaceModeChange(e){this.update(e===`video`?{image_url:void 0}:{video_url:void 0})},onVoiceModeChange(e){this.update(e===`audio`?{text:void 0,voice_id:void 0}:{audio_url:void 0})},onFaceVideoChange(e){this.update({video_url:e})},onFacePhotoChange(e){this.update({image_url:e})},onAudioChange(e){this.update({audio_url:e})},onGenerate(){let e=this.missing[0];if(e){T.warning(e.message);let t=e.key===`face`?`face`:`voice`;this.$refs[t]?.scrollIntoView?.({behavior:`smooth`,block:`center`});return}this.$emit(`generate`,K(this.config,this.faceMode,this.voiceMode))}}}),Tt={class:`flex flex-col h-full`},Et={class:`flex-1 overflow-y-auto p-5`},Dt={ref:`face`,class:`field-block mb-6`},Ot={class:`field-head`},kt={class:`field-title font-bold`},At={key:0,class:`required-badge`},jt={ref:`voice`,class:`field-block mb-6`},Mt={class:`field-head`},Nt={class:`field-title font-bold`},Pt={key:0,class:`required-badge`},Ft={class:`field-row`},It={class:`field-head`},Lt={class:`field-title font-bold`},Rt={class:`flex flex-col items-center justify-center px-5 pb-5`},zt={key:0,class:`hint-missing`},Bt={class:`hint-eta`};function Vt(t,n,c,d,f,h){let _=u(`info-icon`),v=u(`el-radio-button`),y=u(`el-radio-group`),b=u(`media-input`),x=u(`prompt-textarea`),S=u(`timbre-selector`),C=u(`el-input-number`),w=u(`el-collapse-item`),T=u(`el-collapse`),E=u(`warning-icon`),D=u(`scenario-payment-mode`),O=u(`consumption`),k=u(`magic-icon`),A=u(`el-button`);return g(),s(`div`,Tt,[e(`div`,Et,[e(`section`,Dt,[e(`div`,Ot,[e(`h2`,kt,i(t.$t(`digitalhuman.name.step1`)),1),t.isMissing(`face`)?(g(),s(`span`,At,i(t.$t(`digitalhuman.name.required`)),1)):o(``,!0),a(_,{content:t.$t(`digitalhuman.description.step1`),class:`ml-1`},null,8,[`content`])]),a(y,{modelValue:t.faceMode,"onUpdate:modelValue":n[0]||=e=>t.faceMode=e,class:`mode-switch mb-3`,onChange:t.onFaceModeChange},{default:m(()=>[a(v,{value:`video`},{default:m(()=>[r(i(t.$t(`digitalhuman.name.faceModeVideo`)),1)]),_:1}),a(v,{value:`photo`},{default:m(()=>[r(i(t.$t(`digitalhuman.name.faceModePhoto`)),1)]),_:1})]),_:1},8,[`modelValue`,`onChange`]),t.faceMode===`video`?(g(),p(b,{key:0,kind:`video`,accept:t.DIGITALHUMAN_VIDEO_ACCEPT,"button-text":t.$t(`digitalhuman.button.uploadFaceVideo`),hint:t.$t(`digitalhuman.message.faceVideoHint`),onChange:t.onFaceVideoChange},null,8,[`accept`,`button-text`,`hint`,`onChange`])):(g(),p(b,{key:1,kind:`image`,accept:t.DIGITALHUMAN_IMAGE_ACCEPT,"button-text":t.$t(`digitalhuman.button.uploadFacePhoto`),hint:t.$t(`digitalhuman.message.facePhotoHint`),onChange:t.onFacePhotoChange},null,8,[`accept`,`button-text`,`hint`,`onChange`]))],512),e(`section`,jt,[e(`div`,Mt,[e(`h2`,Nt,i(t.$t(`digitalhuman.name.step2`)),1),t.isMissing(`text`)||t.isMissing(`timbre`)||t.isMissing(`audio`)?(g(),s(`span`,Pt,i(t.$t(`digitalhuman.name.required`)),1)):o(``,!0),a(_,{content:t.$t(`digitalhuman.description.step2`),class:`ml-1`},null,8,[`content`])]),a(y,{modelValue:t.voiceMode,"onUpdate:modelValue":n[1]||=e=>t.voiceMode=e,class:`mode-switch mb-3`,onChange:t.onVoiceModeChange},{default:m(()=>[a(v,{value:`text`},{default:m(()=>[r(i(t.$t(`digitalhuman.name.voiceModeText`)),1)]),_:1}),a(v,{value:`audio`},{default:m(()=>[r(i(t.$t(`digitalhuman.name.voiceModeAudio`)),1)]),_:1})]),_:1},8,[`modelValue`,`onChange`]),t.voiceMode===`text`?(g(),s(l,{key:0},[a(x,{modelValue:t.text,"onUpdate:modelValue":n[2]||=e=>t.text=e,class:`mb-3`,title:t.$t(`digitalhuman.name.speech`),placeholder:t.$t(`digitalhuman.placeholder.speech`),"min-rows":5,"max-rows":14},null,8,[`modelValue`,`title`,`placeholder`]),a(S,{modelValue:t.voiceId,"onUpdate:modelValue":n[3]||=e=>t.voiceId=e},null,8,[`modelValue`])],64)):(g(),p(b,{key:1,kind:`audio`,accept:t.DIGITALHUMAN_AUDIO_ACCEPT,"button-text":t.$t(`digitalhuman.button.uploadSpeechAudio`),hint:t.$t(`digitalhuman.message.audioHint`),onChange:t.onAudioChange},null,8,[`accept`,`button-text`,`hint`,`onChange`]))],512),a(T,{modelValue:t.advancedOpen,"onUpdate:modelValue":n[5]||=e=>t.advancedOpen=e,class:`advanced`},{default:m(()=>[a(w,{name:`advanced`,title:t.$t(`digitalhuman.name.advanced`)},{default:m(()=>[e(`div`,Ft,[e(`div`,It,[e(`h2`,Lt,i(t.$t(`digitalhuman.name.speed`)),1),a(_,{content:t.$t(`digitalhuman.description.speed`),class:`ml-1`},null,8,[`content`])]),a(C,{modelValue:t.speed,"onUpdate:modelValue":n[4]||=e=>t.speed=e,class:`field-control`,min:.5,max:2,step:.1,precision:1,"controls-position":`right`},null,8,[`modelValue`])])]),_:1},8,[`title`])]),_:1},8,[`modelValue`])]),e(`div`,Rt,[t.missing.length>0?(g(),s(`p`,zt,[a(E,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.missing[0].message),1)])):o(``,!0),a(D,{scenario:`digitalhuman`}),t.walletMode?o(``,!0):(g(),p(O,{key:1,value:t.consumption,service:t.service},null,8,[`value`,`service`])),a(A,{type:`primary`,class:`btn w-full`,round:``,onClick:t.onGenerate},{default:m(()=>[a(k,{class:`mr-2`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`digitalhuman.button.generateVideo`)),1)]),_:1},8,[`onClick`]),e(`p`,Bt,i(t.$t(`digitalhuman.message.eta`)),1)])])}var Ht=B(wt,[[`render`,Vt],[`__scopeId`,`data-v-30f81f39`]]),Ut=[`.jpg`,`.jpeg`,`.png`,`.webp`,`.bmp`,`.gif`],Wt=v({name:`TaskPreview`,components:{ApiCodeButton:Ie,AudioPreview:X,ChannelIcon:ie,CopyToClipboard:je,DeleteIcon:F,ElAlert:C,ElButton:z,ElProgress:M,ElTooltip:S,FullscreenIcon:ne,ImagePreview:J,InfoIcon:oe,MagicIcon:L,ReportButton:Me,TimeIcon:N,VideoPlayer:Pe,VideoPreview:Z,WarningIcon:I},props:{modelValue:{type:Object,required:!0}},computed:{status(){return this.modelValue?.status||this.modelValue?.response?.state||`pending`},isSuccess(){return[`succeed`,`succeeded`].includes(this.status)||!!this.modelValue?.response?.video_url},isFailure(){return[`failed`,`dead`].includes(this.status)||this.modelValue?.response?.success===!1},isTerminal(){return this.isSuccess||this.isFailure},videoUrl(){return this.modelValue?.response?.video_url},progressPct(){let e=this.modelValue?.response?.progress;return typeof e==`number`?e:0},voiceLabel(){return this.modelValue?.request?.audio_url?this.$t(`digitalhuman.name.audioDriven`):this.$t(`digitalhuman.name.textDriven`)},faceUrl(){return this.modelValue?.request?.video_url||this.modelValue?.request?.image_url},isPhotoFace(){if(this.modelValue?.request?.image_url)return!0;let e=(this.faceUrl||``).split(`?`)[0].toLowerCase();return Ut.some(t=>e.endsWith(t))},audioUrl(){return this.modelValue?.request?.audio_url},outputSize(){let{width:e,height:t}=this.modelValue?.response||{};return e&&t?`${e}×${t}`:void 0},etaText(){let e=parseFloat((this.modelValue?.created_at||``).toString());if(!e)return;let t=me-(Date.now()/1e3-e);return t<=60?this.$t(`digitalhuman.message.etaAlmostDone`):this.$t(`digitalhuman.message.etaRemaining`,{minutes:Math.ceil(t/60)})},statusLabel(){let e=`digitalhuman.status.${this.status}`,t=this.$t(e);return t===e?this.$t(`digitalhuman.status.processing`):t},failureReason(){let e=this.modelValue?.response?.error;if(e)return typeof e==`string`?e:e?.message}},methods:{async onDelete(){let e=this.modelValue?.id;if(e){try{await q.confirm(this.$t(`common.message.deleteTaskConfirm`),this.$t(`common.button.delete`),{type:`warning`,confirmButtonText:this.$t(`common.button.delete`),cancelButtonText:this.$t(`common.button.cancel`),confirmButtonClass:`el-button--danger`})}catch{return}try{await this.$store.dispatch(`digitalhuman/deleteTask`,{id:e}),T.success(this.$t(`common.message.deleteTaskSuccess`))}catch{T.error(this.$t(`common.message.deleteTaskFailed`))}}},onDownload(e,t){e?.stopPropagation(),window.open(t,`_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={class:`prompt mt-2`},en={key:0},tn={key:0,class:`content`},nn={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},rn={key:0,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},an={class:`text-[var(--el-text-color-regular)] text-xs mb-0`},on={key:1,class:`content`},sn={class:`operations mt-2`},cn={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={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},dn={key:2,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},fn={key:3,class:`text-[var(--el-text-color-regular)] text-xs mb-0`},pn={key:2,class:`content`},mn={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},hn={key:0,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},gn={key:1,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},_n={key:2,class:`text-[var(--el-text-color-regular)] text-xs mb-0`};function vn(n,c,l,d,f,h){let _=u(`capability-presentation`),v=u(`delete-icon`),y=u(`el-tooltip`),b=u(`image-preview`),x=u(`video-preview`),S=u(`audio-preview`),C=u(`time-icon`),w=u(`el-progress`),T=u(`magic-icon`),E=u(`copy-to-clipboard`),D=u(`el-alert`),O=u(`video-player`),k=u(`el-button`),A=u(`api-code-button`),j=u(`report-button`),M=u(`fullscreen-icon`),N=u(`channel-icon`),ee=u(`warning-icon`),P=u(`info-icon`);return g(),s(`div`,Gt,[e(`div`,Kt,[a(_,{capability:`digitalhuman`,part:`avatar`,class:`avatar`})]),e(`div`,qt,[e(`div`,Jt,[a(_,{capability:`digitalhuman`,part:`name`}),e(`span`,Yt,i(n.$dayjs.format(``+new Date(parseFloat((n.modelValue?.created_at||``).toString())*1e3))),1),a(y,{effect:`dark`,content:n.$t(`common.button.delete`),placement:`top`},{default:m(()=>[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(v,{size:`1em`,"aria-hidden":`true`,focusable:`false`})],8,Xt)):o(``,!0)]),_:1},8,[`content`])]),e(`div`,Zt,[n.faceUrl||n.audioUrl?(g(),s(`div`,Qt,[n.faceUrl&&n.isPhotoFace?(g(),p(b,{key:0,url:n.faceUrl,name:`face`,closable:!1},null,8,[`url`])):n.faceUrl?(g(),p(x,{key:1,url:n.faceUrl,name:`face`},null,8,[`url`])):o(``,!0),n.audioUrl?(g(),p(S,{key:2,url:n.audioUrl,name:`audio`},null,8,[`url`])):o(``,!0)])):o(``,!0),e(`p`,$t,[r(i(n.modelValue?.request?.text||n.voiceLabel)+` `,1),n.isTerminal?o(``,!0):(g(),s(`span`,en,` - (`+i(n.statusLabel)+`) `,1))])]),n.isTerminal?o(``,!0):(g(),s(`div`,tn,[a(D,{closable:!1,class:`info-state`},{default:m(()=>[e(`p`,nn,[a(C,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.statusLabel),1)]),a(w,{percentage:n.progressPct,"stroke-width":6,class:`mb-2`},null,8,[`percentage`]),n.etaText?(g(),s(`p`,rn,[a(C,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`digitalhuman.name.etaLabel`))+`: `+i(n.etaText),1)])):o(``,!0),e(`p`,an,[a(T,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`digitalhuman.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(E,{content:n.modelValue?.id},null,8,[`content`])])]),_:1})])),n.isSuccess?(g(),s(`div`,on,[n.videoUrl?(g(),p(O,{key:0,src:n.videoUrl},null,8,[`src`])):o(``,!0),e(`div`,sn,[n.videoUrl?(g(),p(k,{key:0,type:`info`,size:`small`,class:`btn-action`,onClick:c[1]||=e=>n.onDownload(e,n.videoUrl)},{default:m(()=>[r(i(n.$t(`digitalhuman.button.download`)),1)]),_:1})):o(``,!0),a(A,{path:`/digital-human/videos`,body:n.modelValue?.request},null,8,[`body`]),a(j,{service:`digitalhuman`,"target-id":n.modelValue?.id,snapshot:{text:n.modelValue?.request?.text}},null,8,[`target-id`,`snapshot`])]),a(D,{closable:!1,class:`mt-2 success`},{default:m(()=>[n.modelValue?.response?.duration?(g(),s(`p`,cn,[a(C,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`digitalhuman.name.duration`))+`: `+i(n.modelValue?.response?.duration?.toFixed(1))+`s `,1)])):o(``,!0),n.outputSize?(g(),s(`p`,ln,[a(M,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`digitalhuman.name.outputSize`))+`: `+i(n.outputSize),1)])):o(``,!0),e(`p`,un,[a(T,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`digitalhuman.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(E,{content:n.modelValue?.id},null,8,[`content`])]),n.modelValue?.elapsed?(g(),s(`p`,dn,[a(C,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`digitalhuman.name.elapsed`))+`: `+i(n.modelValue?.elapsed?.toFixed(2))+`s `,1)])):o(``,!0),n.modelValue?.response?.trace_id?(g(),s(`p`,fn,[a(N,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`digitalhuman.name.traceId`))+`: `+i(n.modelValue?.response?.trace_id)+` `,1),a(E,{content:n.modelValue?.response?.trace_id},null,8,[`content`])])):o(``,!0)]),_:1})])):o(``,!0),n.isFailure?(g(),s(`div`,pn,[a(D,{closable:!1,class:`failure`},{template:m(()=>[a(ee,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`digitalhuman.name.failure`)),1)]),default:m(()=>[e(`p`,mn,[a(T,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`digitalhuman.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(E,{content:n.modelValue?.id},null,8,[`content`])]),n.failureReason?(g(),s(`p`,hn,[a(P,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`digitalhuman.name.failureReason`))+`: `+i(n.failureReason)+` `,1),a(E,{content:n.failureReason},null,8,[`content`])])):o(``,!0),n.modelValue?.elapsed?(g(),s(`p`,gn,[a(C,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`digitalhuman.name.elapsed`))+`: `+i(n.modelValue?.elapsed?.toFixed(2))+`s `,1)])):o(``,!0),n.modelValue?.response?.trace_id?(g(),s(`p`,_n,[a(N,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`digitalhuman.name.traceId`))+`: `+i(n.modelValue?.response?.trace_id)+` `,1),a(E,{content:n.modelValue?.response?.trace_id},null,8,[`content`])])):o(``,!0)]),_:1})])):o(``,!0)])])}var yn=v({name:`RecentPanel`,components:{TaskPreview:B(Wt,[[`render`,vn],[`__scopeId`,`data-v-342f1d6d`]]),NoTasks:re,BotPlaceholder:Le,ScrollList:te},props:{loading:{type:Boolean,default:!1}},emits:[`reach-top`],computed:{tasks(){return{...this.$store.state.digitalhuman?.tasks,items:this.$store.state.digitalhuman?.tasks?.items?.slice()}}},methods:{getScrollElement(){return this.$refs.scrollList?.getScrollElement?.()}}}),bn={key:0},xn={key:2,class:`w-full h-full flex items-center justify-center`};function Sn(e,t,n,r,i,c){let d=u(`bot-placeholder`),f=u(`task-preview`),_=u(`scroll-list`),v=u(`no-tasks`);return g(),s(l,null,[e.tasks?.items===void 0?(g(),s(`div`,bn,[a(d)])):e.tasks?.items?.length&&e.tasks?.items?.length>0?(g(),p(_,{key:1,ref:`scrollList`,class:`tasks h-full w-full overflow-y-auto`,loading:e.loading,onReachTop:t[0]||=t=>e.$emit(`reach-top`)},{default:m(()=>[(g(!0),s(l,null,h(e.tasks?.items,(e,t)=>(g(),p(f,{key:t,"model-value":e},null,8,[`model-value`]))),128))]),_:1},8,[`loading`])):o(``,!0),e.tasks?.items?.length===0?(g(),s(`div`,xn,[a(v)])):o(``,!0)],64)}var Cn=v({name:`DigitalHumanIndex`,components:{ConfigPanel:Ht,Layout:Ue,RecentPanel:B(yn,[[`render`,Sn]])},mixins:[ke],inject:[`initialized`],data(){return{job:0,loadingMore:!1,fetchingTasks:!1,walletTaskIds:[]}},computed:{applicationsLoading(){return this.$store.state.digitalhuman?.status?.getApplications===w.Request},tasksLoading(){return this.$store.state.digitalhuman?.status?.getTasks===w.Request||this.fetchingTasks},credential(){return this.$store.state.digitalhuman.credential},config(){return this.$store.state.digitalhuman.config},tasks(){return this.$store.state.digitalhuman.tasks},walletMode(){return W()&&U(`digitalhuman`).mode===`wallet`}},watch:{walletMode:{async handler(e,t){if(!(t===void 0||e===t)){if(this.$store.commit(`digitalhuman/setTasks`,void 0),e&&!this.job&&(this.job=window.setInterval(this.onGetTasks,5e3)),!e&&!this.credential?.token){window.clearInterval(this.job),this.job=0,await this.onScrollDown();return}await this.onGetTasks(),await this.onScrollDown()}}},initialized:{async handler(e){window.clearInterval(this.job),e&&(await this.onGetTasks(),await this.onScrollDown(),this.job||=window.setInterval(this.onGetTasks,5e3))},immediate:!0}},async mounted(){await this.onGetService()},async unmounted(){window.clearInterval(this.job)},methods:{async onReachTop(){await ae({tasks:this.tasks,getTasks:()=>this.tasks,loading:this.loadingMore,setLoading:e=>this.loadingMore=e,isBlocked:()=>this.tasksLoading||this.applicationsLoading,fetch:e=>this.onGetTasks({createdAtMax:e}),getScrollElement:()=>this.getTasksScrollElement()})},async onGetService(){await this.$store.dispatch(`digitalhuman/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(`digitalhuman/getTasks`,{limit:t,createdAtMin:n,createdAtMax:r,...this.walletMode&&!this.credential?.token?{mode:`x402`,ids:this.walletTaskIds}:{}})}finally{this.fetchingTasks=!1}},async onGenerate(e){if(!_e(this.uploadTracker,e=>this.$t(e),e=>T.warning(e)))return;let t;if(this.walletMode){let n=this.getWalletContext();if(!n){T.warning(this.$t(`common.x402Scenario.connectWalletFirst`));return}t=G.generate(e,{mode:`x402`,x402:{wallet:n,confirm:e=>this.confirmWalletPayment(e),identityToken:this.credential?.token}})}else{if(!De())return;let n=this.credential?.token;if(!n)return;t=G.generate(e,{token:n})}T.info(this.$t(`digitalhuman.message.startingTask`)),Ee(`digitalhuman`,t).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(`digitalhuman.message.startTaskSuccess`))}).catch(e=>{e instanceof V||((e?.response?.data)?.error?.code===`used_up`?T.error(this.$t(`digitalhuman.message.usedUp`)):this.walletMode?T.error(`${this.$t(`common.x402Scenario.paymentFailed`)} ${e?.message||``}`.trim()):T.error(this.$t(`digitalhuman.message.startTaskFailed`)))}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})},getWalletContext(){return H(this.$wallet)},async confirmWalletPayment(e){return q.confirm(this.$t(`common.x402Scenario.confirmPayment`,{amount:e.amountUsdc}),this.$t(`order.message.x402ConfirmTitle`),{confirmButtonText:this.$t(`order.message.x402WalletPayCta`),cancelButtonText:this.$t(`common.button.cancel`),type:`warning`}).then(()=>!0).catch(()=>!1)},getTasksScrollElement(){return this.$refs.recentPanel?.getScrollElement?.()}}});function wn(e,t,n,r,i,o){let s=u(`config-panel`),c=u(`recent-panel`),l=u(`layout`);return g(),p(l,null,{config:m(()=>[a(s,{onGenerate:e.onGenerate},null,8,[`onGenerate`])]),result:m(()=>[a(c,{ref:`recentPanel`,loading:e.loadingMore,onReachTop:e.onReachTop},null,8,[`loading`,`onReachTop`])]),_:1})}var Tn=B(Cn,[[`render`,wn]]);export{Tn as default};
|