@acedatacloud/nexior 3.380.8 → 3.381.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/assets/{ApiCodeButton-C5tBSXac.js → ApiCodeButton-C7SPMZJ4.js} +1 -1
- package/dist/assets/{ApiCodeDialog-tzrLt7MW.js → ApiCodeDialog-B0m5_btu.js} +2 -2
- package/dist/assets/{Artifacts-Bq-ESji9.js → Artifacts-C935GA3p.js} +1 -1
- package/dist/assets/{AskUserQuestionCard-BHRutjE4.js → AskUserQuestionCard-Qi57dVV7.js} +1 -1
- package/dist/assets/{AudioPreview-fEc2Zd45.js → AudioPreview-h4P2x5TL.js} +1 -1
- package/dist/assets/{Auth-D0qonxcj.js → Auth-DW29k_jE.js} +1 -1
- package/dist/assets/{Bare-gBTQBYOF.js → Bare-DvCKQeEu.js} +1 -1
- package/dist/assets/{BotPlaceholder-7Rci0gLD.js → BotPlaceholder-BBI_oSgE.js} +1 -1
- package/dist/assets/{BottomFooter-CXfDJs6K.js → BottomFooter-afn-jz6v.js} +1 -1
- package/dist/assets/{BrowseConnectors-jbUHMESo.js → BrowseConnectors-G0r_jByZ.js} +1 -1
- package/dist/assets/{BrowserPairingDialog-BLbseBCp.js → BrowserPairingDialog-BJgs6qLU.js} +1 -1
- package/dist/assets/{Callback-DQ7s2YUT.js → Callback-DveJm8vT.js} +1 -1
- package/dist/assets/{CodeSnippet-DtFkobrj.js → CodeSnippet-BFdyqpEG.js} +1 -1
- package/dist/assets/{Console-DqcMlqeQ.js → Console-C21WF1jP.js} +1 -1
- package/dist/assets/{Conversation-CxIjxIV3.js → Conversation-D0W5uzHA.js} +1 -1
- package/dist/assets/Conversation-E2vMcQr8.js +2 -0
- package/dist/assets/{CopyToClipboard-CIB9LY9Y.js → CopyToClipboard-CdXnxkau.js} +1 -1
- package/dist/assets/Detail-DDl6m0vE.js +2 -0
- package/dist/assets/{Detail-CgTGSka5.css → Detail-DixHmQzJ.css} +1 -1
- package/dist/assets/Extra-C6que9Av.js +1 -0
- package/dist/assets/{FilePreview-_7yUZ2m8.js → FilePreview-BpPQ5OAR.js} +1 -1
- package/dist/assets/{Hailuo-Gr9P4KZh.js → Hailuo-BeRIbNr2.js} +1 -1
- package/dist/assets/{History-BdECMOXE.js → History-BsN3wekq.js} +1 -1
- package/dist/assets/{ImagePreview-Dq6UkYX8.js → ImagePreview-BOxOkmuq.js} +1 -1
- package/dist/assets/{ImageWrapper-C9nEUyQX.js → ImageWrapper-vYpJPO89.js} +1 -1
- package/dist/assets/{Index-DF_YSy5V.js → Index-0oHw41Oc.js} +1 -1
- package/dist/assets/{Index-FNGDlXFq.js → Index-1U2bTpbF.js} +1 -1
- package/dist/assets/{Index-CWWsa0Lz.js → Index-7IkF_rpP.js} +1 -1
- package/dist/assets/{Index-CGU29OIG.js → Index-B-Mkt2ur.js} +1 -1
- package/dist/assets/Index-BPh5XDKu.js +1 -0
- package/dist/assets/{Index-DxgRmJSg.js → Index-BWgi01SX.js} +1 -1
- package/dist/assets/{Index-EYQ1NKQW.js → Index-Ba4WWol0.js} +2 -2
- package/dist/assets/{Index-BS1nLceI.js → Index-BdjKyfS1.js} +1 -1
- package/dist/assets/Index-BiHjCG2i.js +1 -0
- package/dist/assets/{Index-DfJKnw20.js → Index-CB-KJcln.js} +1 -1
- package/dist/assets/{Index-DN7liprI.js → Index-CI-2_oM6.js} +2 -2
- package/dist/assets/Index-CI8i6hTW.js +1 -0
- package/dist/assets/{Index-DCSPk7nn.js → Index-CJ7hChmF.js} +1 -1
- package/dist/assets/{Index-SDzpl-Jc2.js → Index-CJtxYaZ02.js} +1 -1
- package/dist/assets/{Index-B7WKuXER.js → Index-CPrqWc5U.js} +1 -1
- package/dist/assets/{Index-CmrcDBzZ2.js → Index-CUsRTBAy2.js} +1 -1
- package/dist/assets/{Index-B3fIj3yi.js → Index-CVwMDW-A.js} +2 -2
- package/dist/assets/{Index-BinkgTmw.js → Index-CZS8iQGD.js} +1 -1
- package/dist/assets/{Index-D5VNzG82.js → Index-CetGJnpB.js} +1 -1
- package/dist/assets/{Index-AbcXPxs0.js → Index-CnYc0oJ8.js} +1 -1
- package/dist/assets/Index-D4x9T8au.js +1 -0
- package/dist/assets/Index-D5Ul2doi.js +1 -0
- package/dist/assets/{Index-Drdb9P_r.js → Index-DRVWr0MK.js} +1 -1
- package/dist/assets/{Index-DeYrbAvW.js → Index-D_y7v_Gn.js} +1 -1
- package/dist/assets/Index-DcVducNv.js +1 -0
- package/dist/assets/{Index-DLjlVvNI.js → Index-DeZs_u7x.js} +1 -1
- package/dist/assets/{Index-BhPsqs3d.js → Index-Dfg2U97G.js} +1 -1
- package/dist/assets/Index-O_CrvytF.js +1 -0
- package/dist/assets/Index-U68d2uZj.js +1 -0
- package/dist/assets/{Index-DAF6Fi1i.js → Index-_De5KqLp.js} +2 -2
- package/dist/assets/{Index-BDfNqyi8.js → Index-hhTRG2BF.js} +1 -1
- package/dist/assets/{Index-Bi_F3a9E.js → Index-iVjZH5W4.js} +1 -1
- package/dist/assets/Index-j-bMmKiW.js +1 -0
- package/dist/assets/Index-jMFiTGzQ2.js +1 -0
- package/dist/assets/Index-pButqdV7.js +1 -0
- package/dist/assets/{Index-DgC9uvAK.js → Index-wIXSyIsm.js} +1 -1
- package/dist/assets/{Invitees-DyGmUv2R.js → Invitees-NIBmPbQA.js} +1 -1
- package/dist/assets/List-BRxaXLPy.js +1 -0
- package/dist/assets/List-D-zLjR6q.js +1 -0
- package/dist/assets/List-wiwQQloc.js +1 -0
- package/dist/assets/LocalTools-BC90IHHk.js +5 -0
- package/dist/assets/{LocalTools-BPDI9e-z.js → LocalTools-CEjkt2l2.js} +1 -1
- package/dist/assets/{Logo-6qSswnm2.js → Logo-C6NJezpt.js} +1 -1
- package/dist/assets/{Main-gLvuSjN6.js → Main-B0EVjP0H.js} +1 -1
- package/dist/assets/{Message-BtE8gWlu.js → Message-BAL7WOXJ.js} +2 -2
- package/dist/assets/{Model-CeOYezTT.js → Model-j4_EX-gG.js} +2 -2
- package/dist/assets/{Navigator-DqokGio8.js → Navigator-CERVgrJV.js} +5 -5
- package/dist/assets/{NotFound-D3Q4GfiQ.js → NotFound-l7IoxBXr.js} +1 -1
- package/dist/assets/{PageHeader-DOWQjC3H.js → PageHeader-Cer1mYPv.js} +1 -1
- package/dist/assets/Pay-o3xo2mqm.js +1 -0
- package/dist/assets/{Player-B3iX2KLl.js → Player-UOjqiG5R.js} +1 -1
- package/dist/assets/{Poivelle-DKlkQB2c.js → Poivelle-BKRPVdM1.js} +1 -1
- package/dist/assets/{RealtimeCall-XAJLDR6Q.js → RealtimeCall-Cs8cbkOK.js} +2 -2
- package/dist/assets/{ReportButton-D3eba7A1.js → ReportButton-CpSn2HJv.js} +1 -1
- package/dist/assets/{ReportDialog-tMrdW_fU.js → ReportDialog-BoKKjM7J.js} +1 -1
- package/dist/assets/{ScenarioPaymentMode-BwoqFZco.js → ScenarioPaymentMode-Bfxf8Ufv.js} +1 -1
- package/dist/assets/{ScheduledTasks-CMcU7GEK.js → ScheduledTasks-iixEy1Ye.js} +2 -2
- package/dist/assets/{ServicePricingSummary-N2X5DfKj.js → ServicePricingSummary-D4J-WJ1t.js} +1 -1
- package/dist/assets/{SharedMarkdown-B8a4sQ0t.js → SharedMarkdown-BDyd2eGz.js} +1 -1
- package/dist/assets/{ShowcaseGrid-DFAlG_5F.js → ShowcaseGrid-DPrNdkyb.js} +1 -1
- package/dist/assets/{ShowcaseResultTabs-Bx16-8QM.js → ShowcaseResultTabs-Di_5PzXP.js} +1 -1
- package/dist/assets/{SolanaWalletPickerDialog-DpiM35uj.js → SolanaWalletPickerDialog-JUe0BzI8.js} +1 -1
- package/dist/assets/Status-C8r33_t6.js +1 -0
- package/dist/assets/{Status-CJdLn3iI.css → Status-Ck9ha4jD.css} +1 -1
- package/dist/assets/{Subscribe-BN32hXrS.js → Subscribe-z4lsK-Pw.js} +1 -1
- package/dist/assets/{TabSwitcher-6c6JSS4_.js → TabSwitcher-DJsQU_kt.js} +1 -1
- package/dist/assets/{Tts-Dio3pSmI.js → Tts-CvIT5Y3Q.js} +1 -1
- package/dist/assets/{VideoPlayer-BNtDhrpR.js → VideoPlayer-B43pPHVA.js} +1 -1
- package/dist/assets/{VideoPreview-K60Fueap.js → VideoPreview-DxrhYEOD.js} +1 -1
- package/dist/assets/{VueMarkdown-ktB0s_p4.js → VueMarkdown-Cm2HOlvG.js} +2 -2
- package/dist/assets/WriteSkillDialog-_mcGlQJv.js +1 -0
- package/dist/assets/{airwallexCheckout--o-YoruN.js → airwallexCheckout-DfA_t-KL.js} +1 -1
- package/dist/assets/arrow-down-D2NapJz3.js +1 -0
- package/dist/assets/arrow-left-DylqoAP7.js +1 -0
- package/dist/assets/arrow-right-J1XoxSVH.js +1 -0
- package/dist/assets/arrow-up-DO1r6z0s.js +1 -0
- package/dist/assets/{authorizeFlow-D30X2Lyo.js → authorizeFlow-De8qROX8.js} +1 -1
- package/dist/assets/{avatar--_Ho4k0C.js → avatar-CFr7Npbl.js} +1 -1
- package/dist/assets/{back-navigation-D-lHpBnE.js → back-navigation-CBmABnbg.js} +1 -1
- package/dist/assets/{basic-C8xJ8MvR.js → basic-BFxUUMy1.js} +1 -1
- package/dist/assets/{book-open-BH4GaBn5.js → book-open-pud407AJ.js} +1 -1
- package/dist/assets/{box-3_e2nW7_.js → box-BzqbI4wX.js} +1 -1
- package/dist/assets/{boxes-DQGNW64d.js → boxes-x-qEQ-LI.js} +1 -1
- package/dist/assets/{brain-DMDAedtO.js → brain-DJFZK1UE.js} +1 -1
- package/dist/assets/{chart-no-axes-combined-N5HL2gKV.js → chart-no-axes-combined-D35CqiRR.js} +1 -1
- package/dist/assets/{chat-C3QlZeo1.js → chat-Cbq_zDLN.js} +1 -1
- package/dist/assets/check-CHq--2kK.js +1 -0
- package/dist/assets/chevron-down-BI4tJ27m.js +1 -0
- package/dist/assets/chevron-right-CHuS6TXO.js +1 -0
- package/dist/assets/{circle-alert-C-PFf-1o.js → circle-alert-CHxD-85L.js} +1 -1
- package/dist/assets/circle-check-D_FoW3dP.js +1 -0
- package/dist/assets/{circle-question-mark-iFkJm6Cg.js → circle-question-mark-BGXCIlnz.js} +1 -1
- package/dist/assets/{clipboard-list-Cvngrayq.js → clipboard-list-BxI8Nmie.js} +1 -1
- package/dist/assets/clock-CvHl_Vd7.js +1 -0
- package/dist/assets/code-NL9LxNiy.js +1 -0
- package/dist/assets/codingBridge-DW94cI81.js +2 -0
- package/dist/assets/{codingBridgeNotify-BoMwcUhd.js → codingBridgeNotify-CokX8Ia4.js} +2 -2
- package/dist/assets/{coins-D0M4bX5f.js → coins-PK6Ps1X2.js} +1 -1
- package/dist/assets/{connection-CaarfcXm.js → connection-D1Ih6dQd.js} +1 -1
- package/dist/assets/{copy-CUk5HyqT.js → copy-D7lHzTGA.js} +1 -1
- package/dist/assets/{createTaskActions-DQEdc5ib.js → createTaskActions-BZPCtPLs.js} +1 -1
- package/dist/assets/{date-picker-C9cLRv2A.js → date-picker-B72Rk5Dt.js} +1 -1
- package/dist/assets/{digitalhuman-C7ZvYqCi.js → digitalhuman-BvEYnRvw.js} +1 -1
- package/dist/assets/{dollar-sign-C1s1LGmE.js → dollar-sign-CKl6b5bP.js} +1 -1
- package/dist/assets/{download-BmQLXojU.js → download-pMsno2DA.js} +1 -1
- package/dist/assets/{drawer-VaJhlwVr.js → drawer-BaqojTRQ.js} +1 -1
- package/dist/assets/{dropdown-iF_atr6i.js → dropdown-CuUYnMXP.js} +1 -1
- package/dist/assets/{dropdown-DBipAigc.js → dropdown-j3EEj4Tp.js} +1 -1
- package/dist/assets/{ellipsis-BqkKsvF-.js → ellipsis-BlYmih11.js} +1 -1
- package/dist/assets/{esm-DrVDihqw.js → esm-BmncEOyb.js} +2 -2
- package/dist/assets/{esm-Cbxht914.js → esm-CXE577Fh.js} +2 -2
- package/dist/assets/esm-qenNKkbC.js +1 -0
- package/dist/assets/{external-link-C9bruFod.js → external-link-BIUuevwA.js} +1 -1
- package/dist/assets/{eye-CFHeQVx8.js → eye-BFgFlWNS.js} +1 -1
- package/dist/assets/{file-CR75F95u.js → file-DmSI4aV7.js} +1 -1
- package/dist/assets/{file-output-CfzTcR2_.js → file-output-DncNlmtQ.js} +1 -1
- package/dist/assets/{file-text-DBotrbYk.js → file-text-DcI2reu5.js} +1 -1
- package/dist/assets/{fish-B1s1UOus.js → fish-DGdFCanw.js} +1 -1
- package/dist/assets/{flux-CVzCQ6JR.js → flux-CzW311tV.js} +1 -1
- package/dist/assets/{folder-C9cnY4AN.js → folder-uXRfk1mZ.js} +1 -1
- package/dist/assets/gauge-BTPC0rXL.js +1 -0
- package/dist/assets/{globe-BKX021RY.js → globe-BPuLsDjR.js} +1 -1
- package/dist/assets/{nanobanana-BPGCIia_.js → grokvideo-CSAs2I4j.js} +1 -1
- package/dist/assets/{hailuo-CP8PTXG3.js → hailuo-D87_m-0U.js} +1 -1
- package/dist/assets/{hash-B61j4cgz.js → hash-yia5yLmV.js} +1 -1
- package/dist/assets/{headphones-SI1F4r-k.js → headphones-B8rBVQdH.js} +1 -1
- package/dist/assets/{history-_iIOa-KW.js → history-BNTxRkBy.js} +1 -1
- package/dist/assets/{house-C3am4krm.js → house-CbbGN4zL.js} +1 -1
- package/dist/assets/{image-DNGAwErV.js → image-CS6hThMg.js} +1 -1
- package/dist/assets/{index-Bk9SKIXV.js → index-C8uXmX2U.js} +17 -17
- package/dist/assets/{index.es-xc1wwztg.js → index.es-5Phodjqa.js} +1 -1
- package/dist/assets/{info-CDi6ZfZf.js → info-DVNsJvAI.js} +1 -1
- package/dist/assets/{input-number-BwJ2QIsY.js → input-number-BmFOlu3s.js} +1 -1
- package/dist/assets/{kling-BxsNl9_b.js → kling-BDMU0ncE.js} +1 -1
- package/dist/assets/{languages-p0PeYqme.js → languages-DX-qFZ5y.js} +1 -1
- package/dist/assets/{laptop-B7PBJgxD.js → laptop-DxflGBrU.js} +1 -1
- package/dist/assets/{lightbulb-ByXvOBwJ.js → lightbulb-CvqLaOvJ.js} +1 -1
- package/dist/assets/{link-f8tGCmjZ.js → link-BmCk0KSR.js} +1 -1
- package/dist/assets/loader-circle-VDhzM6Nn.js +1 -0
- package/dist/assets/{luma-D_7feexJ.js → luma-Cc-i1JLx.js} +1 -1
- package/dist/assets/{maestro-BO062bai.js → maestro-BSM6rSzW.js} +1 -1
- package/dist/assets/{mail-Cu6rYS5J.js → mail-BCkjos6i.js} +1 -1
- package/dist/assets/{message-circle-DQGqX_tb.js → message-circle-BmBmlsGF.js} +1 -1
- package/dist/assets/{mic-Duo8uJFA.js → mic-UcSG54_q.js} +1 -1
- package/dist/assets/{midjourney-DgbyQQt4.js → midjourney-CuMTiD4G.js} +1 -1
- package/dist/assets/minimax-kQU1Q46c.js +1 -0
- package/dist/assets/{mobileLocalExec-BAoyTFxs.js → mobileLocalExec-CwMOa_zQ.js} +2 -2
- package/dist/assets/{monitor-BY7a2lSu.js → monitor-VOFjSWYN.js} +1 -1
- package/dist/assets/{mouse-pointer-2-BBBdRKNG.js → mouse-pointer-2-DAKfL4eZ.js} +1 -1
- package/dist/assets/music-2-CKgTqNZ9.js +1 -0
- package/dist/assets/{grokvideo-IjeySWKZ.js → nanobanana-BARcP081.js} +1 -1
- package/dist/assets/{omni-DRmYijL5.js → omni-BdZjSEzD.js} +1 -1
- package/dist/assets/openaiimage-sQHUP0bq.js +1 -0
- package/dist/assets/{pagination-Srdjt7tL.js → pagination-C4oGiE57.js} +1 -1
- package/dist/assets/{pagination-Bxloie8Z.js → pagination-CoQKuK4D.js} +1 -1
- package/dist/assets/{pagination-BodQ3KsQ.js → pagination-uSk2V2K7.js} +1 -1
- package/dist/assets/{palette-CBVqiEiY.js → palette-Cw-HJS5z.js} +1 -1
- package/dist/assets/{paperclip-C5ucVDdU.js → paperclip-CSMkIW0R.js} +1 -1
- package/dist/assets/{pause-DEsHu_JX.js → pause-BYsZ80n3.js} +1 -1
- package/dist/assets/{pencil-zCR4E3gn.js → pencil-D6KQdtCj.js} +1 -1
- package/dist/assets/{pixverse-Br13_G7h.js → pika-a8YZxfOY.js} +1 -1
- package/dist/assets/pixverse-B7na9cqk.js +1 -0
- package/dist/assets/play-PlISts4C.js +1 -0
- package/dist/assets/{plug-BuLs05P4.js → plug-BlxHQPiR.js} +1 -1
- package/dist/assets/plus-8qHkLr4t.js +1 -0
- package/dist/assets/{poivelle-CmbgX8cH.js → poivelle-C_aJhNN6.js} +1 -1
- package/dist/assets/{popover-B0GxuFgb.js → popover-BqK-ErPr.js} +1 -1
- package/dist/assets/{producer-CtomnQQP.js → producer-a3I8ulbm.js} +1 -1
- package/dist/assets/{qrart-D4w0rqYS.js → qrart-B0UCUS7O.js} +1 -1
- package/dist/assets/{qwenimage-DL9zIyXV.js → qwenimage-BKtsaJIJ.js} +1 -1
- package/dist/assets/{realtime-DMwjvq1k.js → realtime-D-W5frEc.js} +1 -1
- package/dist/assets/{refresh-cw-CcOH8EPk.js → refresh-cw-B-RuE_6C.js} +1 -1
- package/dist/assets/rotate-ccw-DafhIXvS.js +1 -0
- package/dist/assets/rotate-cw-DIM3zleO.js +1 -0
- package/dist/assets/{scheduledTasks-BatLQ_gR.js → scheduledTasks-B7bwGGDF.js} +1 -1
- package/dist/assets/{scroll-text-BTS-NpZu.js → scroll-text-o74NoTP2.js} +1 -1
- package/dist/assets/search-Bh1-kl2_.js +1 -0
- package/dist/assets/{seedance-Bou-k6BW.js → seedance-CWwgV8jO.js} +1 -1
- package/dist/assets/{seedream-C9Rua-7B.js → seedream-fbaMKMDO.js} +1 -1
- package/dist/assets/{select-Dv7ZrvnE.js → select-Ctt4vMla.js} +1 -1
- package/dist/assets/{serp-B8GBsdPs.js → serp-CxyE8Wg6.js} +1 -1
- package/dist/assets/{shield-D-mmPu1n.js → shield-CNEip5QK.js} +1 -1
- package/dist/assets/{showcase-Cq0oPoIV.js → showcase-B3x-XIzn.js} +1 -1
- package/dist/assets/{showcaseRecreateMixin-C0UnaxsG.js → showcaseRecreateMixin-1te_SCEr.js} +1 -1
- package/dist/assets/{shuffle-D5K8vZCN.js → shuffle-XCkaDWwW.js} +1 -1
- package/dist/assets/{siteHome-Ds14_RM3.js → siteHome-DAuiSeoD.js} +1 -1
- package/dist/assets/{slider-C4ifUfAq.js → slider-DgU-R1_f.js} +1 -1
- package/dist/assets/{solana-wallets-B_mKv7o5.js → solana-wallets-v9HM0phx.js} +2 -2
- package/dist/assets/{sora-CO4yLi7O.js → sora-EYl03Tg1.js} +1 -1
- package/dist/assets/{sparkles-BI5Fg4u8.js → sparkles-BWT6yPWj.js} +1 -1
- package/dist/assets/square-VQwp91bM.js +1 -0
- package/dist/assets/{suno-BPJ6ThLW.js → suno-nHiDCtV6.js} +1 -1
- package/dist/assets/{switch-CFUCWNgM.js → switch-DfKiiyLD.js} +1 -1
- package/dist/assets/{table-GjLQgxzP.js → table-B3Y40ujp.js} +1 -1
- package/dist/assets/{tag-A8kAprsR.js → tag-DeoG4_K6.js} +1 -1
- package/dist/assets/{taskPolling-C9KHdhtK.js → taskPolling-ed3DvCWh.js} +1 -1
- package/dist/assets/terminal-CoZlBFes.js +1 -0
- package/dist/assets/{time-picker-D4M2msCX.js → time-picker-Dw67yBu1.js} +1 -1
- package/dist/assets/{tooltip-L2G5ntVi.js → tooltip-Co_mOTlo.js} +1 -1
- package/dist/assets/{trash-2-CUcSh2xz.js → trash-2-2Il_x-4b.js} +1 -1
- package/dist/assets/{triangle-alert-fl0O4ttl.js → triangle-alert-Dc39dkq0.js} +1 -1
- package/dist/assets/{upload-ClpzRFqM.js → upload-RXQqkOuq.js} +1 -1
- package/dist/assets/user-CRuiuJ_x.js +1 -0
- package/dist/assets/{veo-DzVF-9VO.js → veo-CP7MEHUu.js} +1 -1
- package/dist/assets/{video-D2H2yrK5.js → video-6ckJHXgu.js} +1 -1
- package/dist/assets/{volume-2-DuPw1i4l.js → volume-2-NeRUKB9t.js} +1 -1
- package/dist/assets/{wallet-BoMayNFZ.js → wallet-DqsH6oxz.js} +1 -1
- package/dist/assets/{wan-Div7QNhT.js → wan-BD9moAq4.js} +1 -1
- package/dist/assets/{wand-sparkles-C9xUdsPZ.js → wand-sparkles-CdzPtG8R.js} +1 -1
- package/dist/assets/{web-CxmWSgKl.js → web-B-lQxU2R.js} +1 -1
- package/dist/assets/{web-NUACo-ru.js → web-BV1Sidqw.js} +1 -1
- package/dist/assets/{web-CXqpsAgb.js → web-Bg9dBHiL.js} +1 -1
- package/dist/assets/{web-CMUsrooq.js → web-CeF7asFe.js} +1 -1
- package/dist/assets/{web-onuv9tHs.js → web-RYS5ytss.js} +1 -1
- package/dist/assets/{webextrator-Di-ibQB9.js → webextrator-DxlqCl-G.js} +1 -1
- package/dist/assets/{zap-B0eAEhqX.js → zap-BjEPcYjV.js} +1 -1
- package/dist/index.html +1 -1
- package/package.json +1 -1
- package/dist/assets/Conversation-BdtH_RD0.js +0 -2
- package/dist/assets/Detail-Cwhh5P9b.js +0 -2
- package/dist/assets/Extra-C2rM0X0l.js +0 -1
- package/dist/assets/Index-BHFcy6tF.js +0 -1
- package/dist/assets/Index-Bo60hgY3.js +0 -1
- package/dist/assets/Index-Bx9XT7ii.js +0 -1
- package/dist/assets/Index-C8oOUtOA.js +0 -1
- package/dist/assets/Index-CGSt7zKV.js +0 -1
- package/dist/assets/Index-DE4Uanlv.js +0 -1
- package/dist/assets/Index-DUFd5F6p2.js +0 -1
- package/dist/assets/Index-DVhN8ZAF.js +0 -1
- package/dist/assets/Index-DeOmC_Q0.js +0 -1
- package/dist/assets/Index-Dkc39b3K.js +0 -1
- package/dist/assets/Index-Vz7Mw5xh.js +0 -1
- package/dist/assets/List-0tPShY4u.js +0 -1
- package/dist/assets/List-5Z5tELQE.js +0 -1
- package/dist/assets/List-lPxHfTDQ.js +0 -1
- package/dist/assets/LocalTools-CWWIjS6k.js +0 -5
- package/dist/assets/Pay-O5Qlb6UW.js +0 -1
- package/dist/assets/Status-CVUE2QYX.js +0 -1
- package/dist/assets/WriteSkillDialog-Bw-u8hlH.js +0 -1
- package/dist/assets/arrow-down-DCMjRdO_.js +0 -1
- package/dist/assets/arrow-left-DFXx6UvA.js +0 -1
- package/dist/assets/arrow-right-BBcVYEm1.js +0 -1
- package/dist/assets/arrow-up-BAfO-War.js +0 -1
- package/dist/assets/check-kkIqx5X1.js +0 -1
- package/dist/assets/chevron-down-vUO0pCAt.js +0 -1
- package/dist/assets/chevron-right-CHPHpC1T.js +0 -1
- package/dist/assets/circle-check-1eqJK_BD.js +0 -1
- package/dist/assets/clock-DIjv9Rh6.js +0 -1
- package/dist/assets/code-Bm4SQ3yq.js +0 -1
- package/dist/assets/codingBridge-CeVcO4fE.js +0 -2
- package/dist/assets/esm-fbzVLLeD.js +0 -1
- package/dist/assets/gauge-BdSNWC_w.js +0 -1
- package/dist/assets/loader-circle-BWTf1Yce.js +0 -1
- package/dist/assets/minimax-C_26yfUG.js +0 -1
- package/dist/assets/music-2-BmtV50Q3.js +0 -1
- package/dist/assets/openaiimage-DMLO-tzp.js +0 -1
- package/dist/assets/pika-CpXs-W0u.js +0 -1
- package/dist/assets/play-XZGUGKIJ.js +0 -1
- package/dist/assets/plus-Bz8tjapX.js +0 -1
- package/dist/assets/rotate-ccw-S9qsO1Sd.js +0 -1
- package/dist/assets/rotate-cw-DZrl6qQ6.js +0 -1
- package/dist/assets/search-K-yhv6oC.js +0 -1
- package/dist/assets/square-_e71CHtO.js +0 -1
- package/dist/assets/terminal-fyhUEvgw.js +0 -1
- package/dist/assets/user-3UxB-6FB.js +0 -1
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/index.browser.esm-CNb4vwx1.js","assets/rolldown-runtime--c01j_DQ.js","assets/buffer-CnhyIITQ.js","assets/eventemitter3-CwKRT-4Q.js","assets/__vite-browser-external-Wme9VPc1.js"])))=>i.map(i=>d[i]);
|
|
2
|
-
import"./rolldown-runtime--c01j_DQ.js";import{A as e,Gt as t,I as n,Jt as r,K as i,L as a,M as o,N as s,P as c,T as l,at as u,j as d,mt as f,rt as p,tt as m,z as h}from"./vendor-chart-Dw-P17PN.js";import{t as g}from"./vendor-vue-router-BVGjZC3n.js";import{F as _}from"./icon-CDmWyIgD.js";import{t as v}from"./alert-BprQRUmf.js";import{c as y,v as b}from"./vuex.esm-bundler-C-5WV-ta.js";import{t as x}from"./card-IQwqnRJR.js";import{n as S,r as C}from"./radio-BNhFzeBO.js";import{n as w,t as T}from"./row-BxSRQSNe.js";import{a as E,i as D,n as O,r as k,t as A}from"./airwallexCheckout--o-YoruN.js";import{t as j}from"./divider-Du_3kymg.js";import{t as M}from"./skeleton-Dj_a_iIP.js";import{t as N}from"./circle-check-1eqJK_BD.js";import{t as P}from"./copy-CUk5HyqT.js";import{t as F}from"./back-navigation-D-lHpBnE.js";import{$a as I,Za as L,co as R,io as ee,no as z}from"./constants-CspFM8fh.js";import{t as B}from"./preload-helper-zJ_50EbN.js";import{$ as te,$i as V,D as H,Dt as ne,En as re,Ha as ie,Ja as U,On as ae,Ra as oe,Ti as se,V as ce,Va as le,Zi as ue,Zr as W,_i as G,di as K,ea as q,fi as de,gi as fe,mi as J,qa as pe,qi as me,si as he,to as Y,ui as ge,vi as X,yi as _e,za as ve}from"./index-Bk9SKIXV.js";import{t as ye}from"./CopyToClipboard-CIB9LY9Y.js";import{t as be}from"./SolanaWalletPickerDialog-DpiM35uj.js";var xe=le(`credit-card`,[[`rect`,{width:`20`,height:`14`,x:`2`,y:`5`,rx:`2`,key:`ynyp8z`}],[`line`,{x1:`2`,x2:`22`,y1:`10`,y2:`10`,key:`1b3vmo`}]]),Se=h({name:`PayOrderDialog`,components:{ElDialog:U,ElButton:Y,CopyIcon:P,QrCode:ce,ElRow:T,ElCol:w,SuccessIcon:N},props:{modelValue:{type:Object,required:!0},visible:{type:Boolean,required:!1,default:!1}},emits:[`hide`,`update:modelValue`],data(){return{refreshTimer:void 0,copied:!1,copiedTimer:void 0}},computed:{isMobileOutsideWechat(){return k()&&!O()},isMobileInsideWechat(){return k()&&O()},payPageUrl(){let e=this.modelValue?.id;return!e||typeof window>`u`?``:`${window.location.origin}/orders/${e}`},dialogWidth(){return this.isMobileOutsideWechat||this.isMobileInsideWechat?`90%`:`500px`}},mounted(){this.onRefresh()},unmounted(){this.refreshTimer&&clearTimeout(this.refreshTimer),this.copiedTimer&&clearTimeout(this.copiedTimer)},methods:{onRefresh(){if(!this.modelValue.id){console.error(`id does not exist`);return}W.refresh(this.modelValue.id).then(({data:e})=>{e.state===y.PAID?this.$emit(`hide`):this.refreshTimer=window.setTimeout(()=>{this.onRefresh()},2e3),this.$emit(`update:modelValue`,e)}).catch(()=>{this.refreshTimer=window.setTimeout(()=>{this.onRefresh()},2e3)})},async onCopyLink(){let e=this.payPageUrl;if(!e)return;let t=!1;try{t=await ae(e,{debug:!1})}catch{t=!1}t?(this.copied=!0,this.copiedTimer&&clearTimeout(this.copiedTimer),this.copiedTimer=window.setTimeout(()=>{this.copied=!1},3e3)):b.error(String(this.$t(`common.message.copyFailed`)||`Copy failed`))}}}),Ce={key:0,class:`wechat-pay-mobile text-center py-[20px] px-[10px]`},we={class:`text-[14px] mb-3 leading-relaxed`},Te={class:`text-[12px] text-gray-500 mb-4 leading-relaxed`},Ee={key:1,class:`wechat-pay-longpress text-center py-[20px] px-[10px]`},De={class:`text-[14px] mb-4 leading-relaxed`},Oe={class:`paycode wechat`},ke={class:`help-text block bg-[#00c800] text-white text-[14px] h-[35px] w-[240px] text-center leading-[35px] mt-[10px] mx-auto`};function Ae(t,i,c,l,p,h){let g=u(`qr-code`),_=u(`success-icon`),v=u(`copy-icon`),y=u(`el-button`),b=u(`el-col`),x=u(`el-row`),S=u(`el-dialog`);return m(),d(S,{"model-value":t.visible,title:t.$t(`application.title.buyService`),width:t.dialogWidth,center:``},{default:f(()=>[t.isMobileOutsideWechat?(m(),s(`div`,Ce,[e(`p`,we,r(t.$t(`order.message.wechatPayMobileScanTip`)),1),t.modelValue?.pay_url?(m(),d(g,{key:0,value:t.modelValue?.pay_url,size:220,class:`qrcode m-auto mb-3`,type:`image/png`,color:{dark:`#000000`,light:`#ffffff`}},null,8,[`value`])):o(``,!0),e(`p`,Te,r(t.$t(`order.message.wechatPayMobileHint`)),1),t.payPageUrl?(m(),d(y,{key:1,size:`default`,round:``,class:`w-[220px]`,"aria-label":t.copied?t.$t(`common.message.copied`):t.$t(`order.button.copyPayLink`),onClick:t.onCopyLink},{default:f(()=>[t.copied?(m(),d(_,{key:0,class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`})):(m(),d(v,{key:1,class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`})),n(` `+r(t.copied?t.$t(`common.message.copied`):t.$t(`order.button.copyPayLink`)),1)]),_:1},8,[`aria-label`,`onClick`])):o(``,!0)])):t.isMobileInsideWechat?(m(),s(`div`,Ee,[e(`p`,De,r(t.$t(`order.message.wechatPayLongPressTip`)),1),t.modelValue?.pay_url?(m(),d(g,{key:0,value:t.modelValue?.pay_url,size:240,class:`qrcode mx-auto`,type:`image/png`,color:{dark:`#000000`,light:`#ffffff`}},null,8,[`value`])):o(``,!0)])):(m(),d(x,{key:2,class:`paycodes py-[30px] w-[500px] mx-auto`},{default:f(()=>[a(b,{span:12},{default:f(()=>[e(`div`,Oe,[t.modelValue?.pay_url?(m(),d(g,{key:0,value:t.modelValue?.pay_url,size:200,class:`qrcode m-auto w-[200px] h-[200px]`,type:`image/png`,color:{dark:`#000000`,light:`#ffffff`}},null,8,[`value`])):o(``,!0),e(`p`,ke,r(t.$t(`order.message.wechatPayHelp`)),1)])]),_:1}),a(b,{span:12},{default:f(()=>[...i[0]||=[e(`div`,{class:`help-img`},[e(`img`,{src:`https://midas.gtimg.cn/enterprise/images/ep_sys_wx_tip.jpg`})],-1)]]),_:1})]),_:1}))]),_:1},8,[`model-value`,`title`,`width`])}var je=H(Se,[[`render`,Ae]]),Me=h({name:`PayOrderDialog`,components:{ElDialog:U},props:{modelValue:{type:Object,required:!0},visible:{type:Boolean,required:!1,default:!1}},emits:[`hide`,`update:modelValue`],data(){return{refreshTimer:void 0,androidSheetLaunched:!1}},watch:{visible:{handler(e){if(!e){this.androidSheetLaunched=!1;return}let t=this.modelValue?.metadata?.stripe_client_secret;if(I()&&t){this.launchNativePaymentSheet(t).catch(e=>{console.error(`Stripe PaymentSheet failed`,e)});return}this.modelValue.pay_url&&window.open(this.modelValue.pay_url,`_blank`)}}},mounted(){this.onRefresh()},unmounted(){this.refreshTimer&&clearTimeout(this.refreshTimer)},methods:{async launchNativePaymentSheet(e){this.androidSheetLaunched||(this.androidSheetLaunched=!0,console.error(`VITE_STRIPE_PUBLISHABLE_KEY is not configured`))},onRefresh(){if(!this.modelValue.id){console.error(`id does not exist`);return}W.refresh(this.modelValue.id).then(({data:e})=>{e.state===y.PAID?this.$emit(`hide`):setTimeout(()=>{this.onRefresh()},2e3),this.$emit(`update:modelValue`,e)}).catch(()=>{setTimeout(()=>{this.onRefresh()},5e3)})}}}),Ne={class:`text-center`};function Pe(t,n,i,a,o,s){let c=u(`el-dialog`);return m(),d(c,{"model-value":t.visible,title:t.$t(`application.title.buyService`),width:`500px`,center:``},{default:f(()=>[e(`p`,Ne,r(t.$t(`order.message.buyInExternalUrl`)),1)]),_:1},8,[`model-value`,`title`])}var Fe=H(Me,[[`render`,Pe],[`__scopeId`,`data-v-a2410904`]]),Ie=h({name:`PayOrderDialog`,components:{ElDialog:U},props:{modelValue:{type:Object,required:!0},visible:{type:Boolean,required:!1,default:!1}},emits:[`hide`,`update:modelValue`],data(){return{refreshTimer:void 0}},watch:{visible:{handler(e){e&&this.modelValue.pay_url&&window.open(this.modelValue.pay_url,`_blank`)}}},mounted(){this.onRefresh()},unmounted(){this.refreshTimer&&clearTimeout(this.refreshTimer)},methods:{onRefresh(){if(!this.modelValue.id){console.error(`id does not exist`);return}W.refresh(this.modelValue.id).then(({data:e})=>{e.state===y.PAID?this.$emit(`hide`):setTimeout(()=>{this.onRefresh()},2e3),this.$emit(`update:modelValue`,e)}).catch(()=>{setTimeout(()=>{this.onRefresh()},5e3)})}}}),Le={class:`text-center`};function Re(t,n,i,a,o,s){let c=u(`el-dialog`);return m(),d(c,{"model-value":t.visible,title:t.$t(`application.title.buyService`),width:`500px`,center:``},{default:f(()=>[e(`p`,Le,r(t.$t(`order.message.buyInExternalUrl`)),1)]),_:1},8,[`model-value`,`title`])}var ze=H(Ie,[[`render`,Re]]),Z=null,Q=()=>(Z||=B(()=>import(`./index.browser.esm-CNb4vwx1.js`).then(e=>e.o),__vite__mapDeps([0,1,2,3,4])),Z);function $(e,t,n){let r=new e.PublicKey(K),i=new e.PublicKey(ge),[a]=e.PublicKey.findProgramAddressSync([t.toBuffer(),r.toBuffer(),n.toBuffer()],i);return a}async function Be(e,t,n,r,i){let a;try{let n=await e.getTokenAccountBalance(t,`confirmed`);a=BigInt(n.value.amount||`0`)}catch(e){let t=String(e?.message??``);if(/could not find account|account not found|invalid param/i.test(t)){let e=J(n,r);throw Error(`Your wallet has no USDC token account on ${i}. Receive at least ${e} USDC there, then try again.`)}console.warn(`[Solana X402] USDC balance precheck skipped due to RPC error:`,e);return}if(a<n){let e=J(n,r),t=J(a,r);throw Error(`Insufficient USDC balance on ${i}: need ${e}, have ${t}. Top up your wallet and try again.`)}}async function Ve(e,t,n=2e4){let r=Date.now(),i=600;for(;Date.now()-r<n;){try{let n=(await e.getSignatureStatus(t,{searchTransactionHistory:!0}))?.value;if(n?.err)throw Error(`Transaction failed on-chain: ${JSON.stringify(n.err)}`);let r=n?.confirmationStatus;if(r===`confirmed`||r===`finalized`)return}catch(e){if(e?.message?.startsWith(`Transaction failed on-chain`))throw e}await new Promise(e=>setTimeout(e,i)),i=Math.min(i+200,1500)}console.warn(`[Solana X402] Confirmation polling timed out after ${n}ms for ${t.slice(0,16)}… Submitting to facilitator anyway (its own retry will cover propagation lag).`)}function He(e,t,n,r,i,a,o){let s=de(a,o),c=new e.PublicKey(K);return new e.TransactionInstruction({programId:c,keys:[{pubkey:t,isSigner:!1,isWritable:!0},{pubkey:n,isSigner:!1,isWritable:!1},{pubkey:r,isSigner:!1,isWritable:!0},{pubkey:i,isSigner:!0,isWritable:!1}],data:Buffer.from(s)})}async function Ue(e){let{requirements:t,payerAddress:n,signAndSendTransaction:r,fetchBlockhash:i}=e,a=t.payTo||t.pay_to;if(!a)throw Error(`Missing payTo in requirements`);let o=t.extra||{},s=Number(o.decimals??6),c=Number(o.computeUnitLimit??o.compute_unit_limit??2e5),l=Number(o.computeUnitPriceMicroLamports??o.compute_unit_price_micro_lamports??1),u=t.maxAmountRequired||t.max_amount_required||`0`,d=BigInt(u);if(d<=0n)throw Error(`Invalid payment amount: ${u}`);let f=String(t.network||`solana`).toLowerCase(),p=G(f,o.rpcUrl||o.rpc_url),m=await Q(),h=new m.Connection(p,`confirmed`),g=new m.PublicKey(n),_=new m.PublicKey(a),v=new m.PublicKey(t.asset),y=$(m,g,v),b=$(m,_,v),x=new m.Transaction;c>0&&x.add(m.ComputeBudgetProgram.setComputeUnitLimit({units:c})),l>0&&x.add(m.ComputeBudgetProgram.setComputeUnitPrice({microLamports:l})),x.add(He(m,y,v,b,g,d,s)),x.feePayer=g;let S;if(i)S=await i(f);else{let{blockhash:e}=await h.getLatestBlockhash(`confirmed`);S=e}x.recentBlockhash=S,await Be(h,y,d,s,f);let C=await r(x),w;if(typeof C==`string`?w=C:C&&typeof C==`object`&&(w=C.signature||C.txid||C.transactionId),!w||typeof w!=`string`)throw Error(`Wallet did not return a valid transaction signature`);await Ve(h,w);let T={x402Version:1,scheme:t.scheme||`exact`,network:t.network||`solana`,payload:{signature:w}},E=btoa(JSON.stringify(T));return{signature:w,header:E}}async function We(e){let{requirements:t,payerAddress:n,signAndSendTransaction:r,signTransaction:i,signAllTransactions:a,fetchLatestBlockhash:o}=e;if(r)return(await Ue({requirements:t,payerAddress:n,signAndSendTransaction:r,fetchBlockhash:o})).header;console.warn(`Using signTransaction fallback. This may trigger security warnings in Phantom. Consider using signAndSendTransaction for better user experience.`);let s=t.extra||{},c=String(t.network||`solana`).toLowerCase(),l=G(c,s.rpcUrl||s.rpc_url),u=await Q(),d=e.connection||new u.Connection(l,`confirmed`),f=new u.PublicKey(n),p=new u.PublicKey(String(t.payTo||t.pay_to)),m=new u.PublicKey(String(t.asset)),h=Number(s.decimals??6),g=Number(s.computeUnitLimit??s.compute_unit_limit??2e5),_=Number(s.computeUnitPriceMicroLamports??s.compute_unit_price_micro_lamports??1),v=BigInt(String(t.maxAmountRequired||t.max_amount_required||`0`));if(v<=0n)throw Error(`Invalid amount`);let y=$(u,f,m),b=$(u,p,m),x=new u.Transaction;if(x.feePayer=f,g>0&&x.add(u.ComputeBudgetProgram.setComputeUnitLimit({units:g})),_>0&&x.add(u.ComputeBudgetProgram.setComputeUnitPrice({microLamports:_})),x.add(He(u,y,m,b,f,v,h)),e.fetchLatestBlockhash)x.recentBlockhash=await e.fetchLatestBlockhash(c);else{let{blockhash:e}=await d.getLatestBlockhash(`confirmed`);x.recentBlockhash=e}let S;if(i)S=await i(x);else if(a){let e=await a([x]);S=Array.isArray(e)?e[0]:void 0}if(!S)throw Error(`Wallet did not return a signed transaction`);let C=_e(S.serialize({requireAllSignatures:!1,verifySignatures:!1})),w={x402Version:1,scheme:t.scheme||`exact`,network:t.network||`solana`,payload:{serializedTransaction:C,transaction:C}};return btoa(JSON.stringify(w))}var Ge=h({name:`X402PayOrderDialog`,components:{StatusBadge:ve,ElDialog:U,ElButton:Y,ElAlert:v,ElIcon:_,ElRadioGroup:C,ElRadioButton:S,CreditCard:xe,SolanaWalletPickerDialog:be},props:{modelValue:{type:Object,required:!0},session:{type:Object,default:void 0},visible:{type:Boolean,default:!1}},emits:[`hide`,`update:modelValue`],data(){return{signing:!1,paying:!1,chainId:void 0,selectedNetwork:void 0,solanaWalletModalVisible:!1,solanaWalletConnecting:!1,evmWalletModalVisible:!1,evmWalletConnecting:!1,evmWallets:[],selectedEvmWalletId:void 0,evmAddress:void 0,requirementsLoading:!1,runtimeRequirementsByNetwork:{},requirementsAttemptedByNetwork:{},paymentError:void 0}},computed:{dialogWidth(){return ee()?`100%`:`680px`},acceptsList(){let e=this.session?.accepts;if(Array.isArray(e)&&e.length>0)return e.filter(e=>!!(e&&typeof e==`object`));let t=this.paymentRequirements;return Array.isArray(t)&&t.length>0?t.filter(e=>!!(e&&typeof e==`object`)):t&&typeof t==`object`?[t]:[]},selectedNetworkResolved(){return String(this.selectedNetwork||this.acceptsList[0]?.network||`base`).toLowerCase()},selectedRequirements(){let e=String(this.selectedNetworkResolved||``).toLowerCase();if(!e)return this.acceptsList[0];let t=this.runtimeRequirementsByNetwork[e];if(t)return t;let n=this.acceptsList.find(t=>String(t.network||``).toLowerCase()===e);if(n)return n;if(!this.selectedNetwork)return this.acceptsList[0]},orderMetadata(){let e=this.modelValue?.metadata;return e&&typeof e==`object`?e:void 0},paymentRequirements(){let e=this.session?.payment_requirements||this.session?.paymentRequirements;if(e&&typeof e==`object`)return e;let t=this.orderMetadata?.x402,n=t&&typeof t==`object`?t.payment_requirements:void 0;return n&&typeof n==`object`?n:void 0},expectedNetwork(){return this.selectedNetworkResolved},expectedNetworkLabel(){return this.formatNetworkLabel(this.expectedNetwork)},isSolanaNetwork(){return!!String(this.selectedNetworkResolved||``).toLowerCase().startsWith(`solana`)},expectedChainIdHex(){return{base:`0x2105`,"eip155:8453":`0x2105`,"base-sepolia":`0x14A34`,"eip155:84532":`0x14A34`,ethereum:`0x1`,sepolia:`0xAA36A7`,polygon:`0x89`,arbitrum:`0xA4B1`,optimism:`0xA`,bsc:`0x38`,avalanche:`0xA86A`,skale:`0x46CEA59D`}[(this.expectedNetwork||``).toLowerCase()]},networkMismatch(){return this.isSolanaNetwork?!1:!!(this.evmAddress&&this.chainId&&this.expectedChainIdHex&&this.chainId.toLowerCase()!==this.expectedChainIdHex.toLowerCase())},hasEvmProvider(){return this.isSolanaNetwork?!1:this.evmWalletsOrdered.length>0},requirementsAvailable(){return!!this.selectedRequirements},networkOptions(){let e=new Set(this.acceptsList.map(e=>String(e.network||``).toLowerCase()).filter(Boolean));if(e.size===0)return[{network:`base`,label:`Base`},{network:`solana`,label:`Solana`}];let t=e=>e===`base`||e===`eip155:8453`?0:e.startsWith(`solana`)?1:2;return Array.from(e).sort((e,n)=>t(e)-t(n)||e.localeCompare(n)).map(e=>({network:e,label:this.formatNetworkLabel(e)}))},paymentSteps(){let e=this.expectedNetworkLabel||this.expectedNetwork||``;return[String(this.$t(`order.message.x402Step1`)),String(this.$t(`order.message.x402Step2`,{network:e})),String(this.$t(`order.message.x402Step3`)),String(this.$t(`order.message.x402Step4`))]},evmConnected(){return!!(this.selectedEvmWalletId&&this.evmAddress)},evmProvider(){if(this.selectedEvmWalletId)return this.evmWallets.find(e=>e.id===this.selectedEvmWalletId)?.provider},selectedEvmWalletName(){if(this.selectedEvmWalletId)return this.evmWallets.find(e=>e.id===this.selectedEvmWalletId)?.name},selectedEvmWalletIcon(){if(this.selectedEvmWalletId)return this.evmWallets.find(e=>e.id===this.selectedEvmWalletId)?.icon},evmWalletsOrdered(){return[...this.evmWallets].sort((e,t)=>e.name.localeCompare(t.name))},solanaConnected(){return!!this.$wallet?.connected?.value},solanaAddress(){let e=this.$wallet?.publicKey?.value;if(!(!e||typeof e.toBase58!=`function`))return e.toBase58()},solanaWalletsOrdered(){let e=this.$wallet?.wallets?.value??[],t=e=>e===`Installed`?0:e===`Loadable`?1:e===`NotDetected`?2:3;return[...e].sort((e,n)=>t(e.readyState)-t(n.readyState))},selectedSolanaWalletName(){return this.$wallet?.wallet?.value?.adapter?.name},selectedSolanaWalletIcon(){return this.$wallet?.wallet?.value?.adapter?.icon}},watch:{visible(e){if(!e){this.paymentError=void 0,this.solanaWalletModalVisible=!1,this.evmWalletModalVisible=!1;return}if(!this.selectedNetwork){let e=this.acceptsList[0]?.network;this.selectedNetwork=String(e||`base`).toLowerCase()}let t=new Set(this.networkOptions.map(e=>e.network)),n=String(this.selectedNetwork||``).toLowerCase();if(n&&!t.has(n)){let e=this.networkOptions[0]?.network;e&&(this.selectedNetwork=e)}this.maybeLoadRequirements()},selectedNetwork(){this.paymentError=void 0,this.visible&&this.maybeLoadRequirements()}},mounted(){this.refreshEvmWallets()},methods:{sleep(e){return new Promise(t=>setTimeout(t,e))},getErrorMessage(e){if(!e)return``;if(typeof e==`string`)return e;if(typeof e?.message==`string`)return e.message;try{return JSON.stringify(e)}catch{return String(e)}},isRetryableSolanaConnectError(e){if(String(e?.name||``)===`WalletNotSelectedError`)return!0;let t=this.getErrorMessage(e).toLowerCase();return t.includes(`disconnected port object`)||t.includes(`failed to send message to service worker`)||t.includes(`message port closed`)||t.includes(`extension context invalidated`)},async connectSolanaWalletWithRetry(e){let t=this.$wallet;if(!t)throw Error(`Wallet API not available`);let n;for(let r=1;r<=2;r+=1)try{e&&t.select(e),await i(),await t.connect();return}catch(e){if(n=e,r<2&&this.isRetryableSolanaConnectError(e)){let t=String(e?.name||``)===`WalletNotSelectedError`?0:300;t&&await this.sleep(t);continue}throw e}throw n},formatNetworkLabel(e){let t=String(e||``).toLowerCase();return t===`base`||t===`eip155:8453`?`Base`:t===`base-sepolia`||t===`eip155:84532`?`Base Sepolia`:t===`solana`||t===`solana:5eykt4usfv8p8njdtrepy1vzqkqzkvdp`?`Solana`:t===`solana-devnet`?`Solana Devnet`:t===`skale`?`SKALE`:t===`ethereum`?`Ethereum`:t===`sepolia`?`Sepolia`:t===`polygon`?`Polygon`:t===`arbitrum`?`Arbitrum`:t===`optimism`?`Optimism`:t===`bsc`?`BNB Chain`:t===`avalanche`?`Avalanche`:e||`Unknown`},async confirmPay(e){let t=e||this.expectedNetworkLabel||this.expectedNetwork||``,n=String(this.$t?.(`order.message.x402ConfirmTitle`)||`Confirm Payment`),r=String(this.$t?.(`order.message.x402ConfirmDesc`,{network:t})||`Confirm USDC payment on ${t}?`),i=String(this.$t?.(`common.button.pay`)||`Pay`),a=String(this.$t?.(`common.button.cancel`)||`Cancel`);return ie.confirm(r,n,{confirmButtonText:i,cancelButtonText:a,type:`warning`}).then(()=>!0).catch(()=>!1)},async onSelectSolanaWallet(e){if(!this.solanaWalletConnecting&&e?.adapter?.name){this.solanaWalletConnecting=!0;try{await this.connectSolanaWalletWithRetry(e.adapter.name),this.solanaWalletModalVisible=!1,V(`solana`,`order_checkout`)}catch(e){console.warn(`wallet connect failed`,e),b.error(String(this.$t?.(`coin.message.connectError`)||`Wallet connect failed`))}finally{this.solanaWalletConnecting=!1}}},async disconnectSolanaWallet(){try{await this.$wallet.disconnect()}catch{}},openEvmWalletModal(){this.evmWalletModalVisible=!0,this.refreshEvmWallets()},async refreshEvmWallets(){this.evmWallets=(await se()).filter(e=>e.readyState===`Detected`&&e.kind===`injected`&&!!e.provider)},async onSelectEvmWallet(e){if(e.provider){this.evmWalletModalVisible=!1,this.evmWalletConnecting=!0;try{let t=await e.provider.request({method:`eth_requestAccounts`}),n=Array.isArray(t)?t[0]:void 0;if(!n)throw Error(`No account returned from wallet`);this.selectedEvmWalletId=e.id,this.evmAddress=n,await this.refreshChainId(),await this.ensureNetwork(),V(`base`,`order_checkout`)}catch(e){console.warn(`EVM wallet connect failed`,e),b.error(String(this.$t?.(`coin.message.connectError`)||`Wallet connect failed`)),this.disconnectEvmWallet()}finally{this.evmWalletConnecting=!1}}},disconnectEvmWallet(){this.selectedEvmWalletId=void 0,this.evmAddress=void 0,this.chainId=void 0},async getFreshRequirements(){let e=this.selectedRequirements;if(e)return e;try{let e=(await W.pay(this.modelValue.id,{pay_way:`X402`}))?.data,t=Array.isArray(e?.accepts)?e.accepts:void 0,n=String(this.selectedNetworkResolved||``).toLowerCase();if(Array.isArray(t)&&t.length)return t.find(e=>String(e?.network||``).toLowerCase()===n)||(this.selectedNetwork?void 0:t[0]);let r=e?.payment_requirements;return Array.isArray(r)&&r.length?r.find(e=>String(e?.network||``).toLowerCase()===n)||(this.selectedNetwork?void 0:r[0]):r&&typeof r==`object`?r:void 0}catch(e){let t=e?.response?.data;if(t){let e=Array.isArray(t?.accepts)?t.accepts:void 0,n=String(this.selectedNetworkResolved||``).toLowerCase();if(Array.isArray(e)&&e.length)return e.find(e=>String(e?.network||``).toLowerCase()===n)||(this.selectedNetwork?void 0:e[0]);let r=t?.payment_requirements;if(Array.isArray(r)&&r.length)return r.find(e=>String(e?.network||``).toLowerCase()===n)||(this.selectedNetwork?void 0:r[0]);if(r&&typeof r==`object`)return r}return}},async maybeLoadRequirements(e=!1){let t=String(this.selectedNetworkResolved||``).toLowerCase();if(t&&!this.runtimeRequirementsByNetwork[t]&&!this.acceptsList.some(e=>String(e.network||``).toLowerCase()===t)&&!(!e&&this.requirementsAttemptedByNetwork[t])){this.requirementsAttemptedByNetwork[t]=!0,this.requirementsLoading=!0;try{let e=await this.getFreshRequirements();e&&(this.runtimeRequirementsByNetwork[t]=e)}finally{this.requirementsLoading=!1}}},async refreshChainId(){if(this.evmProvider)try{let e=await this.evmProvider.request({method:`eth_chainId`});typeof e==`string`&&(this.chainId=e)}catch{}},async ensureNetwork(){if(!(!this.evmProvider||!this.expectedChainIdHex)&&(await this.refreshChainId(),!(this.chainId&&this.chainId.toLowerCase()===this.expectedChainIdHex.toLowerCase()))){try{await this.evmProvider.request({method:`wallet_switchEthereumChain`,params:[{chainId:this.expectedChainIdHex}]})}catch{try{await this.evmProvider.request({method:`wallet_addEthereumChain`,params:[this.getExpectedChainParams()]})}catch(e){console.error(`Failed to add Ethereum chain:`,e);try{let e=this.$t&&this.$t(`order.message.x402NetworkSwitchFailed`)||`Your wallet does not support automatic network switching. Please switch to the required network in the wallet and try again.`;b.warning(e)}catch{}}}await this.refreshChainId()}},getExpectedChainParams(){let e={base:{chainId:`0x2105`,chainName:`Base`,nativeCurrency:{name:`ETH`,symbol:`ETH`,decimals:18},rpcUrls:[`https://mainnet.base.org`],blockExplorerUrls:[`https://basescan.org`]},"base-sepolia":{chainId:`0x14A34`,chainName:`Base Sepolia`,nativeCurrency:{name:`ETH`,symbol:`ETH`,decimals:18},rpcUrls:[`https://sepolia.base.org`],blockExplorerUrls:[`https://sepolia.basescan.org`]},skale:{chainId:`0x46CEA59D`,chainName:`SKALE Base`,nativeCurrency:{name:`CREDIT`,symbol:`CREDIT`,decimals:18},rpcUrls:[`https://skale-base.skalenodes.com/v1/base`],blockExplorerUrls:[`https://skale-base-explorer.skalenodes.com`]}},t={"eip155:8453":`base`,"eip155:84532":`base-sepolia`},n=(this.expectedNetwork||``).toLowerCase();return e[t[n]||n]||{chainId:this.expectedChainIdHex}},async onPayWithSolanaWallet(){if(!this.modelValue?.id)return;let e=this.solanaAddress;if(!e){b.error(String(this.$t?.(`order.message.x402NeedConnectAccount`)||`Please connect a wallet first.`));return}if(!this.requirementsAvailable){b.error(String(this.$t?.(`order.message.x402SolanaNotEnabled`)||`Solana payment is not available.`));return}this.paymentError=void 0,this.signing=!0;try{if(!await this.confirmPay(this.expectedNetworkLabel))return;let t=await this.getFreshRequirements();if(t||=this.selectedRequirements,!t){b.error(String(this.$t?.(`order.message.x402PaymentFailed`)||`X402 payment failed.`));return}let n=this.$wallet,r=n?.wallet?.value?.adapter,i=typeof window<`u`?window.phantom?.solana||window.solana:void 0,a=typeof window<`u`?window.solflare:void 0,o;if(i?.isPhantom&&typeof i?.signAndSendTransaction==`function`)o=i.signAndSendTransaction.bind(i);else if(a?.isSolflare&&typeof a?.signAndSendTransaction==`function`)o=a.signAndSendTransaction.bind(a);else if(typeof window<`u`&&window.solana?.signAndSendTransaction&&!window.solana?.isPhantom)o=window.solana.signAndSendTransaction.bind(window.solana);else if(n?.sendTransaction&&n?.publicKey?.value){let{Connection:e}=await B(async()=>{let{Connection:e}=await import(`./index.browser.esm-CNb4vwx1.js`).then(e=>e.o);return{Connection:e}},__vite__mapDeps([0,1,2,3,4])),r=t.extra||{},i=String(t.network||`solana`).toLowerCase(),a=new e(r.rpcUrl||r.rpc_url||(i.includes(`devnet`)?`https://api.devnet.solana.com`:`https://api.mainnet-beta.solana.com`),`confirmed`);o=async e=>({signature:await n.sendTransaction(e,a)})}let s;if(o)s=(await Ue({requirements:t,payerAddress:e,signAndSendTransaction:o,fetchBlockhash:e=>this.fetchSolanaLatestBlockhash(e)})).header;else if(r?.signTransaction||r?.signAllTransactions)s=await We({requirements:t,payerAddress:e,signTransaction:r.signTransaction?r.signTransaction.bind(r):void 0,signAllTransactions:r.signAllTransactions?r.signAllTransactions.bind(r):void 0,fetchLatestBlockhash:e=>this.fetchSolanaLatestBlockhash(e)});else throw Error(`Wallet does not support signing transactions`);this.paying=!0;let{data:c}=await W.payX402WithHeader(this.modelValue.id,{pay_way:`X402`},s);this.$emit(`update:modelValue`,c),this.$emit(`hide`)}catch(e){this.paymentError=X(e,this.$t.bind(this),`order`)}finally{this.signing=!1,this.paying=!1}},async fetchSolanaLatestBlockhash(e){let{data:t}=await me.get(`/x402/solana/latest-blockhash/`,{params:{network:e||`solana`}}),n=t?.blockhash;if(!n||typeof n!=`string`)throw Error(`Invalid blockhash response`);return n},async onPayWithWallet(){if(this.signing||this.paying)return;if(!this.modelValue?.id||!this.evmProvider||!this.evmAddress){let e=this.$t&&this.$t(`order.message.x402PaymentFailed`)||`X402 wallet payment is not available right now. Please try again later.`;b.error(e);return}this.paymentError=void 0,this.signing=!0;let e=`challenge`;try{let t=await this.getFreshRequirements();if(t||=this.selectedRequirements,!t){let e=this.$t&&this.$t(`order.message.x402PaymentFailed`)||`X402 wallet payment failed. Please try again later.`;b.error(e);return}if(await this.ensureNetwork(),this.networkMismatch){b.warning(String(this.$t?.(`order.message.x402SwitchNetwork`,{network:this.expectedNetworkLabel||this.expectedNetwork})||`Please switch your wallet network and try again.`));return}let n=String(t.network||this.expectedNetwork||``);if(q(`challenge_received`,`base`,n),!await this.confirmPay(this.expectedNetworkLabel))return;e=`sign`;let r=await he(t,this.evmProvider,this.evmAddress);q(`signature_created`,`base`,n),e=`submit`,this.paying=!0,q(`signed_post_started`,`base`,n);let{data:i}=await W.payX402WithHeader(this.modelValue.id,{pay_way:`X402`},r);q(`payment_succeeded`,`base`,n),this.$emit(`update:modelValue`,i),this.$emit(`hide`)}catch(t){let n=t?.code===4001||t?.code===`4001`||t?.name===`X402PaymentCancelledError`;q(n?`wallet_rejected`:`payment_failed`,`base`,this.expectedNetwork,n?`user_rejected`:e===`sign`?`signing_error`:t?.response?`server_error`:`network_or_cors`),this.paymentError=X(t,this.$t.bind(this),`order`)}finally{this.signing=!1,this.paying=!1}}}}),Ke={class:`x402-content`},qe={class:`x402-intro`},Je={class:`x402-intro-text`},Ye={key:0,class:`x402-error-safety`},Xe={class:`x402-error-code`},Ze={class:`x402-wallet`},Qe={class:`x402-wallet-head`},$e={class:`x402-network`},et={class:`x402-network-label`},tt={key:1,class:`x402-requirements-actions`},nt={class:`x402-wallet-card`},rt={class:`x402-wallet-card-head`},it={class:`x402-wallet-card-title`},at={key:0,class:`x402-wallet-card-sub x402-wallet-name`},ot=[`src`,`alt`],st={key:1,class:`x402-wallet-card-sub`},ct={class:`x402-wallet-card-actions`},lt={class:`x402-actions`},ut={class:`x402-wallet-card`},dt={class:`x402-wallet-card-head`},ft={class:`x402-wallet-card-title`},pt={key:0,class:`x402-wallet-card-sub x402-wallet-name`},mt=[`src`,`alt`],ht={key:1,class:`x402-wallet-card-sub`},gt={class:`x402-wallet-card-actions`},_t={class:`x402-actions`},vt={class:`x402-steps`},yt={class:`x402-steps-title`},bt={class:`x402-steps-list`},xt={class:`x402-step-index`},St={class:`x402-step-text`},Ct={class:`wallet-list`},wt=[`disabled`,`onClick`],Tt=[`src`,`alt`],Et={class:`wallet-list-name`},Dt={class:`wallet-list-status`},Ot={key:0,class:`text-center text-[13px] text-[var(--el-text-color-regular)]`};function kt(t,i,c,h,g,_){let v=u(`credit-card`),y=u(`el-icon`),b=u(`el-alert`),x=u(`el-radio-button`),S=u(`el-radio-group`),C=u(`el-button`),w=u(`status-badge`),T=u(`el-dialog`),E=u(`solana-wallet-picker-dialog`);return m(),s(l,null,[a(T,{"model-value":t.visible,title:t.$t(`order.title.x402`),width:t.dialogWidth,top:`8vh`,class:`x402-dialog`},{default:f(()=>[e(`section`,Ke,[e(`header`,qe,[a(y,{size:20,class:`x402-intro-icon`},{default:f(()=>[a(v,{size:`1em`,"aria-hidden":`true`,focusable:`false`})]),_:1}),e(`p`,Je,r(t.$t(`order.message.x402IntroShort`)),1)]),t.paymentError?(m(),d(b,{key:0,type:t.paymentError.severity,title:t.paymentError.title,closable:!1,"show-icon":``,role:`alert`,class:`x402-alert x402-payment-error`},{default:f(()=>[e(`p`,null,r(t.paymentError.description),1),t.paymentError.safety?(m(),s(`p`,Ye,r(t.paymentError.safety),1)):o(``,!0),e(`p`,null,r(t.paymentError.nextStep),1),e(`code`,Xe,r(t.paymentError.technicalCode),1)]),_:1},8,[`type`,`title`])):o(``,!0),e(`section`,Ze,[e(`div`,Qe,[e(`div`,$e,[e(`span`,et,r(t.$t(`order.message.x402IntegrationNetworkLabel`)),1),a(S,{modelValue:t.selectedNetwork,"onUpdate:modelValue":i[0]||=e=>t.selectedNetwork=e,class:`x402-network-group`},{default:f(()=>[(m(!0),s(l,null,p(t.networkOptions,e=>(m(),d(x,{key:e.network,label:e.network},{default:f(()=>[n(r(e.label),1)]),_:2},1032,[`label`]))),128))]),_:1},8,[`modelValue`])])]),t.selectedNetworkResolved===`solana`&&!t.selectedRequirements&&!t.requirementsLoading?(m(),d(b,{key:0,type:`info`,closable:!1,class:`x402-alert`,description:t.$t(`order.message.x402SolanaNotEnabled`)},null,8,[`description`])):o(``,!0),!t.selectedRequirements&&!t.requirementsLoading?(m(),s(`div`,tt,[a(C,{link:``,type:`primary`,size:`small`,onClick:i[1]||=e=>t.maybeLoadRequirements(!0)},{default:f(()=>[n(r(t.$t(`common.button.refresh`)),1)]),_:1})])):o(``,!0),t.isSolanaNetwork?(m(),s(l,{key:2},[e(`div`,nt,[e(`div`,rt,[e(`span`,it,r(t.$t(`order.message.x402WalletTitleSolana`)),1),t.solanaConnected?(m(),d(w,{key:0,class:`x402-wallet-card-tag`,tone:`success`},{default:f(()=>[n(r(t.$t(`order.message.x402WalletConnected`)),1)]),_:1})):o(``,!0)]),t.solanaConnected&&t.selectedSolanaWalletName?(m(),s(`div`,at,[t.selectedSolanaWalletIcon?(m(),s(`img`,{key:0,class:`wallet-list-icon`,src:t.selectedSolanaWalletIcon,alt:t.selectedSolanaWalletName},null,8,ot)):o(``,!0),e(`span`,null,r(t.selectedSolanaWalletName),1)])):o(``,!0),t.solanaConnected&&t.solanaAddress?(m(),s(`div`,st,r(t.solanaAddress.substring(0,10))+`...`+r(t.solanaAddress.substring(t.solanaAddress.length-10)),1)):o(``,!0),e(`div`,ct,[t.solanaConnected?(m(),d(C,{key:1,onClick:t.disconnectSolanaWallet},{default:f(()=>[n(r(t.$t(`coin.button.disconnect`)),1)]),_:1},8,[`onClick`])):(m(),d(C,{key:0,type:`primary`,onClick:i[2]||=e=>t.solanaWalletModalVisible=!0},{default:f(()=>[n(r(t.$t(`order.message.x402ConnectWallet`)),1)]),_:1}))])]),e(`div`,lt,[a(C,{type:`primary`,disabled:!t.solanaConnected||!t.solanaAddress||!t.requirementsAvailable,loading:t.signing||t.paying,onClick:t.onPayWithSolanaWallet},{default:f(()=>[n(r(t.$t(`order.message.x402WalletPayCta`)),1)]),_:1},8,[`disabled`,`loading`,`onClick`])])],64)):(m(),s(l,{key:3},[e(`div`,ut,[e(`div`,dt,[e(`span`,ft,r(t.$t(`order.message.x402WalletTitleEvm`)),1),t.evmConnected?(m(),d(w,{key:0,class:`x402-wallet-card-tag`,tone:`success`},{default:f(()=>[n(r(t.$t(`order.message.x402WalletConnected`)),1)]),_:1})):o(``,!0)]),t.evmConnected&&t.selectedEvmWalletName?(m(),s(`div`,pt,[t.selectedEvmWalletIcon?(m(),s(`img`,{key:0,class:`wallet-list-icon`,src:t.selectedEvmWalletIcon,alt:t.selectedEvmWalletName},null,8,mt)):o(``,!0),e(`span`,null,r(t.selectedEvmWalletName),1)])):o(``,!0),t.evmConnected&&t.evmAddress?(m(),s(`div`,ht,r(t.evmAddress.substring(0,10))+`...`+r(t.evmAddress.substring(t.evmAddress.length-10)),1)):o(``,!0),e(`div`,gt,[t.evmConnected?(m(),d(C,{key:1,onClick:t.disconnectEvmWallet},{default:f(()=>[n(r(t.$t(`coin.button.disconnect`)),1)]),_:1},8,[`onClick`])):(m(),d(C,{key:0,type:`primary`,onClick:t.openEvmWalletModal},{default:f(()=>[n(r(t.$t(`order.message.x402ConnectWallet`)),1)]),_:1},8,[`onClick`]))])]),t.hasEvmProvider?t.networkMismatch?(m(),d(b,{key:1,type:`warning`,closable:!1,"show-icon":``,class:`x402-alert`,title:t.$t(`order.message.x402SwitchNetwork`,{network:t.expectedNetworkLabel||t.expectedNetwork})},null,8,[`title`])):o(``,!0):(m(),d(b,{key:0,type:`info`,closable:!1,class:`x402-alert`,description:t.$t(`order.message.x402NoWalletDesc`)},null,8,[`description`])),e(`div`,_t,[t.hasEvmProvider?(m(),d(C,{key:0,type:`primary`,disabled:!t.evmConnected||!t.requirementsAvailable||t.networkMismatch,loading:t.signing||t.paying,onClick:t.onPayWithWallet},{default:f(()=>[n(r(t.$t(`order.message.x402WalletPayCta`)),1)]),_:1},8,[`disabled`,`loading`,`onClick`])):o(``,!0)])],64)),e(`div`,vt,[e(`div`,yt,r(t.$t(`order.message.x402StepsTitle`)),1),e(`ol`,bt,[(m(!0),s(l,null,p(t.paymentSteps,(t,n)=>(m(),s(`li`,{key:n,class:`x402-step`},[e(`span`,xt,r(n+1),1),e(`span`,St,r(t),1)]))),128))])])])])]),_:1},8,[`model-value`,`title`,`width`]),a(E,{modelValue:t.solanaWalletModalVisible,"onUpdate:modelValue":i[3]||=e=>t.solanaWalletModalVisible=e,wallets:t.solanaWalletsOrdered,connecting:t.solanaWalletConnecting,onSelect:t.onSelectSolanaWallet},null,8,[`modelValue`,`wallets`,`connecting`,`onSelect`]),a(T,{modelValue:t.evmWalletModalVisible,"onUpdate:modelValue":i[4]||=e=>t.evmWalletModalVisible=e,title:t.$t(`order.message.x402ConnectWallet`),width:`420px`,"align-center":``},{default:f(()=>[e(`div`,Ct,[(m(!0),s(l,null,p(t.evmWalletsOrdered,n=>(m(),s(`button`,{key:n.id,class:`wallet-list-item`,disabled:t.evmWalletConnecting,onClick:e=>t.onSelectEvmWallet(n)},[n.icon?(m(),s(`img`,{key:0,class:`wallet-list-icon`,src:n.icon,alt:n.name},null,8,Tt)):o(``,!0),e(`span`,Et,r(n.name),1),e(`span`,Dt,r(t.$t(`order.message.x402WalletStatusDetected`)),1)],8,wt))),128)),t.evmWalletsOrdered.length===0?(m(),s(`div`,Ot,r(t.$t(`order.message.x402NoWalletDesc`)),1)):o(``,!0)])]),_:1},8,[`modelValue`,`title`])],64)}var At=H(Ge,[[`render`,kt],[`__scopeId`,`data-v-9929def6`]]),jt=h({name:`PaypalPayOrderDialog`,components:{ElDialog:U},props:{modelValue:{type:Object,required:!0},visible:{type:Boolean,required:!1,default:!1}},emits:[`hide`,`update:modelValue`],data(){return{refreshTimer:void 0}},watch:{visible:{handler(e){e&&this.modelValue.pay_url&&window.open(this.modelValue.pay_url,`_blank`)}}},mounted(){this.onRefresh()},unmounted(){this.refreshTimer&&clearTimeout(this.refreshTimer)},methods:{onRefresh(){if(!this.modelValue.id){console.error(`id does not exist`);return}W.refresh(this.modelValue.id).then(({data:e})=>{e.state===y.PAID?this.$emit(`hide`):setTimeout(()=>{this.onRefresh()},2e3),this.$emit(`update:modelValue`,e)}).catch(()=>{setTimeout(()=>{this.onRefresh()},5e3)})}}}),Mt={class:`text-center`};function Nt(t,n,i,a,o,s){let c=u(`el-dialog`);return m(),d(c,{"model-value":t.visible,title:t.$t(`application.title.buyService`),width:`500px`,center:``},{default:f(()=>[e(`p`,Mt,r(t.$t(`order.message.buyInExternalUrl`)),1)]),_:1},8,[`model-value`,`title`])}var Pt=H(jt,[[`render`,Nt]]),Ft=h({name:`ApplePayOrderDialog`,components:{ElDialog:U},props:{modelValue:{type:Object,required:!0},visible:{type:Boolean,required:!1,default:!1}},emits:[`hide`,`update:modelValue`],data(){return{refreshTimer:void 0,launched:!1,disposed:!1,purchaseController:void 0,statusText:this.$t(`order.message.applePayProcessing`)}},computed:{productId(){return this.modelValue?.package?.metadata?.apple_product_id||this.modelValue?.packages?.[0]?.metadata?.apple_product_id}},watch:{visible:{handler(e){if(!e){this.purchaseController?.abort(),this.launched=!1,this.refreshTimer&&clearTimeout(this.refreshTimer),this.refreshTimer=void 0;return}this.startPurchase()}}},unmounted(){this.disposed=!0,this.purchaseController?.abort(),this.refreshTimer&&clearTimeout(this.refreshTimer)},methods:{async startPurchase(){if(this.launched||this.disposed||!this.visible||(this.launched=!0,!this.modelValue.id))return;if(!this.productId){b.error(this.$t(`order.message.applePayUnavailable`)),this.$emit(`hide`);return}this.statusText=this.$t(`order.message.applePayProcessing`);let e=this.modelValue.id,t=new AbortController;this.purchaseController=t;let n=await te(e,this.productId,t.signal);if(this.purchaseController===t&&(this.purchaseController=void 0),!(this.disposed||!this.visible||this.modelValue.id!==e)){if(n.verificationPending){this.statusText=this.$t(`order.message.applePayProcessing`),this.launched=!1,this.visible&&(this.refreshTimer=window.setTimeout(()=>this.startPurchase(),5e3));return}if(n.cancelled){this.$emit(`hide`);return}if(!n.ok){let e=n.error?` (${n.error})`:``;b.error(this.$t(`order.message.applePayFailed`)+e),this.$emit(`hide`);return}this.onRefresh()}},onRefresh(){if(!this.modelValue.id||this.disposed||!this.visible)return;let e=this.modelValue.id;W.refresh(e).then(({data:t})=>{this.disposed||!this.visible||this.modelValue.id!==e||(this.$emit(`update:modelValue`,t),t.state!==y.PAID&&t.state!==y.FINISHED?this.refreshTimer=window.setTimeout(()=>this.onRefresh(),2e3):this.$emit(`hide`))}).catch(()=>{this.disposed||!this.visible||this.modelValue.id!==e||(this.refreshTimer=window.setTimeout(()=>this.onRefresh(),5e3))})}}}),It={class:`text-center`};function Lt(t,n,i,a,o,s){let c=u(`el-dialog`);return m(),d(c,{"model-value":t.visible,title:t.$t(`application.title.buyService`),width:`500px`,center:``},{default:f(()=>[e(`p`,It,r(t.statusText),1)]),_:1},8,[`model-value`,`title`])}var Rt=H(Ft,[[`render`,Lt]]),zt=7e3,Bt=2e3,Vt=function(e){return e.WechatPay=`WechatPay`,e.Stripe=`Stripe`,e.AliPay=`AliPay`,e.X402=`X402`,e.PayPal=`PayPal`,e.Apple=`AppleIAP`,e.Card=`Card`,e.Airwallex=`Airwallex`,e}(Vt||{}),Ht=h({name:`ConsoleOrderDetail`,components:{BackNavigation:F,MetaTag:oe,ElButton:Y,CopyToClipboard:ye,ElRow:T,ElCard:x,ElCol:w,ElSkeleton:M,ElDivider:j,ElAlert:v,ElDescriptions:D,ElDescriptionsItem:E,ElEmpty:pe,WechatPayOrder:je,StripePayOrder:Fe,AlipayPayOrder:ze,X402PayOrder:At,PaypalPayOrder:Pt,ApplePayOrder:Rt},data(){return{PayWay:Vt,payWay:z()?`AppleIAP`:`WechatPay`,OrderState:y,order:void 0,x402Session:void 0,showPayWays:!0,loading:!1,paying:!1,prepaying:!1}},computed:{backLinkComponent(){return g},backRoute(){return{name:ne}},config(){return this.$store.getters.config},enablePaypal(){return!!this.config?.features?.ENABLE_PAYPAL},isIos(){return z()},id(){return this.$route.params?.id?.toString()},redirect(){return this.$route.query?.redirect},showPayment(){return!0},pricingInfo(){let e=this.order?.metadata?.pricing||{},t=e=>typeof e==`number`&&Number.isFinite(e)?e:void 0,n=t(e?.original_price),r=t(e?.discounted_price),i=t(e?.discount_rate),a=t(e?.discount_rate_vip),o=t(e?.discount_rate_x402),s=t(this.order?.price),c=n??s??0;return{original:c,discounted:r??s??c,discountRate:t(this.order?.discount)??i??0,discountedMethods:Array.isArray(e?.discounted_methods)?e.discounted_methods.filter(e=>typeof e==`string`&&e.length>0):[],discountRateVip:a,discountRateX402:o}},appliedDiscountMethods(){return this.pricingInfo.discountedMethods||[]},hasVipApplied(){return this.appliedDiscountMethods.includes(`vip`)},hasX402Applied(){return this.appliedDiscountMethods.includes(`x402`)},pendingX402Preview(){return this.payWay===`X402`&&this.order?.pay_way!==`X402`&&this.x402DiscountRate>0},finalOriginalPrice(){return this.pricingInfo.original||0},baseEffectivePrice(){let e=this.order?.price;return typeof e==`number`&&Number.isFinite(e)?e:this.pricingInfo.discounted},previewX402Price(){let e=this.baseEffectivePrice||0,t=this.x402DiscountRate;return!t||t<=0?e:e*(1-t)},finalDiscountedPrice(){return this.pendingX402Preview?this.previewX402Price:this.baseEffectivePrice},showOriginalPrice(){return this.finalOriginalPrice<=0?!1:this.finalOriginalPrice>this.finalDiscountedPrice},totalDiscountRate(){let e=this.pricingInfo.discountRate??0;return this.pendingX402Preview?1-(1-e)*(1-this.x402DiscountRate):e},hasAnyDiscount(){return this.totalDiscountRate>0},discountBadges(){let e=[];return this.hasVipApplied&&this.vipDiscountPercent&&e.push({key:`vip`,text:this.$t(`order.message.discountTag`,{percent:this.vipDiscountPercent}).toString(),type:`success`}),this.shouldDisplayX402Badge&&this.x402BadgePercent&&e.push({key:`x402`,text:this.$t(`order.message.x402DiscountTag`,{percent:this.x402BadgePercent}).toString(),type:`success`}),e},discountHints(){let e=[];return this.hasVipApplied&&this.vipDiscountPercent&&e.push(this.$t(`order.message.discountHint`,{percent:this.vipDiscountPercent}).toString()),this.hasX402Applied&&this.x402AppliedPercent?e.push(this.$t(`order.message.x402DiscountApplied`,{percent:this.x402AppliedPercent}).toString()):this.pendingX402Preview&&this.x402BadgePercent&&e.push(this.$t(`order.message.x402DiscountHint`,{percent:this.x402BadgePercent}).toString()),e},x402DiscountRate(){let e=this.config?.features?.DISCOUNT_FOR_X402;return typeof e==`number`&&Number.isFinite(e)&&e>0?e:0},vipDiscountPercent(){let e=(this.pricingInfo.discountRateVip??0)*100;return!Number.isFinite(e)||e<=0?``:Number.isInteger(e)?e.toFixed(0):e.toFixed(1)},x402AppliedPercent(){let e=(this.pricingInfo.discountRateX402??0)*100;return!Number.isFinite(e)||e<=0?``:Number.isInteger(e)?e.toFixed(0):e.toFixed(1)},x402BadgePercent(){let e=(this.hasX402Applied?this.pricingInfo.discountRateX402??this.x402DiscountRate:this.x402DiscountRate)*100;return!Number.isFinite(e)||e<=0?``:Number.isInteger(e)?e.toFixed(0):e.toFixed(1)},shouldDisplayX402Badge(){return this.hasX402Applied||this.pendingX402Preview},shouldShowPriceBlock(){return this.finalOriginalPrice>0||this.finalDiscountedPrice>0||this.hasAnyDiscount||this.pendingX402Preview},orderPaymentError(){if(!(!this.order||this.order.state!==y.FAILED||this.order.pay_way!==`X402`))return X({metadata:this.order.metadata||{}},this.$t.bind(this),`order`)}},watch:{paying(e){e?this.startOrderPolling():this.stopOrderPolling()},order:{handler(e,t){if(e?.state===y.PAID||e?.state===y.FINISHED){t?.state!==y.PAID&&t?.state!==y.FINISHED&&ue(`payment_success`,{order_id:e?.id,pay_way:e?.pay_way,service:e?.application?.service?.alias,amount:e?.price}),this.x402Session=void 0,setTimeout(()=>{this.redirect&&window.location.replace(this.redirect?.toString())},2e3);return}e?.state&&e.state!==y.PENDING&&e.state!==y.FAILED&&(this.x402Session=void 0)},deep:!0},payWay(e){e!==`X402`&&(this.x402Session=void 0)}},created(){this._orderRefreshTimer=void 0},mounted(){this.onFetchData()},beforeUnmount(){this.stopOrderPolling()},methods:{getPriceString:re,formatCredits(e){return Number.isFinite(e)?Number.isInteger(e)?String(e):e.toFixed(2):`0`},payWayLabel(e){switch(e){case`WechatPay`:return this.$t(`order.title.wechatPay`);case`Stripe`:return this.$t(`order.title.stripe`);case`Card`:case`Airwallex`:return this.$t(`order.title.card`);case`AliPay`:return this.$t(`order.title.aliPay`);case`X402`:return this.$t(`order.title.x402`);case`PayPal`:return this.$t(`order.title.paypal`);default:return e}},payWayTagType(e){return`info`},startOrderPolling(e=0){this.stopOrderPolling();let t=async()=>{try{let{data:e}=await W.refresh(this.id);if(this.order=e,e?.state===y.PAID||e?.state===y.FINISHED||e?.state===y.FAILED||e?.state===y.EXPIRED){this.paying=!1,this.stopOrderPolling();return}}catch{}this.paying&&(this._orderRefreshTimer=window.setTimeout(t,zt))};this._orderRefreshTimer=window.setTimeout(t,e)},stopOrderPolling(){let e=this._orderRefreshTimer;e&&(clearTimeout(e),this._orderRefreshTimer=void 0)},onFetchData(){this.loading=!0,W.refresh(this.id).then(async({data:e})=>{z()&&e.state===y.PENDING?(this.order=(await W.pay(this.id,{pay_way:`AppleIAP`})).data,this.payWay=`AppleIAP`):this.order=e,!z()&&e.pay_way&&(this.payWay=e.pay_way),this.loading=!1}).catch(()=>{this.order=void 0,this.loading=!1})},onRepay(){if(this.payWay===`AppleIAP`||this.order?.pay_way===`Airwallex`){this.onPay();return}this.payWay===`X402`&&(this.x402Session=void 0),this.paying=!0,this.startOrderPolling()},selectedPayWay(){return this.order?.pay_way===`Airwallex`||this.payWay===`Card`?`Airwallex`:this.payWay||`WechatPay`},onPay(){this.prepaying=!0,this.payWay===`X402`&&(this.x402Session=void 0);let e=this.selectedPayWay(),t={pay_way:e};e===`Airwallex`&&R()&&(t.payment_contract=`airwallex_payment_intent`),e===`AliPay`?t.surface=L():e===`Stripe`&&I()&&(t.surface=`android`),W.pay(this.id,t).then(async({data:t})=>{this.prepaying=!1;let{payment:n,...r}=t;if(r?.id&&(this.order=r,this.payWay=r.pay_way||this.payWay),e===`Airwallex`&&n){this.paying=!0,await A(n);return}if(this.payWay===`X402`&&t){let e=t;Array.isArray(e.accepts)&&e.accepts.length>0&&(this.x402Session=e)}(this.order&&this.order.price&&this.order.price>0||this.payWay===`X402`)&&(this.paying=!0,this.startOrderPolling(Bt))}).catch(e=>{this.prepaying=!1,this.paying=!1;let t=e?.response?.data;if(this.payWay===`X402`&&fe(e)){this.x402Session=t,this.paying=!0,this.startOrderPolling(Bt);return}})}}}),Ut={class:`title`},Wt={key:0,class:`pt-5`},Gt={key:1,class:`order`},Kt={key:0,class:`price-block`},qt={class:`price-line`},Jt={key:0,class:`price original`},Yt={class:`price current unfree`},Xt={key:1,class:`price free`},Zt={key:0,class:`x402-error-safety`},Qt={class:`x402-error-code`},$t={key:0,class:`payways mb-6`},en={class:`payname`},tn={class:`payname`},nn={class:`payname`},rn={class:`payname`},an={class:`payname`},on={key:1},sn={key:2};function cn(i,h,g,_,v,y){let b=u(`back-navigation`),x=u(`el-col`),S=u(`el-row`),C=u(`el-skeleton`),w=u(`copy-to-clipboard`),T=u(`el-descriptions-item`),E=u(`meta-tag`),D=u(`el-descriptions`),O=u(`el-empty`),k=u(`el-divider`),A=u(`el-alert`),j=u(`el-button`),M=u(`el-card`),N=u(`wechat-pay-order`),P=u(`stripe-pay-order`),F=u(`alipay-pay-order`),I=u(`paypal-pay-order`),L=u(`x402-pay-order`),R=u(`apple-pay-order`);return m(),d(S,{class:`panel`},{default:f(()=>[a(x,{span:24},{default:f(()=>[a(S,null,{default:f(()=>[a(x,{span:24},{default:f(()=>[a(b,{as:i.backLinkComponent,to:i.backRoute,class:`mb-4`},{default:f(()=>[n(r(i.$t(`common.title.allOrders`)),1)]),_:1},8,[`as`,`to`]),e(`h2`,Ut,r(i.$t(`order.title.info`)),1)]),_:1})]),_:1}),a(S,null,{default:f(()=>[a(x,{span:24},{default:f(()=>[a(M,{shadow:`never`},{default:f(()=>[a(S,null,{default:f(()=>[a(x,{span:16,offset:4},{default:f(()=>[i.loading?(m(),s(`div`,Wt,[a(C,{animated:``})])):i.order?(m(),s(`div`,Gt,[a(D,{column:1},{default:f(()=>[a(T,{label:i.$t(`order.field.id`)},{default:f(()=>[e(`span`,null,r(i.order?.id),1),i.order?.id?(m(),d(w,{key:0,content:i.order?.id,class:`inline-block`},null,8,[`content`])):o(``,!0)]),_:1},8,[`label`]),a(T,{label:i.$t(`order.field.description`)},{default:f(()=>[n(r(i.order?.description),1)]),_:1},8,[`label`]),i.order?.application?.service?(m(),d(T,{key:0,label:i.$t(`order.field.api`)},{default:f(()=>[n(r(i.order?.application?.service?.title),1)]),_:1},8,[`label`])):o(``,!0),i.order?.pay_way?(m(),d(T,{key:1,label:i.$t(`order.field.payWay`)},{default:f(()=>[a(E,{tone:i.payWayTagType(i.order.pay_way),density:`compact`},{default:f(()=>[n(r(i.payWayLabel(i.order.pay_way)),1)]),_:1},8,[`tone`])]),_:1},8,[`label`])):o(``,!0),i.order?.amount&&i.order.amount>0?(m(),d(T,{key:2,label:i.$t(`order.field.amount`)},{default:f(()=>[n(r(i.$t(`order.message.creditsValue`,{value:i.formatCredits(i.order.amount)})),1)]),_:1},8,[`label`])):o(``,!0),a(T,{label:i.$t(`order.field.createdAt`)},{default:f(()=>[n(r(i.$dayjs.format(i.order?.created_at)),1)]),_:1},8,[`label`]),a(T,{label:i.$t(`order.field.price`)},{default:f(()=>[i.shouldShowPriceBlock?(m(),s(`div`,Kt,[e(`div`,qt,[i.showOriginalPrice?(m(),s(`span`,Jt,r(i.getPriceString({value:i.finalOriginalPrice})),1)):o(``,!0),e(`span`,Yt,r(i.getPriceString({value:i.finalDiscountedPrice})),1),(m(!0),s(l,null,p(i.discountBadges,e=>(m(),d(E,{key:e.key,class:`discount-tag`,tone:e.type,density:`compact`},{default:f(()=>[n(r(e.text),1)]),_:2},1032,[`tone`]))),128))]),(m(!0),s(l,null,p(i.discountHints,(e,t)=>(m(),s(`p`,{key:t,class:`discount-hint`},r(e),1))),128))])):(m(),s(`span`,Xt,r(i.$t(`order.message.free`)),1))]),_:1},8,[`label`])]),_:1})])):(m(),d(O,{key:2,description:i.$t(`common.message.noData`)},null,8,[`description`]))]),_:1})]),_:1}),i.order?.state===i.OrderState.PAID||i.order?.state===i.OrderState.FINISHED?(m(),d(S,{key:0,class:`mb-5`},{default:f(()=>[a(x,{span:16,offset:4},{default:f(()=>[a(k,{"border-style":`dashed`}),a(A,{title:i.$t(`order.message.paidSuccessfully`),type:`success`,"show-icon":``,closable:!1},null,8,[`title`])]),_:1})]),_:1})):o(``,!0),i.order?.state===i.OrderState.EXPIRED?(m(),d(S,{key:1,class:`mb-5`},{default:f(()=>[a(x,{span:16,offset:4},{default:f(()=>[a(k,{"border-style":`dashed`}),a(A,{title:i.$t(`order.message.orderExpired`),type:`error`,"show-icon":``,closable:!1},null,8,[`title`])]),_:1})]),_:1})):o(``,!0),i.order?.state===i.OrderState.FAILED?(m(),d(S,{key:2,class:`mb-5`},{default:f(()=>[a(x,{span:16,offset:4},{default:f(()=>[a(k,{"border-style":`dashed`}),a(A,{title:i.orderPaymentError?.title||i.$t(`order.state.failed`),type:i.orderPaymentError?.severity||`error`,"show-icon":``,closable:!1,role:`alert`},c({_:2},[i.orderPaymentError?{name:`default`,fn:f(()=>[e(`p`,null,r(i.orderPaymentError.description),1),i.orderPaymentError.safety?(m(),s(`p`,Zt,r(i.orderPaymentError.safety),1)):o(``,!0),e(`p`,null,r(i.orderPaymentError.nextStep),1),e(`code`,Qt,r(i.orderPaymentError.technicalCode),1)]),key:`0`}:void 0]),1032,[`title`,`type`])]),_:1})]),_:1})):o(``,!0),i.order?.state===i.OrderState.PENDING?(m(),d(S,{key:3},{default:f(()=>[a(x,{span:16,offset:4},{default:f(()=>[a(k,{"border-style":`dashed`}),!i.isIos&&i.showPayment&&i.showPayWays&&i.order.price&&i.order.price>0&&!i.order.pay_way?(m(),s(`div`,$t,[e(`div`,{class:t({payway:!0,wechatpay:!0,active:i.payWay===i.PayWay.WechatPay}),onClick:h[0]||=e=>i.payWay=i.PayWay.WechatPay},[h[17]||=e(`span`,{class:`payicon wechatpay`},null,-1),e(`span`,en,r(i.$t(`order.title.wechatPay`)),1)],2),e(`div`,{class:t({payway:!0,alipay:!0,active:i.payWay===i.PayWay.AliPay}),onClick:h[1]||=e=>i.payWay=i.PayWay.AliPay},[h[18]||=e(`span`,{class:`payicon alipay`},null,-1),e(`span`,tn,r(i.$t(`order.title.aliPay`)),1)],2),e(`div`,{class:t({payway:!0,creditcard:!0,active:i.payWay===i.PayWay.Card}),onClick:h[2]||=e=>i.payWay=i.PayWay.Card},[h[19]||=e(`span`,{class:`payicon card`,"aria-hidden":`true`},null,-1),e(`span`,nn,r(i.$t(`order.title.card`)),1)],2),e(`div`,{class:t({payway:!0,x402:!0,relative:!0,active:i.payWay===i.PayWay.X402}),onClick:h[3]||=e=>i.payWay=i.PayWay.X402},[h[20]||=e(`span`,{class:`payicon x402`},null,-1),e(`span`,rn,r(i.$t(`order.title.x402`)),1),i.x402DiscountRate>0?(m(),d(E,{key:0,class:`absolute -top-2 right-0`,tone:`success`,density:`compact`},{default:f(()=>[n(r(i.$t(`order.message.x402DiscountTag`,{percent:i.x402BadgePercent})),1)]),_:1})):o(``,!0)],2),i.enablePaypal?(m(),s(`div`,{key:0,class:t({payway:!0,paypal:!0,active:i.payWay===i.PayWay.PayPal}),onClick:h[4]||=e=>i.payWay=i.PayWay.PayPal},[h[21]||=e(`span`,{class:`payicon paypal`},null,-1),e(`span`,an,r(i.$t(`order.title.paypal`)),1)],2)):o(``,!0)])):o(``,!0),i.showPayment&&(!i.order?.pay_way||i.payWay===i.PayWay.Apple)?(m(),s(`div`,on,[a(j,{loading:i.prepaying,round:``,type:`primary`,size:`large`,class:`btn-pay`,onClick:i.onPay},{default:f(()=>[n(r(i.$t(`common.button.pay`)),1)]),_:1},8,[`loading`,`onClick`])])):i.showPayment&&!(i.isIos&&i.order?.pay_way===i.PayWay.Airwallex)?(m(),s(`div`,sn,[a(j,{type:`primary`,round:``,size:`large`,class:`btn-repay`,onClick:i.onRepay},{default:f(()=>[n(r(i.$t(`common.button.repay`)),1)]),_:1},8,[`onClick`])])):o(``,!0)]),_:1})]),_:1})):o(``,!0)]),_:1})]),_:1})]),_:1}),a(S,null,{default:f(()=>[a(x,{span:24},{default:f(()=>[i.order&&i.payWay===i.PayWay.WechatPay?(m(),d(N,{key:0,modelValue:i.order,"onUpdate:modelValue":h[5]||=e=>i.order=e,visible:i.paying,onHide:h[6]||=e=>i.paying=!1},null,8,[`modelValue`,`visible`])):o(``,!0),i.order&&(i.payWay===i.PayWay.Stripe||i.payWay===i.PayWay.Card)?(m(),d(P,{key:1,modelValue:i.order,"onUpdate:modelValue":h[7]||=e=>i.order=e,visible:i.paying,onHide:h[8]||=e=>i.paying=!1},null,8,[`modelValue`,`visible`])):o(``,!0),i.order&&i.payWay===i.PayWay.AliPay?(m(),d(F,{key:2,modelValue:i.order,"onUpdate:modelValue":h[9]||=e=>i.order=e,visible:i.paying,onHide:h[10]||=e=>i.paying=!1},null,8,[`modelValue`,`visible`])):o(``,!0),i.order&&i.payWay===i.PayWay.PayPal?(m(),d(I,{key:3,modelValue:i.order,"onUpdate:modelValue":h[11]||=e=>i.order=e,visible:i.paying,onHide:h[12]||=e=>i.paying=!1},null,8,[`modelValue`,`visible`])):o(``,!0),i.order&&i.payWay===i.PayWay.X402?(m(),d(L,{key:4,modelValue:i.order,"onUpdate:modelValue":h[13]||=e=>i.order=e,session:i.x402Session,visible:i.paying,onHide:h[14]||=e=>i.paying=!1},null,8,[`modelValue`,`session`,`visible`])):o(``,!0),i.order&&i.payWay===i.PayWay.Apple?(m(),d(R,{key:5,modelValue:i.order,"onUpdate:modelValue":h[15]||=e=>i.order=e,visible:i.paying,onHide:h[16]||=e=>i.paying=!1},null,8,[`modelValue`,`visible`])):o(``,!0)]),_:1})]),_:1})]),_:1})]),_:1})}var ln=H(Ht,[[`render`,cn],[`__scopeId`,`data-v-be7cff47`]]);export{ln as default};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import"./rolldown-runtime--c01j_DQ.js";import{A as e,Gt as t,I as n,Jt as r,L as i,M as a,N as o,T as s,at as c,ht as l,j as u,mt as d,rt as f,tt as p,x as m,z as h}from"./vendor-chart-Dw-P17PN.js";import{t as g}from"./vendor-vue-router-BVGjZC3n.js";import{n as _,t as ee}from"./form-BdKMEyCR.js";import{g as v,h as y,v as b}from"./vuex.esm-bundler-C-5WV-ta.js";import{t as x}from"./card-IQwqnRJR.js";import{n as S,r as C}from"./radio-BNhFzeBO.js";import{n as w,t as T}from"./row-BxSRQSNe.js";import{t as E}from"./divider-Du_3kymg.js";import{t as D}from"./skeleton-Dj_a_iIP.js";import{t as O}from"./back-navigation-D-lHpBnE.js";import{Aa as k,Ba as A,La as j,Va as M,ka as N,no as P}from"./constants-CspFM8fh.js";import{Ct as F,D as I,En as L,Et as R,Ki as z,Ra as B,St as V,Zi as H,Zr as U,qa as W,to as G}from"./index-Bk9SKIXV.js";var K=h({name:`ApiPrice`,props:{price:{type:Number,required:!1,default:0},unit:{type:String,required:!1,default:void 0},start:{type:Boolean,required:!1,default:!1}},methods:{getPriceString:L}}),q={class:`price-text`},J={key:0,class:`unfree`},Y={key:1,class:`free`};function X(e,t,n,i,a,s){return p(),o(`div`,q,[e.price>0?(p(),o(`span`,J,r(e.getPriceString({value:e.price}))+` `+r(e.unit?` / ${e.unit}`:``)+r(e.start?e.$t(`common.message.startPrice`):``),1)):(p(),o(`span`,Y,r(e.$t(`common.message.free`)),1))])}var Z=I(K,[[`render`,X],[`__scopeId`,`data-v-bb068181`]]),Q=h({name:`ServiceEstimation`,components:{},props:{service:{type:Object,required:!0},package:{type:Object,required:!0}},methods:{getPriceString:L}}),$={class:`estimation`},te={key:0,class:`item`},ne={key:0},re={key:1},ie={key:2},ae={key:0},oe={key:1};function se(e,t,i,c,l,u){return p(),o(`div`,$,[(p(!0),o(s,null,f(e.service?.apis,(t,i)=>(p(),o(`div`,{key:i},[(p(!0),o(s,null,f(t?.estimation,(t,i)=>(p(),o(`div`,{key:i,class:`items`},[e.package?.amount&&t?.cost?(p(),o(`p`,te,[n(` ≈ `+r(t.name)+` `+r(Math.round(e.package.amount/t.cost))+` `+r(e.$t(`api.unit.count`))+` `,1),e.package.price>0?(p(),o(`span`,ne,` - `+r(e.getPriceString({value:e.package.price/(e.package.amount/t.cost),fractionDigits:3})+` / `+e.$t(`api.unit.count`)),1)):a(``,!0),t.remark?(p(),o(`span`,re,` (`+r(t.remark)+`) `,1)):a(``,!0),(t?.comparisons?.length??0)>0?(p(),o(`span`,ie,` - `)):a(``,!0),(p(!0),o(s,null,f(t?.comparisons,(t,n)=>(p(),o(`span`,{key:n,class:`comparison`},[t?.value<0?(p(),o(`i`,ae,r(e.$t(`api.message.cheaperThan`).replace(`$[[value]]`,t?.target?.toString()))+` `+r(Math.abs(t?.value)*100)+`% `,1)):a(``,!0),t?.value>0?(p(),o(`i`,oe,r(e.$t(`api.message.moreExpensiveThan`).replace(`$[[value]]`,t?.target?.toString()))+` `+r(Math.abs(t?.value)*100)+`% `,1)):a(``,!0)]))),128))])):a(``,!0)]))),128))]))),128))])}var ce=h({name:`ConsoleApplicationBuy`,components:{BackNavigation:O,MetaTag:B,ElSkeleton:D,ElRow:T,ElCol:w,ElCard:x,ElForm:ee,ElFormItem:_,ElButton:G,ElDivider:E,ElEmpty:W,ElRadioGroup:C,ElRadioButton:S,Price:Z,ServiceEstimation:I(Q,[[`render`,se],[`__scopeId`,`data-v-768cf35f`]])},data(){return{lang:this.$i18n.locale,application:void 0,loading:!1,loadFailed:!1,type:v.USAGE,form:{packageId:void 0,amount:void 0},creating:!1}},computed:{backLinkComponent(){return g},backRoute(){return{name:V}},isApplePurchase(){return P()},applicationId(){return this.$route.params?.id?.toString()},id(){return this.$route.params?.id?.toString()},showPayment(){return!0},price(){return this.application?.service?.price&&this.form.amount?this.form.amount*this.application.service?.price:0},packages(){let e=this.application?.packages?.filter(e=>e.type===v.USAGE).sort((e,t)=>e.amount-t.amount)||[];return P()?e.filter(e=>!!e?.metadata?.apple_product_id):e},package(){if(this.packages&&this.form.packageId){let e=this.packages.filter(e=>e.id===this.form.packageId);if(e.length>0)return e[0]}},site(){return this.$store.getters.site},globalBuyTitle(){let e=this.$store.state.site?.title||`Ace Data Cloud`;return this.$t(`application.title.globalBuy`,{brand:e})},markupRatio(){return k(this.application,this.site)},orderDiscountRate(){return P()?0:N(this.application)},resolvedPackagePricing(){return P()?A(this.package):M(this.package,this.markupRatio,this.orderDiscountRate)},pricingAvailable(){return this.resolvedPackagePricing!==void 0},displayPackagePrice(){return this.resolvedPackagePricing?.packagePrice},displayUnitPrice(){return this.package&&this.displayPackagePrice!==void 0?this.displayPackagePrice/this.package.amount:void 0},displayFinalPrice(){return this.resolvedPackagePricing?.finalPrice},hasOrderDiscount(){return(this.orderDiscountRate??0)>0},discountPercent(){let e=(this.orderDiscountRate??0)*100;return Number.isInteger(e)?e.toFixed(0):e.toFixed(1)}},mounted(){if(j(this.$store.getters.site)){this.$router.replace({name:V});return}this.onFetchApplication()},methods:{getDiscount(e){return this.packages&&this.packages.length>0?this.lang?.startsWith(`zh`)?(10*e?.price/e?.amount/(this.packages[0].price/this.packages[0]?.amount)).toFixed(1)+`折`:Math.round(100-100*e?.price/e?.amount/(this.packages[0].price/this.packages[0]?.amount))+`% OFF`:``},onSubscribe(){this.$router.push({name:F,params:this.$route.params})},getPriceString:L,onFetchApplication(){this.loading=!0,this.loadFailed=!1,z.get(this.id).then(({data:e})=>{if(e.role===`grantee`){this.$router.replace({name:V});return}if(e.type===y.PERIOD){this.$router.replace({name:F,params:{id:e.id}});return}this.application=e,this.loading=!1,this.form.packageId=this.packages?.[0]?.id}).catch(()=>{this.loading=!1,this.loadFailed=!0})},onChangeType(){this.$router.push({name:F,params:this.$route.params})},onCreateOrder(){if(!this.application?.id||!this.pricingAvailable||!this.package)return;this.creating=!0;let e=this.$t(`service.unit.${this.application?.service?.unit}s`);H(`payment_initiated`,{service:this.application?.service?.alias,amount:this.package?.amount,package_id:this.package?.id,action:`extra`}),U.create({application_id:this.application?.id,...P()?{pay_way:`AppleIAP`}:{},amount:this.package?.amount,...this.form.packageId!==`custom`&&this.package?{package_id:this.package.id}:{},description:this.application?.service?`${this.application?.service?.title} x ${this.package?.amount} ${e}`:this.globalBuyTitle+` - `+this.package?.amount+` `+this.$t(`service.unit.credits`)}).then(({data:e})=>{this.creating=!1;let t=e;this.$router.push({name:R,params:{id:t.id}})}).catch(e=>{b.error(this.$t(`order.message.createFailed`)),this.creating=!1,H(`payment_failed`,{service:this.application?.service?.alias,action:`extra`,error:e?.response?.data?.error?.message??String(e)})})}}}),le={class:`title`},ue={key:1,class:`text-center`},de={key:0},fe={class:`text-[var(--el-text-color-secondary)] text-[12px] mb-3`},pe={key:0,class:`ml-2`},me={key:1,class:`text-[var(--el-text-color-secondary)]`},he={key:0,class:`final-price-block`},ge={class:`final-price-line`},_e={key:0,class:`discount-hint`},ve={key:1,class:`text-[var(--el-text-color-secondary)]`};function ye(h,g,_,ee,v,y){let b=c(`back-navigation`),x=c(`el-col`),S=c(`el-row`),C=c(`el-skeleton`),w=c(`el-empty`),T=c(`el-button`),E=c(`el-divider`),D=c(`el-form-item`),O=c(`el-radio-button`),k=c(`el-radio-group`),A=c(`service-estimation`),j=c(`price`),M=c(`meta-tag`),N=c(`el-form`),P=c(`el-card`);return p(),u(S,{class:`panel`},{default:d(()=>[i(x,{span:24},{default:d(()=>[i(S,null,{default:d(()=>[i(x,{span:24},{default:d(()=>[i(b,{as:h.backLinkComponent,to:h.backRoute,class:`mb-4`},{default:d(()=>[n(r(h.$t(`common.title.allApplications`)),1)]),_:1},8,[`as`,`to`]),e(`h2`,le,r(h.$t(`common.title.buyMore`)),1)]),_:1})]),_:1}),i(S,null,{default:d(()=>[i(x,{span:24},{default:d(()=>[i(P,{shadow:`never`,class:`min-h-[500px]`},{default:d(()=>[i(S,null,{default:d(()=>[i(x,{xs:{span:22,offset:1},sm:{span:20,offset:2},md:{span:16,offset:4}},{default:d(()=>[h.loading?(p(),u(C,{key:0})):h.loadFailed?(p(),o(`div`,ue,[i(w,{description:h.$t(`common.message.noData`)},null,8,[`description`]),i(T,{type:`primary`,round:``,onClick:h.onFetchApplication},{default:d(()=>[n(r(h.$t(`common.button.refresh`)),1)]),_:1},8,[`onClick`])])):h.showPayment?h.application?(p(),u(N,{key:3,class:`purchase-form`,"label-width":`100px`},{default:d(()=>[h.application?.service?a(``,!0):(p(),o(`div`,de,[e(`p`,fe,r(h.$t(`application.message.globalBalanceBuyDescription`)),1),i(E,{"border-style":`dashed`})])),h.application?.service?(p(),u(D,{key:1,label:h.$t(`application.field.service`)},{default:d(()=>[n(r(h.application?.service?.title),1)]),_:1},8,[`label`])):(p(),u(D,{key:2,label:h.$t(`application.field.scope`)},{default:d(()=>[n(r(h.globalBuyTitle),1)]),_:1},8,[`label`])),i(D,{label:h.$t(`application.field.package`),class:`mb-0`},{default:d(()=>[h.packages.length>0?(p(),u(k,{key:0,modelValue:h.form.packageId,"onUpdate:modelValue":g[0]||=e=>h.form.packageId=e,class:`package-options`},{default:d(()=>[(p(!0),o(s,null,f(h.packages,(t,i)=>(p(),u(O,{key:i,label:t.id,class:`mb-2`},{default:d(()=>[l(e(`span`,{class:`corner`},r(h.getDiscount(t)),513),[[m,!h.isApplePurchase&&i!==0]]),n(` `+r(t.amount)+` `+r(h.$t(`service.unit.${h.application?.service?.unit||`credit`}s`)),1)]),_:2},1032,[`label`]))),128))]),_:1},8,[`modelValue`])):(p(),u(w,{key:1,description:h.$t(`common.message.noData`),"image-size":48},null,8,[`description`]))]),_:1},8,[`label`]),h.application?.service?.apis&&h.application?.service?.apis?.map(e=>e?.estimation).filter(e=>!!e)?.length>0?(p(),u(D,{key:3},{default:d(()=>[h.application?.service?(p(),u(A,{key:0,service:h.application.service,package:h.package},null,8,[`service`,`package`])):a(``,!0)]),_:1})):a(``,!0),i(D,{label:h.$t(`service.field.price`)},{default:d(()=>[h.package&&h.pricingAvailable?(p(),o(s,{key:0},[i(j,{price:h.displayPackagePrice},null,8,[`price`]),h.package?(p(),o(`span`,pe,`(`+r(h.getPriceString({value:h.displayUnitPrice})+` / `+h.$t(`service.unit.${h.application?.service?.unit||`credits`}`))+`) `,1)):a(``,!0)],64)):(p(),o(`span`,me,r(h.$t(`common.message.noData`)),1))]),_:1},8,[`label`]),i(E,{"border-style":`dashed`}),i(D,{label:h.$t(`application.field.shouldPayPrice`)},{default:d(()=>[h.displayFinalPrice===void 0?(p(),o(`span`,ve,r(h.$t(`common.message.noData`)),1)):(p(),o(`div`,he,[e(`div`,ge,[e(`span`,{class:t({price:!0,unfree:h.displayFinalPrice>0,free:h.displayFinalPrice===0})},r(h.getPriceString({value:h.displayFinalPrice})),3),h.hasOrderDiscount?(p(),u(M,{key:0,class:`discount-tag`,tone:`success`,density:`compact`},{default:d(()=>[n(r(h.$t(`order.message.discountTag`,{percent:h.discountPercent})),1)]),_:1})):a(``,!0)]),h.hasOrderDiscount?(p(),o(`p`,_e,r(h.$t(`order.message.discountHint`,{percent:h.discountPercent})),1)):a(``,!0)]))]),_:1},8,[`label`]),i(D,null,{default:d(()=>[h.showPayment?(p(),u(T,{key:0,type:`primary`,size:`large`,class:`btn-create`,loading:h.creating,disabled:!h.pricingAvailable||!h.package,round:``,onClick:h.onCreateOrder},{default:d(()=>[n(r(h.$t(`application.button.createOrder`)),1)]),_:1},8,[`loading`,`disabled`,`onClick`])):a(``,!0)]),_:1}),i(E,{"border-style":`dashed`}),l(i(D,{label:``},{default:d(()=>[e(`span`,null,r(h.$t(`console.message.doNotWantExtra`)),1),i(T,{type:`primary`,class:`btn btn-subscribe`,round:``,size:`small`,onClick:h.onSubscribe},{default:d(()=>[n(r(h.$t(`console.message.subscribe`)),1)]),_:1},8,[`onClick`])]),_:1},512),[[m,!1]])]),_:1})):a(``,!0):(p(),u(w,{key:2,description:h.$t(`common.message.noData`)},null,8,[`description`]))]),_:1})]),_:1})]),_:1})]),_:1})]),_:1})]),_:1})]),_:1})}var be=I(ce,[[`render`,ye],[`__scopeId`,`data-v-d87573d2`]]);export{be as default};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import"./rolldown-runtime--c01j_DQ.js";import{A as e,C as t,Gt as n,I as r,Jt as i,L as a,M as o,N as s,T as c,at as l,ht as u,it as d,j as f,mt as p,qt as m,rt as h,tt as g,x as _,z as v}from"./vendor-chart-Dw-P17PN.js";import{r as y,t as b}from"./select-Dv7ZrvnE.js";import{t as x}from"./upload-BG3x_JWJ.js";import{t as S}from"./tooltip-L2G5ntVi.js";import{t as C}from"./alert-BprQRUmf.js";import{_ as w,v as T}from"./vuex.esm-bundler-C-5WV-ta.js";import{t as E}from"./drawer-VaJhlwVr.js";import{t as D}from"./input-number-BwJ2QIsY.js";import{t as O}from"./switch-CFUCWNgM.js";import{t as k}from"./box-3_e2nW7_.js";import{t as A}from"./clock-DIjv9Rh6.js";import{t as j}from"./hash-B61j4cgz.js";import{t as M}from"./info-CDi6ZfZf.js";import{a as N,i as ee,n as P,o as te,r as F,t as ne}from"./pagination-BodQ3KsQ.js";import{t as I}from"./trash-2-CUcSh2xz.js";import{t as re}from"./triangle-alert-fl0O4ttl.js";import{t as L}from"./upload-ClpzRFqM.js";import{t as ie}from"./volume-2-DuPw1i4l.js";import{t as R}from"./wand-sparkles-C9xUdsPZ.js";import{Cn as z,Ua as B,_n as ae,an as oe,bn as se,cn as ce,dn as le,fn as ue,gn as de,hn as fe,ln as pe,mn as me,nn as he,on as ge,pn as _e,sn as ve,tn as ye,un as be,vn as xe,xn as Se,yn as Ce}from"./constants-CspFM8fh.js";import{D as V,Fi as we,Ha as Te,Ia as H,Jn as U,Li as W,Ra as Ee,T as De,Tn as Oe,Xi as ke,at as Ae,ct as G,ia as je,li as Me,lt as K,oi as Ne,ot as q,st as Pe,to as J,tt as Y}from"./index-Bk9SKIXV.js";import{t as Fe}from"./CopyToClipboard-CIB9LY9Y.js";import{t as Ie}from"./ReportButton-D3eba7A1.js";import{t as X}from"./ImagePreview-Dq6UkYX8.js";import{n as Le}from"./taskDrawerMixin-DyAUhFEq.js";import{t as Re}from"./ServicePricingSummary-N2X5DfKj.js";import{t as ze}from"./AudioPreview-fEc2Zd45.js";import{t as Be}from"./VideoPlayer-BNtDhrpR.js";import{t as Ve}from"./VideoPreview-K60Fueap.js";import{t as He}from"./ScenarioPaymentMode-BwoqFZco.js";import{t as Ue}from"./ApiCodeButton-C5tBSXac.js";import{t as We}from"./BotPlaceholder-7Rci0gLD.js";import{t as Ge}from"./taskPollingMixin-CcLxtz8z.js";import{t as Ke}from"./ShowcaseResultTabs-Bx16-8QM.js";import{t as qe}from"./showcaseRecreateMixin-C0UnaxsG.js";import{t as Je}from"./generationInput-VbA_cpqx.js";import{t as Ye}from"./ImageWrapper-C9nEUyQX.js";var Xe=v({name:`LayoutSeedance`,components:{MagicIcon:R,ElDrawer:E,ElButton:J},mixins:[Le]}),Ze={class:`main flex flex-row flex-1`},Qe={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)]`},$e={class:`result h-full p-4 flex-1 flex flex-col min-w-0 overflow-x-hidden bg-[var(--app-content-bg)]`};function et(t,n,r,i,o,c){let f=l(`magic-icon`),m=l(`el-button`),h=l(`el-drawer`);return g(),s(`div`,Ze,[e(`div`,Qe,[d(t.$slots,`config`,{},void 0,!0)]),e(`div`,$e,[d(t.$slots,`result`,{},void 0,!0)]),u(a(m,{circle:``,class:`menu`,"aria-label":t.$t(`common.button.openMenu`),title:t.$t(`common.button.openMenu`),onClick:n[0]||=e=>t.drawer=!0},{default:p(()=>[a(f,{size:`1em`,"aria-hidden":`true`,focusable:`false`})]),_:1},8,[`aria-label`,`title`]),[[_,!t.tasksEmpty]]),a(h,{modelValue:t.drawer,"onUpdate:modelValue":n[1]||=e=>t.drawer=e,direction:`ltr`,"with-header":!1,size:`340px`,class:`generator-drawer`},{default:p(()=>[d(t.$slots,`config`,{},void 0,!0)]),_:3},8,[`modelValue`])])}var tt=V(Xe,[[`render`,et],[`__scopeId`,`data-v-86340af4`]]),nt=v({name:`SeedancePromptInput`,components:{PromptTextarea:ee},computed:{prompt:{get(){return this.$store.state.seedance?.config?.prompt},set(e){this.$store.commit(`seedance/setConfig`,{...this.$store.state.seedance?.config,prompt:e})}}},mounted(){this.prompt||=``}});function rt(e,t,n,r,i,a){let o=l(`prompt-textarea`);return g(),f(o,{modelValue:e.prompt,"onUpdate:modelValue":t[0]||=t=>e.prompt=t,title:e.$t(`seedance.name.prompt`),info:e.$t(`seedance.description.prompt`),placeholder:e.$t(`seedance.placeholder.prompt`),"min-rows":5},null,8,[`modelValue`,`title`,`info`,`placeholder`])}var it=V(nt,[[`render`,rt]]),at=v({name:`SeedanceModelSelector`,components:{ElSelect:y,ElOption:b,InfoIcon:N},data(){return{options:[{value:_e,label:this.$t(`seedance.model.seedance25`)},{value:be,label:this.$t(`seedance.model.seedance20`)},{value:le,label:this.$t(`seedance.model.seedance20Fast`)},{value:ue,label:this.$t(`seedance.model.seedance20Mini`)},{value:pe,label:this.$t(`seedance.model.seedance15pro`)},{value:ve,label:this.$t(`seedance.model.seedance10pro`)},{value:ce,label:this.$t(`seedance.model.seedance10proFast`)},{value:ge,label:this.$t(`seedance.model.seedance10liteT2v`)},{value:oe,label:this.$t(`seedance.model.seedance10liteI2v`)}]}},computed:{value:{get(){return this.$store.state.seedance?.config?.model},set(e){this.$store.commit(`seedance/setConfig`,{...this.$store.state.seedance?.config,model:e})}}},mounted(){this.value||=ye}}),ot={class:`field`},st={class:`label`},ct={class:`box`},lt={class:`title font-bold`};function ut(t,n,r,o,u,d){let m=l(`info-icon`),_=l(`el-option`),v=l(`el-select`);return g(),s(`div`,ot,[e(`div`,st,[e(`div`,ct,[e(`h2`,lt,i(t.$t(`seedance.name.model`)),1),a(m,{content:t.$t(`seedance.description.model`),class:`info`},null,8,[`content`])])]),a(v,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,class:`value`,placeholder:t.$t(`seedance.placeholder.select`)},{default:p(()=>[(g(!0),s(c,null,h(t.options,e=>(g(),f(_,{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`])])}var dt=V(at,[[`render`,ut],[`__scopeId`,`data-v-0092c9dc`]]),ft=v({name:`SeedanceDurationSelector`,components:{ElSelect:y,ElOption:b,InfoIcon:N},computed:{model(){return this.$store.state.seedance?.config?.model},capability(){return z(this.model)},options(){let e=[];this.capability.supportsAutoDuration&&e.push({value:-1,label:`${this.$t(`seedance.placeholder.seed`)} (-1)`});for(let t=this.capability.minDuration;t<=this.capability.maxDuration;t++)e.push({value:t,label:`${t}s`});return e},value:{get(){return this.$store.state.seedance?.config?.duration},set(e){this.$store.commit(`seedance/setConfig`,{...this.$store.state.seedance?.config,duration:e})}}},watch:{model(){this.clampValue()}},mounted(){this.value?this.clampValue():this.value=5},methods:{clampValue(){let e=this.value;e!==void 0&&!(e===-1&&this.capability.supportsAutoDuration)&&(e<this.capability.minDuration||e>this.capability.maxDuration)&&(this.value=5)}}}),pt={class:`field`},mt={class:`label`},ht={class:`box`},gt={class:`title font-bold`};function _t(t,n,r,o,u,d){let m=l(`info-icon`),_=l(`el-option`),v=l(`el-select`);return g(),s(`div`,pt,[e(`div`,mt,[e(`div`,ht,[e(`h2`,gt,i(t.$t(`seedance.name.duration`)),1),a(m,{content:t.$t(`seedance.description.duration`),class:`info`},null,8,[`content`])])]),a(v,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,class:`value`,placeholder:t.$t(`seedance.placeholder.select`)},{default:p(()=>[(g(!0),s(c,null,h(t.options,e=>(g(),f(_,{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`])])}var vt=V(ft,[[`render`,_t],[`__scopeId`,`data-v-d61cc21b`]]),Z={[se]:0,[Se]:1,[Ce]:2,"4k":3},yt=v({name:`SeedanceResolutionSelector`,components:{InfoIcon:N,ElTooltip:S},computed:{model(){return this.$store.state.seedance?.config?.model},capability(){return z(this.model)},options(){let e=[{value:se,label:`480p`},{value:Se,label:`720p`},{value:Ce,label:`1080p`},{value:`4k`,label:`4k`}],t=Z[this.capability.maxResolution]??Z[`1080p`];return e.map(e=>({...e,disabled:Z[e.value]>t}))},value:{get(){return this.$store.state.seedance?.config?.resolution},set(e){this.$store.commit(`seedance/setConfig`,{...this.$store.state.seedance?.config,resolution:e})}}},watch:{model(){this.clampValue()}},mounted(){this.value?this.clampValue():this.value=this.capability.defaultResolution||`720p`},methods:{onSelect(e){e.disabled||(this.value=e.value)},clampValue(){let e=this.value,t=this.options.find(t=>t.value===e);(!e||t&&t.disabled)&&(this.value=this.capability.defaultResolution||`720p`)}}}),bt={class:`resolution`},xt={class:`header`},St={class:`title font-bold`},Ct={class:`items`},wt=[`onClick`];function Tt(t,r,o,u,d,m){let _=l(`info-icon`),v=l(`el-tooltip`);return g(),s(`div`,bt,[e(`div`,xt,[e(`h2`,St,i(t.$t(`seedance.name.resolution`)),1),a(_,{content:t.$t(`seedance.description.resolution`),class:`info`},null,8,[`content`])]),e(`div`,Ct,[(g(!0),s(c,null,h(t.options,r=>(g(),f(v,{key:r.value,content:t.$t(`seedance.message.resolutionNotSupported`),disabled:!r.disabled,placement:`top`},{default:p(()=>[e(`div`,{class:n([`item`,{active:t.value===r.value,disabled:r.disabled}]),onClick:e=>t.onSelect(r)},i(r.label),11,wt)]),_:2},1032,[`content`,`disabled`]))),128))])])}var Et=V(yt,[[`render`,Tt],[`__scopeId`,`data-v-db7e8aff`]]),Dt=v({name:`SeedanceRatioSelector`,components:{InfoIcon:N},computed:{options(){return[{value:fe,label:`16:9`,w:32,h:18},{value:ae,label:`9:16`,w:18,h:32},{value:`4:3`,label:`4:3`,w:28,h:21},{value:`3:4`,label:`3:4`,w:21,h:28},{value:`1:1`,label:`1:1`,w:24,h:24},{value:de,label:`21:9`,w:34,h:14},{value:xe,label:this.$t(`seedance.ratio.adaptive`),w:0,h:0}]},value:{get(){return this.$store.state.seedance?.config?.ratio},set(e){this.$store.commit(`seedance/setConfig`,{...this.$store.state.seedance?.config,ratio:e})}}},mounted(){this.value||=he}}),Ot={class:`ratio`},kt={class:`header`},At={class:`title font-bold`},jt={class:`items`},Mt=[`onClick`],Nt={class:`preview`},Pt={key:1,class:`rect rect-auto`},Ft={class:`name`};function It(t,r,o,u,d,f){let p=l(`info-icon`);return g(),s(`div`,Ot,[e(`div`,kt,[e(`h2`,At,i(t.$t(`seedance.name.ratio`)),1),a(p,{content:t.$t(`seedance.description.ratio`),class:`info`},null,8,[`content`])]),e(`div`,jt,[(g(!0),s(c,null,h(t.options,r=>(g(),s(`div`,{key:r.value,class:n([`item`,{active:t.value===r.value}]),onClick:e=>t.value=r.value},[e(`div`,Nt,[r.w&&r.h?(g(),s(`div`,{key:0,class:`rect`,style:m({width:r.w+`px`,height:r.h+`px`})},null,4)):(g(),s(`div`,Pt,`A`))]),e(`div`,Ft,i(r.label),1)],10,Mt))),128))])])}var Lt=V(Dt,[[`render`,It],[`__scopeId`,`data-v-8ddec2dd`]]),Rt=v({name:`SeedanceGenerateAudioSwitch`,components:{ElSwitch:O,InfoIcon:N},computed:{isSupported(){let e=this.$store.state.seedance?.config?.model;return z(e).acceptsAudio},value:{get(){return this.$store.state.seedance?.config?.generate_audio??!1},set(e){this.$store.commit(`seedance/setConfig`,{...this.$store.state.seedance?.config,generate_audio:e})}}},watch:{isSupported(e){!e&&this.value&&(this.value=!1)}},mounted(){this.value===void 0&&(this.value=!1)}}),zt={key:0,class:`field`},Bt={class:`label`},Vt={class:`box`},Ht={class:`title font-bold`},Ut={class:`value`};function Wt(t,n,r,c,u,d){let f=l(`info-icon`),p=l(`el-switch`);return t.isSupported?(g(),s(`div`,zt,[e(`div`,Bt,[e(`div`,Vt,[e(`h2`,Ht,i(t.$t(`seedance.name.generateAudio`)),1),a(f,{content:t.$t(`seedance.description.generateAudio`),class:`info`},null,8,[`content`])])]),e(`div`,Ut,[a(p,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,"inline-prompt":``,"active-text":t.$t(`seedance.button.on`),"inactive-text":t.$t(`seedance.button.off`)},null,8,[`modelValue`,`active-text`,`inactive-text`])])])):o(``,!0)}var Gt=V(Rt,[[`render`,Wt],[`__scopeId`,`data-v-df51dfbd`]]),Kt=v({name:`SeedanceCameraFixedSwitch`,components:{ElSwitch:O,InfoIcon:N},computed:{value:{get(){return this.$store.state.seedance?.config?.camerafixed??!1},set(e){this.$store.commit(`seedance/setConfig`,{...this.$store.state.seedance?.config,camerafixed:e})}}},mounted(){this.$store.state.seedance?.config?.camerafixed===void 0&&(this.value=!1)}}),qt={class:`field`},Jt={class:`label`},Yt={class:`box`},Xt={class:`title font-bold`},Zt={class:`value`};function Qt(t,n,r,o,c,u){let d=l(`info-icon`),f=l(`el-switch`);return g(),s(`div`,qt,[e(`div`,Jt,[e(`div`,Yt,[e(`h2`,Xt,i(t.$t(`seedance.name.cameraFixed`)),1),a(d,{content:t.$t(`seedance.description.cameraFixed`),class:`info`},null,8,[`content`])])]),e(`div`,Zt,[a(f,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,"inline-prompt":``,"active-text":t.$t(`seedance.button.on`),"inactive-text":t.$t(`seedance.button.off`)},null,8,[`modelValue`,`active-text`,`inactive-text`])])])}var $t=V(Kt,[[`render`,Qt],[`__scopeId`,`data-v-ae777d61`]]),en=new Set(Object.keys(me)),tn=e=>Array.isArray(e)?e.filter(e=>B(e?.url)):[];function Q(e){let t=tn(e?.images),n=t.some(e=>!e.role||e.role===`first_frame`||e.role===`last_frame`),r=t.some(e=>e.role===`reference_image`)||e?.audios?.some(e=>B(e?.url))===!0||e?.videos?.some(e=>B(e?.url))===!0;return{frame:n,reference:r,mixed:n&&r}}function $(e){let t={...e||{}};if(typeof t.prompt==`string`&&(t.prompt=t.prompt.trim(),t.prompt||delete t.prompt),t.model&&!en.has(t.model))return{reject:`modelUnsupported`};let n=z(t.model);t.images=tn(t.images);let r=t.images.some(e=>e.role===`first_frame`),i=t.images.some(e=>e.role===`last_frame`);!r&&i&&(t.images=t.images.map(e=>e.role===`last_frame`?{...e,role:`first_frame`}:e));let a=t.images.length>0;if(a||delete t.images,delete t.service_tier,!n.acceptsImage&&a)return{reject:`modelRejectsImage`};if(!n.acceptsAudio&&t.generate_audio&&(t.generate_audio=!1),!n.acceptsReturnLastFrame&&t.return_last_frame&&(t.return_last_frame=!1),!n.acceptsLastFrame&&a&&(t.images=t.images.filter(e=>e.role!==`last_frame`),a=t.images.length>0,a||delete t.images),n.acceptsReferenceAudio&&Array.isArray(t.audios)&&(t.audios=t.audios.filter(e=>B(e?.url))),(!n.acceptsReferenceAudio||!Array.isArray(t.audios)||t.audios.length===0)&&delete t.audios,n.acceptsReferenceVideo&&Array.isArray(t.videos)&&(t.videos=t.videos.filter(e=>B(e?.url))),(!n.acceptsReferenceVideo||!Array.isArray(t.videos)||t.videos.length===0)&&delete t.videos,!n.acceptsReferenceImage&&Array.isArray(t.images)&&(t.images=t.images.filter(e=>e.role!==`reference_image`),t.images.length===0&&delete t.images),a=Array.isArray(t.images)&&t.images.length>0,Q(t).mixed)return{reject:`frameReferenceConflict`};if(n.requiresImage&&!a||!n.acceptsText&&!a)return{reject:`modelRequiresImage`};let o=Array.isArray(t.videos)&&t.videos.length>0,s=(t.images||[]).filter(e=>e.role===`reference_image`).length,c=t.model===`doubao-seedance-2-5-260628`?t.images?.length||0:s,l=t.videos?.length||0,u=t.audios?.length||0;return s>n.maxReferenceImages||l>n.maxReferenceVideos||u>n.maxReferenceAudios||c+l+u>n.maxReferenceMedia?{reject:`referenceMediaExceeded`}:Array.isArray(t.audios)&&t.audios.length>0&&!a&&!o&&!n.supportsAudioOnly?{reject:`audioRequiresReference`}:(n.taskTypes.includes(t.omni_reference_task_type)||delete t.omni_reference_task_type,t.omni_reference_task_type===`reference`&&!Q(t).reference?{reject:`taskRequiresReferenceMedia`}:(n.outputFormats.includes(t.output_format)||delete t.output_format,t.model===`doubao-seedance-2-5-260628`&&t.web_search===!0?t.tools=[{type:`web_search`}]:delete t.tools,delete t.web_search,t.model===`doubao-seedance-2-5-260628`&&t.images?.some(e=>e.role===`first_frame`||e.role===`last_frame`)&&(t.ratio=`adaptive`),(t.omni_reference_task_type===`edit`||t.omni_reference_task_type===`extend`)&&!o?{reject:`taskRequiresVideo`}:!t.prompt&&!a&&!o&&!Array.isArray(t.audios)?{reject:`generationInputRequired`}:(t.omni_reference_task_type===`edit`?(t.ratio=`adaptive`,t.duration=-1):t.omni_reference_task_type===`extend`&&(t.ratio=`adaptive`),{request:{...t,async:!0}})))}var nn=v({name:`SeedanceFirstFrameImage`,components:{MetaTag:Ee,UploadIcon:L,ElUpload:x,ElButton:J,ElTooltip:S,InfoIcon:N,ImagePreview:X},mixins:[K,G,q,Y],data(){return{fileList:[],uploadUrl:H()+`/api/v1/files/`}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},model(){return this.$store.state.seedance?.config?.model},capability(){return z(this.model)},inputModes(){return Q(this.$store.state.seedance?.config)},uploadDisabled(){return this.inputModes.reference},dropDisabled(){return this.uploadDisabled},uploadTooltip(){return this.uploadDisabled?this.$t(`seedance.message.frameUploadBlocked`):``},urls(){return this.fileList.map(e=>e?.response?.file_url)}},watch:{"capability.acceptsImage"(e){e||(this.fileList=[],this.onSetFirstFrameUrl())}},methods:{onBeforeUpload(e){return this.uploadDisabled?(T.warning(this.$t(`seedance.message.frameUploadBlocked`)),!1):this.beforeUploadSizeGuard(e)},onRemoveFile(e){this.fileList.splice(this.fileList.indexOf(e),1),this.onSetFirstFrameUrl()},onExceed(){T.warning(this.$t(`seedance.message.uploadExceed`))},onError(){T.error(this.$t(`seedance.message.uploadError`))},onSetFirstFrameUrl(){let e=this.urls?.[0],t=(this.$store.state.seedance?.config?.images||[]).filter(e=>e?.role!==`first_frame`);e&&t.push({url:e,role:`first_frame`}),this.$store.commit(`seedance/setConfig`,{...this.$store.state.seedance?.config,images:t.length>0?t:void 0})},async onSuccess(){this.onSetFirstFrameUrl()},async onRemove(){this.onSetFirstFrameUrl()}}}),rn={key:0,class:`relative`},an={class:`flex min-h-8 items-center pr-20`},on={class:`flex justify-start items-center`},sn={class:`text-sm font-bold`};function cn(t,n,c,u,d,m){let h=l(`meta-tag`),_=l(`info-icon`),v=l(`image-preview`),y=l(`upload-icon`),b=l(`el-button`),x=l(`el-tooltip`),S=l(`el-upload`);return t.capability.acceptsImage?(g(),s(`div`,rn,[e(`div`,an,[e(`div`,on,[e(`span`,sn,i(t.$t(`seedance.name.firstFrame`)),1),t.capability.requiresImage?(g(),f(h,{key:0,class:`required-badge`,density:`compact`,tone:`warning`},{default:p(()=>[r(i(t.$t(`seedance.name.required`)),1)]),_:1})):o(``,!0),a(_,{content:t.$t(`seedance.description.firstFrame`)},null,8,[`content`])])]),a(S,{ref:`uploader`,"file-list":t.fileList,"onUpdate:fileList":n[0]||=e=>t.fileList=e,name:`file`,accept:`.png,.jpg,.jpeg,.gif,.bmp,.webp`,limit:1,class:`upload-wrapper`,multiple:!1,"before-upload":t.onBeforeUpload,action:t.uploadUrl,"list-type":`picture`,"on-exceed":t.onExceed,"on-error":t.onError,"on-success":t.onSuccess,"on-remove":t.onRemove,headers:t.headers},{file:p(({file:e})=>[e.url&&e.percentage!==void 0?(g(),f(v,{key:0,url:e.url,name:e.name,percentage:e.percentage,onRemove:n=>t.onRemoveFile(e)},null,8,[`url`,`name`,`percentage`,`onRemove`])):o(``,!0)]),default:p(()=>[a(x,{content:t.uploadTooltip,disabled:!t.uploadDisabled,placement:`top`},{default:p(()=>[e(`span`,null,[a(b,{round:``,type:`primary`,size:`small`,class:`btn btn-upload`,disabled:t.uploadDisabled},{default:p(()=>[a(y,{class:`icon mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`seedance.button.upload`)),1)]),_:1},8,[`disabled`])])]),_:1},8,[`content`,`disabled`])]),_:1},8,[`file-list`,`before-upload`,`action`,`on-exceed`,`on-error`,`on-success`,`on-remove`,`headers`])])):o(``,!0)}var ln=V(nn,[[`render`,cn],[`__scopeId`,`data-v-b6c34daf`]]),un=v({name:`SeedanceLastFrameImage`,components:{UploadIcon:L,ElUpload:x,ElButton:J,ElTooltip:S,ImagePreview:X,InfoIcon:N},mixins:[K,G,q,Y],data(){return{fileList:[],uploadUrl:H()+`/api/v1/files/`}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},model(){return this.$store.state.seedance?.config?.model},capability(){return z(this.model)},inputModes(){return Q(this.$store.state.seedance?.config)},uploadDisabled(){return this.inputModes.reference},dropDisabled(){return this.uploadDisabled},uploadTooltip(){return this.uploadDisabled?this.$t(`seedance.message.frameUploadBlocked`):``},urls(){return this.fileList.map(e=>e?.response?.file_url)}},watch:{"capability.acceptsLastFrame"(e){e||(this.fileList=[],this.onSetLastFrameUrl())}},methods:{onBeforeUpload(e){return this.uploadDisabled?(T.warning(this.$t(`seedance.message.frameUploadBlocked`)),!1):this.beforeUploadSizeGuard(e)},onRemoveFile(e){this.fileList.splice(this.fileList.indexOf(e),1),this.onSetLastFrameUrl()},onExceed(){T.warning(this.$t(`seedance.message.uploadExceed`))},onError(){T.error(this.$t(`seedance.message.uploadError`))},onSetLastFrameUrl(){let e=this.urls?.[0],t=(this.$store.state.seedance?.config?.images||[]).filter(e=>e?.role!==`last_frame`);e&&t.push({url:e,role:`last_frame`}),this.$store.commit(`seedance/setConfig`,{...this.$store.state.seedance?.config,images:t.length>0?t:void 0})},async onSuccess(){this.onSetLastFrameUrl()},async onRemove(){this.onSetLastFrameUrl()}}}),dn={key:0,class:`relative`},fn={class:`flex min-h-8 items-center pr-20`},pn={class:`flex justify-start items-center`},mn={class:`text-sm font-bold`};function hn(t,n,c,u,d,m){let h=l(`info-icon`),_=l(`image-preview`),v=l(`upload-icon`),y=l(`el-button`),b=l(`el-tooltip`),x=l(`el-upload`);return t.capability.acceptsLastFrame?(g(),s(`div`,dn,[e(`div`,fn,[e(`div`,pn,[e(`span`,mn,i(t.$t(`seedance.name.lastFrame`)),1),a(h,{content:t.$t(`seedance.description.lastFrame`)},null,8,[`content`])])]),a(x,{ref:`uploader`,"file-list":t.fileList,"onUpdate:fileList":n[0]||=e=>t.fileList=e,name:`file`,accept:`.png,.jpg,.jpeg,.gif,.bmp,.webp`,limit:1,class:`upload-wrapper`,multiple:!1,"before-upload":t.onBeforeUpload,action:t.uploadUrl,"list-type":`picture`,"on-exceed":t.onExceed,"on-error":t.onError,"on-success":t.onSuccess,"on-remove":t.onRemove,headers:t.headers},{file:p(({file:e})=>[e.url&&e.percentage!==void 0?(g(),f(_,{key:0,url:e.url,name:e.name,percentage:e.percentage,onRemove:n=>t.onRemoveFile(e)},null,8,[`url`,`name`,`percentage`,`onRemove`])):o(``,!0)]),default:p(()=>[a(b,{content:t.uploadTooltip,disabled:!t.uploadDisabled,placement:`top`},{default:p(()=>[e(`span`,null,[a(y,{round:``,type:`primary`,size:`small`,class:`btn btn-upload`,disabled:t.uploadDisabled},{default:p(()=>[a(v,{class:`icon mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`seedance.button.upload`)),1)]),_:1},8,[`disabled`])])]),_:1},8,[`content`,`disabled`])]),_:1},8,[`file-list`,`before-upload`,`action`,`on-exceed`,`on-error`,`on-success`,`on-remove`,`headers`])])):o(``,!0)}var gn=V(un,[[`render`,hn],[`__scopeId`,`data-v-198d2769`]]),_n=v({name:`SeedanceReferenceImage`,components:{UploadIcon:L,ElUpload:x,ElButton:J,ElTooltip:S,InfoIcon:N,ImagePreview:X},mixins:[K,G,q,Y],data(){return{fileList:[],uploadUrl:H()+`/api/v1/files/`}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},model(){return this.$store.state.seedance?.config?.model},capability(){return z(this.model)},inputModes(){return Q(this.$store.state.seedance?.config)},uploadDisabled(){return this.inputModes.frame},dropDisabled(){return this.uploadDisabled},uploadTooltip(){return this.uploadDisabled?this.$t(`seedance.message.referenceUploadBlocked`):``},urls(){return this.fileList.map(e=>e?.response?.file_url)}},watch:{"capability.acceptsReferenceImage"(e){e||(this.fileList=[],this.onSetReferenceImageUrls())}},methods:{onBeforeUpload(e){return this.uploadDisabled?(T.warning(this.$t(`seedance.message.referenceUploadBlocked`)),!1):this.beforeUploadSizeGuard(e)},onRemoveFile(e){this.fileList.splice(this.fileList.indexOf(e),1),this.onSetReferenceImageUrls()},onExceed(){T.warning(this.$t(`seedance.message.uploadExceed`))},onError(){T.error(this.$t(`seedance.message.uploadError`))},onSetReferenceImageUrls(){let e=(this.urls||[]).filter(Boolean),t=(this.$store.state.seedance?.config?.images||[]).filter(e=>e?.role!==`reference_image`);e.forEach(e=>t.push({url:e,role:`reference_image`})),this.$store.commit(`seedance/setConfig`,{...this.$store.state.seedance?.config,images:t.length>0?t:void 0})},async onSuccess(){this.onSetReferenceImageUrls()},async onRemove(){this.onSetReferenceImageUrls()}}}),vn={key:0,class:`relative`},yn={class:`flex min-h-8 items-center pr-20`},bn={class:`flex justify-start items-center`},xn={class:`text-sm font-bold`};function Sn(t,n,c,u,d,m){let h=l(`info-icon`),_=l(`image-preview`),v=l(`upload-icon`),y=l(`el-button`),b=l(`el-tooltip`),x=l(`el-upload`);return t.capability.acceptsReferenceImage?(g(),s(`div`,vn,[e(`div`,yn,[e(`div`,bn,[e(`span`,xn,i(t.$t(`seedance.name.referenceImage`)),1),a(h,{content:t.$t(`seedance.description.referenceImage`)},null,8,[`content`])])]),a(x,{ref:`uploader`,"file-list":t.fileList,"onUpdate:fileList":n[0]||=e=>t.fileList=e,name:`file`,accept:`.png,.jpg,.jpeg,.gif,.bmp,.webp`,limit:t.capability.maxReferenceImages,class:`upload-wrapper`,multiple:t.capability.maxReferenceImages>1,"before-upload":t.onBeforeUpload,action:t.uploadUrl,"list-type":`picture`,"on-exceed":t.onExceed,"on-error":t.onError,"on-success":t.onSuccess,"on-remove":t.onRemove,headers:t.headers},{file:p(({file:e})=>[e.url&&e.percentage!==void 0?(g(),f(_,{key:0,url:e.url,name:e.name,percentage:e.percentage,onRemove:n=>t.onRemoveFile(e)},null,8,[`url`,`name`,`percentage`,`onRemove`])):o(``,!0)]),default:p(()=>[a(b,{content:t.uploadTooltip,disabled:!t.uploadDisabled,placement:`top`},{default:p(()=>[e(`span`,null,[a(y,{round:``,type:`primary`,size:`small`,class:`btn btn-upload`,disabled:t.uploadDisabled},{default:p(()=>[a(v,{class:`icon mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`seedance.button.upload`)),1)]),_:1},8,[`disabled`])])]),_:1},8,[`content`,`disabled`])]),_:1},8,[`file-list`,`limit`,`multiple`,`before-upload`,`action`,`on-exceed`,`on-error`,`on-success`,`on-remove`,`headers`])])):o(``,!0)}var Cn=V(_n,[[`render`,Sn],[`__scopeId`,`data-v-591ef66f`]]),wn=v({name:`SeedanceReferenceAudio`,components:{UploadIcon:L,ElUpload:x,ElButton:J,ElTooltip:S,InfoIcon:N},mixins:[G,q,Y],data(){return{fileList:[],uploadUrl:H()+`/api/v1/files/`}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},model(){return this.$store.state.seedance?.config?.model},capability(){return z(this.model)},inputModes(){return Q(this.$store.state.seedance?.config)},uploadDisabled(){return this.inputModes.frame},dropDisabled(){return this.uploadDisabled},uploadTooltip(){return this.uploadDisabled?this.$t(`seedance.message.referenceUploadBlocked`):``},urls(){return this.fileList.map(e=>e?.response?.file_url)}},watch:{"capability.acceptsReferenceAudio"(e){e||(this.fileList=[],this.onSetReferenceAudios())}},methods:{onBeforeUpload(e){return this.uploadDisabled?(T.warning(this.$t(`seedance.message.referenceUploadBlocked`)),!1):this.beforeUploadSizeGuard(e)},onExceed(){T.warning(this.$t(`seedance.message.uploadExceed`))},onError(){T.error(this.$t(`seedance.message.uploadError`))},onSetReferenceAudios(){let e=(this.urls||[]).filter(Boolean);this.$store.commit(`seedance/setConfig`,{...this.$store.state.seedance?.config,audios:e.length>0?e.map(e=>({url:e})):void 0})},async onSuccess(){this.onSetReferenceAudios()},async onRemove(){this.onSetReferenceAudios()}}}),Tn={key:0,class:`relative`},En={class:`flex min-h-8 items-center pr-20`},Dn={class:`flex justify-start items-center`},On={class:`text-sm font-bold`};function kn(t,n,c,u,d,f){let m=l(`info-icon`),h=l(`upload-icon`),_=l(`el-button`),v=l(`el-tooltip`),y=l(`el-upload`);return t.capability.acceptsReferenceAudio?(g(),s(`div`,Tn,[e(`div`,En,[e(`div`,Dn,[e(`span`,On,i(t.$t(`seedance.name.referenceAudio`)),1),a(m,{content:t.$t(`seedance.description.referenceAudio`)},null,8,[`content`])])]),a(y,{ref:`uploader`,"file-list":t.fileList,"onUpdate:fileList":n[0]||=e=>t.fileList=e,name:`file`,accept:`.mp3,.wav,.m4a,.aac,.ogg,.flac`,limit:t.capability.maxReferenceAudios,class:`upload-wrapper`,multiple:t.capability.maxReferenceAudios>1,"before-upload":t.onBeforeUpload,action:t.uploadUrl,"list-type":`text`,"on-exceed":t.onExceed,"on-error":t.onError,"on-success":t.onSuccess,"on-remove":t.onRemove,headers:t.headers},{default:p(()=>[a(v,{content:t.uploadTooltip,disabled:!t.uploadDisabled,placement:`top`},{default:p(()=>[e(`span`,null,[a(_,{round:``,type:`primary`,size:`small`,class:`btn btn-upload`,disabled:t.uploadDisabled},{default:p(()=>[a(h,{class:`icon mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`seedance.button.upload`)),1)]),_:1},8,[`disabled`])])]),_:1},8,[`content`,`disabled`])]),_:1},8,[`file-list`,`limit`,`multiple`,`before-upload`,`action`,`on-exceed`,`on-error`,`on-success`,`on-remove`,`headers`])])):o(``,!0)}var An=V(wn,[[`render`,kn],[`__scopeId`,`data-v-cb408b11`]]),jn=v({name:`SeedanceReferenceVideo`,components:{UploadIcon:L,ElUpload:x,ElButton:J,ElTooltip:S,InfoIcon:N},mixins:[G,q,Y],data(){return{fileList:[],uploadUrl:H()+`/api/v1/files/`}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},model(){return this.$store.state.seedance?.config?.model},capability(){return z(this.model)},inputModes(){return Q(this.$store.state.seedance?.config)},uploadDisabled(){return this.inputModes.frame},dropDisabled(){return this.uploadDisabled},uploadTooltip(){return this.uploadDisabled?this.$t(`seedance.message.referenceUploadBlocked`):``},urls(){return this.fileList.map(e=>e?.response?.file_url)}},watch:{"capability.acceptsReferenceVideo"(e){e||(this.fileList=[],this.onSetReferenceVideos())}},methods:{onBeforeUpload(e){return this.uploadDisabled?(T.warning(this.$t(`seedance.message.referenceUploadBlocked`)),!1):this.beforeUploadSizeGuard(e)},onExceed(){T.warning(this.$t(`seedance.message.uploadExceed`))},onError(){T.error(this.$t(`seedance.message.uploadError`))},onSetReferenceVideos(){let e=(this.urls||[]).filter(Boolean);this.$store.commit(`seedance/setConfig`,{...this.$store.state.seedance?.config,videos:e.length>0?e.map(e=>({url:e})):void 0})},async onSuccess(){this.onSetReferenceVideos()},async onRemove(){this.onSetReferenceVideos()}}}),Mn={key:0,class:`relative`},Nn={class:`flex min-h-8 items-center pr-20`},Pn={class:`flex justify-start items-center`},Fn={class:`text-sm font-bold`};function In(t,n,c,u,d,f){let m=l(`info-icon`),h=l(`upload-icon`),_=l(`el-button`),v=l(`el-tooltip`),y=l(`el-upload`);return t.capability.acceptsReferenceVideo?(g(),s(`div`,Mn,[e(`div`,Nn,[e(`div`,Pn,[e(`span`,Fn,i(t.$t(`seedance.name.referenceVideo`)),1),a(m,{content:t.$t(`seedance.description.referenceVideo`)},null,8,[`content`])])]),a(y,{ref:`uploader`,"file-list":t.fileList,"onUpdate:fileList":n[0]||=e=>t.fileList=e,name:`file`,accept:`.mp4,.mov,.webm,.mkv,.avi`,limit:t.capability.maxReferenceVideos,class:`upload-wrapper`,multiple:t.capability.maxReferenceVideos>1,"before-upload":t.onBeforeUpload,action:t.uploadUrl,"list-type":`text`,"on-exceed":t.onExceed,"on-error":t.onError,"on-success":t.onSuccess,"on-remove":t.onRemove,headers:t.headers},{default:p(()=>[a(v,{content:t.uploadTooltip,disabled:!t.uploadDisabled,placement:`top`},{default:p(()=>[e(`span`,null,[a(_,{round:``,type:`primary`,size:`small`,class:`btn btn-upload`,disabled:t.uploadDisabled},{default:p(()=>[a(h,{class:`icon mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`seedance.button.upload`)),1)]),_:1},8,[`disabled`])])]),_:1},8,[`content`,`disabled`])]),_:1},8,[`file-list`,`limit`,`multiple`,`before-upload`,`action`,`on-exceed`,`on-error`,`on-success`,`on-remove`,`headers`])])):o(``,!0)}var Ln=V(jn,[[`render`,In],[`__scopeId`,`data-v-c0492201`]]),Rn=v({name:`SeedanceReturnLastFrameSwitch`,components:{ElSwitch:O,InfoIcon:N},computed:{model(){return this.$store.state.seedance?.config?.model},isSupported(){return z(this.model).acceptsReturnLastFrame},value:{get(){return this.$store.state.seedance?.config?.return_last_frame},set(e){this.$store.commit(`seedance/setConfig`,{...this.$store.state.seedance?.config,return_last_frame:e})}}},watch:{isSupported(e){!e&&this.value&&(this.value=!1)}},mounted(){this.value===void 0&&(this.value=!1)}}),zn={key:0,class:`field`},Bn={class:`label`},Vn={class:`box`},Hn={class:`title font-bold`},Un={class:`value`};function Wn(t,n,r,c,u,d){let f=l(`info-icon`),p=l(`el-switch`);return t.isSupported?(g(),s(`div`,zn,[e(`div`,Bn,[e(`div`,Vn,[e(`h2`,Hn,i(t.$t(`seedance.name.returnLastFrame`)),1),a(f,{content:t.$t(`seedance.description.returnLastFrame`),class:`info`},null,8,[`content`])])]),e(`div`,Un,[a(p,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,"inline-prompt":``,"active-text":t.$t(`seedance.button.on`),"inactive-text":t.$t(`seedance.button.off`)},null,8,[`modelValue`,`active-text`,`inactive-text`])])])):o(``,!0)}var Gn=V(Rn,[[`render`,Wn],[`__scopeId`,`data-v-edea5451`]]),Kn=v({name:`SeedanceAdvanced25Settings`,components:{ElOption:b,ElSelect:y,ElSwitch:O,InfoIcon:N},computed:{visible(){return this.$store.state.seedance?.config?.model===_e},taskType:{get(){return this.$store.state.seedance?.config?.omni_reference_task_type||`auto`},set(e){this.updateConfig({omni_reference_task_type:e})}},outputFormat:{get(){return this.$store.state.seedance?.config?.output_format||`mp4`},set(e){this.updateConfig({output_format:e})}},webSearch:{get(){return this.$store.state.seedance?.config?.web_search===!0},set(e){this.updateConfig({web_search:e})}}},methods:{updateConfig(e){this.$store.commit(`seedance/setConfig`,{...this.$store.state.seedance?.config,...e})}}}),qn={key:0,class:`space-y-4`},Jn={class:`field`},Yn={class:`label`},Xn={class:`title font-bold`},Zn={class:`field`},Qn={class:`label`},$n={class:`title font-bold`},er={class:`field`},tr={class:`label`},nr={class:`title font-bold`};function rr(t,n,r,c,u,d){let f=l(`info-icon`),m=l(`el-option`),h=l(`el-select`),_=l(`el-switch`);return t.visible?(g(),s(`div`,qn,[e(`div`,Jn,[e(`div`,Yn,[e(`h2`,Xn,i(t.$t(`seedance.name.taskType`)),1),a(f,{content:t.$t(`seedance.description.taskType`),class:`info`},null,8,[`content`])]),a(h,{modelValue:t.taskType,"onUpdate:modelValue":n[0]||=e=>t.taskType=e,class:`value`},{default:p(()=>[a(m,{value:`auto`,label:t.$t(`seedance.taskType.auto`)},null,8,[`label`]),a(m,{value:`reference`,label:t.$t(`seedance.taskType.reference`)},null,8,[`label`]),a(m,{value:`edit`,label:t.$t(`seedance.taskType.edit`)},null,8,[`label`]),a(m,{value:`extend`,label:t.$t(`seedance.taskType.extend`)},null,8,[`label`])]),_:1},8,[`modelValue`])]),e(`div`,Zn,[e(`div`,Qn,[e(`h2`,$n,i(t.$t(`seedance.name.outputFormat`)),1)]),a(h,{modelValue:t.outputFormat,"onUpdate:modelValue":n[1]||=e=>t.outputFormat=e,class:`value`},{default:p(()=>[a(m,{value:`mp4`,label:`MP4`}),a(m,{value:`mov`,label:`MOV`})]),_:1},8,[`modelValue`])]),e(`div`,er,[e(`div`,tr,[e(`h2`,nr,i(t.$t(`seedance.name.webSearch`)),1),a(f,{content:t.$t(`seedance.description.webSearch`),class:`info`},null,8,[`content`])]),a(_,{modelValue:t.webSearch,"onUpdate:modelValue":n[2]||=e=>t.webSearch=e},null,8,[`modelValue`])])])):o(``,!0)}var ir=V(Kn,[[`render`,rr],[`__scopeId`,`data-v-b4dd64f6`]]),ar=v({name:`SeedanceSeedInput`,components:{ElInputNumber:D,InfoIcon:N},computed:{value:{get(){let e=this.$store.state.seedance?.config?.seed;return typeof e==`number`?e:-1},set(e){let t={...this.$store.state.seedance?.config||{}};t.seed=typeof e==`number`&&Number.isInteger(e)?e:-1,this.$store.commit(`seedance/setConfig`,t)}}}}),or={class:`field`},sr={class:`label`},cr={class:`box`},lr={class:`title font-bold`},ur={class:`value`};function dr(t,n,r,o,c,u){let d=l(`info-icon`),f=l(`el-input-number`);return g(),s(`div`,or,[e(`div`,sr,[e(`div`,cr,[e(`h2`,lr,i(t.$t(`seedance.name.seed`)),1),a(d,{content:t.$t(`seedance.description.seed`),class:`info`},null,8,[`content`])])]),e(`div`,ur,[a(f,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,min:-1,max:2147483647,step:1,size:`default`,"controls-position":`right`,class:`counter`},null,8,[`modelValue`])])])}var fr=v({name:`SeedanceConfigPanel`,components:{MagicIcon:R,ElAlert:C,ElButton:J,PromptInput:it,ModelSelector:dt,DurationSelector:vt,ResolutionSelector:Et,RatioSelector:Lt,GenerateAudioSwitch:Gt,CameraFixedSwitch:$t,ReturnLastFrameSwitch:Gn,Advanced25Settings:ir,SeedInput:V(ar,[[`render`,dr],[`__scopeId`,`data-v-685a9869`]]),FirstFrameImage:ln,LastFrameImage:gn,ReferenceImage:Cn,ReferenceAudio:An,ReferenceVideo:Ln,ServicePricingSummary:Re,ScenarioPaymentMode:He},emits:[`generate`],data(){return{quoteTimer:0,quoteRunId:0}},computed:{canGenerate(){let{request:e,reject:t}=$(this.config);return!t&&Je(`seedance`,e)},config(){return this.$store.state.seedance?.config},capability(){return z(this.config?.model)},inputModes(){return Q(this.config)},consumption(){return Oe(this.config,this.service?.cost)},service(){return this.$store.state.seedance?.service},walletMode(){return we()&&W(`seedance`).mode===`wallet`}},watch:{walletMode:{handler(e){e&&this.scheduleQuote()},immediate:!0},config:{handler(){this.walletMode&&this.scheduleQuote()},deep:!0}},beforeUnmount(){window.clearTimeout(this.quoteTimer),this.quoteRunId+=1},methods:{scheduleQuote(){window.clearTimeout(this.quoteTimer),this.quoteRunId+=1;let e=W(`seedance`);e.quoteUsdc=void 0,e.quoteLoading=!1,this.canGenerate&&(this.quoteTimer=window.setTimeout(this.refreshQuote,350))},async refreshQuote(){if(!this.canGenerate)return;let e=W(`seedance`),t=++this.quoteRunId;e.quoteLoading=!0,e.quoteUsdc=void 0;let{request:n}=$(this.config);try{if(!n)return;let r=await U.quote(n);t===this.quoteRunId&&e.mode===`wallet`&&this.canGenerate&&(e.quoteUsdc=r.amountUsdc)}catch(e){console.warn(`x402 quote failed`,e)}finally{t===this.quoteRunId&&(e.quoteLoading=!1)}},onGenerate(){this.$emit(`generate`,this.walletMode?void 0:this.consumption)}}}),pr={class:`flex flex-col h-full`},mr={class:`flex-1 overflow-y-auto p-5`},hr={key:0,class:`input-mode-guide mb-4`},gr={class:`flex flex-col items-center justify-center px-5 pb-5`};function _r(t,n,c,u,d,m){let h=l(`prompt-input`),_=l(`model-selector`),v=l(`ratio-selector`),y=l(`resolution-selector`),b=l(`duration-selector`),x=l(`generate-audio-switch`),S=l(`camera-fixed-switch`),C=l(`return-last-frame-switch`),w=l(`advanced25-settings`),T=l(`seed-input`),E=l(`el-alert`),D=l(`first-frame-image`),O=l(`last-frame-image`),k=l(`reference-image`),A=l(`reference-audio`),j=l(`reference-video`),M=l(`scenario-payment-mode`),N=l(`service-pricing-summary`),ee=l(`magic-icon`),P=l(`el-button`);return g(),s(`div`,pr,[e(`div`,mr,[a(h,{class:`mb-4`}),a(_,{class:`mb-4`}),a(v,{class:`mb-4`}),a(y,{class:`mb-4`}),a(b,{class:`mb-4`}),a(x,{class:`mb-4`}),a(S,{class:`mb-4`}),a(C,{class:`mb-4`}),a(w,{class:`mb-4`}),a(T,{class:`mb-4`}),t.capability.acceptsReferenceImage?(g(),s(`div`,hr,[e(`div`,null,[e(`strong`,null,i(t.$t(`seedance.inputMode.frames`)),1),r(` `+i(t.$t(`seedance.description.frameMode`)),1)]),e(`div`,null,[e(`strong`,null,i(t.$t(`seedance.inputMode.reference`)),1),r(` `+i(t.$t(`seedance.description.referenceMode`)),1)])])):o(``,!0),t.inputModes.mixed?(g(),f(E,{key:1,class:`mb-4`,type:`warning`,closable:!1,title:t.$t(`seedance.message.frameReferenceConflict`),"show-icon":``},null,8,[`title`])):o(``,!0),a(D,{class:`mb-4`}),a(O,{class:`mb-4`}),a(k,{class:`mb-4`}),a(A,{class:`mb-4`}),a(j,{class:`mb-4`})]),e(`div`,gr,[a(M,{scenario:`seedance`}),t.walletMode?o(``,!0):(g(),f(N,{key:0,value:t.consumption,service:t.service},null,8,[`value`,`service`])),a(P,{type:`primary`,class:`btn w-full`,round:``,disabled:!t.canGenerate,onClick:t.onGenerate},{default:p(()=>[a(ee,{class:`mr-2`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`seedance.button.generate`)),1)]),_:1},8,[`disabled`,`onClick`])])])}var vr=V(fr,[[`render`,_r],[`__scopeId`,`data-v-0b17b09f`]]),yr=v({name:`SeedanceTaskPreview`,components:{DeleteIcon:I,ApplicationIcon:k,ChannelIcon:j,FullscreenIcon:te,InfoIcon:M,MagicIcon:R,TimeIcon:A,VolumeIcon:ie,WarningIcon:re,CopyToClipboard:Fe,ElAlert:C,VideoPlayer:Be,ElTooltip:S,ElButton:J,ImageWrapper:Ye,ImagePreview:X,AudioPreview:ze,VideoPreview:Ve,ApiCodeButton:Ue,ReportButton:Ie},props:{modelValue:{type:Object,required:!0}},computed:{video(){return this.modelValue?.response?.data},apiCodeBody(){let e=this.modelValue?.request;if(!e)return e;let{service_tier:t,...n}=e;return n},promptText(){let e=this.modelValue?.request;if(e?.prompt)return e.prompt;let t=e?.content?.find(e=>e?.type===`text`&&e?.text);return t?.text?t.text:this.video?.prompt},referenceImages(){let e=this.collectImages();if(e.length===0)return[];let t=[],n=e.find(e=>e?.role===`first_frame`);n?.url&&t.push({url:n.url,name:`first-frame`});let r=e.find(e=>e?.role===`last_frame`);return r?.url&&t.push({url:r.url,name:`last-frame`}),e.forEach((e,n)=>{e?.url&&e.role!==`first_frame`&&e.role!==`last_frame`&&t.push({url:e.url,name:e.role||`image-${n}`})}),t},referenceAudios(){let e=this.modelValue?.request,t=(e?.audios??[]).map(e=>e?.url).filter(Boolean);return(e?.content??[]).forEach(e=>{e?.type===`audio_url`&&e?.audio_url?.url&&t.push(e.audio_url.url)}),t},referenceVideos(){let e=this.modelValue?.request,t=(e?.videos??[]).map(e=>e?.url).filter(Boolean);return(e?.content??[]).forEach(e=>{e?.type===`video_url`&&e?.video_url?.url&&t.push(e.video_url.url)}),t}},methods:{async onDelete(){let e=this.modelValue?.id;if(e){try{await Te.confirm(this.$t(`common.message.deleteTaskConfirm`),this.$t(`common.button.delete`),{type:`warning`,confirmButtonText:this.$t(`common.button.delete`),cancelButtonText:this.$t(`common.button.cancel`),confirmButtonClass:`el-button--danger`})}catch{return}try{await this.$store.dispatch(`seedance/deleteTask`,{id:e}),T.success(this.$t(`common.message.deleteTaskSuccess`))}catch{T.error(this.$t(`common.message.deleteTaskFailed`))}}},collectImages(){let e=this.modelValue?.request,t=Array.isArray(e?.images)?[...e.images]:[];return(e?.content??[]).forEach(e=>{e?.type===`image_url`&&e?.image_url?.url&&t.push({url:e.image_url.url,role:e.role})}),t},onDownload(e){window.open(e,`_blank`)}}}),br={class:`preview`},xr={class:`left`},Sr={class:`main`},Cr={class:`bot`},wr={class:`datetime`},Tr=[`aria-label`],Er={class:`info`},Dr={key:0,class:`flex justify-start items-center gap-2 mt-2 w-full overflow-x-auto`},Or={key:1,class:`prompt mt-2`},kr={key:0},Ar={key:1},jr={key:0,class:n({content:!0})},Mr={class:`text-[var(--el-text-color-regular)] text-xs mb-0`},Nr={key:1,class:n({content:!0})},Pr={key:0,class:`mb-4`},Fr={key:1,class:`mb-4`},Ir={key:2,class:n({operations:!0,"mt-2":!0,"mb-2":!0})},Lr={key:0,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Rr={key:1,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},zr={key:2,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Br={key:0},Vr={key:1},Hr={key:3,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Ur={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Wr={key:4,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Gr={key:5,class:`text-[var(--el-text-color-regular)] text-xs mb-0`},Kr={key:2,class:n({content:!0})},qr={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Jr={key:0,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Yr={key:1,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Xr={key:2,class:`text-[var(--el-text-color-regular)] text-xs mb-0`},Zr={key:3,class:n({content:!0})},Qr={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},$r={key:0,class:`text-[var(--el-text-color-regular)] text-xs mb-0`};function ei(n,u,d,m,_,v){let y=l(`capability-presentation`),b=l(`delete-icon`),x=l(`el-tooltip`),S=l(`image-preview`),C=l(`audio-preview`),w=l(`video-preview`),T=l(`time-icon`),E=l(`magic-icon`),D=l(`copy-to-clipboard`),O=l(`el-alert`),k=l(`video-player`),A=l(`image-wrapper`),j=l(`el-button`),M=l(`api-code-button`),N=l(`report-button`),ee=l(`application-icon`),P=l(`fullscreen-icon`),te=l(`volume-icon`),F=l(`channel-icon`),ne=l(`warning-icon`),I=l(`info-icon`);return g(),s(`div`,br,[e(`div`,xr,[a(y,{capability:`seedance`,part:`avatar`,class:`avatar`})]),e(`div`,Sr,[e(`div`,Cr,[a(y,{capability:`seedance`,part:`name`}),e(`span`,wr,i(n.$dayjs.format(``+new Date(parseFloat((n.modelValue?.created_at||``).toString())*1e3))),1),a(x,{effect:`dark`,content:n.$t(`common.button.delete`),placement:`top`},{default:p(()=>[n.modelValue?.id?(g(),s(`button`,{key:0,type:`button`,class:`btn-delete`,"aria-label":n.$t(`common.button.delete`),onClick:u[0]||=t((...e)=>n.onDelete&&n.onDelete(...e),[`stop`])},[a(b,{size:`1em`,"aria-hidden":`true`,focusable:`false`})],8,Tr)):o(``,!0)]),_:1},8,[`content`])]),e(`div`,Er,[n.referenceImages.length>0||n.referenceAudios.length>0||n.referenceVideos.length>0?(g(),s(`div`,Dr,[(g(!0),s(c,null,h(n.referenceImages,(e,t)=>(g(),f(S,{key:`image-${t}`,url:e.url,name:e.name,closable:!1},null,8,[`url`,`name`]))),128)),(g(!0),s(c,null,h(n.referenceAudios,(e,t)=>(g(),f(C,{key:`audio-${t}`,url:e,name:`audio-${t+1}`},null,8,[`url`,`name`]))),128)),(g(!0),s(c,null,h(n.referenceVideos,(e,t)=>(g(),f(w,{key:`video-${t}`,url:e,name:`video-${t+1}`},null,8,[`url`,`name`]))),128))])):o(``,!0),n.promptText?(g(),s(`p`,Or,[r(i(n.promptText)+` `,1),n.modelValue?.response?n.video?.status===`processing`||n.video?.status===`pending`?(g(),s(`span`,Ar,` - (`+i(n.$t(`seedance.status.processing`))+`) `,1)):o(``,!0):(g(),s(`span`,kr,` - (`+i(n.$t(`seedance.status.pending`))+`) `,1))])):o(``,!0)]),n.modelValue?.response?n.modelValue?.response?.success===!0?(g(),s(`div`,Nr,[n.video?.video_url?(g(),s(`div`,Pr,[a(k,{src:n.video?.video_url},null,8,[`src`])])):o(``,!0),n.video?.last_frame_url?(g(),s(`div`,Fr,[a(A,{src:n.video?.last_frame_url,"raw-src":n.video?.last_frame_url},null,8,[`src`,`raw-src`])])):o(``,!0),n.video?.video_url?(g(),s(`div`,Ir,[a(x,{class:`box-item`,effect:`dark`,content:n.$t(`seedance.message.downloadVideo`),placement:`top-start`},{default:p(()=>[a(j,{type:`info`,size:`small`,class:`btn-action`,onClick:u[1]||=t(e=>n.onDownload(n.video?.video_url),[`stop`])},{default:p(()=>[r(i(n.$t(`seedance.button.download`)),1)]),_:1})]),_:1},8,[`content`]),a(M,{path:`/seedance/videos`,body:n.apiCodeBody},null,8,[`body`]),a(N,{service:`seedance`,"target-id":n.modelValue?.id,snapshot:{prompt:n.modelValue?.request?.prompt}},null,8,[`target-id`,`snapshot`])])):o(``,!0),a(O,{closable:!1,class:`mt-2 success`},{default:p(()=>[n.modelValue?.request?.model?(g(),s(`p`,Lr,[a(ee,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`seedance.name.model`))+`: `+i(n.modelValue?.request?.model),1)])):o(``,!0),n.video?.duration?(g(),s(`p`,Rr,[a(T,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`seedance.name.duration`))+`: `+i(n.video?.duration)+`s `,1)])):o(``,!0),n.video?.resolution?(g(),s(`p`,zr,[a(P,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`seedance.name.resolution`))+`: `+i(n.video?.resolution)+` `,1),n.video?.ratio?(g(),s(`span`,Br,` · `+i(n.video?.ratio),1)):o(``,!0),n.video?.framespersecond?(g(),s(`span`,Vr,` · `+i(n.video?.framespersecond)+`fps`,1)):o(``,!0)])):o(``,!0),n.modelValue?.request?.generate_audio?(g(),s(`p`,Hr,[a(te,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`seedance.name.generateAudio`))+`: `+i(n.$t(`seedance.button.on`)),1)])):o(``,!0),e(`p`,Ur,[a(E,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`seedance.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(D,{content:n.modelValue?.id,class:`btn-copy inline-block`},null,8,[`content`])]),n.modelValue?.elapsed?(g(),s(`p`,Wr,[a(T,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`seedance.name.elapsed`))+`: `+i(n.modelValue?.elapsed?.toFixed(2))+`s `,1)])):o(``,!0),n.modelValue?.response?.trace_id?(g(),s(`p`,Gr,[a(F,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`seedance.name.traceId`))+`: `+i(n.modelValue?.response?.trace_id)+` `,1),a(D,{content:n.modelValue?.response?.trace_id,class:`btn-copy inline-block`},null,8,[`content`])])):o(``,!0)]),_:1})])):n.modelValue?.response?.success===!1?(g(),s(`div`,Kr,[a(O,{closable:!1,class:`failure`},{template:p(()=>[a(ne,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`seedance.name.failure`)),1)]),default:p(()=>[e(`p`,qr,[a(E,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`seedance.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(D,{content:n.modelValue?.id,class:`btn-copy inline-block`},null,8,[`content`])]),n.modelValue?.response?.error?.message?(g(),s(`p`,Jr,[a(I,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`seedance.name.failureReason`))+`: `+i(n.modelValue?.response?.error?.message)+` `,1),a(D,{content:n.modelValue?.response?.error?.message,class:`btn-copy inline-block`},null,8,[`content`])])):o(``,!0),n.modelValue?.elapsed?(g(),s(`p`,Yr,[a(T,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`seedance.name.elapsed`))+`: `+i(n.modelValue?.elapsed?.toFixed(2))+`s `,1)])):o(``,!0),n.modelValue?.response?.trace_id?(g(),s(`p`,Xr,[a(F,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`seedance.name.traceId`))+`: `+i(n.modelValue?.response?.trace_id)+` `,1),a(D,{content:n.modelValue?.response?.trace_id,class:`btn-copy inline-block`},null,8,[`content`])])):o(``,!0)]),_:1})])):(g(),s(`div`,Zr,[a(O,{closable:!1,class:`info`},{template:p(()=>[a(I,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`seedance.name.status`)),1)]),default:p(()=>[e(`p`,Qr,[a(E,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`seedance.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(D,{content:n.modelValue?.id,class:`btn-copy inline-block`},null,8,[`content`])]),n.modelValue?.response?.trace_id?(g(),s(`p`,$r,[a(F,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`seedance.name.traceId`))+`: `+i(n.modelValue?.response?.trace_id)+` `,1),a(D,{content:n.modelValue?.response?.trace_id,class:`btn-copy inline-block`},null,8,[`content`])])):o(``,!0)]),_:1})])):(g(),s(`div`,jr,[a(O,{closable:!1,class:`info`},{template:p(()=>[a(T,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`seedance.status.pending`)),1)]),default:p(()=>[e(`p`,Mr,[a(E,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`seedance.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(D,{content:n.modelValue?.id,class:`btn-copy inline-block`},null,8,[`content`])])]),_:1})]))])])}var ti=v({name:`SeedanceRecentPanel`,components:{TaskPreview:V(yr,[[`render`,ei],[`__scopeId`,`data-v-a9336aee`]]),BotPlaceholder:We,NoTasks:F,ScrollList:P},props:{loading:{type:Boolean,default:!1}},emits:[`reach-top`],computed:{tasks(){return{...this.$store.state.seedance?.tasks,items:this.$store.state.seedance?.tasks?.items?.slice()}}},methods:{getScrollElement(){return this.$refs.scrollList?.getScrollElement?.()}}}),ni={key:0},ri={key:2,class:`w-full h-full flex items-center justify-center`};function ii(e,t,n,r,i,u){let d=l(`bot-placeholder`),m=l(`task-preview`),_=l(`scroll-list`),v=l(`no-tasks`);return g(),s(c,null,[e.tasks?.items===void 0?(g(),s(`div`,ni,[a(d)])):e.tasks?.items?.length&&e.tasks?.items?.length>0?(g(),f(_,{key:1,ref:`scrollList`,class:`tasks w-full h-full overflow-y-auto`,loading:e.loading,onReachTop:t[0]||=t=>e.$emit(`reach-top`)},{default:p(()=>[(g(!0),s(c,null,h(e.tasks?.items,e=>(g(),f(m,{key:e.id,"model-value":e},null,8,[`model-value`]))),128))]),_:1},8,[`loading`])):o(``,!0),e.tasks?.items?.length===0?(g(),s(`div`,ri,[a(v)])):o(``,!0)],64)}var ai=v({name:`SeedanceIndex`,components:{ConfigPanel:vr,Layout:tt,RecentPanel:V(ti,[[`render`,ii]]),ShowcaseResultTabs:Ke},mixins:[Pe,qe(`seedance`),Ge(`seedance`)],inject:[`initialized`],data(){return{task:void 0,job:0,loadingMore:!1,fetchingTasks:!1,walletTaskIds:[]}},computed:{applicationsLoading(){return this.$store.state.seedance?.status?.getApplications===w.Request},tasksLoading(){return this.$store.state.seedance?.status?.getTasks===w.Request||this.fetchingTasks},credential(){return this.$store.state.seedance?.credential},config(){return this.$store.state.seedance?.config},tasks(){return this.$store.state.seedance?.tasks},walletMode(){return we()&&W(`seedance`).mode===`wallet`}},watch:{walletMode:{async handler(e,t){if(!(t===void 0||e===t)){if(this.$store.commit(`seedance/setTasks`,void 0),e&&!this.job&&(this.job=window.setInterval(this.onPollTasks,5e3)),!e&&!this.credential?.token){window.clearInterval(this.job),this.job=0,await this.onScrollDown();return}await this.onGetTasks(),await this.onScrollDown()}}},initialized:{async handler(e){e&&(await this.onGetTasks(),await this.onScrollDown(),this.job||=window.setInterval(this.onPollTasks,5e3))},immediate:!0}},async mounted(){await this.onGetService()},async unmounted(){window.clearInterval(this.job)},methods:{async onReachTop(){await ne({tasks:this.tasks,loading:this.loadingMore,setLoading:e=>this.loadingMore=e,isBlocked:()=>this.tasksLoading||this.applicationsLoading,fetch:e=>this.onGetTasks({createdAtMax:e}),getScrollElement:()=>this.getTasksScrollElement()})},async onGetService(){await this.$store.dispatch(`seedance/getService`)},async onScrollDown(){await this.$nextTick();let e=this.getTasksScrollElement();e&&(e.scrollTop=e.scrollHeight)},async onGetTasks(e){if(this.applicationsLoading||this.fetchingTasks)return;let{limit:t=5,createdAtMin:n,createdAtMax:r}=e||{};this.fetchingTasks=!0;try{await this.$store.dispatch(`seedance/getTasks`,{limit:t,createdAtMin:n,createdAtMax:r,...this.walletMode&&!this.credential?.token?{mode:`x402`,ids:this.walletTaskIds}:{}})}finally{this.fetchingTasks=!1}},async onGenerate(e){let{request:t,reject:n}=$(this.config);if(n){let e=n===`generationInputRequired`?`common.message.generationInputRequired`:`seedance.message.${n}`;T.warning(this.$t(e));return}if(!Ae(this.uploadTracker,e=>this.$t(e),e=>T.warning(e))||!t)return;let r;if(this.walletMode){let e=this.getWalletContext();if(!e){T.warning(this.$t(`common.x402Scenario.connectWalletFirst`));return}r=U.generate(t,{mode:`x402`,x402:{wallet:e,confirm:e=>this.confirmWalletPayment(e),identityToken:this.credential?.token}})}else{if(!je())return;let e=this.credential?.token;if(!e)return;r=U.generate(t,{token:e})}let i=T.info(this.$t(`seedance.message.startingTask`));ke(`seedance`,r).then(e=>{i.close();let t=e?.data?.task_id;this.walletMode&&!this.credential?.token&&t&&!this.walletTaskIds.includes(t)&&this.walletTaskIds.unshift(t),T.success(this.$t(`seedance.message.startTaskSuccess`))}).catch(t=>{i.close();let n=t?.response?.data;t instanceof Ne||De(t,`seedance`,e)||(this.walletMode?T.error(this.$t(`common.x402Scenario.paymentFailed`)):T.error(this.$t(`seedance.message.startTaskFailed`)+(n?.error?.message||``)))}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})},getWalletContext(){return Me(this.$wallet)},async confirmWalletPayment(e){return Te.confirm(this.$t(`common.x402Scenario.confirmPayment`,{amount:e.amountUsdc}),this.$t(`order.message.x402ConfirmTitle`),{confirmButtonText:this.$t(`order.message.x402WalletPayCta`),cancelButtonText:this.$t(`common.button.cancel`),type:`warning`}).then(()=>!0).catch(()=>!1)},getTasksScrollElement(){return this.$refs.recentPanel?.getScrollElement?.()}}});function oi(e,t,n,r,i,o){let s=l(`config-panel`),c=l(`recent-panel`),u=l(`showcase-result-tabs`),d=l(`layout`);return g(),f(d,null,{config:p(()=>[a(s,{onGenerate:e.onGenerate},null,8,[`onGenerate`])]),result:p(()=>[a(u,{service:`seedance`},{tasks:p(()=>[a(c,{ref:`recentPanel`,loading:e.loadingMore,onReachTop:e.onReachTop},null,8,[`loading`,`onReachTop`])]),_:1})]),_:1})}var si=V(ai,[[`render`,oi]]);export{si as default};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import"./rolldown-runtime--c01j_DQ.js";import{A as e,C as t,Gt as n,I as r,Jt as i,K as a,L as o,M as s,Mt as c,N as l,Q as u,S as d,St as f,T as p,b as m,ft as h,ht as g,j as _,k as v,mt as y,qt as b,rt as x,st as S,tt as C,wt as w,z as T}from"./vendor-chart-Dw-P17PN.js";import{r as E,t as D}from"./select-Dv7ZrvnE.js";import{n as O,t as k}from"./form-BdKMEyCR.js";import{_ as ee,n as te,v as ne}from"./vuex.esm-bundler-C-5WV-ta.js";import{t as A}from"./input-number-BwJ2QIsY.js";import{t as re}from"./segmented-D0zHdf9D.js";import{t as ie}from"./arrow-right-BBcVYEm1.js";import{t as ae}from"./arrow-up-BAfO-War.js";import{t as j}from"./box-3_e2nW7_.js";import{t as oe}from"./check-kkIqx5X1.js";import{t as se}from"./chevron-down-vUO0pCAt.js";import{t as ce}from"./chevron-right-CHPHpC1T.js";import{t as le}from"./copy-CUk5HyqT.js";import{t as ue}from"./download-BmQLXojU.js";import{t as de}from"./file-text-DBotrbYk.js";import{t as M}from"./history-_iIOa-KW.js";import{t as N}from"./house-C3am4krm.js";import{t as P}from"./image-DNGAwErV.js";import{t as fe}from"./loader-circle-BWTf1Yce.js";import{t as F}from"./mouse-pointer-2-BBBdRKNG.js";import{t as pe}from"./music-2-BmtV50Q3.js";import{t as I}from"./play-XZGUGKIJ.js";import{t as me}from"./plus-Bz8tjapX.js";import{t as L}from"./search-K-yhv6oC.js";import{t as he}from"./sparkles-BI5Fg4u8.js";import{t as R}from"./trash-2-CUcSh2xz.js";import{t as ge}from"./triangle-alert-fl0O4ttl.js";import{t as _e}from"./upload-ClpzRFqM.js";import{t as z}from"./video-D2H2yrK5.js";import{t as ve}from"./back-navigation-D-lHpBnE.js";import{Da as B}from"./constants-CspFM8fh.js";import{D as V,Ha as ye,Ja as be,Va as H,lo as U,to as W}from"./index-Bk9SKIXV.js";import{t as xe}from"./VideoPlayer-BNtDhrpR.js";var G=H(`audio-lines`,[[`path`,{d:`M2 10v3`,key:`1fnikh`}],[`path`,{d:`M6 6v11`,key:`11sgs0`}],[`path`,{d:`M10 3v18`,key:`yhl04a`}],[`path`,{d:`M14 8v7`,key:`3a1oy3`}],[`path`,{d:`M18 5v13`,key:`123xd1`}],[`path`,{d:`M22 10v3`,key:`154ddg`}]]),Se=H(`bot`,[[`path`,{d:`M12 8V4H8`,key:`hb8ula`}],[`rect`,{width:`16`,height:`12`,x:`4`,y:`8`,rx:`2`,key:`enze0r`}],[`path`,{d:`M2 14h2`,key:`vft8re`}],[`path`,{d:`M20 14h2`,key:`4cs60a`}],[`path`,{d:`M15 13v2`,key:`1xurst`}],[`path`,{d:`M9 13v2`,key:`rq6x2g`}]]),K=H(`building-2`,[[`path`,{d:`M10 12h4`,key:`a56b0p`}],[`path`,{d:`M10 8h4`,key:`1sr2af`}],[`path`,{d:`M14 21v-3a2 2 0 0 0-4 0v3`,key:`1rgiei`}],[`path`,{d:`M6 10H4a2 2 0 0 0-2 2v7a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2V9a2 2 0 0 0-2-2h-2`,key:`secmi2`}],[`path`,{d:`M6 21V5a2 2 0 0 1 2-2h8a2 2 0 0 1 2 2v16`,key:`16ra0t`}]]),q=H(`clapperboard`,[[`path`,{d:`m12.296 3.464 3.02 3.956`,key:`qash78`}],[`path`,{d:`M20.2 6 3 11l-.9-2.4c-.3-1.1.3-2.2 1.3-2.5l13.5-4c1.1-.3 2.2.3 2.5 1.3z`,key:`1h7j8b`}],[`path`,{d:`M3 11h18v8a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z`,key:`4lm6w1`}],[`path`,{d:`m6.18 5.276 3.1 3.899`,key:`zjj9t3`}]]),Ce=H(`film`,[[`rect`,{width:`18`,height:`18`,x:`3`,y:`3`,rx:`2`,key:`afitv7`}],[`path`,{d:`M7 3v18`,key:`bbkbws`}],[`path`,{d:`M3 7.5h4`,key:`zfgn84`}],[`path`,{d:`M3 12h18`,key:`1i2n21`}],[`path`,{d:`M3 16.5h4`,key:`1230mu`}],[`path`,{d:`M17 3v18`,key:`in4fa5`}],[`path`,{d:`M17 7.5h4`,key:`myr1c1`}],[`path`,{d:`M17 16.5h4`,key:`go4c1d`}]]),we=H(`git-commit-horizontal`,[[`circle`,{cx:`12`,cy:`12`,r:`3`,key:`1v7zrd`}],[`line`,{x1:`3`,x2:`9`,y1:`12`,y2:`12`,key:`1dyftd`}],[`line`,{x1:`15`,x2:`21`,y1:`12`,y2:`12`,key:`oup4p8`}]]),J=H(`git-branch`,[[`path`,{d:`M15 6a9 9 0 0 0-9 9V3`,key:`1cii5b`}],[`circle`,{cx:`18`,cy:`6`,r:`3`,key:`1h7g24`}],[`circle`,{cx:`6`,cy:`18`,r:`3`,key:`fqmcym`}]]),Te=H(`list-checks`,[[`path`,{d:`M13 5h8`,key:`a7qcls`}],[`path`,{d:`M13 12h8`,key:`h98zly`}],[`path`,{d:`M13 19h8`,key:`c3s6r1`}],[`path`,{d:`m3 17 2 2 4-4`,key:`1jhpwq`}],[`path`,{d:`m3 7 2 2 4-4`,key:`1obspn`}]]),Ee=H(`lock-keyhole`,[[`circle`,{cx:`12`,cy:`16`,r:`1`,key:`1au0dj`}],[`rect`,{x:`3`,y:`10`,width:`18`,height:`12`,rx:`2`,key:`6s8ecr`}],[`path`,{d:`M7 10V7a5 5 0 0 1 10 0v3`,key:`1pqi11`}]]),De=H(`rows-3`,[[`rect`,{width:`18`,height:`18`,x:`3`,y:`3`,rx:`2`,key:`afitv7`}],[`path`,{d:`M21 9H3`,key:`1338ky`}],[`path`,{d:`M21 15H3`,key:`9uk58r`}]]),Y=H(`shield-check`,[[`path`,{d:`M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z`,key:`oel41y`}],[`path`,{d:`m9 12 2 2 4-4`,key:`dzmm74`}]]),X={class:`discovery-home`},Oe={class:`discovery-header`},Z={class:`brand`},Q={class:`project-links`},ke=[`title`,`aria-label`,`onClick`],Ae={key:0,class:`discovery-state`,role:`status`},je={class:`creator`,"aria-labelledby":`poivelle-create-title`},Me={class:`creator-kicker`},Ne={id:`poivelle-create-title`},Pe=[`aria-label`],Fe=[`disabled`,`onClick`],Ie=[`placeholder`,`disabled`],Le={class:`composer-footer`},Re=[`disabled`,`title`],ze={class:`prompt-starters`},Be=[`disabled`,`onClick`],Ve={class:`works`,"aria-labelledby":`poivelle-works-title`},He={class:`works-heading`},Ue={id:`poivelle-works-title`},We={class:`search`},Ge=[`placeholder`,`aria-label`],Ke={class:`category-tabs`},qe=[`onClick`],Je={class:`work-grid card-gap`},Ye={class:`cover`},Xe=[`src`,`alt`,`onError`],Ze={key:2,class:`film-badge`},Qe=[`aria-label`,`onClick`],$e={class:`duration-badge`},et={class:`work-copy`},$={class:`work-meta`},tt={class:`work-actions`},nt=[`onClick`],rt=[`disabled`,`onClick`],it={key:0,class:`film-dialog-heading`},at={id:`poivelle-film-dialog-title`},ot=V(T({__name:`DiscoveryHome`,emits:[`open-studio`],setup(a,{emit:d}){let f=d,h=te(),b=v(()=>h.state.poivelle),T=v(()=>b.value?.projects??[]),E=v(()=>b.value?.discoveryWorks??[]),D=w(``),O=w(``),k=w(!1),A=w(),re=w(new Set),ie=w(`official:pulsecam`),j=w(`all`),oe=[{workId:`official:pulsecam`,label:`poivelle.discovery.commercial`,icon:q},{workId:`official:moonlit-signal`,label:`poivelle.discovery.musicVideo`,icon:pe},{workId:`official:northstar-origin`,label:`poivelle.discovery.documentary`,icon:K}],se=[`poivelle.discovery.starterProduct`,`poivelle.discovery.starterMusic`,`poivelle.discovery.starterDocumentary`],ue=[{value:`all`,label:`poivelle.discovery.all`},{value:`commercial`,label:`poivelle.discovery.commercial`},{value:`music_video`,label:`poivelle.discovery.musicVideo`},{value:`narrative`,label:`poivelle.discovery.narrative`},{value:`documentary`,label:`poivelle.discovery.documentary`},{value:`community`,label:`poivelle.discovery.community`}],de=v(()=>{let e=O.value.trim().toLowerCase();return E.value.filter(t=>(j.value===`all`||t.category===j.value)&&(!e||`${t.title} ${t.description} ${t.creator_name} ${(t.tags??[]).join(` `)}`.toLowerCase().includes(e)))}),M=v(()=>b.value?.status?.bootstrap===ee.Request),N=v(()=>b.value?.error),P=v({get:()=>!!A.value,set:e=>{e||(A.value=void 0)}}),F=v(()=>{let e=E.value.find(e=>e.id===ie.value);return e&&e.copyable!==!1?e:E.value.find(e=>e.copyable!==!1)}),me=()=>h.dispatch(`poivelle/bootstrap`,{loadProject:!1}),he=e=>{re.value=new Set([...re.value,e])},R=e=>e.video_url?.startsWith(`https://`)?e.video_url:void 0,ge=e=>{if(e&&typeof e==`object`&&`response`in e){let t=e.response?.data?.detail;if(typeof t==`string`)return t;if(typeof t?.message==`string`)return t.message}return e instanceof Error?e.message:B(`poivelle.error.generic`)},_e=e=>{let t=Math.floor(e/60),n=e%60;return t?`${t}:${n.toString().padStart(2,`0`)}`:`0:${n.toString().padStart(2,`0`)}`},z=async e=>{await h.dispatch(`poivelle/loadProject`,e),f(`open-studio`)},ve=async(e,t)=>{if(!k.value){k.value=!0;try{await h.dispatch(`poivelle/copyDiscoveryWork`,{work_id:e.id,prompt:t,title:t.slice(0,80)}),f(`open-studio`)}catch(e){ne.error(ge(e))}finally{k.value=!1}}},V=async()=>{let e=F.value;e&&D.value.trim()&&await ve(e,D.value.trim())},ye=async e=>{await ve(e,D.value.trim()||`${B(`poivelle.discovery.copyPrefix`)} ${e.title}`)};return u(me),(a,u)=>(C(),l(`main`,X,[e(`header`,Oe,[e(`div`,Z,[o(c(q),{size:19,"aria-hidden":`true`}),u[3]||=r(` POIVELLE`,-1)]),e(`div`,Q,[(C(!0),l(p,null,x(T.value.slice(0,3),e=>(C(),l(`button`,{key:e.id,type:`button`,title:e.title,"aria-label":e.title,onClick:t=>z(e.id)},[r(i(e.title)+` `,1),o(c(ce),{size:13,"aria-hidden":`true`})],8,ke))),128))])]),M.value||N.value?(C(),l(`div`,Ae,[M.value?(C(),_(c(fe),{key:0,size:16,class:`spinning`,"aria-hidden":`true`})):s(``,!0),e(`span`,null,i(M.value?a.$t(`poivelle.status.loading`):N.value),1),N.value?(C(),l(`button`,{key:1,type:`button`,onClick:me},i(a.$t(`poivelle.action.retry`)),1)):s(``,!0)])):s(``,!0),e(`section`,je,[e(`p`,Me,i(a.$t(`poivelle.discovery.kicker`)),1),e(`h1`,Ne,i(a.$t(`poivelle.discovery.title`)),1),e(`div`,{class:`mode-switch`,"aria-label":a.$t(`poivelle.discovery.skills`)},[(C(),l(p,null,x(oe,t=>e(`button`,{key:t.workId,type:`button`,class:n({active:ie.value===t.workId}),disabled:M.value,onClick:e=>ie.value=t.workId},[(C(),_(S(t.icon),{size:15,"aria-hidden":`true`})),r(` `+i(a.$t(t.label)),1)],10,Fe)),64))],8,Pe),e(`form`,{class:`composer`,onSubmit:t(V,[`prevent`])},[g(e(`textarea`,{"onUpdate:modelValue":u[0]||=e=>D.value=e,placeholder:a.$t(`poivelle.discovery.placeholder`),disabled:M.value,maxlength:`500`,rows:`4`},null,8,Ie),[[m,D.value]]),e(`div`,Le,[e(`span`,null,i(D.value.length)+`/500`,1),e(`button`,{type:`submit`,disabled:!D.value.trim()||!F.value||M.value||k.value,title:a.$t(`poivelle.discovery.create`)},[k.value?(C(),_(c(fe),{key:0,size:18,class:`spinning`,"aria-hidden":`true`})):(C(),_(c(ae),{key:1,size:18,"aria-hidden":`true`}))],8,Re)])],32),e(`div`,ze,[(C(),l(p,null,x(se,t=>e(`button`,{key:t,type:`button`,disabled:M.value,onClick:e=>D.value=a.$t(t)},i(a.$t(t)),9,Be)),64))])]),e(`section`,Ve,[e(`div`,He,[e(`div`,null,[e(`span`,null,i(a.$t(`poivelle.discovery.galleryKicker`)),1),e(`h2`,Ue,i(a.$t(`poivelle.discovery.gallery`)),1)]),e(`label`,We,[o(c(L),{size:16,"aria-hidden":`true`}),g(e(`input`,{"onUpdate:modelValue":u[1]||=e=>O.value=e,placeholder:a.$t(`poivelle.discovery.search`),"aria-label":a.$t(`poivelle.discovery.search`)},null,8,Ge),[[m,O.value]])])]),e(`div`,Ke,[(C(),l(p,null,x(ue,t=>e(`button`,{key:t.value,type:`button`,class:n({active:j.value===t.value}),onClick:e=>j.value=t.value},i(a.$t(t.label)),11,qe)),64))]),e(`div`,Je,[(C(!0),l(p,null,x(de.value,t=>(C(),l(`article`,{key:t.id,class:`work-card`},[e(`div`,Ye,[t.cover_url&&!re.value.has(t.id)?(C(),l(`img`,{key:0,src:t.cover_url,alt:t.title,onError:e=>he(t.id)},null,40,Xe)):(C(),_(c(Ce),{key:1,size:32,"aria-hidden":`true`})),R(t)?(C(),l(`span`,Ze,i(a.$t(`poivelle.discovery.finishedFilm`)),1)):s(``,!0),R(t)?(C(),l(`button`,{key:3,type:`button`,class:`cover-play`,"aria-label":`${a.$t(`poivelle.discovery.playFilm`)}: ${t.title}`,onClick:e=>A.value=t},[o(c(I),{size:18,fill:`currentColor`,"aria-hidden":`true`}),r(` `+i(a.$t(`poivelle.discovery.playFilm`)),1)],8,Qe)):s(``,!0),e(`span`,$e,i(t.duration_seconds?_e(t.duration_seconds):a.$t(`poivelle.discovery.community`)),1)]),e(`div`,et,[e(`div`,$,[e(`span`,null,i(t.creator_name),1),e(`strong`,null,i(t.title),1),e(`p`,null,i(t.description),1)]),e(`div`,tt,[R(t)?(C(),l(`button`,{key:0,type:`button`,class:`play-button`,onClick:e=>A.value=t},[o(c(I),{size:14,fill:`currentColor`,"aria-hidden":`true`}),r(` `+i(a.$t(`poivelle.discovery.play`)),1)],8,nt)):s(``,!0),t.copyable===!1?s(``,!0):(C(),l(`button`,{key:1,type:`button`,class:`copy-button`,disabled:M.value||k.value,onClick:e=>ye(t)},[o(c(le),{size:14,"aria-hidden":`true`}),r(` `+i(a.$t(`poivelle.discovery.copy`)),1)],8,rt))])])]))),128))])]),o(c(be),{modelValue:P.value,"onUpdate:modelValue":u[2]||=e=>P.value=e,class:`film-preview-dialog`,"aria-labelledby":`poivelle-film-dialog-title`,width:`min(920px, calc(100vw - 32px))`,"align-center":``,"append-to-body":``,"destroy-on-close":``},{header:y(()=>[A.value?(C(),l(`div`,it,[e(`span`,null,i(a.$t(`poivelle.discovery.finishedFilm`)),1),e(`strong`,at,i(A.value.title),1),e(`small`,null,[r(i(A.value.creator_name)+` `,1),A.value.duration_seconds?(C(),l(p,{key:0},[r(` · `+i(_e(A.value.duration_seconds)),1)],64)):s(``,!0)])])):s(``,!0)]),default:y(()=>[A.value&&R(A.value)?(C(),_(xe,{key:`${A.value.id}-${A.value.video_url}`,src:R(A.value)},null,8,[`src`])):s(``,!0)]),_:1},8,[`modelValue`])]))}}),[[`__scopeId`,`data-v-50f67d0e`]]),st={class:`studio-header`},ct={class:`identity`},lt={class:`wordmark`},ut={key:0,class:`version`},dt={class:`actions`},ft={class:`sync-state`},pt=[`title`],mt=[`disabled`],ht=V(T({__name:`StudioHeader`,props:{projectTitle:{},graphVersion:{},canRun:{type:Boolean},canEdit:{type:Boolean},primaryLabel:{}},emits:[`open-projects`,`home`,`commit`,`run`],setup(t){return(n,a)=>(C(),l(`header`,st,[e(`div`,ct,[o(c(ve),{"icon-only":``,"aria-label":n.$t(`poivelle.discovery.back`),onClick:a[0]||=e=>n.$emit(`home`)},null,8,[`aria-label`]),e(`span`,lt,[o(c(q),{size:15,"aria-hidden":`true`}),a[4]||=r(` POIVELLE`,-1)]),e(`button`,{class:`project-button`,type:`button`,onClick:a[1]||=e=>n.$emit(`open-projects`)},[e(`span`,null,i(t.projectTitle||n.$t(`poivelle.project.noProject`)),1),o(c(se),{size:14,"aria-hidden":`true`})]),t.graphVersion===void 0?s(``,!0):(C(),l(`span`,ut,`Graph v`+i(t.graphVersion),1))]),e(`div`,dt,[e(`span`,ft,[a[5]||=e(`span`,{class:`sync-dot`},null,-1),r(` `+i(n.$t(`poivelle.status.synced`)),1)]),t.canEdit?(C(),l(`button`,{key:0,class:`icon-button`,type:`button`,title:n.$t(`poivelle.action.commit`),onClick:a[2]||=e=>n.$emit(`commit`)},[o(c(we),{size:17,"aria-hidden":`true`})],8,pt)):s(``,!0),e(`button`,{class:`primary-button`,type:`button`,disabled:!t.canRun,onClick:a[3]||=e=>n.$emit(`run`)},[o(c(I),{size:15,fill:`currentColor`,"aria-hidden":`true`}),r(` `+i(t.primaryLabel||n.$t(`poivelle.action.runSkill`)),1)],8,mt)])]))}}),[[`__scopeId`,`data-v-b22020af`]]),gt={class:`production-rail`},_t={class:`rail-section`},vt={class:`section-heading`},yt=[`title`],bt={class:`project-list`},xt=[`onClick`],St={key:0,class:`empty-copy`},Ct={class:`rail-section assets-section`},wt={class:`section-heading`},Tt=[`title`],Et={class:`asset-filters`},Dt=[`onClick`],Ot={class:`asset-list`},kt={key:0,class:`empty-copy`},At={class:`rail-section compact-section`},jt={class:`section-heading static`},Mt={class:`revision-list`},Nt={key:0,class:`empty-copy`},Pt=V(T({__name:`ProductionRail`,props:{projects:{},currentProjectId:{},assets:{},revisions:{},canEdit:{type:Boolean}},emits:[`select-project`,`create-project`,`import-asset`],setup(t){let r=t,a=[`all`,`character`,`location`,`image`,`video`,`voice`],u=w(`all`),d=v(()=>u.value===`all`?r.assets:r.assets.filter(e=>e.kind===u.value)),f=e=>e===`video`?z:e===`voice`||e===`music`||e===`sfx`?G:e===`script`||e===`brand`?de:P;return(r,m)=>(C(),l(`aside`,gt,[e(`div`,_t,[e(`div`,vt,[e(`span`,null,i(r.$t(`poivelle.section.projects`)),1),t.canEdit?(C(),l(`button`,{key:0,type:`button`,title:r.$t(`poivelle.project.create`),onClick:m[0]||=e=>r.$emit(`create-project`)},[o(c(me),{size:15,"aria-hidden":`true`})],8,yt)):s(``,!0)]),e(`div`,bt,[(C(!0),l(p,null,x(t.projects,a=>(C(),l(`button`,{key:a.id,type:`button`,class:n([`project-row`,{active:a.id===t.currentProjectId}]),onClick:e=>r.$emit(`select-project`,a.id)},[o(c(q),{size:15,"aria-hidden":`true`}),e(`span`,null,i(a.title),1),e(`small`,null,`v`+i(a.graph_version),1)],10,xt))),128)),t.projects.length?s(``,!0):(C(),l(`p`,St,i(r.$t(`poivelle.project.empty`)),1))])]),e(`div`,Ct,[e(`div`,wt,[e(`span`,null,i(r.$t(`poivelle.section.assets`)),1),t.canEdit?(C(),l(`button`,{key:0,type:`button`,title:r.$t(`poivelle.asset.import`),onClick:m[1]||=e=>r.$emit(`import-asset`)},[o(c(_e),{size:15,"aria-hidden":`true`})],8,Tt)):s(``,!0)]),e(`div`,Et,[(C(),l(p,null,x(a,t=>e(`button`,{key:t,type:`button`,class:n({active:u.value===t}),onClick:e=>u.value=t},i(t===`all`?r.$t(`poivelle.asset.all`):t),11,Dt)),64))]),e(`div`,Ot,[(C(!0),l(p,null,x(d.value,t=>(C(),l(`button`,{key:t.id,type:`button`,class:`asset-row`},[(C(),_(S(f(t.kind)),{size:15,"aria-hidden":`true`})),e(`span`,null,[e(`strong`,null,i(t.title),1),e(`small`,null,i(t.kind)+` · `+i(t.scope),1)])]))),128)),d.value.length?s(``,!0):(C(),l(`p`,kt,i(r.$t(`poivelle.asset.empty`)),1))])]),e(`div`,At,[e(`div`,jt,[e(`span`,null,i(r.$t(`poivelle.section.revisions`)),1),o(c(M),{size:14,"aria-hidden":`true`})]),e(`div`,Mt,[(C(!0),l(p,null,x(t.revisions.slice(0,4),t=>(C(),l(`div`,{key:t.id,class:`revision-row`},[e(`span`,null,`R`+i(t.revision_number),1),e(`small`,null,`Graph v`+i(t.graph_version),1)]))),128)),t.revisions.length?s(``,!0):(C(),l(`p`,Nt,i(r.$t(`poivelle.revision.empty`)),1))])])]))}}),[[`__scopeId`,`data-v-71c6054d`]]),Ft=[`aria-label`],It=[`onClick`],Lt=V(T({__name:`ProjectionTabs`,props:{modelValue:{},canEdit:{type:Boolean}},emits:[`update:modelValue`,`create-node`],setup(t){let a=[{value:`overview`,label:`poivelle.projection.overview`,icon:N},{value:`canvas`,label:`poivelle.projection.advanced`,icon:J},{value:`storyboard`,label:`poivelle.projection.storyboard`,icon:q},{value:`timeline`,label:`poivelle.projection.timeline`,icon:De},{value:`review`,label:`poivelle.projection.review`,icon:Te}];return(u,d)=>(C(),l(`nav`,{class:`projection-tabs`,"aria-label":u.$t(`poivelle.projection.label`)},[(C(),l(p,null,x(a,a=>e(`button`,{key:a.value,type:`button`,class:n({active:t.modelValue===a.value}),onClick:e=>u.$emit(`update:modelValue`,a.value)},[(C(),_(S(a.icon),{size:14,"aria-hidden":`true`})),r(` `+i(u.$t(a.label)),1)],10,It)),64)),d[1]||=e(`span`,{class:`spacer`},null,-1),t.canEdit?(C(),l(`button`,{key:0,class:`add-node`,type:`button`,onClick:d[0]||=e=>u.$emit(`create-node`)},[o(c(me),{size:14,"aria-hidden":`true`}),r(` `+i(u.$t(`poivelle.node.create`)),1)])):s(``,!0)],8,Ft))}}),[[`__scopeId`,`data-v-393d2d3e`]]),Rt={class:`connections`,"aria-hidden":`true`},zt=[`x1`,`y1`,`x2`,`y2`],Bt=[`onClick`],Vt={class:`node-type`},Ht={class:`node-summary`},Ut={key:0,class:`lock-mark`},Wt={key:0,class:`empty-canvas`},Gt=V(T({__name:`GraphCanvas`,props:{graph:{},selectedNodeId:{},canEdit:{type:Boolean}},emits:[`select-node`,`create-node`],setup(a){let u=a,d=v(()=>new Map(u.graph.layouts.map(e=>[e.node_id,e]))),f=e=>{let t=u.graph.nodes.findIndex(t=>t.id===e);return{x:52+t%3*250,y:54+Math.floor(t/3)*170,width:208,height:116}},m=e=>d.value.get(e)??f(e),h=e=>{let t=m(e);return{x:t.x+t.width/2,y:t.y+t.height/2}},g=e=>{let t=m(e);return{left:`${t.x}px`,top:`${t.y}px`,width:`${t.width}px`,minHeight:`${t.height}px`}},_=v(()=>u.graph.edges.filter(e=>u.graph.nodes.some(t=>t.id===e.source.node_id)&&u.graph.nodes.some(t=>t.id===e.target.node_id))),y=e=>{let t=e.payload.text??e.payload.prompt??e.payload.description;return typeof t==`string`&&t?t:`Version ${e.version}`};return(u,d)=>(C(),l(`div`,{class:`graph-canvas`,onClick:d[1]||=t(e=>u.$emit(`select-node`,void 0),[`self`])},[(C(),l(`svg`,Rt,[(C(!0),l(p,null,x(_.value,e=>(C(),l(`line`,{key:e.id,x1:h(e.source.node_id).x,y1:h(e.source.node_id).y,x2:h(e.target.node_id).x,y2:h(e.target.node_id).y},null,8,zt))),128))])),(C(!0),l(p,null,x(a.graph.nodes,f=>(C(),l(`button`,{key:f.id,type:`button`,class:n([`graph-node`,`type-${f.node_type}`,{selected:f.id===a.selectedNodeId}]),style:b(g(f.id)),onClick:t(e=>u.$emit(`select-node`,f.id),[`stop`])},[e(`span`,Vt,i(f.node_type),1),e(`strong`,null,i(f.title),1),e(`span`,Ht,i(y(f)),1),f.locked_paths.length?(C(),l(`span`,Ut,[o(c(Ee),{size:11}),d[2]||=r(` locked`,-1)])):s(``,!0)],14,Bt))),128)),a.graph.nodes.length?s(``,!0):(C(),l(`div`,Wt,[o(c(J),{size:28,"stroke-width":`1.5`,"aria-hidden":`true`}),e(`h2`,null,i(u.$t(`poivelle.graph.emptyTitle`)),1),e(`p`,null,i(u.$t(`poivelle.graph.emptyBody`)),1),a.canEdit?(C(),l(`button`,{key:0,type:`button`,onClick:d[0]||=e=>u.$emit(`create-node`)},[o(c(me),{size:15,"aria-hidden":`true`}),r(` `+i(u.$t(`poivelle.node.create`)),1)])):s(``,!0)]))]))}}),[[`__scopeId`,`data-v-cd67c1fc`]]),Kt={class:`media-lane`},qt={key:0,class:`candidate-strip`},Jt=[`src`],Yt=[`src`],Xt=[`onClick`],Zt={key:1},Qt=[`onClick`],$t={key:1,class:`unavailable-takes`},en={key:2,class:`empty-candidates`},tn=V(T({__name:`StoryboardMediaLane`,props:{title:{},kind:{},nodeIds:{},artifacts:{},takes:{},selections:{},canEdit:{type:Boolean},canSelect:{type:Boolean}},emits:[`select-node`,`select-take`],setup(t){let r=t,a=v(()=>{let e=new Set(r.nodeIds),t=new Map(r.artifacts.map(e=>[e.id,e])),n=r.takes.filter(t=>e.has(t.target_node_id)&&t.state===`ready`).flatMap(e=>[...new Set(e.artifact_ids)].map(e=>t.get(e)).filter(e=>!!e).map(t=>({key:`${e.id}:${t.id}`,take:e,artifact:t,selected:r.selections.some(t=>t.target_node_id===e.target_node_id&&t.take_id===e.id)}))),i=new Set(n.map(e=>e.artifact.id)),a=r.artifacts.filter(t=>e.has(t.node_id??``)&&t.kind===r.kind&&!i.has(t.id)).map(e=>({key:e.id,take:void 0,artifact:e,selected:!1}));return[...n,...a]}),o=v(()=>r.takes.filter(e=>r.nodeIds.includes(e.target_node_id)&&e.state!==`ready`)),c=w([]),u=e=>{c.value=c.value.includes(e)?c.value.filter(t=>t!==e):[...c.value.slice(-1),e]};return(r,d)=>(C(),l(`section`,Kt,[e(`header`,null,[e(`span`,null,i(t.title),1),t.nodeIds[0]?(C(),l(`button`,{key:0,type:`button`,onClick:d[0]||=e=>r.$emit(`select-node`,t.nodeIds[0])},i(r.$t(`poivelle.storyboard.openNode`)),1)):s(``,!0)]),a.value.length?(C(),l(`div`,qt,[(C(!0),l(p,null,x(a.value,a=>(C(),l(`article`,{key:a.key,class:n([`candidate`,{selected:a.selected,comparing:c.value.includes(a.key)}])},[t.kind===`image`?(C(),l(`img`,{key:0,src:a.artifact.storage_url,alt:``},null,8,Jt)):(C(),l(`video`,{key:1,src:a.artifact.storage_url,controls:``,preload:`metadata`},null,8,Yt)),e(`div`,null,[e(`span`,null,i(a.take?`TAKE`:`ARTIFACT`),1),e(`strong`,null,i(a.artifact.id.slice(-8)),1),t.canEdit&&t.canSelect&&a.take&&!a.selected?(C(),l(`button`,{key:0,type:`button`,onClick:e=>r.$emit(`select-take`,{target_node_id:a.take.target_node_id,take_id:a.take.id})},i(r.$t(`poivelle.storyboard.selectTake`)),9,Xt)):a.selected?(C(),l(`em`,Zt,i(r.$t(`poivelle.storyboard.selected`)),1)):s(``,!0),e(`button`,{type:`button`,class:`compare-toggle`,onClick:e=>u(a.key)},i(c.value.includes(a.key)?r.$t(`poivelle.storyboard.comparing`):r.$t(`poivelle.storyboard.compare`)),9,Qt)])],2))),128))])):s(``,!0),o.value.length?(C(),l(`div`,$t,[(C(!0),l(p,null,x(o.value,e=>(C(),l(`span`,{key:e.id},i(e.state===`failed`?r.$t(`poivelle.storyboard.failedTake`):r.$t(`poivelle.storyboard.restrictedTake`)),1))),128))])):s(``,!0),!a.value.length&&!o.value.length?(C(),l(`div`,en,i(r.$t(`poivelle.storyboard.noCandidates`)),1)):s(``,!0)]))}}),[[`__scopeId`,`data-v-4e385f6a`]]),nn={class:`storyboard-view`},rn={key:0,class:`storyboard-heading`},an={class:`section-label`},on=[`onClick`],sn={class:`shot-number`},cn={class:`shot-production`},ln={class:`shot-metadata`},un={class:`prompt-columns`},dn={class:`candidate-columns`},fn=[`onClick`],pn={key:0,class:`empty-view`},mn=V(T({__name:`StoryboardView`,props:{graph:{},storyboard:{},artifacts:{},takes:{},selections:{},selectedNodeId:{},canEdit:{type:Boolean},canSelect:{type:Boolean}},emits:[`select-node`,`select-take`],setup(t){let r=t,a=v(()=>r.storyboard?.sections.reduce((e,t)=>e+t.shots.length,0)??0),u=v(()=>r.graph.nodes.filter(e=>[`storyboard`,`scene`,`shot`,`image`,`video`].includes(e.node_type)));return(r,d)=>(C(),l(`div`,nn,[t.storyboard?(C(),l(`header`,rn,[e(`div`,null,[e(`span`,null,i(t.storyboard.schema_ref),1),e(`h2`,null,i(t.storyboard.title),1)]),e(`dl`,null,[e(`div`,null,[e(`dt`,null,i(r.$t(`poivelle.storyboard.product`)),1),e(`dd`,null,i(t.storyboard.product_name),1)]),e(`div`,null,[e(`dt`,null,i(r.$t(`poivelle.storyboard.duration`)),1),e(`dd`,null,i(t.storyboard.target_duration_seconds)+`s`,1)]),e(`div`,null,[e(`dt`,null,i(r.$t(`poivelle.storyboard.shots`)),1),e(`dd`,null,i(a.value),1)])])])):s(``,!0),t.storyboard?(C(!0),l(p,{key:1},x(t.storyboard.sections,a=>(C(),l(`section`,{key:a.id,class:`story-section`},[e(`div`,an,[e(`span`,null,i(String(a.order).padStart(2,`0`)),1),e(`h3`,null,i(a.title),1)]),(C(!0),l(p,null,x(a.shots,a=>(C(),l(`article`,{key:a.row.id,class:n([`shot-row`,{selected:a.shot_node_id===t.selectedNodeId}])},[e(`button`,{class:`shot-brief`,type:`button`,onClick:e=>r.$emit(`select-node`,a.shot_node_id)},[e(`span`,sn,`SHOT `+i(String(a.row.shot_number).padStart(2,`0`)),1),e(`strong`,null,i(a.row.plot_description),1),e(`span`,null,i(a.row.duration_seconds)+`s · `+i(a.row.shot_size),1)],8,on),e(`div`,cn,[e(`dl`,ln,[e(`div`,null,[e(`dt`,null,i(r.$t(`poivelle.storyboard.action`)),1),e(`dd`,null,i(a.row.character_action||`—`),1)]),e(`div`,null,[e(`dt`,null,i(r.$t(`poivelle.storyboard.emotion`)),1),e(`dd`,null,i(a.row.emotion||`—`),1)]),e(`div`,null,[e(`dt`,null,i(r.$t(`poivelle.storyboard.lighting`)),1),e(`dd`,null,i(a.row.lighting_and_atmosphere),1)]),e(`div`,null,[e(`dt`,null,i(r.$t(`poivelle.storyboard.audio`)),1),e(`dd`,null,i(a.row.audio_effects),1)])]),e(`div`,un,[e(`div`,null,[e(`span`,null,i(r.$t(`poivelle.storyboard.imagePrompt`)),1),e(`p`,null,i(a.row.image_generation_prompt),1)]),e(`div`,null,[e(`span`,null,i(r.$t(`poivelle.storyboard.motionPrompt`)),1),e(`p`,null,i(a.row.video_motion_prompt),1)])])]),e(`div`,dn,[o(tn,{title:r.$t(`poivelle.storyboard.frames`),kind:`image`,"node-ids":a.image_node_ids,artifacts:t.artifacts,takes:t.takes,selections:t.selections,"can-edit":t.canEdit,"can-select":t.canSelect,onSelectNode:d[0]||=e=>r.$emit(`select-node`,e),onSelectTake:d[1]||=e=>r.$emit(`select-take`,e)},null,8,[`title`,`node-ids`,`artifacts`,`takes`,`selections`,`can-edit`,`can-select`]),o(tn,{title:r.$t(`poivelle.storyboard.motion`),kind:`video`,"node-ids":a.video_node_ids,artifacts:t.artifacts,takes:t.takes,selections:t.selections,"can-edit":t.canEdit,"can-select":t.canSelect,onSelectNode:d[2]||=e=>r.$emit(`select-node`,e),onSelectTake:d[3]||=e=>r.$emit(`select-take`,e)},null,8,[`title`,`node-ids`,`artifacts`,`takes`,`selections`,`can-edit`,`can-select`])])],2))),128))]))),128)):(C(),l(p,{key:2},[(C(!0),l(p,null,x(u.value,(a,s)=>(C(),l(`button`,{key:a.id,type:`button`,class:n([`legacy-card`,{selected:a.id===t.selectedNodeId}]),onClick:e=>r.$emit(`select-node`,a.id)},[e(`span`,null,i(String(s+1).padStart(2,`0`)),1),o(c(q),{size:26,"stroke-width":`1.25`,"aria-hidden":`true`}),e(`strong`,null,i(a.title),1)],10,fn))),128)),u.value.length?s(``,!0):(C(),l(`div`,pn,[o(c(q),{size:30,"stroke-width":`1.4`}),e(`h2`,null,i(r.$t(`poivelle.storyboard.emptyTitle`)),1),e(`p`,null,i(r.$t(`poivelle.storyboard.emptyBody`)),1)]))],64))]))}}),[[`__scopeId`,`data-v-ce90da94`]]),hn={class:`timeline-view`},gn={key:0,class:`master-output`,"aria-labelledby":`poivelle-master-title`},_n={class:`master-heading`},vn={class:`master-kicker`},yn={id:`poivelle-master-title`},bn=[`href`],xn=[`src`,`aria-label`],Sn={key:0,class:`master-status`,role:`status`},Cn={key:1,class:`master-status is-error`,role:`alert`},wn={class:`master-metadata`},Tn={class:`timeline-ruler`},En={key:1,class:`tracks`},Dn={class:`track-label`},On={class:`track-lane`},kn=[`title`],An=[`aria-label`],jn={key:0,class:`clip-actions`},Mn=[`disabled`,`onClick`],Nn=[`disabled`,`onClick`],Pn={key:2,class:`empty-timeline`},Fn=120/5e3,In=V(T({__name:`TimelineView`,props:{timeline:{},graph:{},artifacts:{},canEdit:{type:Boolean}},emits:[`move-clip`],setup(t){let n=t,a=v(()=>{let e=new Set(n.graph.nodes.filter(e=>e.node_type===`composition`).map(e=>e.id));return[...n.artifacts??[]].filter(t=>t.kind===`video`&&t.state===`committed`&&t.restriction_watermark===0&&!!t.node_id&&e.has(t.node_id)&&t.metadata?.operation===`compose.timeline@1`).sort((e,t)=>t.created_at.localeCompare(e.created_at))[0]}),u=w(!0),d=w(!1);h(()=>a.value?.id,()=>{u.value=!0,d.value=!1});let f=()=>{u.value=!0,d.value=!1},m=()=>{u.value=!1,d.value=!0},g=e=>{let t=a.value?.metadata?.[e];return typeof t==`number`&&Number.isFinite(t)?t:void 0},_=v(()=>{let e=g(`duration_ms`);return e===void 0?`—`:`${(e/1e3).toFixed(1)}s`}),y=v(()=>{let e=g(`width`),t=g(`height`);return e&&t?`${e} × ${t}`:`—`}),S=v(()=>{let e=g(`width`),t=g(`height`);return e&&t?{aspectRatio:`${e} / ${t}`}:void 0}),T=e=>n.timeline?.clips.filter(t=>t.track_id===e)??[],E=e=>e.artifact_id.slice(-6),D=e=>({left:`${e.timeline_start_ms*Fn}px`,width:`${Math.max(48,(e.source_out_ms-e.source_in_ms)/(e.speed??1)*Fn)}px`});return(n,h)=>(C(),l(`div`,hn,[a.value?(C(),l(`section`,gn,[e(`div`,_n,[e(`div`,null,[e(`span`,vn,i(n.$t(`poivelle.timeline.deliverable`)),1),e(`h2`,yn,i(n.$t(`poivelle.timeline.masterTitle`)),1)]),e(`a`,{class:`master-download`,href:a.value.storage_url,target:`_blank`,rel:`noopener noreferrer`,download:``},[o(c(ue),{size:15,"aria-hidden":`true`}),r(` `+i(n.$t(`poivelle.timeline.download`)),1)],8,bn)]),e(`div`,{class:`master-media`,style:b(S.value)},[e(`video`,{class:`master-player`,src:a.value.storage_url,"aria-label":n.$t(`poivelle.timeline.playerLabel`),controls:``,playsinline:``,preload:`metadata`,onLoadstart:f,onLoadedmetadata:h[0]||=e=>u.value=!1,onCanplay:h[1]||=e=>u.value=!1,onError:m},null,40,xn),u.value&&!d.value?(C(),l(`div`,Sn,[o(c(fe),{size:24,class:`is-spinning`,"aria-hidden":`true`}),e(`span`,null,i(n.$t(`poivelle.timeline.loading`)),1)])):s(``,!0),d.value?(C(),l(`div`,Cn,[o(c(ge),{size:24,"aria-hidden":`true`}),e(`span`,null,i(n.$t(`poivelle.timeline.loadError`)),1)])):s(``,!0)],4),e(`dl`,wn,[e(`div`,null,[e(`dt`,null,i(n.$t(`poivelle.timeline.duration`)),1),e(`dd`,null,i(_.value),1)]),e(`div`,null,[e(`dt`,null,i(n.$t(`poivelle.timeline.frame`)),1),e(`dd`,null,i(y.value),1)]),e(`div`,null,[e(`dt`,null,i(n.$t(`poivelle.timeline.videoClips`)),1),e(`dd`,null,i(g(`video_clips`)??`—`),1)]),e(`div`,null,[e(`dt`,null,i(n.$t(`poivelle.timeline.audioClips`)),1),e(`dd`,null,i(g(`audio_clips`)??`—`),1)])])])):s(``,!0),e(`div`,Tn,[(C(),l(p,null,x(10,t=>e(`span`,{key:t},i((t-1)*5)+`s`,1)),64))]),t.timeline?.tracks.length?(C(),l(`div`,En,[(C(!0),l(p,null,x(t.timeline.tracks,r=>(C(),l(`div`,{key:r.id,class:`track-row`},[e(`div`,Dn,i(r.title||r.kind||r.id),1),e(`div`,On,[(C(!0),l(p,null,x(T(r.id),(a,o)=>(C(),l(`div`,{key:a.id,class:`timeline-clip`,style:b(D(a)),title:a.artifact_id},[e(`button`,{type:`button`,"aria-label":a.artifact_id},i(E(a)),9,An),t.canEdit&&r.kind===`video`?(C(),l(`span`,jn,[e(`button`,{type:`button`,disabled:o===0,onClick:e=>n.$emit(`move-clip`,{trackId:r.id,clipId:a.id,direction:-1})},` ‹ `,8,Mn),e(`button`,{type:`button`,disabled:o===T(r.id).length-1,onClick:e=>n.$emit(`move-clip`,{trackId:r.id,clipId:a.id,direction:1})},` › `,8,Nn)])):s(``,!0)],12,kn))),128))])]))),128))])):(C(),l(`div`,Pn,[o(c(Ce),{size:30,"stroke-width":`1.4`}),e(`h2`,null,i(n.$t(`poivelle.timeline.emptyTitle`)),1),e(`p`,null,i(n.$t(`poivelle.timeline.emptyBody`)),1)]))]))}}),[[`__scopeId`,`data-v-37eb37c8`]]),Ln={class:`review-view`},Rn={class:`review-summary`},zn={class:`eyebrow`},Bn={class:`summary-metrics`},Vn={class:`review-columns card-gap`},Hn={key:0,class:`item-actions`},Un=[`onClick`],Wn={key:0,class:`empty-copy`},Gn=[`onClick`],Kn=[`onClick`],qn={key:0,class:`empty-copy`},Jn={key:1,class:`run-detail`},Yn={key:0},Xn=[`onClick`],Zn={key:2,class:`forensic-failures`,role:`alert`},Qn=V(T({__name:`ReviewView`,props:{graph:{},proposals:{},revisions:{},runs:{},activeRun:{},evaluations:{},forensicValidations:{},costs:{},canEdit:{type:Boolean}},emits:[`reject-proposal`,`cancel-run`,`open-run`,`retry-step`],setup(a){let o=a,c=v(()=>o.proposals.filter(e=>e.state===`awaiting_approval`)),u=e=>![`release_pending`,`succeeded`,`failed`,`cancelled`].includes(e.state),d=v(()=>o.evaluations.filter(e=>e.verdict===`pass`).length),f=v(()=>o.forensicValidations[0]),m=v(()=>f.value?.result.checks.filter(e=>e.verdict===`fail`)??[]),h=e=>[...o.activeRun?.attempts??[]].filter(t=>t.step_run_id===e).sort((e,t)=>t.created_at.localeCompare(e.created_at))[0],g=e=>(e/1e6).toFixed(2);return(o,_)=>(C(),l(`div`,Ln,[e(`section`,Rn,[e(`div`,null,[e(`span`,zn,i(o.$t(`poivelle.review.heading`)),1),e(`h2`,null,i(a.revisions.length?`Revision ${a.revisions[0].revision_number}`:o.$t(`poivelle.review.noRevision`)),1)]),e(`div`,Bn,[e(`span`,null,[e(`strong`,null,i(a.graph.nodes.length),1),r(i(o.$t(`poivelle.review.nodes`)),1)]),e(`span`,null,[e(`strong`,null,i(a.proposals.length),1),r(i(o.$t(`poivelle.review.proposals`)),1)]),e(`span`,null,[e(`strong`,null,i(a.runs.length),1),r(i(o.$t(`poivelle.review.runs`)),1)]),e(`span`,null,[e(`strong`,null,i(g(a.costs?.totals_microcredits.final??0)),1),r(i(o.$t(`poivelle.review.finalCost`)),1)]),e(`span`,null,[e(`strong`,null,i(d.value)+`/`+i(a.evaluations.length),1),r(i(o.$t(`poivelle.review.qualityChecks`)),1)]),e(`span`,null,[e(`strong`,{class:n(f.value?.result.verdict===`fail`?`metric-fail`:``)},i(f.value?.result.verdict??`—`),3),r(i(o.$t(`poivelle.review.forensics`)),1)])])]),e(`section`,Vn,[e(`div`,null,[e(`h3`,null,i(o.$t(`poivelle.review.pendingProposals`)),1),(C(!0),l(p,null,x(c.value,t=>(C(),l(`article`,{key:t.id,class:`review-item`},[e(`span`,{class:n([`risk`,`risk-${t.risk_class}`])},i(t.risk_class),3),e(`strong`,null,i(t.intent),1),e(`p`,null,i(t.rationale),1),a.canEdit?(C(),l(`div`,Hn,[e(`span`,null,i(o.$t(`poivelle.review.approvalTokenRequired`)),1),e(`button`,{type:`button`,onClick:e=>o.$emit(`reject-proposal`,t.id)},i(o.$t(`poivelle.review.reject`)),9,Un)])):s(``,!0)]))),128)),c.value.length?s(``,!0):(C(),l(`p`,Wn,i(o.$t(`poivelle.review.noProposals`)),1))]),e(`div`,null,[e(`h3`,null,i(o.$t(`poivelle.review.execution`)),1),(C(!0),l(p,null,x(a.runs,r=>(C(),l(`article`,{key:r.id,class:n([`run-item`,{active:a.activeRun?.run.id===r.id}]),onClick:e=>o.$emit(`open-run`,r.id)},[e(`span`,{class:n([`run-state`,`state-${r.state}`])},null,2),e(`div`,null,[e(`strong`,null,i(r.state),1),e(`small`,null,i(r.id),1)]),a.canEdit&&u(r)?(C(),l(`button`,{key:0,type:`button`,class:`cancel-run`,onClick:t(e=>o.$emit(`cancel-run`,r.id),[`stop`])},i(o.$t(`poivelle.run.cancel`)),9,Kn)):s(``,!0)],10,Gn))),128)),a.runs.length?s(``,!0):(C(),l(`p`,qn,i(o.$t(`poivelle.review.noRuns`)),1)),a.activeRun?(C(),l(`section`,Jn,[e(`header`,null,[e(`strong`,null,i(o.$t(`poivelle.review.runDetail`)),1),e(`span`,null,i(a.activeRun.attempts.length)+` `+i(o.$t(`poivelle.review.attempts`)),1)]),(C(!0),l(p,null,x(a.activeRun.steps,r=>(C(),l(`article`,{key:r.id,class:`step-item`},[e(`span`,{class:n([`run-state`,`state-${r.state}`])},null,2),e(`div`,null,[e(`strong`,null,i(r.operation),1),e(`small`,null,i(r.state)+` · `+i(r.node_id),1),h(r.id)?.error?(C(),l(`p`,Yn,i(h(r.id)?.error?.code??`provider_error`)+`: `+i(h(r.id)?.error?.message??o.$t(`poivelle.error.generic`)),1)):s(``,!0)]),a.canEdit&&[`failed`,`manual_recovery`].includes(r.state)?(C(),l(`button`,{key:0,type:`button`,class:`retry-step`,onClick:t(e=>o.$emit(`retry-step`,r),[`stop`])},i(o.$t(`poivelle.review.retryStep`)),9,Xn)):s(``,!0)]))),128))])):s(``,!0),m.value.length?(C(),l(`section`,Zn,[e(`strong`,null,i(o.$t(`poivelle.review.forensics`)),1),(C(!0),l(p,null,x(m.value,e=>(C(),l(`p`,{key:e.code},i(e.code)+` · `+i(String(e.actual??`—`))+` / `+i(String(e.expected??`—`)),1))),128))])):s(``,!0)])])]))}}),[[`__scopeId`,`data-v-d81fa56e`]]),$n={class:`inspector-panel`},er={class:`inspector-heading`},tr={class:`field`},nr={class:`field`},rr=[`value`],ir={class:`field grow`},ar={class:`node-meta`},or={key:1,class:`empty-inspector`},sr=V(T({__name:`InspectorPanel`,props:{node:{}},emits:[`update`,`delete`],setup(t,{emit:n}){let a=t,s=n,u=w(``),f=w(``);h(()=>a.node,e=>{u.value=e?.title??``;let t=e?.payload.prompt??e?.payload.text??``;f.value=typeof t==`string`?t:``},{immediate:!0});let y=v(()=>a.node?a.node.node_type===`video`?z:a.node.node_type===`audio`?G:[`shot`,`scene`,`storyboard`].includes(a.node.node_type)?q:[`image`,`character`,`location`].includes(a.node.node_type)?P:a.node.node_type===`script`||a.node.node_type===`text`?de:j:F),b=()=>{let e=u.value.trim();a.node&&e&&e!==a.node.title&&s(`update`,{path:`/title`,value:e})},x=()=>{if(!a.node)return;let e=a.node.payload.prompt===void 0?`text`:`prompt`;f.value!==a.node.payload[e]&&s(`update`,{path:`/payload/${e}`,value:f.value})};return(n,a)=>(C(),l(`aside`,$n,[e(`div`,er,[e(`div`,null,[e(`span`,null,i(n.$t(`poivelle.section.inspector`)),1),e(`strong`,null,i(t.node?.title||n.$t(`poivelle.inspector.noSelection`)),1)]),(C(),_(S(y.value),{size:18,"aria-hidden":`true`}))]),t.node?(C(),l(p,{key:0},[e(`label`,tr,[e(`span`,null,i(n.$t(`poivelle.field.title`)),1),g(e(`input`,{"onUpdate:modelValue":a[0]||=e=>u.value=e,type:`text`,onBlur:b,onKeydown:d(b,[`enter`])},null,544),[[m,u.value]])]),e(`label`,nr,[e(`span`,null,i(n.$t(`poivelle.field.type`)),1),e(`input`,{value:t.node.node_type,type:`text`,disabled:``},null,8,rr)]),e(`label`,ir,[e(`span`,null,i(n.$t(`poivelle.field.prompt`)),1),g(e(`textarea`,{"onUpdate:modelValue":a[1]||=e=>f.value=e,rows:`8`,onBlur:x},null,544),[[m,f.value]])]),e(`div`,ar,[a[3]||=e(`span`,null,`NODE`,-1),e(`code`,null,i(t.node.id),1),a[4]||=e(`span`,null,`VERSION`,-1),e(`code`,null,i(t.node.version),1)]),e(`button`,{class:`danger-button`,type:`button`,onClick:a[2]||=e=>n.$emit(`delete`)},[o(c(R),{size:14,"aria-hidden":`true`}),r(` `+i(n.$t(`poivelle.node.delete`)),1)])],64)):(C(),l(`div`,or,[o(c(F),{size:24,"stroke-width":`1.4`}),e(`p`,null,i(n.$t(`poivelle.inspector.empty`)),1)]))]))}}),[[`__scopeId`,`data-v-7a6ae318`]]),cr={class:`agent-dock`},lr={class:`agent-identity`},ur={class:`proposal-strip`},dr=[`onClick`],fr={key:0},pr=[`disabled`],mr=V(T({__name:`AgentDock`,props:{proposals:{},selectedNodeId:{},skill:{},canEdit:{type:Boolean}},emits:[`run`,`open-proposal`],setup(t){let a=t,u=v(()=>a.proposals.filter(e=>e.state===`awaiting_approval`));return(a,d)=>(C(),l(`section`,cr,[e(`div`,lr,[o(c(Se),{size:16,"aria-hidden":`true`}),e(`div`,null,[e(`strong`,null,i(a.$t(`poivelle.agent.title`)),1),e(`span`,null,i(t.skill),1)])]),e(`div`,ur,[(C(!0),l(p,null,x(u.value,t=>(C(),l(`button`,{key:t.id,type:`button`,onClick:e=>a.$emit(`open-proposal`,t.id)},[e(`span`,{class:n([`risk-dot`,`risk-${t.risk_class}`])},null,2),e(`strong`,null,i(t.intent),1),e(`small`,null,i(t.state),1)],8,dr))),128)),u.value.length?s(``,!0):(C(),l(`p`,fr,i(a.$t(`poivelle.agent.noProposals`)),1))]),t.canEdit?(C(),l(`button`,{key:0,class:`agent-button`,type:`button`,disabled:!t.selectedNodeId,onClick:d[0]||=e=>a.$emit(`run`)},[o(c(he),{size:15,"aria-hidden":`true`}),r(` `+i(a.$t(`poivelle.agent.plan`)),1)],8,pr)):s(``,!0)]))}}),[[`__scopeId`,`data-v-81fac9f8`]]),hr={class:`project-guide`,"aria-labelledby":`project-guide-title`},gr={class:`guide-copy`},_r={id:`project-guide-title`},vr={class:`guide-body`},yr={class:`project-facts`},br={class:`guide-actions`},xr=[`disabled`],Sr={class:`cost-note`},Cr={class:`production-steps`},wr={class:`done`},Tr=[`value`,`max`],Er=[`value`,`max`],Dr=V(T({__name:`ProjectGuide`,props:{projectTitle:{},graph:{},storyboard:{},artifacts:{},takes:{},selections:{},canEdit:{type:Boolean},busy:{type:Boolean}},emits:[`generate-node`,`open-storyboard`],setup(t){let a=t,u=v(()=>a.storyboard?a.storyboard.sections.flatMap(e=>e.shots.flatMap(e=>e.image_node_ids)):a.graph.nodes.filter(e=>e.node_type===`image`).map(e=>e.id)),d=v(()=>a.storyboard?a.storyboard.sections.flatMap(e=>e.shots.flatMap(e=>e.video_node_ids)):a.graph.nodes.filter(e=>e.node_type===`video`).map(e=>e.id)),f=v(()=>new Set([...a.artifacts.filter(e=>e.state===`committed`).flatMap(e=>e.node_id??[]),...a.takes.filter(e=>e.state===`ready`).map(e=>e.target_node_id)])),p=v(()=>u.value.filter(e=>f.value.has(e)).length),m=v(()=>d.value.filter(e=>f.value.has(e)).length),h=v(()=>new Set(a.selections.map(e=>e.target_node_id))),g=v(()=>u.value.filter(e=>h.value.has(e)).length),y=v(()=>d.value.filter(e=>h.value.has(e)).length),b=v(()=>p.value===u.value.length&&g.value<u.value.length||m.value===d.value.length&&y.value<d.value.length),x=v(()=>a.graph.nodes.some(e=>e.node_type===`output`)),S=v(()=>{let e=new Set(a.graph.nodes.filter(e=>e.node_type===`output`).map(e=>e.id));return a.artifacts.some(t=>t.state===`committed`&&!!t.node_id&&e.has(t.node_id))}),w=v(()=>{let e=u.value.find(e=>!f.value.has(e));if(e)return a.graph.nodes.find(t=>t.id===e);if(g.value<u.value.length)return;let t=d.value.find(e=>!f.value.has(e));if(t)return a.graph.nodes.find(e=>e.id===t);if(!(y.value<d.value.length))return a.graph.nodes.find(e=>e.node_type===`audio`&&!f.value.has(e.id))}),T=v(()=>(a.storyboard?.sections.reduce((e,t)=>e+t.shots.length,0)??a.graph.nodes.filter(e=>e.node_type===`shot`).length)||d.value.length),E=v(()=>{let e=a.graph.nodes.find(e=>e.node_type===`script`),t=Number(e?.payload?.target_duration_seconds);return a.storyboard?.target_duration_seconds??(Number.isFinite(t)?t:40)}),D=v(()=>{let e=a.graph.nodes.find(e=>e.node_type===`script`);return String(e?.payload?.aspect_ratio??`16:9`)}),O=v(()=>w.value?.node_type===`image`?B(`poivelle.guide.generateFrame`,{current:p.value+1,total:u.value.length}):w.value?.node_type===`video`?B(`poivelle.guide.generateMotion`,{current:m.value+1,total:d.value.length}):B(`poivelle.guide.generateScore`));return(a,f)=>(C(),l(`section`,hr,[e(`div`,gr,[e(`p`,null,i(a.$t(`poivelle.guide.kicker`)),1),e(`h1`,_r,i(a.$t(`poivelle.guide.title`,{title:t.projectTitle})),1),e(`p`,vr,i(a.$t(`poivelle.guide.body`)),1),e(`dl`,yr,[e(`div`,null,[e(`dt`,null,i(a.$t(`poivelle.guide.duration`)),1),e(`dd`,null,i(E.value)+`s`,1)]),e(`div`,null,[e(`dt`,null,i(a.$t(`poivelle.guide.shots`)),1),e(`dd`,null,i(T.value),1)]),e(`div`,null,[e(`dt`,null,i(a.$t(`poivelle.guide.format`)),1),e(`dd`,null,i(D.value),1)])]),e(`div`,br,[w.value?(C(),l(`button`,{key:0,type:`button`,class:`primary-action`,disabled:!t.canEdit||t.busy,onClick:f[0]||=e=>a.$emit(`generate-node`,w.value.id)},[t.busy?(C(),_(c(fe),{key:0,size:17,class:`spinning`,"aria-hidden":`true`})):(C(),_(c(he),{key:1,size:17,"aria-hidden":`true`})),r(` `+i(O.value),1)],8,xr)):(C(),l(`button`,{key:1,type:`button`,class:`primary-action`,onClick:f[1]||=e=>a.$emit(`open-storyboard`)},[o(c(q),{size:17,"aria-hidden":`true`}),r(` `+i(b.value?a.$t(`poivelle.guide.chooseResults`):a.$t(`poivelle.guide.reviewResults`)),1)])),e(`button`,{type:`button`,class:`secondary-action`,onClick:f[2]||=e=>a.$emit(`open-storyboard`)},[r(i(a.$t(`poivelle.guide.reviewPlan`))+` `,1),o(c(ie),{size:15,"aria-hidden":`true`})])]),e(`p`,Sr,[o(c(Y),{size:14,"aria-hidden":`true`}),r(` `+i(a.$t(`poivelle.guide.costNote`)),1)])]),e(`ol`,Cr,[e(`li`,wr,[e(`span`,null,[o(c(oe),{size:15,"aria-hidden":`true`})]),e(`div`,null,[e(`strong`,null,i(a.$t(`poivelle.guide.stepPlan`)),1),e(`p`,null,i(a.$t(`poivelle.guide.stepPlanBody`,{shots:T.value})),1)]),e(`small`,null,i(a.$t(`poivelle.guide.ready`)),1)]),e(`li`,{class:n({current:g.value<u.value.length,done:u.value.length>0&&g.value===u.value.length})},[f[3]||=e(`span`,null,`2`,-1),e(`div`,null,[e(`strong`,null,i(a.$t(`poivelle.guide.stepFrames`)),1),e(`p`,null,i(a.$t(`poivelle.guide.stepFramesBody`)),1),e(`progress`,{value:p.value,max:Math.max(u.value.length,1)},null,8,Tr)]),e(`small`,null,i(p.value)+` `+i(a.$t(`poivelle.guide.generated`))+` · `+i(g.value)+` `+i(a.$t(`poivelle.guide.selected`)),1)],2),e(`li`,{class:n({current:g.value===u.value.length&&y.value<d.value.length,done:d.value.length>0&&y.value===d.value.length})},[f[4]||=e(`span`,null,`3`,-1),e(`div`,null,[e(`strong`,null,i(a.$t(`poivelle.guide.stepMotion`)),1),e(`p`,null,i(a.$t(`poivelle.guide.stepMotionBody`)),1),e(`progress`,{value:m.value,max:Math.max(d.value.length,1)},null,8,Er)]),e(`small`,null,i(m.value)+` `+i(a.$t(`poivelle.guide.generated`))+` · `+i(y.value)+` `+i(a.$t(`poivelle.guide.selected`)),1)],2),x.value?(C(),l(`li`,{key:0,class:n({current:y.value===d.value.length&&!S.value,done:S.value})},[f[5]||=e(`span`,null,`4`,-1),e(`div`,null,[e(`strong`,null,i(a.$t(`poivelle.guide.stepMaster`)),1),e(`p`,null,i(a.$t(`poivelle.guide.stepMasterBody`)),1)]),e(`small`,null,i(S.value?a.$t(`poivelle.guide.ready`):a.$t(`poivelle.guide.waiting`)),1)],2)):s(``,!0)])]))}}),[[`__scopeId`,`data-v-86112731`]]),Or={class:`poivelle-studio`},kr={key:0,class:`error-banner`},Ar={key:1,class:`loading-state`},jr={key:2,class:`studio-body`},Mr={class:`projection-workspace`},Nr={class:`projection-content`},Pr={key:3,class:`onboarding`},Fr={key:0,class:`dry-run-summary`},Ir={class:`dry-run-note`},Lr=V(T({__name:`StudioWorkspace`,emits:[`back-home`],setup(n){let d=te(),m=v(()=>d.state.poivelle),h=v(()=>m.value?.workspaces??[]),g=v(()=>m.value?.projects??[]),b=v(()=>m.value?.graph),S=v(()=>m.value?.assets??[]),T=v(()=>m.value?.artifacts??[]),ie=v(()=>m.value?.takes??[]),ae=v(()=>m.value?.selections??[]),j=v(()=>m.value?.storyboard),oe=v(()=>m.value?.revisions??[]),se=v(()=>m.value?.proposals??[]),ce=v(()=>m.value?.runs??[]),le=v(()=>m.value?.activeRun),ue=v(()=>m.value?.evaluations??[]),de=v(()=>m.value?.forensicValidations??[]),M=v(()=>m.value?.costs),N=v(()=>m.value?.timeline),P=v(()=>m.value?.projection??`overview`),F=v(()=>m.value?.selectedNodeId),pe=v(()=>b.value?.nodes.find(e=>e.id===F.value)),I=v(()=>g.value.find(e=>e.id===m.value?.currentProjectId)),L=v(()=>[`owner`,`producer`,`director`,`editor`].includes(m.value?.currentMembership?.role??``)),he=v(()=>m.value?.dryRun),R=v(()=>m.value?.error),_e=v(()=>[m.value?.status?.bootstrap,m.value?.status?.graph].includes(ee.Request)),z=v(()=>new Set([...T.value.filter(e=>e.state===`committed`).flatMap(e=>e.node_id??[]),...ie.value.filter(e=>e.state===`ready`).map(e=>e.target_node_id)])),ve=v(()=>new Set(ae.value.map(e=>e.target_node_id))),V=v(()=>j.value?j.value.sections.flatMap(e=>e.shots.flatMap(e=>e.image_node_ids)):b.value?.nodes.filter(e=>e.node_type===`image`).map(e=>e.id)??[]),H=v(()=>j.value?j.value.sections.flatMap(e=>e.shots.flatMap(e=>e.video_node_ids)):b.value?.nodes.filter(e=>e.node_type===`video`).map(e=>e.id)??[]),xe=v(()=>V.value.length>0&&V.value.every(e=>z.value.has(e))&&V.value.some(e=>!ve.value.has(e))||H.value.length>0&&H.value.every(e=>z.value.has(e))&&H.value.some(e=>!ve.value.has(e))),G=v(()=>{let e=V.value.find(e=>!z.value.has(e));if(e)return b.value?.nodes.find(t=>t.id===e);if(V.value.some(e=>!ve.value.has(e)))return;let t=H.value.find(e=>!z.value.has(e));if(t)return b.value?.nodes.find(e=>e.id===t);if(H.value.some(e=>!ve.value.has(e)))return;let n=b.value?.nodes.find(e=>e.node_type===`audio`&&!z.value.has(e.id));if(n)return n}),Se=v(()=>G.value?.node_type===`image`?B(`poivelle.guide.generateNextFrame`):G.value?.node_type===`video`?B(`poivelle.guide.generateNextMotion`):G.value?.node_type===`audio`?B(`poivelle.guide.generateScore`):B(`poivelle.guide.continue`)),K=w(!1),we=w(!1),J=w(!1),Te=w(!1),Ee=w(!1),De=w(!1),Y=f({name:``,monthly_limit_microcredits:void 0}),X=f({workspace_id:``,title:``,workflow:`blank`,skill:`film.drama.short@1.0.0`,product_name:``,product_category:`professional action imaging device`,brand_tone:`precise, fearless, cinematic, premium`,aspect_ratio:`16:9`}),Oe=[{label:B(`poivelle.project.blankWorkflow`),value:`blank`},{label:B(`poivelle.project.commercialTVC`),value:`commercial_tvc`}],Z=f({node_type:`scene`,title:``,prompt:``}),Q=f({title:``,kind:`image`,source_url:``,content_hash:``}),ke=[`script`,`character`,`location`,`prop`,`storyboard`,`scene`,`shot`,`image`,`video`,`audio`,`subtitle`,`composition`,`output`,`note`],Ae=[`character`,`location`,`prop`,`image`,`video`,`voice`,`music`,`sfx`,`brand`],je=()=>d.dispatch(`poivelle/bootstrap`),Me=e=>d.dispatch(`poivelle/loadProject`,e),Ne=e=>d.dispatch(`poivelle/selectNode`,e),Pe=e=>d.dispatch(`poivelle/setProjection`,e),Fe=()=>{X.workspace_id=m.value?.currentWorkspaceId??h.value[0]?.id??``,J.value=!0},Ie=async()=>{Y.name.trim()&&await $(async()=>{await d.dispatch(`poivelle/createWorkspace`,{...Y,name:Y.name.trim()}),we.value=!1,Fe()})},Le=async()=>{!X.workspace_id||!X.title.trim()||await $(async()=>{X.workflow===`commercial_tvc`?(await d.dispatch(`poivelle/createCommercialTVCProject`,{workspace_id:X.workspace_id,title:X.title.trim(),product_name:X.product_name.trim()||X.title.trim(),product_category:X.product_category.trim(),brand_tone:X.brand_tone.trim(),aspect_ratio:X.aspect_ratio,managed_execution:!1}),Pe(`storyboard`)):await d.dispatch(`poivelle/createProject`,{workspace_id:X.workspace_id,title:X.title.trim(),skill:X.skill,domain:`film.drama.short`}),J.value=!1,X.title=``})},Re=async()=>{Z.title.trim()&&await $(async()=>{await d.dispatch(`poivelle/createNode`,{node_type:Z.node_type,title:Z.title.trim(),payload:{prompt:Z.prompt}}),Te.value=!1,Z.title=``,Z.prompt=``})},ze=async()=>{!m.value?.currentWorkspaceId||!Q.title||!Q.source_url||!Q.content_hash||await $(async()=>{await d.dispatch(`poivelle/importAsset`,{...Q,project_id:m.value.currentProjectId}),Ee.value=!1})},Be=e=>d.dispatch(`poivelle/updateSelectedNode`,e),Ve=async()=>{await ye.confirm(B(`poivelle.node.deleteConfirm`),``,{type:`warning`}),await d.dispatch(`poivelle/deleteSelectedNode`)},He=async()=>{await d.dispatch(`poivelle/commitRevision`,`Studio checkpoint`),ne.success(B(`poivelle.revision.committed`))},Ue=async()=>{pe.value&&await $(async()=>{await d.dispatch(`poivelle/dryRun`,pe.value?.node_type===`composition`?`compose`:`generate`),De.value=!0})},We=async e=>{await Ne(e),await a(),await Ue()},Ge=async()=>{if(P.value===`overview`){G.value?await We(G.value.id):xe.value&&Pe(`storyboard`);return}pe.value&&await Ue()},Ke=async()=>{await $(async()=>{let e=await d.dispatch(`poivelle/confirmDryRun`);De.value=!1,e&&ne.success(B(`poivelle.run.queued`))})},qe=e=>{Pe(`review`),ne.info(`${B(`poivelle.agent.proposal`)} ${e.slice(-8)}`)},Je=async e=>{await ye.confirm(B(`poivelle.review.rejectConfirm`),``,{type:`warning`}),await $(()=>d.dispatch(`poivelle/rejectProposal`,e))},Ye=async e=>{await ye.confirm(B(`poivelle.run.cancelConfirm`),``,{type:`warning`}),await $(()=>d.dispatch(`poivelle/cancelRun`,e))},Xe=e=>$(()=>d.dispatch(`poivelle/loadRun`,e)),Ze=async e=>{await $(async()=>{await d.dispatch(`poivelle/retryStep`,e),De.value=!0})},Qe=async e=>{if(!N.value)return;let t=N.value.clips.map(e=>({...e})),n=t.filter(t=>t.track_id===e.trackId).sort((e,t)=>e.timeline_start_ms-t.timeline_start_ms),r=n.findIndex(t=>t.id===e.clipId),i=r+e.direction;if(r<0||i<0||i>=n.length)return;[n[r],n[i]]=[n[i],n[r]];let a=0;n.forEach(e=>{let t=typeof e.speed==`number`&&Number.isFinite(e.speed)&&e.speed>0?e.speed:1;e.timeline_start_ms=a,a+=(e.source_out_ms-e.source_in_ms)/t}),await $(()=>d.dispatch(`poivelle/saveTimeline`,{...N.value,clips:t}))},$e=async e=>{await $(async()=>{await d.dispatch(`poivelle/selectTake`,e),ne.success(B(`poivelle.storyboard.selectionSaved`))})},et=e=>`${(e/1e6).toFixed(2)} credits`,$=async e=>{K.value=!0;try{await e()}catch(e){ne.error(e?.response?.data?.detail?.message??e?.response?.data?.detail??e?.message??B(`poivelle.error.generic`))}finally{K.value=!1}};return u(je),(n,a)=>(C(),l(`main`,Or,[o(ht,{"project-title":I.value?.title,"graph-version":b.value?.graph_version,"can-run":L.value&&(P.value===`overview`?!!G.value||xe.value:!!pe.value),"can-edit":L.value,"primary-label":P.value===`overview`?xe.value?n.$t(`poivelle.guide.chooseResults`):Se.value:void 0,onOpenProjects:a[0]||=e=>J.value=!0,onHome:a[1]||=e=>n.$emit(`back-home`),onCommit:He,onRun:Ge},null,8,[`project-title`,`graph-version`,`can-run`,`can-edit`,`primary-label`]),R.value?(C(),l(`div`,kr,[o(c(ge),{size:15,"aria-hidden":`true`}),e(`span`,null,i(R.value),1),e(`button`,{type:`button`,onClick:je},i(n.$t(`poivelle.action.retry`)),1)])):s(``,!0),_e.value&&!b.value?(C(),l(`div`,Ar,[o(c(fe),{size:25,class:`is-spinning`,"aria-hidden":`true`}),e(`span`,null,i(n.$t(`poivelle.status.loading`)),1)])):I.value&&b.value?(C(),l(`div`,jr,[P.value===`overview`?s(``,!0):(C(),_(Pt,{key:0,projects:g.value,"current-project-id":I.value.id,assets:S.value,revisions:oe.value,"can-edit":L.value,onSelectProject:Me,onCreateProject:Fe,onImportAsset:a[2]||=e=>Ee.value=!0},null,8,[`projects`,`current-project-id`,`assets`,`revisions`,`can-edit`])),e(`section`,Mr,[o(Lt,{"model-value":P.value,"can-edit":L.value,"onUpdate:modelValue":Pe,onCreateNode:a[3]||=e=>Te.value=!0},null,8,[`model-value`,`can-edit`]),e(`div`,Nr,[P.value===`overview`?(C(),_(Dr,{key:0,"project-title":I.value.title,graph:b.value,storyboard:j.value,artifacts:T.value,takes:ie.value,selections:ae.value,"can-edit":L.value,busy:K.value,onGenerateNode:We,onOpenStoryboard:a[4]||=e=>Pe(`storyboard`)},null,8,[`project-title`,`graph`,`storyboard`,`artifacts`,`takes`,`selections`,`can-edit`,`busy`])):P.value===`canvas`?(C(),_(Gt,{key:1,graph:b.value,"selected-node-id":F.value,"can-edit":L.value,onSelectNode:Ne,onCreateNode:a[5]||=e=>Te.value=!0},null,8,[`graph`,`selected-node-id`,`can-edit`])):P.value===`storyboard`?(C(),_(mn,{key:2,graph:b.value,storyboard:j.value,artifacts:T.value,takes:ie.value,selections:ae.value,"selected-node-id":F.value,"can-edit":L.value,"can-select":L.value&&oe.value.length>0,onSelectNode:Ne,onSelectTake:$e},null,8,[`graph`,`storyboard`,`artifacts`,`takes`,`selections`,`selected-node-id`,`can-edit`,`can-select`])):P.value===`timeline`?(C(),_(In,{key:3,timeline:N.value,graph:b.value,artifacts:T.value,"can-edit":L.value,onMoveClip:Qe},null,8,[`timeline`,`graph`,`artifacts`,`can-edit`])):(C(),_(Qn,{key:4,graph:b.value,proposals:se.value,revisions:oe.value,runs:ce.value,"active-run":le.value,evaluations:ue.value,"forensic-validations":de.value,costs:M.value,"can-edit":L.value,onRejectProposal:Je,onCancelRun:Ye,onOpenRun:Xe,onRetryStep:Ze},null,8,[`graph`,`proposals`,`revisions`,`runs`,`active-run`,`evaluations`,`forensic-validations`,`costs`,`can-edit`]))]),P.value===`overview`?s(``,!0):(C(),_(mr,{key:0,proposals:se.value,"selected-node-id":F.value,skill:I.value.active_skill,"can-edit":L.value,onRun:Ue,onOpenProposal:qe},null,8,[`proposals`,`selected-node-id`,`skill`,`can-edit`]))]),L.value&&P.value===`canvas`?(C(),_(sr,{key:1,node:pe.value,onUpdate:Be,onDelete:Ve},null,8,[`node`])):s(``,!0)])):(C(),l(`section`,Pr,[a[38]||=e(`div`,{class:`onboarding-number`},`01 / STUDIO`,-1),o(c(Ce),{size:34,"stroke-width":`1.25`,"aria-hidden":`true`}),e(`h1`,null,i(n.$t(`poivelle.onboarding.title`)),1),e(`p`,null,i(n.$t(`poivelle.onboarding.body`)),1),h.value.length?L.value?(C(),l(`button`,{key:1,type:`button`,onClick:Fe},[o(c(q),{size:15,"aria-hidden":`true`}),r(` `+i(n.$t(`poivelle.project.create`)),1)])):s(``,!0):(C(),l(`button`,{key:0,type:`button`,onClick:a[6]||=e=>we.value=!0},[o(c(me),{size:15,"aria-hidden":`true`}),r(` `+i(n.$t(`poivelle.workspace.create`)),1)]))])),o(c(be),{modelValue:we.value,"onUpdate:modelValue":a[11]||=e=>we.value=e,title:n.$t(`poivelle.workspace.create`),width:`420px`},{footer:y(()=>[o(c(W),{onClick:a[10]||=e=>we.value=!1},{default:y(()=>[r(i(n.$t(`common.button.cancel`)),1)]),_:1}),o(c(W),{type:`primary`,loading:K.value,onClick:Ie},{default:y(()=>[r(i(n.$t(`common.button.confirm`)),1)]),_:1},8,[`loading`])]),default:y(()=>[o(c(k),{"label-position":`top`,onSubmit:a[9]||=t(()=>{},[`prevent`])},{default:y(()=>[o(c(O),{label:n.$t(`poivelle.workspace.name`)},{default:y(()=>[o(c(U),{modelValue:Y.name,"onUpdate:modelValue":a[7]||=e=>Y.name=e,maxlength:`120`,autofocus:``},null,8,[`modelValue`])]),_:1},8,[`label`]),o(c(O),{label:n.$t(`poivelle.workspace.budget`)},{default:y(()=>[o(c(A),{modelValue:Y.monthly_limit_microcredits,"onUpdate:modelValue":a[8]||=e=>Y.monthly_limit_microcredits=e,min:0,step:1e6},null,8,[`modelValue`])]),_:1},8,[`label`])]),_:1})]),_:1},8,[`modelValue`,`title`]),o(c(be),{modelValue:J.value,"onUpdate:modelValue":a[22]||=e=>J.value=e,title:n.$t(`poivelle.project.create`),width:`460px`},{footer:y(()=>[o(c(W),{onClick:a[21]||=e=>J.value=!1},{default:y(()=>[r(i(n.$t(`common.button.cancel`)),1)]),_:1}),o(c(W),{type:`primary`,loading:K.value,onClick:Le},{default:y(()=>[r(i(n.$t(`common.button.confirm`)),1)]),_:1},8,[`loading`])]),default:y(()=>[o(c(k),{"label-position":`top`,onSubmit:a[20]||=t(()=>{},[`prevent`])},{default:y(()=>[o(c(O),{label:n.$t(`poivelle.project.workspace`)},{default:y(()=>[o(c(E),{modelValue:X.workspace_id,"onUpdate:modelValue":a[12]||=e=>X.workspace_id=e,style:{width:`100%`}},{default:y(()=>[(C(!0),l(p,null,x(h.value,e=>(C(),_(c(D),{key:e.id,label:e.name,value:e.id},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`])]),_:1},8,[`label`]),o(c(O),{label:n.$t(`poivelle.project.title`)},{default:y(()=>[o(c(U),{modelValue:X.title,"onUpdate:modelValue":a[13]||=e=>X.title=e,maxlength:`200`},null,8,[`modelValue`])]),_:1},8,[`label`]),o(c(O),{label:n.$t(`poivelle.project.workflow`)},{default:y(()=>[o(c(re),{modelValue:X.workflow,"onUpdate:modelValue":a[14]||=e=>X.workflow=e,options:Oe,block:``},null,8,[`modelValue`])]),_:1},8,[`label`]),X.workflow===`commercial_tvc`?(C(),l(p,{key:0},[o(c(O),{label:n.$t(`poivelle.project.productName`)},{default:y(()=>[o(c(U),{modelValue:X.product_name,"onUpdate:modelValue":a[15]||=e=>X.product_name=e,maxlength:`120`},null,8,[`modelValue`])]),_:1},8,[`label`]),o(c(O),{label:n.$t(`poivelle.project.productCategory`)},{default:y(()=>[o(c(U),{modelValue:X.product_category,"onUpdate:modelValue":a[16]||=e=>X.product_category=e,maxlength:`180`},null,8,[`modelValue`])]),_:1},8,[`label`]),o(c(O),{label:n.$t(`poivelle.project.brandTone`)},{default:y(()=>[o(c(U),{modelValue:X.brand_tone,"onUpdate:modelValue":a[17]||=e=>X.brand_tone=e,type:`textarea`,rows:2,maxlength:`240`},null,8,[`modelValue`])]),_:1},8,[`label`]),o(c(O),{label:n.$t(`poivelle.project.aspectRatio`)},{default:y(()=>[o(c(re),{modelValue:X.aspect_ratio,"onUpdate:modelValue":a[18]||=e=>X.aspect_ratio=e,options:[`16:9`,`9:16`,`1:1`]},null,8,[`modelValue`])]),_:1},8,[`label`])],64)):s(``,!0),o(c(O),{label:n.$t(`poivelle.project.skill`)},{default:y(()=>[X.workflow===`blank`?(C(),_(c(E),{key:0,modelValue:X.skill,"onUpdate:modelValue":a[19]||=e=>X.skill=e,style:{width:`100%`}},{default:y(()=>[o(c(D),{label:`Short drama · professional`,value:`film.drama.short@1.0.0`}),o(c(D),{label:`Commercial film · professional`,value:`film.commercial@1.0.0`}),o(c(D),{label:`Music video · professional`,value:`film.music-video@1.0.0`})]),_:1},8,[`modelValue`])):s(``,!0)]),_:1},8,[`label`])]),_:1})]),_:1},8,[`modelValue`,`title`]),o(c(be),{modelValue:Te.value,"onUpdate:modelValue":a[28]||=e=>Te.value=e,title:n.$t(`poivelle.node.create`),width:`460px`},{footer:y(()=>[o(c(W),{onClick:a[27]||=e=>Te.value=!1},{default:y(()=>[r(i(n.$t(`common.button.cancel`)),1)]),_:1}),o(c(W),{type:`primary`,loading:K.value,onClick:Re},{default:y(()=>[r(i(n.$t(`common.button.confirm`)),1)]),_:1},8,[`loading`])]),default:y(()=>[o(c(k),{"label-position":`top`,onSubmit:a[26]||=t(()=>{},[`prevent`])},{default:y(()=>[o(c(O),{label:n.$t(`poivelle.field.type`)},{default:y(()=>[o(c(E),{modelValue:Z.node_type,"onUpdate:modelValue":a[23]||=e=>Z.node_type=e,style:{width:`100%`}},{default:y(()=>[(C(),l(p,null,x(ke,e=>o(c(D),{key:e,label:e,value:e},null,8,[`label`,`value`])),64))]),_:1},8,[`modelValue`])]),_:1},8,[`label`]),o(c(O),{label:n.$t(`poivelle.field.title`)},{default:y(()=>[o(c(U),{modelValue:Z.title,"onUpdate:modelValue":a[24]||=e=>Z.title=e,maxlength:`240`},null,8,[`modelValue`])]),_:1},8,[`label`]),o(c(O),{label:n.$t(`poivelle.field.prompt`)},{default:y(()=>[o(c(U),{modelValue:Z.prompt,"onUpdate:modelValue":a[25]||=e=>Z.prompt=e,type:`textarea`,rows:5},null,8,[`modelValue`])]),_:1},8,[`label`])]),_:1})]),_:1},8,[`modelValue`,`title`]),o(c(be),{modelValue:Ee.value,"onUpdate:modelValue":a[35]||=e=>Ee.value=e,title:n.$t(`poivelle.asset.import`),width:`500px`},{footer:y(()=>[o(c(W),{onClick:a[34]||=e=>Ee.value=!1},{default:y(()=>[r(i(n.$t(`common.button.cancel`)),1)]),_:1}),o(c(W),{type:`primary`,loading:K.value,onClick:ze},{default:y(()=>[r(i(n.$t(`common.button.confirm`)),1)]),_:1},8,[`loading`])]),default:y(()=>[o(c(k),{"label-position":`top`,onSubmit:a[33]||=t(()=>{},[`prevent`])},{default:y(()=>[o(c(O),{label:n.$t(`poivelle.asset.title`)},{default:y(()=>[o(c(U),{modelValue:Q.title,"onUpdate:modelValue":a[29]||=e=>Q.title=e,maxlength:`240`},null,8,[`modelValue`])]),_:1},8,[`label`]),o(c(O),{label:n.$t(`poivelle.field.type`)},{default:y(()=>[o(c(E),{modelValue:Q.kind,"onUpdate:modelValue":a[30]||=e=>Q.kind=e,style:{width:`100%`}},{default:y(()=>[(C(),l(p,null,x(Ae,e=>o(c(D),{key:e,label:e,value:e},null,8,[`label`,`value`])),64))]),_:1},8,[`modelValue`])]),_:1},8,[`label`]),o(c(O),{label:n.$t(`poivelle.asset.url`)},{default:y(()=>[o(c(U),{modelValue:Q.source_url,"onUpdate:modelValue":a[31]||=e=>Q.source_url=e},null,8,[`modelValue`])]),_:1},8,[`label`]),o(c(O),{label:n.$t(`poivelle.asset.hash`)},{default:y(()=>[o(c(U),{modelValue:Q.content_hash,"onUpdate:modelValue":a[32]||=e=>Q.content_hash=e,placeholder:`sha256:...`},null,8,[`modelValue`])]),_:1},8,[`label`])]),_:1})]),_:1},8,[`modelValue`,`title`]),o(c(be),{modelValue:De.value,"onUpdate:modelValue":a[37]||=e=>De.value=e,title:n.$t(`poivelle.run.confirmTitle`),width:`520px`},{footer:y(()=>[o(c(W),{onClick:a[36]||=e=>De.value=!1},{default:y(()=>[r(i(n.$t(`common.button.cancel`)),1)]),_:1}),o(c(W),{type:`primary`,loading:K.value,onClick:Ke},{default:y(()=>[r(i(n.$t(`poivelle.run.confirm`)),1)]),_:1},8,[`loading`])]),default:y(()=>[he.value?(C(),l(`div`,Fr,[e(`div`,null,[e(`span`,null,i(n.$t(`poivelle.run.targets`)),1),e(`strong`,null,i(he.value.dependency_closure.length),1)]),e(`div`,null,[e(`span`,null,i(n.$t(`poivelle.run.maximum`)),1),e(`strong`,null,i(et(he.value.max_cost_microcredits)),1)]),e(`div`,null,[e(`span`,null,i(n.$t(`poivelle.run.approval`)),1),e(`strong`,null,i(he.value.required_approval),1)])])):s(``,!0),e(`p`,Ir,i(n.$t(`poivelle.run.confirmBody`)),1)]),_:1},8,[`modelValue`,`title`])]))}}),[[`__scopeId`,`data-v-1b367de3`]]),Rr=T({__name:`Index`,setup(e){let t=w(`discovery`);return(e,n)=>t.value===`discovery`?(C(),_(ot,{key:0,onOpenStudio:n[0]||=e=>t.value=`studio`})):(C(),_(Lr,{key:1,onBackHome:n[1]||=e=>t.value=`discovery`}))}});export{Rr as default};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import"./rolldown-runtime--c01j_DQ.js";import{A as e,C as t,Gt as n,I as r,Jt as i,L as a,M as o,N as s,T as c,at as l,ht as u,it as d,j as f,mt as p,rt as m,tt as h,x as g,z as _}from"./vendor-chart-Dw-P17PN.js";import{r as v,t as y}from"./select-Dv7ZrvnE.js";import{t as b}from"./upload-BG3x_JWJ.js";import{t as x}from"./tooltip-L2G5ntVi.js";import{t as S}from"./alert-BprQRUmf.js";import{_ as C,v as w}from"./vuex.esm-bundler-C-5WV-ta.js";import{t as T}from"./checkbox-DXMDpaxv.js";import{t as E}from"./drawer-VaJhlwVr.js";import{t as D}from"./input-number-BwJ2QIsY.js";import{t as O}from"./clock-DIjv9Rh6.js";import{t as k}from"./hash-B61j4cgz.js";import{t as ee}from"./info-CDi6ZfZf.js";import{a as A,i as j,n as M,r as N,t as P}from"./pagination-BodQ3KsQ.js";import{t as F}from"./trash-2-CUcSh2xz.js";import{t as te}from"./triangle-alert-fl0O4ttl.js";import{t as I}from"./wand-sparkles-C9xUdsPZ.js";import{xt as ne}from"./constants-CspFM8fh.js";import{Bn as L,D as R,Fi as z,Ha as B,Ia as V,Li as H,T as U,Tn as W,Vn as G,Xi as K,at as q,ct as J,ia as Y,li as X,lo as Z,lt as re,oi as ie,ot as ae,st as oe,to as Q,tt as se}from"./index-Bk9SKIXV.js";import{t as ce}from"./CopyToClipboard-CIB9LY9Y.js";import{t as le}from"./ReportButton-D3eba7A1.js";import{t as ue}from"./ImagePreview-Dq6UkYX8.js";import{n as de}from"./taskDrawerMixin-DyAUhFEq.js";import{t as fe}from"./ServicePricingSummary-N2X5DfKj.js";import{t as pe}from"./VideoPlayer-BNtDhrpR.js";import{t as me}from"./ScenarioPaymentMode-BwoqFZco.js";import{t as he}from"./ApiCodeButton-C5tBSXac.js";import{t as ge}from"./BotPlaceholder-7Rci0gLD.js";import{t as _e}from"./taskPollingMixin-CcLxtz8z.js";import{n as ve,t as ye}from"./generationInput-VbA_cpqx.js";var be=_({name:`LayoutWan`,components:{MagicIcon:I,ElDrawer:E,ElButton:Q},mixins:[de]}),xe={class:`main flex flex-row flex-1`},Se={class:`config w-[320px] flex-none h-full min-h-0 overflow-hidden flex flex-col bg-[var(--app-sidebar-bg)] border-r border-[var(--app-border-subtle)]`},Ce={class:`result h-full p-4 flex-1 flex flex-col min-w-0 overflow-x-hidden bg-[var(--app-content-bg)]`};function we(t,n,r,i,o,c){let f=l(`magic-icon`),m=l(`el-button`),_=l(`el-drawer`);return h(),s(`div`,xe,[e(`div`,Se,[d(t.$slots,`config`,{},void 0,!0)]),e(`div`,Ce,[d(t.$slots,`result`,{},void 0,!0)]),u(a(m,{circle:``,class:`menu`,"aria-label":t.$t(`common.button.openMenu`),title:t.$t(`common.button.openMenu`),onClick:n[0]||=e=>t.drawer=!0},{default:p(()=>[a(f,{size:`1em`,"aria-hidden":`true`,focusable:`false`})]),_:1},8,[`aria-label`,`title`]),[[g,!t.tasksEmpty]]),a(_,{modelValue:t.drawer,"onUpdate:modelValue":n[1]||=e=>t.drawer=e,direction:`ltr`,"with-header":!1,size:`340px`,class:`generator-drawer`},{default:p(()=>[d(t.$slots,`config`,{},void 0,!0)]),_:3},8,[`modelValue`])])}var Te=R(be,[[`render`,we],[`__scopeId`,`data-v-20dc9571`]]),Ee=_({name:`ModelSelector`,components:{ElSelect:v,ElOption:y},data(){return{}},computed:{options(){return[{value:`wan2.6-t2v`,label:this.$t(`wan.button.modelT2v`)},{value:`wan2.6-i2v`,label:this.$t(`wan.button.modelI2v`)},{value:`wan2.6-i2v-flash`,label:this.$t(`wan.button.modelI2vFlash`)},{value:`wan2.6-r2v`,label:this.$t(`wan.button.modelR2v`)},{value:`wan3.0-video`,label:this.$t(`wan.button.modelWan3`)}]},value:{get(){return this.$store.state.wan?.config?.model},set(e){this.$store.commit(`wan/setConfig`,{...this.$store.state.wan?.config,model:e})}}},mounted(){this.value||=ne}}),De={class:`field`},Oe={class:`title font-bold`},ke={class:`float-left`};function Ae(t,n,r,o,u,d){let g=l(`el-option`),_=l(`el-select`);return h(),s(`div`,De,[e(`h2`,Oe,i(t.$t(`wan.name.model`)),1),a(_,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,class:`value`,placeholder:t.$t(`wan.placeholder.select`),clearable:``},{default:p(()=>[(h(!0),s(c,null,m(t.options,t=>(h(),f(g,{key:t.value,label:t.label,value:t.value},{default:p(()=>[e(`span`,ke,i(t.label),1)]),_:2},1032,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`])])}var je=R(Ee,[[`render`,Ae],[`__scopeId`,`data-v-f4ee3412`]]),Me=`720p`,Ne=_({name:`ResolutionSelector`,components:{ElSelect:v,ElOption:y},computed:{options(){return[{value:`480p`,label:this.$t(`wan.name.resolution480p`)},{value:`720p`,label:this.$t(`wan.name.resolution720p`)},{value:`1080p`,label:this.$t(`wan.name.resolution1080p`)}]},value:{get(){return this.$store.state.wan?.config?.resolution},set(e){this.$store.commit(`wan/setConfig`,{...this.$store.state.wan?.config,resolution:e})}}},mounted(){this.value||=Me}}),Pe={class:`field`},Fe={class:`title font-bold`},Ie={class:`float-left`};function Le(t,n,r,o,u,d){let g=l(`el-option`),_=l(`el-select`);return h(),s(`div`,Pe,[e(`h2`,Fe,i(t.$t(`wan.name.resolution`)),1),a(_,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,class:`value`,placeholder:t.$t(`wan.placeholder.select`),clearable:``},{default:p(()=>[(h(!0),s(c,null,m(t.options,t=>(h(),f(g,{key:t.value,label:t.label,value:t.value},{default:p(()=>[e(`span`,Ie,i(t.label),1)]),_:2},1032,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`])])}var Re=R(Ne,[[`render`,Le],[`__scopeId`,`data-v-3e39f44e`]]),ze=5,Be=_({name:`DurationSelector`,components:{ElSelect:v,ElOption:y},computed:{options(){return[{value:5,label:this.$t(`wan.name.duration5s`)},{value:10,label:this.$t(`wan.name.duration10s`)},{value:15,label:this.$t(`wan.name.duration15s`)}]},value:{get(){return this.$store.state.wan?.config?.duration},set(e){this.$store.commit(`wan/setConfig`,{...this.$store.state.wan?.config,duration:e})}}},mounted(){this.value||=ze}}),Ve={class:`field`},He={class:`title font-bold`},Ue={class:`float-left`};function We(t,n,r,o,u,d){let g=l(`el-option`),_=l(`el-select`);return h(),s(`div`,Ve,[e(`h2`,He,i(t.$t(`wan.name.duration`)),1),a(_,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,class:`value`,placeholder:t.$t(`wan.placeholder.select`),clearable:``},{default:p(()=>[(h(!0),s(c,null,m(t.options,t=>(h(),f(g,{key:t.value,label:t.label,value:t.value},{default:p(()=>[e(`span`,Ue,i(t.label),1)]),_:2},1032,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`])])}var Ge=R(Be,[[`render`,We],[`__scopeId`,`data-v-5f35a2cf`]]),Ke=_({name:`ImageUrlInput`,components:{ElUpload:b,ElButton:Q,InfoIcon:A,ImagePreview:ue},mixins:[re,J,ae,se],data(){return{fileList:[],uploadUrl:V()+`/api/v1/files/`}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},urls(){return this.fileList.map(e=>e.url).filter(e=>e!==void 0)},value:{get(){return this.$store.state.wan?.config?.image_url},set(){let e=this.urls?.[0];this.$store.commit(`wan/setConfig`,{...this.$store.state.wan?.config,image_url:e})}}},mounted(){this.value||=void 0,this.onSetImageUrl()},methods:{onExceed(){w.warning(this.$t(`wan.message.uploadImageExceed`))},onError(){w.error(this.$t(`wan.message.uploadImageError`))},async onRemove(){w.error(this.$t(`wan.message.uploadImageError`))},onSetImageUrl(){let e=this.urls?.[0];this.$store.commit(`wan/setConfig`,{...this.$store.state.wan?.config,image_url:e})},async onSuccess(){this.onSetImageUrl()}}}),qe={class:`relative`},Je={class:`flex justify-between`},Ye={class:`flex justify-start items-center`},Xe={class:`text-sm font-bold`};function Ze(t,n,c,u,d,m){let g=l(`info-icon`),_=l(`image-preview`),v=l(`el-button`),y=l(`el-upload`);return h(),s(`div`,qe,[e(`div`,Je,[e(`div`,Ye,[e(`span`,Xe,i(t.$t(`wan.name.imageUrl`)),1),a(g,{content:t.$t(`wan.description.imageUrl`),class:`info`},null,8,[`content`])])]),a(y,{ref:`uploader`,"file-list":t.fileList,"onUpdate:fileList":n[0]||=e=>t.fileList=e,accept:`.png,.jpg,.jpeg,.gif,.bmp,.webp`,name:`file`,"show-file-list":!0,limit:1,multiple:!1,"list-type":`picture`,"before-upload":t.beforeUploadSizeGuard,action:t.uploadUrl,"on-exceed":t.onExceed,"on-error":t.onError,"on-remove":t.onRemove,"on-success":t.onSuccess,headers:t.headers},{file:p(({file:e})=>[e.url&&e.percentage!==void 0?(h(),f(_,{key:0,url:e.url,name:e.name,percentage:e.percentage,onRemove:n=>t.fileList.splice(t.fileList.indexOf(e),1)},null,8,[`url`,`name`,`percentage`,`onRemove`])):o(``,!0)]),default:p(()=>[a(v,{size:`small`,type:`primary`,class:`btn btn-upload`,round:``},{default:p(()=>[r(i(t.$t(`wan.button.uploadImageUrl`)),1)]),_:1})]),_:1},8,[`file-list`,`before-upload`,`action`,`on-exceed`,`on-error`,`on-remove`,`on-success`,`headers`])])}var Qe=R(Ke,[[`render`,Ze],[`__scopeId`,`data-v-56929914`]]),$e=_({name:`PromptInput`,components:{PromptTextarea:j},computed:{prompt:{get(){return this.$store.state.wan?.config?.prompt},set(e){this.$store.commit(`wan/setConfig`,{...this.$store.state.wan?.config,prompt:e})}}},mounted(){this.prompt||=``}});function et(e,t,n,r,i,a){let o=l(`prompt-textarea`);return h(),f(o,{modelValue:e.prompt,"onUpdate:modelValue":t[0]||=t=>e.prompt=t,title:e.$t(`wan.name.prompt`),info:e.$t(`wan.description.prompt`),placeholder:e.$t(`wan.placeholder.prompt`)},null,8,[`modelValue`,`title`,`info`,`placeholder`])}var tt=R($e,[[`render`,et]]),nt=_({name:`WanMediaInput`,components:{ElInput:Z},computed:{value:{get(){return this.$store.state.wan?.config?.media_text||``},set(e){this.$store.commit(`wan/setConfig`,{...this.$store.state.wan?.config,media_text:e})}}}}),rt={class:`field`},it={class:`flex items-center mb-2`},at={class:`text-sm font-bold`},ot={class:`text-xs mt-1 text-[var(--el-text-color-secondary)]`};function st(t,n,r,o,c,u){let d=l(`el-input`);return h(),s(`div`,rt,[e(`div`,it,[e(`span`,at,i(t.$t(`wan.name.media`)),1)]),a(d,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,type:`textarea`,rows:5,placeholder:t.$t(`wan.placeholder.media`)},null,8,[`modelValue`,`placeholder`]),e(`p`,ot,i(t.$t(`wan.description.media`)),1)])}var ct=R(nt,[[`render`,st]]),lt=_({name:`Wan3Options`,components:{ElSelect:v,ElOption:y,ElInputNumber:D,ElCheckbox:T},data:()=>({ratios:[`adaptive`,`16:9`,`4:3`,`1:1`,`3:4`,`9:16`]}),computed:{ratio:{get(){return this.$store.state.wan?.config?.ratio||`adaptive`},set(e){this.set({ratio:e})}},duration:{get(){return this.$store.state.wan?.config?.duration??5},set(e){this.set({duration:e})}},audio:{get(){return this.$store.state.wan?.config?.audio!==!1},set(e){this.set({audio:e})}}},methods:{set(e){this.$store.commit(`wan/setConfig`,{...this.$store.state.wan?.config,...e})}}}),ut={class:`space-y-4`},dt={class:`field`},ft={class:`label`},pt={class:`field`},mt={class:`label`};function ht(t,n,o,u,d,g){let _=l(`el-option`),v=l(`el-select`),y=l(`el-input-number`),b=l(`el-checkbox`);return h(),s(`div`,ut,[e(`div`,dt,[e(`span`,ft,i(t.$t(`wan.name.ratio`)),1),a(v,{modelValue:t.ratio,"onUpdate:modelValue":n[0]||=e=>t.ratio=e},{default:p(()=>[(h(!0),s(c,null,m(t.ratios,e=>(h(),f(_,{key:e,label:e,value:e},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`])]),e(`div`,pt,[e(`span`,mt,i(t.$t(`wan.name.duration`)),1),a(y,{modelValue:t.duration,"onUpdate:modelValue":n[1]||=e=>t.duration=e,min:-1,max:30},null,8,[`modelValue`])]),a(b,{modelValue:t.audio,"onUpdate:modelValue":n[2]||=e=>t.audio=e},{default:p(()=>[r(i(t.$t(`wan.name.audio`)),1)]),_:1},8,[`modelValue`])])}var gt=_({name:`PresetPanel`,components:{MagicIcon:I,ElButton:Q,PromptInput:tt,ImageUrlInput:Qe,ModelSelector:je,ResolutionSelector:Re,DurationSelector:Ge,MediaInput:ct,Wan3Options:R(lt,[[`render`,ht],[`__scopeId`,`data-v-49568593`]]),ServicePricingSummary:fe,ScenarioPaymentMode:me},emits:[`generate`],data(){return{quoteTimer:0,quoteRunId:0}},computed:{canGenerate(){return ye(`wan`,L(this.config))},config(){return this.$store.state.wan?.config},consumption(){return W(this.config,this.service?.cost)},service(){return this.$store.state.wan?.service},supportsResolution(){let e=this.config?.model;return e===`wan2.6-t2v`||e===`wan2.6-i2v`||e===`wan2.6-i2v-flash`||e===`wan3.0-video`},supportsDuration(){return this.config?.model===`wan2.6-t2v`},isWan3(){return this.config?.model===`wan3.0-video`},supportsImageUrl(){let e=this.config?.model;return e===`wan2.6-i2v`||e===`wan2.6-i2v-flash`},walletMode(){return z()&&H(`wan`).mode===`wallet`}},watch:{walletMode:{handler(e){e&&this.scheduleQuote()},immediate:!0},config:{handler(){this.walletMode&&this.scheduleQuote()},deep:!0}},beforeUnmount(){window.clearTimeout(this.quoteTimer),this.quoteRunId+=1},methods:{scheduleQuote(){window.clearTimeout(this.quoteTimer),this.quoteRunId+=1;let e=H(`wan`);e.quoteUsdc=void 0,e.quoteLoading=!1,this.canGenerate&&(this.quoteTimer=window.setTimeout(this.refreshQuote,350))},async refreshQuote(){if(!this.canGenerate)return;let e=H(`wan`),t=++this.quoteRunId;e.quoteLoading=!0,e.quoteUsdc=void 0;try{let n=await G.quote(L(this.config));t===this.quoteRunId&&e.mode===`wallet`&&this.canGenerate&&(e.quoteUsdc=n.amountUsdc)}catch(e){console.warn(`x402 quote failed`,e)}finally{t===this.quoteRunId&&(e.quoteLoading=!1)}},onGenerate(){this.$emit(`generate`)}}}),_t={class:`flex flex-col h-full`},vt={class:`flex-1 overflow-y-auto p-5`},yt={class:`flex flex-col items-center justify-center px-5 pb-5`};function bt(t,n,c,u,d,m){let g=l(`prompt-input`),_=l(`model-selector`),v=l(`resolution-selector`),y=l(`duration-selector`),b=l(`image-url-input`),x=l(`media-input`),S=l(`wan3-options`),C=l(`scenario-payment-mode`),w=l(`service-pricing-summary`),T=l(`magic-icon`),E=l(`el-button`);return h(),s(`div`,_t,[e(`div`,vt,[a(g,{class:`mb-4`}),a(_,{class:`mb-4`}),t.supportsResolution?(h(),f(v,{key:0,class:`mb-4`})):o(``,!0),t.supportsDuration?(h(),f(y,{key:1,class:`mb-4`})):o(``,!0),t.supportsImageUrl?(h(),f(b,{key:2,class:`mb-4`})):o(``,!0),t.isWan3?(h(),f(x,{key:3,class:`mb-4`})):o(``,!0),t.isWan3?(h(),f(S,{key:4,class:`mb-4`})):o(``,!0)]),e(`div`,yt,[a(C,{scenario:`wan`}),t.walletMode?o(``,!0):(h(),f(w,{key:0,value:t.consumption,service:t.service},null,8,[`value`,`service`])),a(E,{type:`primary`,class:`btn w-full`,round:``,disabled:!t.canGenerate,onClick:t.onGenerate},{default:p(()=>[a(T,{class:`mr-2`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`wan.button.generate`)),1)]),_:1},8,[`disabled`,`onClick`])])])}var xt=R(gt,[[`render`,bt]]),St=_({name:`TaskPreview`,components:{DeleteIcon:F,ChannelIcon:k,InfoIcon:ee,MagicIcon:I,TimeIcon:O,WarningIcon:te,CopyToClipboard:ce,ElAlert:S,VideoPlayer:pe,ElTooltip:x,ElButton:Q,ApiCodeButton:he,ReportButton:le},props:{modelValue:{type:Object,required:!0}},computed:{isFailure(){let e=this.modelValue?.response;return e?.success===!1||!!e?.error||e?.state===`failed`||e?.state===`cancelled`},isWaiting(){let e=this.modelValue?.response;return e?this.isFailure?!1:[`queued`,`pending`,`processing`,`running`].includes(e.state||``)?!0:e.success!==!0&&!e.state:!0},application(){return this.$store.state.wan?.application},config(){return this.$store.state.wan?.config}},methods:{async onDelete(){let e=this.modelValue?.id;if(e){try{await B.confirm(this.$t(`common.message.deleteTaskConfirm`),this.$t(`common.button.delete`),{type:`warning`,confirmButtonText:this.$t(`common.button.delete`),cancelButtonText:this.$t(`common.button.cancel`),confirmButtonClass:`el-button--danger`})}catch{return}try{await this.$store.dispatch(`wan/deleteTask`,{id:e}),w.success(this.$t(`common.message.deleteTaskSuccess`))}catch{w.error(this.$t(`common.message.deleteTaskFailed`))}}},onDownload(e){console.debug(`on download wan video`,e),window.open(e,`_blank`)}}}),Ct={class:`preview`},wt={class:`left`},Tt={class:`main`},Et={class:`bot`},Dt={class:`datetime`},Ot=[`aria-label`],kt={class:`info`},At={key:0,class:`prompt mt-2`},jt={key:0},Mt={key:1},Nt={key:0,class:n({content:!0,failed:!0})},Pt={key:0,class:`mb-4`},Ft={key:1,class:n({operations:!0,"mt-2":!0})},It={key:0,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Lt={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Rt={key:1,class:`text-[var(--el-text-color-regular)] text-xs mb-0`},zt={key:1,class:n({content:!0})},Bt={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},$={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Vt={key:0,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Ht={class:`text-[var(--el-text-color-regular)] text-xs mb-0`},Ut={key:2,class:n({content:!0})},Wt={class:`text-[var(--el-text-color-regular)] text-xs mb-0`};function Gt(n,c,u,d,f,m){let g=l(`capability-presentation`),_=l(`delete-icon`),v=l(`el-tooltip`),y=l(`video-player`),b=l(`el-button`),x=l(`api-code-button`),S=l(`report-button`),C=l(`channel-icon`),w=l(`copy-to-clipboard`),T=l(`magic-icon`),E=l(`time-icon`),D=l(`el-alert`),O=l(`warning-icon`),k=l(`info-icon`);return h(),s(`div`,Ct,[e(`div`,wt,[a(g,{capability:`wan`,part:`avatar`,class:`avatar`})]),e(`div`,Tt,[e(`div`,Et,[a(g,{capability:`wan`,part:`name`}),e(`span`,Dt,i(n.$dayjs.format(``+new Date(parseFloat((n.modelValue?.created_at||``).toString())*1e3))),1),a(v,{effect:`dark`,content:n.$t(`common.button.delete`),placement:`top`},{default:p(()=>[n.modelValue?.id?(h(),s(`button`,{key:0,type:`button`,class:`btn-delete`,"aria-label":n.$t(`common.button.delete`),onClick:c[0]||=t((...e)=>n.onDelete&&n.onDelete(...e),[`stop`])},[a(_,{size:`1em`,"aria-hidden":`true`,focusable:`false`})],8,Ot)):o(``,!0)]),_:1},8,[`content`])]),e(`div`,kt,[n.modelValue?.request?.prompt?(h(),s(`p`,At,[r(i(n.modelValue?.request?.prompt)+` `,1),n.modelValue?.response?o(``,!0):(h(),s(`span`,jt,` - (`+i(n.$t(`wan.status.pending`))+`) `,1)),n.modelValue?.response&&n.isWaiting?(h(),s(`span`,Mt,` - (`+i(n.$t(`wan.status.processing`))+`) `,1)):o(``,!0)])):o(``,!0)]),n.modelValue?.response?.success===!0&&!n.isFailure&&!n.isWaiting?(h(),s(`div`,Nt,[n.modelValue?.response?.video_url?(h(),s(`div`,Pt,[a(y,{src:n.modelValue?.response?.video_url},null,8,[`src`])])):o(``,!0),n.modelValue?.response?.video_url?(h(),s(`div`,Ft,[a(v,{class:`box-item`,effect:`dark`,content:n.$t(`wan.message.downloadVideo`),placement:`top-start`},{default:p(()=>[a(b,{type:`info`,size:`small`,class:`mb-2`,onClick:c[1]||=t(e=>n.onDownload(n.modelValue?.response?.video_url),[`stop`])},{default:p(()=>[r(i(n.$t(`wan.button.download`)),1)]),_:1})]),_:1},8,[`content`]),a(x,{path:`/wan/videos`,body:n.modelValue?.request},null,8,[`body`]),a(S,{service:`wan`,"target-id":n.modelValue?.id,snapshot:{prompt:n.modelValue?.request?.prompt}},null,8,[`target-id`,`snapshot`])])):o(``,!0),a(D,{closable:!1,class:`mt-2 success`},{default:p(()=>[n.modelValue?.request?.model?(h(),s(`p`,It,[a(C,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`wan.name.model`))+`: `+i(n.modelValue?.request?.model)+` `,1),a(w,{content:n.modelValue?.id},null,8,[`content`])])):o(``,!0),e(`p`,Lt,[a(T,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`wan.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(w,{content:n.modelValue?.id},null,8,[`content`])]),n.modelValue?.elapsed?(h(),s(`p`,Rt,[a(E,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`wan.name.elapsed`))+`: `+i(n.modelValue?.elapsed?.toFixed(2))+`s `,1)])):o(``,!0)]),_:1})])):o(``,!0),n.isFailure?(h(),s(`div`,zt,[a(D,{closable:!1,class:`failure`},{template:p(()=>[a(O,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`wan.name.failure`)),1)]),default:p(()=>[e(`p`,Bt,[a(T,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`wan.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(w,{content:n.modelValue?.id},null,8,[`content`])]),e(`p`,$,[a(k,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`wan.name.failureReason`))+`: `+i(n.modelValue?.response?.error?.message)+` `,1),a(w,{content:n.modelValue?.response?.error?.message},null,8,[`content`])]),n.modelValue?.elapsed?(h(),s(`p`,Vt,[a(E,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`wan.name.elapsed`))+`: `+i(n.modelValue?.elapsed?.toFixed(2))+`s `,1)])):o(``,!0),e(`p`,Ht,[a(C,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`wan.name.traceId`))+`: `+i(n.modelValue?.response?.trace_id)+` `,1),a(w,{content:n.modelValue?.response?.trace_id},null,8,[`content`])])]),_:1})])):o(``,!0),n.isWaiting?(h(),s(`div`,Ut,[a(D,{closable:!1,class:`info`},{template:p(()=>[a(E,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(n.modelValue?.response?`wan.status.processing`:`wan.status.pending`)),1)]),default:p(()=>[e(`p`,Wt,[a(T,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`wan.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(w,{content:n.modelValue?.id},null,8,[`content`])])]),_:1})])):o(``,!0)])])}var Kt=_({name:`RecentPanel`,components:{TaskPreview:R(St,[[`render`,Gt],[`__scopeId`,`data-v-f180e91e`]]),BotPlaceholder:ge,NoTasks:N,ScrollList:M},props:{loading:{type:Boolean,default:!1}},emits:[`reach-top`],data(){return{job:0}},computed:{tasks(){return{...this.$store.state.wan?.tasks,items:this.$store.state.wan?.tasks?.items?.slice()}}},methods:{getScrollElement(){return this.$refs.scrollList?.getScrollElement?.()}}}),qt={key:0},Jt={key:2,class:`w-full h-full flex items-center justify-center`};function Yt(e,t,n,r,i,u){let d=l(`bot-placeholder`),g=l(`task-preview`),_=l(`scroll-list`),v=l(`no-tasks`);return h(),s(c,null,[e.tasks?.items===void 0?(h(),s(`div`,qt,[a(d)])):e.tasks?.items?.length&&e.tasks?.items?.length>0?(h(),f(_,{key:1,ref:`scrollList`,class:`tasks w-full h-full overflow-y-auto`,loading:e.loading,onReachTop:t[0]||=t=>e.$emit(`reach-top`)},{default:p(()=>[(h(!0),s(c,null,m(e.tasks?.items,e=>(h(),f(g,{key:e.id,"model-value":e},null,8,[`model-value`]))),128))]),_:1},8,[`loading`])):o(``,!0),e.tasks?.items?.length===0?(h(),s(`div`,Jt,[a(v)])):o(``,!0)],64)}var Xt=_({name:`WanIndex`,components:{ConfigPanel:xt,Layout:Te,RecentPanel:R(Kt,[[`render`,Yt]])},mixins:[oe,_e(`wan`)],inject:[`initialized`],data(){return{task:void 0,job:0,timer:void 0,loadingMore:!1,fetchingTasks:!1,walletTaskIds:[]}},computed:{applicationsLoading(){return this.$store.state.wan?.status?.getApplications===C.Request},tasksLoading(){return this.$store.state.wan?.status?.getTasks===C.Request||this.fetchingTasks},credential(){return this.$store.state.wan.credential},config(){return this.$store.state.wan.config},application(){return this.$store.state.wan.application},tasks(){return this.$store.state.wan.tasks},walletMode(){return z()&&H(`wan`).mode===`wallet`}},watch:{walletMode:{async handler(e,t){if(!(t===void 0||e===t)){if(this.$store.commit(`wan/setTasks`,void 0),e&&!this.job&&(this.job=window.setInterval(this.onPollTasks,5e3)),!e&&!this.credential?.token){window.clearInterval(this.job),this.job=0,await this.onScrollDown();return}await this.onGetTasks(),await this.onScrollDown()}}},tasks:{handler(e,t){e?.items?.length>t?.items?.length&&console.debug(`new tasks detected`)},deep:!0},initialized:{async handler(e){e&&(console.debug(`layout initialized`),await this.onGetTasks(),await this.onScrollDown(),this.job||=window.setInterval(this.onPollTasks,5e3))},immediate:!0}},async mounted(){await this.onGetService()},async unmounted(){window.clearInterval(this.job)},methods:{async onReachTop(){await P({tasks:this.tasks,getTasks:()=>this.tasks,loading:this.loadingMore,setLoading:e=>this.loadingMore=e,isBlocked:()=>this.tasksLoading||this.applicationsLoading,fetch:e=>this.onGetTasks({createdAtMax:e}),getScrollElement:()=>this.getTasksScrollElement()})},async onGetService(){console.debug(`start onGetService`),await this.$store.dispatch(`wan/getService`),console.debug(`end onGetService`)},async onGetApplication(){console.debug(`start onGetApplication`),await this.$store.dispatch(`wan/getApplications`),console.debug(`end onGetApplication`),await this.onGetTasks()},async onScrollDown(){await this.$nextTick();let e=this.getTasksScrollElement();e&&(e.scrollTop=e.scrollHeight)},async onGetTasks(e){if(this.applicationsLoading||this.fetchingTasks){console.debug(`loading`);return}console.debug(`start onGetTasks`,e);let{limit:t=5,createdAtMin:n,createdAtMax:r}=e||{};console.debug(`limit`,t,`createdAtMin`,n,`createdAtMax`,r),this.fetchingTasks=!0;try{await this.$store.dispatch(`wan/getTasks`,{limit:t,createdAtMin:n,createdAtMax:r,...this.walletMode&&!this.credential?.token?{mode:`x402`,ids:this.walletTaskIds}:{}})}finally{this.fetchingTasks=!1}},async onGenerate(){let e=L(this.config),t=ve(`wan`,e);if(t){w.error(this.$t(`common.message.${t}`));return}if(!q(this.uploadTracker,e=>this.$t(e),e=>w.warning(e)))return;let n;if(this.walletMode){let t=this.getWalletContext();if(!t){w.warning(this.$t(`common.x402Scenario.connectWalletFirst`));return}n=G.generate(e,{mode:`x402`,x402:{wallet:t,confirm:e=>this.confirmWalletPayment(e),identityToken:this.credential?.token}})}else{if(!Y())return;let t=this.credential?.token;if(!t)return;n=G.generate(e,{token:t})}w.info(this.$t(`wan.message.startingTask`)),K(`wan`,n).then(e=>{let t=e?.data?.task_id;this.walletMode&&!this.credential?.token&&t&&!this.walletTaskIds.includes(t)&&this.walletTaskIds.unshift(t),w.success(this.$t(`wan.message.startTaskSuccess`))}).catch(e=>{e instanceof ie||U(e,`wan`)||(this.walletMode?w.error(this.$t(`common.x402Scenario.paymentFailed`)):w.error(this.$t(`wan.message.startTaskFailed`)))}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})},getWalletContext(){return X(this.$wallet)},async confirmWalletPayment(e){return B.confirm(this.$t(`common.x402Scenario.confirmPayment`,{amount:e.amountUsdc}),this.$t(`order.message.x402ConfirmTitle`),{confirmButtonText:this.$t(`order.message.x402WalletPayCta`),cancelButtonText:this.$t(`common.button.cancel`),type:`warning`}).then(()=>!0).catch(()=>!1)},getTasksScrollElement(){return this.$refs.recentPanel?.getScrollElement?.()}}});function Zt(e,t,n,r,i,o){let s=l(`config-panel`),c=l(`recent-panel`),u=l(`layout`);return h(),f(u,null,{config:p(()=>[a(s,{onGenerate:e.onGenerate},null,8,[`onGenerate`])]),result:p(()=>[a(c,{ref:`recentPanel`,loading:e.loadingMore,onReachTop:e.onReachTop},null,8,[`loading`,`onReachTop`])]),_:1})}var Qt=R(Xt,[[`render`,Zt]]);export{Qt as default};
|
|
@@ -1 +0,0 @@
|
|
|
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-Dv7ZrvnE.js";import{t as v}from"./upload-BG3x_JWJ.js";import{t as y}from"./tooltip-L2G5ntVi.js";import{t as b}from"./alert-BprQRUmf.js";import{_ as x,v as S}from"./vuex.esm-bundler-C-5WV-ta.js";import{t as C}from"./progress-BuyYfFZn.js";import{t as w}from"./clock-DIjv9Rh6.js";import{t as T}from"./hash-B61j4cgz.js";import{t as E}from"./info-CDi6ZfZf.js";import{a as D,i as O,n as k,r as A,t as ee}from"./pagination-BodQ3KsQ.js";import{t as te}from"./trash-2-CUcSh2xz.js";import{t as ne}from"./triangle-alert-fl0O4ttl.js";import{t as j}from"./upload-ClpzRFqM.js";import{t as M}from"./wand-sparkles-C9xUdsPZ.js";import{Ba as re,D as N,Fi as P,Ha as F,Ia as I,Li as L,T as R,Tn as z,Xi as B,at as V,ct as H,dr as U,ia as W,li as G,lo as K,lt as q,oi as J,ot as Y,st as X,to as Z,tt as ie,ur as Q}from"./index-Bk9SKIXV.js";import{t as ae}from"./CopyToClipboard-CIB9LY9Y.js";import{t as oe}from"./ReportButton-D3eba7A1.js";import{t as se}from"./ImagePreview-Dq6UkYX8.js";import{t as ce}from"./ServicePricingSummary-N2X5DfKj.js";import{t as le}from"./AudioPreview-fEc2Zd45.js";import{t as ue}from"./VideoPlayer-BNtDhrpR.js";import{t as de}from"./ScenarioPaymentMode-BwoqFZco.js";import{t as fe}from"./BotPlaceholder-7Rci0gLD.js";import{t as pe}from"./taskPollingMixin-CcLxtz8z.js";import{t as me}from"./Hailuo-Gr9P4KZh.js";var he=h({name:`MinimaxFieldTitle`,components:{InfoIcon:D},props:{title:{type:String,required:!0},description:{type:String,required:!0},inline:{type:Boolean,default:!1}}}),ge={class:`m-0 text-[14px] font-bold`};function _e(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`,ge,i(t.title),1),a(f,{content:t.description},null,8,[`content`])],2)}var ve=N(he,[[`render`,_e]]),ye=h({name:`MinimaxReferenceMediaInput`,components:{AudioPreview:le,CloseIcon:re,ElButton:Z,ElProgress:C,ElUpload:v,ImagePreview:se,InfoIcon:D,UploadIcon:j},mixins:[q,H,Y,ie],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:I()+`/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))}}}),be={class:`mb-[10px] flex min-h-8 w-full items-center justify-between gap-3`},xe={class:`flex min-w-0 items-center`},Se={class:`m-0 text-[14px] font-bold`},Ce={key:0,class:`flex flex-wrap gap-[10px]`},we=[`aria-label`,`onClick`];function Te(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`,be,[e(`div`,xe,[e(`h2`,Se,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`,Ce,[(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,we)],64))]))),128))])):o(``,!0)])}var Ee=N(ye,[[`render`,Te],[`__scopeId`,`data-v-155379bf`]]),De=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`},Oe=h({name:`MinimaxConfigPanel`,components:{MagicIcon:M,ServicePricingSummary:ce,ElButton:Z,ElInput:K,ElOption:_,ElSelect:g,FieldTitle:ve,PromptTextarea:O,ReferenceMediaInput:Ee,ScenarioPaymentMode:de},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 z(this.config,this.service?.cost)},service(){return this.$store.state.minimax?.service},walletMode(){return P()&&L(`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=L(`minimax`),t=++this.quoteRunId;e.quoteLoading=!0,e.quoteUsdc=void 0;try{let n=await U.quote(Q(this.config));t===this.quoteRunId&&e.mode===`wallet`&&(e.quoteUsdc=n.amountUsdc)}catch(e){console.warn(`x402 quote failed`,e)}finally{t===this.quoteRunId&&(e.quoteLoading=!1)}},onGenerate(){let e=De(this.config);if(e){S.warning(this.$t(`minimax.message.${e}`));return}this.$emit(`generate`)}}}),ke={class:`flex flex-col h-full`},Ae={class:`flex-1 overflow-y-auto p-5`},je={class:`mb-4`},Me={class:`mb-4`},Ne={class:`option-grid`},Pe=[`aria-pressed`,`onClick`],Fe={class:`mb-4`},Ie={class:`ratio-options`},Le=[`aria-pressed`,`onClick`],Re={class:`ratio-preview`},ze={class:`setting-row mb-4`},Be={class:`flex flex-col items-center justify-center px-5 pb-5`};function Ve(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(`service-pricing-summary`),O=l(`magic-icon`),k=l(`el-button`);return m(),s(`div`,ke,[e(`div`,Ae,[e(`div`,je,[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`,Me,[a(b,{title:t.$t(`minimax.name.resolution`),description:t.$t(`minimax.description.resolution`)},null,8,[`title`,`description`]),e(`div`,Ne,[(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,Pe))),128))])]),e(`div`,Fe,[a(b,{title:t.$t(`minimax.name.ratio`),description:t.$t(`minimax.description.ratio`)},null,8,[`title`,`description`]),e(`div`,Ie,[(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`,Re,[e(`span`,{style:f({width:r.width,height:r.height}),"aria-hidden":`true`},null,4)]),e(`span`,null,i(r.value),1)],10,Le))),128))])]),e(`div`,ze,[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`,Be,[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 He=N(Oe,[[`render`,Ve],[`__scopeId`,`data-v-c5d213da`]]),Ue=h({name:`TaskPreview`,components:{DeleteIcon:te,ChannelIcon:T,InfoIcon:E,MagicIcon:M,TimeIcon:w,WarningIcon:ne,CopyToClipboard:ae,ElAlert:b,VideoPlayer:ue,ElTooltip:y,ElButton:Z,ReportButton:oe},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 F.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`)}}}),We={class:`preview`},Ge={class:`left`},Ke={class:`main`},qe={class:`bot`},Je={class:`datetime`},Ye=[`aria-label`],Xe={key:0,class:n({content:!0,failed:!0})},Ze={key:0,class:`mb-4`},Qe={key:1,class:n({operations:!0,"mt-2":!0})},$e={key:0,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:1,class:n({content:!0})},$={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},nt={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},rt={key:2,class:n({content:!0})},it={class:`text-[var(--el-text-color-regular)] text-xs mb-0`};function at(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`,We,[e(`div`,Ge,[a(_,{capability:`minimax`,part:`avatar`,class:`avatar`})]),e(`div`,Ke,[e(`div`,qe,[a(_,{capability:`minimax`,part:`name`}),e(`span`,Je,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,Ye)):o(``,!0)]),_:1},8,[`content`])]),c[2]||=e(`div`,{class:`info`},null,-1),n.modelValue?.status===`succeeded`?(m(),s(`div`,Xe,[n.modelValue?.content?.url?(m(),s(`div`,Ze,[a(b,{src:n.modelValue.content.url},null,8,[`src`])])):o(``,!0),n.modelValue?.content?.url?(m(),s(`div`,Qe,[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`,$e,[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`,et,[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`,tt,[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`,$,[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`,nt,[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`,rt,[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`,it,[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 ot=h({name:`RecentPanel`,components:{TaskPreview:N(Ue,[[`render`,at],[`__scopeId`,`data-v-2f8bed02`]]),BotPlaceholder:fe,NoTasks:A,ScrollList:k},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?.()}}}),st={key:0},ct={key:2,class:`w-full h-full flex items-center justify-center`};function lt(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`,st,[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`,ct,[a(v)])):o(``,!0)],64)}var ut=h({name:`MinimaxIndex`,components:{ConfigPanel:He,Layout:me,RecentPanel:N(ot,[[`render`,lt]])},mixins:[X,pe(`minimax`)],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 P()&&L(`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.onPollTasks,5e3)),!e&&!this.credential?.token){window.clearInterval(this.job),this.job=0,await this.onScrollDown();return}await this.onGetTasks(),await this.onScrollDown()}}},tasks:{handler(e,t){e?.items?.length>t?.items?.length&&console.debug(`new tasks detected`)},deep:!0},initialized:{async handler(e){e&&(console.debug(`layout initialized`),await this.onGetTasks(),await this.onScrollDown(),this.job||=window.setInterval(this.onPollTasks,5e3))},immediate:!0}},async mounted(){await this.onGetService()},async unmounted(){window.clearInterval(this.job)},methods:{async onReachTop(){await ee({tasks:this.tasks,getTasks:()=>this.tasks,loading:this.loadingMore,setLoading:e=>this.loadingMore=e,isBlocked:()=>this.tasksLoading||this.applicationsLoading,fetch:e=>this.onGetTasks({createdAtMax:e}),getScrollElement:()=>this.getTasksScrollElement()})},async onGetService(){console.debug(`start onGetService`),await this.$store.dispatch(`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(!V(this.uploadTracker,e=>this.$t(e),e=>S.warning(e)))return;let e=Q(this.config),t;if(this.walletMode){let n=this.getWalletContext();if(!n){S.warning(this.$t(`common.x402Scenario.connectWalletFirst`));return}t=U.generate(e,{mode:`x402`,x402:{wallet:n,confirm:e=>this.confirmWalletPayment(e),identityToken:this.credential?.token}})}else{if(!W())return;let n=this.credential?.token;if(!n)return;t=U.generate(e,{token:n})}S.info(this.$t(`minimax.message.startingTask`)),B(`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=>{e instanceof J||R(e,`minimax`)||(this.walletMode?S.error(this.$t(`common.x402Scenario.paymentFailed`)):S.error(this.$t(`minimax.message.startTaskFailed`)))}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})},getWalletContext(){return G(this.$wallet)},async confirmWalletPayment(e){return F.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 dt(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 ft=N(ut,[[`render`,dt]]);export{ft as default};
|