@acedatacloud/nexior 3.366.1 → 3.367.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +2 -2
- package/dist/assets/{ApiCodeButton-C7scE7xM.js → ApiCodeButton-DSQPf-rd.js} +1 -1
- package/dist/assets/{ApiCodeDialog-Bg0tWPJ0.js → ApiCodeDialog-CarTTHB_.js} +2 -2
- package/dist/assets/Artifacts-BMvcHXVs.js +1 -0
- package/dist/assets/{AskUserQuestionCard-Djy0TI7n.js → AskUserQuestionCard-B0u2Rz-1.js} +1 -1
- package/dist/assets/{AudioPreview-QpcH3q7k.js → AudioPreview-DmfAt7wO.js} +1 -1
- package/dist/assets/{Auth-kvfP23De.js → Auth-Rkkg6tjH.js} +1 -1
- package/dist/assets/{Bare-CgEBKvyI.js → Bare-D9rOnV8h.js} +1 -1
- package/dist/assets/{BotPlaceholder-DEGkOm1v.js → BotPlaceholder-DgI03cxu.js} +1 -1
- package/dist/assets/{BottomFooter-BFiZrSwq.js → BottomFooter-CSQXKVg_.js} +1 -1
- package/dist/assets/BrowseConnectors-BXfXJZcI.js +1 -0
- package/dist/assets/{BrowseConnectors-Cj5o6cn9.css → BrowseConnectors-Cfhdu7FB.css} +1 -1
- package/dist/assets/{BrowserPairingDialog-mPHDBh9v.js → BrowserPairingDialog-D75W8gSB.js} +1 -1
- package/dist/assets/{Callback-CY5SM-RO.js → Callback-BKJ_uXIi.js} +1 -1
- package/dist/assets/{CodeSnippet-CcScns9G.js → CodeSnippet-BzbTMmkI.js} +1 -1
- package/dist/assets/{Console-DPtHo6wT.js → Console-BSPn7Ed4.js} +1 -1
- package/dist/assets/{Conversation-xA8KHIxK.js → Conversation-2UgcrVi7.js} +1 -1
- package/dist/assets/Conversation-Wsj8EWsI.js +1 -0
- package/dist/assets/{CopyToClipboard-DwP8EnVL.js → CopyToClipboard-BjRfLoil.js} +1 -1
- package/dist/assets/Detail-CLU2Iqv7.css +1 -0
- package/dist/assets/Detail-CqPhII5S.js +2 -0
- package/dist/assets/Extra-Cl4VjOA-.js +1 -0
- package/dist/assets/{FilePreview-B0LZbgoP.js → FilePreview-CgYU_Gze.js} +1 -1
- package/dist/assets/{Hailuo-C2dZ2Hep.js → Hailuo-BqqLVX5X.js} +1 -1
- package/dist/assets/{History-BVR2QAcw.js → History-CFb1RSyZ.js} +1 -1
- package/dist/assets/{ImagePreview-DsNhLxjj.js → ImagePreview-aPBlpOJ8.js} +1 -1
- package/dist/assets/{ImageWrapper-BqB7BVOH.js → ImageWrapper-I47JMSBx.js} +1 -1
- package/dist/assets/{Index-C8xCtvy9.js → Index--i0aNBir.js} +1 -1
- package/dist/assets/{Index-DzEeIFqB.js → Index-8A8LZrWo.js} +1 -1
- package/dist/assets/Index-B3Zcryy-.js +1 -0
- package/dist/assets/{Index-BO39Yrn8.js → Index-B6HXoYbP.js} +2 -2
- package/dist/assets/{Index-CoZfjlqE.js → Index-BBFcJ8tJ.js} +1 -1
- package/dist/assets/Index-BFz91EA5.js +1 -0
- package/dist/assets/Index-BG7HbL3j.js +1 -0
- package/dist/assets/{Index-DdIIQpId.js → Index-BMT0u1M7.js} +1 -1
- package/dist/assets/{Index-CkCJJvRD.js → Index-BR77fPGL.js} +1 -1
- package/dist/assets/Index-BUXdJM_f.js +1 -0
- package/dist/assets/Index-B_xaN5BN.js +1 -0
- package/dist/assets/Index-BbsnUlpP.js +2 -0
- package/dist/assets/Index-Bd46EnzG.js +1 -0
- package/dist/assets/{Index-DNmHReq2.js → Index-Bg_nNsfd.js} +1 -1
- package/dist/assets/{Index-Dc25DqUP.js → Index-BxmOwxLr.js} +1 -1
- package/dist/assets/{Index-BJyD0UiQ.js → Index-C69TDA-G.js} +1 -1
- package/dist/assets/Index-CBpgcdZn.js +1 -0
- package/dist/assets/Index-CFAibzOd.js +1 -0
- package/dist/assets/Index-COCRzis5.js +1 -0
- package/dist/assets/{Index-ziKQKZYb.js → Index-CPvW_l5F.js} +1 -1
- package/dist/assets/Index-CSRFPIJ3.js +1 -0
- package/dist/assets/{Index-BD0--C6x.js → Index-CT5l7dqr.js} +1 -1
- package/dist/assets/Index-CUNBzOqM2.js +1 -0
- package/dist/assets/{Index-CkddzQAk.js → Index-CmafWY2T.js} +1 -1
- package/dist/assets/Index-CsZhfQzd.css +1 -0
- package/dist/assets/Index-CuI7uI90.css +1 -0
- package/dist/assets/{Index-DyBq2bdN.css → Index-Cws8g6NB.css} +1 -1
- package/dist/assets/{Index-CCBy1WKd2.js → Index-DA3XJA7r.js} +1 -1
- package/dist/assets/{Index-C3Au_Ala.js → Index-DD6byEUX.js} +1 -1
- package/dist/assets/{Index--pfuR7qc.js → Index-DIi-KPeu.js} +1 -1
- package/dist/assets/Index-DS9mCbrS2.js +1 -0
- package/dist/assets/Index-D_z7QMg4.js +1 -0
- package/dist/assets/{Index-B90L4ZGP.js → Index-DjjADOf8.js} +1 -1
- package/dist/assets/{Index-DJ-gYby_.css → Index-DkTiSAUn.css} +1 -1
- package/dist/assets/{Index-Dq44TDvQ.js → Index-DlSbETQg.js} +1 -1
- package/dist/assets/{Index-C7R9MIeL.js → Index-Dp_AOzq5.js} +1 -1
- package/dist/assets/{Index-B41Fv1rE.css → Index-DqIqDxJU.css} +1 -1
- package/dist/assets/{Index-DfF9WOA9.css → Index-EuKOlbZt.css} +1 -1
- package/dist/assets/{Index-CiW-P8wg.js → Index-HEYIxdph.js} +1 -1
- package/dist/assets/Index-HVebC0dH.js +1 -0
- package/dist/assets/{Index-Ced_8JX_.js → Index-WsrLMgao.js} +1 -1
- package/dist/assets/Index-YUNTV4YV.js +1 -0
- package/dist/assets/{Index-DsBBS_xE.js → Index-hackKw8G.js} +1 -1
- package/dist/assets/{Invitees-CuoJZ8qW.js → Invitees-Bd-v9UUt.js} +1 -1
- package/dist/assets/{List-BhOhD8mr.js → List-B99wHj7M.js} +1 -1
- package/dist/assets/List-CECt4BWz.js +1 -0
- package/dist/assets/{List-Cbhj8VX7.js → List-Gxddr2Li.js} +1 -1
- package/dist/assets/LocalTools--qg6e09h.js +5 -0
- package/dist/assets/{LocalTools-DAXOoidh.js → LocalTools-BTkk3deB.js} +1 -1
- package/dist/assets/{Logo-BxWY8yDz.js → Logo-BMlG5k9X.js} +1 -1
- package/dist/assets/{Main-CXWozUVI.js → Main-UPvLYXkv.js} +1 -1
- package/dist/assets/{Message-COwFwhYr.js → Message-DbrmWOhQ.js} +2 -2
- package/dist/assets/{Model-DMKuWmLk.js → Model-DZCDVUFw.js} +1 -1
- package/dist/assets/{Navigator-D4tQ6Tlb.js → Navigator-BMfSDO30.js} +4 -4
- package/dist/assets/{NotFound-BP3vnoOY.js → NotFound-CsDDXvvT.js} +1 -1
- package/dist/assets/{PageHeader-1V50PS2z.js → PageHeader-CUEPRYSs.js} +1 -1
- package/dist/assets/{Pay-BJ_t3Xkm.js → Pay-CBdcpSXC.js} +1 -1
- package/dist/assets/{Player-DHr0-4ia.js → Player-yl8rCDaI.js} +1 -1
- package/dist/assets/{Poivelle-C_NnGnnx.js → Poivelle-CTzL5xFp.js} +1 -1
- package/dist/assets/RealtimeCall-DFuERiCo.js +1 -0
- package/dist/assets/{ReportButton-Bm62Lacf.js → ReportButton-lzZe3i6C.js} +1 -1
- package/dist/assets/{ReportDialog-B8kZl-BL.js → ReportDialog-DatqCVDN.js} +1 -1
- package/dist/assets/ScenarioPaymentMode-BR4cXZk8.js +1 -0
- package/dist/assets/ScenarioPaymentMode-Dg-FrrLn.css +1 -0
- package/dist/assets/{ScheduledTasks-Bx0_YZAI.js → ScheduledTasks-B8-A6xej.js} +2 -2
- package/dist/assets/{ServicePricingSummary-D4FVsXlm.js → ServicePricingSummary-DOii-08b.js} +1 -1
- package/dist/assets/{ShowcaseDetailDialog-eEoWy-5j.js → ShowcaseDetailDialog-D0l0LmDI.js} +1 -1
- package/dist/assets/{ShowcaseGrid-qP_Hyviy.js → ShowcaseGrid-Bd1MzJhU.js} +1 -1
- package/dist/assets/{ShowcaseResultTabs-CKcaJRIY.js → ShowcaseResultTabs-BJbS7Ydg.js} +1 -1
- package/dist/assets/{SolanaWalletPickerDialog-CkS5HQYx.js → SolanaWalletPickerDialog-CIIveb0U.js} +1 -1
- package/dist/assets/{Status-C0aZ3vpY.js → Status-BYPXwlqa.js} +1 -1
- package/dist/assets/{Subscribe-EDAWp886.js → Subscribe-ieFCCq5B.js} +1 -1
- package/dist/assets/{TabSwitcher-DZIAS4XS.js → TabSwitcher-FdkRL_PF.js} +1 -1
- package/dist/assets/Tts-KnFZe2II.js +1 -0
- package/dist/assets/{VideoPlayer-FSh3nDpc.js → VideoPlayer-Dc-1lN9r.js} +1 -1
- package/dist/assets/{VideoPreview-B-THygEm.js → VideoPreview-C-DxYr53.js} +1 -1
- package/dist/assets/arrow-down-DVetJlDj.js +1 -0
- package/dist/assets/{arrow-down-wide-narrow-xyXjHaW8.js → arrow-down-wide-narrow-CUy6_yvn.js} +1 -1
- package/dist/assets/arrow-left-Dpe06208.js +1 -0
- package/dist/assets/arrow-right-BAD1WJIm.js +1 -0
- package/dist/assets/arrow-up-BWsM-6Rb.js +1 -0
- package/dist/assets/{authorizeFlow-DnEpSZv8.js → authorizeFlow-WuJ_j6g6.js} +1 -1
- package/dist/assets/{avatar-CZZxQYLl.js → avatar-B6BU5jfW.js} +1 -1
- package/dist/assets/{basic-PCDbRQRT.js → basic-iIHTX2Cc.js} +1 -1
- package/dist/assets/{book-open-Bh7h50JY.js → book-open-Bd5dosWo.js} +1 -1
- package/dist/assets/{box-BBfeBDWM.js → box-BDDWxmaE.js} +1 -1
- package/dist/assets/{boxes-twyo7vbC.js → boxes-DVD8efav.js} +1 -1
- package/dist/assets/{brain-Bbp_3Dru.js → brain-CQkdwxx0.js} +1 -1
- package/dist/assets/{chart-no-axes-combined--iroaZSJ.js → chart-no-axes-combined-DSr3qKdO.js} +1 -1
- package/dist/assets/{chat-DQr_G1lK.js → chat-CPskgH7m.js} +1 -1
- package/dist/assets/check-kOZuee-J.js +1 -0
- package/dist/assets/chevron-down-VeNjl9ue.js +1 -0
- package/dist/assets/chevron-right-WMKq-A1J.js +1 -0
- package/dist/assets/circle-check-DzG_qPcd.js +1 -0
- package/dist/assets/{circle-question-mark-xfs1rhlS.js → circle-question-mark-BzjFhHT6.js} +1 -1
- package/dist/assets/{clipboard-list-Xa_o-zx1.js → clipboard-list-CFWkBd0U.js} +1 -1
- package/dist/assets/clock-BjY8ddGs.js +1 -0
- package/dist/assets/code--y3uq35b.js +1 -0
- package/dist/assets/{codingBridge-Dyvxe3ig.js → codingBridge-Cti9Z41M.js} +2 -2
- package/dist/assets/{codingBridgeNotify-DONT7Ns0.js → codingBridgeNotify-0qM-JZme.js} +1 -1
- package/dist/assets/{coins-C6lnr6eN.js → coins-DKS8u6bE.js} +1 -1
- package/dist/assets/{collapse-Loa-kWFA.js → collapse-CHKYZNGx.js} +1 -1
- package/dist/assets/{connection-DtxQiPlP.js → connection-B9hGqjyx.js} +1 -1
- package/dist/assets/{connection-CdbyNh4b.js → connection-BFgYncYa.js} +1 -1
- package/dist/assets/{connection-DtdaxU6I.js → connection-BNq1ICE4.js} +1 -1
- package/dist/assets/{connection-DtIzcPg1.js → connection-B_IB7amI.js} +1 -1
- package/dist/assets/{connection-RPIJ0jCj.js → connection-BjS7a4Ru.js} +1 -1
- package/dist/assets/{connection-BSCj6XCP.js → connection-CUt6dA4m.js} +1 -1
- package/dist/assets/{connection-Cj9lxvih.js → connection-CrKDhQ8c.js} +1 -1
- package/dist/assets/{connection-olQvibhi.js → connection-D6EBupMl.js} +1 -1
- package/dist/assets/{connection-BuH6UR1M.js → connection-DXRYGR6J.js} +1 -1
- package/dist/assets/{connection-ClpKFNlf.js → connection-Dq4NLgFQ.js} +1 -1
- package/dist/assets/{connection-CG0twBAD.js → connection-R_-qUSn6.js} +1 -1
- package/dist/assets/{connection-COluiFKe.js → connection-p1SYs1ei.js} +1 -1
- package/dist/assets/constants-BMkG7xao.js +1 -0
- package/dist/assets/{copy-BucJJjSq.js → copy-T09uuF2s.js} +1 -1
- package/dist/assets/{createTaskActions-DhFHQISa.js → createTaskActions-tyi8xeVb.js} +1 -1
- package/dist/assets/{date-picker-qPhjXms2.js → date-picker-sCntDcYS.js} +1 -1
- package/dist/assets/{digitalhuman-EqZJcQav.js → digitalhuman-B8cH3ZHp.js} +1 -1
- package/dist/assets/{dollar-sign-COPNik6d.js → dollar-sign-BSPpSThR.js} +1 -1
- package/dist/assets/{download-Bcw7Hy-X.js → download-DlCYFQbn.js} +1 -1
- package/dist/assets/{drawer-DfXjJO_e.js → drawer-CFnWJn6T.js} +1 -1
- package/dist/assets/{dropdown-qRDq0eWW.js → dropdown-BHFXRwPa.js} +1 -1
- package/dist/assets/{dropdown-BpnvvhZD.js → dropdown-BhzTy7zu.js} +1 -1
- package/dist/assets/{ellipsis-DyGBlldp.js → ellipsis-BAaAr_qn.js} +1 -1
- package/dist/assets/{esm-Bb5GB2Ls.js → esm-BAAqhnka.js} +2 -2
- package/dist/assets/{external-link-fR5udMCA.js → external-link-BM-fB2LS.js} +1 -1
- package/dist/assets/{eye-D6VMAzQ5.js → eye-DWc7Lk-E.js} +1 -1
- package/dist/assets/{file-BZUguXKs.js → file-CxQrLRgE.js} +1 -1
- package/dist/assets/{file-output-C35uv7VQ.js → file-output-C13ysB5-.js} +1 -1
- package/dist/assets/{file-text-CY325CGw.js → file-text-3AGVLFbF.js} +1 -1
- package/dist/assets/{fish-DTUhK6wG.js → fish-D7zNnY4A.js} +1 -1
- package/dist/assets/{flux-Bz-tFPHA.js → flux-CX4OQTCE.js} +1 -1
- package/dist/assets/{folder-B0brS6QN.js → folder-KNLOPvTt.js} +1 -1
- package/dist/assets/gauge-D6urYB8_.js +1 -0
- package/dist/assets/{globe-Cs0FMFOk.js → globe-WZMhuJHT.js} +1 -1
- package/dist/assets/{nanobanana-C1RcRlIQ.js → grokvideo-CMenvwSD.js} +1 -1
- package/dist/assets/{hailuo-Dwxsal0M.js → hailuo-BeVsMt5R.js} +1 -1
- package/dist/assets/{headphones-Rh-dlOsL.js → headphones-sHfphTrn.js} +1 -1
- package/dist/assets/{history-DStvHsoa.js → history-D_Myt-nA.js} +1 -1
- package/dist/assets/{house-rDSRqz9D.js → house-DRnLD4MO.js} +1 -1
- package/dist/assets/i18n-RWpUkJpq.js +3 -0
- package/dist/assets/{image-DXlHEkxh.js → image-hqX8JaNs.js} +1 -1
- package/dist/assets/{imageRequests-DM9FlETu.js → imageRequests-CG5CDSFW.js} +1 -1
- package/dist/assets/{index-DkbXw0t5.css → index-BQ6W3K7j.css} +1 -1
- package/dist/assets/index-Dk3occrO.js +571 -0
- package/dist/assets/{index.es-QIqTUIEY.js → index.es-DRLqaHR4.js} +1 -1
- package/dist/assets/{info-Dy6jE77P.js → info-DkDuo54u.js} +1 -1
- package/dist/assets/{input-number-BdXZiGUI.js → input-number-CfzTTv5K.js} +1 -1
- package/dist/assets/{key-round-B6Mqq2Lg.js → key-round-CuNsoopH.js} +1 -1
- package/dist/assets/{kling-EbFI1iFL.js → kling-BHvMzLiF.js} +1 -1
- package/dist/assets/{languages-oV5N_Alp.js → languages-B2TQy1-7.js} +1 -1
- package/dist/assets/{laptop-6SsyRulE.js → laptop-DZAGEAZO.js} +1 -1
- package/dist/assets/{lightbulb-Bvz2oSo8.js → lightbulb-BKSF4NR0.js} +1 -1
- package/dist/assets/{link-Dg9RgZiI.js → link-BragEr74.js} +1 -1
- package/dist/assets/loader-circle-Bu0zp-P2.js +1 -0
- package/dist/assets/{lock-CxQtw8RZ.js → lock-DIyqxPSZ.js} +1 -1
- package/dist/assets/{luma-BRjiMx3Y.js → luma-D9VC5pWB.js} +1 -1
- package/dist/assets/maestro-RxK-Mwr9.js +1 -0
- package/dist/assets/{maestroLanguages-v8t3x-bv.js → maestroLanguages-DPGEWAgk.js} +1 -1
- package/dist/assets/{mail-DFdNy8Ra.js → mail-D58ZehPK.js} +1 -1
- package/dist/assets/{message-circle-CZW5ardy.js → message-circle-B40qeSDy.js} +1 -1
- package/dist/assets/{mic-D442HlCF.js → mic-BgJfqRUY.js} +1 -1
- package/dist/assets/{midjourney-BUsBjUb0.js → midjourney-Cbzbgpgv.js} +1 -1
- package/dist/assets/{minimax-D8Tx2C_Q.js → minimax-BW67Cje3.js} +1 -1
- package/dist/assets/{mobileLocalExec-Q-WIRU5p.js → mobileLocalExec-C9pxBKj8.js} +1 -1
- package/dist/assets/{models-Cmo-VT-F.js → models-C3taPMyR.js} +1 -1
- package/dist/assets/{monitor-BjV4HoYF.js → monitor-Bgvp5s7T.js} +1 -1
- package/dist/assets/{mouse-pointer-2-B2-9X0q8.js → mouse-pointer-2-Wuf9-ULc.js} +1 -1
- package/dist/assets/music-2-BGpRcPcM.js +1 -0
- package/dist/assets/{grokvideo-CseK4u12.js → nanobanana-BMjvAToj.js} +1 -1
- package/dist/assets/{omni-D7yjrqdG.js → omni-BUQhL1oT.js} +1 -1
- package/dist/assets/{openaiimage-BztBB9Wr.js → openaiimage-9i3bpEeJ.js} +1 -1
- package/dist/assets/order-BMw0vqKs.js +1 -0
- package/dist/assets/{order-h3I8xKAp.js → order-BxiEDv_s.js} +1 -1
- package/dist/assets/{order-BYOB423c.js → order-CeiGDh-t.js} +1 -1
- package/dist/assets/{order-CM_n6Zzc.js → order-DQco2h3u.js} +1 -1
- package/dist/assets/{order-CEpHgiz5.js → order-Dc2RcPmN.js} +1 -1
- package/dist/assets/order-DdXIw1oe.js +1 -0
- package/dist/assets/order-Dm574qCr.js +1 -0
- package/dist/assets/{order-Ds7CfW_B.js → order-QJ0kR-DH.js} +1 -1
- package/dist/assets/{order-00O2rG9J.js → order-jlWJNMw0.js} +1 -1
- package/dist/assets/order-jmMj866J.js +1 -0
- package/dist/assets/order-lC4usDH7.js +1 -0
- package/dist/assets/{order-DWTPt9af.js → order-paS0pn02.js} +1 -1
- package/dist/assets/{pagination-Cs8AeOMZ.js → pagination-Ct9iwsuK.js} +1 -1
- package/dist/assets/{pagination-CXIeMVnN.js → pagination-D1XTbo3C.js} +1 -1
- package/dist/assets/{pagination-BMxNVusP.js → pagination-gmdYMTMI.js} +1 -1
- package/dist/assets/{palette-CNvk-C8x.js → palette-CiJENYqI.js} +1 -1
- package/dist/assets/{paperclip-B5A5e-4V.js → paperclip-BWJHwPLL.js} +1 -1
- package/dist/assets/{pause-CWUerwP0.js → pause-CmRmAKVh.js} +1 -1
- package/dist/assets/{pencil-Csq6-6cZ.js → pencil-Cxgd7Cgq.js} +1 -1
- package/dist/assets/{pika-QR_keXcv.js → pika-nmu1mw3X.js} +1 -1
- package/dist/assets/pixverse-BaSddYtD.js +1 -0
- package/dist/assets/play-BCylob57.js +1 -0
- package/dist/assets/{plug-yO3Q-eF4.js → plug-D1Lvl7_F.js} +1 -1
- package/dist/assets/plus-DPsH7Sjc.js +1 -0
- package/dist/assets/{poivelle-DD58OrYl.js → poivelle-4funLxpk.js} +1 -1
- package/dist/assets/{popover-BKaxFwwA.js → popover-B5HLdb9L.js} +1 -1
- package/dist/assets/{producer-DbFulRD5.js → producer-bhSP3sEr.js} +1 -1
- package/dist/assets/{qrart-Coi7dXf_.js → qrart-c42_Dwe4.js} +1 -1
- package/dist/assets/qwenimage-BOS7fAsf.js +1 -0
- package/dist/assets/qwenimage-BdejTOJS.js +1 -0
- package/dist/assets/qwenimage-BlaJ9Q_y.js +1 -0
- package/dist/assets/qwenimage-Btz-ktB9.js +1 -0
- package/dist/assets/qwenimage-C-fMWC4b.js +1 -0
- package/dist/assets/qwenimage-CFTDxdpO.js +1 -0
- package/dist/assets/qwenimage-CPk2REbw.js +1 -0
- package/dist/assets/qwenimage-CjidaMtp.js +1 -0
- package/dist/assets/qwenimage-D0hUIE0S.js +1 -0
- package/dist/assets/qwenimage-DYkTOqsc.js +1 -0
- package/dist/assets/qwenimage-DlgtAYdZ.js +1 -0
- package/dist/assets/qwenimage-LmDgDLwr.js +1 -0
- package/dist/assets/qwenimage-h7esmkE3.js +1 -0
- package/dist/assets/{realtime-xxyl3bN0.js → realtime-pMOJB8Ul.js} +1 -1
- package/dist/assets/{refresh-cw-XfuPu0a6.js → refresh-cw-BP0gRcJy.js} +1 -1
- package/dist/assets/rotate-ccw-DmwLKenN.js +1 -0
- package/dist/assets/rotate-cw-L7ugJX8l.js +1 -0
- package/dist/assets/{row-CcBmlG-B.js → row-CyqeQrGe.js} +1 -1
- package/dist/assets/search-Dw_OWNDF.js +1 -0
- package/dist/assets/{seedance-VNyPFVAf.js → seedance-C5FFFb-R.js} +1 -1
- package/dist/assets/{seedream-DRZfX4t0.js → seedream-CYR9uKiK.js} +1 -1
- package/dist/assets/{select-D9aYzMf6.js → select-CKdhNIc_.js} +1 -1
- package/dist/assets/{serp-DUPPPqhB.js → serp-DarHzCV5.js} +1 -1
- package/dist/assets/{shield-CWWgzv3X.js → shield-B3ffEvWk.js} +1 -1
- package/dist/assets/{showcase-Cb1oGcVL.js → showcase-H2jtF9SB.js} +1 -1
- package/dist/assets/{showcaseRecreateMixin-BZsXGtH6.js → showcaseRecreateMixin-Ch3v2mGZ.js} +1 -1
- package/dist/assets/{shuffle-DksF6HDm.js → shuffle-DwCVTvEi.js} +1 -1
- package/dist/assets/{site-nibV6cjy.js → site-5ngUjhW9.js} +1 -1
- package/dist/assets/{site-DCf7Enw6.js → site-B3bL86p3.js} +1 -1
- package/dist/assets/{site-BYUzHPpo.js → site-BKvYgNNW.js} +1 -1
- package/dist/assets/{site-D87fuoTT.js → site-Bng21MlN.js} +1 -1
- package/dist/assets/{site-BZeywsXR.js → site-CFlLWzlt.js} +1 -1
- package/dist/assets/{site-CxX9lXEy.js → site-Ce2uxFuC.js} +1 -1
- package/dist/assets/{site-DedVOO4P.js → site-CgUYW8b5.js} +1 -1
- package/dist/assets/{site-C5NuQ8fa.js → site-DC_Ovn7R.js} +1 -1
- package/dist/assets/{site-6q59BHhr.js → site-DCkd-sL3.js} +1 -1
- package/dist/assets/{site-DKccZ4nd.js → site-DDQRNu-e.js} +1 -1
- package/dist/assets/{site-Bel6azUS.js → site-MgnCKWRb.js} +1 -1
- package/dist/assets/{site-DUY3CYwv.js → site-kUTm6bCt.js} +1 -1
- package/dist/assets/siteBanner-BBd--6Jm.js +1 -0
- package/dist/assets/{slider-B0-TGGgS.js → slider-C3aZc1TI.js} +1 -1
- package/dist/assets/{solana-wallets-B-874rbp.js → solana-wallets-C-5UtY_x.js} +2 -2
- package/dist/assets/{sora-DzJ-6Ca-.js → sora-D6NTEG7K.js} +1 -1
- package/dist/assets/{sparkles-CzcAFvbW.js → sparkles-I03586-Z.js} +1 -1
- package/dist/assets/square-DvlgB4Bz.js +1 -0
- package/dist/assets/{store-B6_hFU0d.js → store-D8RLTywh.js} +1 -1
- package/dist/assets/{suno-BW3MhNs1.js → suno-BP0sP2w2.js} +1 -1
- package/dist/assets/{switch-COo_nVp9.js → switch-DPLDRwQn.js} +1 -1
- package/dist/assets/{table-BKxkUGAF.js → table-ydKOS9Jn.js} +1 -1
- package/dist/assets/{tabs-C0jaOUPC.js → tabs-qYktzPOY.js} +1 -1
- package/dist/assets/{tag-7zBfHNLd.js → tag-CdliFlu2.js} +1 -1
- package/dist/assets/terminal-BNMC9_69.js +1 -0
- package/dist/assets/{time-picker-2Nimkx9I.js → time-picker-NJ0epYej.js} +1 -1
- package/dist/assets/{tooltip-CEa69fVd.js → tooltip-siz_AHre.js} +1 -1
- package/dist/assets/{trash-2-C8cED3lx.js → trash-2-BD_rYfpa.js} +1 -1
- package/dist/assets/{triangle-alert-BShpWZ9W.js → triangle-alert-DHBBLtTd.js} +1 -1
- package/dist/assets/{upload-CO2xuaQ0.js → upload-86r_qBlw.js} +1 -1
- package/dist/assets/{upload-Biblaze1.js → upload-B-5lkMRH.js} +1 -1
- package/dist/assets/user-DJbv_WkD.js +1 -0
- package/dist/assets/{veo-B7UQcrCr.js → veo-B8XQlhrr.js} +1 -1
- package/dist/assets/{video-CB-yDNZ5.js → video-5jyo7aMf.js} +1 -1
- package/dist/assets/{volume-2-KmhwbK54.js → volume-2-BSLXS6Iv.js} +1 -1
- package/dist/assets/{wallet-B8k555jA.js → wallet-2C5RgA9V.js} +1 -1
- package/dist/assets/wan-B-BG1K5J.js +1 -0
- package/dist/assets/{wan-Bti9vbk0.js → wan-B6tKT9sT.js} +1 -1
- package/dist/assets/{wan-B_75LG8e.js → wan-Bky-JnkG.js} +1 -1
- package/dist/assets/{wan-C4MqEG4I.js → wan-CWJ-WtAN.js} +1 -1
- package/dist/assets/{wan-CMYZfvXb.js → wan-CdOhTrg0.js} +1 -1
- package/dist/assets/{wan-CFTUjnu2.js → wan-Cpl-sARA.js} +1 -1
- package/dist/assets/{wan-CfvfG77D.js → wan-DOGp3qSt.js} +1 -1
- package/dist/assets/wan-DZWk-Nfe.js +1 -0
- package/dist/assets/{wan-BddagtLG.js → wan-DamxQCim.js} +1 -1
- package/dist/assets/wan-Dd8FJ9Vg.js +1 -0
- package/dist/assets/{wan-O7ybIDL4.js → wan-DzTiuNEP.js} +1 -1
- package/dist/assets/{wan-p6W7-XR6.js → wan-MbnH4w-j.js} +1 -1
- package/dist/assets/{wan-D4Uo2clt.js → wan-mTnkdw0e.js} +1 -1
- package/dist/assets/{wand-sparkles-4VXENbf1.js → wand-sparkles-BJbx6jvi.js} +1 -1
- package/dist/assets/{web-BJsDXl_f.js → web-C7Xy4VLY.js} +1 -1
- package/dist/assets/{webextrator-CQfq4dIM.js → webextrator-BkorD-4f.js} +1 -1
- package/dist/assets/{zap-DXu1LxNj.js → zap-DFLVRbR4.js} +1 -1
- package/dist/index.html +9 -9
- package/dist/llms.txt +21 -21
- package/dist/robots.txt +2 -2
- package/dist/sitemap.xml +21 -21
- package/package.json +2 -2
- package/dist/assets/Artifacts-DNeH29kG.js +0 -1
- package/dist/assets/BrowseConnectors-D-kusp8P.js +0 -1
- package/dist/assets/Conversation-vHNhsMBY.js +0 -1
- package/dist/assets/Detail-AG0k2yQW.css +0 -1
- package/dist/assets/Detail-D7IEYdsG.js +0 -2
- package/dist/assets/Extra-cx_u9wuG.js +0 -1
- package/dist/assets/Index-BQKnUav7.js +0 -1
- package/dist/assets/Index-Bbzcb0Dr.js +0 -1
- package/dist/assets/Index-CKejygnV.css +0 -1
- package/dist/assets/Index-CbBh2G5w.js +0 -1
- package/dist/assets/Index-Cl5Pdauj.js +0 -1
- package/dist/assets/Index-CrENz4Ug.js +0 -1
- package/dist/assets/Index-D7HXRwfV.js +0 -1
- package/dist/assets/Index-D9on_bCE.js +0 -1
- package/dist/assets/Index-DMekgFQK.js +0 -1
- package/dist/assets/Index-Di3IO7Tp2.js +0 -1
- package/dist/assets/Index-Dw_X76T32.js +0 -1
- package/dist/assets/Index-RrEXHfeB.js +0 -1
- package/dist/assets/Index-Sx_DJs5u.js +0 -2
- package/dist/assets/Index-afUaM83M.js +0 -1
- package/dist/assets/Index-pU3g-Gaj.js +0 -1
- package/dist/assets/Index-uHe6f3js.js +0 -1
- package/dist/assets/List-CodGsflW.js +0 -1
- package/dist/assets/LocalTools-CE0j1cUC.js +0 -5
- package/dist/assets/RealtimeCall-DoU938cN.js +0 -1
- package/dist/assets/ScenarioPaymentMode-D4tV55rH.js +0 -1
- package/dist/assets/ScenarioPaymentMode-DGx3ElFQ.css +0 -1
- package/dist/assets/Tts-B5a57W_B.js +0 -1
- package/dist/assets/arrow-down-DFXHAyUS.js +0 -1
- package/dist/assets/arrow-left-B7WQi403.js +0 -1
- package/dist/assets/arrow-right-D4rwO_Au.js +0 -1
- package/dist/assets/arrow-up-q-iszS2P.js +0 -1
- package/dist/assets/check-CdRY2Yxz.js +0 -1
- package/dist/assets/chevron-down-DMT83zNF.js +0 -1
- package/dist/assets/chevron-right-BXZ-HwwD.js +0 -1
- package/dist/assets/circle-check-DF4k69Rx.js +0 -1
- package/dist/assets/clock-DmG68B_m.js +0 -1
- package/dist/assets/code-CEYwJp_3.js +0 -1
- package/dist/assets/constants-D0qyO-4p.js +0 -1
- package/dist/assets/gauge-CRZ3LNGr.js +0 -1
- package/dist/assets/i18n-Cju75xJ-.js +0 -3
- package/dist/assets/index-C2sgIqPl.js +0 -570
- package/dist/assets/loader-circle-BhLoljYa.js +0 -1
- package/dist/assets/maestro-BxbVyOE5.js +0 -1
- package/dist/assets/music-2-CHRNlHGT.js +0 -1
- package/dist/assets/order-B1iI6uxY.js +0 -1
- package/dist/assets/order-BJHCipaE.js +0 -1
- package/dist/assets/order-BVrGQjOK.js +0 -1
- package/dist/assets/order-Ckn1Pm2d.js +0 -1
- package/dist/assets/order-VlnDCsh4.js +0 -1
- package/dist/assets/pixverse-BkT2eu-h.js +0 -1
- package/dist/assets/play-D_HvuPrY.js +0 -1
- package/dist/assets/plus-BtFEhIIv.js +0 -1
- package/dist/assets/rotate-ccw-B-eMKmiQ.js +0 -1
- package/dist/assets/rotate-cw-quVDw14L.js +0 -1
- package/dist/assets/search-BR43rWRH.js +0 -1
- package/dist/assets/siteBanner-HcwctxPN.js +0 -1
- package/dist/assets/square-DEbbYmWP.js +0 -1
- package/dist/assets/terminal-Cf4HqLmD.js +0 -1
- package/dist/assets/user-8TlljmPW.js +0 -1
- package/dist/assets/wan-B5EuZ8RC.js +0 -1
- package/dist/assets/wan-BvkRy5ck.js +0 -1
- package/dist/assets/wan-DJubi0Hb.js +0 -1
- package/dist/assets/x402-CPM8RH8s.js +0 -1
|
@@ -1 +1 @@
|
|
|
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,at as s,ht as c,j as l,mt as u,ot as d,tt as f,z as p}from"./vendor-chart-Dw-P17PN.js";import{n as m,t as h}from"./row-
|
|
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,at as s,ht as c,j as l,mt as u,ot as d,tt as f,z as p}from"./vendor-chart-Dw-P17PN.js";import{n as m,t as h}from"./row-CyqeQrGe.js";import{i as g,n as _,r as v,t as y}from"./container-VI0MzukK.js";import{n as b,r as x,t as S}from"./dropdown-BhzTy7zu.js";import{i as C,n as w,r as T,t as E}from"./avatar-B6BU5jfW.js";import{A as D,M as O,O as k}from"./i18n-RWpUkJpq.js";import{Bt as A,Ga as j,I as M,Nn as N,V as P,bt as F,k as I,kt as L,st as R}from"./index-Dk3occrO.js";import{t as z}from"./BottomFooter-CSQXKVg_.js";import{t as B}from"./Logo-BMlG5k9X.js";var V=p({name:`TopHeader`,components:{ElCol:m,Logo:B,ElRow:h,ElDropdown:S,ElDropdownMenu:x,ElMenu:w,ElMenuItem:T,ElDropdownItem:b,ElButton:j,ElSubMenu:C},data(){return{defaultAvatar:E,products:`chat`}},computed:{site(){return this.$store.state?.site},dark(){return this.$store.getters?.dark},active(){return this.$route.matched?.[0]?.path},user(){return this.$store.getters?.user},authenticated(){return this.$store.getters?.authenticated},isMainOfficialHost(){return N()},isDesktopChrome(){return k()},isMacChrome(){return k()&&D()}},methods:{openTab(e){if(O()){P.open({url:e}).catch(t=>{console.warn(`Browser.open failed, falling back to window.open`,t),window.open(e,`_blank`)});return}window.open(e,`_blank`)},onSelect(e){if(e===`home`){this.$router.push({name:A});return}if(e===`chatgpt`){this.$router.push({name:R});return}e&&this.$router.push(e)},onHome(){this.$router.push({name:A})},onLogin(){this.$store.dispatch(`login`,{redirect:this.$route.fullPath})},onDownload(){this.$router.push({name:L})},onProfile(){M(`/user/profile`)},onVerify(){M(`/user/verify`)},onConsole(){this.$router.push({name:F})},async onLogout(){this.$store.dispatch(`logout`)}}}),H={key:0,class:`mt-4 pr-10`},U={key:1,class:`float-right`},W=[`src`];function G(p,m,h,g,_,v){let y=s(`logo`),b=s(`el-col`),x=s(`el-menu-item`),S=s(`el-sub-menu`),C=s(`el-menu`),w=s(`el-button`),T=s(`language-selector`),E=s(`dark-selector`),D=s(`el-dropdown-item`),O=s(`el-dropdown-menu`),k=s(`el-dropdown`),A=s(`el-row`),j=d(`t`);return f(),l(A,{class:t([`header`,{"desktop-chrome":p.isDesktopChrome,"is-mac":p.isMacChrome}])},{default:u(()=>[i(b,{md:4,xs:24,class:`brand-col`},{default:u(()=>[i(y,{onClick:p.onHome},null,8,[`onClick`])]),_:1}),i(b,{md:16,xs:13},{default:u(()=>[i(C,{"default-active":p.active,mode:`horizontal`,class:`menu`,ellipsis:!0,onSelect:p.onSelect},{default:u(()=>[i(S,{index:p.products},{title:u(()=>[n(r(p.$t(`common.nav.products`)),1)]),default:u(()=>[c(i(x,{index:`home`},null,512),[[j,`intro.nav.overview`]]),p.site?.features?.chatgpt?.enabled?c((f(),l(x,{key:0,index:`chatgpt`},null,512)),[[j,`index.title.chat`]]):a(``,!0),p.site?.features?.midjourney?.enabled?c((f(),l(x,{key:1,index:`/midjourney`},null,512)),[[j,`index.title.midjourney`]]):a(``,!0),p.site?.features?.qrart?.enabled?c((f(),l(x,{key:2,index:`/qrart`},null,512)),[[j,`index.title.qrart`]]):a(``,!0),p.site?.features?.suno?.enabled?c((f(),l(x,{key:3,index:`/suno`},null,512)),[[j,`index.title.suno`]]):a(``,!0),p.site?.features?.luma?.enabled?c((f(),l(x,{key:4,index:`/luma`},null,512)),[[j,`index.title.luma`]]):a(``,!0)]),_:1},8,[`index`]),c(i(x,{index:`/business`},null,512),[[j,`index.nav.business`]]),p.isMainOfficialHost?c((f(),l(x,{key:0,onRoute:e=>void 0,onClick:p.onDownload},null,8,[`onClick`])),[[j,`common.nav.mobileApp`]]):a(``,!0),c(i(x,{onRoute:e=>void 0,onClick:m[0]||=e=>p.openTab(`https://platform.acedata.cloud`)},null,512),[[j,`common.nav.apiPlatform`]]),c(i(x,{onRoute:e=>void 0,onClick:m[1]||=e=>p.openTab(`https://platform.acedata.cloud/support`)},null,512),[[j,`common.nav.support`]]),c(i(x,{onRoute:e=>void 0,onClick:m[2]||=e=>p.openTab(`https://platform.acedata.cloud/earning`)},null,512),[[j,`common.nav.referral`]])]),_:1},8,[`default-active`,`onSelect`])]),_:1}),i(b,{md:4,xs:11},{default:u(()=>[p.authenticated?(f(),o(`div`,U,[e(`div`,{class:`console`,onClick:m[3]||=(...e)=>p.onConsole&&p.onConsole(...e)},r(p.$t(`common.button.console`)),1),i(k,{trigger:`click`},{dropdown:u(()=>[i(O,null,{default:u(()=>[i(D,{onClick:p.onProfile},{default:u(()=>[n(r(p.$t(`common.button.profile`)),1)]),_:1},8,[`onClick`]),i(D,{onClick:p.onLogout},{default:u(()=>[n(r(p.$t(`common.button.logout`)),1)]),_:1},8,[`onClick`])]),_:1})]),default:u(()=>[e(`img`,{src:p.user?.avatar||p.defaultAvatar,class:`avatar`},null,8,W)]),_:1})])):(f(),o(`div`,H,[i(w,{type:`primary`,class:`float-right`,size:`small`,round:``,onClick:p.onLogin},{default:u(()=>[n(r(p.$t(`common.button.login`)),1)]),_:1},8,[`onClick`]),i(T,{class:`locale float-right mr-4`}),i(E,{class:`float-right mr-4`})]))]),_:1})]),_:1},8,[`class`])}var K=p({name:`LayoutIndex`,components:{TopHeader:I(V,[[`render`,G]]),BottomFooter:z,ElContainer:y,ElMain:g,ElFooter:_,ElHeader:v}});function q(e,t,n,r,a,o){let c=s(`top-header`),d=s(`el-header`),p=s(`router-view`),m=s(`el-main`),h=s(`bottom-footer`),g=s(`el-footer`),_=s(`el-container`);return f(),l(_,{class:`wrapper min-h-[100vh]`},{default:u(()=>[i(d,{class:`header p-0 h-auto`},{default:u(()=>[i(c)]),_:1}),i(m,{class:`main`},{default:u(()=>[i(p)]),_:1}),i(g,{class:`footer p-0 h-auto`},{default:u(()=>[i(h)]),_:1})]),_:1})}var J=I(K,[[`render`,q]]);export{J as default};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import"./rolldown-runtime--c01j_DQ.js";import{A as e,C as t,Gt as n,I as r,Jt as i,L as a,M as o,N as s,T as c,at as l,ht as u,it as d,j as f,mt as p,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-CKdhNIc_.js";import{t as x}from"./upload-86r_qBlw.js";import{t as S}from"./tooltip-siz_AHre.js";import{t as C}from"./alert-BprQRUmf.js";import{h as w,v as T}from"./models-C3taPMyR.js";import{t as E}from"./drawer-CFnWJn6T.js";import{t as D}from"./clock-BjY8ddGs.js";import{a as O,i as k,n as A,r as ee,s as te,t as j}from"./pagination-Ct9iwsuK.js";import{t as M}from"./info-DkDuo54u.js";import{t as N}from"./trash-2-BD_rYfpa.js";import{t as P}from"./triangle-alert-DHBBLtTd.js";import{t as ne}from"./upload-B-5lkMRH.js";import{t as F}from"./wand-sparkles-BJbx6jvi.js";import{ai as I,ci as re,fi as ie,li as L,oi as R,pi as z,si as B,ui as V}from"./constants-BMkG7xao.js";import{$ as H,Ar as U,Da as W,Ga as G,Ii as K,J as q,O as J,Pi as Y,Q as ae,Xi as oe,ci as se,et as ce,ja as X,k as Z,kn as le,kr as Q,nt as ue,oi as de,tt as fe,xn as pe}from"./index-Dk3occrO.js";import{t as me}from"./CopyToClipboard-BjRfLoil.js";import{t as he}from"./ReportButton-lzZe3i6C.js";import{t as ge}from"./ImagePreview-aPBlpOJ8.js";import{n as _e}from"./taskDrawerMixin-DyAUhFEq.js";import{t as ve}from"./ServicePricingSummary-DOii-08b.js";import{t as ye}from"./VideoPlayer-Dc-1lN9r.js";import{t as be}from"./ScenarioPaymentMode-BR4cXZk8.js";import{t as xe}from"./ApiCodeButton-DSQPf-rd.js";import{t as Se}from"./BotPlaceholder-DgI03cxu.js";var Ce=v({name:`LayoutSora`,components:{MagicIcon:F,ElDrawer:E,ElButton:G},mixins:[_e]}),we={class:`main flex flex-row flex-1`},Te={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)]`},Ee={class:`result h-full p-6 flex-1 flex flex-col min-w-0 overflow-x-hidden bg-[var(--app-content-bg)]`};function De(t,n,r,i,o,c){let f=l(`magic-icon`),m=l(`el-button`),h=l(`el-drawer`);return g(),s(`div`,we,[e(`div`,Te,[d(t.$slots,`config`,{},void 0,!0)]),e(`div`,Ee,[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 Oe=Z(Ce,[[`render`,De],[`__scopeId`,`data-v-b8cedc77`]]),ke=v({name:`ModelSelector`,components:{ElSelect:y,ElOption:b},props:{modelValue:{type:String,default:void 0}},emits:[`update:modelValue`],data(){return{options:[{value:z,label:`sora-2`},{value:ie,label:`sora-2-pro`}]}},computed:{value:{get(){return this.$store.state.sora?.config?.model},set(e){let t=this.$store.state.sora?.config||{},n=I[e]||[10],r=t.duration,i=r&&n.includes(r)?r:n.includes(10)?10:n[0],a={...t,model:e,duration:i,size:t.size||`small`};this.$store.commit(`sora/setConfig`,a)}}},mounted(){this.value||=re}}),Ae={class:`field`},je={class:`title font-bold`};function Me(t,n,r,o,u,d){let m=l(`el-option`),_=l(`el-select`);return g(),s(`div`,Ae,[e(`h2`,je,i(t.$t(`sora.name.model`)),1),a(_,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,class:`value`,placeholder:t.$t(`sora.placeholder.select`)},{default:p(()=>[(g(!0),s(c,null,h(t.options,e=>(g(),f(m,{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`])])}var Ne=Z(ke,[[`render`,Me],[`__scopeId`,`data-v-0cb7913d`]]),Pe=v({name:`ActionSelector`,components:{ElSelect:y,ElOption:b},data(){return{}},computed:{options(){return[{value:`text2video`,label:this.$t(`sora.button.action1`)},{value:`image2video`,label:this.$t(`sora.button.action2`)}]},value:{get(){return this.$store.state.sora?.config?.action},set(e){this.$store.commit(`sora/setConfig`,{...this.$store.state.sora?.config,action:e})}}},mounted(){this.value||=B}}),Fe={class:`field`},Ie={class:`title font-bold`},Le={class:`float-left`};function Re(t,n,r,o,u,d){let m=l(`el-option`),_=l(`el-select`);return g(),s(`div`,Fe,[e(`h2`,Ie,i(t.$t(`sora.name.action`)),1),a(_,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,class:`value`,placeholder:t.$t(`sora.placeholder.select`),clearable:``},{default:p(()=>[(g(!0),s(c,null,h(t.options,t=>(g(),f(m,{key:t.value,label:t.label,value:t.value},{default:p(()=>[e(`span`,Le,i(t.label),1)]),_:2},1032,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`])])}var ze=Z(Pe,[[`render`,Re],[`__scopeId`,`data-v-7b82fa7f`]]),Be=v({name:`DurationSelector`,components:{ElSelect:y,ElOption:b},computed:{model(){return this.$store.state.sora?.config?.model||`sora-2`},allowedDurations(){return I[this.model]||[10]},optionsForModel(){return this.allowedDurations.map(e=>({value:e,label:`${e}s`}))},value:{get(){return this.$store.state.sora?.config?.duration},set(e){let t=this.$store.state.sora?.config||{};this.$store.commit(`sora/setConfig`,{...t,duration:e})}}},watch:{allowedDurations(){let e=this.allowedDurations;if(!e.includes(this.value)){let t=e.includes(10)?10:e[0];this.value=t}}},mounted(){this.value||=10}}),Ve={class:`field`},He={class:`control`},Ue={class:`title font-bold`};function We(t,n,r,o,u,d){let m=l(`el-option`),_=l(`el-select`);return g(),s(`div`,Ve,[e(`div`,He,[e(`h2`,Ue,i(t.$t(`sora.name.duration`)),1),a(_,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,class:`value`,placeholder:t.$t(`sora.placeholder.select`)},{default:p(()=>[(g(!0),s(c,null,h(t.optionsForModel,e=>(g(),f(m,{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`])])])}var Ge=Z(Be,[[`render`,We],[`__scopeId`,`data-v-c2934598`]]),Ke=v({name:`OrientationSelector`,data(){return{options:[{value:`portrait`,labelKey:`sora.option.portrait`,width:13,height:25},{value:`landscape`,labelKey:`sora.option.landscape`,width:25,height:13}]}},computed:{active(){let e=this.options.findIndex(e=>e.value===this.value);return e>=0?e:0},value:{get(){return this.$store.state.sora?.config?.orientation},set(e){console.debug(`set orientation`,e),this.$store.commit(`sora/setConfig`,{...this.$store.state?.sora?.config,orientation:e})}}},mounted(){this.value||=L}}),qe={class:`text-sm font-bold mb-2 block`},Je={class:`items`},Ye=[`onClick`],Xe={class:`name`};function Ze(t,r,a,o,l,u){return g(),s(`div`,null,[e(`span`,qe,i(t.$t(`sora.name.orientation`)),1),e(`div`,Je,[(g(!0),s(c,null,h(t.options,(r,a)=>(g(),s(`div`,{key:a,class:n({active:t.active===a,item:!0}),onClick:e=>t.value=r.value},[e(`div`,{class:n([`preview`,r.value])},[e(`div`,{class:`rect`,style:m({width:r.width+`px`,height:r.height+`px`})},null,4)],2),e(`p`,Xe,i(t.$t(r.labelKey)),1)],10,Ye))),128))])])}var Qe=Z(Ke,[[`render`,Ze],[`__scopeId`,`data-v-a20be6d9`]]),$e=v({name:`StartEndImage`,components:{UploadIcon:ne,ElUpload:x,ElButton:G,InfoIcon:O,ImagePreview:ge},mixins:[ue,fe,H,q],emits:[`change`],data(){return{fileList:[],uploadUrl:W()+`/api/v1/files/`}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},urls(){return this.fileList.map(e=>e?.response?.file_url)},value:{get(){return this.$store.state?.sora?.config?.image_urls},set(){}}},mounted(){this.value||=void 0,this.onSetStartEndImageUrl()},methods:{onExceed(){T.warning(this.$t(`sora.message.uploadReferencesExceed`))},onError(){T.error(this.$t(`sora.message.uploadReferencesError`))},onSetStartEndImageUrl(){let e=this.urls;this.$store.commit(`sora/setConfig`,{...this.$store.state?.sora?.config,image_urls:e})},async onSuccess(){this.onSetStartEndImageUrl()}}}),et={class:`relative`},tt={class:`flex justify-between`},nt={class:`flex justify-start items-center`},rt={class:`text-sm font-bold`};function it(t,n,c,u,d,m){let h=l(`info-icon`),_=l(`image-preview`),v=l(`upload-icon`),y=l(`el-button`),b=l(`el-upload`);return g(),s(`div`,et,[e(`div`,tt,[e(`div`,nt,[e(`span`,rt,i(t.$t(`sora.name.startEndImage`)),1),a(h,{content:t.$t(`sora.description.uploadStartEndImage`)},null,8,[`content`])])]),a(b,{ref:`uploader`,"file-list":t.fileList,"onUpdate:fileList":n[0]||=e=>t.fileList=e,name:`file`,accept:`.png,.jpg,.jpeg,.gif,.bmp,.webp`,limit:2,class:`upload-wrapper`,multiple:!1,"before-upload":t.beforeUploadSizeGuard,action:t.uploadUrl,"list-type":`picture`,"on-exceed":t.onExceed,"on-error":t.onError,"on-success":t.onSuccess,headers:t.headers},{file:p(({file:e})=>[e.url&&e.percentage!==void 0?(g(),f(_,{key:0,url:e.url,name:e.name,percentage:e.percentage,onRemove:n=>t.fileList.splice(t.fileList.indexOf(e),1)},null,8,[`url`,`name`,`percentage`,`onRemove`])):o(``,!0)]),default:p(()=>[a(y,{round:``,type:`primary`,size:`small`,class:`btn btn-upload`},{default:p(()=>[a(v,{class:`icon mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`sora.button.uploadReferences`)),1)]),_:1})]),_:1},8,[`file-list`,`before-upload`,`action`,`on-exceed`,`on-error`,`on-success`,`headers`])])}var at=Z($e,[[`render`,it],[`__scopeId`,`data-v-01b87539`]]),ot=e=>e&&e.charAt(0).toUpperCase()+e.slice(1),st=v({name:`SizeSelector`,components:{ElSelect:y,ElOption:b},data(){return{options:R.map(e=>({value:e,label:ot(e)}))}},computed:{value:{get(){return this.$store.state.sora?.config?.size},set(e){let t=this.$store.state.sora?.config||{};this.$store.commit(`sora/setConfig`,{...t,size:e})}}},mounted(){this.value||=V}}),ct={class:`field`},lt={class:`control`},ut={class:`title font-bold`};function dt(t,n,r,o,u,d){let m=l(`el-option`),_=l(`el-select`);return g(),s(`div`,ct,[e(`div`,lt,[e(`h2`,ut,i(t.$t(`sora.name.size`)),1),a(_,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,class:`value`,placeholder:t.$t(`sora.placeholder.select`)},{default:p(()=>[(g(!0),s(c,null,h(t.options,e=>(g(),f(m,{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`])])])}var ft=Z(st,[[`render`,dt],[`__scopeId`,`data-v-8c485f0f`]]),pt=v({name:`PromptInput`,components:{PromptTextarea:k},computed:{prompt:{get(){return this.$store.state.sora?.config?.prompt},set(e){this.$store.commit(`sora/setConfig`,{...this.$store.state.sora?.config,prompt:e})}}},mounted(){this.prompt||=``}});function mt(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(`sora.name.prompt`),info:e.$t(`sora.description.prompt`),placeholder:e.$t(`sora.placeholder.prompt`)},null,8,[`modelValue`,`title`,`info`,`placeholder`])}var ht=v({name:`ConfigPanel`,components:{MagicIcon:F,ElButton:G,ServicePricingSummary:ve,PromptInput:Z(pt,[[`render`,mt]]),ModelSelector:Ne,StartEndImage:at,SizeSelector:ft,ActionSelector:ze,OrientationSelector:Qe,DurationSelector:Ge,ScenarioPaymentMode:be},emits:[`generate`],data(){return{quoteTimer:0,quoteRunId:0}},computed:{config(){return this.$store.state.sora?.config},consumption(){return pe(this.config,this.service?.cost)},service(){return this.$store.state.sora?.service},walletMode(){return Y()&&K(`sora`).mode===`wallet`}},watch:{walletMode:{handler(e){e&&this.scheduleQuote()},immediate:!0},config:{handler(){this.walletMode&&this.scheduleQuote()},deep:!0}},beforeUnmount(){window.clearTimeout(this.quoteTimer),this.quoteRunId+=1},methods:{scheduleQuote(){window.clearTimeout(this.quoteTimer),this.quoteTimer=window.setTimeout(this.refreshQuote,350)},async refreshQuote(){let e=K(`sora`),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(){this.$emit(`generate`)}}}),gt={class:`flex flex-col h-full`},_t={class:`flex-1 overflow-y-auto p-5`},vt={class:`flex flex-col items-center justify-center px-5 pb-5`};function yt(t,n,c,d,m,h){let v=l(`model-selector`),y=l(`action-selector`),b=l(`duration-selector`),x=l(`size-selector`),S=l(`orientation-selector`),C=l(`prompt-input`),w=l(`start-end-image`),T=l(`scenario-payment-mode`),E=l(`service-pricing-summary`),D=l(`magic-icon`),O=l(`el-button`);return g(),s(`div`,gt,[e(`div`,_t,[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`}),u(a(w,{class:`mb-4`},null,512),[[_,t.config?.action===`image2video`]])]),e(`div`,vt,[a(T,{scenario:`sora`}),t.walletMode?o(``,!0):(g(),f(E,{key:0,value:t.consumption,service:t.service},null,8,[`value`,`service`])),a(O,{type:`primary`,class:`btn w-full`,round:``,onClick:t.onGenerate},{default:p(()=>[a(D,{class:`mr-2`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`sora.button.generate`)),1)]),_:1},8,[`onClick`])])])}var bt=Z(ht,[[`render`,yt]]),xt=v({name:`TaskPreview`,components:{DeleteIcon:N,ChannelIcon:te,InfoIcon:M,MagicIcon:F,TimeIcon:D,WarningIcon:P,CopyToClipboard:me,ElAlert:C,VideoPlayer:ye,ElTooltip:S,ElButton:G,ApiCodeButton:xe,ReportButton:he},props:{modelValue:{type:Object,required:!0}},data(){return{}},computed:{application(){return this.$store.state.sora?.application},config(){return this.$store.state.sora?.config}},methods:{async onDelete(){let e=this.modelValue?.id;if(e){try{await X.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(`sora/deleteTask`,{id:e}),T.success(this.$t(`common.message.deleteTaskSuccess`))}catch{T.error(this.$t(`common.message.deleteTaskFailed`))}}},onDownload(e,t){e?.stopPropagation(),console.log(`on download`),window.open(t,`_blank`)},onOpenVideo(e){window.open(e,`_blank`)}}}),St={class:`preview`},Ct={class:`left`},wt={class:`main`},Tt={class:`bot`},Et={class:`datetime`},Dt=[`aria-label`],Ot={class:`info`},kt={key:0,class:`prompt mt-2`},At={key:0},jt={key:1},Mt={key:0,class:n({content:!0,failed:!0})},Nt={key:0,class:`mb-4`},Pt={key:1,class:n({operations:!0,"mt-2":!0})},Ft={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},It={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Lt={key:0,class:`text-[var(--el-text-color-regular)] text-xs mb-0`},Rt={key:1,class:n({content:!0})},zt={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Bt={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},$={key:0,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Vt={key:1,class:`text-[var(--el-text-color-regular)] text-xs mb-0`},Ht={key:2,class:n({content:!0})},Ut={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Wt={key:0,class:`text-[var(--el-text-color-regular)] text-xs mb-0`};function Gt(n,c,u,d,m,h){let _=l(`capability-presentation`),v=l(`delete-icon`),y=l(`el-tooltip`),b=l(`video-player`),x=l(`el-button`),S=l(`api-code-button`),C=l(`report-button`),w=l(`channel-icon`),T=l(`magic-icon`),E=l(`copy-to-clipboard`),D=l(`time-icon`),O=l(`el-alert`),k=l(`warning-icon`),A=l(`info-icon`);return g(),s(`div`,St,[e(`div`,Ct,[a(_,{capability:`sora`,part:`avatar`,class:`avatar`})]),e(`div`,wt,[e(`div`,Tt,[a(_,{capability:`sora`,part:`name`}),e(`span`,Et,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:p(()=>[n.modelValue?.id?(g(),s(`button`,{key:0,type:`button`,class:`btn-delete`,"aria-label":n.$t(`common.button.delete`),onClick:c[0]||=t((...e)=>n.onDelete&&n.onDelete(...e),[`stop`])},[a(v,{size:`1em`,"aria-hidden":`true`,focusable:`false`})],8,Dt)):o(``,!0)]),_:1},8,[`content`])]),e(`div`,Ot,[n.modelValue?.request?.prompt?(g(),s(`p`,kt,[r(i(n.modelValue?.request?.prompt)+` `,1),n.modelValue?.response?o(``,!0):(g(),s(`span`,At,` - (`+i(n.$t(`sora.status.pending`))+`) `,1)),n.modelValue?.response&&n.modelValue?.response?.success===void 0?(g(),s(`span`,jt,` - (`+i(n.$t(`sora.status.processing`))+`) `,1)):o(``,!0)])):o(``,!0)]),n.modelValue?.response?.success===!0&&n.modelValue?.response?.data?(g(),s(`div`,Mt,[n.modelValue?.response?.data[0]?.video_url?(g(),s(`div`,Nt,[a(b,{src:n.modelValue?.response?.data[0]?.video_url},null,8,[`src`])])):o(``,!0),n.modelValue?.response.success?(g(),s(`div`,Pt,[a(y,{class:`box-item`,effect:`dark`,content:n.$t(`sora.message.downloadVideo`),placement:`top-start`},{default:p(()=>[n.modelValue?.response?.data[0]?.video_url?(g(),f(x,{key:0,type:`info`,size:`small`,class:`btn-action`,onClick:c[1]||=e=>n.onDownload(e,n.modelValue?.response?.data[0]?.video_url)},{default:p(()=>[r(i(n.$t(`sora.button.download`)),1)]),_:1})):o(``,!0)]),_:1},8,[`content`]),a(S,{path:`/sora/videos`,body:n.modelValue?.request},null,8,[`body`]),a(C,{service:`sora`,"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(()=>[e(`p`,Ft,[a(w,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`sora.name.model`))+`: `+i(n.modelValue?.request?.model),1)]),e(`p`,It,[a(T,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`sora.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(E,{content:n.modelValue?.id},null,8,[`content`])]),n.modelValue?.elapsed?(g(),s(`p`,Lt,[a(D,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`sora.name.elapsed`))+`: `+i(n.modelValue?.elapsed?.toFixed(2))+`s `,1)])):o(``,!0)]),_:1})])):o(``,!0),n.modelValue?.response?.success===!1?(g(),s(`div`,Rt,[a(O,{closable:!1,class:`failure`},{template:p(()=>[a(k,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`sora.name.failure`)),1)]),default:p(()=>[e(`p`,zt,[a(T,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`sora.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(E,{content:n.modelValue?.id},null,8,[`content`])]),e(`p`,Bt,[a(A,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`sora.name.failureReason`))+`: `+i(n.modelValue?.response?.error?.message)+` `,1),a(E,{content:n.modelValue?.response?.error?.message},null,8,[`content`])]),n.modelValue?.elapsed?(g(),s(`p`,$,[a(D,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`sora.name.elapsed`))+`: `+i(n.modelValue?.elapsed?.toFixed(2))+`s `,1)])):o(``,!0),n.modelValue?.response?.trace_id?(g(),s(`p`,Vt,[a(w,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`sora.name.traceId`))+`: `+i(n.modelValue?.response?.trace_id)+` `,1),a(E,{content:n.modelValue?.response?.trace_id},null,8,[`content`])])):o(``,!0)]),_:1})])):o(``,!0),n.modelValue?.response?.success===void 0?(g(),s(`div`,Ht,[a(O,{closable:!1,class:`info`},{template:p(()=>[a(D,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(n.modelValue?.response?`sora.status.processing`:`sora.status.pending`)),1)]),default:p(()=>[e(`p`,Ut,[a(T,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`sora.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(E,{content:n.modelValue?.id},null,8,[`content`])]),n.modelValue?.response?.trace_id?(g(),s(`p`,Wt,[a(w,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`sora.name.traceId`))+`: `+i(n.modelValue?.response?.trace_id)+` `,1),a(E,{content:n.modelValue?.response?.trace_id},null,8,[`content`])])):o(``,!0)]),_:1})])):o(``,!0)])])}var Kt=v({name:`RecentPanel`,components:{TaskPreview:Z(xt,[[`render`,Gt],[`__scopeId`,`data-v-808e51ba`]]),NoTasks:ee,BotPlaceholder:Se,ScrollList:A},props:{loading:{type:Boolean,default:!1}},emits:[`reach-top`],data(){return{job:0}},computed:{tasks(){return{...this.$store.state.sora?.tasks,items:this.$store.state.sora?.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`),m=l(`task-preview`),_=l(`scroll-list`),v=l(`no-tasks`);return g(),s(c,null,[e.tasks?.items===void 0?(g(),s(`div`,qt,[a(d)])):e.tasks?.items?.length&&e.tasks?.items?.length>0?(g(),f(_,{key:1,ref:`scrollList`,class:`tasks h-full w-full overflow-y-auto`,loading:e.loading,onReachTop:t[0]||=t=>e.$emit(`reach-top`)},{default:p(()=>[(g(!0),s(c,null,h(e.tasks?.items,(e,t)=>(g(),f(m,{key:t,"model-value":e},null,8,[`model-value`]))),128))]),_:1},8,[`loading`])):o(``,!0),e.tasks?.items?.length===0?(g(),s(`div`,Jt,[a(v)])):o(``,!0)],64)}var Xt=v({name:`SoraIndex`,components:{ConfigPanel:bt,Layout:Oe,RecentPanel:Z(Kt,[[`render`,Yt]])},mixins:[ce],inject:[`initialized`],data(){return{task:void 0,job:0,loadingMore:!1,fetchingTasks:!1,walletTaskIds:[]}},computed:{applicationsLoading(){return this.$store.state.sora?.status?.getApplications===w.Request},tasksLoading(){return this.$store.state.sora?.status?.getTasks===w.Request||this.fetchingTasks},credential(){return this.$store.state.sora.credential},config(){return this.$store.state.sora.config},tasks(){return this.$store.state.sora.tasks},walletMode(){return Y()&&K(`sora`).mode===`wallet`}},watch:{walletMode:{async handler(e,t){if(!(t===void 0||e===t)){if(this.$store.commit(`sora/setTasks`,void 0),e&&!this.job&&(this.job=window.setInterval(this.onGetTasks,5e3)),!e&&!this.credential?.token){window.clearInterval(this.job),this.job=0,await this.onScrollDown();return}await this.onGetTasks(),await this.onScrollDown()}}},tasks:{handler(e,t){e?.items?.length>t?.items?.length&&console.debug(`new tasks detected`)},deep:!0},initialized:{async handler(e){e&&(console.debug(`layout initialized`),await this.onGetTasks(),await this.onScrollDown(),this.job||=window.setInterval(this.onGetTasks,5e3))},immediate:!0}},async mounted(){await this.onGetService()},async unmounted(){window.clearInterval(this.job)},methods:{async onReachTop(){await j({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(`sora/getService`),console.debug(`end onGetService`)},async onGetApplication(){console.debug(`start onGetApplication`),await this.$store.dispatch(`sora/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(`sora/getTasks`,{limit:t,createdAtMin:n,createdAtMax:r,...this.walletMode&&!this.credential?.token?{mode:`x402`,ids:this.walletTaskIds}:{}})}finally{this.fetchingTasks=!1}},async onGenerate(){if(!ae(this.uploadTracker,e=>this.$t(e),e=>T.warning(e)))return;let e=Q(this.config),t;if(this.walletMode){let n=this.getWalletContext();if(!n){T.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(!le())return;let n=this.credential?.token;if(!n)return;t=U.generate(e,{token:n})}T.info(this.$t(`sora.message.startingTask`)),oe(`sora`,t).then(e=>{let t=e?.data?.task_id;this.walletMode&&!this.credential?.token&&t&&!this.walletTaskIds.includes(t)&&this.walletTaskIds.unshift(t),T.success(this.$t(`sora.message.startTaskSuccess`))}).catch(e=>{e instanceof de||J(e,`sora`)||(this.walletMode?T.error(this.$t(`common.x402Scenario.paymentFailed`)):T.error(this.$t(`sora.message.startTaskFailed`)))}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})},getWalletContext(){return se(this.$wallet)},async confirmWalletPayment(e){return X.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 g(),f(u,null,{config:p(()=>[a(s,{onGenerate:e.onGenerate},null,8,[`onGenerate`])]),result:p(()=>[a(c,{ref:`recentPanel`,loading:e.loadingMore,onReachTop:e.onReachTop},null,8,[`loading`,`onReachTop`])]),_:1})}var Qt=Z(Xt,[[`render`,Zt]]);export{Qt as default};
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import"./rolldown-runtime--c01j_DQ.js";import{A as e,C as t,F as n,I as r,Jt as i,L as a,M as o,N as s,S as c,T as l,at as u,it as d,j as f,mt as p,rt as m,tt as h,z as g}from"./vendor-chart-Dw-P17PN.js";import{r as _,t as v}from"./select-D9aYzMf6.js";import{n as y,t as b}from"./tabs-C0jaOUPC.js";import{t as x}from"./tooltip-CEa69fVd.js";import{t as S}from"./alert-BprQRUmf.js";import{h as C,v as w}from"./models-Cmo-VT-F.js";import{n as T,r as E}from"./radio-BNhFzeBO.js";import{n as D,t as O}from"./collapse-Loa-kWFA.js";import{t as k}from"./drawer-DfXjJO_e.js";import{t as A}from"./input-number-BdXZiGUI.js";import{t as j}from"./switch-COo_nVp9.js";import{t as M}from"./clock-DmG68B_m.js";import{t as N}from"./external-link-fR5udMCA.js";import{t as P}from"./globe-Cs0FMFOk.js";import{t as ee}from"./info-Dy6jE77P.js";import{t as te}from"./loader-circle-BhLoljYa.js";import{t as F}from"./tag-7zBfHNLd.js";import{t as I}from"./wand-sparkles-4VXENbf1.js";import{t as L}from"./zap-DXu1LxNj.js";import{Aa as R,O as z,On as B,Ra as V,bn as H,ha as U,k as W,ya as G}from"./index-C2sgIqPl.js";import{t as K}from"./CopyToClipboard-DwP8EnVL.js";import{t as q}from"./ServicePricingSummary-D4FVsXlm.js";var J=U(`signal`,[[`path`,{d:`M2 20h.01`,key:`4haj6o`}],[`path`,{d:`M7 20v-4`,key:`j294jx`}],[`path`,{d:`M12 20v-8`,key:`i3yub9`}],[`path`,{d:`M17 20V8`,key:`1tkaf5`}],[`path`,{d:`M22 4v16`,key:`sih9yq`}]]),Y=g({name:`LayoutWebextrator`,components:{ControlsIcon:U(`sliders-horizontal`,[[`path`,{d:`M10 5H3`,key:`1qgfaw`}],[`path`,{d:`M12 19H3`,key:`yhmn1j`}],[`path`,{d:`M14 3v4`,key:`1sua03`}],[`path`,{d:`M16 17v4`,key:`1q0r14`}],[`path`,{d:`M21 12h-9`,key:`1o4lsq`}],[`path`,{d:`M21 19h-5`,key:`1rlt1p`}],[`path`,{d:`M21 5h-7`,key:`1oszz2`}],[`path`,{d:`M8 10v4`,key:`tgpxqk`}],[`path`,{d:`M8 12H3`,key:`a7s4jb`}]]),ElDrawer:k,ElButton:R},data(){return{drawer:!1}}}),X={class:`main flex flex-row flex-1`},Z={class:`config w-[340px] flex-none h-full overflow-y-auto bg-[var(--app-sidebar-bg)] border-r border-[var(--app-border-subtle)]`},Q={class:`result h-full flex-1 flex flex-col min-w-0 overflow-x-hidden bg-[var(--app-content-bg)]`};function ne(t,n,r,i,o,c){let l=u(`controls-icon`),f=u(`el-button`),m=u(`el-drawer`);return h(),s(`div`,X,[e(`div`,Z,[d(t.$slots,`config`,{},void 0,!0)]),e(`div`,Q,[d(t.$slots,`result`,{},void 0,!0)]),a(f,{circle:``,class:`menu`,"aria-label":t.$t(`common.button.openMenu`),title:t.$t(`common.button.openMenu`),onClick:n[0]||=e=>t.drawer=!0},{default:p(()=>[a(l,{size:`1em`,"aria-hidden":`true`,focusable:`false`})]),_:1},8,[`aria-label`,`title`]),a(m,{modelValue:t.drawer,"onUpdate:modelValue":n[1]||=e=>t.drawer=e,direction:`ltr`,"with-header":!1,size:`340px`,class:`drawer`},{default:p(()=>[d(t.$slots,`config`,{},void 0,!0)]),_:3},8,[`modelValue`])])}var re=W(Y,[[`render`,ne],[`__scopeId`,`data-v-0ca47a5f`]]),ie=g({name:`ModeSelector`,components:{GlobeIcon:P,MagicIcon:I,ElRadioGroup:E,ElRadioButton:T},computed:{value:{get(){return this.$store.state.webextrator?.config?.mode},set(e){this.$store.commit(`webextrator/setConfig`,{...this.$store.state.webextrator?.config,mode:e})}}}}),ae={class:`field`},oe={class:`title font-bold`};function se(t,n,o,c,l,d){let f=u(`magic-icon`),m=u(`el-radio-button`),g=u(`globe-icon`),_=u(`el-radio-group`);return h(),s(`div`,ae,[e(`h2`,oe,i(t.$t(`webextrator.name.mode`)),1),a(_,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,class:`value w-full`},{default:p(()=>[a(m,{label:`extract`,value:`extract`},{default:p(()=>[a(f,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`webextrator.mode.extract`)),1)]),_:1}),a(m,{label:`render`,value:`render`},{default:p(()=>[a(g,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`webextrator.mode.render`)),1)]),_:1})]),_:1},8,[`modelValue`])])}var ce=W(ie,[[`render`,se],[`__scopeId`,`data-v-76c5bea5`]]),le=g({name:`UrlInput`,components:{ElInput:V},emits:[`submit`],computed:{url:{get(){return this.$store.state.webextrator?.config?.url||``},set(e){this.$store.commit(`webextrator/setConfig`,{...this.$store.state.webextrator?.config,url:e})}}},methods:{onEnter(){this.$emit(`submit`)}}}),ue={class:`field`},de={class:`title font-bold`};function fe(n,r,o,l,d,f){let p=u(`el-input`);return h(),s(`div`,ue,[e(`h2`,de,i(n.$t(`webextrator.name.url`)),1),a(p,{modelValue:n.url,"onUpdate:modelValue":r[0]||=e=>n.url=e,type:`textarea`,rows:2,class:`prompt`,placeholder:n.$t(`webextrator.placeholder.url`),onKeydown:c(t(n.onEnter,[`exact`,`prevent`]),[`enter`])},null,8,[`modelValue`,`placeholder`,`onKeydown`])])}var pe=W(le,[[`render`,fe],[`__scopeId`,`data-v-18488009`]]),me=g({name:`ExpectedTypeSelector`,components:{ElSelect:_,ElOption:v},computed:{value:{get(){return this.$store.state.webextrator?.config?.expected_type},set(e){this.$store.commit(`webextrator/setConfig`,{...this.$store.state.webextrator?.config,expected_type:e})}}},mounted(){this.value||=`general`}}),he={class:`field`},ge={class:`title font-bold`};function _e(t,n,r,o,c,l){let d=u(`el-option`),f=u(`el-select`);return h(),s(`div`,he,[e(`h2`,ge,i(t.$t(`webextrator.name.expectedType`)),1),a(f,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,class:`value`},{default:p(()=>[a(d,{value:`general`,label:t.$t(`webextrator.expectedType.general`)},null,8,[`label`]),a(d,{value:`article`,label:t.$t(`webextrator.expectedType.article`)},null,8,[`label`]),a(d,{value:`product`,label:t.$t(`webextrator.expectedType.product`)},null,8,[`label`])]),_:1},8,[`modelValue`])])}var ve=W(me,[[`render`,_e],[`__scopeId`,`data-v-3b572c49`]]),ye=g({name:`LlmToggle`,components:{InfoIcon:ee,ElSwitch:j,ElTooltip:x},computed:{value:{get(){return!!this.$store.state.webextrator?.config?.enable_llm},set(e){this.$store.commit(`webextrator/setConfig`,{...this.$store.state.webextrator?.config,enable_llm:e})}}}}),be={class:`field`},xe={class:`title font-bold`};function Se(t,n,o,c,l,d){let f=u(`info-icon`),m=u(`el-tooltip`),g=u(`el-switch`);return h(),s(`div`,be,[e(`h2`,xe,[r(i(t.$t(`webextrator.name.enableLlm`))+` `,1),a(m,{effect:`dark`,content:t.$t(`webextrator.description.enableLlm`),placement:`top`},{default:p(()=>[a(f,{class:`ml-1 text-[var(--el-text-color-secondary)] text-xs`,size:`1em`,"aria-hidden":`true`,focusable:`false`})]),_:1},8,[`content`])]),a(g,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,class:`value`},null,8,[`modelValue`])])}var Ce=W(ye,[[`render`,Se],[`__scopeId`,`data-v-a0c2f78c`]]),we=[`image`,`font`,`media`,`stylesheet`,`xhr`,`fetch`],Te=g({name:`AdvancedOptions`,components:{ElCollapse:O,ElCollapseItem:D,ElInput:V,ElInputNumber:A,ElSelect:_,ElOption:v},data(){return{active:[]}},computed:{resourceKinds(){return we},waitUntil:{get(){return this.$store.state.webextrator?.config?.wait_until||`networkidle`},set(e){this.commit({wait_until:e})}},waitForSelector:{get(){return this.$store.state.webextrator?.config?.wait_for_selector||``},set(e){this.commit({wait_for_selector:e})}},timeout:{get(){return this.$store.state.webextrator?.config?.timeout??30},set(e){this.commit({timeout:e})}},delay:{get(){return this.$store.state.webextrator?.config?.delay??0},set(e){this.commit({delay:e})}},blockResources:{get(){return this.$store.state.webextrator?.config?.block_resources||[]},set(e){this.commit({block_resources:e})}}},methods:{commit(e){this.$store.commit(`webextrator/setConfig`,{...this.$store.state.webextrator?.config,...e})}}}),Ee={class:`field`},De={class:`sub-title`},Oe={class:`field`},ke={class:`sub-title`},Ae={class:`field`},je={class:`sub-title`},Me={class:`field`},Ne={class:`sub-title`},Pe={class:`field`},Fe={class:`sub-title`};function Ie(t,n,r,o,c,d){let g=u(`el-option`),_=u(`el-select`),v=u(`el-input`),y=u(`el-input-number`),b=u(`el-collapse-item`),x=u(`el-collapse`);return h(),f(x,{modelValue:t.active,"onUpdate:modelValue":n[5]||=e=>t.active=e,class:`advanced`},{default:p(()=>[a(b,{title:t.$t(`webextrator.name.advanced`),name:`advanced`},{default:p(()=>[e(`div`,Ee,[e(`h2`,De,i(t.$t(`webextrator.name.waitUntil`)),1),a(_,{modelValue:t.waitUntil,"onUpdate:modelValue":n[0]||=e=>t.waitUntil=e,class:`value`},{default:p(()=>[a(g,{value:`networkidle`,label:t.$t(`webextrator.waitUntil.networkidle`)},null,8,[`label`]),a(g,{value:`load`,label:t.$t(`webextrator.waitUntil.load`)},null,8,[`label`]),a(g,{value:`domcontentloaded`,label:t.$t(`webextrator.waitUntil.domcontentloaded`)},null,8,[`label`]),a(g,{value:`commit`,label:t.$t(`webextrator.waitUntil.commit`)},null,8,[`label`])]),_:1},8,[`modelValue`])]),e(`div`,Oe,[e(`h2`,ke,i(t.$t(`webextrator.name.waitForSelector`)),1),a(v,{modelValue:t.waitForSelector,"onUpdate:modelValue":n[1]||=e=>t.waitForSelector=e,placeholder:t.$t(`webextrator.placeholder.waitForSelector`)},null,8,[`modelValue`,`placeholder`])]),e(`div`,Ae,[e(`h2`,je,i(t.$t(`webextrator.name.timeout`)),1),a(y,{modelValue:t.timeout,"onUpdate:modelValue":n[2]||=e=>t.timeout=e,min:1,max:120,step:5,"controls-position":`right`,class:`w-full`},null,8,[`modelValue`])]),e(`div`,Me,[e(`h2`,Ne,i(t.$t(`webextrator.name.delay`)),1),a(y,{modelValue:t.delay,"onUpdate:modelValue":n[3]||=e=>t.delay=e,min:0,max:30,step:1,"controls-position":`right`,class:`w-full`},null,8,[`modelValue`])]),e(`div`,Pe,[e(`h2`,Fe,i(t.$t(`webextrator.name.blockResources`)),1),a(_,{modelValue:t.blockResources,"onUpdate:modelValue":n[4]||=e=>t.blockResources=e,multiple:``,"collapse-tags":``,placeholder:t.$t(`webextrator.placeholder.blockResources`),class:`w-full`},{default:p(()=>[(h(!0),s(l,null,m(t.resourceKinds,e=>(h(),f(g,{key:e,label:t.$t(`webextrator.blockResource.${e}`),value:e},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`])])]),_:1},8,[`title`])]),_:1},8,[`modelValue`])}var Le=g({name:`WebextratorConfigPanel`,components:{LightningIcon:L,ElButton:R,ModeSelector:ce,UrlInput:pe,ExpectedTypeSelector:ve,LlmToggle:Ce,AdvancedOptions:W(Te,[[`render`,Ie],[`__scopeId`,`data-v-8f36d2df`]]),ServicePricingSummary:q},emits:[`run`],computed:{config(){return this.$store.state.webextrator?.config},service(){return this.$store.state.webextrator?.service},consumption(){return H(this.config||{},this.service?.cost)},running(){return this.$store.state.webextrator?.status?.run===C.Request},isExtract(){return(this.config?.mode||`extract`)===`extract`},canRun(){let e=(this.config?.url||``).trim();return/^https?:\/\//i.test(e)}},methods:{onRun(){this.canRun&&this.$emit(`run`)}}}),Re={class:`flex flex-col h-full`},ze={class:`flex-1 overflow-y-auto p-5`},Be={class:`flex flex-col items-center justify-center px-5 pb-5`};function Ve(t,n,c,d,f,m){let g=u(`mode-selector`),_=u(`url-input`),v=u(`expected-type-selector`),y=u(`llm-toggle`),b=u(`advanced-options`),x=u(`service-pricing-summary`),S=u(`lightning-icon`),C=u(`el-button`);return h(),s(`div`,Re,[e(`div`,ze,[a(g,{class:`mb-4`}),a(_,{class:`mb-4`,onSubmit:t.onRun},null,8,[`onSubmit`]),t.isExtract?(h(),s(l,{key:0},[a(v,{class:`mb-4`}),a(y,{class:`mb-4`})],64)):o(``,!0),a(b,{class:`mb-4`})]),e(`div`,Be,[a(x,{value:t.consumption,service:t.service},null,8,[`value`,`service`]),a(C,{type:`primary`,class:`w-full`,round:``,loading:t.running,disabled:!t.canRun,onClick:t.onRun},{default:p(()=>[a(S,{class:`mr-2`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(t.isExtract?`webextrator.button.extract`:`webextrator.button.render`)),1)]),_:1},8,[`loading`,`disabled`,`onClick`])])])}var He=W(Le,[[`render`,Ve]]),Ue=e=>!!e&&e.kind!==`render`,We=g({name:`WebextratorResultPanel`,components:{ExternalLinkIcon:N,GlobeIcon:P,LabelIcon:F,LoadingIcon:te,SignalIcon:J,TimeIcon:M,ElAlert:S,ElImage:G,ElTabs:y,ElTabPane:b,CopyToClipboard:K},data(){return{activeTab:`markdown`}},computed:{response(){return this.$store.state.webextrator?.response},running(){return this.$store.state.webextrator?.status?.run===C.Request},data(){return this.response?.data},renderData(){return this.data&&this.data.kind===`render`?this.data:void 0},extractData(){return Ue(this.data)?this.data:void 0},finalUrl(){let e=this.data;return e?.finalUrl||e?.final_url||e?.url},contentTypeLabel(){let e=this.data;return e?.contentType||e?.content_type||e?.expected_type},screenshotSrc(){let e=this.data?.screenshot;if(e)return e.startsWith(`data:`)||e.startsWith(`http`)?e:`data:image/png;base64,${e}`},markdown(){let e=this.data;return e?.markdown||e?.content||``},plainText(){return this.data?.text||``},html(){return this.data?.html||``},links(){return Array.isArray(this.data?.links)?this.data.links:[]},linksPlain(){return this.links.join(`
|
|
2
|
-
`)},images(){return Array.isArray(this.data?.images)?this.data.images:[]},structuredPretty(){return this.extractData?.structured?JSON.stringify(this.extractData.structured,null,2):``},rawPretty(){return this.response?JSON.stringify(this.response,null,2):``},errorMessage(){if(this.response?.success===!1){let e=this.response?.error;return e?.message||e?.code||this.$t(`webextrator.message.failed`)}}},watch:{response:{handler(){this.resetTab()},immediate:!0}},methods:{resetTab(){this.markdown?this.activeTab=`markdown`:this.extractData?.structured?this.activeTab=`structured`:this.plainText?this.activeTab=`text`:this.html?this.activeTab=`html`:this.activeTab=`raw`}}}),Ge={class:`h-full overflow-y-auto p-6`},Ke={key:0,class:`max-w-4xl mx-auto py-4`},qe={class:`flex items-center gap-2 mb-3 text-[var(--el-color-primary)] text-sm`},Je={key:1,class:`flex flex-col items-center justify-center py-24 text-[var(--el-text-color-disabled)]`},Ye={class:`text-base mb-1`},Xe={class:`text-xs opacity-70`},Ze={key:2,class:`max-w-4xl mx-auto py-4`},Qe={class:`text-xs whitespace-pre-wrap break-words`},$e={key:3,class:`max-w-4xl mx-auto`},et={class:`mb-4`},tt={class:`text-xl font-semibold leading-snug mb-1 break-words text-[var(--el-text-color-primary)]`},nt={class:`flex flex-wrap items-center gap-x-3 gap-y-1 text-xs text-[var(--el-text-color-secondary)]`},rt=[`href`],it={key:1},at={key:2},ot={key:3},st={key:0,class:`mt-2 text-sm text-[var(--el-text-color-regular)] leading-relaxed line-clamp-3`},ct={key:0,class:`mb-5`},lt={class:`tab-toolbar`},ut={class:`content-block`},dt={class:`tab-toolbar`},ft={class:`content-block`},$={class:`tab-toolbar`},pt={class:`content-block code`},mt={class:`tab-toolbar`},ht={class:`links-list`},gt=[`href`],_t={class:`grid grid-cols-2 md:grid-cols-3 lg:grid-cols-4 gap-2`},vt={class:`tab-toolbar`},yt={class:`content-block code`},bt={class:`tab-toolbar`},xt={class:`content-block code`};function St(t,c,d,g,_,v){let y=u(`loading-icon`),b=u(`globe-icon`),x=u(`el-alert`),S=u(`external-link-icon`),C=u(`signal-icon`),w=u(`time-icon`),T=u(`label-icon`),E=u(`el-image`),D=u(`copy-to-clipboard`),O=u(`el-tab-pane`),k=u(`el-tabs`);return h(),s(`div`,Ge,[t.running?(h(),s(`div`,Ke,[e(`div`,qe,[a(y,{class:`adc-icon-spin`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),e(`span`,null,i(t.$t(`webextrator.message.running`)),1)]),c[1]||=n(`<div class="mb-6 animate-pulse" data-v-4ec341a6><div class="h-5 w-3/5 rounded bg-[var(--el-fill-color-dark)] mb-2" data-v-4ec341a6></div><div class="h-3 w-2/5 rounded bg-[var(--el-fill-color)] mb-4" data-v-4ec341a6></div><div class="h-64 w-full rounded bg-[var(--el-fill-color)] mb-3" data-v-4ec341a6></div><div class="h-3 w-full rounded bg-[var(--el-fill-color)] mb-1" data-v-4ec341a6></div><div class="h-3 w-5/6 rounded bg-[var(--el-fill-color)] mb-1" data-v-4ec341a6></div><div class="h-3 w-4/6 rounded bg-[var(--el-fill-color)]" data-v-4ec341a6></div></div>`,1)])):!t.response&&!t.errorMessage?(h(),s(`div`,Je,[a(b,{class:`text-6xl mb-4 opacity-30`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),e(`p`,Ye,i(t.$t(`webextrator.description.intro`)),1),e(`p`,Xe,i(t.$t(`webextrator.description.introHint`)),1)])):t.errorMessage?(h(),s(`div`,Ze,[a(x,{type:`error`,closable:!1,"show-icon":``,title:t.$t(`webextrator.message.failed`)},{default:p(()=>[e(`pre`,Qe,i(t.errorMessage),1)]),_:1},8,[`title`])])):t.data?(h(),s(`div`,$e,[e(`header`,et,[e(`h1`,tt,i(t.data.title||t.$t(`webextrator.message.untitled`)),1),e(`div`,nt,[t.finalUrl?(h(),s(`a`,{key:0,href:t.finalUrl,target:`_blank`,rel:`noopener`,class:`hover:underline truncate max-w-[60%]`},[a(S,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(i(t.finalUrl),1)],8,rt)):o(``,!0),t.renderData?.status?(h(),s(`span`,it,[a(C,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(i(t.renderData.status),1)])):o(``,!0),t.response?.elapsed?(h(),s(`span`,at,[a(w,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(i(t.response.elapsed.toFixed(2))+`s `,1)])):o(``,!0),t.contentTypeLabel?(h(),s(`span`,ot,[a(T,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(i(t.contentTypeLabel),1)])):o(``,!0)]),t.extractData?.description?(h(),s(`p`,st,i(t.extractData.description),1)):o(``,!0)]),t.screenshotSrc?(h(),s(`figure`,ct,[a(E,{src:t.screenshotSrc,fit:`contain`,"preview-src-list":[t.screenshotSrc],"preview-teleported":``,"hide-on-click-modal":``,class:`w-full max-h-[480px] rounded border border-[var(--app-border-subtle)] bg-[var(--el-fill-color-light)]`},null,8,[`src`,`preview-src-list`])])):o(``,!0),a(k,{modelValue:t.activeTab,"onUpdate:modelValue":c[0]||=e=>t.activeTab=e,class:`result-tabs`},{default:p(()=>[t.markdown?(h(),f(O,{key:0,label:t.$t(`webextrator.tab.markdown`),name:`markdown`},{default:p(()=>[e(`div`,lt,[a(D,{content:t.markdown},null,8,[`content`])]),e(`pre`,ut,i(t.markdown),1)]),_:1},8,[`label`])):o(``,!0),t.plainText?(h(),f(O,{key:1,label:t.$t(`webextrator.tab.text`),name:`text`},{default:p(()=>[e(`div`,dt,[a(D,{content:t.plainText},null,8,[`content`])]),e(`pre`,ft,i(t.plainText),1)]),_:1},8,[`label`])):o(``,!0),t.extractData?.structured?(h(),f(O,{key:2,label:t.$t(`webextrator.tab.structured`),name:`structured`},{default:p(()=>[e(`div`,$,[a(D,{content:t.structuredPretty},null,8,[`content`])]),e(`pre`,pt,i(t.structuredPretty),1)]),_:1},8,[`label`])):o(``,!0),t.links.length?(h(),f(O,{key:3,label:`${t.$t(`webextrator.tab.links`)} (${t.links.length})`,name:`links`},{default:p(()=>[e(`div`,mt,[a(D,{content:t.linksPlain},null,8,[`content`])]),e(`ul`,ht,[(h(!0),s(l,null,m(t.links,(t,n)=>(h(),s(`li`,{key:n,class:`truncate`},[e(`a`,{href:t,target:`_blank`,rel:`noopener`},i(t),9,gt)]))),128))])]),_:1},8,[`label`])):o(``,!0),t.images.length?(h(),f(O,{key:4,label:`${t.$t(`webextrator.tab.images`)} (${t.images.length})`,name:`images`},{default:p(()=>[e(`div`,_t,[(h(!0),s(l,null,m(t.images,(e,n)=>(h(),f(E,{key:n,src:e,fit:`cover`,loading:`lazy`,"preview-src-list":t.images,"initial-index":n,"preview-teleported":``,"hide-on-click-modal":``,class:`aspect-square w-full rounded bg-[var(--el-fill-color-light)]`},null,8,[`src`,`preview-src-list`,`initial-index`]))),128))])]),_:1},8,[`label`])):o(``,!0),t.html?(h(),f(O,{key:5,label:t.$t(`webextrator.tab.html`),name:`html`},{default:p(()=>[e(`div`,vt,[a(D,{content:t.html},null,8,[`content`])]),e(`pre`,yt,i(t.html),1)]),_:1},8,[`label`])):o(``,!0),a(O,{label:t.$t(`webextrator.tab.raw`),name:`raw`},{default:p(()=>[e(`div`,bt,[a(D,{content:t.rawPretty},null,8,[`content`])]),e(`pre`,xt,i(t.rawPretty),1)]),_:1},8,[`label`])]),_:1},8,[`modelValue`])])):o(``,!0)])}var Ct=g({name:`WebextratorIndex`,components:{Layout:re,ConfigPanel:He,ResultPanel:
|
|
1
|
+
import"./rolldown-runtime--c01j_DQ.js";import{A as e,C as t,F as n,I as r,Jt as i,L as a,M as o,N as s,S as c,T as l,at as u,it as d,j as f,mt as p,rt as m,tt as h,z as g}from"./vendor-chart-Dw-P17PN.js";import{r as _,t as v}from"./select-CKdhNIc_.js";import{n as y,t as b}from"./tabs-qYktzPOY.js";import{t as x}from"./tooltip-siz_AHre.js";import{t as S}from"./alert-BprQRUmf.js";import{h as C,v as w}from"./models-C3taPMyR.js";import{n as T,r as E}from"./radio-BNhFzeBO.js";import{n as D,t as O}from"./collapse-CHKYZNGx.js";import{t as k}from"./drawer-CFnWJn6T.js";import{t as A}from"./input-number-CfzTTv5K.js";import{t as j}from"./switch-DPLDRwQn.js";import{t as M}from"./clock-BjY8ddGs.js";import{t as N}from"./external-link-BM-fB2LS.js";import{t as P}from"./globe-WZMhuJHT.js";import{t as ee}from"./info-DkDuo54u.js";import{t as te}from"./loader-circle-Bu0zp-P2.js";import{t as F}from"./tag-CdliFlu2.js";import{t as I}from"./wand-sparkles-BJbx6jvi.js";import{t as L}from"./zap-DFLVRbR4.js";import{$a as R,Aa as z,Ga as B,O as V,Pa as H,k as U,kn as W,xn as G}from"./index-Dk3occrO.js";import{t as K}from"./CopyToClipboard-BjRfLoil.js";import{t as q}from"./ServicePricingSummary-DOii-08b.js";var J=z(`signal`,[[`path`,{d:`M2 20h.01`,key:`4haj6o`}],[`path`,{d:`M7 20v-4`,key:`j294jx`}],[`path`,{d:`M12 20v-8`,key:`i3yub9`}],[`path`,{d:`M17 20V8`,key:`1tkaf5`}],[`path`,{d:`M22 4v16`,key:`sih9yq`}]]),Y=g({name:`LayoutWebextrator`,components:{ControlsIcon:z(`sliders-horizontal`,[[`path`,{d:`M10 5H3`,key:`1qgfaw`}],[`path`,{d:`M12 19H3`,key:`yhmn1j`}],[`path`,{d:`M14 3v4`,key:`1sua03`}],[`path`,{d:`M16 17v4`,key:`1q0r14`}],[`path`,{d:`M21 12h-9`,key:`1o4lsq`}],[`path`,{d:`M21 19h-5`,key:`1rlt1p`}],[`path`,{d:`M21 5h-7`,key:`1oszz2`}],[`path`,{d:`M8 10v4`,key:`tgpxqk`}],[`path`,{d:`M8 12H3`,key:`a7s4jb`}]]),ElDrawer:k,ElButton:B},data(){return{drawer:!1}}}),X={class:`main flex flex-row flex-1`},Z={class:`config w-[340px] flex-none h-full overflow-y-auto bg-[var(--app-sidebar-bg)] border-r border-[var(--app-border-subtle)]`},Q={class:`result h-full flex-1 flex flex-col min-w-0 overflow-x-hidden bg-[var(--app-content-bg)]`};function ne(t,n,r,i,o,c){let l=u(`controls-icon`),f=u(`el-button`),m=u(`el-drawer`);return h(),s(`div`,X,[e(`div`,Z,[d(t.$slots,`config`,{},void 0,!0)]),e(`div`,Q,[d(t.$slots,`result`,{},void 0,!0)]),a(f,{circle:``,class:`menu`,"aria-label":t.$t(`common.button.openMenu`),title:t.$t(`common.button.openMenu`),onClick:n[0]||=e=>t.drawer=!0},{default:p(()=>[a(l,{size:`1em`,"aria-hidden":`true`,focusable:`false`})]),_:1},8,[`aria-label`,`title`]),a(m,{modelValue:t.drawer,"onUpdate:modelValue":n[1]||=e=>t.drawer=e,direction:`ltr`,"with-header":!1,size:`340px`,class:`drawer`},{default:p(()=>[d(t.$slots,`config`,{},void 0,!0)]),_:3},8,[`modelValue`])])}var re=U(Y,[[`render`,ne],[`__scopeId`,`data-v-0ca47a5f`]]),ie=g({name:`ModeSelector`,components:{GlobeIcon:P,MagicIcon:I,ElRadioGroup:E,ElRadioButton:T},computed:{value:{get(){return this.$store.state.webextrator?.config?.mode},set(e){this.$store.commit(`webextrator/setConfig`,{...this.$store.state.webextrator?.config,mode:e})}}}}),ae={class:`field`},oe={class:`title font-bold`};function se(t,n,o,c,l,d){let f=u(`magic-icon`),m=u(`el-radio-button`),g=u(`globe-icon`),_=u(`el-radio-group`);return h(),s(`div`,ae,[e(`h2`,oe,i(t.$t(`webextrator.name.mode`)),1),a(_,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,class:`value w-full`},{default:p(()=>[a(m,{label:`extract`,value:`extract`},{default:p(()=>[a(f,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`webextrator.mode.extract`)),1)]),_:1}),a(m,{label:`render`,value:`render`},{default:p(()=>[a(g,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`webextrator.mode.render`)),1)]),_:1})]),_:1},8,[`modelValue`])])}var ce=U(ie,[[`render`,se],[`__scopeId`,`data-v-76c5bea5`]]),le=g({name:`UrlInput`,components:{ElInput:R},emits:[`submit`],computed:{url:{get(){return this.$store.state.webextrator?.config?.url||``},set(e){this.$store.commit(`webextrator/setConfig`,{...this.$store.state.webextrator?.config,url:e})}}},methods:{onEnter(){this.$emit(`submit`)}}}),ue={class:`field`},de={class:`title font-bold`};function fe(n,r,o,l,d,f){let p=u(`el-input`);return h(),s(`div`,ue,[e(`h2`,de,i(n.$t(`webextrator.name.url`)),1),a(p,{modelValue:n.url,"onUpdate:modelValue":r[0]||=e=>n.url=e,type:`textarea`,rows:2,class:`prompt`,placeholder:n.$t(`webextrator.placeholder.url`),onKeydown:c(t(n.onEnter,[`exact`,`prevent`]),[`enter`])},null,8,[`modelValue`,`placeholder`,`onKeydown`])])}var pe=U(le,[[`render`,fe],[`__scopeId`,`data-v-18488009`]]),me=g({name:`ExpectedTypeSelector`,components:{ElSelect:_,ElOption:v},computed:{value:{get(){return this.$store.state.webextrator?.config?.expected_type},set(e){this.$store.commit(`webextrator/setConfig`,{...this.$store.state.webextrator?.config,expected_type:e})}}},mounted(){this.value||=`general`}}),he={class:`field`},ge={class:`title font-bold`};function _e(t,n,r,o,c,l){let d=u(`el-option`),f=u(`el-select`);return h(),s(`div`,he,[e(`h2`,ge,i(t.$t(`webextrator.name.expectedType`)),1),a(f,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,class:`value`},{default:p(()=>[a(d,{value:`general`,label:t.$t(`webextrator.expectedType.general`)},null,8,[`label`]),a(d,{value:`article`,label:t.$t(`webextrator.expectedType.article`)},null,8,[`label`]),a(d,{value:`product`,label:t.$t(`webextrator.expectedType.product`)},null,8,[`label`])]),_:1},8,[`modelValue`])])}var ve=U(me,[[`render`,_e],[`__scopeId`,`data-v-3b572c49`]]),ye=g({name:`LlmToggle`,components:{InfoIcon:ee,ElSwitch:j,ElTooltip:x},computed:{value:{get(){return!!this.$store.state.webextrator?.config?.enable_llm},set(e){this.$store.commit(`webextrator/setConfig`,{...this.$store.state.webextrator?.config,enable_llm:e})}}}}),be={class:`field`},xe={class:`title font-bold`};function Se(t,n,o,c,l,d){let f=u(`info-icon`),m=u(`el-tooltip`),g=u(`el-switch`);return h(),s(`div`,be,[e(`h2`,xe,[r(i(t.$t(`webextrator.name.enableLlm`))+` `,1),a(m,{effect:`dark`,content:t.$t(`webextrator.description.enableLlm`),placement:`top`},{default:p(()=>[a(f,{class:`ml-1 text-[var(--el-text-color-secondary)] text-xs`,size:`1em`,"aria-hidden":`true`,focusable:`false`})]),_:1},8,[`content`])]),a(g,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,class:`value`},null,8,[`modelValue`])])}var Ce=U(ye,[[`render`,Se],[`__scopeId`,`data-v-a0c2f78c`]]),we=[`image`,`font`,`media`,`stylesheet`,`xhr`,`fetch`],Te=g({name:`AdvancedOptions`,components:{ElCollapse:O,ElCollapseItem:D,ElInput:R,ElInputNumber:A,ElSelect:_,ElOption:v},data(){return{active:[]}},computed:{resourceKinds(){return we},waitUntil:{get(){return this.$store.state.webextrator?.config?.wait_until||`networkidle`},set(e){this.commit({wait_until:e})}},waitForSelector:{get(){return this.$store.state.webextrator?.config?.wait_for_selector||``},set(e){this.commit({wait_for_selector:e})}},timeout:{get(){return this.$store.state.webextrator?.config?.timeout??30},set(e){this.commit({timeout:e})}},delay:{get(){return this.$store.state.webextrator?.config?.delay??0},set(e){this.commit({delay:e})}},blockResources:{get(){return this.$store.state.webextrator?.config?.block_resources||[]},set(e){this.commit({block_resources:e})}}},methods:{commit(e){this.$store.commit(`webextrator/setConfig`,{...this.$store.state.webextrator?.config,...e})}}}),Ee={class:`field`},De={class:`sub-title`},Oe={class:`field`},ke={class:`sub-title`},Ae={class:`field`},je={class:`sub-title`},Me={class:`field`},Ne={class:`sub-title`},Pe={class:`field`},Fe={class:`sub-title`};function Ie(t,n,r,o,c,d){let g=u(`el-option`),_=u(`el-select`),v=u(`el-input`),y=u(`el-input-number`),b=u(`el-collapse-item`),x=u(`el-collapse`);return h(),f(x,{modelValue:t.active,"onUpdate:modelValue":n[5]||=e=>t.active=e,class:`advanced`},{default:p(()=>[a(b,{title:t.$t(`webextrator.name.advanced`),name:`advanced`},{default:p(()=>[e(`div`,Ee,[e(`h2`,De,i(t.$t(`webextrator.name.waitUntil`)),1),a(_,{modelValue:t.waitUntil,"onUpdate:modelValue":n[0]||=e=>t.waitUntil=e,class:`value`},{default:p(()=>[a(g,{value:`networkidle`,label:t.$t(`webextrator.waitUntil.networkidle`)},null,8,[`label`]),a(g,{value:`load`,label:t.$t(`webextrator.waitUntil.load`)},null,8,[`label`]),a(g,{value:`domcontentloaded`,label:t.$t(`webextrator.waitUntil.domcontentloaded`)},null,8,[`label`]),a(g,{value:`commit`,label:t.$t(`webextrator.waitUntil.commit`)},null,8,[`label`])]),_:1},8,[`modelValue`])]),e(`div`,Oe,[e(`h2`,ke,i(t.$t(`webextrator.name.waitForSelector`)),1),a(v,{modelValue:t.waitForSelector,"onUpdate:modelValue":n[1]||=e=>t.waitForSelector=e,placeholder:t.$t(`webextrator.placeholder.waitForSelector`)},null,8,[`modelValue`,`placeholder`])]),e(`div`,Ae,[e(`h2`,je,i(t.$t(`webextrator.name.timeout`)),1),a(y,{modelValue:t.timeout,"onUpdate:modelValue":n[2]||=e=>t.timeout=e,min:1,max:120,step:5,"controls-position":`right`,class:`w-full`},null,8,[`modelValue`])]),e(`div`,Me,[e(`h2`,Ne,i(t.$t(`webextrator.name.delay`)),1),a(y,{modelValue:t.delay,"onUpdate:modelValue":n[3]||=e=>t.delay=e,min:0,max:30,step:1,"controls-position":`right`,class:`w-full`},null,8,[`modelValue`])]),e(`div`,Pe,[e(`h2`,Fe,i(t.$t(`webextrator.name.blockResources`)),1),a(_,{modelValue:t.blockResources,"onUpdate:modelValue":n[4]||=e=>t.blockResources=e,multiple:``,"collapse-tags":``,placeholder:t.$t(`webextrator.placeholder.blockResources`),class:`w-full`},{default:p(()=>[(h(!0),s(l,null,m(t.resourceKinds,e=>(h(),f(g,{key:e,label:t.$t(`webextrator.blockResource.${e}`),value:e},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`])])]),_:1},8,[`title`])]),_:1},8,[`modelValue`])}var Le=g({name:`WebextratorConfigPanel`,components:{LightningIcon:L,ElButton:B,ModeSelector:ce,UrlInput:pe,ExpectedTypeSelector:ve,LlmToggle:Ce,AdvancedOptions:U(Te,[[`render`,Ie],[`__scopeId`,`data-v-8f36d2df`]]),ServicePricingSummary:q},emits:[`run`],computed:{config(){return this.$store.state.webextrator?.config},service(){return this.$store.state.webextrator?.service},consumption(){return G(this.config||{},this.service?.cost)},running(){return this.$store.state.webextrator?.status?.run===C.Request},isExtract(){return(this.config?.mode||`extract`)===`extract`},canRun(){let e=(this.config?.url||``).trim();return/^https?:\/\//i.test(e)}},methods:{onRun(){this.canRun&&this.$emit(`run`)}}}),Re={class:`flex flex-col h-full`},ze={class:`flex-1 overflow-y-auto p-5`},Be={class:`flex flex-col items-center justify-center px-5 pb-5`};function Ve(t,n,c,d,f,m){let g=u(`mode-selector`),_=u(`url-input`),v=u(`expected-type-selector`),y=u(`llm-toggle`),b=u(`advanced-options`),x=u(`service-pricing-summary`),S=u(`lightning-icon`),C=u(`el-button`);return h(),s(`div`,Re,[e(`div`,ze,[a(g,{class:`mb-4`}),a(_,{class:`mb-4`,onSubmit:t.onRun},null,8,[`onSubmit`]),t.isExtract?(h(),s(l,{key:0},[a(v,{class:`mb-4`}),a(y,{class:`mb-4`})],64)):o(``,!0),a(b,{class:`mb-4`})]),e(`div`,Be,[a(x,{value:t.consumption,service:t.service},null,8,[`value`,`service`]),a(C,{type:`primary`,class:`w-full`,round:``,loading:t.running,disabled:!t.canRun,onClick:t.onRun},{default:p(()=>[a(S,{class:`mr-2`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(t.isExtract?`webextrator.button.extract`:`webextrator.button.render`)),1)]),_:1},8,[`loading`,`disabled`,`onClick`])])])}var He=U(Le,[[`render`,Ve]]),Ue=e=>!!e&&e.kind!==`render`,We=g({name:`WebextratorResultPanel`,components:{ExternalLinkIcon:N,GlobeIcon:P,LabelIcon:F,LoadingIcon:te,SignalIcon:J,TimeIcon:M,ElAlert:S,ElImage:H,ElTabs:y,ElTabPane:b,CopyToClipboard:K},data(){return{activeTab:`markdown`}},computed:{response(){return this.$store.state.webextrator?.response},running(){return this.$store.state.webextrator?.status?.run===C.Request},data(){return this.response?.data},renderData(){return this.data&&this.data.kind===`render`?this.data:void 0},extractData(){return Ue(this.data)?this.data:void 0},finalUrl(){let e=this.data;return e?.finalUrl||e?.final_url||e?.url},contentTypeLabel(){let e=this.data;return e?.contentType||e?.content_type||e?.expected_type},screenshotSrc(){let e=this.data?.screenshot;if(e)return e.startsWith(`data:`)||e.startsWith(`http`)?e:`data:image/png;base64,${e}`},markdown(){let e=this.data;return e?.markdown||e?.content||``},plainText(){return this.data?.text||``},html(){return this.data?.html||``},links(){return Array.isArray(this.data?.links)?this.data.links:[]},linksPlain(){return this.links.join(`
|
|
2
|
+
`)},images(){return Array.isArray(this.data?.images)?this.data.images:[]},structuredPretty(){return this.extractData?.structured?JSON.stringify(this.extractData.structured,null,2):``},rawPretty(){return this.response?JSON.stringify(this.response,null,2):``},errorMessage(){if(this.response?.success===!1){let e=this.response?.error;return e?.message||e?.code||this.$t(`webextrator.message.failed`)}}},watch:{response:{handler(){this.resetTab()},immediate:!0}},methods:{resetTab(){this.markdown?this.activeTab=`markdown`:this.extractData?.structured?this.activeTab=`structured`:this.plainText?this.activeTab=`text`:this.html?this.activeTab=`html`:this.activeTab=`raw`}}}),Ge={class:`h-full overflow-y-auto p-6`},Ke={key:0,class:`max-w-4xl mx-auto py-4`},qe={class:`flex items-center gap-2 mb-3 text-[var(--el-color-primary)] text-sm`},Je={key:1,class:`flex flex-col items-center justify-center py-24 text-[var(--el-text-color-disabled)]`},Ye={class:`text-base mb-1`},Xe={class:`text-xs opacity-70`},Ze={key:2,class:`max-w-4xl mx-auto py-4`},Qe={class:`text-xs whitespace-pre-wrap break-words`},$e={key:3,class:`max-w-4xl mx-auto`},et={class:`mb-4`},tt={class:`text-xl font-semibold leading-snug mb-1 break-words text-[var(--el-text-color-primary)]`},nt={class:`flex flex-wrap items-center gap-x-3 gap-y-1 text-xs text-[var(--el-text-color-secondary)]`},rt=[`href`],it={key:1},at={key:2},ot={key:3},st={key:0,class:`mt-2 text-sm text-[var(--el-text-color-regular)] leading-relaxed line-clamp-3`},ct={key:0,class:`mb-5`},lt={class:`tab-toolbar`},ut={class:`content-block`},dt={class:`tab-toolbar`},ft={class:`content-block`},$={class:`tab-toolbar`},pt={class:`content-block code`},mt={class:`tab-toolbar`},ht={class:`links-list`},gt=[`href`],_t={class:`grid grid-cols-2 md:grid-cols-3 lg:grid-cols-4 gap-2`},vt={class:`tab-toolbar`},yt={class:`content-block code`},bt={class:`tab-toolbar`},xt={class:`content-block code`};function St(t,c,d,g,_,v){let y=u(`loading-icon`),b=u(`globe-icon`),x=u(`el-alert`),S=u(`external-link-icon`),C=u(`signal-icon`),w=u(`time-icon`),T=u(`label-icon`),E=u(`el-image`),D=u(`copy-to-clipboard`),O=u(`el-tab-pane`),k=u(`el-tabs`);return h(),s(`div`,Ge,[t.running?(h(),s(`div`,Ke,[e(`div`,qe,[a(y,{class:`adc-icon-spin`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),e(`span`,null,i(t.$t(`webextrator.message.running`)),1)]),c[1]||=n(`<div class="mb-6 animate-pulse" data-v-4ec341a6><div class="h-5 w-3/5 rounded bg-[var(--el-fill-color-dark)] mb-2" data-v-4ec341a6></div><div class="h-3 w-2/5 rounded bg-[var(--el-fill-color)] mb-4" data-v-4ec341a6></div><div class="h-64 w-full rounded bg-[var(--el-fill-color)] mb-3" data-v-4ec341a6></div><div class="h-3 w-full rounded bg-[var(--el-fill-color)] mb-1" data-v-4ec341a6></div><div class="h-3 w-5/6 rounded bg-[var(--el-fill-color)] mb-1" data-v-4ec341a6></div><div class="h-3 w-4/6 rounded bg-[var(--el-fill-color)]" data-v-4ec341a6></div></div>`,1)])):!t.response&&!t.errorMessage?(h(),s(`div`,Je,[a(b,{class:`text-6xl mb-4 opacity-30`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),e(`p`,Ye,i(t.$t(`webextrator.description.intro`)),1),e(`p`,Xe,i(t.$t(`webextrator.description.introHint`)),1)])):t.errorMessage?(h(),s(`div`,Ze,[a(x,{type:`error`,closable:!1,"show-icon":``,title:t.$t(`webextrator.message.failed`)},{default:p(()=>[e(`pre`,Qe,i(t.errorMessage),1)]),_:1},8,[`title`])])):t.data?(h(),s(`div`,$e,[e(`header`,et,[e(`h1`,tt,i(t.data.title||t.$t(`webextrator.message.untitled`)),1),e(`div`,nt,[t.finalUrl?(h(),s(`a`,{key:0,href:t.finalUrl,target:`_blank`,rel:`noopener`,class:`hover:underline truncate max-w-[60%]`},[a(S,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(i(t.finalUrl),1)],8,rt)):o(``,!0),t.renderData?.status?(h(),s(`span`,it,[a(C,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(i(t.renderData.status),1)])):o(``,!0),t.response?.elapsed?(h(),s(`span`,at,[a(w,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(i(t.response.elapsed.toFixed(2))+`s `,1)])):o(``,!0),t.contentTypeLabel?(h(),s(`span`,ot,[a(T,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(i(t.contentTypeLabel),1)])):o(``,!0)]),t.extractData?.description?(h(),s(`p`,st,i(t.extractData.description),1)):o(``,!0)]),t.screenshotSrc?(h(),s(`figure`,ct,[a(E,{src:t.screenshotSrc,fit:`contain`,"preview-src-list":[t.screenshotSrc],"preview-teleported":``,"hide-on-click-modal":``,class:`w-full max-h-[480px] rounded border border-[var(--app-border-subtle)] bg-[var(--el-fill-color-light)]`},null,8,[`src`,`preview-src-list`])])):o(``,!0),a(k,{modelValue:t.activeTab,"onUpdate:modelValue":c[0]||=e=>t.activeTab=e,class:`result-tabs`},{default:p(()=>[t.markdown?(h(),f(O,{key:0,label:t.$t(`webextrator.tab.markdown`),name:`markdown`},{default:p(()=>[e(`div`,lt,[a(D,{content:t.markdown},null,8,[`content`])]),e(`pre`,ut,i(t.markdown),1)]),_:1},8,[`label`])):o(``,!0),t.plainText?(h(),f(O,{key:1,label:t.$t(`webextrator.tab.text`),name:`text`},{default:p(()=>[e(`div`,dt,[a(D,{content:t.plainText},null,8,[`content`])]),e(`pre`,ft,i(t.plainText),1)]),_:1},8,[`label`])):o(``,!0),t.extractData?.structured?(h(),f(O,{key:2,label:t.$t(`webextrator.tab.structured`),name:`structured`},{default:p(()=>[e(`div`,$,[a(D,{content:t.structuredPretty},null,8,[`content`])]),e(`pre`,pt,i(t.structuredPretty),1)]),_:1},8,[`label`])):o(``,!0),t.links.length?(h(),f(O,{key:3,label:`${t.$t(`webextrator.tab.links`)} (${t.links.length})`,name:`links`},{default:p(()=>[e(`div`,mt,[a(D,{content:t.linksPlain},null,8,[`content`])]),e(`ul`,ht,[(h(!0),s(l,null,m(t.links,(t,n)=>(h(),s(`li`,{key:n,class:`truncate`},[e(`a`,{href:t,target:`_blank`,rel:`noopener`},i(t),9,gt)]))),128))])]),_:1},8,[`label`])):o(``,!0),t.images.length?(h(),f(O,{key:4,label:`${t.$t(`webextrator.tab.images`)} (${t.images.length})`,name:`images`},{default:p(()=>[e(`div`,_t,[(h(!0),s(l,null,m(t.images,(e,n)=>(h(),f(E,{key:n,src:e,fit:`cover`,loading:`lazy`,"preview-src-list":t.images,"initial-index":n,"preview-teleported":``,"hide-on-click-modal":``,class:`aspect-square w-full rounded bg-[var(--el-fill-color-light)]`},null,8,[`src`,`preview-src-list`,`initial-index`]))),128))])]),_:1},8,[`label`])):o(``,!0),t.html?(h(),f(O,{key:5,label:t.$t(`webextrator.tab.html`),name:`html`},{default:p(()=>[e(`div`,vt,[a(D,{content:t.html},null,8,[`content`])]),e(`pre`,yt,i(t.html),1)]),_:1},8,[`label`])):o(``,!0),a(O,{label:t.$t(`webextrator.tab.raw`),name:`raw`},{default:p(()=>[e(`div`,bt,[a(D,{content:t.rawPretty},null,8,[`content`])]),e(`pre`,xt,i(t.rawPretty),1)]),_:1},8,[`label`])]),_:1},8,[`modelValue`])])):o(``,!0)])}var Ct=g({name:`WebextratorIndex`,components:{Layout:re,ConfigPanel:He,ResultPanel:U(We,[[`render`,St],[`__scopeId`,`data-v-4ec341a6`]])},inject:[`initialized`],async mounted(){await this.$store.dispatch(`webextrator/getService`)},methods:{async onRun(){if(!W())return;let e=this.$store.state.webextrator?.config;if(!e?.url)return;let t=(e.mode||`extract`)===`extract`;w.info(this.$t(t?`webextrator.message.extracting`:`webextrator.message.rendering`));try{await this.$store.dispatch(`webextrator/run`),w.success(this.$t(`webextrator.message.success`))}catch(e){let t=e?.response?.data?.error?.code||e?.response?.data?.code;if(V(e,`webextrator`))return;t===`too_many_requests`?w.error(this.$t(`webextrator.message.busy`)):t===`timeout`?w.error(this.$t(`webextrator.message.timeout`)):t===`antibot_blocked`?w.error(this.$t(`webextrator.message.antibotBlocked`)):w.error(this.$t(`webextrator.message.failed`))}}}});function wt(e,t,n,r,i,o){let s=u(`config-panel`),c=u(`result-panel`),l=u(`layout`);return h(),f(l,null,{config:p(()=>[a(s,{onRun:e.onRun},null,8,[`onRun`])]),result:p(()=>[a(c)]),_:1})}var Tt=U(Ct,[[`render`,wt]]);export{Tt as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import"./rolldown-runtime--c01j_DQ.js";import{A as e,F as t,I as n,Jt as r,L as i,M as a,N as o,T as s,at as c,it as l,j as u,mt as d,rt as f,tt as p,z as m}from"./vendor-chart-Dw-P17PN.js";import{r as h,t as g}from"./select-D9aYzMf6.js";import{h as _,v}from"./models-Cmo-VT-F.js";import{n as y,t as b}from"./collapse-Loa-kWFA.js";import{t as x}from"./drawer-DfXjJO_e.js";import{t as S}from"./circle-question-mark-xfs1rhlS.js";import{t as C}from"./globe-Cs0FMFOk.js";import{t as w}from"./search-BR43rWRH.js";import{Aa as T,Gn as E,O as ee,On as D,Ra as O,Si as k,Wn as te,bn as A,ga as j,ii as M,k as N,oi as P,wi as F}from"./index-C2sgIqPl.js";import{t as I}from"./ServicePricingSummary-D4FVsXlm.js";import{t as L}from"./ScenarioPaymentMode-D4tV55rH.js";var R=m({name:`LayoutSerp`,components:{SearchIcon:w,ElDrawer:x,ElButton:T},data(){return{drawer:!1}}}),z={class:`main flex flex-row flex-1`},B={class:`config w-[320px] flex-none h-full overflow-y-auto bg-[var(--app-sidebar-bg)] border-r border-[var(--app-border-subtle)]`},V={class:`result h-full flex-1 flex flex-col min-w-0 overflow-x-hidden bg-[var(--app-content-bg)]`};function H(t,n,r,a,s,u){let f=c(`search-icon`),m=c(`el-button`),h=c(`el-drawer`);return p(),o(`div`,z,[e(`div`,B,[l(t.$slots,`config`,{},void 0,!0)]),e(`div`,V,[l(t.$slots,`result`,{},void 0,!0)]),i(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:d(()=>[i(f,{size:`1em`,"aria-hidden":`true`,focusable:`false`})]),_:1},8,[`aria-label`,`title`]),i(h,{modelValue:t.drawer,"onUpdate:modelValue":n[1]||=e=>t.drawer=e,direction:`ltr`,"with-header":!1,size:`340px`,class:`drawer`},{default:d(()=>[l(t.$slots,`config`,{},void 0,!0)]),_:3},8,[`modelValue`])])}var U=N(R,[[`render`,H],[`__scopeId`,`data-v-fc67ba0b`]]),W=m({name:`QueryInput`,components:{ElInput:O},computed:{query:{get(){return this.$store.state.serp?.config?.query},set(e){this.$store.commit(`serp/setConfig`,{...this.$store.state.serp?.config,query:e})}}}}),G={class:`field`},K={class:`box`},q={class:`title font-bold`};function J(t,n,a,s,l,u){let d=c(`el-input`);return p(),o(`div`,G,[e(`div`,K,[e(`h2`,q,r(t.$t(`serp.name.query`)),1)]),i(d,{modelValue:t.query,"onUpdate:modelValue":n[0]||=e=>t.query=e,rows:3,type:`textarea`,class:`prompt`,placeholder:t.$t(`serp.placeholder.query`)},null,8,[`modelValue`,`placeholder`])])}var Y=N(W,[[`render`,J],[`__scopeId`,`data-v-3582b195`]]),X=m({name:`TypeSelector`,components:{ElSelect:h,ElOption:g},computed:{value:{get(){return this.$store.state.serp?.config?.type},set(e){this.$store.commit(`serp/setConfig`,{...this.$store.state.serp?.config,type:e})}}},mounted(){this.value||=`search`}}),Z={class:`field`},Q={class:`title font-bold`};function ne(t,n,a,s,l,u){let f=c(`el-option`),m=c(`el-select`);return p(),o(`div`,Z,[e(`h2`,Q,r(t.$t(`serp.name.type`)),1),i(m,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,class:`value`},{default:d(()=>[i(f,{value:`search`,label:t.$t(`serp.type.search`)},null,8,[`label`]),i(f,{value:`images`,label:t.$t(`serp.type.images`)},null,8,[`label`]),i(f,{value:`news`,label:t.$t(`serp.type.news`)},null,8,[`label`]),i(f,{value:`videos`,label:t.$t(`serp.type.videos`)},null,8,[`label`])]),_:1},8,[`modelValue`])])}var re=N(X,[[`render`,ne],[`__scopeId`,`data-v-2913fb62`]]),ie=m({name:`CountryInput`,components:{ElInput:O},computed:{value:{get(){return this.$store.state.serp?.config?.country},set(e){this.$store.commit(`serp/setConfig`,{...this.$store.state.serp?.config,country:e})}}},mounted(){this.value||=`US`}}),ae={class:`field`},oe={class:`title font-bold`};function se(t,n,a,s,l,u){let d=c(`el-input`);return p(),o(`div`,ae,[e(`h2`,oe,r(t.$t(`serp.name.country`)),1),i(d,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,class:`value`,placeholder:t.$t(`serp.placeholder.country`)},null,8,[`modelValue`,`placeholder`])])}var ce=N(ie,[[`render`,se],[`__scopeId`,`data-v-f0672cc6`]]),le=m({name:`LanguageInput`,components:{ElInput:O},computed:{value:{get(){return this.$store.state.serp?.config?.language},set(e){this.$store.commit(`serp/setConfig`,{...this.$store.state.serp?.config,language:e})}}},mounted(){this.value||=`en`}}),ue={class:`field`},de={class:`title font-bold`};function fe(t,n,a,s,l,u){let d=c(`el-input`);return p(),o(`div`,ue,[e(`h2`,de,r(t.$t(`serp.name.language`)),1),i(d,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,class:`value`,placeholder:t.$t(`serp.placeholder.language`)},null,8,[`modelValue`,`placeholder`])])}var pe=m({name:`SearchPanel`,components:{SearchIcon:w,ElButton:T,QueryInput:Y,TypeSelector:re,CountryInput:ce,LanguageInput:N(le,[[`render`,fe],[`__scopeId`,`data-v-dc1c94b7`]]),ServicePricingSummary:I,ScenarioPaymentMode:L},emits:[`search`],data(){return{quoteTimer:0,quoteRunId:0}},computed:{config(){return this.$store.state.serp?.config},consumption(){return A(this.config,this.service?.cost)},service(){return this.$store.state.serp?.service},searching(){return this.$store.state.serp?.status?.search===_.Request},walletMode(){return k()&&F(`serp`).mode===`wallet`}},watch:{walletMode:{handler(e){e&&this.scheduleQuote()},immediate:!0},config:{handler(){this.walletMode&&this.scheduleQuote()},deep:!0}},beforeUnmount(){window.clearTimeout(this.quoteTimer),this.quoteRunId+=1},methods:{scheduleQuote(){window.clearTimeout(this.quoteTimer),this.quoteTimer=window.setTimeout(this.refreshQuote,350)},async refreshQuote(){let e=F(`serp`),t=++this.quoteRunId;e.quoteLoading=!0,e.quoteUsdc=void 0;try{let n=await E.quote(te(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)}},onSearch(){this.$emit(`search`)}}}),me={class:`flex flex-col h-full`},he={class:`flex-1 overflow-y-auto p-5`},ge={class:`flex flex-col items-center justify-center px-5 pb-5`};function _e(t,s,l,f,m,h){let g=c(`query-input`),_=c(`type-selector`),v=c(`country-input`),y=c(`language-input`),b=c(`scenario-payment-mode`),x=c(`service-pricing-summary`),S=c(`search-icon`),C=c(`el-button`);return p(),o(`div`,me,[e(`div`,he,[i(g,{class:`mb-4`}),i(_,{class:`mb-4`}),i(v,{class:`mb-4`}),i(y,{class:`mb-4`})]),e(`div`,ge,[i(b,{scenario:`serp`}),t.walletMode?a(``,!0):(p(),u(x,{key:0,value:t.consumption,service:t.service},null,8,[`value`,`service`])),i(C,{type:`primary`,class:`btn w-full`,round:``,loading:t.searching,onClick:t.onSearch},{default:d(()=>[i(S,{class:`mr-2`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),n(` `+r(t.$t(`serp.button.search`)),1)]),_:1},8,[`loading`,`onClick`])])])}var ve=N(pe,[[`render`,_e]]),ye=m({name:`KnowledgeGraph`,props:{data:{type:Object,required:!0}}}),be={class:`knowledge-graph rounded-xl border border-[var(--el-border-color-lighter)] p-5 bg-[var(--el-fill-color-blank)]`},xe={class:`flex flex-row gap-4`},Se=[`src`,`alt`],Ce={class:`flex-1 min-w-0`},we={key:0,class:`text-xs text-[var(--el-text-color-disabled)] mb-1 uppercase tracking-wide`},Te={class:`text-xl font-bold mb-1.5`},Ee={key:1,class:`text-sm text-[var(--el-text-color-regular)] mb-3 leading-relaxed`},De=[`href`],Oe={key:2,class:`text-sm`},ke={class:`text-[var(--el-text-color-disabled)] flex-none font-medium`},Ae={class:`text-[var(--el-text-color-regular)]`};function je(t,i,c,l,u,d){return p(),o(`div`,be,[e(`div`,xe,[t.data.image_url?(p(),o(`img`,{key:0,src:t.data.image_url,alt:t.data.title,class:`w-28 h-28 rounded-lg object-cover flex-none shadow-sm`},null,8,Se)):a(``,!0),e(`div`,Ce,[t.data.type?(p(),o(`div`,we,r(t.data.type),1)):a(``,!0),e(`h3`,Te,r(t.data.title),1),t.data.description?(p(),o(`p`,Ee,[n(r(t.data.description)+` `,1),t.data.description_link?(p(),o(`a`,{key:0,href:t.data.description_link,target:`_blank`,rel:`noopener noreferrer`,class:`text-[var(--el-color-primary)] hover:underline ml-1`},r(t.data.description_source||`Source`),9,De)):a(``,!0)])):a(``,!0),t.data.attributes&&Object.keys(t.data.attributes).length?(p(),o(`div`,Oe,[(p(!0),o(s,null,f(t.data.attributes,(t,n)=>(p(),o(`div`,{key:n,class:`flex gap-2 mb-1 py-0.5`},[e(`span`,ke,r(n)+`:`,1),e(`span`,Ae,r(t),1)]))),128))])):a(``,!0)])])])}var Me=N(ye,[[`render`,je]]),Ne=m({name:`OrganicResult`,props:{data:{type:Object,required:!0}},data(){return{faviconFailed:!1}},computed:{hostname(){if(!this.data.link)return``;try{return new URL(this.data.link).hostname}catch{return``}},pathname(){if(!this.data.link)return``;try{let e=new URL(this.data.link).pathname;return e===`/`?``:e}catch{return``}},displayUrl(){return this.hostname},faviconUrl(){return this.faviconFailed||!this.hostname?``:`https://www.google.com/s2/favicons?domain=${this.hostname}&sz=32`}},methods:{onFaviconError(e){this.faviconFailed=!0,e.target.style.display=`none`}}}),Pe={class:`organic-result rounded-lg p-4 transition-all duration-200 hover:bg-[var(--el-fill-color-lighter)]`},Fe={key:0,class:`flex items-center gap-2 mb-1.5`},Ie=[`src`,`alt`],Le={class:`text-xs text-[var(--el-text-color-secondary)] truncate`},Re={class:`text-xs text-[var(--el-text-color-disabled)]`},ze=[`href`],Be={key:1,class:`text-xs text-[var(--el-text-color-disabled)] mt-1`},Ve={key:2,class:`text-sm text-[var(--el-text-color-regular)] mt-1.5 leading-relaxed line-clamp-3`},He={key:3,class:`mt-3 flex flex-wrap gap-x-4 gap-y-1`},Ue=[`href`];function We(t,n,i,c,l,u){return p(),o(`div`,Pe,[t.displayUrl?(p(),o(`div`,Fe,[e(`img`,{src:t.faviconUrl,alt:t.hostname,class:`w-4 h-4 rounded-sm flex-none`,loading:`lazy`,onError:n[0]||=(...e)=>t.onFaviconError&&t.onFaviconError(...e)},null,40,Ie),e(`span`,Le,r(t.hostname),1),e(`span`,Re,r(t.pathname),1)])):a(``,!0),e(`a`,{href:t.data.link,target:`_blank`,rel:`noopener noreferrer`,class:`text-base font-semibold text-[var(--el-color-primary)] hover:underline leading-snug block`},r(t.data.title),9,ze),t.data.date?(p(),o(`div`,Be,r(t.data.date),1)):a(``,!0),t.data.snippet?(p(),o(`p`,Ve,r(t.data.snippet),1)):a(``,!0),t.data.sitelinks?.length?(p(),o(`div`,He,[(p(!0),o(s,null,f(t.data.sitelinks,(e,t)=>(p(),o(`a`,{key:t,href:e.link,target:`_blank`,rel:`noopener noreferrer`,class:`text-xs text-[var(--el-color-primary-light-3)] hover:text-[var(--el-color-primary)] hover:underline transition-colors`},r(e.title),9,Ue))),128))])):a(``,!0)])}var Ge=N(Ne,[[`render`,We]]),Ke=m({name:`ImageResults`,props:{data:{type:Array,required:!0}}}),qe={class:`rounded-xl border border-[var(--el-border-color-lighter)] p-5 bg-[var(--el-fill-color-blank)]`},Je={class:`text-base font-bold mb-3`},Ye={class:`grid grid-cols-2 sm:grid-cols-3 md:grid-cols-4 gap-3`},Xe=[`href`],Ze=[`src`,`alt`],Qe={class:`absolute inset-x-0 bottom-0 bg-gradient-to-t from-black/70 to-transparent p-2.5 opacity-0 group-hover:opacity-100 transition-opacity duration-200`},$e={class:`text-xs text-white line-clamp-2`};function et(t,n,i,c,l,u){return p(),o(`div`,qe,[e(`h3`,Je,r(t.$t(`serp.name.imageResults`)),1),e(`div`,Ye,[(p(!0),o(s,null,f(t.data,(t,n)=>(p(),o(`a`,{key:n,href:t.link,target:`_blank`,rel:`noopener noreferrer`,class:`group relative rounded-lg overflow-hidden bg-[var(--el-fill-color-light)] aspect-square`},[t.image_url?(p(),o(`img`,{key:0,src:t.image_url,alt:t.title,class:`w-full h-full object-cover transition-transform duration-300 group-hover:scale-105`,loading:`lazy`},null,8,Ze)):a(``,!0),e(`div`,Qe,[e(`span`,$e,r(t.title),1)])],8,Xe))),128))])])}var tt=N(Ke,[[`render`,et]]),nt=m({name:`VideoResults`,props:{data:{type:Array,required:!0}}}),rt={class:`text-base font-bold mb-3`},it={class:`space-y-4`},at=[`href`],ot={class:`relative flex-shrink-0 w-40 h-24 rounded overflow-hidden bg-gray-100 dark:bg-gray-800`},st=[`src`,`alt`],ct={key:1,class:`absolute bottom-1 right-1 bg-black/80 text-white text-xs px-1 rounded`},lt={class:`flex-1 min-w-0`},ut={class:`text-blue-600 group-hover:underline font-medium line-clamp-2`},dt={class:`text-xs text-gray-400 mt-1`},ft={key:0},pt={key:1},mt={key:2},ht={key:0,class:`text-sm text-gray-600 dark:text-gray-300 mt-1 line-clamp-2`};function gt(t,n,i,c,l,u){return p(),o(`div`,null,[e(`h3`,rt,r(t.$t(`serp.name.videoResults`)),1),e(`div`,it,[(p(!0),o(s,null,f(t.data,(t,n)=>(p(),o(`a`,{key:n,href:t.link,target:`_blank`,rel:`noopener noreferrer`,class:`flex gap-4 group`},[e(`div`,ot,[t.image_url?(p(),o(`img`,{key:0,src:t.image_url,alt:t.title,class:`w-full h-full object-cover`,loading:`lazy`},null,8,st)):a(``,!0),t.duration?(p(),o(`div`,ct,r(t.duration),1)):a(``,!0)]),e(`div`,lt,[e(`div`,ut,r(t.title),1),e(`div`,dt,[t.source?(p(),o(`span`,ft,r(t.source),1)):a(``,!0),t.channel?(p(),o(`span`,pt,` · `+r(t.channel),1)):a(``,!0),t.date?(p(),o(`span`,mt,` · `+r(t.date),1)):a(``,!0)]),t.snippet?(p(),o(`p`,ht,r(t.snippet),1)):a(``,!0)])],8,at))),128))])])}var _t=N(nt,[[`render`,gt]]),vt=m({name:`NewsResults`,props:{data:{type:Array,required:!0}}}),yt={class:`text-base font-bold mb-3`},bt={class:`space-y-4`},xt=[`href`],St={class:`flex-1 min-w-0`},Ct={class:`text-blue-600 group-hover:underline font-medium line-clamp-2`},wt={class:`text-xs text-gray-400 mt-1`},Tt={key:0},Et={key:1},Dt={key:0,class:`text-sm text-gray-600 dark:text-gray-300 mt-1 line-clamp-2`},Ot={key:0,class:`flex-shrink-0 w-24 h-24 rounded overflow-hidden bg-gray-100 dark:bg-gray-800`},kt=[`src`,`alt`];function At(t,n,i,c,l,u){return p(),o(`div`,null,[e(`h3`,yt,r(t.$t(`serp.name.newsResults`)),1),e(`div`,bt,[(p(!0),o(s,null,f(t.data,(t,n)=>(p(),o(`a`,{key:n,href:t.link,target:`_blank`,rel:`noopener noreferrer`,class:`flex gap-4 group`},[e(`div`,St,[e(`div`,Ct,r(t.title),1),e(`div`,wt,[t.source?(p(),o(`span`,Tt,r(t.source),1)):a(``,!0),t.date?(p(),o(`span`,Et,` · `+r(t.date),1)):a(``,!0)]),t.snippet?(p(),o(`p`,Dt,r(t.snippet),1)):a(``,!0)]),t.image_url?(p(),o(`div`,Ot,[e(`img`,{src:t.image_url,alt:t.title,class:`w-full h-full object-cover`,loading:`lazy`},null,8,kt)])):a(``,!0)],8,xt))),128))])])}var jt=N(vt,[[`render`,At]]),Mt=m({name:`PeopleAlsoAsk`,components:{ElCollapse:b,ElCollapseItem:y},props:{data:{type:Array,required:!0}}}),Nt={class:`rounded-xl border border-[var(--el-border-color-lighter)] p-5 bg-[var(--el-fill-color-blank)]`},Pt={class:`text-base font-bold mb-3`},Ft={key:0,class:`text-sm text-[var(--el-text-color-regular)] mb-2 leading-relaxed`},It=[`href`];function Lt(t,n,l,m,h,g){let _=c(`el-collapse-item`),v=c(`el-collapse`);return p(),o(`div`,Nt,[e(`h3`,Pt,r(t.$t(`serp.name.peopleAlsoAsk`)),1),i(v,null,{default:d(()=>[(p(!0),o(s,null,f(t.data,(e,t)=>(p(),u(_,{key:t,title:e.question||e.title||``},{default:d(()=>[e.snippet?(p(),o(`p`,Ft,r(e.snippet),1)):a(``,!0),e.link?(p(),o(`a`,{key:1,href:e.link,target:`_blank`,rel:`noopener noreferrer`,class:`text-xs text-[var(--el-color-primary)] hover:underline`},r(e.title||e.link),9,It)):a(``,!0)]),_:2},1032,[`title`]))),128))]),_:1})])}var Rt=N(Mt,[[`render`,Lt]]),zt=m({name:`RelatedSearches`,components:{SearchIcon:w},props:{data:{type:Array,required:!0}},emits:[`search`],methods:{onSearch(e){e&&this.$emit(`search`,e)}}}),Bt={class:`rounded-xl border border-[var(--el-border-color-lighter)] p-5 bg-[var(--el-fill-color-blank)]`},$={class:`text-base font-bold mb-3`},Vt={class:`flex flex-wrap gap-2`},Ht=[`onClick`];function Ut(t,a,l,u,d,m){let h=c(`search-icon`);return p(),o(`div`,Bt,[e(`h3`,$,r(t.$t(`serp.name.relatedSearches`)),1),e(`div`,Vt,[(p(!0),o(s,null,f(t.data,(e,a)=>(p(),o(`button`,{key:a,class:`inline-flex items-center gap-1.5 px-3 py-1.5 rounded-full text-sm bg-[var(--el-fill-color-light)] text-[var(--el-text-color-regular)] hover:bg-[var(--el-color-primary-light-9)] hover:text-[var(--el-color-primary)] transition-colors cursor-pointer border-none`,onClick:n=>t.onSearch(e.query)},[i(h,{class:`text-xs opacity-50`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),n(` `+r(e.query),1)],8,Ht))),128))])])}var Wt=m({name:`ResultPanel`,components:{GlobeIcon:C,HelpIcon:S,KnowledgeGraph:Me,OrganicResult:Ge,ImageResults:tt,VideoResults:_t,NewsResults:jt,PeopleAlsoAsk:Rt,RelatedSearches:N(zt,[[`render`,Ut]])},emits:[`related-search`],computed:{results(){return this.$store.state.serp?.results},searching(){return this.$store.state.serp?.status?.search===_.Request},noResults(){return this.$store.state.serp?.status?.search===_.Success&&this.results&&!this.results.organic?.length&&!this.results.images?.length&&!this.results.videos?.length&&!this.results.news?.length&&!this.results.knowledge_graph?.title}},methods:{onRelatedSearch(e){this.$emit(`related-search`,e)}}}),Gt={class:`h-full overflow-y-auto p-6`},Kt={key:0,class:`max-w-3xl mx-auto py-8`},qt={key:1,class:`flex flex-col items-center justify-center py-24 text-[var(--el-text-color-disabled)]`},Jt={class:`text-base`},Yt={key:2,class:`max-w-3xl mx-auto`},Xt={key:1,class:`mb-6`},Zt={key:3,class:`flex flex-col items-center justify-center py-24 text-[var(--el-text-color-disabled)]`},Qt={class:`text-base`};function $t(n,l,d,m,h,g){let _=c(`help-icon`),v=c(`knowledge-graph`),y=c(`organic-result`),b=c(`image-results`),x=c(`video-results`),S=c(`news-results`),C=c(`people-also-ask`),w=c(`related-searches`),T=c(`globe-icon`);return p(),o(`div`,Gt,[n.searching?(p(),o(`div`,Kt,[(p(),o(s,null,f(4,n=>e(`div`,{key:n,class:`mb-6 animate-pulse`},[...l[0]||=[t(`<div class="flex items-center gap-2 mb-2"><div class="w-4 h-4 rounded-sm bg-[var(--el-fill-color-darker)]"></div><div class="h-3 w-32 rounded bg-[var(--el-fill-color-darker)]"></div></div><div class="h-4 w-3/4 rounded bg-[var(--el-fill-color-dark)] mb-2"></div><div class="h-3 w-full rounded bg-[var(--el-fill-color)] mb-1"></div><div class="h-3 w-5/6 rounded bg-[var(--el-fill-color)]"></div>`,4)]])),64))])):n.noResults?(p(),o(`div`,qt,[i(_,{class:`text-5xl mb-4 opacity-40`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),e(`p`,Jt,r(n.$t(`serp.message.noResults`)),1)])):n.results?(p(),o(`div`,Yt,[n.results.knowledge_graph?.title?(p(),u(v,{key:0,data:n.results.knowledge_graph,class:`mb-6`},null,8,[`data`])):a(``,!0),n.results.organic?.length?(p(),o(`div`,Xt,[(p(!0),o(s,null,f(n.results.organic,(e,t)=>(p(),u(y,{key:t,data:e,class:`mb-1`},null,8,[`data`]))),128))])):a(``,!0),n.results.images?.length?(p(),u(b,{key:2,data:n.results.images,class:`mb-6`},null,8,[`data`])):a(``,!0),n.results.videos?.length?(p(),u(x,{key:3,data:n.results.videos,class:`mb-6`},null,8,[`data`])):a(``,!0),n.results.news?.length?(p(),u(S,{key:4,data:n.results.news,class:`mb-6`},null,8,[`data`])):a(``,!0),n.results.people_also_ask?.length?(p(),u(C,{key:5,data:n.results.people_also_ask,class:`mb-6`},null,8,[`data`])):a(``,!0),n.results.related_searches?.length?(p(),u(w,{key:6,data:n.results.related_searches,class:`mb-6`,onSearch:n.onRelatedSearch},null,8,[`data`,`onSearch`])):a(``,!0)])):(p(),o(`div`,Zt,[i(T,{class:`text-5xl mb-4 opacity-30`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),e(`p`,Qt,r(n.$t(`serp.description.query`)),1)]))])}var en=m({name:`SerpIndex`,components:{Layout:U,SearchPanel:ve,ResultPanel:N(Wt,[[`render`,$t]])},inject:[`initialized`],computed:{credential(){return this.$store.state.serp?.credential},walletMode(){return k()&&F(`serp`).mode===`wallet`}},async mounted(){await this.onGetService()},methods:{async onGetService(){console.debug(`start onGetService`),await this.$store.dispatch(`serp/getService`),console.debug(`end onGetService`)},async onSearch(){if(!this.$store.state.serp?.config?.query)return;let e;if(this.walletMode){let t=this.getWalletContext();if(!t){v.warning(this.$t(`common.x402Scenario.connectWalletFirst`));return}e={mode:`x402`,x402:{wallet:t,confirm:e=>this.confirmWalletPayment(e),identityToken:this.credential?.token}}}else if(!D())return;v.info(this.$t(`serp.message.searching`));try{await this.$store.dispatch(`serp/search`,e),v.success(this.$t(`serp.message.searchSuccess`))}catch(e){if(e instanceof M||ee(e,`serp`))return;this.walletMode?v.error(`${this.$t(`common.x402Scenario.paymentFailed`)} ${e?.message||``}`.trim()):v.error(this.$t(`serp.message.searchFailed`))}},getWalletContext(){return P(this.$wallet)},async confirmWalletPayment(e){return j.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)},async onRelatedSearch(e){this.$store.commit(`serp/setConfig`,{...this.$store.state.serp?.config,query:e}),await this.onSearch()}}});function tn(e,t,n,r,a,o){let s=c(`search-panel`),l=c(`result-panel`),f=c(`layout`);return p(),u(f,null,{config:d(()=>[i(s,{onSearch:e.onSearch},null,8,[`onSearch`])]),result:d(()=>[i(l,{onRelatedSearch:e.onRelatedSearch},null,8,[`onRelatedSearch`])]),_:1})}var nn=N(en,[[`render`,tn]]);export{nn as default};
|
|
1
|
+
import"./rolldown-runtime--c01j_DQ.js";import{A as e,F as t,I as n,Jt as r,L as i,M as a,N as o,T as s,at as c,it as l,j as u,mt as d,rt as f,tt as p,z as m}from"./vendor-chart-Dw-P17PN.js";import{r as h,t as g}from"./select-CKdhNIc_.js";import{h as _,v}from"./models-C3taPMyR.js";import{n as y,t as b}from"./collapse-CHKYZNGx.js";import{t as x}from"./drawer-CFnWJn6T.js";import{t as S}from"./circle-question-mark-BzjFhHT6.js";import{t as C}from"./globe-WZMhuJHT.js";import{t as w}from"./search-Dw_OWNDF.js";import{$a as T,Ga as E,Gn as ee,Ii as D,Kn as O,O as te,Pi as k,ci as A,ja as j,k as M,kn as N,oi as P,xn as F}from"./index-Dk3occrO.js";import{t as I}from"./ServicePricingSummary-DOii-08b.js";import{t as L}from"./ScenarioPaymentMode-BR4cXZk8.js";var R=m({name:`LayoutSerp`,components:{SearchIcon:w,ElDrawer:x,ElButton:E},data(){return{drawer:!1}}}),z={class:`main flex flex-row flex-1`},B={class:`config w-[320px] flex-none h-full overflow-y-auto bg-[var(--app-sidebar-bg)] border-r border-[var(--app-border-subtle)]`},V={class:`result h-full flex-1 flex flex-col min-w-0 overflow-x-hidden bg-[var(--app-content-bg)]`};function H(t,n,r,a,s,u){let f=c(`search-icon`),m=c(`el-button`),h=c(`el-drawer`);return p(),o(`div`,z,[e(`div`,B,[l(t.$slots,`config`,{},void 0,!0)]),e(`div`,V,[l(t.$slots,`result`,{},void 0,!0)]),i(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:d(()=>[i(f,{size:`1em`,"aria-hidden":`true`,focusable:`false`})]),_:1},8,[`aria-label`,`title`]),i(h,{modelValue:t.drawer,"onUpdate:modelValue":n[1]||=e=>t.drawer=e,direction:`ltr`,"with-header":!1,size:`340px`,class:`drawer`},{default:d(()=>[l(t.$slots,`config`,{},void 0,!0)]),_:3},8,[`modelValue`])])}var U=M(R,[[`render`,H],[`__scopeId`,`data-v-fc67ba0b`]]),W=m({name:`QueryInput`,components:{ElInput:T},computed:{query:{get(){return this.$store.state.serp?.config?.query},set(e){this.$store.commit(`serp/setConfig`,{...this.$store.state.serp?.config,query:e})}}}}),G={class:`field`},K={class:`box`},q={class:`title font-bold`};function J(t,n,a,s,l,u){let d=c(`el-input`);return p(),o(`div`,G,[e(`div`,K,[e(`h2`,q,r(t.$t(`serp.name.query`)),1)]),i(d,{modelValue:t.query,"onUpdate:modelValue":n[0]||=e=>t.query=e,rows:3,type:`textarea`,class:`prompt`,placeholder:t.$t(`serp.placeholder.query`)},null,8,[`modelValue`,`placeholder`])])}var Y=M(W,[[`render`,J],[`__scopeId`,`data-v-3582b195`]]),X=m({name:`TypeSelector`,components:{ElSelect:h,ElOption:g},computed:{value:{get(){return this.$store.state.serp?.config?.type},set(e){this.$store.commit(`serp/setConfig`,{...this.$store.state.serp?.config,type:e})}}},mounted(){this.value||=`search`}}),Z={class:`field`},Q={class:`title font-bold`};function ne(t,n,a,s,l,u){let f=c(`el-option`),m=c(`el-select`);return p(),o(`div`,Z,[e(`h2`,Q,r(t.$t(`serp.name.type`)),1),i(m,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,class:`value`},{default:d(()=>[i(f,{value:`search`,label:t.$t(`serp.type.search`)},null,8,[`label`]),i(f,{value:`images`,label:t.$t(`serp.type.images`)},null,8,[`label`]),i(f,{value:`news`,label:t.$t(`serp.type.news`)},null,8,[`label`]),i(f,{value:`videos`,label:t.$t(`serp.type.videos`)},null,8,[`label`])]),_:1},8,[`modelValue`])])}var re=M(X,[[`render`,ne],[`__scopeId`,`data-v-2913fb62`]]),ie=m({name:`CountryInput`,components:{ElInput:T},computed:{value:{get(){return this.$store.state.serp?.config?.country},set(e){this.$store.commit(`serp/setConfig`,{...this.$store.state.serp?.config,country:e})}}},mounted(){this.value||=`US`}}),ae={class:`field`},oe={class:`title font-bold`};function se(t,n,a,s,l,u){let d=c(`el-input`);return p(),o(`div`,ae,[e(`h2`,oe,r(t.$t(`serp.name.country`)),1),i(d,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,class:`value`,placeholder:t.$t(`serp.placeholder.country`)},null,8,[`modelValue`,`placeholder`])])}var ce=M(ie,[[`render`,se],[`__scopeId`,`data-v-f0672cc6`]]),le=m({name:`LanguageInput`,components:{ElInput:T},computed:{value:{get(){return this.$store.state.serp?.config?.language},set(e){this.$store.commit(`serp/setConfig`,{...this.$store.state.serp?.config,language:e})}}},mounted(){this.value||=`en`}}),ue={class:`field`},de={class:`title font-bold`};function fe(t,n,a,s,l,u){let d=c(`el-input`);return p(),o(`div`,ue,[e(`h2`,de,r(t.$t(`serp.name.language`)),1),i(d,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,class:`value`,placeholder:t.$t(`serp.placeholder.language`)},null,8,[`modelValue`,`placeholder`])])}var pe=m({name:`SearchPanel`,components:{SearchIcon:w,ElButton:E,QueryInput:Y,TypeSelector:re,CountryInput:ce,LanguageInput:M(le,[[`render`,fe],[`__scopeId`,`data-v-dc1c94b7`]]),ServicePricingSummary:I,ScenarioPaymentMode:L},emits:[`search`],data(){return{quoteTimer:0,quoteRunId:0}},computed:{config(){return this.$store.state.serp?.config},consumption(){return F(this.config,this.service?.cost)},service(){return this.$store.state.serp?.service},searching(){return this.$store.state.serp?.status?.search===_.Request},walletMode(){return k()&&D(`serp`).mode===`wallet`}},watch:{walletMode:{handler(e){e&&this.scheduleQuote()},immediate:!0},config:{handler(){this.walletMode&&this.scheduleQuote()},deep:!0}},beforeUnmount(){window.clearTimeout(this.quoteTimer),this.quoteRunId+=1},methods:{scheduleQuote(){window.clearTimeout(this.quoteTimer),this.quoteTimer=window.setTimeout(this.refreshQuote,350)},async refreshQuote(){let e=D(`serp`),t=++this.quoteRunId;e.quoteLoading=!0,e.quoteUsdc=void 0;try{let n=await O.quote(ee(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)}},onSearch(){this.$emit(`search`)}}}),me={class:`flex flex-col h-full`},he={class:`flex-1 overflow-y-auto p-5`},ge={class:`flex flex-col items-center justify-center px-5 pb-5`};function _e(t,s,l,f,m,h){let g=c(`query-input`),_=c(`type-selector`),v=c(`country-input`),y=c(`language-input`),b=c(`scenario-payment-mode`),x=c(`service-pricing-summary`),S=c(`search-icon`),C=c(`el-button`);return p(),o(`div`,me,[e(`div`,he,[i(g,{class:`mb-4`}),i(_,{class:`mb-4`}),i(v,{class:`mb-4`}),i(y,{class:`mb-4`})]),e(`div`,ge,[i(b,{scenario:`serp`}),t.walletMode?a(``,!0):(p(),u(x,{key:0,value:t.consumption,service:t.service},null,8,[`value`,`service`])),i(C,{type:`primary`,class:`btn w-full`,round:``,loading:t.searching,onClick:t.onSearch},{default:d(()=>[i(S,{class:`mr-2`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),n(` `+r(t.$t(`serp.button.search`)),1)]),_:1},8,[`loading`,`onClick`])])])}var ve=M(pe,[[`render`,_e]]),ye=m({name:`KnowledgeGraph`,props:{data:{type:Object,required:!0}}}),be={class:`knowledge-graph rounded-xl border border-[var(--el-border-color-lighter)] p-5 bg-[var(--el-fill-color-blank)]`},xe={class:`flex flex-row gap-4`},Se=[`src`,`alt`],Ce={class:`flex-1 min-w-0`},we={key:0,class:`text-xs text-[var(--el-text-color-disabled)] mb-1 uppercase tracking-wide`},Te={class:`text-xl font-bold mb-1.5`},Ee={key:1,class:`text-sm text-[var(--el-text-color-regular)] mb-3 leading-relaxed`},De=[`href`],Oe={key:2,class:`text-sm`},ke={class:`text-[var(--el-text-color-disabled)] flex-none font-medium`},Ae={class:`text-[var(--el-text-color-regular)]`};function je(t,i,c,l,u,d){return p(),o(`div`,be,[e(`div`,xe,[t.data.image_url?(p(),o(`img`,{key:0,src:t.data.image_url,alt:t.data.title,class:`w-28 h-28 rounded-lg object-cover flex-none shadow-sm`},null,8,Se)):a(``,!0),e(`div`,Ce,[t.data.type?(p(),o(`div`,we,r(t.data.type),1)):a(``,!0),e(`h3`,Te,r(t.data.title),1),t.data.description?(p(),o(`p`,Ee,[n(r(t.data.description)+` `,1),t.data.description_link?(p(),o(`a`,{key:0,href:t.data.description_link,target:`_blank`,rel:`noopener noreferrer`,class:`text-[var(--el-color-primary)] hover:underline ml-1`},r(t.data.description_source||`Source`),9,De)):a(``,!0)])):a(``,!0),t.data.attributes&&Object.keys(t.data.attributes).length?(p(),o(`div`,Oe,[(p(!0),o(s,null,f(t.data.attributes,(t,n)=>(p(),o(`div`,{key:n,class:`flex gap-2 mb-1 py-0.5`},[e(`span`,ke,r(n)+`:`,1),e(`span`,Ae,r(t),1)]))),128))])):a(``,!0)])])])}var Me=M(ye,[[`render`,je]]),Ne=m({name:`OrganicResult`,props:{data:{type:Object,required:!0}},data(){return{faviconFailed:!1}},computed:{hostname(){if(!this.data.link)return``;try{return new URL(this.data.link).hostname}catch{return``}},pathname(){if(!this.data.link)return``;try{let e=new URL(this.data.link).pathname;return e===`/`?``:e}catch{return``}},displayUrl(){return this.hostname},faviconUrl(){return this.faviconFailed||!this.hostname?``:`https://www.google.com/s2/favicons?domain=${this.hostname}&sz=32`}},methods:{onFaviconError(e){this.faviconFailed=!0,e.target.style.display=`none`}}}),Pe={class:`organic-result rounded-lg p-4 transition-all duration-200 hover:bg-[var(--el-fill-color-lighter)]`},Fe={key:0,class:`flex items-center gap-2 mb-1.5`},Ie=[`src`,`alt`],Le={class:`text-xs text-[var(--el-text-color-secondary)] truncate`},Re={class:`text-xs text-[var(--el-text-color-disabled)]`},ze=[`href`],Be={key:1,class:`text-xs text-[var(--el-text-color-disabled)] mt-1`},Ve={key:2,class:`text-sm text-[var(--el-text-color-regular)] mt-1.5 leading-relaxed line-clamp-3`},He={key:3,class:`mt-3 flex flex-wrap gap-x-4 gap-y-1`},Ue=[`href`];function We(t,n,i,c,l,u){return p(),o(`div`,Pe,[t.displayUrl?(p(),o(`div`,Fe,[e(`img`,{src:t.faviconUrl,alt:t.hostname,class:`w-4 h-4 rounded-sm flex-none`,loading:`lazy`,onError:n[0]||=(...e)=>t.onFaviconError&&t.onFaviconError(...e)},null,40,Ie),e(`span`,Le,r(t.hostname),1),e(`span`,Re,r(t.pathname),1)])):a(``,!0),e(`a`,{href:t.data.link,target:`_blank`,rel:`noopener noreferrer`,class:`text-base font-semibold text-[var(--el-color-primary)] hover:underline leading-snug block`},r(t.data.title),9,ze),t.data.date?(p(),o(`div`,Be,r(t.data.date),1)):a(``,!0),t.data.snippet?(p(),o(`p`,Ve,r(t.data.snippet),1)):a(``,!0),t.data.sitelinks?.length?(p(),o(`div`,He,[(p(!0),o(s,null,f(t.data.sitelinks,(e,t)=>(p(),o(`a`,{key:t,href:e.link,target:`_blank`,rel:`noopener noreferrer`,class:`text-xs text-[var(--el-color-primary-light-3)] hover:text-[var(--el-color-primary)] hover:underline transition-colors`},r(e.title),9,Ue))),128))])):a(``,!0)])}var Ge=M(Ne,[[`render`,We]]),Ke=m({name:`ImageResults`,props:{data:{type:Array,required:!0}}}),qe={class:`rounded-xl border border-[var(--el-border-color-lighter)] p-5 bg-[var(--el-fill-color-blank)]`},Je={class:`text-base font-bold mb-3`},Ye={class:`grid grid-cols-2 sm:grid-cols-3 md:grid-cols-4 gap-3`},Xe=[`href`],Ze=[`src`,`alt`],Qe={class:`absolute inset-x-0 bottom-0 bg-gradient-to-t from-black/70 to-transparent p-2.5 opacity-0 group-hover:opacity-100 transition-opacity duration-200`},$e={class:`text-xs text-white line-clamp-2`};function et(t,n,i,c,l,u){return p(),o(`div`,qe,[e(`h3`,Je,r(t.$t(`serp.name.imageResults`)),1),e(`div`,Ye,[(p(!0),o(s,null,f(t.data,(t,n)=>(p(),o(`a`,{key:n,href:t.link,target:`_blank`,rel:`noopener noreferrer`,class:`group relative rounded-lg overflow-hidden bg-[var(--el-fill-color-light)] aspect-square`},[t.image_url?(p(),o(`img`,{key:0,src:t.image_url,alt:t.title,class:`w-full h-full object-cover transition-transform duration-300 group-hover:scale-105`,loading:`lazy`},null,8,Ze)):a(``,!0),e(`div`,Qe,[e(`span`,$e,r(t.title),1)])],8,Xe))),128))])])}var tt=M(Ke,[[`render`,et]]),nt=m({name:`VideoResults`,props:{data:{type:Array,required:!0}}}),rt={class:`text-base font-bold mb-3`},it={class:`space-y-4`},at=[`href`],ot={class:`relative flex-shrink-0 w-40 h-24 rounded overflow-hidden bg-gray-100 dark:bg-gray-800`},st=[`src`,`alt`],ct={key:1,class:`absolute bottom-1 right-1 bg-black/80 text-white text-xs px-1 rounded`},lt={class:`flex-1 min-w-0`},ut={class:`text-blue-600 group-hover:underline font-medium line-clamp-2`},dt={class:`text-xs text-gray-400 mt-1`},ft={key:0},pt={key:1},mt={key:2},ht={key:0,class:`text-sm text-gray-600 dark:text-gray-300 mt-1 line-clamp-2`};function gt(t,n,i,c,l,u){return p(),o(`div`,null,[e(`h3`,rt,r(t.$t(`serp.name.videoResults`)),1),e(`div`,it,[(p(!0),o(s,null,f(t.data,(t,n)=>(p(),o(`a`,{key:n,href:t.link,target:`_blank`,rel:`noopener noreferrer`,class:`flex gap-4 group`},[e(`div`,ot,[t.image_url?(p(),o(`img`,{key:0,src:t.image_url,alt:t.title,class:`w-full h-full object-cover`,loading:`lazy`},null,8,st)):a(``,!0),t.duration?(p(),o(`div`,ct,r(t.duration),1)):a(``,!0)]),e(`div`,lt,[e(`div`,ut,r(t.title),1),e(`div`,dt,[t.source?(p(),o(`span`,ft,r(t.source),1)):a(``,!0),t.channel?(p(),o(`span`,pt,` · `+r(t.channel),1)):a(``,!0),t.date?(p(),o(`span`,mt,` · `+r(t.date),1)):a(``,!0)]),t.snippet?(p(),o(`p`,ht,r(t.snippet),1)):a(``,!0)])],8,at))),128))])])}var _t=M(nt,[[`render`,gt]]),vt=m({name:`NewsResults`,props:{data:{type:Array,required:!0}}}),yt={class:`text-base font-bold mb-3`},bt={class:`space-y-4`},xt=[`href`],St={class:`flex-1 min-w-0`},Ct={class:`text-blue-600 group-hover:underline font-medium line-clamp-2`},wt={class:`text-xs text-gray-400 mt-1`},Tt={key:0},Et={key:1},Dt={key:0,class:`text-sm text-gray-600 dark:text-gray-300 mt-1 line-clamp-2`},Ot={key:0,class:`flex-shrink-0 w-24 h-24 rounded overflow-hidden bg-gray-100 dark:bg-gray-800`},kt=[`src`,`alt`];function At(t,n,i,c,l,u){return p(),o(`div`,null,[e(`h3`,yt,r(t.$t(`serp.name.newsResults`)),1),e(`div`,bt,[(p(!0),o(s,null,f(t.data,(t,n)=>(p(),o(`a`,{key:n,href:t.link,target:`_blank`,rel:`noopener noreferrer`,class:`flex gap-4 group`},[e(`div`,St,[e(`div`,Ct,r(t.title),1),e(`div`,wt,[t.source?(p(),o(`span`,Tt,r(t.source),1)):a(``,!0),t.date?(p(),o(`span`,Et,` · `+r(t.date),1)):a(``,!0)]),t.snippet?(p(),o(`p`,Dt,r(t.snippet),1)):a(``,!0)]),t.image_url?(p(),o(`div`,Ot,[e(`img`,{src:t.image_url,alt:t.title,class:`w-full h-full object-cover`,loading:`lazy`},null,8,kt)])):a(``,!0)],8,xt))),128))])])}var jt=M(vt,[[`render`,At]]),Mt=m({name:`PeopleAlsoAsk`,components:{ElCollapse:b,ElCollapseItem:y},props:{data:{type:Array,required:!0}}}),Nt={class:`rounded-xl border border-[var(--el-border-color-lighter)] p-5 bg-[var(--el-fill-color-blank)]`},Pt={class:`text-base font-bold mb-3`},Ft={key:0,class:`text-sm text-[var(--el-text-color-regular)] mb-2 leading-relaxed`},It=[`href`];function Lt(t,n,l,m,h,g){let _=c(`el-collapse-item`),v=c(`el-collapse`);return p(),o(`div`,Nt,[e(`h3`,Pt,r(t.$t(`serp.name.peopleAlsoAsk`)),1),i(v,null,{default:d(()=>[(p(!0),o(s,null,f(t.data,(e,t)=>(p(),u(_,{key:t,title:e.question||e.title||``},{default:d(()=>[e.snippet?(p(),o(`p`,Ft,r(e.snippet),1)):a(``,!0),e.link?(p(),o(`a`,{key:1,href:e.link,target:`_blank`,rel:`noopener noreferrer`,class:`text-xs text-[var(--el-color-primary)] hover:underline`},r(e.title||e.link),9,It)):a(``,!0)]),_:2},1032,[`title`]))),128))]),_:1})])}var Rt=M(Mt,[[`render`,Lt]]),zt=m({name:`RelatedSearches`,components:{SearchIcon:w},props:{data:{type:Array,required:!0}},emits:[`search`],methods:{onSearch(e){e&&this.$emit(`search`,e)}}}),Bt={class:`rounded-xl border border-[var(--el-border-color-lighter)] p-5 bg-[var(--el-fill-color-blank)]`},$={class:`text-base font-bold mb-3`},Vt={class:`flex flex-wrap gap-2`},Ht=[`onClick`];function Ut(t,a,l,u,d,m){let h=c(`search-icon`);return p(),o(`div`,Bt,[e(`h3`,$,r(t.$t(`serp.name.relatedSearches`)),1),e(`div`,Vt,[(p(!0),o(s,null,f(t.data,(e,a)=>(p(),o(`button`,{key:a,class:`inline-flex items-center gap-1.5 px-3 py-1.5 rounded-full text-sm bg-[var(--el-fill-color-light)] text-[var(--el-text-color-regular)] hover:bg-[var(--el-color-primary-light-9)] hover:text-[var(--el-color-primary)] transition-colors cursor-pointer border-none`,onClick:n=>t.onSearch(e.query)},[i(h,{class:`text-xs opacity-50`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),n(` `+r(e.query),1)],8,Ht))),128))])])}var Wt=m({name:`ResultPanel`,components:{GlobeIcon:C,HelpIcon:S,KnowledgeGraph:Me,OrganicResult:Ge,ImageResults:tt,VideoResults:_t,NewsResults:jt,PeopleAlsoAsk:Rt,RelatedSearches:M(zt,[[`render`,Ut]])},emits:[`related-search`],computed:{results(){return this.$store.state.serp?.results},searching(){return this.$store.state.serp?.status?.search===_.Request},noResults(){return this.$store.state.serp?.status?.search===_.Success&&this.results&&!this.results.organic?.length&&!this.results.images?.length&&!this.results.videos?.length&&!this.results.news?.length&&!this.results.knowledge_graph?.title}},methods:{onRelatedSearch(e){this.$emit(`related-search`,e)}}}),Gt={class:`h-full overflow-y-auto p-6`},Kt={key:0,class:`max-w-3xl mx-auto py-8`},qt={key:1,class:`flex flex-col items-center justify-center py-24 text-[var(--el-text-color-disabled)]`},Jt={class:`text-base`},Yt={key:2,class:`max-w-3xl mx-auto`},Xt={key:1,class:`mb-6`},Zt={key:3,class:`flex flex-col items-center justify-center py-24 text-[var(--el-text-color-disabled)]`},Qt={class:`text-base`};function $t(n,l,d,m,h,g){let _=c(`help-icon`),v=c(`knowledge-graph`),y=c(`organic-result`),b=c(`image-results`),x=c(`video-results`),S=c(`news-results`),C=c(`people-also-ask`),w=c(`related-searches`),T=c(`globe-icon`);return p(),o(`div`,Gt,[n.searching?(p(),o(`div`,Kt,[(p(),o(s,null,f(4,n=>e(`div`,{key:n,class:`mb-6 animate-pulse`},[...l[0]||=[t(`<div class="flex items-center gap-2 mb-2"><div class="w-4 h-4 rounded-sm bg-[var(--el-fill-color-darker)]"></div><div class="h-3 w-32 rounded bg-[var(--el-fill-color-darker)]"></div></div><div class="h-4 w-3/4 rounded bg-[var(--el-fill-color-dark)] mb-2"></div><div class="h-3 w-full rounded bg-[var(--el-fill-color)] mb-1"></div><div class="h-3 w-5/6 rounded bg-[var(--el-fill-color)]"></div>`,4)]])),64))])):n.noResults?(p(),o(`div`,qt,[i(_,{class:`text-5xl mb-4 opacity-40`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),e(`p`,Jt,r(n.$t(`serp.message.noResults`)),1)])):n.results?(p(),o(`div`,Yt,[n.results.knowledge_graph?.title?(p(),u(v,{key:0,data:n.results.knowledge_graph,class:`mb-6`},null,8,[`data`])):a(``,!0),n.results.organic?.length?(p(),o(`div`,Xt,[(p(!0),o(s,null,f(n.results.organic,(e,t)=>(p(),u(y,{key:t,data:e,class:`mb-1`},null,8,[`data`]))),128))])):a(``,!0),n.results.images?.length?(p(),u(b,{key:2,data:n.results.images,class:`mb-6`},null,8,[`data`])):a(``,!0),n.results.videos?.length?(p(),u(x,{key:3,data:n.results.videos,class:`mb-6`},null,8,[`data`])):a(``,!0),n.results.news?.length?(p(),u(S,{key:4,data:n.results.news,class:`mb-6`},null,8,[`data`])):a(``,!0),n.results.people_also_ask?.length?(p(),u(C,{key:5,data:n.results.people_also_ask,class:`mb-6`},null,8,[`data`])):a(``,!0),n.results.related_searches?.length?(p(),u(w,{key:6,data:n.results.related_searches,class:`mb-6`,onSearch:n.onRelatedSearch},null,8,[`data`,`onSearch`])):a(``,!0)])):(p(),o(`div`,Zt,[i(T,{class:`text-5xl mb-4 opacity-30`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),e(`p`,Qt,r(n.$t(`serp.description.query`)),1)]))])}var en=m({name:`SerpIndex`,components:{Layout:U,SearchPanel:ve,ResultPanel:M(Wt,[[`render`,$t]])},inject:[`initialized`],computed:{credential(){return this.$store.state.serp?.credential},walletMode(){return k()&&D(`serp`).mode===`wallet`}},async mounted(){await this.onGetService()},methods:{async onGetService(){console.debug(`start onGetService`),await this.$store.dispatch(`serp/getService`),console.debug(`end onGetService`)},async onSearch(){if(!this.$store.state.serp?.config?.query)return;let e;if(this.walletMode){let t=this.getWalletContext();if(!t){v.warning(this.$t(`common.x402Scenario.connectWalletFirst`));return}e={mode:`x402`,x402:{wallet:t,confirm:e=>this.confirmWalletPayment(e),identityToken:this.credential?.token}}}else if(!N())return;v.info(this.$t(`serp.message.searching`));try{await this.$store.dispatch(`serp/search`,e),v.success(this.$t(`serp.message.searchSuccess`))}catch(e){if(e instanceof P||te(e,`serp`))return;this.walletMode?v.error(this.$t(`common.x402Scenario.paymentFailed`)):v.error(this.$t(`serp.message.searchFailed`))}},getWalletContext(){return A(this.$wallet)},async confirmWalletPayment(e){return j.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)},async onRelatedSearch(e){this.$store.commit(`serp/setConfig`,{...this.$store.state.serp?.config,query:e}),await this.onSearch()}}});function tn(e,t,n,r,a,o){let s=c(`search-panel`),l=c(`result-panel`),f=c(`layout`);return p(),u(f,null,{config:d(()=>[i(s,{onSearch:e.onSearch},null,8,[`onSearch`])]),result:d(()=>[i(l,{onRelatedSearch:e.onRelatedSearch},null,8,[`onRelatedSearch`])]),_:1})}var nn=M(en,[[`render`,tn]]);export{nn as default};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import"./rolldown-runtime--c01j_DQ.js";import{A as e,C as t,Gt as n,I as r,Jt as i,L as a,M as o,N as s,T as c,at as l,ht as u,it as d,j as f,mt as p,qt as m,rt as h,tt as g,x as _,z as v}from"./vendor-chart-Dw-P17PN.js";import{t as y}from"./upload-86r_qBlw.js";import{t as b}from"./tooltip-siz_AHre.js";import{t as x}from"./alert-BprQRUmf.js";import{h as S,v as C}from"./models-C3taPMyR.js";import{t as w}from"./drawer-CFnWJn6T.js";import{t as T}from"./box-BDDWxmaE.js";import{t as E}from"./clock-BjY8ddGs.js";import{a as D,i as O,n as k,o as A,r as j,s as M,t as ee}from"./pagination-Ct9iwsuK.js";import{t as N}from"./info-DkDuo54u.js";import{t as te}from"./trash-2-BD_rYfpa.js";import{t as ne}from"./triangle-alert-DHBBLtTd.js";import{t as P}from"./upload-B-5lkMRH.js";import{t as F}from"./wand-sparkles-BJbx6jvi.js";import{At as I,Dt as L,Et as re,Mt as ie,jt as ae,kt as oe}from"./constants-BMkG7xao.js";import{$ as R,Da as z,Ga as B,Ii as V,J as H,Jn as U,O as W,Pi as G,Q as K,X as q,Xi as se,Y as ce,Z as le,ci as ue,et as de,ja as J,k as Y,kn as fe,nt as pe,oi as me,qn as X,tt as Z,xn as he}from"./index-Dk3occrO.js";import{t as ge}from"./CopyToClipboard-BjRfLoil.js";import{t as _e}from"./ReportButton-lzZe3i6C.js";import{t as ve}from"./FilePreview-CgYU_Gze.js";import{t as Q}from"./ImagePreview-aPBlpOJ8.js";import{n as ye}from"./taskDrawerMixin-DyAUhFEq.js";import{t as be}from"./ServicePricingSummary-DOii-08b.js";import{t as xe}from"./VideoPlayer-Dc-1lN9r.js";import{t as Se}from"./ScenarioPaymentMode-BR4cXZk8.js";import{t as Ce}from"./ApiCodeButton-DSQPf-rd.js";import{t as we}from"./BotPlaceholder-DgI03cxu.js";var Te=v({name:`LayoutOmni`,components:{MagicIcon:F,ElDrawer:w,ElButton:B},mixins:[ye]}),Ee={class:`main flex flex-row flex-1`},De={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)]`},Oe={class:`result h-full p-6 flex-1 flex flex-col min-w-0 overflow-x-hidden bg-[var(--app-content-bg)]`};function ke(t,n,r,i,o,c){let f=l(`magic-icon`),m=l(`el-button`),h=l(`el-drawer`);return g(),s(`div`,Ee,[e(`div`,De,[d(t.$slots,`config`,{},void 0,!0)]),e(`div`,Oe,[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 Ae=Y(Te,[[`render`,ke],[`__scopeId`,`data-v-b76ffabf`]]),je=v({name:`OmniPromptInput`,components:{PromptTextarea:O},computed:{prompt:{get(){return this.$store.state.omni?.config?.prompt},set(e){this.$store.commit(`omni/setConfig`,{...this.$store.state.omni?.config,prompt:e})}}},mounted(){this.prompt||=``}});function Me(e,t,n,r,i,a){let o=l(`prompt-textarea`);return g(),f(o,{modelValue:e.prompt,"onUpdate:modelValue":t[0]||=t=>e.prompt=t,title:e.$t(`omni.name.prompt`),info:e.$t(`omni.description.prompt`),placeholder:e.$t(`omni.placeholder.prompt`),"min-rows":5},null,8,[`modelValue`,`title`,`info`,`placeholder`])}var Ne=Y(je,[[`render`,Me]]),Pe=v({name:`OmniResolutionSelector`,components:{InfoIcon:D},data(){return{options:[{value:ie,label:`720p`},{value:ae,label:`1080p`}]}},computed:{value:{get(){return this.$store.state.omni?.config?.resolution},set(e){this.$store.commit(`omni/setConfig`,{...this.$store.state.omni?.config,resolution:e})}}},mounted(){this.value||=L}}),Fe={class:`resolution`},Ie={class:`header`},Le={class:`title font-bold`},Re={class:`items`},ze=[`onClick`];function Be(t,r,o,u,d,f){let p=l(`info-icon`);return g(),s(`div`,Fe,[e(`div`,Ie,[e(`h2`,Le,i(t.$t(`omni.name.resolution`)),1),a(p,{content:t.$t(`omni.description.resolution`),class:`info`},null,8,[`content`])]),e(`div`,Re,[(g(!0),s(c,null,h(t.options,e=>(g(),s(`div`,{key:e.value,class:n([`item`,{active:t.value===e.value}]),onClick:n=>t.value=e.value},i(e.label),11,ze))),128))])])}var Ve=Y(Pe,[[`render`,Be],[`__scopeId`,`data-v-1f9abe29`]]),He=v({name:`OmniRatioSelector`,components:{InfoIcon:D},computed:{options(){return[{value:oe,label:`16:9`,w:32,h:18},{value:I,label:`9:16`,w:18,h:32}]},value:{get(){return this.$store.state.omni?.config?.aspect_ratio},set(e){this.$store.commit(`omni/setConfig`,{...this.$store.state.omni?.config,aspect_ratio:e})}}},mounted(){this.value||=re}}),Ue={class:`ratio`},We={class:`header`},Ge={class:`title font-bold`},Ke={class:`items`},qe=[`onClick`],Je={class:`preview`},Ye={class:`name`};function Xe(t,r,o,u,d,f){let p=l(`info-icon`);return g(),s(`div`,Ue,[e(`div`,We,[e(`h2`,Ge,i(t.$t(`omni.name.ratio`)),1),a(p,{content:t.$t(`omni.description.ratio`),class:`info`},null,8,[`content`])]),e(`div`,Ke,[(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`,Je,[e(`div`,{class:`rect`,style:m({width:r.w+`px`,height:r.h+`px`})},null,4)]),e(`div`,Ye,i(r.label),1)],10,qe))),128))])])}var Ze=Y(He,[[`render`,Xe],[`__scopeId`,`data-v-1c0c1511`]]),Qe=4,$e=v({name:`OmniReferenceImagesInput`,components:{ElUpload:y,ElButton:B,InfoIcon:D,ImagePreview:Q,UploadIcon:P},mixins:[pe,Z,R,H],data(){return{fileList:[],uploadUrl:z()+`/api/v1/files/`,limit:Qe,suppressWatch:!1}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},urls(){return this.fileList.map(e=>e?.response?.file_url).filter(e=>!!e)||[]},value(){return this.$store.state.omni?.config?.image_urls}},watch:{value:{immediate:!0,handler(e){if(this.suppressWatch)return;if(!e||e.length===0){let e=(this.fileList||[]).filter(e=>!e?.response?.file_url);this.fileList=e.length?e:[];return}let t=[];e.forEach(e=>{let n=this.fileList.find(t=>t?.response?.file_url===e||t?.url===e);n?t.push(n):t.push({name:e.split(`/`).pop()||e,url:e,status:`success`,percentage:100,response:{file_url:e}})}),(this.fileList||[]).filter(e=>!e?.response?.file_url).forEach(e=>{t.some(t=>t===e||t?.url===e?.url||t?.response?.file_url===e?.response?.file_url)||t.push(e)}),this.fileList=t}}},methods:{onChange(e){if(!e?.url&&e?.raw)try{e.url=URL.createObjectURL(e.raw)}catch{}},onRemove(e){if(e?.url&&typeof e.url==`string`&&e.url.startsWith(`blob:`))try{URL.revokeObjectURL(e.url)}catch{}this.onSetReferenceImages()},onExceed(){C.warning(this.$t(`omni.message.uploadReferenceExceed`))},onError(){C.error(this.$t(`omni.message.uploadError`))},onSetReferenceImages(){let e=this.urls;this.suppressWatch=!0,this.$store.commit(`omni/setConfig`,{...this.$store.state.omni?.config,image_urls:e.length?e:void 0}),this.$nextTick(()=>{this.suppressWatch=!1})},async onSuccess(e,t){e?.file_url&&(t.url=e.file_url,t.response=e),this.onSetReferenceImages()},onRemovePreview(e,t){if(this.fileList.splice(e,1),t?.url&&typeof t.url==`string`&&t.url.startsWith(`blob:`))try{URL.revokeObjectURL(t.url)}catch{}this.onSetReferenceImages()}}}),et={class:`field mb-[10px] flex min-h-8 w-full items-center justify-between gap-3`},tt={class:`flex min-w-0 items-center`},nt={class:`title m-0 text-[14px] font-bold`},rt={class:`file-list flex flex-wrap gap-[10px]`};function it(t,n,o,u,d,m){let _=l(`info-icon`),v=l(`upload-icon`),y=l(`el-button`),b=l(`el-upload`),x=l(`image-preview`);return g(),s(`div`,null,[e(`div`,et,[e(`div`,tt,[e(`h2`,nt,i(t.$t(`omni.name.referenceImages`)),1),a(_,{content:t.$t(`omni.description.referenceImages`)},null,8,[`content`])]),a(b,{ref:`uploader`,"file-list":t.fileList,"onUpdate:fileList":n[0]||=e=>t.fileList=e,accept:`.png,.jpg,.jpeg,.gif,.bmp,.webp`,name:`file`,class:`value shrink-0`,limit:t.limit,multiple:!0,"show-file-list":!1,"before-upload":t.beforeUploadSizeGuard,action:t.uploadUrl,"on-exceed":t.onExceed,"on-error":t.onError,"on-success":t.onSuccess,"on-change":t.onChange,"on-remove":t.onRemove,headers:t.headers},{default:p(()=>[a(y,{size:`small`,type:`primary`,round:``},{default:p(()=>[a(v,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`omni.button.upload`)),1)]),_:1})]),_:1},8,[`file-list`,`limit`,`before-upload`,`action`,`on-exceed`,`on-error`,`on-success`,`on-change`,`on-remove`,`headers`])]),e(`div`,rt,[(g(!0),s(c,null,h(t.fileList,(e,n)=>(g(),f(x,{key:e.uid||e?.response?.file_url||e.url||n,url:e.url||e?.response?.file_url,name:e.name,percentage:e.percentage,onRemove:r=>t.onRemovePreview(n,e)},null,8,[`url`,`name`,`percentage`,`onRemove`]))),128))])])}var at=Y($e,[[`render`,it]]),ot=v({name:`OmniVideoInput`,components:{ElUpload:y,ElButton:B,InfoIcon:D,FilePreview:ve,UploadIcon:P},mixins:[Z,R],data(){return{fileList:[],uploadUrl:z()+`/api/v1/files/`}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},videoUrl(){return this.$store.state.omni?.config?.video_urls?.[0]},videoName(){let e=this.videoUrl||``;return e.split(`/`).pop()||e}},methods:{onExceed(){C.warning(this.$t(`omni.message.uploadVideoExceed`))},onError(){C.error(this.$t(`omni.message.uploadVideoError`))},beforeUpload(e){let t=e.type===`video/mp4`||e.type===`video/quicktime`,n=le(e.size);return t?n?!0:(C.error(this.$t(`omni.message.uploadVideoSizeExceed`,{max:q(ce)})),!1):(C.error(this.$t(`omni.message.uploadVideoTypeFailed`)),!1)},setVideoUrls(e){this.$store.commit(`omni/setConfig`,{...this.$store.state.omni?.config,video_urls:e?[e]:void 0})},onRemove(){this.fileList=[],this.setVideoUrls(void 0)},async onSuccess(e,t){let n=e?.file_url||t?.response?.file_url;this.setVideoUrls(n||void 0)}}}),st={class:`field flex min-h-8 w-full items-center justify-between gap-3`},ct={class:`flex min-w-0 items-center`},lt={class:`title m-0 text-[14px] font-bold`},ut={key:0,class:`file-list flex flex-wrap gap-[10px]`};function dt(t,n,c,u,d,f){let m=l(`info-icon`),h=l(`upload-icon`),_=l(`el-button`),v=l(`el-upload`),y=l(`file-preview`);return g(),s(`div`,null,[e(`div`,st,[e(`div`,ct,[e(`h2`,lt,i(t.$t(`omni.name.referenceVideo`)),1),a(m,{content:t.$t(`omni.description.referenceVideo`)},null,8,[`content`])]),a(v,{ref:`uploader`,"file-list":t.fileList,"onUpdate:fileList":n[0]||=e=>t.fileList=e,accept:`.mp4,.mov`,name:`file`,class:`value shrink-0`,"show-file-list":!1,limit:1,multiple:!1,action:t.uploadUrl,"before-upload":t.beforeUpload,"on-exceed":t.onExceed,"on-error":t.onError,"on-success":t.onSuccess,headers:t.headers},{default:p(()=>[a(_,{size:`small`,type:`primary`,round:``},{default:p(()=>[a(h,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`omni.button.uploadVideo`)),1)]),_:1})]),_:1},8,[`file-list`,`action`,`before-upload`,`on-exceed`,`on-error`,`on-success`,`headers`])]),t.videoUrl?(g(),s(`div`,ut,[a(y,{url:t.videoUrl,name:t.videoName,percentage:100,onRemove:t.onRemove},null,8,[`url`,`name`,`onRemove`])])):o(``,!0)])}var ft=v({name:`OmniConfigPanel`,components:{ElButton:B,MagicIcon:F,PromptInput:Ne,ResolutionSelector:Ve,RatioSelector:Ze,ReferenceImagesInput:at,VideoInput:Y(ot,[[`render`,dt],[`__scopeId`,`data-v-b87d1e4e`]]),ServicePricingSummary:be,ScenarioPaymentMode:Se},emits:[`generate`],data(){return{quoteTimer:0,quoteRunId:0}},computed:{config(){return this.$store.state.omni?.config},consumption(){return he(this.config,this.service?.cost)},service(){return this.$store.state.omni?.service},walletMode(){return G()&&V(`omni`).mode===`wallet`}},watch:{walletMode:{handler(e){e&&this.scheduleQuote()},immediate:!0},config:{handler(){this.walletMode&&this.scheduleQuote()},deep:!0}},beforeUnmount(){window.clearTimeout(this.quoteTimer),this.quoteRunId+=1},methods:{scheduleQuote(){window.clearTimeout(this.quoteTimer),this.quoteTimer=window.setTimeout(this.refreshQuote,350)},async refreshQuote(){let e=V(`omni`),t=++this.quoteRunId;e.quoteLoading=!0,e.quoteUsdc=void 0;try{let n=await U.quote(X(this.config));t===this.quoteRunId&&e.mode===`wallet`&&(e.quoteUsdc=n.amountUsdc)}catch(e){console.warn(`x402 quote failed`,e)}finally{t===this.quoteRunId&&(e.quoteLoading=!1)}},onGenerate(){this.$emit(`generate`)}}}),pt={class:`flex flex-col h-full`},mt={class:`flex-1 overflow-y-auto p-5`},ht={class:`flex flex-col items-center justify-center px-5 pb-5`};function gt(t,n,c,u,d,m){let h=l(`prompt-input`),_=l(`ratio-selector`),v=l(`resolution-selector`),y=l(`reference-images-input`),b=l(`video-input`),x=l(`scenario-payment-mode`),S=l(`service-pricing-summary`),C=l(`magic-icon`),w=l(`el-button`);return g(),s(`div`,pt,[e(`div`,mt,[a(h,{class:`mb-4`}),a(_,{class:`mb-4`}),a(v,{class:`mb-4`}),a(y,{class:`mb-4`}),a(b,{class:`mb-4`})]),e(`div`,ht,[a(x,{scenario:`omni`}),t.walletMode?o(``,!0):(g(),f(S,{key:0,value:t.consumption,service:t.service},null,8,[`value`,`service`])),a(w,{type:`primary`,class:`btn w-full`,round:``,onClick:t.onGenerate},{default:p(()=>[a(C,{class:`mr-2`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`omni.button.generate`)),1)]),_:1},8,[`onClick`])])])}var _t=Y(ft,[[`render`,gt]]),vt=v({name:`OmniTaskPreview`,components:{DeleteIcon:te,ApplicationIcon:T,ChannelIcon:M,CopyToClipboard:ge,ExpandIcon:A,InfoIcon:N,MagicIcon:F,TimeIcon:E,WarningIcon:ne,ElAlert:x,VideoPlayer:xe,ElTooltip:b,ElButton:B,ImagePreview:Q,ApiCodeButton:Ce,ReportButton:_e},props:{modelValue:{type:Object,required:!0}},data(){return{nowTs:Date.now(),timer:0}},computed:{video(){return this.modelValue?.response?.data?.[0]},inputImage(){return this.modelValue?.request?.image_urls?.[0]},pendingElapsed(){let e=parseFloat((this.modelValue?.created_at||``).toString());if(e)return Math.max(0,Math.floor(this.nowTs/1e3-e))}},watch:{"modelValue.response":{handler(e){e&&this.stopTimer()}}},mounted(){this.modelValue?.response||(this.timer=window.setInterval(()=>{this.nowTs=Date.now()},1e3))},beforeUnmount(){this.stopTimer()},methods:{async onDelete(){let e=this.modelValue?.id;if(e){try{await J.confirm(this.$t(`common.message.deleteTaskConfirm`),this.$t(`common.button.delete`),{type:`warning`,confirmButtonText:this.$t(`common.button.delete`),cancelButtonText:this.$t(`common.button.cancel`),confirmButtonClass:`el-button--danger`})}catch{return}try{await this.$store.dispatch(`omni/deleteTask`,{id:e}),C.success(this.$t(`common.message.deleteTaskSuccess`))}catch{C.error(this.$t(`common.message.deleteTaskFailed`))}}},stopTimer(){this.timer&&=(window.clearInterval(this.timer),0)},onDownload(e){window.open(e,`_blank`)}}}),yt={class:`preview`},bt={class:`left`},xt={class:`main`},St={class:`bot`},Ct={class:`datetime`},wt=[`aria-label`],Tt={class:`info`},Et={key:0,class:`flex justify-start items-center gap-2 mt-2 w-full overflow-x-auto`},Dt={key:1,class:`prompt mt-2`},Ot={key:0},kt={key:1},At={key:0,class:n({content:!0})},jt={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Mt={key:0,class:`text-[var(--el-text-color-regular)] text-xs mb-0`},Nt={key:1,class:n({content:!0})},Pt={key:0,class:`mb-4`},Ft={key:1,class:n({operations:!0,"mt-2":!0,"mb-2":!0})},It={key:0,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Lt={key:1,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Rt={key:0},zt={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Bt={key:2,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},$={key:3,class:`text-[var(--el-text-color-regular)] text-xs mb-0`},Vt={key:2,class:n({content:!0})},Ht={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Ut={key:0,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Wt={key:1,class:`text-[var(--el-text-color-regular)] text-xs mb-0`},Gt={key:3,class:n({content:!0})},Kt={class:`text-[var(--el-text-color-regular)] text-xs mb-0`};function qt(n,c,u,d,f,m){let h=l(`capability-presentation`),_=l(`delete-icon`),v=l(`el-tooltip`),y=l(`image-preview`),b=l(`time-icon`),x=l(`magic-icon`),S=l(`copy-to-clipboard`),C=l(`el-alert`),w=l(`video-player`),T=l(`el-button`),E=l(`api-code-button`),D=l(`report-button`),O=l(`application-icon`),k=l(`expand-icon`),A=l(`channel-icon`),j=l(`warning-icon`),M=l(`info-icon`);return g(),s(`div`,yt,[e(`div`,bt,[a(h,{capability:`omni`,part:`avatar`,class:`avatar`})]),e(`div`,xt,[e(`div`,St,[a(h,{capability:`omni`,part:`name`}),e(`span`,Ct,i(n.$dayjs.format(``+new Date(parseFloat((n.modelValue?.created_at||``).toString())*1e3))),1),a(v,{effect:`dark`,content:n.$t(`common.button.delete`),placement:`top`},{default:p(()=>[n.modelValue?.id?(g(),s(`button`,{key:0,type:`button`,class:`btn-delete`,"aria-label":n.$t(`common.button.delete`),onClick:c[0]||=t((...e)=>n.onDelete&&n.onDelete(...e),[`stop`])},[a(_,{size:`1em`,"aria-hidden":`true`,focusable:`false`})],8,wt)):o(``,!0)]),_:1},8,[`content`])]),e(`div`,Tt,[n.inputImage?(g(),s(`div`,Et,[a(y,{url:n.inputImage,name:`image`,closable:!1},null,8,[`url`])])):o(``,!0),n.modelValue?.request?.prompt?(g(),s(`p`,Dt,[r(i(n.modelValue?.request?.prompt)+` `,1),n.modelValue?.response?n.video?.state===`processing`||n.video?.state===`pending`?(g(),s(`span`,kt,` - (`+i(n.$t(`omni.status.processing`))+`) `,1)):o(``,!0):(g(),s(`span`,Ot,` - (`+i(n.$t(`omni.status.pending`))+`) `,1))])):o(``,!0)]),n.modelValue?.response?n.modelValue?.response?.success===!0?(g(),s(`div`,Nt,[n.video?.video_url?(g(),s(`div`,Pt,[a(w,{src:n.video?.video_url},null,8,[`src`])])):o(``,!0),n.video?.video_url?(g(),s(`div`,Ft,[a(v,{class:`box-item`,effect:`dark`,content:n.$t(`omni.message.downloadVideo`),placement:`top-start`},{default:p(()=>[a(T,{type:`info`,size:`small`,class:`btn-action`,onClick:c[1]||=t(e=>n.onDownload(n.video?.video_url),[`stop`])},{default:p(()=>[r(i(n.$t(`common.button.download`)),1)]),_:1})]),_:1},8,[`content`]),a(E,{path:`/gemini/videos`,body:n.modelValue?.request},null,8,[`body`]),a(D,{service:`omni`,"target-id":n.modelValue?.id,snapshot:{prompt:n.modelValue?.request?.prompt}},null,8,[`target-id`,`snapshot`])])):o(``,!0),a(C,{closable:!1,class:`mt-2 success`},{default:p(()=>[n.modelValue?.request?.model?(g(),s(`p`,It,[a(O,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`omni.name.model`))+`: `+i(n.modelValue?.request?.model),1)])):o(``,!0),n.modelValue?.request?.resolution?(g(),s(`p`,Lt,[a(k,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`omni.name.resolution`))+`: `+i(n.modelValue?.request?.resolution)+` `,1),n.modelValue?.request?.aspect_ratio?(g(),s(`span`,Rt,` · `+i(n.modelValue?.request?.aspect_ratio),1)):o(``,!0)])):o(``,!0),e(`p`,zt,[a(x,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`omni.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(S,{content:n.modelValue?.id,class:`btn-copy inline-block`},null,8,[`content`])]),n.modelValue?.elapsed?(g(),s(`p`,Bt,[a(b,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`omni.name.elapsed`))+`: `+i(n.modelValue?.elapsed?.toFixed(2))+`s `,1)])):o(``,!0),n.modelValue?.response?.trace_id?(g(),s(`p`,$,[a(A,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`omni.name.traceId`))+`: `+i(n.modelValue?.response?.trace_id)+` `,1),a(S,{content:n.modelValue?.response?.trace_id,class:`btn-copy inline-block`},null,8,[`content`])])):o(``,!0)]),_:1})])):n.modelValue?.response?.success===!1?(g(),s(`div`,Vt,[a(C,{closable:!1,class:`failure`},{template:p(()=>[a(j,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`omni.name.failure`)),1)]),default:p(()=>[e(`p`,Ht,[a(x,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`omni.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(S,{content:n.modelValue?.id,class:`btn-copy inline-block`},null,8,[`content`])]),n.modelValue?.response?.error?.message?(g(),s(`p`,Ut,[a(M,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`omni.name.failureReason`))+`: `+i(n.modelValue?.response?.error?.message)+` `,1),a(S,{content:n.modelValue?.response?.error?.message,class:`btn-copy inline-block`},null,8,[`content`])])):o(``,!0),n.modelValue?.response?.trace_id?(g(),s(`p`,Wt,[a(A,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`omni.name.traceId`))+`: `+i(n.modelValue?.response?.trace_id)+` `,1),a(S,{content:n.modelValue?.response?.trace_id,class:`btn-copy inline-block`},null,8,[`content`])])):o(``,!0)]),_:1})])):(g(),s(`div`,Gt,[a(C,{closable:!1,class:`info`},{template:p(()=>[a(M,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`omni.name.status`)),1)]),default:p(()=>[e(`p`,Kt,[a(x,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`omni.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(S,{content:n.modelValue?.id,class:`btn-copy inline-block`},null,8,[`content`])])]),_:1})])):(g(),s(`div`,At,[a(C,{closable:!1,class:`info`},{template:p(()=>[a(b,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`omni.status.pending`)),1)]),default:p(()=>[e(`p`,jt,[a(x,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`omni.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(S,{content:n.modelValue?.id,class:`btn-copy inline-block`},null,8,[`content`])]),n.pendingElapsed===void 0?o(``,!0):(g(),s(`p`,Mt,[a(b,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`omni.name.elapsed`))+`: `+i(n.pendingElapsed)+`s `,1)]))]),_:1})]))])])}var Jt=v({name:`OmniRecentPanel`,components:{TaskPreview:Y(vt,[[`render`,qt],[`__scopeId`,`data-v-83851ad5`]]),BotPlaceholder:we,NoTasks:j,ScrollList:k},props:{loading:{type:Boolean,default:!1}},emits:[`reach-top`],computed:{tasks(){return{...this.$store.state.omni?.tasks,items:this.$store.state.omni?.tasks?.items?.slice()}}},methods:{getScrollElement(){return this.$refs.scrollList?.getScrollElement?.()}}}),Yt={key:0},Xt={key:2,class:`w-full h-full flex items-center justify-center`};function Zt(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`,Yt,[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`,Xt,[a(v)])):o(``,!0)],64)}var Qt=v({name:`OmniIndex`,components:{ConfigPanel:_t,Layout:Ae,RecentPanel:Y(Jt,[[`render`,Zt]])},mixins:[de],inject:[`initialized`],data(){return{task:void 0,job:0,loadingMore:!1,fetchingTasks:!1,walletTaskIds:[]}},computed:{applicationsLoading(){return this.$store.state.omni?.status?.getApplications===S.Request},tasksLoading(){return this.$store.state.omni?.status?.getTasks===S.Request||this.fetchingTasks},credential(){return this.$store.state.omni?.credential},config(){return this.$store.state.omni?.config},tasks(){return this.$store.state.omni?.tasks},walletMode(){return G()&&V(`omni`).mode===`wallet`}},watch:{walletMode:{async handler(e,t){if(!(t===void 0||e===t)){if(this.$store.commit(`omni/setTasks`,void 0),e&&!this.job&&(this.job=window.setInterval(this.onGetTasks,5e3)),!e&&!this.credential?.token){window.clearInterval(this.job),this.job=0,await this.onScrollDown();return}await this.onGetTasks(),await this.onScrollDown()}}},initialized:{async handler(e){e&&(await this.onGetTasks(),await this.onScrollDown(),this.job||=window.setInterval(this.onGetTasks,5e3))},immediate:!0}},async mounted(){await this.onGetService()},async unmounted(){window.clearInterval(this.job)},methods:{async onReachTop(){await ee({tasks:this.tasks,loading:this.loadingMore,setLoading:e=>this.loadingMore=e,isBlocked:()=>this.tasksLoading||this.applicationsLoading,fetch:e=>this.onGetTasks({createdAtMax:e}),getScrollElement:()=>this.getTasksScrollElement()})},async onGetService(){await this.$store.dispatch(`omni/getService`)},async onScrollDown(){await this.$nextTick();let e=this.getTasksScrollElement();e&&(e.scrollTop=e.scrollHeight)},async onGetTasks(e){if(this.applicationsLoading||this.fetchingTasks)return;let{limit:t=5,createdAtMin:n,createdAtMax:r}=e||{};this.fetchingTasks=!0;try{await this.$store.dispatch(`omni/getTasks`,{limit:t,createdAtMin:n,createdAtMax:r,...this.walletMode&&!this.credential?.token?{mode:`x402`,ids:this.walletTaskIds}:{}})}finally{this.fetchingTasks=!1}},async onGenerate(){if(!K(this.uploadTracker,e=>this.$t(e),e=>C.warning(e)))return;let e=X(this.config);if(!e.prompt){C.warning(this.$t(`omni.message.promptRequired`));return}if(e.video_urls&&!e.image_urls){C.warning(this.$t(`omni.message.videoRequiresImage`));return}let t;if(this.walletMode){let n=this.getWalletContext();if(!n){C.warning(this.$t(`common.x402Scenario.connectWalletFirst`));return}t=U.generate(e,{mode:`x402`,x402:{wallet:n,confirm:e=>this.confirmWalletPayment(e),identityToken:this.credential?.token}})}else{if(!fe())return;let n=this.credential?.token;if(!n)return;t=U.generate(e,{token:n})}C.info(this.$t(`omni.message.startingTask`)),se(`omni`,t).then(e=>{let t=e?.data?.task_id;this.walletMode&&!this.credential?.token&&t&&!this.walletTaskIds.includes(t)&&this.walletTaskIds.unshift(t),C.success(this.$t(`omni.message.startTaskSuccess`))}).catch(e=>{let t=e?.response?.data;e instanceof me||W(e,`omni`)||(this.walletMode?C.error(this.$t(`common.x402Scenario.paymentFailed`)):C.error(this.$t(`omni.message.startTaskFailed`)+(t?.error?.message||``)))}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})},getWalletContext(){return ue(this.$wallet)},async confirmWalletPayment(e){return J.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 $t(e,t,n,r,i,o){let s=l(`config-panel`),c=l(`recent-panel`),u=l(`layout`);return g(),f(u,null,{config:p(()=>[a(s,{onGenerate:e.onGenerate},null,8,[`onGenerate`])]),result:p(()=>[a(c,{ref:`recentPanel`,loading:e.loadingMore,onReachTop:e.onReachTop},null,8,[`loading`,`onReachTop`])]),_:1})}var en=Y(Qt,[[`render`,$t]]);export{en as default};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import"./rolldown-runtime--c01j_DQ.js";import{A as e,C as t,Gt as n,I as r,Jt as i,L as a,M as o,N as s,T as c,at as l,ht as u,it as d,j as f,mt as p,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-CKdhNIc_.js";import{n as x,t as S}from"./tabs-qYktzPOY.js";import{t as C}from"./upload-86r_qBlw.js";import{t as w}from"./tooltip-siz_AHre.js";import{t as T}from"./alert-BprQRUmf.js";import{h as E,v as D}from"./models-C3taPMyR.js";import{t as O}from"./drawer-CFnWJn6T.js";import{t as k}from"./switch-DPLDRwQn.js";import{t as A}from"./box-BDDWxmaE.js";import{t as j}from"./clock-BjY8ddGs.js";import{a as M,i as N,n as P,o as F,r as I,s as L,t as R}from"./pagination-Ct9iwsuK.js";import{t as ee}from"./info-DkDuo54u.js";import{t as z}from"./languages-B2TQy1-7.js";import{t as B}from"./trash-2-BD_rYfpa.js";import{t as te}from"./triangle-alert-DHBBLtTd.js";import{t as ne}from"./upload-B-5lkMRH.js";import{t as V}from"./wand-sparkles-BJbx6jvi.js";import{t as re}from"./zap-DFLVRbR4.js";import{_i as ie,gi as ae,hi as oe}from"./constants-BMkG7xao.js";import{$ as se,Da as H,Fr as U,Ga as W,Ii as G,J as K,Mr as q,Nr as ce,O as le,Pi as J,Pr as ue,Q as de,Xi as fe,ci as pe,et as me,ja as Y,jr as X,k as Z,kn as he,nt as ge,oi as _e,tt as ve,xn as ye}from"./index-Dk3occrO.js";import{t as be}from"./CopyToClipboard-BjRfLoil.js";import{t as xe}from"./ReportButton-lzZe3i6C.js";import{t as Q}from"./ImagePreview-aPBlpOJ8.js";import{n as Se}from"./taskDrawerMixin-DyAUhFEq.js";import{t as Ce}from"./ServicePricingSummary-DOii-08b.js";import{t as we}from"./VideoPlayer-Dc-1lN9r.js";import{t as Te}from"./ScenarioPaymentMode-BR4cXZk8.js";import{t as Ee}from"./ApiCodeButton-DSQPf-rd.js";import{t as De}from"./BotPlaceholder-DgI03cxu.js";import{t as Oe}from"./ShowcaseResultTabs-BJbS7Ydg.js";import{t as ke}from"./showcaseRecreateMixin-Ch3v2mGZ.js";var Ae=v({name:`LayoutVeo`,components:{MagicIcon:V,ElDrawer:O,ElButton:W},mixins:[Se]}),je={class:`main flex flex-row flex-1`},Me={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)]`},Ne={class:`result h-full p-6 flex-1 flex flex-col min-w-0 overflow-x-hidden bg-[var(--app-content-bg)]`};function Pe(t,n,r,i,o,c){let f=l(`magic-icon`),m=l(`el-button`),h=l(`el-drawer`);return g(),s(`div`,je,[e(`div`,Me,[d(t.$slots,`config`,{},void 0,!0)]),e(`div`,Ne,[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 Fe=Z(Ae,[[`render`,Pe],[`__scopeId`,`data-v-293c9493`]]),Ie=v({name:`ModelSelector`,components:{ElSelect:y,ElOption:b},computed:{isModelLocked(){return this.$store.state.veo?.config?.action===`ingredients2video`},options(){return this.isModelLocked?[{value:ue,label:`Veo 3.1 Fast`}]:ce},value:{get(){return this.$store.state.veo?.config?.model},set(e){this.$store.commit(`veo/setConfig`,{...this.$store.state.veo.config,model:e})}}},mounted(){this.value||=ie}}),Le={class:`field`},Re={class:`title font-bold`};function ze(t,n,r,o,u,d){let m=l(`el-option`),_=l(`el-select`);return g(),s(`div`,Le,[e(`h2`,Re,i(t.$t(`veo.name.model`)),1),a(_,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,class:`value`,placeholder:t.$t(`veo.placeholder.select`),disabled:t.isModelLocked},{default:p(()=>[(g(!0),s(c,null,h(t.options,e=>(g(),f(m,{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`,`disabled`])])}var Be=Z(Ie,[[`render`,ze],[`__scopeId`,`data-v-90ed8cff`]]),Ve=v({name:`ActionSelector`,components:{ElTabs:x,ElTabPane:S},data(){return{}},computed:{options(){return[{value:`text2video`,label:this.$t(`veo.button.action1`)},{value:`image2video`,label:this.$t(`veo.button.action2`)},{value:`ingredients2video`,label:this.$t(`veo.button.actionIngredients`)}]},value(){return this.$store.state.veo?.config?.action||`text2video`}},mounted(){this.$store.state.veo?.config?.action||this.onUpdate(oe)},methods:{onUpdate(e){this.$store.commit(`veo/setConfig`,U(this.$store.state.veo?.config,e))}}}),He={class:`tab-label`},Ue={class:`text`};function We(t,n,r,a,o,u){let d=l(`el-tab-pane`),m=l(`el-tabs`);return g(),f(m,{"model-value":t.value,class:`action-tabs scenario-tabs scenario-tabs--divided`,"onUpdate:modelValue":t.onUpdate},{default:p(()=>[(g(!0),s(c,null,h(t.options,t=>(g(),f(d,{key:t.value,name:t.value},{label:p(()=>[e(`span`,He,[e(`span`,Ue,i(t.label),1)])]),_:2},1032,[`name`]))),128))]),_:1},8,[`model-value`,`onUpdate:modelValue`])}var Ge=Z(Ve,[[`render`,We],[`__scopeId`,`data-v-c72fb85c`]]),Ke=v({name:`TranslationSelector`,components:{ElSwitch:k,InfoIcon:M},computed:{value:{get(){return this.$store.state.veo?.config?.translation},set(e){console.debug(`set translation`,e),this.$store.commit(`veo/setConfig`,{...this.$store.state.veo?.config,translation:e})}}},mounted(){this.value===void 0&&(this.value=!1)}}),qe={class:`relative`},Je={class:`flex justify-between`},Ye={class:`flex justify-start items-center`},Xe={class:`text-sm font-bold`},Ze={class:`flex justify-end items-center`};function Qe(t,n,r,o,c,u){let d=l(`info-icon`),f=l(`el-switch`);return g(),s(`div`,qe,[e(`div`,Je,[e(`div`,Ye,[e(`span`,Xe,i(t.$t(`veo.name.translation`)),1),a(d,{content:t.$t(`veo.description.translation`)},null,8,[`content`])]),e(`div`,Ze,[a(f,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,class:`value`},null,8,[`modelValue`])])])])}var $e=Z(Ke,[[`render`,Qe]]),et=v({name:`AspectRatioSelector`,data(){return{options:[{value:`16:9`,label:`16:9`,width:25,height:13},{value:`9:16`,label:`9:16`,width:13,height:25}]}},computed:{active(){return this.options.findIndex(e=>e.value===this.value)||0},value:{get(){return this.$store.state.veo?.config?.aspect_ratio},set(e){console.debug(`set aspect_ratio`,e),this.$store.commit(`veo/setConfig`,{...this.$store.state?.veo?.config,aspect_ratio:e})}}},mounted(){this.value||=ae}}),tt={class:`text-sm font-bold mb-2 block`},nt={class:`items`},rt=[`onClick`],it={class:`name`};function at(t,r,a,o,l,u){return g(),s(`div`,null,[e(`span`,tt,i(t.$t(`veo.name.ratio`)),1),e(`div`,nt,[(g(!0),s(c,null,h(t.options,(r,a)=>(g(),s(`div`,{key:a,class:n({active:t.active===a,item:!0}),onClick:e=>t.value=r.value},[e(`div`,{class:n([`preview`,r.label])},[e(`div`,{class:`rect`,style:m({width:r.width+`px`,height:r.height+`px`})},null,4)],2),e(`p`,it,i(r.label),1)],10,rt))),128))])])}var ot=Z(et,[[`render`,at],[`__scopeId`,`data-v-28c472c4`]]),st=v({name:`StartEndImage`,components:{UploadIcon:ne,ElUpload:C,ElButton:W,InfoIcon:M,ImagePreview:Q},mixins:[ge,ve,se,K],props:{limit:{type:Number,default:2},ingredients:{type:Boolean,default:!1}},emits:[`change`],data(){return{fileList:[],uploadUrl:H()+`/api/v1/files/`}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},title(){return this.ingredients?this.$t(`veo.button.actionIngredients`):this.$t(`veo.name.startEndImage`)},description(){return this.ingredients?this.$t(`veo.description.imageUrl`):this.$t(`veo.description.uploadStartEndImage`)},urls(){return this.fileList.map(e=>e.response?.file_url||e.url).filter(e=>!!e)},value:{get(){return this.$store.state?.veo?.config?.image_urls},set(){}}},watch:{limit(){this.fileList.length>this.limit&&(this.fileList=this.fileList.slice(0,this.limit),this.onSetStartEndImageUrl())}},mounted(){this.fileList=(this.value||[]).map((e,t)=>({name:`reference-${t+1}`,percentage:100,response:{file_url:e},status:`success`,uid:Date.now()+t,url:e}))},methods:{onExceed(){D.warning(this.$t(`veo.message.uploadReferencesLimit`,{limit:this.limit}))},onError(){D.error(this.$t(`veo.message.uploadReferencesError`))},onSetStartEndImageUrl(){let e=this.urls;this.$store.commit(`veo/setConfig`,{...this.$store.state?.veo?.config,image_urls:e})},async onSuccess(){this.onSetStartEndImageUrl()},onRemove(e){let t=this.fileList.indexOf(e);t>=0&&this.fileList.splice(t,1),this.onSetStartEndImageUrl()}}}),ct={class:`relative`},lt={class:`flex justify-between`},ut={class:`flex justify-start items-center`},dt={class:`text-sm font-bold`};function ft(t,n,c,u,d,m){let h=l(`info-icon`),_=l(`image-preview`),v=l(`upload-icon`),y=l(`el-button`),b=l(`el-upload`);return g(),s(`div`,ct,[e(`div`,lt,[e(`div`,ut,[e(`span`,dt,i(t.title),1),a(h,{content:t.description},null,8,[`content`])])]),a(b,{ref:`uploader`,"file-list":t.fileList,"onUpdate:fileList":n[0]||=e=>t.fileList=e,name:`file`,accept:`.png,.jpg,.jpeg,.gif,.bmp,.webp`,limit:t.limit,class:`upload-wrapper`,multiple:!0,"before-upload":t.beforeUploadSizeGuard,action:t.uploadUrl,"list-type":`picture`,"on-exceed":t.onExceed,"on-error":t.onError,"on-success":t.onSuccess,headers:t.headers},{file:p(({file:e})=>[e.url&&e.percentage!==void 0?(g(),f(_,{key:0,url:e.url,name:e.name,percentage:e.percentage,onRemove:n=>t.onRemove(e)},null,8,[`url`,`name`,`percentage`,`onRemove`])):o(``,!0)]),default:p(()=>[a(y,{round:``,type:`primary`,size:`small`,class:`btn btn-upload`},{default:p(()=>[a(v,{class:`icon mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`veo.button.uploadReferences`)),1)]),_:1})]),_:1},8,[`file-list`,`limit`,`before-upload`,`action`,`on-exceed`,`on-error`,`on-success`,`headers`])])}var pt=Z(st,[[`render`,ft],[`__scopeId`,`data-v-a4391199`]]),mt=v({name:`PromptInput`,components:{PromptTextarea:N},computed:{prompt:{get(){return this.$store.state.veo?.config?.prompt},set(e){this.$store.commit(`veo/setConfig`,{...this.$store.state.veo?.config,prompt:e})}}},mounted(){this.prompt||=``}});function ht(e,t,n,r,i,a){let o=l(`prompt-textarea`);return g(),f(o,{modelValue:e.prompt,"onUpdate:modelValue":t[0]||=t=>e.prompt=t,title:e.$t(`veo.name.prompt`),info:e.$t(`veo.description.prompt`),placeholder:e.$t(`veo.placeholder.prompt`)},null,8,[`modelValue`,`title`,`info`,`placeholder`])}var gt=v({name:`ConfigPanel`,components:{MagicIcon:V,ElButton:W,ServicePricingSummary:Ce,PromptInput:Z(mt,[[`render`,ht]]),ModelSelector:Be,StartEndImage:pt,ActionSelector:Ge,TranslationSelector:$e,AspectRatioSelector:ot,ScenarioPaymentMode:Te},emits:[`generate`],data(){return{quoteTimer:0,quoteRunId:0}},computed:{config(){return this.$store.state.veo?.config},showsImages(){return this.config?.action===`image2video`||this.config?.action===`ingredients2video`},imageLimit(){return this.config?.action===`ingredients2video`?3:2},consumption(){return ye(this.config,this.service?.cost)},service(){return this.$store.state.veo?.service},walletMode(){return J()&&G(`veo`).mode===`wallet`}},watch:{walletMode:{handler(e){e&&this.scheduleQuote()},immediate:!0},config:{handler(){this.walletMode&&this.scheduleQuote()},deep:!0}},beforeUnmount(){window.clearTimeout(this.quoteTimer),this.quoteRunId+=1},methods:{scheduleQuote(){window.clearTimeout(this.quoteTimer),this.quoteTimer=window.setTimeout(this.refreshQuote,350)},async refreshQuote(){let e=G(`veo`),t=++this.quoteRunId;e.quoteLoading=!0,e.quoteUsdc=void 0;try{let n=await q.quote(X(this.config));t===this.quoteRunId&&e.mode===`wallet`&&(e.quoteUsdc=n.amountUsdc)}catch(e){console.warn(`x402 quote failed`,e)}finally{t===this.quoteRunId&&(e.quoteLoading=!1)}},onGenerate(){this.$emit(`generate`)}}}),_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 h=l(`action-selector`),_=l(`model-selector`),v=l(`start-end-image`),y=l(`prompt-input`),b=l(`aspect-ratio-selector`),x=l(`translation-selector`),S=l(`scenario-payment-mode`),C=l(`service-pricing-summary`),w=l(`magic-icon`),T=l(`el-button`);return g(),s(`div`,_t,[e(`div`,vt,[a(h,{class:`mb-4`}),a(_,{class:`mb-4`}),t.showsImages?(g(),f(v,{key:t.config?.action,class:`mb-4`,limit:t.imageLimit,ingredients:t.config?.action===`ingredients2video`},null,8,[`limit`,`ingredients`])):o(``,!0),a(y,{class:`mb-4`}),a(b,{class:`mb-4`}),a(x,{class:`mb-4`})]),e(`div`,yt,[a(S,{scenario:`veo`}),t.walletMode?o(``,!0):(g(),f(C,{key:0,value:t.consumption,service:t.service},null,8,[`value`,`service`])),a(T,{type:`primary`,class:`btn w-full`,round:``,onClick:t.onGenerate},{default:p(()=>[a(w,{class:`mr-2`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`veo.button.generate`)),1)]),_:1},8,[`onClick`])])])}var xt=Z(gt,[[`render`,bt]]),St=v({name:`TaskPreview`,components:{DeleteIcon:B,ApplicationIcon:A,ChannelIcon:L,ExpandIcon:F,InfoIcon:ee,LanguageIcon:z,LightningIcon:re,MagicIcon:V,TimeIcon:j,WarningIcon:te,CopyToClipboard:be,ElAlert:T,VideoPlayer:we,ImagePreview:Q,ElTooltip:w,ElButton:W,ApiCodeButton:Ee,ReportButton:xe},props:{modelValue:{type:Object,required:!0}},data(){return{}},computed:{referenceImages(){let e=this.modelValue?.request?.image_urls;return Array.isArray(e)?e.filter(e=>typeof e==`string`&&!!e):[]},actionLabel(){let e=this.modelValue?.request,t=e?.model===`veo31-fast-ingredients`||this.referenceImages.length>2?`ingredients2video`:this.referenceImages.length>0?`image2video`:`text2video`,n=e?.action||t;return this.$t({text2video:`veo.button.action1`,image2video:`veo.button.action2`,ingredients2video:`veo.button.actionIngredients`}[n]||`veo.name.action`)},traceId(){return this.modelValue?.response?.trace_id||this.modelValue?.trace_id},taskInfoClass(){return this.modelValue?.response?.success===!0?`success`:this.modelValue?.response?.success===!1?`failure`:`info`}},methods:{async onDelete(){let e=this.modelValue?.id;if(e){try{await Y.confirm(this.$t(`common.message.deleteTaskConfirm`),this.$t(`common.button.delete`),{type:`warning`,confirmButtonText:this.$t(`common.button.delete`),cancelButtonText:this.$t(`common.button.cancel`),confirmButtonClass:`el-button--danger`})}catch{return}try{await this.$store.dispatch(`veo/deleteTask`,{id:e}),D.success(this.$t(`common.message.deleteTaskSuccess`))}catch{D.error(this.$t(`common.message.deleteTaskFailed`))}}},onDownload(e,t){e?.stopPropagation(),console.log(`on download`),window.open(t,`_blank`)},onOpenVideo(e){window.open(e,`_blank`)}}}),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:`flex justify-start items-center gap-2 mt-2 w-full overflow-x-auto`},jt={key:1,class:`prompt mt-2`},Mt={key:0},Nt={key:1},Pt={key:0,class:n({content:!0,failed:!0})},Ft={key:0,class:`mb-4`},It={key:1,class:n({operations:!0,"mt-2":!0})},Lt={key:1,class:n({content:!0})},Rt={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},zt={class:n({content:!0})},Bt={key:0,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},$={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Vt={key:1,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Ht={key:2,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Ut={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Wt={key:3,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Gt={key:4,class:`text-[var(--el-text-color-regular)] text-xs mb-0`};function Kt(u,d,m,_,v,y){let b=l(`capability-presentation`),x=l(`delete-icon`),S=l(`el-tooltip`),C=l(`image-preview`),w=l(`video-player`),T=l(`el-button`),E=l(`api-code-button`),D=l(`report-button`),O=l(`warning-icon`),k=l(`info-icon`),A=l(`copy-to-clipboard`),j=l(`el-alert`),M=l(`application-icon`),N=l(`lightning-icon`),P=l(`expand-icon`),F=l(`language-icon`),I=l(`magic-icon`),L=l(`time-icon`),R=l(`channel-icon`);return g(),s(`div`,Ct,[e(`div`,wt,[a(b,{capability:`veo`,part:`avatar`,class:`avatar`})]),e(`div`,Tt,[e(`div`,Et,[a(b,{capability:`veo`,part:`name`}),e(`span`,Dt,i(u.$dayjs.format(``+new Date(parseFloat((u.modelValue?.created_at||``).toString())*1e3))),1),a(S,{effect:`dark`,content:u.$t(`common.button.delete`),placement:`top`},{default:p(()=>[u.modelValue?.id?(g(),s(`button`,{key:0,type:`button`,class:`btn-delete`,"aria-label":u.$t(`common.button.delete`),onClick:d[0]||=t((...e)=>u.onDelete&&u.onDelete(...e),[`stop`])},[a(x,{size:`1em`,"aria-hidden":`true`,focusable:`false`})],8,Ot)):o(``,!0)]),_:1},8,[`content`])]),e(`div`,kt,[u.referenceImages.length>0?(g(),s(`div`,At,[(g(!0),s(c,null,h(u.referenceImages,(e,t)=>(g(),f(C,{key:`${t}-${e}`,url:e,name:`reference-${t+1}`,closable:!1},null,8,[`url`,`name`]))),128))])):o(``,!0),u.modelValue?.request?.prompt?(g(),s(`p`,jt,[r(i(u.modelValue?.request?.prompt)+` `,1),u.modelValue?.response?o(``,!0):(g(),s(`span`,Mt,` - (`+i(u.$t(`veo.status.pending`))+`) `,1)),Array.isArray(u.modelValue?.response?.data)&&u.modelValue?.response?.data[0]?.state===`running`?(g(),s(`span`,Nt,` - (`+i(u.$t(`veo.status.processing`))+`) `,1)):o(``,!0)])):o(``,!0)]),u.modelValue?.response?.success===!0&&u.modelValue?.response?.data?(g(),s(`div`,Pt,[u.modelValue?.response?.data[0]?.video_url?(g(),s(`div`,Ft,[a(w,{src:u.modelValue?.response?.data[0]?.video_url},null,8,[`src`])])):o(``,!0),u.modelValue?.response.success?(g(),s(`div`,It,[a(S,{class:`box-item`,effect:`dark`,content:u.$t(`veo.message.downloadVideo`),placement:`top-start`},{default:p(()=>[u.modelValue?.response?.data[0]?.video_url?(g(),f(T,{key:0,type:`info`,size:`small`,class:`btn-action`,onClick:d[1]||=e=>u.onDownload(e,u.modelValue?.response?.data[0]?.video_url)},{default:p(()=>[r(i(u.$t(`veo.button.download`)),1)]),_:1})):o(``,!0)]),_:1},8,[`content`]),a(E,{path:`/veo/videos`,body:u.modelValue?.request},null,8,[`body`]),a(D,{service:`veo`,"target-id":u.modelValue?.id,snapshot:{prompt:u.modelValue?.request?.prompt}},null,8,[`target-id`,`snapshot`])])):o(``,!0)])):o(``,!0),u.modelValue?.response?.success===!1?(g(),s(`div`,Lt,[a(j,{closable:!1,class:`failure`},{template:p(()=>[a(O,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(u.$t(`veo.name.failure`)),1)]),default:p(()=>[e(`p`,Rt,[a(k,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(u.$t(`veo.name.failureReason`))+`: `+i(u.modelValue?.response?.error?.message)+` `,1),a(A,{content:u.modelValue?.response?.error?.message},null,8,[`content`])])]),_:1})])):o(``,!0),e(`div`,zt,[a(j,{closable:!1,class:n([`mt-2`,`task-metadata`,u.taskInfoClass])},{default:p(()=>[u.modelValue?.request?.model?(g(),s(`p`,Bt,[a(M,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(u.$t(`veo.name.model`))+`: `+i(u.modelValue?.request?.model),1)])):o(``,!0),e(`p`,$,[a(N,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(u.$t(`veo.name.action`))+`: `+i(u.actionLabel),1)]),u.modelValue?.request?.aspect_ratio?(g(),s(`p`,Vt,[a(P,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(u.$t(`veo.name.ratio`))+`: `+i(u.modelValue?.request?.aspect_ratio),1)])):o(``,!0),u.modelValue?.request?.translation===void 0?o(``,!0):(g(),s(`p`,Ht,[a(F,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(u.$t(`veo.name.translation`))+`: `+i(u.$t(u.modelValue?.request?.translation?`seedance.button.on`:`seedance.button.off`)),1)])),e(`p`,Ut,[a(I,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(u.$t(`veo.name.taskId`))+`: `+i(u.modelValue?.id)+` `,1),a(A,{content:u.modelValue?.id,class:`btn-copy inline-block`},null,8,[`content`])]),u.modelValue?.elapsed?(g(),s(`p`,Wt,[a(L,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(u.$t(`veo.name.elapsed`))+`: `+i(u.modelValue?.elapsed?.toFixed(2))+`s `,1)])):o(``,!0),u.traceId?(g(),s(`p`,Gt,[a(R,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(u.$t(`veo.name.traceId`))+`: `+i(u.traceId)+` `,1),a(A,{content:u.traceId,class:`btn-copy inline-block`},null,8,[`content`])])):o(``,!0)]),_:1},8,[`class`])])])])}var qt=v({name:`RecentPanel`,components:{TaskPreview:Z(St,[[`render`,Kt],[`__scopeId`,`data-v-eb0880c2`]]),NoTasks:I,BotPlaceholder:De,ScrollList:P},props:{loading:{type:Boolean,default:!1}},emits:[`reach-top`],data(){return{job:0}},computed:{tasks(){return{...this.$store.state.veo?.tasks,items:this.$store.state.veo?.tasks?.items?.slice()}}},methods:{getScrollElement(){return this.$refs.scrollList?.getScrollElement?.()}}}),Jt={key:0},Yt={key:2,class:`w-full h-full flex items-center justify-center`};function Xt(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`,Jt,[a(d)])):e.tasks?.items?.length&&e.tasks?.items?.length>0?(g(),f(_,{key:1,ref:`scrollList`,class:`tasks h-full w-full overflow-y-auto`,loading:e.loading,onReachTop:t[0]||=t=>e.$emit(`reach-top`)},{default:p(()=>[(g(!0),s(c,null,h(e.tasks?.items,(e,t)=>(g(),f(m,{key:t,"model-value":e},null,8,[`model-value`]))),128))]),_:1},8,[`loading`])):o(``,!0),e.tasks?.items?.length===0?(g(),s(`div`,Yt,[a(v)])):o(``,!0)],64)}var Zt=v({name:`VeoIndex`,components:{ConfigPanel:xt,Layout:Fe,RecentPanel:Z(qt,[[`render`,Xt]]),ShowcaseResultTabs:Oe},mixins:[me,ke(`veo`)],inject:[`initialized`],data(){return{task:void 0,job:0,loadingMore:!1,fetchingTasks:!1,walletTaskIds:[]}},computed:{applicationsLoading(){return this.$store.state.veo?.status?.getApplications===E.Request},tasksLoading(){return this.$store.state.veo?.status?.getTasks===E.Request||this.fetchingTasks},credential(){return this.$store.state.veo.credential},config(){return this.$store.state.veo.config},tasks(){return this.$store.state.veo.tasks},walletMode(){return J()&&G(`veo`).mode===`wallet`}},watch:{walletMode:{async handler(e,t){if(!(t===void 0||e===t)){if(this.$store.commit(`veo/setTasks`,void 0),e&&!this.job&&(this.job=window.setInterval(this.onGetTasks,5e3)),!e&&!this.credential?.token){window.clearInterval(this.job),this.job=0,await this.onScrollDown();return}await this.onGetTasks(),await this.onScrollDown()}}},tasks:{handler(e,t){e?.items?.length>t?.items?.length&&console.debug(`new tasks detected`)},deep:!0},initialized:{async handler(e){e&&(console.debug(`layout initialized`),await this.onGetTasks(),await this.onScrollDown(),this.job||=window.setInterval(this.onGetTasks,5e3))},immediate:!0}},async mounted(){await this.onGetService()},async unmounted(){window.clearInterval(this.job)},methods:{async onReachTop(){await R({tasks:this.tasks,getTasks:()=>this.tasks,loading:this.loadingMore,setLoading:e=>this.loadingMore=e,isBlocked:()=>this.tasksLoading||this.applicationsLoading,fetch:e=>this.onGetTasks({createdAtMax:e}),getScrollElement:()=>this.getTasksScrollElement()})},async onGetService(){console.debug(`start onGetService`),await this.$store.dispatch(`veo/getService`),console.debug(`end onGetService`)},async onGetApplication(){console.debug(`start onGetApplication`),await this.$store.dispatch(`veo/getApplications`),console.debug(`end onGetApplication`),await this.onGetTasks()},async onScrollDown(){await this.$nextTick();let e=this.getTasksScrollElement();e&&(e.scrollTop=e.scrollHeight)},async onGetTasks(e){if(this.applicationsLoading||this.fetchingTasks){console.debug(`loading`);return}console.debug(`start onGetTasks`,e);let{limit:t=5,createdAtMin:n,createdAtMax:r}=e||{};console.debug(`limit`,t,`createdAtMin`,n,`createdAtMax`,r),this.fetchingTasks=!0;try{await this.$store.dispatch(`veo/getTasks`,{limit:t,createdAtMin:n,createdAtMax:r,...this.walletMode&&!this.credential?.token?{mode:`x402`,ids:this.walletTaskIds}:{}})}finally{this.fetchingTasks=!1}},async onGenerate(){if(!de(this.uploadTracker,e=>this.$t(e),e=>D.warning(e)))return;let e=X(this.config);if((e.action===`image2video`||e.action===`ingredients2video`)&&!(e.image_urls&&e.image_urls.length>0)){D.warning(this.$t(`veo.message.imageRequired`));return}let t;if(this.walletMode){let n=this.getWalletContext();if(!n){D.warning(this.$t(`common.x402Scenario.connectWalletFirst`));return}t=q.generate(e,{mode:`x402`,x402:{wallet:n,confirm:e=>this.confirmWalletPayment(e),identityToken:this.credential?.token}})}else{if(!he())return;let n=this.credential?.token;if(!n)return;t=q.generate(e,{token:n})}D.info(this.$t(`veo.message.startingTask`)),fe(`veo`,t).then(e=>{let t=e?.data?.task_id;this.walletMode&&!this.credential?.token&&t&&!this.walletTaskIds.includes(t)&&this.walletTaskIds.unshift(t),D.success(this.$t(`veo.message.startTaskSuccess`))}).catch(e=>{e instanceof _e||le(e,`veo`)||(this.walletMode?D.error(this.$t(`common.x402Scenario.paymentFailed`)):D.error(this.$t(`veo.message.startTaskFailed`)))}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})},getWalletContext(){return pe(this.$wallet)},async confirmWalletPayment(e){return Y.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 Qt(e,t,n,r,i,o){let s=l(`config-panel`),c=l(`recent-panel`),u=l(`showcase-result-tabs`),d=l(`layout`);return g(),f(d,null,{config:p(()=>[a(s,{onGenerate:e.onGenerate},null,8,[`onGenerate`])]),result:p(()=>[a(u,{service:`veo`},{tasks:p(()=>[a(c,{ref:`recentPanel`,loading:e.loadingMore,onReachTop:e.onReachTop},null,8,[`loading`,`onReachTop`])]),_:1})]),_:1})}var $t=Z(Zt,[[`render`,Qt]]);export{$t as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import"./rolldown-runtime--c01j_DQ.js";import{A as e,C as t,Gt as n,I as r,Jt as i,L as a,M as o,N as s,T as c,at as l,ht as u,it as d,j as f,mt as p,rt as m,tt as h,x as g,z as _}from"./vendor-chart-Dw-P17PN.js";import{r as v,t as y}from"./select-D9aYzMf6.js";import{t as b}from"./upload-CO2xuaQ0.js";import{t as x}from"./tooltip-CEa69fVd.js";import{t as S}from"./alert-BprQRUmf.js";import{h as C,v as w}from"./models-Cmo-VT-F.js";import{t as T}from"./drawer-DfXjJO_e.js";import{t as E}from"./input-number-BdXZiGUI.js";import{t as D}from"./slider-B0-TGGgS.js";import{t as O}from"./clock-DmG68B_m.js";import{a as k,i as A,n as j,r as ee,s as M,t as N}from"./pagination-Cs8AeOMZ.js";import{t as P}from"./info-Dy6jE77P.js";import{t as F}from"./trash-2-C8cED3lx.js";import{t as te}from"./triangle-alert-BShpWZ9W.js";import{t as ne}from"./upload-Biblaze1.js";import{t as I}from"./wand-sparkles-4VXENbf1.js";import{gr as re,hr as ie,mr as L}from"./constants-D0qyO-4p.js";import{$ as R,Aa as z,J as B,Li as V,O as H,On as U,Q as W,Si as G,bn as K,et as q,ga as J,gr as Y,hr as X,ii as ae,k as Z,nt as oe,oi as se,pa as ce,tt as le,wi as Q}from"./index-C2sgIqPl.js";import{t as ue}from"./CopyToClipboard-DwP8EnVL.js";import{t as de}from"./ReportButton-Bm62Lacf.js";import{t as fe}from"./ImagePreview-DsNhLxjj.js";import{n as pe}from"./taskDrawerMixin-DyAUhFEq.js";import{t as me}from"./ServicePricingSummary-D4FVsXlm.js";import{t as he}from"./ScenarioPaymentMode-D4tV55rH.js";import{t as ge}from"./ApiCodeButton-C7scE7xM.js";import{t as _e}from"./BotPlaceholder-DEGkOm1v.js";import{t as ve}from"./ImageWrapper-BqB7BVOH.js";var ye=_({name:`LayoutFlux`,components:{MagicIcon:I,ElDrawer:T,ElButton:z},mixins:[pe]}),be={class:`main flex flex-row flex-1`},xe={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)]`},Se={class:`result h-full p-6 flex-1 flex flex-col min-w-0 overflow-x-hidden bg-[var(--app-content-bg)]`};function Ce(t,n,r,i,o,c){let f=l(`magic-icon`),m=l(`el-button`),_=l(`el-drawer`);return h(),s(`div`,be,[e(`div`,xe,[d(t.$slots,`config`,{},void 0,!0)]),e(`div`,Se,[d(t.$slots,`result`,{},void 0,!0)]),u(a(m,{circle:``,class:`menu`,"aria-label":t.$t(`common.button.openMenu`),title:t.$t(`common.button.openMenu`),onClick:n[0]||=e=>t.drawer=!0},{default:p(()=>[a(f,{size:`1em`,"aria-hidden":`true`,focusable:`false`})]),_:1},8,[`aria-label`,`title`]),[[g,!t.tasksEmpty]]),a(_,{modelValue:t.drawer,"onUpdate:modelValue":n[1]||=e=>t.drawer=e,direction:`ltr`,"with-header":!1,size:`340px`,class:`drawer generator-drawer`},{default:p(()=>[d(t.$slots,`config`,{},void 0,!0)]),_:3},8,[`modelValue`])])}var we=Z(ye,[[`render`,Ce],[`__scopeId`,`data-v-72e82d52`]]),Te=_({name:`ModelSelector`,components:{ElSelect:v,ElOption:y},props:{modelValue:{type:String,default:void 0}},emits:[`update:modelValue`],data(){return{options:[{value:`flux-dev`,label:`flux-dev`},{value:`flux-pro`,label:`flux-pro`},{value:`flux-kontext-pro`,label:`flux-kontext-pro`},{value:`flux-kontext-max`,label:`flux-kontext-max`},{value:`flux-2-flex`,label:`flux-2-flex`},{value:`flux-2-pro`,label:`flux-2-pro`},{value:`flux-2-max`,label:`flux-2-max`}]}},computed:{value:{get(){return this.$store.state.flux?.config?.model},set(e){this.$store.commit(`flux/setConfig`,{...this.$store.state.flux.config,model:e})}}},mounted(){this.value||=re}}),Ee={class:`field`},De={class:`title font-bold`};function Oe(t,n,r,o,u,d){let g=l(`el-option`),_=l(`el-select`);return h(),s(`div`,Ee,[e(`h2`,De,i(t.$t(`flux.name.model`)),1),a(_,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,class:`value`,placeholder:t.$t(`flux.placeholder.select`)},{default:p(()=>[(h(!0),s(c,null,m(t.options,e=>(h(),f(g,{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`])])}var ke=Z(Te,[[`render`,Oe],[`__scopeId`,`data-v-e9b17945`]]),Ae=_({name:`CountSelector`,components:{ElSlider:D,InfoIcon:k,ElInputNumber:E},computed:{value:{get(){return this.$store.state.flux?.config?.count},set(e){console.debug(`set count`,e),this.$store.commit(`flux/setConfig`,{...this.$store.state.flux?.config,count:e})}}},mounted(){this.value||=1}}),je={class:`flex justify-between`},Me={class:`flex justify-start items-center`},Ne={class:`text-sm font-bold`},Pe={class:`flex justify-end items-center`},Fe={class:`w-full`};function Ie(t,n,r,o,c,u){let d=l(`info-icon`),f=l(`el-input-number`),p=l(`el-slider`);return h(),s(`div`,null,[e(`div`,je,[e(`div`,Me,[e(`span`,Ne,i(t.$t(`flux.name.numbers`)),1),a(d,{content:t.$t(`flux.description.numbers`)},null,8,[`content`])]),e(`div`,Pe,[a(f,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,"controls-position":`right`},null,8,[`modelValue`])])]),e(`div`,Fe,[a(p,{modelValue:t.value,"onUpdate:modelValue":n[1]||=e=>t.value=e,min:1,max:4,step:1},null,8,[`modelValue`])])])}var Le=Z(Ae,[[`render`,Ie]]),Re=_({name:`ActionSelector`,components:{ElSelect:v,ElOption:y},props:{modelValue:{type:String,default:void 0}},emits:[`update:modelValue`],data(){return{options:[{value:`generate`,label:this.$t(`flux.name.generate`)},{value:`edits`,label:this.$t(`flux.name.edits`)}]}},computed:{value:{get(){return this.$store.state.flux?.config?.action},set(e){this.$store.commit(`flux/setConfig`,{...this.$store.state.flux.config,action:e})}}},mounted(){this.value||=ie}}),ze={class:`field`},Be={class:`title font-bold`};function Ve(t,n,r,o,u,d){let g=l(`el-option`),_=l(`el-select`);return h(),s(`div`,ze,[e(`h2`,Be,i(t.$t(`flux.name.task`)),1),a(_,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,class:`value`,placeholder:t.$t(`flux.placeholder.select`)},{default:p(()=>[(h(!0),s(c,null,m(t.options,e=>(h(),f(g,{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`])])}var He=Z(Re,[[`render`,Ve],[`__scopeId`,`data-v-81fd05e5`]]),Ue=_({name:`ImageUrlInput`,components:{UploadIcon:ne,ElUpload:b,ElButton:z,InfoIcon:k,ImagePreview:fe},mixins:[oe,le,R,B],emits:[`change`],data(){return{fileList:[],uploadUrl:ce()+`/api/v1/files/`}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},urls(){return this.fileList.map(e=>e?.response?.file_url)}},watch:{urls:{handler(e){console.debug(`URLs changed:`,e),this.$store.commit(`flux/setConfig`,{...this.$store.state.flux.config,image_url:e[0]})}}},methods:{onExceed(){w.warning(this.$t(`flux.message.uploadStartImageExceed`))},onError(){w.error(this.$t(`flux.message.uploadStartImageError`))}}}),We={class:`relative`},Ge={class:`flex justify-between`},Ke={class:`flex justify-start items-center`},qe={class:`text-sm font-bold`};function Je(t,n,o,c,u,d){let f=l(`info-icon`),m=l(`image-preview`),g=l(`upload-icon`),_=l(`el-button`),v=l(`el-upload`);return h(),s(`div`,We,[e(`div`,Ge,[e(`div`,Ke,[e(`span`,qe,i(t.$t(`flux.name.imageUrl`)),1),a(f,{content:t.$t(`flux.description.imageUrl`)},null,8,[`content`])])]),a(v,{ref:`uploader`,"file-list":t.fileList,"onUpdate:fileList":n[0]||=e=>t.fileList=e,name:`file`,limit:5,class:`upload-wrapper`,accept:`.png,.jpg,.jpeg,.gif,.bmp,.webp`,multiple:!0,"list-type":`picture`,"before-upload":t.beforeUploadSizeGuard,action:t.uploadUrl,"on-exceed":t.onExceed,"on-error":t.onError,headers:t.headers},{file:p(({file:e})=>[a(m,{url:e.url||e.response?.file_url,name:e.name,percentage:e.percentage,onRemove:n=>t.fileList.splice(t.fileList.indexOf(e),1)},null,8,[`url`,`name`,`percentage`,`onRemove`])]),default:p(()=>[a(_,{round:``,type:`primary`,size:`small`,class:`btn btn-upload`},{default:p(()=>[a(g,{class:`icon mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`flux.button.uploadImageUrl`)),1)]),_:1})]),_:1},8,[`file-list`,`before-upload`,`action`,`on-exceed`,`on-error`,`headers`])])}var Ye=Z(Ue,[[`render`,Je],[`__scopeId`,`data-v-9830e0c3`]]),Xe=_({name:`PromptInput`,components:{PromptTextarea:A},computed:{prompt:{get(){return this.$store.state.flux?.config?.prompt},set(e){this.$store.commit(`flux/setConfig`,{...this.$store.state.flux?.config,prompt:e})}}},mounted(){this.prompt||=``}});function Ze(e,t,n,r,i,a){let o=l(`prompt-textarea`);return h(),f(o,{modelValue:e.prompt,"onUpdate:modelValue":t[0]||=t=>e.prompt=t,title:e.$t(`flux.name.prompt`),info:e.$t(`flux.description.prompt`),placeholder:e.$t(`flux.placeholder.prompt`)},null,8,[`modelValue`,`title`,`info`,`placeholder`])}var Qe=Z(Xe,[[`render`,Ze]]),$e=_({name:`SizeSelector`,components:{ElSelect:v,ElOption:y},data(){return{options:L}},computed:{value:{get(){return this.$store.state.flux?.config?.size},set(e){this.$store.commit(`flux/setConfig`,{...this.$store.state.flux?.config,size:e})}}},mounted(){this.value||=`1:1`}}),et={class:`field`},tt={class:`title font-bold`};function nt(t,n,r,o,u,d){let g=l(`el-option`),_=l(`el-select`);return h(),s(`div`,et,[e(`h2`,tt,i(t.$t(`flux.name.ratio`)),1),a(_,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,class:`value`,placeholder:t.$t(`flux.placeholder.select`)},{default:p(()=>[(h(!0),s(c,null,m(t.options,e=>(h(),f(g,{key:e,label:e,value:e},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`])])}var rt=Z($e,[[`render`,nt],[`__scopeId`,`data-v-8c58dc91`]]),it=350,at=_({name:`PresetPanel`,components:{MagicIcon:I,ElButton:z,PromptInput:Qe,ModelSelector:ke,CountSelector:Le,ServicePricingSummary:me,ActionSelector:He,ImageUrlInput:Ye,SizeSelector:rt,ScenarioPaymentMode:he},emits:[`generate`],data(){return{quoteTimer:0,quoteRunId:0}},computed:{config(){return this.$store.state.flux?.config},consumption(){return K(this.config,this.service?.cost)},service(){return this.$store.state.flux?.service},walletMode(){return G()&&Q(`flux`).mode===`wallet`}},watch:{walletMode:{handler(e){e&&this.scheduleQuote()},immediate:!0},config:{handler(){this.walletMode&&this.scheduleQuote()},deep:!0}},beforeUnmount(){window.clearTimeout(this.quoteTimer),this.quoteRunId+=1},methods:{scheduleQuote(){window.clearTimeout(this.quoteTimer),this.quoteTimer=window.setTimeout(this.refreshQuote,it)},async refreshQuote(){let e=Q(`flux`),t=++this.quoteRunId;e.quoteLoading=!0,e.quoteUsdc=void 0;try{let n=await Y.quote(X(this.config));t===this.quoteRunId&&e.mode===`wallet`&&(e.quoteUsdc=n.amountUsdc)}catch(e){console.warn(`x402 quote failed`,e)}finally{t===this.quoteRunId&&(e.quoteLoading=!1)}},onGenerate(){this.$emit(`generate`)}}}),ot={class:`flex flex-col h-full`},st={class:`flex-1 overflow-y-auto p-5`},ct={class:`flex flex-col items-center justify-center px-5 pb-5`};function lt(t,n,c,u,d,m){let g=l(`action-selector`),_=l(`prompt-input`),v=l(`image-url-input`),y=l(`model-selector`),b=l(`size-selector`),x=l(`count-selector`),S=l(`scenario-payment-mode`),C=l(`service-pricing-summary`),w=l(`magic-icon`),T=l(`el-button`);return h(),s(`div`,ot,[e(`div`,st,[a(g,{class:`mb-4`}),a(_,{class:`mb-4`}),t.config?.action===`edits`?(h(),f(v,{key:0,class:`mb-4`})):o(``,!0),a(y,{class:`mb-4`}),a(b,{class:`mb-4`}),a(x,{class:`mb-4`})]),e(`div`,ct,[a(S,{scenario:`flux`}),t.walletMode?o(``,!0):(h(),f(C,{key:0,value:t.consumption,service:t.service},null,8,[`value`,`service`])),a(T,{type:`primary`,class:`btn w-full`,round:``,onClick:t.onGenerate},{default:p(()=>[a(w,{class:`mr-2`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`flux.button.generate`)),1)]),_:1},8,[`onClick`])])])}var ut=Z(at,[[`render`,lt]]),dt=_({name:`TaskPreview`,components:{DeleteIcon:F,ElTooltip:x,ChannelIcon:M,InfoIcon:P,MagicIcon:I,TimeIcon:O,WarningIcon:te,CopyToClipboard:ue,ElAlert:S,ImageWrapper:ve,ApiCodeButton:ge,ReportButton:de},props:{modelValue:{type:Object,required:!0}},data(){return{}},computed:{application(){return this.$store.state.flux?.application},config(){return this.$store.state.flux?.config},images(){let e=[],t=this.modelValue?.request?.action;return Array.isArray(this.modelValue?.response?.data)&&this.modelValue?.response?.data?.forEach(n=>{let r=n;t&&(r.action=t),e.push(r)}),e}},methods:{async onDelete(){let e=this.modelValue?.id;if(e){try{await J.confirm(this.$t(`common.message.deleteTaskConfirm`),this.$t(`common.button.delete`),{type:`warning`,confirmButtonText:this.$t(`common.button.delete`),cancelButtonText:this.$t(`common.button.cancel`),confirmButtonClass:`el-button--danger`})}catch{return}try{await this.$store.dispatch(`flux/deleteTask`,{id:e}),w.success(this.$t(`common.message.deleteTaskSuccess`))}catch{w.error(this.$t(`common.message.deleteTaskFailed`))}}},onDownload(e,t){e?.stopPropagation(),console.log(`on download`),window.open(t,`_blank`)},onOpenImage(e){window.open(e,`_blank`)}}}),ft={class:`preview`},pt={class:`left`},mt={class:`main`},ht={class:`bot`},gt={class:`datetime`},_t=[`aria-label`],vt={class:`info`},yt={key:0,class:`prompt mt-2`},bt={key:0},xt={key:0,class:n({content:!0,failed:!0})},St={class:`flex justify-start items-center gap-4 w-full overflow-x-auto`},Ct={class:n({operations:!0,"mt-2":!0,"mb-2":!0})},wt={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Tt={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Et={key:0,class:`text-[var(--el-text-color-regular)] text-xs mb-0`},$={key:1,class:n({content:!0})},Dt={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Ot={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},kt={key:0,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},At={class:`text-[var(--el-text-color-regular)] text-xs mb-0`},jt={key:2,class:n({content:!0})},Mt={class:`text-[var(--el-text-color-regular)] text-xs mb-0`};function Nt(n,u,d,g,_,v){let y=l(`capability-presentation`),b=l(`delete-icon`),x=l(`el-tooltip`),S=l(`image-wrapper`),C=l(`api-code-button`),w=l(`report-button`),T=l(`channel-icon`),E=l(`magic-icon`),D=l(`copy-to-clipboard`),O=l(`time-icon`),k=l(`el-alert`),A=l(`warning-icon`),j=l(`info-icon`);return h(),s(`div`,ft,[e(`div`,pt,[a(y,{capability:`flux`,part:`avatar`,class:`avatar`})]),e(`div`,mt,[e(`div`,ht,[a(y,{capability:`flux`,part:`name`}),e(`span`,gt,i(n.$dayjs.format(``+new Date(parseFloat((n.modelValue?.created_at||``).toString())*1e3))),1),a(x,{effect:`dark`,content:n.$t(`common.button.delete`),placement:`top`},{default:p(()=>[n.modelValue?.id?(h(),s(`button`,{key:0,type:`button`,class:`btn-delete`,"aria-label":n.$t(`common.button.delete`),onClick:u[0]||=t((...e)=>n.onDelete&&n.onDelete(...e),[`stop`])},[a(b,{size:`1em`,"aria-hidden":`true`,focusable:`false`})],8,_t)):o(``,!0)]),_:1},8,[`content`])]),e(`div`,vt,[n.modelValue?.request?.prompt?(h(),s(`p`,yt,[r(i(n.modelValue?.request?.prompt)+` `,1),n.modelValue?.response?o(``,!0):(h(),s(`span`,bt,` - (`+i(n.$t(`flux.status.pending`))+`) `,1))])):o(``,!0)]),n.modelValue?.response?.success===!0?(h(),s(`div`,xt,[e(`div`,St,[(h(!0),s(c,null,m(n.images,(e,t)=>(h(),f(S,{key:t,src:e?.image_url,"raw-src":e?.image_url,"model-value":e},null,8,[`src`,`raw-src`,`model-value`]))),128))]),e(`div`,Ct,[a(C,{path:`/flux/images`,body:n.modelValue?.request},null,8,[`body`]),a(w,{service:`flux`,"target-id":n.modelValue?.id,snapshot:{prompt:n.modelValue?.request?.prompt}},null,8,[`target-id`,`snapshot`])]),a(k,{closable:!1,class:`mt-2 success`},{default:p(()=>[e(`p`,wt,[a(T,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`flux.name.model`))+`: `+i(n.modelValue?.request?.model),1)]),e(`p`,Tt,[a(E,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`flux.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(D,{content:n.modelValue?.id,class:`btn-copy inline-block`},null,8,[`content`])]),n.modelValue?.elapsed?(h(),s(`p`,Et,[a(O,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`flux.name.elapsed`))+`: `+i(n.modelValue?.elapsed?.toFixed(2))+`s `,1)])):o(``,!0)]),_:1})])):o(``,!0),n.modelValue?.response?.success===!1?(h(),s(`div`,$,[a(k,{closable:!1,class:`failure`},{template:p(()=>[a(A,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`flux.name.failure`)),1)]),default:p(()=>[e(`p`,Dt,[a(E,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`flux.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(D,{content:n.modelValue?.id,class:`btn-copy`},null,8,[`content`])]),e(`p`,Ot,[a(j,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`flux.name.failureReason`))+`: `+i(n.modelValue?.response?.error?.message)+` `,1),a(D,{content:n.modelValue?.response?.error?.message,class:`btn-copy`},null,8,[`content`])]),n.modelValue?.elapsed?(h(),s(`p`,kt,[a(O,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`flux.name.elapsed`))+`: `+i(n.modelValue?.elapsed?.toFixed(2))+`s `,1)])):o(``,!0),e(`p`,At,[a(T,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`flux.name.traceId`))+`: `+i(n.modelValue?.response?.trace_id)+` `,1),a(D,{content:n.modelValue?.response?.trace_id,class:`btn-copy`},null,8,[`content`])])]),_:1})])):o(``,!0),n.modelValue?.response?o(``,!0):(h(),s(`div`,jt,[a(k,{closable:!1,class:`info`},{template:p(()=>[a(O,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`flux.status.pending`)),1)]),default:p(()=>[e(`p`,Mt,[a(E,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`flux.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(D,{content:n.modelValue?.id,class:`btn-copy`},null,8,[`content`])])]),_:1})]))])])}var Pt=_({name:`RecentPanel`,components:{TaskPreview:Z(dt,[[`render`,Nt],[`__scopeId`,`data-v-7bae4285`]]),BotPlaceholder:_e,NoTasks:ee,ScrollList:j},props:{loading:{type:Boolean,default:!1}},emits:[`reach-top`],data(){return{job:0}},computed:{tasks(){return{...this.$store.state.flux?.tasks,items:this.$store.state.flux?.tasks?.items?.slice()}}},methods:{getScrollElement(){return this.$refs.scrollList?.getScrollElement?.()}}}),Ft={key:0},It={key:2,class:`w-full h-full flex items-center justify-center`};function Lt(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`,Ft,[a(d)])):e.tasks?.items?.length&&e.tasks?.items?.length>0?(h(),f(_,{key:1,ref:`scrollList`,class:`tasks h-full w-full overflow-y-auto`,loading:e.loading,onReachTop:t[0]||=t=>e.$emit(`reach-top`)},{default:p(()=>[(h(!0),s(c,null,m(e.tasks?.items,e=>(h(),f(g,{key:e.id,"model-value":e},null,8,[`model-value`]))),128))]),_:1},8,[`loading`])):o(``,!0),e.tasks?.items?.length===0?(h(),s(`div`,It,[a(v)])):o(``,!0)],64)}var Rt=_({name:`FluxIndex`,components:{ConfigPanel:ut,Layout:we,RecentPanel:Z(Pt,[[`render`,Lt]])},mixins:[q],inject:[`initialized`],data(){return{task:void 0,job:0,loadingMore:!1,fetchingTasks:!1,walletTaskIds:[]}},computed:{applicationsLoading(){return this.$store.state.flux?.status?.getApplications===C.Request},tasksLoading(){return this.$store.state.flux?.status?.getTasks===C.Request||this.fetchingTasks},credential(){return this.$store.state.flux?.credential},config(){return this.$store.state.flux?.config},application(){return this.$store.state.flux?.application},tasks(){return this.$store.state.flux?.tasks},walletMode(){return G()&&Q(`flux`).mode===`wallet`}},watch:{walletMode:{async handler(e,t){t===void 0||e===t||(this.$store.commit(`flux/setTasks`,void 0),await this.onGetTasks(),await this.onScrollDown())}},tasks:{handler(e,t){e?.items?.length>t?.items?.length&&console.debug(`new tasks detected`)},deep:!0},initialized:{async handler(e){e&&(console.debug(`layout initialized`),await this.onGetTasks(),await this.onScrollDown(),this.job=window.setInterval(()=>{this.onGetTasks()},5e3))},immediate:!0}},async mounted(){await this.onGetService()},async unmounted(){window.clearInterval(this.job)},methods:{async onReachTop(){await N({tasks:this.tasks,getTasks:()=>this.tasks,loading:this.loadingMore,setLoading:e=>this.loadingMore=e,isBlocked:()=>this.tasksLoading||this.applicationsLoading,fetch:e=>this.onGetTasks({createdAtMax:e}),getScrollElement:()=>this.getTasksScrollElement()})},async onGetService(){console.debug(`start onGetService`),await this.$store.dispatch(`flux/getService`),console.debug(`end onGetService`)},async onGetApplication(){console.debug(`start onGetApplication`),await this.$store.dispatch(`flux/getApplications`),console.debug(`end onGetApplication`),await this.onGetTasks()},async onScrollDown(){await this.$nextTick();let e=this.getTasksScrollElement();e&&(e.scrollTop=e.scrollHeight)},async onGetTasks(e){if(this.applicationsLoading||this.fetchingTasks){console.debug(`loading`);return}console.debug(`start onGetTasks`,e);let{limit:t=5,createdAtMin:n,createdAtMax:r}=e||{};console.debug(`limit`,t,`createdAtMin`,n,`createdAtMax`,r),this.fetchingTasks=!0;try{await this.$store.dispatch(`flux/getTasks`,{limit:t,createdAtMin:n,createdAtMax:r,...this.walletMode&&!this.credential?.token?{mode:`x402`,ids:this.walletTaskIds}:{}})}finally{this.fetchingTasks=!1}},async onGenerate(){if(!W(this.uploadTracker,e=>this.$t(e),e=>w.warning(e)))return;let e=X(this.config),t;if(this.walletMode){let n=this.getWalletContext();if(!n){w.warning(this.$t(`common.x402Scenario.connectWalletFirst`));return}t=Y.generate(e,{mode:`x402`,x402:{wallet:n,confirm:e=>this.confirmWalletPayment(e),identityToken:this.credential?.token}})}else{if(!U())return;let n=this.credential?.token;if(!n)return;t=Y.generate(e,{token:n})}w.info(this.$t(`flux.message.startingTask`)),V(`flux`,t).then(e=>{let t=e?.data?.task_id;this.walletMode&&!this.credential?.token&&t&&!this.walletTaskIds.includes(t)&&this.walletTaskIds.unshift(t),w.success(this.$t(`flux.message.startTaskSuccess`))}).catch(e=>{if(e instanceof ae)return;let t=e?.response?.data;H(e,`flux`)||(this.walletMode?w.error(`${this.$t(`common.x402Scenario.paymentFailed`)} ${e?.message||``}`.trim()):w.error(this.$t(`flux.message.startTaskFailed`)+(t?.error?.message||``)))}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})},getWalletContext(){return se(this.$wallet)},async confirmWalletPayment(e){return J.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 Bt=Z(Rt,[[`render`,zt]]);export{Bt as default};
|
|
1
|
+
import"./rolldown-runtime--c01j_DQ.js";import{A as e,C as t,Gt as n,I as r,Jt as i,L as a,M as o,N as s,T as c,at as l,ht as u,it as d,j as f,mt as p,rt as m,tt as h,x as g,z as _}from"./vendor-chart-Dw-P17PN.js";import{r as v,t as y}from"./select-CKdhNIc_.js";import{t as b}from"./upload-86r_qBlw.js";import{t as x}from"./tooltip-siz_AHre.js";import{t as S}from"./alert-BprQRUmf.js";import{h as C,v as w}from"./models-C3taPMyR.js";import{t as T}from"./drawer-CFnWJn6T.js";import{t as E}from"./input-number-CfzTTv5K.js";import{t as D}from"./slider-C3aZc1TI.js";import{t as O}from"./clock-BjY8ddGs.js";import{a as k,i as A,n as j,r as ee,s as M,t as N}from"./pagination-Ct9iwsuK.js";import{t as P}from"./info-DkDuo54u.js";import{t as F}from"./trash-2-BD_rYfpa.js";import{t as te}from"./triangle-alert-DHBBLtTd.js";import{t as ne}from"./upload-B-5lkMRH.js";import{t as I}from"./wand-sparkles-BJbx6jvi.js";import{br as re,xr as ie,yr as L}from"./constants-BMkG7xao.js";import{$ as R,Da as z,Ga as B,Ii as V,J as H,O as U,Pi as W,Q as G,Xi as K,_r as q,ci as J,et as Y,ja as X,k as Z,kn as ae,nt as oe,oi as se,tt as ce,vr as Q,xn as le}from"./index-Dk3occrO.js";import{t as ue}from"./CopyToClipboard-BjRfLoil.js";import{t as de}from"./ReportButton-lzZe3i6C.js";import{t as fe}from"./ImagePreview-aPBlpOJ8.js";import{n as pe}from"./taskDrawerMixin-DyAUhFEq.js";import{t as me}from"./ServicePricingSummary-DOii-08b.js";import{t as he}from"./ScenarioPaymentMode-BR4cXZk8.js";import{t as ge}from"./ApiCodeButton-DSQPf-rd.js";import{t as _e}from"./BotPlaceholder-DgI03cxu.js";import{t as ve}from"./ImageWrapper-I47JMSBx.js";var ye=_({name:`LayoutFlux`,components:{MagicIcon:I,ElDrawer:T,ElButton:B},mixins:[pe]}),be={class:`main flex flex-row flex-1`},xe={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)]`},Se={class:`result h-full p-6 flex-1 flex flex-col min-w-0 overflow-x-hidden bg-[var(--app-content-bg)]`};function Ce(t,n,r,i,o,c){let f=l(`magic-icon`),m=l(`el-button`),_=l(`el-drawer`);return h(),s(`div`,be,[e(`div`,xe,[d(t.$slots,`config`,{},void 0,!0)]),e(`div`,Se,[d(t.$slots,`result`,{},void 0,!0)]),u(a(m,{circle:``,class:`menu`,"aria-label":t.$t(`common.button.openMenu`),title:t.$t(`common.button.openMenu`),onClick:n[0]||=e=>t.drawer=!0},{default:p(()=>[a(f,{size:`1em`,"aria-hidden":`true`,focusable:`false`})]),_:1},8,[`aria-label`,`title`]),[[g,!t.tasksEmpty]]),a(_,{modelValue:t.drawer,"onUpdate:modelValue":n[1]||=e=>t.drawer=e,direction:`ltr`,"with-header":!1,size:`340px`,class:`drawer generator-drawer`},{default:p(()=>[d(t.$slots,`config`,{},void 0,!0)]),_:3},8,[`modelValue`])])}var we=Z(ye,[[`render`,Ce],[`__scopeId`,`data-v-72e82d52`]]),Te=_({name:`ModelSelector`,components:{ElSelect:v,ElOption:y},props:{modelValue:{type:String,default:void 0}},emits:[`update:modelValue`],data(){return{options:[{value:`flux-dev`,label:`flux-dev`},{value:`flux-pro`,label:`flux-pro`},{value:`flux-kontext-pro`,label:`flux-kontext-pro`},{value:`flux-kontext-max`,label:`flux-kontext-max`},{value:`flux-2-flex`,label:`flux-2-flex`},{value:`flux-2-pro`,label:`flux-2-pro`},{value:`flux-2-max`,label:`flux-2-max`}]}},computed:{value:{get(){return this.$store.state.flux?.config?.model},set(e){this.$store.commit(`flux/setConfig`,{...this.$store.state.flux.config,model:e})}}},mounted(){this.value||=ie}}),Ee={class:`field`},De={class:`title font-bold`};function Oe(t,n,r,o,u,d){let g=l(`el-option`),_=l(`el-select`);return h(),s(`div`,Ee,[e(`h2`,De,i(t.$t(`flux.name.model`)),1),a(_,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,class:`value`,placeholder:t.$t(`flux.placeholder.select`)},{default:p(()=>[(h(!0),s(c,null,m(t.options,e=>(h(),f(g,{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`])])}var ke=Z(Te,[[`render`,Oe],[`__scopeId`,`data-v-e9b17945`]]),Ae=_({name:`CountSelector`,components:{ElSlider:D,InfoIcon:k,ElInputNumber:E},computed:{value:{get(){return this.$store.state.flux?.config?.count},set(e){console.debug(`set count`,e),this.$store.commit(`flux/setConfig`,{...this.$store.state.flux?.config,count:e})}}},mounted(){this.value||=1}}),je={class:`flex justify-between`},Me={class:`flex justify-start items-center`},Ne={class:`text-sm font-bold`},Pe={class:`flex justify-end items-center`},Fe={class:`w-full`};function Ie(t,n,r,o,c,u){let d=l(`info-icon`),f=l(`el-input-number`),p=l(`el-slider`);return h(),s(`div`,null,[e(`div`,je,[e(`div`,Me,[e(`span`,Ne,i(t.$t(`flux.name.numbers`)),1),a(d,{content:t.$t(`flux.description.numbers`)},null,8,[`content`])]),e(`div`,Pe,[a(f,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,"controls-position":`right`},null,8,[`modelValue`])])]),e(`div`,Fe,[a(p,{modelValue:t.value,"onUpdate:modelValue":n[1]||=e=>t.value=e,min:1,max:4,step:1},null,8,[`modelValue`])])])}var Le=Z(Ae,[[`render`,Ie]]),Re=_({name:`ActionSelector`,components:{ElSelect:v,ElOption:y},props:{modelValue:{type:String,default:void 0}},emits:[`update:modelValue`],data(){return{options:[{value:`generate`,label:this.$t(`flux.name.generate`)},{value:`edits`,label:this.$t(`flux.name.edits`)}]}},computed:{value:{get(){return this.$store.state.flux?.config?.action},set(e){this.$store.commit(`flux/setConfig`,{...this.$store.state.flux.config,action:e})}}},mounted(){this.value||=re}}),ze={class:`field`},Be={class:`title font-bold`};function Ve(t,n,r,o,u,d){let g=l(`el-option`),_=l(`el-select`);return h(),s(`div`,ze,[e(`h2`,Be,i(t.$t(`flux.name.task`)),1),a(_,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,class:`value`,placeholder:t.$t(`flux.placeholder.select`)},{default:p(()=>[(h(!0),s(c,null,m(t.options,e=>(h(),f(g,{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`])])}var He=Z(Re,[[`render`,Ve],[`__scopeId`,`data-v-81fd05e5`]]),Ue=_({name:`ImageUrlInput`,components:{UploadIcon:ne,ElUpload:b,ElButton:B,InfoIcon:k,ImagePreview:fe},mixins:[oe,ce,R,H],emits:[`change`],data(){return{fileList:[],uploadUrl:z()+`/api/v1/files/`}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},urls(){return this.fileList.map(e=>e?.response?.file_url)}},watch:{urls:{handler(e){console.debug(`URLs changed:`,e),this.$store.commit(`flux/setConfig`,{...this.$store.state.flux.config,image_url:e[0]})}}},methods:{onExceed(){w.warning(this.$t(`flux.message.uploadStartImageExceed`))},onError(){w.error(this.$t(`flux.message.uploadStartImageError`))}}}),We={class:`relative`},Ge={class:`flex justify-between`},Ke={class:`flex justify-start items-center`},qe={class:`text-sm font-bold`};function Je(t,n,o,c,u,d){let f=l(`info-icon`),m=l(`image-preview`),g=l(`upload-icon`),_=l(`el-button`),v=l(`el-upload`);return h(),s(`div`,We,[e(`div`,Ge,[e(`div`,Ke,[e(`span`,qe,i(t.$t(`flux.name.imageUrl`)),1),a(f,{content:t.$t(`flux.description.imageUrl`)},null,8,[`content`])])]),a(v,{ref:`uploader`,"file-list":t.fileList,"onUpdate:fileList":n[0]||=e=>t.fileList=e,name:`file`,limit:5,class:`upload-wrapper`,accept:`.png,.jpg,.jpeg,.gif,.bmp,.webp`,multiple:!0,"list-type":`picture`,"before-upload":t.beforeUploadSizeGuard,action:t.uploadUrl,"on-exceed":t.onExceed,"on-error":t.onError,headers:t.headers},{file:p(({file:e})=>[a(m,{url:e.url||e.response?.file_url,name:e.name,percentage:e.percentage,onRemove:n=>t.fileList.splice(t.fileList.indexOf(e),1)},null,8,[`url`,`name`,`percentage`,`onRemove`])]),default:p(()=>[a(_,{round:``,type:`primary`,size:`small`,class:`btn btn-upload`},{default:p(()=>[a(g,{class:`icon mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`flux.button.uploadImageUrl`)),1)]),_:1})]),_:1},8,[`file-list`,`before-upload`,`action`,`on-exceed`,`on-error`,`headers`])])}var Ye=Z(Ue,[[`render`,Je],[`__scopeId`,`data-v-9830e0c3`]]),Xe=_({name:`PromptInput`,components:{PromptTextarea:A},computed:{prompt:{get(){return this.$store.state.flux?.config?.prompt},set(e){this.$store.commit(`flux/setConfig`,{...this.$store.state.flux?.config,prompt:e})}}},mounted(){this.prompt||=``}});function Ze(e,t,n,r,i,a){let o=l(`prompt-textarea`);return h(),f(o,{modelValue:e.prompt,"onUpdate:modelValue":t[0]||=t=>e.prompt=t,title:e.$t(`flux.name.prompt`),info:e.$t(`flux.description.prompt`),placeholder:e.$t(`flux.placeholder.prompt`)},null,8,[`modelValue`,`title`,`info`,`placeholder`])}var Qe=Z(Xe,[[`render`,Ze]]),$e=_({name:`SizeSelector`,components:{ElSelect:v,ElOption:y},data(){return{options:L}},computed:{value:{get(){return this.$store.state.flux?.config?.size},set(e){this.$store.commit(`flux/setConfig`,{...this.$store.state.flux?.config,size:e})}}},mounted(){this.value||=`1:1`}}),et={class:`field`},tt={class:`title font-bold`};function nt(t,n,r,o,u,d){let g=l(`el-option`),_=l(`el-select`);return h(),s(`div`,et,[e(`h2`,tt,i(t.$t(`flux.name.ratio`)),1),a(_,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,class:`value`,placeholder:t.$t(`flux.placeholder.select`)},{default:p(()=>[(h(!0),s(c,null,m(t.options,e=>(h(),f(g,{key:e,label:e,value:e},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`])])}var rt=Z($e,[[`render`,nt],[`__scopeId`,`data-v-8c58dc91`]]),it=350,at=_({name:`PresetPanel`,components:{MagicIcon:I,ElButton:B,PromptInput:Qe,ModelSelector:ke,CountSelector:Le,ServicePricingSummary:me,ActionSelector:He,ImageUrlInput:Ye,SizeSelector:rt,ScenarioPaymentMode:he},emits:[`generate`],data(){return{quoteTimer:0,quoteRunId:0}},computed:{config(){return this.$store.state.flux?.config},consumption(){return le(this.config,this.service?.cost)},service(){return this.$store.state.flux?.service},walletMode(){return W()&&V(`flux`).mode===`wallet`}},watch:{walletMode:{handler(e){e&&this.scheduleQuote()},immediate:!0},config:{handler(){this.walletMode&&this.scheduleQuote()},deep:!0}},beforeUnmount(){window.clearTimeout(this.quoteTimer),this.quoteRunId+=1},methods:{scheduleQuote(){window.clearTimeout(this.quoteTimer),this.quoteTimer=window.setTimeout(this.refreshQuote,it)},async refreshQuote(){let e=V(`flux`),t=++this.quoteRunId;e.quoteLoading=!0,e.quoteUsdc=void 0;try{let n=await Q.quote(q(this.config));t===this.quoteRunId&&e.mode===`wallet`&&(e.quoteUsdc=n.amountUsdc)}catch(e){console.warn(`x402 quote failed`,e)}finally{t===this.quoteRunId&&(e.quoteLoading=!1)}},onGenerate(){this.$emit(`generate`)}}}),ot={class:`flex flex-col h-full`},st={class:`flex-1 overflow-y-auto p-5`},ct={class:`flex flex-col items-center justify-center px-5 pb-5`};function lt(t,n,c,u,d,m){let g=l(`action-selector`),_=l(`prompt-input`),v=l(`image-url-input`),y=l(`model-selector`),b=l(`size-selector`),x=l(`count-selector`),S=l(`scenario-payment-mode`),C=l(`service-pricing-summary`),w=l(`magic-icon`),T=l(`el-button`);return h(),s(`div`,ot,[e(`div`,st,[a(g,{class:`mb-4`}),a(_,{class:`mb-4`}),t.config?.action===`edits`?(h(),f(v,{key:0,class:`mb-4`})):o(``,!0),a(y,{class:`mb-4`}),a(b,{class:`mb-4`}),a(x,{class:`mb-4`})]),e(`div`,ct,[a(S,{scenario:`flux`}),t.walletMode?o(``,!0):(h(),f(C,{key:0,value:t.consumption,service:t.service},null,8,[`value`,`service`])),a(T,{type:`primary`,class:`btn w-full`,round:``,onClick:t.onGenerate},{default:p(()=>[a(w,{class:`mr-2`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`flux.button.generate`)),1)]),_:1},8,[`onClick`])])])}var ut=Z(at,[[`render`,lt]]),dt=_({name:`TaskPreview`,components:{DeleteIcon:F,ElTooltip:x,ChannelIcon:M,InfoIcon:P,MagicIcon:I,TimeIcon:O,WarningIcon:te,CopyToClipboard:ue,ElAlert:S,ImageWrapper:ve,ApiCodeButton:ge,ReportButton:de},props:{modelValue:{type:Object,required:!0}},data(){return{}},computed:{application(){return this.$store.state.flux?.application},config(){return this.$store.state.flux?.config},images(){let e=[],t=this.modelValue?.request?.action;return Array.isArray(this.modelValue?.response?.data)&&this.modelValue?.response?.data?.forEach(n=>{let r=n;t&&(r.action=t),e.push(r)}),e}},methods:{async onDelete(){let e=this.modelValue?.id;if(e){try{await X.confirm(this.$t(`common.message.deleteTaskConfirm`),this.$t(`common.button.delete`),{type:`warning`,confirmButtonText:this.$t(`common.button.delete`),cancelButtonText:this.$t(`common.button.cancel`),confirmButtonClass:`el-button--danger`})}catch{return}try{await this.$store.dispatch(`flux/deleteTask`,{id:e}),w.success(this.$t(`common.message.deleteTaskSuccess`))}catch{w.error(this.$t(`common.message.deleteTaskFailed`))}}},onDownload(e,t){e?.stopPropagation(),console.log(`on download`),window.open(t,`_blank`)},onOpenImage(e){window.open(e,`_blank`)}}}),ft={class:`preview`},pt={class:`left`},mt={class:`main`},ht={class:`bot`},gt={class:`datetime`},_t=[`aria-label`],vt={class:`info`},yt={key:0,class:`prompt mt-2`},bt={key:0},xt={key:0,class:n({content:!0,failed:!0})},St={class:`flex justify-start items-center gap-4 w-full overflow-x-auto`},Ct={class:n({operations:!0,"mt-2":!0,"mb-2":!0})},wt={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Tt={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Et={key:0,class:`text-[var(--el-text-color-regular)] text-xs mb-0`},$={key:1,class:n({content:!0})},Dt={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Ot={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},kt={key:0,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},At={class:`text-[var(--el-text-color-regular)] text-xs mb-0`},jt={key:2,class:n({content:!0})},Mt={class:`text-[var(--el-text-color-regular)] text-xs mb-0`};function Nt(n,u,d,g,_,v){let y=l(`capability-presentation`),b=l(`delete-icon`),x=l(`el-tooltip`),S=l(`image-wrapper`),C=l(`api-code-button`),w=l(`report-button`),T=l(`channel-icon`),E=l(`magic-icon`),D=l(`copy-to-clipboard`),O=l(`time-icon`),k=l(`el-alert`),A=l(`warning-icon`),j=l(`info-icon`);return h(),s(`div`,ft,[e(`div`,pt,[a(y,{capability:`flux`,part:`avatar`,class:`avatar`})]),e(`div`,mt,[e(`div`,ht,[a(y,{capability:`flux`,part:`name`}),e(`span`,gt,i(n.$dayjs.format(``+new Date(parseFloat((n.modelValue?.created_at||``).toString())*1e3))),1),a(x,{effect:`dark`,content:n.$t(`common.button.delete`),placement:`top`},{default:p(()=>[n.modelValue?.id?(h(),s(`button`,{key:0,type:`button`,class:`btn-delete`,"aria-label":n.$t(`common.button.delete`),onClick:u[0]||=t((...e)=>n.onDelete&&n.onDelete(...e),[`stop`])},[a(b,{size:`1em`,"aria-hidden":`true`,focusable:`false`})],8,_t)):o(``,!0)]),_:1},8,[`content`])]),e(`div`,vt,[n.modelValue?.request?.prompt?(h(),s(`p`,yt,[r(i(n.modelValue?.request?.prompt)+` `,1),n.modelValue?.response?o(``,!0):(h(),s(`span`,bt,` - (`+i(n.$t(`flux.status.pending`))+`) `,1))])):o(``,!0)]),n.modelValue?.response?.success===!0?(h(),s(`div`,xt,[e(`div`,St,[(h(!0),s(c,null,m(n.images,(e,t)=>(h(),f(S,{key:t,src:e?.image_url,"raw-src":e?.image_url,"model-value":e},null,8,[`src`,`raw-src`,`model-value`]))),128))]),e(`div`,Ct,[a(C,{path:`/flux/images`,body:n.modelValue?.request},null,8,[`body`]),a(w,{service:`flux`,"target-id":n.modelValue?.id,snapshot:{prompt:n.modelValue?.request?.prompt}},null,8,[`target-id`,`snapshot`])]),a(k,{closable:!1,class:`mt-2 success`},{default:p(()=>[e(`p`,wt,[a(T,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`flux.name.model`))+`: `+i(n.modelValue?.request?.model),1)]),e(`p`,Tt,[a(E,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`flux.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(D,{content:n.modelValue?.id,class:`btn-copy inline-block`},null,8,[`content`])]),n.modelValue?.elapsed?(h(),s(`p`,Et,[a(O,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`flux.name.elapsed`))+`: `+i(n.modelValue?.elapsed?.toFixed(2))+`s `,1)])):o(``,!0)]),_:1})])):o(``,!0),n.modelValue?.response?.success===!1?(h(),s(`div`,$,[a(k,{closable:!1,class:`failure`},{template:p(()=>[a(A,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`flux.name.failure`)),1)]),default:p(()=>[e(`p`,Dt,[a(E,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`flux.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(D,{content:n.modelValue?.id,class:`btn-copy`},null,8,[`content`])]),e(`p`,Ot,[a(j,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`flux.name.failureReason`))+`: `+i(n.modelValue?.response?.error?.message)+` `,1),a(D,{content:n.modelValue?.response?.error?.message,class:`btn-copy`},null,8,[`content`])]),n.modelValue?.elapsed?(h(),s(`p`,kt,[a(O,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`flux.name.elapsed`))+`: `+i(n.modelValue?.elapsed?.toFixed(2))+`s `,1)])):o(``,!0),e(`p`,At,[a(T,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`flux.name.traceId`))+`: `+i(n.modelValue?.response?.trace_id)+` `,1),a(D,{content:n.modelValue?.response?.trace_id,class:`btn-copy`},null,8,[`content`])])]),_:1})])):o(``,!0),n.modelValue?.response?o(``,!0):(h(),s(`div`,jt,[a(k,{closable:!1,class:`info`},{template:p(()=>[a(O,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`flux.status.pending`)),1)]),default:p(()=>[e(`p`,Mt,[a(E,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`flux.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(D,{content:n.modelValue?.id,class:`btn-copy`},null,8,[`content`])])]),_:1})]))])])}var Pt=_({name:`RecentPanel`,components:{TaskPreview:Z(dt,[[`render`,Nt],[`__scopeId`,`data-v-7bae4285`]]),BotPlaceholder:_e,NoTasks:ee,ScrollList:j},props:{loading:{type:Boolean,default:!1}},emits:[`reach-top`],data(){return{job:0}},computed:{tasks(){return{...this.$store.state.flux?.tasks,items:this.$store.state.flux?.tasks?.items?.slice()}}},methods:{getScrollElement(){return this.$refs.scrollList?.getScrollElement?.()}}}),Ft={key:0},It={key:2,class:`w-full h-full flex items-center justify-center`};function Lt(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`,Ft,[a(d)])):e.tasks?.items?.length&&e.tasks?.items?.length>0?(h(),f(_,{key:1,ref:`scrollList`,class:`tasks h-full w-full overflow-y-auto`,loading:e.loading,onReachTop:t[0]||=t=>e.$emit(`reach-top`)},{default:p(()=>[(h(!0),s(c,null,m(e.tasks?.items,e=>(h(),f(g,{key:e.id,"model-value":e},null,8,[`model-value`]))),128))]),_:1},8,[`loading`])):o(``,!0),e.tasks?.items?.length===0?(h(),s(`div`,It,[a(v)])):o(``,!0)],64)}var Rt=_({name:`FluxIndex`,components:{ConfigPanel:ut,Layout:we,RecentPanel:Z(Pt,[[`render`,Lt]])},mixins:[Y],inject:[`initialized`],data(){return{task:void 0,job:0,loadingMore:!1,fetchingTasks:!1,walletTaskIds:[]}},computed:{applicationsLoading(){return this.$store.state.flux?.status?.getApplications===C.Request},tasksLoading(){return this.$store.state.flux?.status?.getTasks===C.Request||this.fetchingTasks},credential(){return this.$store.state.flux?.credential},config(){return this.$store.state.flux?.config},application(){return this.$store.state.flux?.application},tasks(){return this.$store.state.flux?.tasks},walletMode(){return W()&&V(`flux`).mode===`wallet`}},watch:{walletMode:{async handler(e,t){t===void 0||e===t||(this.$store.commit(`flux/setTasks`,void 0),await this.onGetTasks(),await this.onScrollDown())}},tasks:{handler(e,t){e?.items?.length>t?.items?.length&&console.debug(`new tasks detected`)},deep:!0},initialized:{async handler(e){e&&(console.debug(`layout initialized`),await this.onGetTasks(),await this.onScrollDown(),this.job=window.setInterval(()=>{this.onGetTasks()},5e3))},immediate:!0}},async mounted(){await this.onGetService()},async unmounted(){window.clearInterval(this.job)},methods:{async onReachTop(){await N({tasks:this.tasks,getTasks:()=>this.tasks,loading:this.loadingMore,setLoading:e=>this.loadingMore=e,isBlocked:()=>this.tasksLoading||this.applicationsLoading,fetch:e=>this.onGetTasks({createdAtMax:e}),getScrollElement:()=>this.getTasksScrollElement()})},async onGetService(){console.debug(`start onGetService`),await this.$store.dispatch(`flux/getService`),console.debug(`end onGetService`)},async onGetApplication(){console.debug(`start onGetApplication`),await this.$store.dispatch(`flux/getApplications`),console.debug(`end onGetApplication`),await this.onGetTasks()},async onScrollDown(){await this.$nextTick();let e=this.getTasksScrollElement();e&&(e.scrollTop=e.scrollHeight)},async onGetTasks(e){if(this.applicationsLoading||this.fetchingTasks){console.debug(`loading`);return}console.debug(`start onGetTasks`,e);let{limit:t=5,createdAtMin:n,createdAtMax:r}=e||{};console.debug(`limit`,t,`createdAtMin`,n,`createdAtMax`,r),this.fetchingTasks=!0;try{await this.$store.dispatch(`flux/getTasks`,{limit:t,createdAtMin:n,createdAtMax:r,...this.walletMode&&!this.credential?.token?{mode:`x402`,ids:this.walletTaskIds}:{}})}finally{this.fetchingTasks=!1}},async onGenerate(){if(!G(this.uploadTracker,e=>this.$t(e),e=>w.warning(e)))return;let e=q(this.config),t;if(this.walletMode){let n=this.getWalletContext();if(!n){w.warning(this.$t(`common.x402Scenario.connectWalletFirst`));return}t=Q.generate(e,{mode:`x402`,x402:{wallet:n,confirm:e=>this.confirmWalletPayment(e),identityToken:this.credential?.token}})}else{if(!ae())return;let n=this.credential?.token;if(!n)return;t=Q.generate(e,{token:n})}w.info(this.$t(`flux.message.startingTask`)),K(`flux`,t).then(e=>{let t=e?.data?.task_id;this.walletMode&&!this.credential?.token&&t&&!this.walletTaskIds.includes(t)&&this.walletTaskIds.unshift(t),w.success(this.$t(`flux.message.startTaskSuccess`))}).catch(e=>{if(e instanceof se)return;let t=e?.response?.data;U(e,`flux`)||(this.walletMode?w.error(this.$t(`common.x402Scenario.paymentFailed`)):w.error(this.$t(`flux.message.startTaskFailed`)+(t?.error?.message||``)))}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})},getWalletContext(){return J(this.$wallet)},async confirmWalletPayment(e){return X.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 Bt=Z(Rt,[[`render`,zt]]);export{Bt as default};
|