@acedatacloud/nexior 3.336.2 → 3.336.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/assets/{ApiCodeButton-Bq1o8E9q.js → ApiCodeButton-B7wjtH_v.js} +1 -1
- package/dist/assets/{Artifacts-DgfQULIo.js → Artifacts-DNNi-vNv.js} +1 -1
- package/dist/assets/{AskUserQuestionCard-C93L5_2u.js → AskUserQuestionCard-Bfuzrslq.js} +1 -1
- package/dist/assets/{AudioPreview-C4JRWMSN.js → AudioPreview-PKn-keso.js} +1 -1
- package/dist/assets/{Auth-BFMX7_Uq.js → Auth-CpXbmpjW.js} +1 -1
- package/dist/assets/{Bare-D0Ak7AHD.js → Bare-tgSFsqp-.js} +1 -1
- package/dist/assets/{BotPlaceholder-CWM-26bc.js → BotPlaceholder-Ciz09doX.js} +1 -1
- package/dist/assets/{BottomFooter-6QXffQ2Z.js → BottomFooter-Bhlkexle.js} +1 -1
- package/dist/assets/{Callback-3L-0igJ7.js → Callback-BdSMWIxV.js} +1 -1
- package/dist/assets/{CodeSnippet-D-XnInna.js → CodeSnippet-CC6vG79Z.js} +1 -1
- package/dist/assets/{Console-DbtP7Fxb.js → Console-hzG1W3y_.js} +1 -1
- package/dist/assets/{Consumption-D14USkw2.js → Consumption-C5Dn3lp_.js} +1 -1
- package/dist/assets/{Conversation-lVJTqwtJ.js → Conversation-C3lgyAs2.js} +1 -1
- package/dist/assets/{Conversation-DoqaB0Zi.js → Conversation-C4qhYBuP.js} +1 -1
- package/dist/assets/{CopyToClipboard-CwUIV3sA.js → CopyToClipboard-o7ZAAs0c.js} +1 -1
- package/dist/assets/{Detail-BVzVfhqH.js → Detail-6pMr7M8n.js} +2 -2
- package/dist/assets/{Extra-hwWuRTwa.js → Extra-DCGuthJC.js} +1 -1
- package/dist/assets/{FilePreview-B5nFY9Tn.js → FilePreview-DurqJ-ny.js} +1 -1
- package/dist/assets/{Hailuo-n5ATiIHc.js → Hailuo-B6dhMNW_.js} +1 -1
- package/dist/assets/{History-BEkOF28r.js → History-B3iLYG2g.js} +1 -1
- package/dist/assets/{ImagePreview-Cod5m2VA.js → ImagePreview-RN3N0RLb.js} +1 -1
- package/dist/assets/{ImageWrapper-CId6JKHn.js → ImageWrapper-DnTAW35X.js} +1 -1
- package/dist/assets/{Index-Cha6DbFG.js → Index-6fLGXXzz.js} +1 -1
- package/dist/assets/{Index-Dfpp-oUM.js → Index-B2E9rotD.js} +1 -1
- package/dist/assets/{Index-7r4zMu5-.js → Index-B6f0sBbK.js} +1 -1
- package/dist/assets/{Index-Uy7Cu4Xf.js → Index-B8K1W7_p.js} +1 -1
- package/dist/assets/{Index-CstmQzWd2.js → Index-BHc1Iu2k2.js} +1 -1
- package/dist/assets/{Index-BaYcBC7L2.js → Index-BL5KrFQ12.js} +1 -1
- package/dist/assets/{Index-BRPfXB1_.js → Index-BOUbuxgE.js} +1 -1
- package/dist/assets/{Index-B6ntGedy2.js → Index-BRUEoaEN2.js} +1 -1
- package/dist/assets/{Index-2IUzu9Rn.js → Index-BpUGCeSr.js} +1 -1
- package/dist/assets/{Index-C8EM8TnU.js → Index-BsRYymkH.js} +1 -1
- package/dist/assets/{Index-CoTiBFzc.js → Index-BwUMmkNP.js} +1 -1
- package/dist/assets/{Index-BOO_uk3M.js → Index-CHbQ7NZg.js} +1 -1
- package/dist/assets/{Index-CJw5_-XK2.js → Index-CNB52jP-2.js} +1 -1
- package/dist/assets/{Index-CZIZCnwZ.js → Index-CY2M_D2e.js} +1 -1
- package/dist/assets/{Index-DrgyuhDp.js → Index-CYJBdU7s.js} +1 -1
- package/dist/assets/{Index-Dv1o5Cp72.js → Index-C_URFbtZ2.js} +1 -1
- package/dist/assets/{Index-CbbLiKTl.js → Index-CziZMz11.js} +1 -1
- package/dist/assets/{Index-CuXfaUEs.js → Index-D-ZW986_.js} +1 -1
- package/dist/assets/{Index-DKAbvL_q.js → Index-D32NzdGq.js} +1 -1
- package/dist/assets/{Index-B4DZrPp8.js → Index-DB5CAC1D.js} +1 -1
- package/dist/assets/{Index-C4yN0UPB2.js → Index-DCpc6GN02.js} +1 -1
- package/dist/assets/{Index-SKzfvq-6.js → Index-DESfQdWv.js} +1 -1
- package/dist/assets/{Index-6T8sbaWK.js → Index-DFYETQfw.js} +1 -1
- package/dist/assets/{Index-DIetY8xU.js → Index-DbzPtHBT.js} +1 -1
- package/dist/assets/{Index-DFkAyuvy.js → Index-Df7HeGF0.js} +1 -1
- package/dist/assets/{Index-BflASWc3.js → Index-DtXIKDZz.js} +1 -1
- package/dist/assets/{Index-kmWvMBSb.js → Index-TbW58Aqg.js} +1 -1
- package/dist/assets/{Index-U69WFyLL.js → Index-VcN8b2vu.js} +1 -1
- package/dist/assets/{Index-BtqDucI72.js → Index-g3Jsxdux2.js} +1 -1
- package/dist/assets/{Index-ILU9DAEE.js → Index-p09y7GRv.js} +1 -1
- package/dist/assets/{Invitees-uIsBa7T7.js → Invitees-nKHCq7XE.js} +1 -1
- package/dist/assets/{List-3VXHK7EW.js → List-BP8wKBD7.js} +1 -1
- package/dist/assets/{List-CroNWYLF.js → List-DbFXxkkD.js} +1 -1
- package/dist/assets/{List-Cr-y_WpJ.js → List-sfO5-gd2.js} +1 -1
- package/dist/assets/{LocalTools-DVzsO2eB.js → LocalTools-DXPU05lw.js} +1 -1
- package/dist/assets/{LocalTools-D_8c1BvR.js → LocalTools-DrWexanC.js} +1 -1
- package/dist/assets/{Main-DWPNZ5DY.js → Main-qodIy9iJ.js} +1 -1
- package/dist/assets/{Message-CQUdJPxc.js → Message-DCMkv8t_.js} +1 -1
- package/dist/assets/{Model-DBL--_Z5.js → Model-CUi--th_.js} +1 -1
- package/dist/assets/{Navigator-BQdt47O5.js → Navigator-N4m7M9ZI.js} +3 -3
- package/dist/assets/{NotFound-CbYhJPKu.js → NotFound-Dwh5nu3b.js} +1 -1
- package/dist/assets/{Pay-CXbGN2v7.js → Pay-Ca75M7XE.js} +1 -1
- package/dist/assets/{Player-hhpjdSPR.js → Player-DvCSSsIV.js} +1 -1
- package/dist/assets/{Poivelle-B6w4Nbyf.js → Poivelle-Di7f8pr2.js} +1 -1
- package/dist/assets/{PromptTextarea-nhjTRPsO.js → PromptTextarea-CMi86YLj.js} +1 -1
- package/dist/assets/{RealtimeCall-CtrG5Vwb.js → RealtimeCall-CXS59Yza.js} +1 -1
- package/dist/assets/ScheduledTasks-BOICFHHQ.css +1 -0
- package/dist/assets/ScheduledTasks-BxfBHHOD.js +2 -0
- package/dist/assets/{Status-C4_0xDss.js → Status-CjEe0gG_.js} +1 -1
- package/dist/assets/{Subscribe-_J7Rx5r2.js → Subscribe-DuGfgWJf.js} +1 -1
- package/dist/assets/{TabSwitcher-DbDceO09.js → TabSwitcher-CA6JJ-44.js} +1 -1
- package/dist/assets/{Tts-Gkt6N10i.js → Tts-BCJI511u.js} +1 -1
- package/dist/assets/{VideoPlayer-aMdV9y1d.js → VideoPlayer-BrIjSwhO.js} +1 -1
- package/dist/assets/{alert-CnaTI5Gp.js → alert-Du-kIP6d.js} +1 -1
- package/dist/assets/arrow-down-D5iW_Ly9.js +1 -0
- package/dist/assets/{arrow-down-wide-narrow-J9ZgH-Fn.js → arrow-down-wide-narrow-pcZVn-0R.js} +1 -1
- package/dist/assets/arrow-left-C9fYvzw0.js +1 -0
- package/dist/assets/arrow-right-DUh0WGt_.js +1 -0
- package/dist/assets/arrow-up-BCpu-29n.js +1 -0
- package/dist/assets/{avatar-D-vR7c8b.js → avatar-BMaESudt.js} +1 -1
- package/dist/assets/{basic-BmoZE7VK.js → basic-BZfyafSa.js} +1 -1
- package/dist/assets/{box-LABsHSHx.js → box-CcCHrqHP.js} +1 -1
- package/dist/assets/{boxes-sA0c12wS.js → boxes-BrDyuVkt.js} +1 -1
- package/dist/assets/{brain-DYrg6y6L.js → brain-BI9Oinez.js} +1 -1
- package/dist/assets/{chart-no-axes-combined-5KUIHv31.js → chart-no-axes-combined-QHa98Qn7.js} +1 -1
- package/dist/assets/{chat-Dg5JEYoj.js → chat-1pEa1YEZ.js} +1 -1
- package/dist/assets/{chat-CepZtiHg.js → chat-AMpyodyn.js} +1 -1
- package/dist/assets/{chat-BatAXKUU.js → chat-B9Fu8fX-.js} +1 -1
- package/dist/assets/{chat-B1i-91Hg.js → chat-BPCSFcfM.js} +1 -1
- package/dist/assets/{chat-CJh605Lm.js → chat-BS31MwI6.js} +1 -1
- package/dist/assets/{chat-CZF9PzEL.js → chat-BeR0l84_.js} +1 -1
- package/dist/assets/{chat-FR-O_1-t.js → chat-BhKO5quC.js} +1 -1
- package/dist/assets/{chat-TnJ_kd1I.js → chat-CGPkqsTQ.js} +1 -1
- package/dist/assets/{chat-DWHuuuOb.js → chat-CIOhaEzE.js} +1 -1
- package/dist/assets/{chat-BIxlpRpi.js → chat-CTPGO2iD.js} +1 -1
- package/dist/assets/{chat-BDppmDU5.js → chat-CeTRaE8J.js} +1 -1
- package/dist/assets/{chat-Cb7xxU-h.js → chat-CxlV2Smi.js} +1 -1
- package/dist/assets/{chat-C2YcAZkK.js → chat-D2B7ZQBL.js} +1 -1
- package/dist/assets/{chat-DwNXuT7R.js → chat-D6ACgN7D.js} +1 -1
- package/dist/assets/{chat-rg4beUWH.js → chat-Df31NUWX.js} +1 -1
- package/dist/assets/{chat-DREiTsAX.js → chat-NR_Hkayg.js} +1 -1
- package/dist/assets/{chat-CcmwesQz.js → chat-iAf-82T0.js} +1 -1
- package/dist/assets/{chat-eQACM9OR.js → chat-pTuIhib_.js} +1 -1
- package/dist/assets/{chat-B4IiEcYC.js → chat-rT7FnJha.js} +1 -1
- package/dist/assets/check-C_D7BOJu.js +1 -0
- package/dist/assets/chevron-down-CSC_XidV.js +1 -0
- package/dist/assets/chevron-right-IUE2IAoX.js +1 -0
- package/dist/assets/circle-check-BrMeORpZ.js +1 -0
- package/dist/assets/clock-D3yOwNlp.js +1 -0
- package/dist/assets/{codingBridge-iTvEhcgx.js → codingBridge-BUMdtOBQ.js} +1 -1
- package/dist/assets/{codingBridgeNotify-Bps3ubJO.js → codingBridgeNotify-p1ma2x-U.js} +2 -2
- package/dist/assets/{coins-csoYhKWo.js → coins-BdwYKEYT.js} +1 -1
- package/dist/assets/{collapse-REPDtdUv.js → collapse-FgaVspFq.js} +1 -1
- package/dist/assets/{constants-B0QZudfQ.js → constants-DmRAKvwo.js} +1 -1
- package/dist/assets/{copy-CBsZ8p0j.js → copy-vUaZkuWs.js} +1 -1
- package/dist/assets/{createTaskActions-B0SEvsac.js → createTaskActions-BcXBiovU.js} +1 -1
- package/dist/assets/{digitalhuman-BsqpR4Gz.js → digitalhuman-n6qgI4SK.js} +1 -1
- package/dist/assets/{dollar-sign-UTTUouLz.js → dollar-sign-fWMwoH-d.js} +1 -1
- package/dist/assets/{download-rdeQ51Fr.js → download-BDK7MfA8.js} +1 -1
- package/dist/assets/{drawer-WJpD3B-h.js → drawer-U5-wdIK9.js} +1 -1
- package/dist/assets/{dropdown-D4yO_NmO.js → dropdown-CEUIJePj.js} +1 -1
- package/dist/assets/{dropdown-DVrNPZkU.js → dropdown-DTUIhuLd.js} +1 -1
- package/dist/assets/{ellipsis-qpFv_XZT.js → ellipsis-DP1SWYjN.js} +1 -1
- package/dist/assets/{esm-D5Sc5kcr.js → esm-CIuD2EQE.js} +2 -2
- package/dist/assets/{esm-CNx0Yv1f.js → esm-DKRdie1a.js} +1 -1
- package/dist/assets/{esm-ayy5K5gq.js → esm-Dq4Dycdb.js} +2 -2
- package/dist/assets/esm-DwNUu3IP.js +1 -0
- package/dist/assets/{esm-C3u3adz_.js → esm-LRtqesUM.js} +3 -3
- package/dist/assets/{esm-Y6vqnX5i.js → esm-OJa9b0NF.js} +1 -1
- package/dist/assets/{esm-BeVk5kqq.js → esm-k3mte4Wa.js} +1 -1
- package/dist/assets/{external-link-CD09gDkB.js → external-link-BI7ufMLq.js} +1 -1
- package/dist/assets/{eye-CSx8C1i4.js → eye-CBDzv1Ld.js} +1 -1
- package/dist/assets/{file-output-BvSIxwKu.js → file-output-CflReqH9.js} +1 -1
- package/dist/assets/{file-text-BO0wmtBS.js → file-text-CMjIvbFg.js} +1 -1
- package/dist/assets/{fish-puPUUpL6.js → fish-kOCP2xrr.js} +1 -1
- package/dist/assets/{flux-PUmAU_4X.js → flux-BDXLQCWH.js} +1 -1
- package/dist/assets/{folder-CgnOt8zL.js → folder-DnBBDwra.js} +1 -1
- package/dist/assets/gauge-Cnpclh5G.js +1 -0
- package/dist/assets/{globe-QciOpfcX.js → globe-DF8FNQwf.js} +1 -1
- package/dist/assets/{grokvideo-DB3wZwMX.js → grokvideo-Dg4L0w-K.js} +1 -1
- package/dist/assets/{hailuo-CvFkoay9.js → hailuo-CPuBVQFa.js} +1 -1
- package/dist/assets/{headphones-BcS0Iz_J.js → headphones-CJFi9FdA.js} +1 -1
- package/dist/assets/{history-D01TFbTf.js → history-BIw6yyHY.js} +1 -1
- package/dist/assets/{house-DCO2t6k5.js → house-DnGt0E34.js} +1 -1
- package/dist/assets/{i18n-CX3zGsC_.js → i18n-DLjs_vhP.js} +1 -1
- package/dist/assets/{image-Csdrf1Q9.js → image-1Ye5CSlo.js} +1 -1
- package/dist/assets/{index-CilVeL08.js → index-SFwaJFVg.js} +4 -4
- package/dist/assets/{index.browser.esm-Be4Ar_Vr.js → index.browser.esm-DlEvO0Xq.js} +1 -1
- package/dist/assets/{index.es-DOpWnELV.js → index.es-vNkvIhdl.js} +1 -1
- package/dist/assets/{info-beFALQcg.js → info-B-wBOS_X.js} +1 -1
- package/dist/assets/{input-number-Cu-ypyye.js → input-number-DySKK0eZ.js} +1 -1
- package/dist/assets/{key-round-oXY7iESp.js → key-round-iS0QXR40.js} +1 -1
- package/dist/assets/{kling-D8BXWsYi.js → kling-CrUNsoeC.js} +1 -1
- package/dist/assets/{languages-kC83X2jl.js → languages-INDSz30R.js} +1 -1
- package/dist/assets/{laptop-CJTCzfhy.js → laptop-B6jymGdf.js} +1 -1
- package/dist/assets/{lightbulb-Cea3BT4V.js → lightbulb-Ds8ul1A2.js} +1 -1
- package/dist/assets/{link-D8GcdOin.js → link-SWurlK0K.js} +1 -1
- package/dist/assets/loader-circle-eWKIrwr1.js +1 -0
- package/dist/assets/{luma-DYVsROE2.js → luma-CeNinvJK.js} +1 -1
- package/dist/assets/{maestro-DDReA6S3.js → maestro-C0LjRcmm.js} +1 -1
- package/dist/assets/{maestro-hNT6kQ_L.js → maestro-T7L9idpb.js} +1 -1
- package/dist/assets/{mail-8DqAXB5Q.js → mail-BSe0Yzf2.js} +1 -1
- package/dist/assets/{message-circle-Vf0L-vAU.js → message-circle-DaOSK-NH.js} +1 -1
- package/dist/assets/{mic-EYDQ6u7s.js → mic-DHmuigIP.js} +1 -1
- package/dist/assets/{midjourney-D7HF6aEl.js → midjourney-Bj0Mm16F.js} +1 -1
- package/dist/assets/{mobileLocalExec-DRrShWMw.js → mobileLocalExec-C7gRSWVo.js} +2 -2
- package/dist/assets/{mouse-pointer-2-tkbwXli2.js → mouse-pointer-2-DjmU7e6C.js} +1 -1
- package/dist/assets/music-2-tWYR1e2p.js +1 -0
- package/dist/assets/{nanobanana-6Jil3yid.js → nanobanana-CdUQFcTB.js} +1 -1
- package/dist/assets/{omni-CdOEP84p.js → omni-VGoynFgK.js} +1 -1
- package/dist/assets/{openaiimage-BwfRCt5g.js → openaiimage-BTk54Wrs.js} +1 -1
- package/dist/assets/{pagination-hGuMVaBt.js → pagination-C3CGbJVG.js} +1 -1
- package/dist/assets/{pagination-Vp5X9f7J.js → pagination-DMf58xzU.js} +1 -1
- package/dist/assets/{palette-C8Ap_kW7.js → palette-BqUpjNiw.js} +1 -1
- package/dist/assets/{paperclip-DkvhOwZa.js → paperclip-B-Le9qli.js} +1 -1
- package/dist/assets/{pause-kKFHkNIN.js → pause-eqGqwSAk.js} +1 -1
- package/dist/assets/{pencil-CASuP2Rf.js → pencil-CL-w4hLw.js} +1 -1
- package/dist/assets/{pika-CvWSlBUj.js → pika-CbSX9HSf.js} +1 -1
- package/dist/assets/{pixverse-j1hKrmi0.js → pixverse-jeBz7K3i.js} +1 -1
- package/dist/assets/play-Ci3Q5U6F.js +1 -0
- package/dist/assets/plus-D-w-LyBe.js +1 -0
- package/dist/assets/{poivelle-i79xfqm7.js → poivelle-DiWTioZJ.js} +1 -1
- package/dist/assets/{popover-221rYZfL.js → popover-CXrF6Xtq.js} +1 -1
- package/dist/assets/{producer-DmbQhMMp.js → producer-CcDxGwCz.js} +1 -1
- package/dist/assets/{qrart-Bhy29Vds.js → qrart-CIo1Iv5A.js} +1 -1
- package/dist/assets/{realtime-BfIK-QMv.js → realtime-CIuSCdnE.js} +1 -1
- package/dist/assets/{refresh-cw-Bk6O06_R.js → refresh-cw-pcaqqH-u.js} +1 -1
- package/dist/assets/rotate-ccw-BOE7nvQb.js +1 -0
- package/dist/assets/rotate-cw-DANNulS9.js +1 -0
- package/dist/assets/{row-D7BfMIZB.js → row-B8TxwA1l.js} +1 -1
- package/dist/assets/search-9gVCtA_e.js +1 -0
- package/dist/assets/{seedance-kLNHaRR1.js → seedance-DKArUm5x.js} +1 -1
- package/dist/assets/{seedream-BSGuGmgp.js → seedream-DjuyTala.js} +1 -1
- package/dist/assets/{select-C1DRhWnC.js → select-B5xUToXJ.js} +1 -1
- package/dist/assets/{serp--Y_jbAC2.js → serp-CZo2aTVZ.js} +1 -1
- package/dist/assets/{shield-BqheksGZ.js → shield-DER949_v.js} +1 -1
- package/dist/assets/{shuffle-CC-mkWxC.js → shuffle-RFetiBmk.js} +1 -1
- package/dist/assets/{slider-B0XWCQ-9.js → slider-aeAGA0Ec.js} +1 -1
- package/dist/assets/{sliders-horizontal-B_GbFRLT.js → sliders-horizontal-BThR6srn.js} +1 -1
- package/dist/assets/{solana-wallets-DLfRfPbT.js → solana-wallets-DN-R6ZLy.js} +2 -2
- package/dist/assets/{solana-wallets-vue-CIzcFVaZ.js → solana-wallets-vue-DnV1YmH-.js} +1 -1
- package/dist/assets/{sora-BeO7QhCK.js → sora-m_p4xVaI.js} +1 -1
- package/dist/assets/{sparkles-YDxvQ-9c.js → sparkles-2MT3pHrF.js} +1 -1
- package/dist/assets/square-C-4FzvYp.js +1 -0
- package/dist/assets/{suno-wNkURL1W.js → suno-Cx8dY5A6.js} +1 -1
- package/dist/assets/{switch-D8nKhRhq.js → switch-B2zhTxNP.js} +1 -1
- package/dist/assets/{table-DxVjaIcd.js → table-BACMyZka.js} +1 -1
- package/dist/assets/{tabs-YP0EqXmu.js → tabs-DdDMAO-6.js} +1 -1
- package/dist/assets/{tag-Dkb23AYB.js → tag-Bqsg7qrH.js} +1 -1
- package/dist/assets/{taskDrawerMixin-BYiVGM2q.js → taskDrawerMixin-zmmVKGal.js} +1 -1
- package/dist/assets/terminal-tgEdJAHE.js +1 -0
- package/dist/assets/{time-picker-CXfQUV9w.js → time-picker-Ccs8ol-N.js} +1 -1
- package/dist/assets/{tooltip-BUeFXdRV.js → tooltip-C29VE8lc.js} +1 -1
- package/dist/assets/{trash-2-BAYs4oSn.js → trash-2-DagHPMKf.js} +1 -1
- package/dist/assets/{triangle-alert-9bHZRjQO.js → triangle-alert-BmGMd5LW.js} +1 -1
- package/dist/assets/{upload-V9clb5xP.js → upload-BoPI2xaA.js} +1 -1
- package/dist/assets/{upload-wp-jhKLk.js → upload-CNONr7BK.js} +1 -1
- package/dist/assets/user-DRspQzW7.js +1 -0
- package/dist/assets/{veo-Do9feL6s.js → veo-BYLMHAlo.js} +1 -1
- package/dist/assets/{video-DZNPrA83.js → video-PR8fLtoY.js} +1 -1
- package/dist/assets/{volume-2-1yR3u5wq.js → volume-2-Dvw8L1O2.js} +1 -1
- package/dist/assets/{wallet-C33D5O5S.js → wallet-B110RY78.js} +1 -1
- package/dist/assets/{wan-CSsIXOV3.js → wan-BidHkXs8.js} +1 -1
- package/dist/assets/{wand-sparkles-CWJ7w1RN.js → wand-sparkles-Dz2mS8Xn.js} +1 -1
- package/dist/assets/{web-DgohKYQJ.js → web-BBRozkKX.js} +1 -1
- package/dist/assets/{web-DNF7iwc5.js → web-BIbTmd4V.js} +1 -1
- package/dist/assets/{web-dS0trZA-.js → web-DWaziZ6j.js} +1 -1
- package/dist/assets/{web-Bu6Ec0cU.js → web-kOTF79ti.js} +1 -1
- package/dist/assets/{web-BQkcFqbx.js → web-ppJpLDzT.js} +1 -1
- package/dist/assets/{webextrator-CUYGceze.js → webextrator-tlDuPbxc.js} +1 -1
- package/dist/assets/{zap-DspE4dgC.js → zap-DDQV5yCC.js} +1 -1
- package/dist/index.html +3 -3
- package/package.json +1 -1
- package/dist/assets/ScheduledTasks-CAmGkOIb.css +0 -1
- package/dist/assets/ScheduledTasks-KIkUvQio.js +0 -2
- package/dist/assets/arrow-down-DNjtO5QK.js +0 -1
- package/dist/assets/arrow-left-BS4x-6NF.js +0 -1
- package/dist/assets/arrow-right-BxmQtO3q.js +0 -1
- package/dist/assets/arrow-up-BF45BAzW.js +0 -1
- package/dist/assets/check-A2pH6W-B.js +0 -1
- package/dist/assets/chevron-down-C_RXq_Td.js +0 -1
- package/dist/assets/chevron-right-BmgqhijA.js +0 -1
- package/dist/assets/circle-check-C39Iopew.js +0 -1
- package/dist/assets/clock-CuqZkl7_.js +0 -1
- package/dist/assets/esm-BrFoYOX_.js +0 -1
- package/dist/assets/gauge-J6ySR-UC.js +0 -1
- package/dist/assets/loader-circle-ThtlXaMq.js +0 -1
- package/dist/assets/music-2-CVK69gUU.js +0 -1
- package/dist/assets/play-BYjGIlmB.js +0 -1
- package/dist/assets/plus-CWxdCnNi.js +0 -1
- package/dist/assets/rotate-ccw-BNKCvb2e.js +0 -1
- package/dist/assets/rotate-cw-CAq1NqJ5.js +0 -1
- package/dist/assets/search-DbGZIgzA.js +0 -1
- package/dist/assets/square-Cs06den0.js +0 -1
- package/dist/assets/terminal-CRDBMxuc.js +0 -1
- package/dist/assets/user-DvgRuHEX.js +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
import"./rolldown-runtime--c01j_DQ.js";import{A as e,C as t,Gt as n,I as r,Jt as i,L as a,M as o,N as s,S as c,T as l,at as u,bt as d,ht as f,it as p,j as m,mt as h,qt as g,rt as _,st as v,tt as y,x as b,z as x}from"./vendor-chart-Dw-P17PN.js";import{W as S}from"./use-deprecated-r4dlLNqm.js";import{r as C,t as w}from"./select-C1DRhWnC.js";import{t as T}from"./upload-V9clb5xP.js";import{t as E}from"./tooltip-BUeFXdRV.js";import{t as D}from"./alert-CnaTI5Gp.js";import{t as O}from"./drawer-WJpD3B-h.js";import{t as k}from"./input-number-Cu-ypyye.js";import{t as A}from"./switch-D8nKhRhq.js";import{n as j}from"./taskDrawerMixin-BYiVGM2q.js";import{t as M}from"./check-A2pH6W-B.js";import{t as N}from"./clock-CuqZkl7_.js";import{t as P}from"./download-rdeQ51Fr.js";import{t as F}from"./gauge-J6ySR-UC.js";import{n as I,r as L,t as R}from"./PromptTextarea-nhjTRPsO.js";import{t as z}from"./info-beFALQcg.js";import{t as B}from"./languages-kC83X2jl.js";import{t as ee}from"./loader-circle-ThtlXaMq.js";import{t as te}from"./palette-C8Ap_kW7.js";import{t as ne}from"./paperclip-DkvhOwZa.js";import{t as re}from"./pause-kKFHkNIN.js";import{t as ie}from"./play-BYjGIlmB.js";import{t as ae}from"./rotate-cw-CAq1NqJ5.js";import{t as oe}from"./trash-2-BAYs4oSn.js";import{t as se}from"./triangle-alert-9bHZRjQO.js";import{t as ce}from"./video-DZNPrA83.js";import{t as V}from"./wand-sparkles-CWJ7w1RN.js";import{Br as le,Fr as ue,Hr as de,Kr as fe,Lr as pe,Mr as me,Nr as he,Pr as H,Wr as ge,jr as _e,kr as ve}from"./constants-B0QZudfQ.js";import{E as U,Fi as W,Hn as G,Ut as ye,ai as K,bi as be,ci as xe,in as Se,rn as Ce,sn as q,tn as we,xi as J,yr as Te}from"./index-CilVeL08.js";import{t as Ee}from"./CopyToClipboard-CwUIV3sA.js";import{t as De}from"./FilePreview-B5nFY9Tn.js";import{t as Oe}from"./ImagePreview-Cod5m2VA.js";import{a as ke,n as Ae,r as je,t as Me}from"./pagination-hGuMVaBt.js";import{t as Ne}from"./VideoPlayer-aMdV9y1d.js";import{t as Pe}from"./ApiCodeButton-Bq1o8E9q.js";import{t as Fe}from"./BotPlaceholder-CWM-26bc.js";import{n as Ie,t as Le}from"./AudioPreview-C4JRWMSN.js";import{a as Y,i as Re,n as ze,o as Be,s as Ve,t as He}from"./maestro-hNT6kQ_L.js";var Ue=x({name:`LayoutMaestro`,components:{MagicIcon:V,ElDrawer:O,ElButton:W},mixins:[j]}),We={class:`main flex flex-row flex-1`},Ge={class:`config w-[320px] flex-none h-full min-h-0 overflow-hidden flex flex-col bg-[var(--app-sidebar-bg)] border-r border-[var(--app-border-subtle)]`},Ke={class:`result h-full p-6 flex-1 flex flex-col min-w-0 overflow-x-hidden bg-[var(--app-content-bg)]`};function qe(t,n,r,i,o,c){let l=u(`magic-icon`),d=u(`el-button`),m=u(`el-drawer`);return y(),s(`div`,We,[e(`div`,Ge,[p(t.$slots,`config`,{},void 0,!0)]),e(`div`,Ke,[p(t.$slots,`result`,{},void 0,!0)]),f(a(d,{circle:``,class:`menu`,"aria-label":t.$t(`common.button.openMenu`),title:t.$t(`common.button.openMenu`),onClick:n[0]||=e=>t.drawer=!0},{default:h(()=>[a(l,{size:`1em`,"aria-hidden":`true`,focusable:`false`})]),_:1},8,[`aria-label`,`title`]),[[b,!t.tasksEmpty]]),a(m,{modelValue:t.drawer,"onUpdate:modelValue":n[1]||=e=>t.drawer=e,direction:`ltr`,"with-header":!1,size:`340px`,class:`generator-drawer`},{default:h(()=>[p(t.$slots,`config`,{},void 0,!0)]),_:3},8,[`modelValue`])])}var Je=U(Ue,[[`render`,qe],[`__scopeId`,`data-v-808f6ae5`]]),Ye=x({name:`MaestroFileUrlsInput`,components:{AttachmentIcon:ne,ElUpload:T,ElButton:W},mixins:[ye],data(){return{fileList:[],uploadUrl:xe()+`/api/v1/files/`,MAESTRO_FILE_ACCEPT:de,MAESTRO_FILE_LIMIT:6}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},value(){return this.$store.state.maestro?.config?.file_urls||[]}},watch:{value:{immediate:!0,handler(e){let t=new Map(this.fileList.map(e=>[e?.response?.file_url||e.url,e])),n=e.map(e=>t.get(e)||{name:e.split(`/`).pop()||e,url:e,status:`success`,percentage:100,response:{file_url:e}}),r=this.fileList.filter(e=>!(e?.response?.file_url||e.url));this.fileList=[...n,...r]}}},methods:{onExceed(){J.warning(this.$t(`maestro.message.uploadExceed`))},onError(){J.error(this.$t(`maestro.message.uploadError`))},onChange(){let e=this.fileList.map(e=>e?.response?.file_url||e.url).filter(e=>!!e);this.$store.commit(`maestro/setConfig`,{...this.$store.state.maestro?.config,file_urls:e})}}});function Xe(e,t,n,o,c,l){let d=u(`attachment-icon`),f=u(`el-button`),p=u(`el-upload`);return y(),s(`div`,null,[a(p,{ref:`uploader`,"file-list":e.fileList,"onUpdate:fileList":t[0]||=t=>e.fileList=t,accept:e.MAESTRO_FILE_ACCEPT,name:`file`,class:`w-full`,limit:e.MAESTRO_FILE_LIMIT,multiple:!0,action:e.uploadUrl,headers:e.headers,"on-exceed":e.onExceed,"on-error":e.onError,"on-success":e.onChange,"on-remove":e.onChange},{default:h(()=>[a(f,{size:`small`,round:``},{default:h(()=>[a(d,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(e.$t(`maestro.button.uploadFiles`)),1)]),_:1})]),_:1},8,[`file-list`,`accept`,`limit`,`action`,`headers`,`on-exceed`,`on-error`,`on-success`,`on-remove`])])}var Ze=U(Ye,[[`render`,Xe]]),Qe={"9:16":{width:15,height:26},"16:9":{width:26,height:15},"1:1":{width:20,height:20}},$e=x({name:`ConfigPanel`,components:{MagicIcon:V,ElButton:W,ElSelect:C,ElOption:w,ElInputNumber:k,ElAlert:D,ElSwitch:A,InfoIcon:ke,PauseIcon:re,PlayIcon:ie,PromptTextarea:R,FileUrlsInput:Ze},emits:[`generate`],data(){return{MAESTRO_MIN_DURATION:1,MAESTRO_MAX_DURATION:600,MAESTRO_ALLOWED_QUALITIES:_e,MAESTRO_ALLOWED_SCENARIOS:me,MAESTRO_SCENARIO_THUMBNAILS:ge,MAESTRO_ALLOWED_STYLES:he,MAESTRO_ALLOWED_VOICES:H,playing:!1,audioEl:null}},computed:{config(){return this.$store.state.maestro?.config},service(){return this.$store.state.maestro?.service},ratioOptions(){return ve.map(e=>({value:e,...Qe[e]??{width:20,height:20}}))},isRemixing(){let e=this.config?.action;return!!e&&e!==`generate`&&!!this.config?.ref_task_id},refTaskId(){return this.config?.ref_task_id},needsVideoUpload(){if(!this.scenarioCustomizationEnabled)return!1;let e=this.config?.scenario;return!e||!fe.includes(e)?!1:!(this.config?.file_urls||[]).some(e=>q(e))},canGenerate(){return!!this.prompt?.trim()&&!this.needsVideoUpload},prompt:{get(){return this.config?.prompt},set(e){this.update({prompt:e})}},langs:{get(){return Y(this.config?.langs)},set(e){this.update({langs:Y(e)})}},languageOptions(){return Re(this.$i18n.locale)},additionalLanguageOptions(){return this.languageOptions.filter(e=>e.value!==this.primaryLanguage)},primaryLanguage:{get(){return this.langs[0]||pe[0]},set(e){this.update({langs:Ve(this.langs,e)})}},additionalLanguages:{get(){return this.langs.slice(1)},set(e){this.update({langs:Be(this.langs,e)})}},aspect:{get(){return this.config?.aspect},set(e){this.update({aspect:e})}},duration:{get(){return this.config?.duration},set(e){let t=Math.min(600,Math.max(1,Math.round(typeof e==`number`&&!Number.isNaN(e)?e:30)));this.update({duration:t})}},quality:{get(){return this.config?.quality},set(e){this.update({quality:e})}},scenarioCustomizationEnabled:{get(){return this.config?.scenario_customization_enabled??!1},set(e){this.update({scenario_customization_enabled:e})}},styleCustomizationEnabled:{get(){return this.config?.style_customization_enabled??!1},set(e){this.update({style_customization_enabled:e})}},voiceCustomizationEnabled:{get(){return this.config?.voice_customization_enabled??!1},set(e){e||this.stopSample(),this.update({voice_customization_enabled:e})}},scenario:{get(){return this.config?.scenario},set(e){this.update({scenario:e})}},style:{get(){return this.config?.style},set(e){let t=e?.trim();this.update({style:!t||t.toLowerCase()===`auto`?le:t})}},voice:{get(){return this.config?.voice},set(e){this.stopSample(),this.update({voice:e||`warm-female`})}},currentSample(){return H.find(e=>e.key===this.voice)?.sample}},watch:{voiceCustomizationEnabled(e){e||this.stopSample()},voice(){this.stopSample()}},mounted(){this.update({action:this.config?.action??`generate`,langs:Y(this.config?.langs),aspect:this.config?.aspect??`9:16`,duration:this.config?.duration??30,quality:this.config?.quality??`standard`})},beforeUnmount(){this.stopSample()},methods:{update(e){this.$store.commit(`maestro/setConfig`,{...this.config,...e})},onClearRemix(){this.update({action:ue,ref_task_id:void 0})},onToggleSample(){let e=this.currentSample;if(e){if(this.audioEl||(this.audioEl=d(new Audio),this.audioEl.addEventListener(`ended`,()=>{this.playing=!1})),this.playing){this.audioEl.pause(),this.playing=!1;return}this.audioEl.src!==e&&(this.audioEl.src=e),this.audioEl.currentTime=0,this.audioEl.play().then(()=>{this.playing=!0}).catch(()=>{this.playing=!1})}},stopSample(){this.audioEl&&(this.audioEl.pause(),this.audioEl.currentTime=0),this.playing=!1},onGenerate(){this.$emit(`generate`)}}}),et={class:`flex flex-col h-full`},tt={class:`flex-1 overflow-y-auto p-5`},nt={class:`text-xs mb-1`},rt={class:`field-block mb-5`},it={class:`field-head`},at={class:`field-title font-bold`},ot={class:`field-block mb-5`},st={class:`field-head`},ct={class:`field-title font-bold`},lt={class:`language-picker`},ut={class:`language-role language-role--primary`},dt={class:`language-role-label`},ft={class:`language-role`},pt={class:`language-role-label`},mt={class:`field-block mb-5`},ht={class:`field-head`},gt={class:`field-title font-bold`},_t=[`aria-label`],vt=[`aria-checked`,`aria-label`,`onClick`,`onKeydown`],yt={class:`ratio-preview`},bt={class:`ratio-name`},xt={class:`field-row mb-4`},St={class:`field-head`},Ct={class:`field-title font-bold`},wt={class:`field-row`},Tt={class:`field-head`},Et={class:`field-title font-bold`},Dt={class:`custom-field`},Ot={class:`custom-field-header mb-2`},kt={class:`field-head`},At={class:`field-title font-bold`},jt=[`aria-label`,`aria-disabled`],Mt=[`aria-checked`,`aria-disabled`,`aria-label`,`tabindex`,`onClick`,`onKeydown`],Nt={class:`scenario-thumb`},Pt=[`src`,`alt`],Ft={class:`scenario-name`},It={class:`custom-field`},Lt={class:`custom-field-header mb-2`},Rt={class:`field-head`},zt={class:`field-title font-bold`},Bt={class:`custom-field`},Vt={class:`custom-field-header mb-2`},Ht={class:`field-head`},Ut={class:`field-title font-bold`},Wt={class:`voice-row`},Gt={class:`flex flex-col items-center justify-center px-5 pb-5`};function Kt(d,f,p,v,b,x){let S=u(`magic-icon`),C=u(`el-button`),w=u(`el-alert`),T=u(`prompt-textarea`),E=u(`info-icon`),D=u(`file-urls-input`),O=u(`el-option`),k=u(`el-select`),A=u(`el-input-number`),j=u(`el-switch`),M=u(`pause-icon`),N=u(`play-icon`);return y(),s(`div`,et,[e(`div`,tt,[d.isRemixing?(y(),m(w,{key:0,closable:!1,type:`info`,class:`mb-5`},{default:h(()=>[e(`p`,nt,[a(S,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(d.$t(`maestro.name.remixing`))+`: `+i(d.refTaskId),1)]),a(C,{size:`small`,text:``,onClick:d.onClearRemix},{default:h(()=>[r(i(d.$t(`maestro.button.cancelRemix`)),1)]),_:1},8,[`onClick`])]),_:1})):o(``,!0),a(T,{modelValue:d.prompt,"onUpdate:modelValue":f[0]||=e=>d.prompt=e,class:`mb-5`,title:d.$t(`maestro.name.prompt`),info:d.$t(`maestro.description.prompt`),placeholder:d.$t(`maestro.placeholder.prompt`),"min-rows":6},null,8,[`modelValue`,`title`,`info`,`placeholder`]),e(`div`,rt,[e(`div`,it,[e(`h2`,at,i(d.$t(`maestro.name.files`)),1),a(E,{content:d.$t(`maestro.description.files`),class:`ml-1`},null,8,[`content`])]),a(D)]),e(`div`,ot,[e(`div`,st,[e(`h2`,ct,i(d.$t(`maestro.name.langs`)),1),a(E,{content:d.$t(`maestro.description.langs`),class:`ml-1`},null,8,[`content`])]),e(`div`,lt,[e(`label`,ut,[e(`span`,dt,i(d.$t(`maestro.name.primaryLanguage`)),1),a(k,{modelValue:d.primaryLanguage,"onUpdate:modelValue":f[1]||=e=>d.primaryLanguage=e,class:`w-full`},{default:h(()=>[(y(!0),s(l,null,_(d.languageOptions,e=>(y(),m(O,{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`])]),e(`label`,ft,[e(`span`,pt,i(d.$t(`maestro.name.additionalLanguages`)),1),a(k,{modelValue:d.additionalLanguages,"onUpdate:modelValue":f[2]||=e=>d.additionalLanguages=e,multiple:``,"collapse-tags":``,"collapse-tags-tooltip":``,placeholder:d.$t(`maestro.placeholder.additionalLanguages`),class:`w-full`},{default:h(()=>[(y(!0),s(l,null,_(d.additionalLanguageOptions,e=>(y(),m(O,{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`])])])]),e(`div`,mt,[e(`div`,ht,[e(`h2`,gt,i(d.$t(`maestro.name.aspect`)),1)]),e(`div`,{class:`ratio-items`,role:`radiogroup`,"aria-label":d.$t(`maestro.name.aspect`)},[(y(!0),s(l,null,_(d.ratioOptions,r=>(y(),s(`div`,{key:r.value,class:n([`ratio-item`,{active:d.aspect===r.value}]),role:`radio`,"aria-checked":d.aspect===r.value,"aria-label":r.value,tabindex:`0`,onClick:e=>d.aspect=r.value,onKeydown:[c(t(e=>d.aspect=r.value,[`prevent`]),[`enter`]),c(t(e=>d.aspect=r.value,[`prevent`]),[`space`])]},[e(`div`,yt,[e(`div`,{class:`ratio-rect`,style:g({width:r.width+`px`,height:r.height+`px`})},null,4)]),e(`p`,bt,i(r.value),1)],42,vt))),128))],8,_t)]),e(`div`,xt,[e(`div`,St,[e(`h2`,Ct,i(d.$t(`maestro.name.duration`)),1),a(E,{content:d.$t(`maestro.description.duration`),class:`ml-1`},null,8,[`content`])]),a(A,{modelValue:d.duration,"onUpdate:modelValue":f[3]||=e=>d.duration=e,class:`field-control`,min:d.MAESTRO_MIN_DURATION,max:d.MAESTRO_MAX_DURATION,step:5,"controls-position":`right`},null,8,[`modelValue`,`min`,`max`])]),e(`div`,wt,[e(`div`,Tt,[e(`h2`,Et,i(d.$t(`maestro.name.quality`)),1),a(E,{content:d.$t(`maestro.description.quality`),class:`ml-1`},null,8,[`content`])]),a(k,{modelValue:d.quality,"onUpdate:modelValue":f[4]||=e=>d.quality=e,class:`field-control`},{default:h(()=>[(y(!0),s(l,null,_(d.MAESTRO_ALLOWED_QUALITIES,e=>(y(),m(O,{key:e,label:d.$t(`maestro.option.quality.${e}`),value:e},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`])]),e(`div`,Dt,[e(`div`,Ot,[e(`div`,kt,[e(`h2`,At,i(d.$t(`maestro.name.customizeScenario`)),1),a(E,{content:d.$t(`maestro.description.scenario`),class:`ml-1`},null,8,[`content`])]),a(j,{modelValue:d.scenarioCustomizationEnabled,"onUpdate:modelValue":f[5]||=e=>d.scenarioCustomizationEnabled=e,"aria-label":d.$t(`maestro.name.customizeScenario`)},null,8,[`modelValue`,`aria-label`])]),e(`div`,{class:n([`scenario-cards`,{"is-disabled":!d.scenarioCustomizationEnabled}]),role:`radiogroup`,"aria-label":d.$t(`maestro.name.scenario`),"aria-disabled":!d.scenarioCustomizationEnabled},[(y(!0),s(l,null,_(d.MAESTRO_ALLOWED_SCENARIOS,r=>(y(),s(`div`,{key:r,class:n([`scenario-card`,{active:d.scenarioCustomizationEnabled&&d.scenario===r,disabled:!d.scenarioCustomizationEnabled}]),role:`radio`,"aria-checked":d.scenarioCustomizationEnabled&&d.scenario===r,"aria-disabled":!d.scenarioCustomizationEnabled,"aria-label":d.$t(`maestro.option.scenario.${r}`),tabindex:d.scenarioCustomizationEnabled?0:-1,onClick:e=>d.scenarioCustomizationEnabled&&(d.scenario=r),onKeydown:[c(t(e=>d.scenarioCustomizationEnabled&&(d.scenario=r),[`prevent`]),[`enter`]),c(t(e=>d.scenarioCustomizationEnabled&&(d.scenario=r),[`prevent`]),[`space`])]},[e(`div`,Nt,[e(`img`,{src:d.MAESTRO_SCENARIO_THUMBNAILS[r],alt:d.$t(`maestro.option.scenario.${r}`),loading:`lazy`},null,8,Pt)]),e(`p`,Ft,i(d.$t(`maestro.option.scenario.${r}`)),1)],42,Mt))),128))],10,jt),d.needsVideoUpload?(y(),m(w,{key:0,title:d.$t(`maestro.message.captionsNeedVideo`),type:`warning`,closable:!1,"show-icon":``,class:`mt-2`},null,8,[`title`])):o(``,!0)]),e(`div`,It,[e(`div`,Lt,[e(`div`,Rt,[e(`h2`,zt,i(d.$t(`maestro.name.customizeStyle`)),1),a(E,{content:d.$t(`maestro.description.style`),class:`ml-1`},null,8,[`content`])]),a(j,{modelValue:d.styleCustomizationEnabled,"onUpdate:modelValue":f[6]||=e=>d.styleCustomizationEnabled=e,"aria-label":d.$t(`maestro.name.customizeStyle`)},null,8,[`modelValue`,`aria-label`])]),a(k,{modelValue:d.style,"onUpdate:modelValue":f[7]||=e=>d.style=e,class:`w-full`,filterable:``,"allow-create":``,"default-first-option":``,disabled:!d.styleCustomizationEnabled,"aria-label":d.$t(`maestro.name.customizeStyle`),placeholder:d.$t(`maestro.placeholder.select`)},{default:h(()=>[(y(!0),s(l,null,_(d.MAESTRO_ALLOWED_STYLES,e=>(y(),m(O,{key:e,label:d.$t(`maestro.option.style.${e}`),value:e},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`disabled`,`aria-label`,`placeholder`])]),e(`div`,Bt,[e(`div`,Vt,[e(`div`,Ht,[e(`h2`,Ut,i(d.$t(`maestro.name.customizeVoice`)),1),a(E,{content:d.$t(`maestro.description.voice`),class:`ml-1`},null,8,[`content`])]),a(j,{modelValue:d.voiceCustomizationEnabled,"onUpdate:modelValue":f[8]||=e=>d.voiceCustomizationEnabled=e,"aria-label":d.$t(`maestro.name.customizeVoice`)},null,8,[`modelValue`,`aria-label`])]),e(`div`,Wt,[a(k,{modelValue:d.voice,"onUpdate:modelValue":f[9]||=e=>d.voice=e,class:`voice-select`,disabled:!d.voiceCustomizationEnabled,"aria-label":d.$t(`maestro.name.customizeVoice`),placeholder:d.$t(`maestro.placeholder.select`)},{default:h(()=>[(y(!0),s(l,null,_(d.MAESTRO_ALLOWED_VOICES,e=>(y(),m(O,{key:e.key,label:d.$t(`maestro.option.voice.${e.key}`),value:e.key},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`disabled`,`aria-label`,`placeholder`]),a(C,{class:`voice-play`,disabled:!d.voiceCustomizationEnabled||!d.currentSample,title:d.$t(`maestro.button.preview`),"aria-label":d.$t(`maestro.button.preview`),onClick:d.onToggleSample},{default:h(()=>[d.playing?(y(),m(M,{key:0,size:`1em`,"aria-hidden":`true`,focusable:`false`})):(y(),m(N,{key:1,size:`1em`,"aria-hidden":`true`,focusable:`false`}))]),_:1},8,[`disabled`,`title`,`aria-label`,`onClick`])])])]),e(`div`,Gt,[a(C,{type:`primary`,class:`btn w-full`,round:``,disabled:!d.canGenerate,onClick:d.onGenerate},{default:h(()=>[a(S,{class:`mr-2`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(d.$t(`maestro.button.generate`)),1)]),_:1},8,[`disabled`,`onClick`])])])}var qt=U($e,[[`render`,Kt],[`__scopeId`,`data-v-a4840734`]]),Jt=50,Yt=1e4,X=new Map,Z=new Map,Xt=(e,t)=>{if(X.set(e,t),X.size>Jt){let e=X.keys().next().value;e&&X.delete(e)}};async function Zt(e,t){let n=`${t.credentialKey}:${e}`,r=X.get(n);if(r)return r;let i=Z.get(n);if(i)return i.promise;let a=new AbortController,o,s={controller:a,promise:void 0},c=G.task(e,{token:t.token,signal:a.signal}).then(({data:e})=>{if(!a.signal.aborted)return Xt(n,e),e}).catch(t=>{a.signal.aborted||console.warn(`failed to load maestro remix reference task`,e,t)}),l=new Promise(e=>{o=window.setTimeout(()=>{a.abort(),e(void 0)},Yt)});return s.promise=Promise.race([c,l]).finally(()=>{o!==void 0&&window.clearTimeout(o),Z.get(n)===s&&Z.delete(n)}),Z.set(n,s),s.promise}var Q=[`plan`,`source`,`voice`,`compose`,`render`,`deliver`];function $(e){if(!e)return-1;let t=e.toLowerCase(),n=Q.indexOf(t);return n>=0?n:/plan|storyboard|script|brief/.test(t)?0:/source|search|image|photo|asset|media/.test(t)?1:/voice|tts|audio|narrat/.test(t)?2:/compose|composit|build|layout|scene/.test(t)?3:/render|encode/.test(t)?4:/deliver|upload|cdn|complete|done|finish/.test(t)?5:-1}var Qt=x({name:`ProgressSteps`,components:{ElIcon:S,Loading:ee,Check:M},props:{modelValue:{type:Object,required:!0}},computed:{currentIndex(){let e=this.modelValue?.response?.data?.progress||[],t=-1;for(let n of e)t=Math.max(t,$(n?.stage));return t=Math.max(t,$(this.modelValue?.response?.data?.stage)),Math.max(t,0)},detail(){let e=this.modelValue?.response?.data;if(e?.activity)return e.activity;let t=e?.progress||[];for(let e=t.length-1;e>=0;e--)if(t[e]?.message)return t[e]?.message},steps(){return Q.map(e=>({key:e}))}},methods:{stateOf(e){let t=this.currentIndex;return e<t?`done`:e===t?`active`:`pending`}}}),$t={class:`progress-steps`,"aria-live":`polite`},en=[`aria-current`],tn={class:`ico`},nn={class:`txt`},rn={key:0,class:`detail`};function an(t,r,c,d,f,p){let g=u(`loading`),v=u(`el-icon`),b=u(`check`);return y(),s(`div`,$t,[(y(!0),s(l,null,_(t.steps,(r,c)=>(y(),s(`div`,{key:r.key,class:n([`step`,t.stateOf(c)]),"aria-current":c===t.currentIndex?`step`:void 0},[e(`span`,tn,[c===t.currentIndex?(y(),m(v,{key:0,class:`is-loading`,"aria-label":t.$t(`maestro.step.${r.key}`)},{default:h(()=>[a(g,{size:`1em`,"aria-hidden":`true`,focusable:`false`})]),_:1},8,[`aria-label`])):c<t.currentIndex?(y(),m(v,{key:1},{default:h(()=>[a(b,{size:`1em`,"aria-hidden":`true`,focusable:`false`})]),_:1})):o(``,!0)]),e(`span`,nn,i(t.$t(`maestro.step.${r.key}`)),1)],10,en))),128)),t.detail?(y(),s(`p`,rn,i(t.detail),1)):o(``,!0)])}var on=U(Qt,[[`render`,an],[`__scopeId`,`data-v-8a883977`]]),sn=[`succeeded`,`failed`],cn=[1e3,3e3],ln=x({name:`TaskPreview`,components:{DeleteIcon:oe,ElTooltip:E,ChannelIcon:L,DownloadIcon:P,InfoIcon:z,LanguageIcon:B,MagicIcon:V,RedoIcon:ae,TimeIcon:N,WarningIcon:se,CopyToClipboard:Ee,ElAlert:D,VideoPlayer:Ne,ElButton:W,ApiCodeButton:Pe,ImagePreview:Oe,AudioPreview:Le,VideoPreview:Ie,FilePreview:De,ProgressSteps:on},props:{modelValue:{type:Object,required:!0}},data(){return{fetchedReferenceTask:void 0,fetchedReferenceKey:void 0,referenceLoadAttempt:0,referenceLoadFailed:!1,referenceLoadTimer:void 0,referenceLoadVersion:0}},computed:{variants(){return this.modelValue?.response?.data?.variants||[]},files(){let e=[...this.modelValue?.request?.file_urls||[]];if(this.referenceTaskId)for(let t of this.referenceTask?.response?.data?.variants||[])t.output_url&&e.push(t.output_url);return[...new Set(e)].filter(e=>!!e).map(e=>{let t=e.split(`?`)[0].split(`#`)[0],n=Se(t)?`image`:q(t)?`video`:Ce(t)?`audio`:`file`;return{url:e,name:this.fileName(t),kind:n}})},referenceTaskId(){let e=this.modelValue?.request;return e?.action===`remix`?e?.ref_task_id:void 0},referenceLoadKey(){let e=this.$store.state.maestro?.credential,t=e?.token;if(!(!this.referenceTaskId||!t))return JSON.stringify([this.referenceTaskId,e?.id||e?.user_id||t,t])},referenceTask(){if(this.referenceTaskId)return this.$store.state.maestro?.tasks?.items?.find(e=>e.id===this.referenceTaskId)||(this.fetchedReferenceKey===this.referenceLoadKey?this.fetchedReferenceTask:void 0)},isTerminal(){return sn.includes(this.modelValue?.status||``)},traceId(){return this.modelValue?.trace_id||this.modelValue?.response?.trace_id},progressPct(){let e=this.modelValue?.response?.data?.progress,t=e?.length?e[e.length-1]:void 0;return typeof t?.pct==`number`?t.pct:void 0},progressText(){return this.progressPct===void 0?this.statusLabel:`${this.progressPct}%`},statusLabel(){let e=`maestro.status.${this.modelValue?.status||`pending`}`,t=this.$t(e);return t===e?this.$t(`maestro.status.processing`):t},failureReason(){let e=this.modelValue?.response?.error;if(e)return typeof e==`string`?e:e?.message},requestParams(){let e=this.modelValue?.request;if(!e)return[];let t=[];return e.action&&t.push({icon:d(V),label:this.$t(`maestro.name.mode`),value:this.optionLabel(`maestro.option.action`,e.action)}),e.scenario&&t.push({icon:d(ce),label:this.$t(`maestro.name.scenario`),value:this.optionLabel(`maestro.option.scenario`,e.scenario)}),e.style&&t.push({icon:d(te),label:this.$t(`maestro.name.style`),value:this.optionLabel(`maestro.option.style`,e.style)}),e.quality&&t.push({icon:d(F),label:this.$t(`maestro.name.quality`),value:this.optionLabel(`maestro.option.quality`,e.quality)}),e.aspect&&t.push({icon:d(I),label:this.$t(`maestro.name.aspect`),value:e.aspect}),e.duration&&t.push({icon:d(N),label:this.$t(`maestro.name.duration`),value:`${e.duration}s`}),e.langs?.length&&t.push({icon:d(B),label:this.$t(`maestro.name.langs`),value:e.langs.join(` · `)}),t}},watch:{referenceLoadKey:{immediate:!0,handler(e){this.resetReferenceLoad(),e&&!this.referenceTask&&this.loadReferenceTask(e)}}},beforeUnmount(){this.resetReferenceLoad()},methods:{async onDelete(){let e=this.modelValue?.id;if(e){try{await be.confirm(this.$t(`common.message.deleteTaskConfirm`),this.$t(`common.button.delete`),{type:`warning`,confirmButtonText:this.$t(`common.button.delete`),cancelButtonText:this.$t(`common.button.cancel`),confirmButtonClass:`el-button--danger`})}catch{return}try{await this.$store.dispatch(`maestro/deleteTask`,{id:e}),J.success(this.$t(`common.message.deleteTaskSuccess`))}catch{J.error(this.$t(`common.message.deleteTaskFailed`))}}},resetReferenceLoad(){this.referenceLoadTimer!==void 0&&window.clearTimeout(this.referenceLoadTimer),this.referenceLoadTimer=void 0,this.referenceLoadVersion+=1,this.referenceLoadAttempt=0,this.referenceLoadFailed=!1,this.fetchedReferenceTask=void 0,this.fetchedReferenceKey=void 0},async loadReferenceTask(e){if(e!==this.referenceLoadKey||this.referenceTask)return;let t=this.$store.state.maestro?.credential,n=t?.token,r=this.referenceTaskId;if(!r||!n)return;let i=t?.id||t?.user_id||n,a=this.referenceLoadVersion;this.referenceLoadAttempt+=1;let o=await Zt(r,{token:n,credentialKey:i});if(a!==this.referenceLoadVersion||e!==this.referenceLoadKey)return;if(o){this.fetchedReferenceTask=o,this.fetchedReferenceKey=e,this.referenceLoadFailed=!1;return}let s=cn[this.referenceLoadAttempt-1];s===void 0?this.referenceLoadFailed=!0:this.referenceLoadTimer=window.setTimeout(()=>{this.referenceLoadTimer=void 0,this.loadReferenceTask(e)},s)},retryReferenceTask(){let e=this.referenceLoadKey;this.resetReferenceLoad(),e&&this.loadReferenceTask(e)},optionLabel(e,t){let n=`${e}.${t}`,r=this.$t(n);return r===n?t:r},fileName(e){let t=e.substring(e.lastIndexOf(`/`)+1);try{return decodeURIComponent(t)||e}catch{return t||e}},onDownload(e,t){e?.stopPropagation(),window.open(t,`_blank`)},onRemix(){if(!this.modelValue)return;let e=ze(this.$store.state.maestro?.config,this.modelValue);this.$store.commit(`maestro/setConfig`,e),J.info(this.$t(`maestro.message.remixLoaded`))}}}),un={class:`preview`},dn={class:`left`},fn={class:`main`},pn={class:`bot`},mn={class:`datetime`},hn=[`aria-label`],gn={class:`info`},_n={key:0,class:`flex justify-start items-center gap-2 mt-2 w-full overflow-x-auto`},vn=[`href`,`title`],yn={key:1,class:`reference-load-failed flex items-center gap-1 mt-2 text-xs text-[var(--el-text-color-secondary)]`},bn={key:2,class:`prompt mt-2`},xn={key:0,class:`progress-pct`},Sn={key:0,class:`content`},Cn={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},wn={key:0,class:`text-[var(--el-text-color-regular)] text-xs mb-0`},Tn={key:1,class:`content`},En={class:`text-xs text-[var(--el-text-color-secondary)] mb-1`},Dn={key:0},On={class:`operations`},kn={key:0},An={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},jn={key:0,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Mn={key:1,class:`text-[var(--el-text-color-regular)] text-xs mb-0`},Nn={key:2,class:`content`},Pn={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Fn={key:0,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},In={key:1,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Ln={key:2,class:`text-[var(--el-text-color-regular)] text-xs mb-0`};function Rn(c,d,f,p,g,b){let x=u(`capability-presentation`),S=u(`delete-icon`),C=u(`el-tooltip`),w=u(`image-preview`),T=u(`video-preview`),E=u(`audio-preview`),D=u(`file-preview`),O=u(`info-icon`),k=u(`redo-icon`),A=u(`el-button`),j=u(`progress-steps`),M=u(`magic-icon`),N=u(`copy-to-clipboard`),P=u(`channel-icon`),F=u(`el-alert`),I=u(`language-icon`),L=u(`video-player`),R=u(`download-icon`),z=u(`api-code-button`),B=u(`time-icon`),ee=u(`warning-icon`);return y(),s(`div`,un,[e(`div`,dn,[a(x,{capability:`maestro`,part:`avatar`,class:`avatar`})]),e(`div`,fn,[e(`div`,pn,[a(x,{capability:`maestro`,part:`name`}),e(`span`,mn,i(c.$dayjs.format(``+new Date(parseFloat((c.modelValue?.created_at||``).toString())*1e3))),1),a(C,{effect:`dark`,content:c.$t(`common.button.delete`),placement:`top`},{default:h(()=>[c.modelValue?.id?(y(),s(`button`,{key:0,type:`button`,class:`btn-delete`,"aria-label":c.$t(`common.button.delete`),onClick:d[0]||=t((...e)=>c.onDelete&&c.onDelete(...e),[`stop`])},[a(S,{size:`1em`,"aria-hidden":`true`,focusable:`false`})],8,hn)):o(``,!0)]),_:1},8,[`content`])]),e(`div`,gn,[c.files.length?(y(),s(`div`,_n,[(y(!0),s(l,null,_(c.files,(e,t)=>(y(),s(l,{key:t},[e.kind===`image`?(y(),m(w,{key:0,url:e.url,name:e.name,closable:!1},null,8,[`url`,`name`])):e.kind===`video`?(y(),m(T,{key:1,url:e.url,name:e.name},null,8,[`url`,`name`])):e.kind===`audio`?(y(),m(E,{key:2,url:e.url,name:e.name},null,8,[`url`,`name`])):(y(),s(`a`,{key:3,href:e.url,title:e.name,target:`_blank`,rel:`noopener noreferrer`,class:`shrink-0 no-underline`},[a(D,{name:e.name,closable:!1},null,8,[`name`])],8,vn))],64))),128))])):o(``,!0),c.referenceLoadFailed&&c.referenceTaskId&&!c.referenceTask?(y(),s(`div`,yn,[a(O,{size:`1em`,"aria-hidden":`true`,focusable:`false`}),e(`span`,null,i(c.$t(`maestro.name.files`))+`: `+i(c.$t(`maestro.name.failure`)),1),a(A,{class:`reference-retry`,size:`small`,text:``,circle:``,title:c.$t(`codingBridge.session.retry`),"aria-label":c.$t(`codingBridge.session.retry`),onClick:c.retryReferenceTask},{default:h(()=>[a(k,{size:`1em`,"aria-hidden":`true`,focusable:`false`})]),_:1},8,[`title`,`aria-label`,`onClick`])])):o(``,!0),c.modelValue?.request?.prompt?(y(),s(`p`,bn,[r(i(c.modelValue?.request?.prompt)+` `,1),c.isTerminal?o(``,!0):(y(),s(`span`,xn,` · `+i(c.progressText),1))])):o(``,!0)]),c.isTerminal?o(``,!0):(y(),s(`div`,Sn,[a(F,{closable:!1,class:`mt-2 processing`},{default:h(()=>[a(j,{"model-value":c.modelValue},null,8,[`model-value`]),(y(!0),s(l,null,_(c.requestParams,(e,t)=>(y(),s(`p`,{key:`param-${t}`,class:n([`text-[var(--el-text-color-regular)] text-xs mb-2`,{"mt-3":t===0}])},[(y(),m(v(e.icon),{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`})),r(` `+i(e.label)+`: `+i(e.value),1)],2))),128)),e(`p`,Cn,[a(M,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(c.$t(`maestro.name.taskId`))+`: `+i(c.modelValue?.id)+` `,1),a(N,{content:c.modelValue?.id},null,8,[`content`])]),c.traceId?(y(),s(`p`,wn,[a(P,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(c.$t(`maestro.name.traceId`))+`: `+i(c.traceId)+` `,1),a(N,{content:c.traceId},null,8,[`content`])])):o(``,!0)]),_:1})])),c.modelValue?.response?.success===!0&&c.variants.length?(y(),s(`div`,Tn,[(y(!0),s(l,null,_(c.variants,(t,n)=>(y(),s(`div`,{key:n,class:`mb-4`},[e(`p`,En,[a(I,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(i(t.lang),1),t.title?(y(),s(`span`,Dn,` · `+i(t.title),1)):o(``,!0)]),t.output_url?(y(),m(L,{key:0,src:t.output_url},null,8,[`src`])):o(``,!0)]))),128)),e(`div`,On,[(y(!0),s(l,null,_(c.variants,(e,t)=>(y(),s(l,{key:t},[e.output_url?(y(),m(A,{key:0,type:`info`,size:`small`,class:`btn-action`,onClick:t=>c.onDownload(t,e.output_url)},{default:h(()=>[a(R,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(c.$t(`maestro.button.download`)),1),c.variants.length>1?(y(),s(`span`,kn,` · `+i(e.lang),1)):o(``,!0)]),_:2},1032,[`onClick`])):o(``,!0)],64))),128)),a(A,{size:`small`,type:`primary`,class:`btn-action`,onClick:c.onRemix},{default:h(()=>[a(M,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(c.$t(`maestro.button.remix`)),1)]),_:1},8,[`onClick`]),a(z,{path:`/maestro/videos`,body:c.modelValue?.request},null,8,[`body`])]),a(F,{closable:!1,class:`mt-2 success`},{default:h(()=>[(y(!0),s(l,null,_(c.requestParams,(e,t)=>(y(),s(`p`,{key:`param-${t}`,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},[(y(),m(v(e.icon),{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`})),r(` `+i(e.label)+`: `+i(e.value),1)]))),128)),e(`p`,An,[a(M,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(c.$t(`maestro.name.taskId`))+`: `+i(c.modelValue?.id)+` `,1),a(N,{content:c.modelValue?.id},null,8,[`content`])]),c.modelValue?.elapsed?(y(),s(`p`,jn,[a(B,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(c.$t(`maestro.name.elapsed`))+`: `+i(c.modelValue?.elapsed?.toFixed(2))+`s `,1)])):o(``,!0),c.traceId?(y(),s(`p`,Mn,[a(P,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(c.$t(`maestro.name.traceId`))+`: `+i(c.traceId)+` `,1),a(N,{content:c.traceId},null,8,[`content`])])):o(``,!0)]),_:1})])):o(``,!0),c.modelValue?.response?.success===!1?(y(),s(`div`,Nn,[a(F,{closable:!1,class:`failure`},{template:h(()=>[a(ee,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(c.$t(`maestro.name.failure`)),1)]),default:h(()=>[(y(!0),s(l,null,_(c.requestParams,(e,t)=>(y(),s(`p`,{key:`param-${t}`,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},[(y(),m(v(e.icon),{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`})),r(` `+i(e.label)+`: `+i(e.value),1)]))),128)),e(`p`,Pn,[a(M,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(c.$t(`maestro.name.taskId`))+`: `+i(c.modelValue?.id)+` `,1),a(N,{content:c.modelValue?.id},null,8,[`content`])]),c.failureReason?(y(),s(`p`,Fn,[a(O,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(c.$t(`maestro.name.failureReason`))+`: `+i(c.failureReason),1)])):o(``,!0),c.modelValue?.elapsed?(y(),s(`p`,In,[a(B,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(c.$t(`maestro.name.elapsed`))+`: `+i(c.modelValue?.elapsed?.toFixed(2))+`s `,1)])):o(``,!0),c.traceId?(y(),s(`p`,Ln,[a(P,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(c.$t(`maestro.name.traceId`))+`: `+i(c.traceId)+` `,1),a(N,{content:c.traceId},null,8,[`content`])])):o(``,!0)]),_:1})])):o(``,!0)])])}var zn=x({name:`RecentPanel`,components:{TaskPreview:U(ln,[[`render`,Rn],[`__scopeId`,`data-v-b9599f6a`]]),NoTasks:je,BotPlaceholder:Fe,ScrollList:Ae},props:{loading:{type:Boolean,default:!1}},emits:[`reach-top`],computed:{tasks(){return{...this.$store.state.maestro?.tasks,items:this.$store.state.maestro?.tasks?.items?.slice()}}},methods:{getScrollElement(){return this.$refs.scrollList?.getScrollElement?.()}}}),Bn={key:0},Vn={key:2,class:`w-full h-full flex items-center justify-center`};function Hn(e,t,n,r,i,c){let d=u(`bot-placeholder`),f=u(`task-preview`),p=u(`scroll-list`),g=u(`no-tasks`);return y(),s(l,null,[e.tasks?.items===void 0?(y(),s(`div`,Bn,[a(d)])):e.tasks?.items?.length&&e.tasks?.items?.length>0?(y(),m(p,{key:1,ref:`scrollList`,class:`tasks h-full w-full overflow-y-auto`,loading:e.loading,onReachTop:t[0]||=t=>e.$emit(`reach-top`)},{default:h(()=>[(y(!0),s(l,null,_(e.tasks?.items,(e,t)=>(y(),m(f,{key:t,"model-value":e},null,8,[`model-value`]))),128))]),_:1},8,[`loading`])):o(``,!0),e.tasks?.items?.length===0?(y(),s(`div`,Vn,[a(g)])):o(``,!0)],64)}var Un=x({name:`MaestroIndex`,components:{ConfigPanel:qt,Layout:Je,RecentPanel:U(zn,[[`render`,Hn]])},inject:[`initialized`],data(){return{job:0,loadingMore:!1,fetchingTasks:!1}},computed:{applicationsLoading(){return this.$store.state.maestro?.status?.getApplications===K.Request},tasksLoading(){return this.$store.state.maestro?.status?.getTasks===K.Request||this.fetchingTasks},credential(){return this.$store.state.maestro.credential},config(){return this.$store.state.maestro.config},tasks(){return this.$store.state.maestro.tasks}},watch:{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 Me({tasks:this.tasks,getTasks:()=>this.tasks,loading:this.loadingMore,setLoading:e=>this.loadingMore=e,isBlocked:()=>this.tasksLoading||this.applicationsLoading,fetch:e=>this.onGetTasks({createdAtMax:e}),getScrollElement:()=>this.getTasksScrollElement()})},async onGetService(){await this.$store.dispatch(`maestro/getService`)},async onScrollDown(){await this.$nextTick();let e=this.getTasksScrollElement();e&&(e.scrollTop=e.scrollHeight)},async onGetTasks(e){if(this.applicationsLoading||this.fetchingTasks)return;let{limit:t=5,createdAtMin:n,createdAtMax:r}=e||{};this.fetchingTasks=!0;try{await this.$store.dispatch(`maestro/getTasks`,{limit:t,createdAtMin:n,createdAtMax:r})}finally{this.fetchingTasks=!1}},async onGenerate(){let e=He(this.config);if(!we())return;let t=this.credential?.token;if(!t){console.error(`no token specified`);return}J.info(this.$t(`maestro.message.startingTask`)),Te(`maestro`,G.generate(e,{token:t})).then(()=>{J.success(this.$t(`maestro.message.startTaskSuccess`))}).catch(e=>{(e?.response?.data)?.error?.code===`used_up`?J.error(this.$t(`maestro.message.usedUp`)):J.error(this.$t(`maestro.message.startTaskFailed`))}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})},getTasksScrollElement(){return this.$refs.recentPanel?.getScrollElement?.()}}});function Wn(e,t,n,r,i,o){let s=u(`config-panel`),c=u(`recent-panel`),l=u(`layout`);return y(),m(l,null,{config:h(()=>[a(s,{onGenerate:e.onGenerate},null,8,[`onGenerate`])]),result:h(()=>[a(c,{ref:`recentPanel`,loading:e.loadingMore,onReachTop:e.onReachTop},null,8,[`loading`,`onReachTop`])]),_:1})}var Gn=U(Un,[[`render`,Wn]]);export{Gn 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,S as c,T as l,at as u,bt as d,ht as f,it as p,j as m,mt as h,qt as g,rt as _,st as v,tt as y,x as b,z as x}from"./vendor-chart-Dw-P17PN.js";import{W as S}from"./use-deprecated-r4dlLNqm.js";import{r as C,t as w}from"./select-B5xUToXJ.js";import{t as T}from"./upload-BoPI2xaA.js";import{t as E}from"./tooltip-C29VE8lc.js";import{t as D}from"./alert-Du-kIP6d.js";import{t as O}from"./drawer-U5-wdIK9.js";import{t as k}from"./input-number-DySKK0eZ.js";import{t as A}from"./switch-B2zhTxNP.js";import{n as j}from"./taskDrawerMixin-zmmVKGal.js";import{t as M}from"./check-C_D7BOJu.js";import{t as N}from"./clock-D3yOwNlp.js";import{t as P}from"./download-BDK7MfA8.js";import{t as F}from"./gauge-Cnpclh5G.js";import{n as I,r as L,t as R}from"./PromptTextarea-CMi86YLj.js";import{t as z}from"./info-B-wBOS_X.js";import{t as B}from"./languages-INDSz30R.js";import{t as ee}from"./loader-circle-eWKIrwr1.js";import{t as te}from"./palette-BqUpjNiw.js";import{t as ne}from"./paperclip-B-Le9qli.js";import{t as re}from"./pause-eqGqwSAk.js";import{t as ie}from"./play-Ci3Q5U6F.js";import{t as ae}from"./rotate-cw-DANNulS9.js";import{t as oe}from"./trash-2-DagHPMKf.js";import{t as se}from"./triangle-alert-BmGMd5LW.js";import{t as ce}from"./video-PR8fLtoY.js";import{t as V}from"./wand-sparkles-Dz2mS8Xn.js";import{Br as le,Fr as ue,Hr as de,Kr as fe,Lr as pe,Mr as me,Nr as he,Pr as H,Wr as ge,jr as _e,kr as ve}from"./constants-DmRAKvwo.js";import{E as U,Fi as W,Hn as G,Ut as ye,ai as K,bi as be,ci as xe,in as Se,rn as Ce,sn as q,tn as we,xi as J,yr as Te}from"./index-SFwaJFVg.js";import{t as Ee}from"./CopyToClipboard-o7ZAAs0c.js";import{t as De}from"./FilePreview-DurqJ-ny.js";import{t as Oe}from"./ImagePreview-RN3N0RLb.js";import{a as ke,n as Ae,r as je,t as Me}from"./pagination-C3CGbJVG.js";import{t as Ne}from"./VideoPlayer-BrIjSwhO.js";import{t as Pe}from"./ApiCodeButton-B7wjtH_v.js";import{t as Fe}from"./BotPlaceholder-Ciz09doX.js";import{n as Ie,t as Le}from"./AudioPreview-PKn-keso.js";import{a as Y,i as Re,n as ze,o as Be,s as Ve,t as He}from"./maestro-T7L9idpb.js";var Ue=x({name:`LayoutMaestro`,components:{MagicIcon:V,ElDrawer:O,ElButton:W},mixins:[j]}),We={class:`main flex flex-row flex-1`},Ge={class:`config w-[320px] flex-none h-full min-h-0 overflow-hidden flex flex-col bg-[var(--app-sidebar-bg)] border-r border-[var(--app-border-subtle)]`},Ke={class:`result h-full p-6 flex-1 flex flex-col min-w-0 overflow-x-hidden bg-[var(--app-content-bg)]`};function qe(t,n,r,i,o,c){let l=u(`magic-icon`),d=u(`el-button`),m=u(`el-drawer`);return y(),s(`div`,We,[e(`div`,Ge,[p(t.$slots,`config`,{},void 0,!0)]),e(`div`,Ke,[p(t.$slots,`result`,{},void 0,!0)]),f(a(d,{circle:``,class:`menu`,"aria-label":t.$t(`common.button.openMenu`),title:t.$t(`common.button.openMenu`),onClick:n[0]||=e=>t.drawer=!0},{default:h(()=>[a(l,{size:`1em`,"aria-hidden":`true`,focusable:`false`})]),_:1},8,[`aria-label`,`title`]),[[b,!t.tasksEmpty]]),a(m,{modelValue:t.drawer,"onUpdate:modelValue":n[1]||=e=>t.drawer=e,direction:`ltr`,"with-header":!1,size:`340px`,class:`generator-drawer`},{default:h(()=>[p(t.$slots,`config`,{},void 0,!0)]),_:3},8,[`modelValue`])])}var Je=U(Ue,[[`render`,qe],[`__scopeId`,`data-v-808f6ae5`]]),Ye=x({name:`MaestroFileUrlsInput`,components:{AttachmentIcon:ne,ElUpload:T,ElButton:W},mixins:[ye],data(){return{fileList:[],uploadUrl:xe()+`/api/v1/files/`,MAESTRO_FILE_ACCEPT:de,MAESTRO_FILE_LIMIT:6}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},value(){return this.$store.state.maestro?.config?.file_urls||[]}},watch:{value:{immediate:!0,handler(e){let t=new Map(this.fileList.map(e=>[e?.response?.file_url||e.url,e])),n=e.map(e=>t.get(e)||{name:e.split(`/`).pop()||e,url:e,status:`success`,percentage:100,response:{file_url:e}}),r=this.fileList.filter(e=>!(e?.response?.file_url||e.url));this.fileList=[...n,...r]}}},methods:{onExceed(){J.warning(this.$t(`maestro.message.uploadExceed`))},onError(){J.error(this.$t(`maestro.message.uploadError`))},onChange(){let e=this.fileList.map(e=>e?.response?.file_url||e.url).filter(e=>!!e);this.$store.commit(`maestro/setConfig`,{...this.$store.state.maestro?.config,file_urls:e})}}});function Xe(e,t,n,o,c,l){let d=u(`attachment-icon`),f=u(`el-button`),p=u(`el-upload`);return y(),s(`div`,null,[a(p,{ref:`uploader`,"file-list":e.fileList,"onUpdate:fileList":t[0]||=t=>e.fileList=t,accept:e.MAESTRO_FILE_ACCEPT,name:`file`,class:`w-full`,limit:e.MAESTRO_FILE_LIMIT,multiple:!0,action:e.uploadUrl,headers:e.headers,"on-exceed":e.onExceed,"on-error":e.onError,"on-success":e.onChange,"on-remove":e.onChange},{default:h(()=>[a(f,{size:`small`,round:``},{default:h(()=>[a(d,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(e.$t(`maestro.button.uploadFiles`)),1)]),_:1})]),_:1},8,[`file-list`,`accept`,`limit`,`action`,`headers`,`on-exceed`,`on-error`,`on-success`,`on-remove`])])}var Ze=U(Ye,[[`render`,Xe]]),Qe={"9:16":{width:15,height:26},"16:9":{width:26,height:15},"1:1":{width:20,height:20}},$e=x({name:`ConfigPanel`,components:{MagicIcon:V,ElButton:W,ElSelect:C,ElOption:w,ElInputNumber:k,ElAlert:D,ElSwitch:A,InfoIcon:ke,PauseIcon:re,PlayIcon:ie,PromptTextarea:R,FileUrlsInput:Ze},emits:[`generate`],data(){return{MAESTRO_MIN_DURATION:1,MAESTRO_MAX_DURATION:600,MAESTRO_ALLOWED_QUALITIES:_e,MAESTRO_ALLOWED_SCENARIOS:me,MAESTRO_SCENARIO_THUMBNAILS:ge,MAESTRO_ALLOWED_STYLES:he,MAESTRO_ALLOWED_VOICES:H,playing:!1,audioEl:null}},computed:{config(){return this.$store.state.maestro?.config},service(){return this.$store.state.maestro?.service},ratioOptions(){return ve.map(e=>({value:e,...Qe[e]??{width:20,height:20}}))},isRemixing(){let e=this.config?.action;return!!e&&e!==`generate`&&!!this.config?.ref_task_id},refTaskId(){return this.config?.ref_task_id},needsVideoUpload(){if(!this.scenarioCustomizationEnabled)return!1;let e=this.config?.scenario;return!e||!fe.includes(e)?!1:!(this.config?.file_urls||[]).some(e=>q(e))},canGenerate(){return!!this.prompt?.trim()&&!this.needsVideoUpload},prompt:{get(){return this.config?.prompt},set(e){this.update({prompt:e})}},langs:{get(){return Y(this.config?.langs)},set(e){this.update({langs:Y(e)})}},languageOptions(){return Re(this.$i18n.locale)},additionalLanguageOptions(){return this.languageOptions.filter(e=>e.value!==this.primaryLanguage)},primaryLanguage:{get(){return this.langs[0]||pe[0]},set(e){this.update({langs:Ve(this.langs,e)})}},additionalLanguages:{get(){return this.langs.slice(1)},set(e){this.update({langs:Be(this.langs,e)})}},aspect:{get(){return this.config?.aspect},set(e){this.update({aspect:e})}},duration:{get(){return this.config?.duration},set(e){let t=Math.min(600,Math.max(1,Math.round(typeof e==`number`&&!Number.isNaN(e)?e:30)));this.update({duration:t})}},quality:{get(){return this.config?.quality},set(e){this.update({quality:e})}},scenarioCustomizationEnabled:{get(){return this.config?.scenario_customization_enabled??!1},set(e){this.update({scenario_customization_enabled:e})}},styleCustomizationEnabled:{get(){return this.config?.style_customization_enabled??!1},set(e){this.update({style_customization_enabled:e})}},voiceCustomizationEnabled:{get(){return this.config?.voice_customization_enabled??!1},set(e){e||this.stopSample(),this.update({voice_customization_enabled:e})}},scenario:{get(){return this.config?.scenario},set(e){this.update({scenario:e})}},style:{get(){return this.config?.style},set(e){let t=e?.trim();this.update({style:!t||t.toLowerCase()===`auto`?le:t})}},voice:{get(){return this.config?.voice},set(e){this.stopSample(),this.update({voice:e||`warm-female`})}},currentSample(){return H.find(e=>e.key===this.voice)?.sample}},watch:{voiceCustomizationEnabled(e){e||this.stopSample()},voice(){this.stopSample()}},mounted(){this.update({action:this.config?.action??`generate`,langs:Y(this.config?.langs),aspect:this.config?.aspect??`9:16`,duration:this.config?.duration??30,quality:this.config?.quality??`standard`})},beforeUnmount(){this.stopSample()},methods:{update(e){this.$store.commit(`maestro/setConfig`,{...this.config,...e})},onClearRemix(){this.update({action:ue,ref_task_id:void 0})},onToggleSample(){let e=this.currentSample;if(e){if(this.audioEl||(this.audioEl=d(new Audio),this.audioEl.addEventListener(`ended`,()=>{this.playing=!1})),this.playing){this.audioEl.pause(),this.playing=!1;return}this.audioEl.src!==e&&(this.audioEl.src=e),this.audioEl.currentTime=0,this.audioEl.play().then(()=>{this.playing=!0}).catch(()=>{this.playing=!1})}},stopSample(){this.audioEl&&(this.audioEl.pause(),this.audioEl.currentTime=0),this.playing=!1},onGenerate(){this.$emit(`generate`)}}}),et={class:`flex flex-col h-full`},tt={class:`flex-1 overflow-y-auto p-5`},nt={class:`text-xs mb-1`},rt={class:`field-block mb-5`},it={class:`field-head`},at={class:`field-title font-bold`},ot={class:`field-block mb-5`},st={class:`field-head`},ct={class:`field-title font-bold`},lt={class:`language-picker`},ut={class:`language-role language-role--primary`},dt={class:`language-role-label`},ft={class:`language-role`},pt={class:`language-role-label`},mt={class:`field-block mb-5`},ht={class:`field-head`},gt={class:`field-title font-bold`},_t=[`aria-label`],vt=[`aria-checked`,`aria-label`,`onClick`,`onKeydown`],yt={class:`ratio-preview`},bt={class:`ratio-name`},xt={class:`field-row mb-4`},St={class:`field-head`},Ct={class:`field-title font-bold`},wt={class:`field-row`},Tt={class:`field-head`},Et={class:`field-title font-bold`},Dt={class:`custom-field`},Ot={class:`custom-field-header mb-2`},kt={class:`field-head`},At={class:`field-title font-bold`},jt=[`aria-label`,`aria-disabled`],Mt=[`aria-checked`,`aria-disabled`,`aria-label`,`tabindex`,`onClick`,`onKeydown`],Nt={class:`scenario-thumb`},Pt=[`src`,`alt`],Ft={class:`scenario-name`},It={class:`custom-field`},Lt={class:`custom-field-header mb-2`},Rt={class:`field-head`},zt={class:`field-title font-bold`},Bt={class:`custom-field`},Vt={class:`custom-field-header mb-2`},Ht={class:`field-head`},Ut={class:`field-title font-bold`},Wt={class:`voice-row`},Gt={class:`flex flex-col items-center justify-center px-5 pb-5`};function Kt(d,f,p,v,b,x){let S=u(`magic-icon`),C=u(`el-button`),w=u(`el-alert`),T=u(`prompt-textarea`),E=u(`info-icon`),D=u(`file-urls-input`),O=u(`el-option`),k=u(`el-select`),A=u(`el-input-number`),j=u(`el-switch`),M=u(`pause-icon`),N=u(`play-icon`);return y(),s(`div`,et,[e(`div`,tt,[d.isRemixing?(y(),m(w,{key:0,closable:!1,type:`info`,class:`mb-5`},{default:h(()=>[e(`p`,nt,[a(S,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(d.$t(`maestro.name.remixing`))+`: `+i(d.refTaskId),1)]),a(C,{size:`small`,text:``,onClick:d.onClearRemix},{default:h(()=>[r(i(d.$t(`maestro.button.cancelRemix`)),1)]),_:1},8,[`onClick`])]),_:1})):o(``,!0),a(T,{modelValue:d.prompt,"onUpdate:modelValue":f[0]||=e=>d.prompt=e,class:`mb-5`,title:d.$t(`maestro.name.prompt`),info:d.$t(`maestro.description.prompt`),placeholder:d.$t(`maestro.placeholder.prompt`),"min-rows":6},null,8,[`modelValue`,`title`,`info`,`placeholder`]),e(`div`,rt,[e(`div`,it,[e(`h2`,at,i(d.$t(`maestro.name.files`)),1),a(E,{content:d.$t(`maestro.description.files`),class:`ml-1`},null,8,[`content`])]),a(D)]),e(`div`,ot,[e(`div`,st,[e(`h2`,ct,i(d.$t(`maestro.name.langs`)),1),a(E,{content:d.$t(`maestro.description.langs`),class:`ml-1`},null,8,[`content`])]),e(`div`,lt,[e(`label`,ut,[e(`span`,dt,i(d.$t(`maestro.name.primaryLanguage`)),1),a(k,{modelValue:d.primaryLanguage,"onUpdate:modelValue":f[1]||=e=>d.primaryLanguage=e,class:`w-full`},{default:h(()=>[(y(!0),s(l,null,_(d.languageOptions,e=>(y(),m(O,{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`])]),e(`label`,ft,[e(`span`,pt,i(d.$t(`maestro.name.additionalLanguages`)),1),a(k,{modelValue:d.additionalLanguages,"onUpdate:modelValue":f[2]||=e=>d.additionalLanguages=e,multiple:``,"collapse-tags":``,"collapse-tags-tooltip":``,placeholder:d.$t(`maestro.placeholder.additionalLanguages`),class:`w-full`},{default:h(()=>[(y(!0),s(l,null,_(d.additionalLanguageOptions,e=>(y(),m(O,{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`])])])]),e(`div`,mt,[e(`div`,ht,[e(`h2`,gt,i(d.$t(`maestro.name.aspect`)),1)]),e(`div`,{class:`ratio-items`,role:`radiogroup`,"aria-label":d.$t(`maestro.name.aspect`)},[(y(!0),s(l,null,_(d.ratioOptions,r=>(y(),s(`div`,{key:r.value,class:n([`ratio-item`,{active:d.aspect===r.value}]),role:`radio`,"aria-checked":d.aspect===r.value,"aria-label":r.value,tabindex:`0`,onClick:e=>d.aspect=r.value,onKeydown:[c(t(e=>d.aspect=r.value,[`prevent`]),[`enter`]),c(t(e=>d.aspect=r.value,[`prevent`]),[`space`])]},[e(`div`,yt,[e(`div`,{class:`ratio-rect`,style:g({width:r.width+`px`,height:r.height+`px`})},null,4)]),e(`p`,bt,i(r.value),1)],42,vt))),128))],8,_t)]),e(`div`,xt,[e(`div`,St,[e(`h2`,Ct,i(d.$t(`maestro.name.duration`)),1),a(E,{content:d.$t(`maestro.description.duration`),class:`ml-1`},null,8,[`content`])]),a(A,{modelValue:d.duration,"onUpdate:modelValue":f[3]||=e=>d.duration=e,class:`field-control`,min:d.MAESTRO_MIN_DURATION,max:d.MAESTRO_MAX_DURATION,step:5,"controls-position":`right`},null,8,[`modelValue`,`min`,`max`])]),e(`div`,wt,[e(`div`,Tt,[e(`h2`,Et,i(d.$t(`maestro.name.quality`)),1),a(E,{content:d.$t(`maestro.description.quality`),class:`ml-1`},null,8,[`content`])]),a(k,{modelValue:d.quality,"onUpdate:modelValue":f[4]||=e=>d.quality=e,class:`field-control`},{default:h(()=>[(y(!0),s(l,null,_(d.MAESTRO_ALLOWED_QUALITIES,e=>(y(),m(O,{key:e,label:d.$t(`maestro.option.quality.${e}`),value:e},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`])]),e(`div`,Dt,[e(`div`,Ot,[e(`div`,kt,[e(`h2`,At,i(d.$t(`maestro.name.customizeScenario`)),1),a(E,{content:d.$t(`maestro.description.scenario`),class:`ml-1`},null,8,[`content`])]),a(j,{modelValue:d.scenarioCustomizationEnabled,"onUpdate:modelValue":f[5]||=e=>d.scenarioCustomizationEnabled=e,"aria-label":d.$t(`maestro.name.customizeScenario`)},null,8,[`modelValue`,`aria-label`])]),e(`div`,{class:n([`scenario-cards`,{"is-disabled":!d.scenarioCustomizationEnabled}]),role:`radiogroup`,"aria-label":d.$t(`maestro.name.scenario`),"aria-disabled":!d.scenarioCustomizationEnabled},[(y(!0),s(l,null,_(d.MAESTRO_ALLOWED_SCENARIOS,r=>(y(),s(`div`,{key:r,class:n([`scenario-card`,{active:d.scenarioCustomizationEnabled&&d.scenario===r,disabled:!d.scenarioCustomizationEnabled}]),role:`radio`,"aria-checked":d.scenarioCustomizationEnabled&&d.scenario===r,"aria-disabled":!d.scenarioCustomizationEnabled,"aria-label":d.$t(`maestro.option.scenario.${r}`),tabindex:d.scenarioCustomizationEnabled?0:-1,onClick:e=>d.scenarioCustomizationEnabled&&(d.scenario=r),onKeydown:[c(t(e=>d.scenarioCustomizationEnabled&&(d.scenario=r),[`prevent`]),[`enter`]),c(t(e=>d.scenarioCustomizationEnabled&&(d.scenario=r),[`prevent`]),[`space`])]},[e(`div`,Nt,[e(`img`,{src:d.MAESTRO_SCENARIO_THUMBNAILS[r],alt:d.$t(`maestro.option.scenario.${r}`),loading:`lazy`},null,8,Pt)]),e(`p`,Ft,i(d.$t(`maestro.option.scenario.${r}`)),1)],42,Mt))),128))],10,jt),d.needsVideoUpload?(y(),m(w,{key:0,title:d.$t(`maestro.message.captionsNeedVideo`),type:`warning`,closable:!1,"show-icon":``,class:`mt-2`},null,8,[`title`])):o(``,!0)]),e(`div`,It,[e(`div`,Lt,[e(`div`,Rt,[e(`h2`,zt,i(d.$t(`maestro.name.customizeStyle`)),1),a(E,{content:d.$t(`maestro.description.style`),class:`ml-1`},null,8,[`content`])]),a(j,{modelValue:d.styleCustomizationEnabled,"onUpdate:modelValue":f[6]||=e=>d.styleCustomizationEnabled=e,"aria-label":d.$t(`maestro.name.customizeStyle`)},null,8,[`modelValue`,`aria-label`])]),a(k,{modelValue:d.style,"onUpdate:modelValue":f[7]||=e=>d.style=e,class:`w-full`,filterable:``,"allow-create":``,"default-first-option":``,disabled:!d.styleCustomizationEnabled,"aria-label":d.$t(`maestro.name.customizeStyle`),placeholder:d.$t(`maestro.placeholder.select`)},{default:h(()=>[(y(!0),s(l,null,_(d.MAESTRO_ALLOWED_STYLES,e=>(y(),m(O,{key:e,label:d.$t(`maestro.option.style.${e}`),value:e},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`disabled`,`aria-label`,`placeholder`])]),e(`div`,Bt,[e(`div`,Vt,[e(`div`,Ht,[e(`h2`,Ut,i(d.$t(`maestro.name.customizeVoice`)),1),a(E,{content:d.$t(`maestro.description.voice`),class:`ml-1`},null,8,[`content`])]),a(j,{modelValue:d.voiceCustomizationEnabled,"onUpdate:modelValue":f[8]||=e=>d.voiceCustomizationEnabled=e,"aria-label":d.$t(`maestro.name.customizeVoice`)},null,8,[`modelValue`,`aria-label`])]),e(`div`,Wt,[a(k,{modelValue:d.voice,"onUpdate:modelValue":f[9]||=e=>d.voice=e,class:`voice-select`,disabled:!d.voiceCustomizationEnabled,"aria-label":d.$t(`maestro.name.customizeVoice`),placeholder:d.$t(`maestro.placeholder.select`)},{default:h(()=>[(y(!0),s(l,null,_(d.MAESTRO_ALLOWED_VOICES,e=>(y(),m(O,{key:e.key,label:d.$t(`maestro.option.voice.${e.key}`),value:e.key},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`disabled`,`aria-label`,`placeholder`]),a(C,{class:`voice-play`,disabled:!d.voiceCustomizationEnabled||!d.currentSample,title:d.$t(`maestro.button.preview`),"aria-label":d.$t(`maestro.button.preview`),onClick:d.onToggleSample},{default:h(()=>[d.playing?(y(),m(M,{key:0,size:`1em`,"aria-hidden":`true`,focusable:`false`})):(y(),m(N,{key:1,size:`1em`,"aria-hidden":`true`,focusable:`false`}))]),_:1},8,[`disabled`,`title`,`aria-label`,`onClick`])])])]),e(`div`,Gt,[a(C,{type:`primary`,class:`btn w-full`,round:``,disabled:!d.canGenerate,onClick:d.onGenerate},{default:h(()=>[a(S,{class:`mr-2`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(d.$t(`maestro.button.generate`)),1)]),_:1},8,[`disabled`,`onClick`])])])}var qt=U($e,[[`render`,Kt],[`__scopeId`,`data-v-a4840734`]]),Jt=50,Yt=1e4,X=new Map,Z=new Map,Xt=(e,t)=>{if(X.set(e,t),X.size>Jt){let e=X.keys().next().value;e&&X.delete(e)}};async function Zt(e,t){let n=`${t.credentialKey}:${e}`,r=X.get(n);if(r)return r;let i=Z.get(n);if(i)return i.promise;let a=new AbortController,o,s={controller:a,promise:void 0},c=G.task(e,{token:t.token,signal:a.signal}).then(({data:e})=>{if(!a.signal.aborted)return Xt(n,e),e}).catch(t=>{a.signal.aborted||console.warn(`failed to load maestro remix reference task`,e,t)}),l=new Promise(e=>{o=window.setTimeout(()=>{a.abort(),e(void 0)},Yt)});return s.promise=Promise.race([c,l]).finally(()=>{o!==void 0&&window.clearTimeout(o),Z.get(n)===s&&Z.delete(n)}),Z.set(n,s),s.promise}var Q=[`plan`,`source`,`voice`,`compose`,`render`,`deliver`];function $(e){if(!e)return-1;let t=e.toLowerCase(),n=Q.indexOf(t);return n>=0?n:/plan|storyboard|script|brief/.test(t)?0:/source|search|image|photo|asset|media/.test(t)?1:/voice|tts|audio|narrat/.test(t)?2:/compose|composit|build|layout|scene/.test(t)?3:/render|encode/.test(t)?4:/deliver|upload|cdn|complete|done|finish/.test(t)?5:-1}var Qt=x({name:`ProgressSteps`,components:{ElIcon:S,Loading:ee,Check:M},props:{modelValue:{type:Object,required:!0}},computed:{currentIndex(){let e=this.modelValue?.response?.data?.progress||[],t=-1;for(let n of e)t=Math.max(t,$(n?.stage));return t=Math.max(t,$(this.modelValue?.response?.data?.stage)),Math.max(t,0)},detail(){let e=this.modelValue?.response?.data;if(e?.activity)return e.activity;let t=e?.progress||[];for(let e=t.length-1;e>=0;e--)if(t[e]?.message)return t[e]?.message},steps(){return Q.map(e=>({key:e}))}},methods:{stateOf(e){let t=this.currentIndex;return e<t?`done`:e===t?`active`:`pending`}}}),$t={class:`progress-steps`,"aria-live":`polite`},en=[`aria-current`],tn={class:`ico`},nn={class:`txt`},rn={key:0,class:`detail`};function an(t,r,c,d,f,p){let g=u(`loading`),v=u(`el-icon`),b=u(`check`);return y(),s(`div`,$t,[(y(!0),s(l,null,_(t.steps,(r,c)=>(y(),s(`div`,{key:r.key,class:n([`step`,t.stateOf(c)]),"aria-current":c===t.currentIndex?`step`:void 0},[e(`span`,tn,[c===t.currentIndex?(y(),m(v,{key:0,class:`is-loading`,"aria-label":t.$t(`maestro.step.${r.key}`)},{default:h(()=>[a(g,{size:`1em`,"aria-hidden":`true`,focusable:`false`})]),_:1},8,[`aria-label`])):c<t.currentIndex?(y(),m(v,{key:1},{default:h(()=>[a(b,{size:`1em`,"aria-hidden":`true`,focusable:`false`})]),_:1})):o(``,!0)]),e(`span`,nn,i(t.$t(`maestro.step.${r.key}`)),1)],10,en))),128)),t.detail?(y(),s(`p`,rn,i(t.detail),1)):o(``,!0)])}var on=U(Qt,[[`render`,an],[`__scopeId`,`data-v-8a883977`]]),sn=[`succeeded`,`failed`],cn=[1e3,3e3],ln=x({name:`TaskPreview`,components:{DeleteIcon:oe,ElTooltip:E,ChannelIcon:L,DownloadIcon:P,InfoIcon:z,LanguageIcon:B,MagicIcon:V,RedoIcon:ae,TimeIcon:N,WarningIcon:se,CopyToClipboard:Ee,ElAlert:D,VideoPlayer:Ne,ElButton:W,ApiCodeButton:Pe,ImagePreview:Oe,AudioPreview:Le,VideoPreview:Ie,FilePreview:De,ProgressSteps:on},props:{modelValue:{type:Object,required:!0}},data(){return{fetchedReferenceTask:void 0,fetchedReferenceKey:void 0,referenceLoadAttempt:0,referenceLoadFailed:!1,referenceLoadTimer:void 0,referenceLoadVersion:0}},computed:{variants(){return this.modelValue?.response?.data?.variants||[]},files(){let e=[...this.modelValue?.request?.file_urls||[]];if(this.referenceTaskId)for(let t of this.referenceTask?.response?.data?.variants||[])t.output_url&&e.push(t.output_url);return[...new Set(e)].filter(e=>!!e).map(e=>{let t=e.split(`?`)[0].split(`#`)[0],n=Se(t)?`image`:q(t)?`video`:Ce(t)?`audio`:`file`;return{url:e,name:this.fileName(t),kind:n}})},referenceTaskId(){let e=this.modelValue?.request;return e?.action===`remix`?e?.ref_task_id:void 0},referenceLoadKey(){let e=this.$store.state.maestro?.credential,t=e?.token;if(!(!this.referenceTaskId||!t))return JSON.stringify([this.referenceTaskId,e?.id||e?.user_id||t,t])},referenceTask(){if(this.referenceTaskId)return this.$store.state.maestro?.tasks?.items?.find(e=>e.id===this.referenceTaskId)||(this.fetchedReferenceKey===this.referenceLoadKey?this.fetchedReferenceTask:void 0)},isTerminal(){return sn.includes(this.modelValue?.status||``)},traceId(){return this.modelValue?.trace_id||this.modelValue?.response?.trace_id},progressPct(){let e=this.modelValue?.response?.data?.progress,t=e?.length?e[e.length-1]:void 0;return typeof t?.pct==`number`?t.pct:void 0},progressText(){return this.progressPct===void 0?this.statusLabel:`${this.progressPct}%`},statusLabel(){let e=`maestro.status.${this.modelValue?.status||`pending`}`,t=this.$t(e);return t===e?this.$t(`maestro.status.processing`):t},failureReason(){let e=this.modelValue?.response?.error;if(e)return typeof e==`string`?e:e?.message},requestParams(){let e=this.modelValue?.request;if(!e)return[];let t=[];return e.action&&t.push({icon:d(V),label:this.$t(`maestro.name.mode`),value:this.optionLabel(`maestro.option.action`,e.action)}),e.scenario&&t.push({icon:d(ce),label:this.$t(`maestro.name.scenario`),value:this.optionLabel(`maestro.option.scenario`,e.scenario)}),e.style&&t.push({icon:d(te),label:this.$t(`maestro.name.style`),value:this.optionLabel(`maestro.option.style`,e.style)}),e.quality&&t.push({icon:d(F),label:this.$t(`maestro.name.quality`),value:this.optionLabel(`maestro.option.quality`,e.quality)}),e.aspect&&t.push({icon:d(I),label:this.$t(`maestro.name.aspect`),value:e.aspect}),e.duration&&t.push({icon:d(N),label:this.$t(`maestro.name.duration`),value:`${e.duration}s`}),e.langs?.length&&t.push({icon:d(B),label:this.$t(`maestro.name.langs`),value:e.langs.join(` · `)}),t}},watch:{referenceLoadKey:{immediate:!0,handler(e){this.resetReferenceLoad(),e&&!this.referenceTask&&this.loadReferenceTask(e)}}},beforeUnmount(){this.resetReferenceLoad()},methods:{async onDelete(){let e=this.modelValue?.id;if(e){try{await be.confirm(this.$t(`common.message.deleteTaskConfirm`),this.$t(`common.button.delete`),{type:`warning`,confirmButtonText:this.$t(`common.button.delete`),cancelButtonText:this.$t(`common.button.cancel`),confirmButtonClass:`el-button--danger`})}catch{return}try{await this.$store.dispatch(`maestro/deleteTask`,{id:e}),J.success(this.$t(`common.message.deleteTaskSuccess`))}catch{J.error(this.$t(`common.message.deleteTaskFailed`))}}},resetReferenceLoad(){this.referenceLoadTimer!==void 0&&window.clearTimeout(this.referenceLoadTimer),this.referenceLoadTimer=void 0,this.referenceLoadVersion+=1,this.referenceLoadAttempt=0,this.referenceLoadFailed=!1,this.fetchedReferenceTask=void 0,this.fetchedReferenceKey=void 0},async loadReferenceTask(e){if(e!==this.referenceLoadKey||this.referenceTask)return;let t=this.$store.state.maestro?.credential,n=t?.token,r=this.referenceTaskId;if(!r||!n)return;let i=t?.id||t?.user_id||n,a=this.referenceLoadVersion;this.referenceLoadAttempt+=1;let o=await Zt(r,{token:n,credentialKey:i});if(a!==this.referenceLoadVersion||e!==this.referenceLoadKey)return;if(o){this.fetchedReferenceTask=o,this.fetchedReferenceKey=e,this.referenceLoadFailed=!1;return}let s=cn[this.referenceLoadAttempt-1];s===void 0?this.referenceLoadFailed=!0:this.referenceLoadTimer=window.setTimeout(()=>{this.referenceLoadTimer=void 0,this.loadReferenceTask(e)},s)},retryReferenceTask(){let e=this.referenceLoadKey;this.resetReferenceLoad(),e&&this.loadReferenceTask(e)},optionLabel(e,t){let n=`${e}.${t}`,r=this.$t(n);return r===n?t:r},fileName(e){let t=e.substring(e.lastIndexOf(`/`)+1);try{return decodeURIComponent(t)||e}catch{return t||e}},onDownload(e,t){e?.stopPropagation(),window.open(t,`_blank`)},onRemix(){if(!this.modelValue)return;let e=ze(this.$store.state.maestro?.config,this.modelValue);this.$store.commit(`maestro/setConfig`,e),J.info(this.$t(`maestro.message.remixLoaded`))}}}),un={class:`preview`},dn={class:`left`},fn={class:`main`},pn={class:`bot`},mn={class:`datetime`},hn=[`aria-label`],gn={class:`info`},_n={key:0,class:`flex justify-start items-center gap-2 mt-2 w-full overflow-x-auto`},vn=[`href`,`title`],yn={key:1,class:`reference-load-failed flex items-center gap-1 mt-2 text-xs text-[var(--el-text-color-secondary)]`},bn={key:2,class:`prompt mt-2`},xn={key:0,class:`progress-pct`},Sn={key:0,class:`content`},Cn={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},wn={key:0,class:`text-[var(--el-text-color-regular)] text-xs mb-0`},Tn={key:1,class:`content`},En={class:`text-xs text-[var(--el-text-color-secondary)] mb-1`},Dn={key:0},On={class:`operations`},kn={key:0},An={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},jn={key:0,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Mn={key:1,class:`text-[var(--el-text-color-regular)] text-xs mb-0`},Nn={key:2,class:`content`},Pn={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Fn={key:0,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},In={key:1,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Ln={key:2,class:`text-[var(--el-text-color-regular)] text-xs mb-0`};function Rn(c,d,f,p,g,b){let x=u(`capability-presentation`),S=u(`delete-icon`),C=u(`el-tooltip`),w=u(`image-preview`),T=u(`video-preview`),E=u(`audio-preview`),D=u(`file-preview`),O=u(`info-icon`),k=u(`redo-icon`),A=u(`el-button`),j=u(`progress-steps`),M=u(`magic-icon`),N=u(`copy-to-clipboard`),P=u(`channel-icon`),F=u(`el-alert`),I=u(`language-icon`),L=u(`video-player`),R=u(`download-icon`),z=u(`api-code-button`),B=u(`time-icon`),ee=u(`warning-icon`);return y(),s(`div`,un,[e(`div`,dn,[a(x,{capability:`maestro`,part:`avatar`,class:`avatar`})]),e(`div`,fn,[e(`div`,pn,[a(x,{capability:`maestro`,part:`name`}),e(`span`,mn,i(c.$dayjs.format(``+new Date(parseFloat((c.modelValue?.created_at||``).toString())*1e3))),1),a(C,{effect:`dark`,content:c.$t(`common.button.delete`),placement:`top`},{default:h(()=>[c.modelValue?.id?(y(),s(`button`,{key:0,type:`button`,class:`btn-delete`,"aria-label":c.$t(`common.button.delete`),onClick:d[0]||=t((...e)=>c.onDelete&&c.onDelete(...e),[`stop`])},[a(S,{size:`1em`,"aria-hidden":`true`,focusable:`false`})],8,hn)):o(``,!0)]),_:1},8,[`content`])]),e(`div`,gn,[c.files.length?(y(),s(`div`,_n,[(y(!0),s(l,null,_(c.files,(e,t)=>(y(),s(l,{key:t},[e.kind===`image`?(y(),m(w,{key:0,url:e.url,name:e.name,closable:!1},null,8,[`url`,`name`])):e.kind===`video`?(y(),m(T,{key:1,url:e.url,name:e.name},null,8,[`url`,`name`])):e.kind===`audio`?(y(),m(E,{key:2,url:e.url,name:e.name},null,8,[`url`,`name`])):(y(),s(`a`,{key:3,href:e.url,title:e.name,target:`_blank`,rel:`noopener noreferrer`,class:`shrink-0 no-underline`},[a(D,{name:e.name,closable:!1},null,8,[`name`])],8,vn))],64))),128))])):o(``,!0),c.referenceLoadFailed&&c.referenceTaskId&&!c.referenceTask?(y(),s(`div`,yn,[a(O,{size:`1em`,"aria-hidden":`true`,focusable:`false`}),e(`span`,null,i(c.$t(`maestro.name.files`))+`: `+i(c.$t(`maestro.name.failure`)),1),a(A,{class:`reference-retry`,size:`small`,text:``,circle:``,title:c.$t(`codingBridge.session.retry`),"aria-label":c.$t(`codingBridge.session.retry`),onClick:c.retryReferenceTask},{default:h(()=>[a(k,{size:`1em`,"aria-hidden":`true`,focusable:`false`})]),_:1},8,[`title`,`aria-label`,`onClick`])])):o(``,!0),c.modelValue?.request?.prompt?(y(),s(`p`,bn,[r(i(c.modelValue?.request?.prompt)+` `,1),c.isTerminal?o(``,!0):(y(),s(`span`,xn,` · `+i(c.progressText),1))])):o(``,!0)]),c.isTerminal?o(``,!0):(y(),s(`div`,Sn,[a(F,{closable:!1,class:`mt-2 processing`},{default:h(()=>[a(j,{"model-value":c.modelValue},null,8,[`model-value`]),(y(!0),s(l,null,_(c.requestParams,(e,t)=>(y(),s(`p`,{key:`param-${t}`,class:n([`text-[var(--el-text-color-regular)] text-xs mb-2`,{"mt-3":t===0}])},[(y(),m(v(e.icon),{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`})),r(` `+i(e.label)+`: `+i(e.value),1)],2))),128)),e(`p`,Cn,[a(M,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(c.$t(`maestro.name.taskId`))+`: `+i(c.modelValue?.id)+` `,1),a(N,{content:c.modelValue?.id},null,8,[`content`])]),c.traceId?(y(),s(`p`,wn,[a(P,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(c.$t(`maestro.name.traceId`))+`: `+i(c.traceId)+` `,1),a(N,{content:c.traceId},null,8,[`content`])])):o(``,!0)]),_:1})])),c.modelValue?.response?.success===!0&&c.variants.length?(y(),s(`div`,Tn,[(y(!0),s(l,null,_(c.variants,(t,n)=>(y(),s(`div`,{key:n,class:`mb-4`},[e(`p`,En,[a(I,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(i(t.lang),1),t.title?(y(),s(`span`,Dn,` · `+i(t.title),1)):o(``,!0)]),t.output_url?(y(),m(L,{key:0,src:t.output_url},null,8,[`src`])):o(``,!0)]))),128)),e(`div`,On,[(y(!0),s(l,null,_(c.variants,(e,t)=>(y(),s(l,{key:t},[e.output_url?(y(),m(A,{key:0,type:`info`,size:`small`,class:`btn-action`,onClick:t=>c.onDownload(t,e.output_url)},{default:h(()=>[a(R,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(c.$t(`maestro.button.download`)),1),c.variants.length>1?(y(),s(`span`,kn,` · `+i(e.lang),1)):o(``,!0)]),_:2},1032,[`onClick`])):o(``,!0)],64))),128)),a(A,{size:`small`,type:`primary`,class:`btn-action`,onClick:c.onRemix},{default:h(()=>[a(M,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(c.$t(`maestro.button.remix`)),1)]),_:1},8,[`onClick`]),a(z,{path:`/maestro/videos`,body:c.modelValue?.request},null,8,[`body`])]),a(F,{closable:!1,class:`mt-2 success`},{default:h(()=>[(y(!0),s(l,null,_(c.requestParams,(e,t)=>(y(),s(`p`,{key:`param-${t}`,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},[(y(),m(v(e.icon),{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`})),r(` `+i(e.label)+`: `+i(e.value),1)]))),128)),e(`p`,An,[a(M,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(c.$t(`maestro.name.taskId`))+`: `+i(c.modelValue?.id)+` `,1),a(N,{content:c.modelValue?.id},null,8,[`content`])]),c.modelValue?.elapsed?(y(),s(`p`,jn,[a(B,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(c.$t(`maestro.name.elapsed`))+`: `+i(c.modelValue?.elapsed?.toFixed(2))+`s `,1)])):o(``,!0),c.traceId?(y(),s(`p`,Mn,[a(P,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(c.$t(`maestro.name.traceId`))+`: `+i(c.traceId)+` `,1),a(N,{content:c.traceId},null,8,[`content`])])):o(``,!0)]),_:1})])):o(``,!0),c.modelValue?.response?.success===!1?(y(),s(`div`,Nn,[a(F,{closable:!1,class:`failure`},{template:h(()=>[a(ee,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(c.$t(`maestro.name.failure`)),1)]),default:h(()=>[(y(!0),s(l,null,_(c.requestParams,(e,t)=>(y(),s(`p`,{key:`param-${t}`,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},[(y(),m(v(e.icon),{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`})),r(` `+i(e.label)+`: `+i(e.value),1)]))),128)),e(`p`,Pn,[a(M,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(c.$t(`maestro.name.taskId`))+`: `+i(c.modelValue?.id)+` `,1),a(N,{content:c.modelValue?.id},null,8,[`content`])]),c.failureReason?(y(),s(`p`,Fn,[a(O,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(c.$t(`maestro.name.failureReason`))+`: `+i(c.failureReason),1)])):o(``,!0),c.modelValue?.elapsed?(y(),s(`p`,In,[a(B,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(c.$t(`maestro.name.elapsed`))+`: `+i(c.modelValue?.elapsed?.toFixed(2))+`s `,1)])):o(``,!0),c.traceId?(y(),s(`p`,Ln,[a(P,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(c.$t(`maestro.name.traceId`))+`: `+i(c.traceId)+` `,1),a(N,{content:c.traceId},null,8,[`content`])])):o(``,!0)]),_:1})])):o(``,!0)])])}var zn=x({name:`RecentPanel`,components:{TaskPreview:U(ln,[[`render`,Rn],[`__scopeId`,`data-v-b9599f6a`]]),NoTasks:je,BotPlaceholder:Fe,ScrollList:Ae},props:{loading:{type:Boolean,default:!1}},emits:[`reach-top`],computed:{tasks(){return{...this.$store.state.maestro?.tasks,items:this.$store.state.maestro?.tasks?.items?.slice()}}},methods:{getScrollElement(){return this.$refs.scrollList?.getScrollElement?.()}}}),Bn={key:0},Vn={key:2,class:`w-full h-full flex items-center justify-center`};function Hn(e,t,n,r,i,c){let d=u(`bot-placeholder`),f=u(`task-preview`),p=u(`scroll-list`),g=u(`no-tasks`);return y(),s(l,null,[e.tasks?.items===void 0?(y(),s(`div`,Bn,[a(d)])):e.tasks?.items?.length&&e.tasks?.items?.length>0?(y(),m(p,{key:1,ref:`scrollList`,class:`tasks h-full w-full overflow-y-auto`,loading:e.loading,onReachTop:t[0]||=t=>e.$emit(`reach-top`)},{default:h(()=>[(y(!0),s(l,null,_(e.tasks?.items,(e,t)=>(y(),m(f,{key:t,"model-value":e},null,8,[`model-value`]))),128))]),_:1},8,[`loading`])):o(``,!0),e.tasks?.items?.length===0?(y(),s(`div`,Vn,[a(g)])):o(``,!0)],64)}var Un=x({name:`MaestroIndex`,components:{ConfigPanel:qt,Layout:Je,RecentPanel:U(zn,[[`render`,Hn]])},inject:[`initialized`],data(){return{job:0,loadingMore:!1,fetchingTasks:!1}},computed:{applicationsLoading(){return this.$store.state.maestro?.status?.getApplications===K.Request},tasksLoading(){return this.$store.state.maestro?.status?.getTasks===K.Request||this.fetchingTasks},credential(){return this.$store.state.maestro.credential},config(){return this.$store.state.maestro.config},tasks(){return this.$store.state.maestro.tasks}},watch:{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 Me({tasks:this.tasks,getTasks:()=>this.tasks,loading:this.loadingMore,setLoading:e=>this.loadingMore=e,isBlocked:()=>this.tasksLoading||this.applicationsLoading,fetch:e=>this.onGetTasks({createdAtMax:e}),getScrollElement:()=>this.getTasksScrollElement()})},async onGetService(){await this.$store.dispatch(`maestro/getService`)},async onScrollDown(){await this.$nextTick();let e=this.getTasksScrollElement();e&&(e.scrollTop=e.scrollHeight)},async onGetTasks(e){if(this.applicationsLoading||this.fetchingTasks)return;let{limit:t=5,createdAtMin:n,createdAtMax:r}=e||{};this.fetchingTasks=!0;try{await this.$store.dispatch(`maestro/getTasks`,{limit:t,createdAtMin:n,createdAtMax:r})}finally{this.fetchingTasks=!1}},async onGenerate(){let e=He(this.config);if(!we())return;let t=this.credential?.token;if(!t){console.error(`no token specified`);return}J.info(this.$t(`maestro.message.startingTask`)),Te(`maestro`,G.generate(e,{token:t})).then(()=>{J.success(this.$t(`maestro.message.startTaskSuccess`))}).catch(e=>{(e?.response?.data)?.error?.code===`used_up`?J.error(this.$t(`maestro.message.usedUp`)):J.error(this.$t(`maestro.message.startTaskFailed`))}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})},getTasksScrollElement(){return this.$refs.recentPanel?.getScrollElement?.()}}});function Wn(e,t,n,r,i,o){let s=u(`config-panel`),c=u(`recent-panel`),l=u(`layout`);return y(),m(l,null,{config:h(()=>[a(s,{onGenerate:e.onGenerate},null,8,[`onGenerate`])]),result:h(()=>[a(c,{ref:`recentPanel`,loading:e.loadingMore,onReachTop:e.onReachTop},null,8,[`loading`,`onReachTop`])]),_:1})}var Gn=U(Un,[[`render`,Wn]]);export{Gn 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-C1DRhWnC.js";import{n as y,t as b}from"./tabs-YP0EqXmu.js";import{t as x}from"./tooltip-BUeFXdRV.js";import{t as S}from"./alert-CnaTI5Gp.js";import{n as C,r as w}from"./radio-DgDgyT2l.js";import{n as T,t as E}from"./collapse-REPDtdUv.js";import{t as D}from"./drawer-WJpD3B-h.js";import{t as O}from"./input-number-Cu-ypyye.js";import{t as k}from"./switch-D8nKhRhq.js";import{t as A}from"./clock-CuqZkl7_.js";import{t as j}from"./external-link-CD09gDkB.js";import{t as M}from"./globe-QciOpfcX.js";import{t as N}from"./info-beFALQcg.js";import{t as P}from"./loader-circle-ThtlXaMq.js";import{t as F}from"./sliders-horizontal-B_GbFRLT.js";import{t as ee}from"./tag-Dkb23AYB.js";import{t as te}from"./wand-sparkles-CWJ7w1RN.js";import{t as I}from"./zap-DspE4dgC.js";import"./constants-B0QZudfQ.js";import{E as L,Fi as R,Kt as z,Wi as B,ai as V,tn as H,wi as U,xi as W,yi as G}from"./index-CilVeL08.js";import{t as K}from"./CopyToClipboard-CwUIV3sA.js";import{t as q}from"./Consumption-D14USkw2.js";var J=G(`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:F,ElDrawer:D,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=L(Y,[[`render`,ne],[`__scopeId`,`data-v-0ca47a5f`]]),ie=g({name:`ModeSelector`,components:{GlobeIcon:M,MagicIcon:te,ElRadioGroup:w,ElRadioButton:C},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=L(ie,[[`render`,se],[`__scopeId`,`data-v-76c5bea5`]]),le=g({name:`UrlInput`,components:{ElInput:B},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=L(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=L(me,[[`render`,_e],[`__scopeId`,`data-v-3b572c49`]]),ye=g({name:`LlmToggle`,components:{InfoIcon:N,ElSwitch:k,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=L(ye,[[`render`,Se],[`__scopeId`,`data-v-a0c2f78c`]]),we=[`image`,`font`,`media`,`stylesheet`,`xhr`,`fetch`],Te=g({name:`AdvancedOptions`,components:{ElCollapse:E,ElCollapseItem:T,ElInput:B,ElInputNumber:O,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:I,ElButton:R,ModeSelector:ce,UrlInput:pe,ExpectedTypeSelector:ve,LlmToggle:Ce,AdvancedOptions:L(Te,[[`render`,Ie],[`__scopeId`,`data-v-8f36d2df`]]),Consumption:q},emits:[`run`],computed:{config(){return this.$store.state.webextrator?.config},service(){return this.$store.state.webextrator?.service},consumption(){return z(this.config||{},this.service?.cost)},running(){return this.$store.state.webextrator?.status?.run===V.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(`consumption`),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=L(Le,[[`render`,Ve]]),Ue=e=>!!e&&e.kind!==`render`,We=g({name:`WebextratorResultPanel`,components:{ExternalLinkIcon:j,GlobeIcon:M,LabelIcon:ee,LoadingIcon:P,SignalIcon:J,TimeIcon:A,ElAlert:S,ElImage:U,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===V.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(`
|
|
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-B5xUToXJ.js";import{n as y,t as b}from"./tabs-DdDMAO-6.js";import{t as x}from"./tooltip-C29VE8lc.js";import{t as S}from"./alert-Du-kIP6d.js";import{n as C,r as w}from"./radio-DgDgyT2l.js";import{n as T,t as E}from"./collapse-FgaVspFq.js";import{t as D}from"./drawer-U5-wdIK9.js";import{t as O}from"./input-number-DySKK0eZ.js";import{t as k}from"./switch-B2zhTxNP.js";import{t as A}from"./clock-D3yOwNlp.js";import{t as j}from"./external-link-BI7ufMLq.js";import{t as M}from"./globe-DF8FNQwf.js";import{t as N}from"./info-B-wBOS_X.js";import{t as P}from"./loader-circle-eWKIrwr1.js";import{t as F}from"./sliders-horizontal-BThR6srn.js";import{t as ee}from"./tag-Bqsg7qrH.js";import{t as te}from"./wand-sparkles-Dz2mS8Xn.js";import{t as I}from"./zap-DDQV5yCC.js";import"./constants-DmRAKvwo.js";import{E as L,Fi as R,Kt as z,Wi as B,ai as V,tn as H,wi as U,xi as W,yi as G}from"./index-SFwaJFVg.js";import{t as K}from"./CopyToClipboard-o7ZAAs0c.js";import{t as q}from"./Consumption-C5Dn3lp_.js";var J=G(`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:F,ElDrawer:D,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=L(Y,[[`render`,ne],[`__scopeId`,`data-v-0ca47a5f`]]),ie=g({name:`ModeSelector`,components:{GlobeIcon:M,MagicIcon:te,ElRadioGroup:w,ElRadioButton:C},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=L(ie,[[`render`,se],[`__scopeId`,`data-v-76c5bea5`]]),le=g({name:`UrlInput`,components:{ElInput:B},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=L(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=L(me,[[`render`,_e],[`__scopeId`,`data-v-3b572c49`]]),ye=g({name:`LlmToggle`,components:{InfoIcon:N,ElSwitch:k,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=L(ye,[[`render`,Se],[`__scopeId`,`data-v-a0c2f78c`]]),we=[`image`,`font`,`media`,`stylesheet`,`xhr`,`fetch`],Te=g({name:`AdvancedOptions`,components:{ElCollapse:E,ElCollapseItem:T,ElInput:B,ElInputNumber:O,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:I,ElButton:R,ModeSelector:ce,UrlInput:pe,ExpectedTypeSelector:ve,LlmToggle:Ce,AdvancedOptions:L(Te,[[`render`,Ie],[`__scopeId`,`data-v-8f36d2df`]]),Consumption:q},emits:[`run`],computed:{config(){return this.$store.state.webextrator?.config},service(){return this.$store.state.webextrator?.service},consumption(){return z(this.config||{},this.service?.cost)},running(){return this.$store.state.webextrator?.status?.run===V.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(`consumption`),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=L(Le,[[`render`,Ve]]),Ue=e=>!!e&&e.kind!==`render`,We=g({name:`WebextratorResultPanel`,components:{ExternalLinkIcon:j,GlobeIcon:M,LabelIcon:ee,LoadingIcon:P,SignalIcon:J,TimeIcon:A,ElAlert:S,ElImage:U,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===V.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
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:L(We,[[`render`,St],[`__scopeId`,`data-v-4ec341a6`]])},inject:[`initialized`],async mounted(){await this.$store.dispatch(`webextrator/getService`)},methods:{async onRun(){if(!H())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;t===`used_up`?W.error(this.$t(`webextrator.message.usedUp`)):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=L(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-C1DRhWnC.js";import{n as _,t as v}from"./collapse-REPDtdUv.js";import{t as y}from"./drawer-WJpD3B-h.js";import{t as b}from"./globe-QciOpfcX.js";import{t as x}from"./search-DbGZIgzA.js";import"./constants-B0QZudfQ.js";import{E as S,Fi as C,Kt as w,Wi as T,ai as E,tn as ee,xi as D,yi as te}from"./index-CilVeL08.js";import{t as O}from"./Consumption-D14USkw2.js";var k=te(`circle-question-mark`,[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`path`,{d:`M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3`,key:`1u773s`}],[`path`,{d:`M12 17h.01`,key:`p32p05`}]]),A=m({name:`LayoutSerp`,components:{SearchIcon:x,ElDrawer:y,ElButton:C},data(){return{drawer:!1}}}),j={class:`main flex flex-row flex-1`},M={class:`config w-[320px] flex-none h-full overflow-y-auto bg-[var(--app-sidebar-bg)] border-r border-[var(--app-border-subtle)]`},N={class:`result h-full flex-1 flex flex-col min-w-0 overflow-x-hidden bg-[var(--app-content-bg)]`};function P(t,n,r,a,s,u){let f=c(`search-icon`),m=c(`el-button`),h=c(`el-drawer`);return p(),o(`div`,j,[e(`div`,M,[l(t.$slots,`config`,{},void 0,!0)]),e(`div`,N,[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 F=S(A,[[`render`,P],[`__scopeId`,`data-v-fc67ba0b`]]),I=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})}}}}),L={class:`field`},R={class:`box`},z={class:`title font-bold`};function B(t,n,a,s,l,u){let d=c(`el-input`);return p(),o(`div`,L,[e(`div`,R,[e(`h2`,z,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 V=S(I,[[`render`,B],[`__scopeId`,`data-v-3582b195`]]),H=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`}}),U={class:`field`},W={class:`title font-bold`};function G(t,n,a,s,l,u){let f=c(`el-option`),m=c(`el-select`);return p(),o(`div`,U,[e(`h2`,W,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 K=S(H,[[`render`,G],[`__scopeId`,`data-v-2913fb62`]]),q=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`}}),J={class:`field`},Y={class:`title font-bold`};function X(t,n,a,s,l,u){let d=c(`el-input`);return p(),o(`div`,J,[e(`h2`,Y,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 Z=S(q,[[`render`,X],[`__scopeId`,`data-v-f0672cc6`]]),Q=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`}}),ne={class:`field`},re={class:`title font-bold`};function ie(t,n,a,s,l,u){let d=c(`el-input`);return p(),o(`div`,ne,[e(`h2`,re,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 ae=m({name:`SearchPanel`,components:{SearchIcon:x,ElButton:C,QueryInput:V,TypeSelector:K,CountryInput:Z,LanguageInput:S(Q,[[`render`,ie],[`__scopeId`,`data-v-dc1c94b7`]]),Consumption:O},emits:[`search`],computed:{config(){return this.$store.state.serp?.config},consumption(){return w(this.config,this.service?.cost)},service(){return this.$store.state.serp?.service},searching(){return this.$store.state.serp?.status?.search===E.Request}},methods:{onSearch(){this.$emit(`search`)}}}),oe={class:`flex flex-col h-full`},se={class:`flex-1 overflow-y-auto p-5`},ce={class:`flex flex-col items-center justify-center px-5 pb-5`};function le(t,a,s,l,u,f){let m=c(`query-input`),h=c(`type-selector`),g=c(`country-input`),_=c(`language-input`),v=c(`consumption`),y=c(`search-icon`),b=c(`el-button`);return p(),o(`div`,oe,[e(`div`,se,[i(m,{class:`mb-4`}),i(h,{class:`mb-4`}),i(g,{class:`mb-4`}),i(_,{class:`mb-4`})]),e(`div`,ce,[i(v,{value:t.consumption,service:t.service},null,8,[`value`,`service`]),i(b,{type:`primary`,class:`btn w-full`,round:``,loading:t.searching,onClick:t.onSearch},{default:d(()=>[i(y,{class:`mr-2`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),n(` `+r(t.$t(`serp.button.search`)),1)]),_:1},8,[`loading`,`onClick`])])])}var ue=S(ae,[[`render`,le]]),de=m({name:`KnowledgeGraph`,props:{data:{type:Object,required:!0}}}),fe={class:`knowledge-graph rounded-xl border border-[var(--el-border-color-lighter)] p-5 bg-[var(--el-fill-color-blank)]`},pe={class:`flex flex-row gap-4`},me=[`src`,`alt`],he={class:`flex-1 min-w-0`},ge={key:0,class:`text-xs text-[var(--el-text-color-disabled)] mb-1 uppercase tracking-wide`},_e={class:`text-xl font-bold mb-1.5`},ve={key:1,class:`text-sm text-[var(--el-text-color-regular)] mb-3 leading-relaxed`},ye=[`href`],be={key:2,class:`text-sm`},xe={class:`text-[var(--el-text-color-disabled)] flex-none font-medium`},Se={class:`text-[var(--el-text-color-regular)]`};function Ce(t,i,c,l,u,d){return p(),o(`div`,fe,[e(`div`,pe,[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,me)):a(``,!0),e(`div`,he,[t.data.type?(p(),o(`div`,ge,r(t.data.type),1)):a(``,!0),e(`h3`,_e,r(t.data.title),1),t.data.description?(p(),o(`p`,ve,[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,ye)):a(``,!0)])):a(``,!0),t.data.attributes&&Object.keys(t.data.attributes).length?(p(),o(`div`,be,[(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`,xe,r(n)+`:`,1),e(`span`,Se,r(t),1)]))),128))])):a(``,!0)])])])}var we=S(de,[[`render`,Ce]]),Te=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`}}}),Ee={class:`organic-result rounded-lg p-4 transition-all duration-200 hover:bg-[var(--el-fill-color-lighter)]`},De={key:0,class:`flex items-center gap-2 mb-1.5`},Oe=[`src`,`alt`],ke={class:`text-xs text-[var(--el-text-color-secondary)] truncate`},Ae={class:`text-xs text-[var(--el-text-color-disabled)]`},je=[`href`],Me={key:1,class:`text-xs text-[var(--el-text-color-disabled)] mt-1`},Ne={key:2,class:`text-sm text-[var(--el-text-color-regular)] mt-1.5 leading-relaxed line-clamp-3`},Pe={key:3,class:`mt-3 flex flex-wrap gap-x-4 gap-y-1`},Fe=[`href`];function Ie(t,n,i,c,l,u){return p(),o(`div`,Ee,[t.displayUrl?(p(),o(`div`,De,[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,Oe),e(`span`,ke,r(t.hostname),1),e(`span`,Ae,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,je),t.data.date?(p(),o(`div`,Me,r(t.data.date),1)):a(``,!0),t.data.snippet?(p(),o(`p`,Ne,r(t.data.snippet),1)):a(``,!0),t.data.sitelinks?.length?(p(),o(`div`,Pe,[(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,Fe))),128))])):a(``,!0)])}var Le=S(Te,[[`render`,Ie]]),Re=m({name:`ImageResults`,props:{data:{type:Array,required:!0}}}),ze={class:`rounded-xl border border-[var(--el-border-color-lighter)] p-5 bg-[var(--el-fill-color-blank)]`},Be={class:`text-base font-bold mb-3`},Ve={class:`grid grid-cols-2 sm:grid-cols-3 md:grid-cols-4 gap-3`},He=[`href`],Ue=[`src`,`alt`],We={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`},Ge={class:`text-xs text-white line-clamp-2`};function Ke(t,n,i,c,l,u){return p(),o(`div`,ze,[e(`h3`,Be,r(t.$t(`serp.name.imageResults`)),1),e(`div`,Ve,[(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,Ue)):a(``,!0),e(`div`,We,[e(`span`,Ge,r(t.title),1)])],8,He))),128))])])}var qe=S(Re,[[`render`,Ke]]),Je=m({name:`VideoResults`,props:{data:{type:Array,required:!0}}}),Ye={class:`text-base font-bold mb-3`},Xe={class:`space-y-4`},Ze=[`href`],Qe={class:`relative flex-shrink-0 w-40 h-24 rounded overflow-hidden bg-gray-100 dark:bg-gray-800`},$e=[`src`,`alt`],et={key:1,class:`absolute bottom-1 right-1 bg-black/80 text-white text-xs px-1 rounded`},tt={class:`flex-1 min-w-0`},nt={class:`text-blue-600 group-hover:underline font-medium line-clamp-2`},rt={class:`text-xs text-gray-400 mt-1`},it={key:0},at={key:1},ot={key:2},st={key:0,class:`text-sm text-gray-600 dark:text-gray-300 mt-1 line-clamp-2`};function ct(t,n,i,c,l,u){return p(),o(`div`,null,[e(`h3`,Ye,r(t.$t(`serp.name.videoResults`)),1),e(`div`,Xe,[(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`,Qe,[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,$e)):a(``,!0),t.duration?(p(),o(`div`,et,r(t.duration),1)):a(``,!0)]),e(`div`,tt,[e(`div`,nt,r(t.title),1),e(`div`,rt,[t.source?(p(),o(`span`,it,r(t.source),1)):a(``,!0),t.channel?(p(),o(`span`,at,` · `+r(t.channel),1)):a(``,!0),t.date?(p(),o(`span`,ot,` · `+r(t.date),1)):a(``,!0)]),t.snippet?(p(),o(`p`,st,r(t.snippet),1)):a(``,!0)])],8,Ze))),128))])])}var lt=S(Je,[[`render`,ct]]),ut=m({name:`NewsResults`,props:{data:{type:Array,required:!0}}}),dt={class:`text-base font-bold mb-3`},ft={class:`space-y-4`},pt=[`href`],mt={class:`flex-1 min-w-0`},ht={class:`text-blue-600 group-hover:underline font-medium line-clamp-2`},gt={class:`text-xs text-gray-400 mt-1`},_t={key:0},vt={key:1},yt={key:0,class:`text-sm text-gray-600 dark:text-gray-300 mt-1 line-clamp-2`},bt={key:0,class:`flex-shrink-0 w-24 h-24 rounded overflow-hidden bg-gray-100 dark:bg-gray-800`},xt=[`src`,`alt`];function St(t,n,i,c,l,u){return p(),o(`div`,null,[e(`h3`,dt,r(t.$t(`serp.name.newsResults`)),1),e(`div`,ft,[(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`,mt,[e(`div`,ht,r(t.title),1),e(`div`,gt,[t.source?(p(),o(`span`,_t,r(t.source),1)):a(``,!0),t.date?(p(),o(`span`,vt,` · `+r(t.date),1)):a(``,!0)]),t.snippet?(p(),o(`p`,yt,r(t.snippet),1)):a(``,!0)]),t.image_url?(p(),o(`div`,bt,[e(`img`,{src:t.image_url,alt:t.title,class:`w-full h-full object-cover`,loading:`lazy`},null,8,xt)])):a(``,!0)],8,pt))),128))])])}var Ct=S(ut,[[`render`,St]]),wt=m({name:`PeopleAlsoAsk`,components:{ElCollapse:v,ElCollapseItem:_},props:{data:{type:Array,required:!0}}}),Tt={class:`rounded-xl border border-[var(--el-border-color-lighter)] p-5 bg-[var(--el-fill-color-blank)]`},Et={class:`text-base font-bold mb-3`},Dt={key:0,class:`text-sm text-[var(--el-text-color-regular)] mb-2 leading-relaxed`},Ot=[`href`];function kt(t,n,l,m,h,g){let _=c(`el-collapse-item`),v=c(`el-collapse`);return p(),o(`div`,Tt,[e(`h3`,Et,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`,Dt,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,Ot)):a(``,!0)]),_:2},1032,[`title`]))),128))]),_:1})])}var At=S(wt,[[`render`,kt]]),jt=m({name:`RelatedSearches`,components:{SearchIcon:x},props:{data:{type:Array,required:!0}},emits:[`search`],methods:{onSearch(e){e&&this.$emit(`search`,e)}}}),Mt={class:`rounded-xl border border-[var(--el-border-color-lighter)] p-5 bg-[var(--el-fill-color-blank)]`},Nt={class:`text-base font-bold mb-3`},$={class:`flex flex-wrap gap-2`},Pt=[`onClick`];function Ft(t,a,l,u,d,m){let h=c(`search-icon`);return p(),o(`div`,Mt,[e(`h3`,Nt,r(t.$t(`serp.name.relatedSearches`)),1),e(`div`,$,[(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,Pt))),128))])])}var It=m({name:`ResultPanel`,components:{GlobeIcon:b,HelpIcon:k,KnowledgeGraph:we,OrganicResult:Le,ImageResults:qe,VideoResults:lt,NewsResults:Ct,PeopleAlsoAsk:At,RelatedSearches:S(jt,[[`render`,Ft]])},emits:[`related-search`],computed:{results(){return this.$store.state.serp?.results},searching(){return this.$store.state.serp?.status?.search===E.Request},noResults(){return this.$store.state.serp?.status?.search===E.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)}}}),Lt={class:`h-full overflow-y-auto p-6`},Rt={key:0,class:`max-w-3xl mx-auto py-8`},zt={key:1,class:`flex flex-col items-center justify-center py-24 text-[var(--el-text-color-disabled)]`},Bt={class:`text-base`},Vt={key:2,class:`max-w-3xl mx-auto`},Ht={key:1,class:`mb-6`},Ut={key:3,class:`flex flex-col items-center justify-center py-24 text-[var(--el-text-color-disabled)]`},Wt={class:`text-base`};function Gt(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`,Lt,[n.searching?(p(),o(`div`,Rt,[(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`,zt,[i(_,{class:`text-5xl mb-4 opacity-40`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),e(`p`,Bt,r(n.$t(`serp.message.noResults`)),1)])):n.results?(p(),o(`div`,Vt,[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`,Ht,[(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`,Ut,[i(T,{class:`text-5xl mb-4 opacity-30`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),e(`p`,Wt,r(n.$t(`serp.description.query`)),1)]))])}var Kt=m({name:`SerpIndex`,components:{Layout:F,SearchPanel:ue,ResultPanel:S(It,[[`render`,Gt]])},inject:[`initialized`],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(ee()&&this.$store.state.serp?.config?.query){D.info(this.$t(`serp.message.searching`));try{await this.$store.dispatch(`serp/search`),D.success(this.$t(`serp.message.searchSuccess`))}catch(e){(e?.response?.data)?.error?.code===`used_up`?D.error(this.$t(`serp.message.usedUp`)):D.error(this.$t(`serp.message.searchFailed`))}}},async onRelatedSearch(e){this.$store.commit(`serp/setConfig`,{...this.$store.state.serp?.config,query:e}),await this.onSearch()}}});function qt(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 Jt=S(Kt,[[`render`,qt]]);export{Jt 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-B5xUToXJ.js";import{n as _,t as v}from"./collapse-FgaVspFq.js";import{t as y}from"./drawer-U5-wdIK9.js";import{t as b}from"./globe-DF8FNQwf.js";import{t as x}from"./search-9gVCtA_e.js";import"./constants-DmRAKvwo.js";import{E as S,Fi as C,Kt as w,Wi as T,ai as E,tn as ee,xi as D,yi as te}from"./index-SFwaJFVg.js";import{t as O}from"./Consumption-C5Dn3lp_.js";var k=te(`circle-question-mark`,[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`path`,{d:`M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3`,key:`1u773s`}],[`path`,{d:`M12 17h.01`,key:`p32p05`}]]),A=m({name:`LayoutSerp`,components:{SearchIcon:x,ElDrawer:y,ElButton:C},data(){return{drawer:!1}}}),j={class:`main flex flex-row flex-1`},M={class:`config w-[320px] flex-none h-full overflow-y-auto bg-[var(--app-sidebar-bg)] border-r border-[var(--app-border-subtle)]`},N={class:`result h-full flex-1 flex flex-col min-w-0 overflow-x-hidden bg-[var(--app-content-bg)]`};function P(t,n,r,a,s,u){let f=c(`search-icon`),m=c(`el-button`),h=c(`el-drawer`);return p(),o(`div`,j,[e(`div`,M,[l(t.$slots,`config`,{},void 0,!0)]),e(`div`,N,[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 F=S(A,[[`render`,P],[`__scopeId`,`data-v-fc67ba0b`]]),I=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})}}}}),L={class:`field`},R={class:`box`},z={class:`title font-bold`};function B(t,n,a,s,l,u){let d=c(`el-input`);return p(),o(`div`,L,[e(`div`,R,[e(`h2`,z,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 V=S(I,[[`render`,B],[`__scopeId`,`data-v-3582b195`]]),H=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`}}),U={class:`field`},W={class:`title font-bold`};function G(t,n,a,s,l,u){let f=c(`el-option`),m=c(`el-select`);return p(),o(`div`,U,[e(`h2`,W,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 K=S(H,[[`render`,G],[`__scopeId`,`data-v-2913fb62`]]),q=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`}}),J={class:`field`},Y={class:`title font-bold`};function X(t,n,a,s,l,u){let d=c(`el-input`);return p(),o(`div`,J,[e(`h2`,Y,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 Z=S(q,[[`render`,X],[`__scopeId`,`data-v-f0672cc6`]]),Q=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`}}),ne={class:`field`},re={class:`title font-bold`};function ie(t,n,a,s,l,u){let d=c(`el-input`);return p(),o(`div`,ne,[e(`h2`,re,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 ae=m({name:`SearchPanel`,components:{SearchIcon:x,ElButton:C,QueryInput:V,TypeSelector:K,CountryInput:Z,LanguageInput:S(Q,[[`render`,ie],[`__scopeId`,`data-v-dc1c94b7`]]),Consumption:O},emits:[`search`],computed:{config(){return this.$store.state.serp?.config},consumption(){return w(this.config,this.service?.cost)},service(){return this.$store.state.serp?.service},searching(){return this.$store.state.serp?.status?.search===E.Request}},methods:{onSearch(){this.$emit(`search`)}}}),oe={class:`flex flex-col h-full`},se={class:`flex-1 overflow-y-auto p-5`},ce={class:`flex flex-col items-center justify-center px-5 pb-5`};function le(t,a,s,l,u,f){let m=c(`query-input`),h=c(`type-selector`),g=c(`country-input`),_=c(`language-input`),v=c(`consumption`),y=c(`search-icon`),b=c(`el-button`);return p(),o(`div`,oe,[e(`div`,se,[i(m,{class:`mb-4`}),i(h,{class:`mb-4`}),i(g,{class:`mb-4`}),i(_,{class:`mb-4`})]),e(`div`,ce,[i(v,{value:t.consumption,service:t.service},null,8,[`value`,`service`]),i(b,{type:`primary`,class:`btn w-full`,round:``,loading:t.searching,onClick:t.onSearch},{default:d(()=>[i(y,{class:`mr-2`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),n(` `+r(t.$t(`serp.button.search`)),1)]),_:1},8,[`loading`,`onClick`])])])}var ue=S(ae,[[`render`,le]]),de=m({name:`KnowledgeGraph`,props:{data:{type:Object,required:!0}}}),fe={class:`knowledge-graph rounded-xl border border-[var(--el-border-color-lighter)] p-5 bg-[var(--el-fill-color-blank)]`},pe={class:`flex flex-row gap-4`},me=[`src`,`alt`],he={class:`flex-1 min-w-0`},ge={key:0,class:`text-xs text-[var(--el-text-color-disabled)] mb-1 uppercase tracking-wide`},_e={class:`text-xl font-bold mb-1.5`},ve={key:1,class:`text-sm text-[var(--el-text-color-regular)] mb-3 leading-relaxed`},ye=[`href`],be={key:2,class:`text-sm`},xe={class:`text-[var(--el-text-color-disabled)] flex-none font-medium`},Se={class:`text-[var(--el-text-color-regular)]`};function Ce(t,i,c,l,u,d){return p(),o(`div`,fe,[e(`div`,pe,[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,me)):a(``,!0),e(`div`,he,[t.data.type?(p(),o(`div`,ge,r(t.data.type),1)):a(``,!0),e(`h3`,_e,r(t.data.title),1),t.data.description?(p(),o(`p`,ve,[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,ye)):a(``,!0)])):a(``,!0),t.data.attributes&&Object.keys(t.data.attributes).length?(p(),o(`div`,be,[(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`,xe,r(n)+`:`,1),e(`span`,Se,r(t),1)]))),128))])):a(``,!0)])])])}var we=S(de,[[`render`,Ce]]),Te=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`}}}),Ee={class:`organic-result rounded-lg p-4 transition-all duration-200 hover:bg-[var(--el-fill-color-lighter)]`},De={key:0,class:`flex items-center gap-2 mb-1.5`},Oe=[`src`,`alt`],ke={class:`text-xs text-[var(--el-text-color-secondary)] truncate`},Ae={class:`text-xs text-[var(--el-text-color-disabled)]`},je=[`href`],Me={key:1,class:`text-xs text-[var(--el-text-color-disabled)] mt-1`},Ne={key:2,class:`text-sm text-[var(--el-text-color-regular)] mt-1.5 leading-relaxed line-clamp-3`},Pe={key:3,class:`mt-3 flex flex-wrap gap-x-4 gap-y-1`},Fe=[`href`];function Ie(t,n,i,c,l,u){return p(),o(`div`,Ee,[t.displayUrl?(p(),o(`div`,De,[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,Oe),e(`span`,ke,r(t.hostname),1),e(`span`,Ae,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,je),t.data.date?(p(),o(`div`,Me,r(t.data.date),1)):a(``,!0),t.data.snippet?(p(),o(`p`,Ne,r(t.data.snippet),1)):a(``,!0),t.data.sitelinks?.length?(p(),o(`div`,Pe,[(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,Fe))),128))])):a(``,!0)])}var Le=S(Te,[[`render`,Ie]]),Re=m({name:`ImageResults`,props:{data:{type:Array,required:!0}}}),ze={class:`rounded-xl border border-[var(--el-border-color-lighter)] p-5 bg-[var(--el-fill-color-blank)]`},Be={class:`text-base font-bold mb-3`},Ve={class:`grid grid-cols-2 sm:grid-cols-3 md:grid-cols-4 gap-3`},He=[`href`],Ue=[`src`,`alt`],We={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`},Ge={class:`text-xs text-white line-clamp-2`};function Ke(t,n,i,c,l,u){return p(),o(`div`,ze,[e(`h3`,Be,r(t.$t(`serp.name.imageResults`)),1),e(`div`,Ve,[(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,Ue)):a(``,!0),e(`div`,We,[e(`span`,Ge,r(t.title),1)])],8,He))),128))])])}var qe=S(Re,[[`render`,Ke]]),Je=m({name:`VideoResults`,props:{data:{type:Array,required:!0}}}),Ye={class:`text-base font-bold mb-3`},Xe={class:`space-y-4`},Ze=[`href`],Qe={class:`relative flex-shrink-0 w-40 h-24 rounded overflow-hidden bg-gray-100 dark:bg-gray-800`},$e=[`src`,`alt`],et={key:1,class:`absolute bottom-1 right-1 bg-black/80 text-white text-xs px-1 rounded`},tt={class:`flex-1 min-w-0`},nt={class:`text-blue-600 group-hover:underline font-medium line-clamp-2`},rt={class:`text-xs text-gray-400 mt-1`},it={key:0},at={key:1},ot={key:2},st={key:0,class:`text-sm text-gray-600 dark:text-gray-300 mt-1 line-clamp-2`};function ct(t,n,i,c,l,u){return p(),o(`div`,null,[e(`h3`,Ye,r(t.$t(`serp.name.videoResults`)),1),e(`div`,Xe,[(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`,Qe,[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,$e)):a(``,!0),t.duration?(p(),o(`div`,et,r(t.duration),1)):a(``,!0)]),e(`div`,tt,[e(`div`,nt,r(t.title),1),e(`div`,rt,[t.source?(p(),o(`span`,it,r(t.source),1)):a(``,!0),t.channel?(p(),o(`span`,at,` · `+r(t.channel),1)):a(``,!0),t.date?(p(),o(`span`,ot,` · `+r(t.date),1)):a(``,!0)]),t.snippet?(p(),o(`p`,st,r(t.snippet),1)):a(``,!0)])],8,Ze))),128))])])}var lt=S(Je,[[`render`,ct]]),ut=m({name:`NewsResults`,props:{data:{type:Array,required:!0}}}),dt={class:`text-base font-bold mb-3`},ft={class:`space-y-4`},pt=[`href`],mt={class:`flex-1 min-w-0`},ht={class:`text-blue-600 group-hover:underline font-medium line-clamp-2`},gt={class:`text-xs text-gray-400 mt-1`},_t={key:0},vt={key:1},yt={key:0,class:`text-sm text-gray-600 dark:text-gray-300 mt-1 line-clamp-2`},bt={key:0,class:`flex-shrink-0 w-24 h-24 rounded overflow-hidden bg-gray-100 dark:bg-gray-800`},xt=[`src`,`alt`];function St(t,n,i,c,l,u){return p(),o(`div`,null,[e(`h3`,dt,r(t.$t(`serp.name.newsResults`)),1),e(`div`,ft,[(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`,mt,[e(`div`,ht,r(t.title),1),e(`div`,gt,[t.source?(p(),o(`span`,_t,r(t.source),1)):a(``,!0),t.date?(p(),o(`span`,vt,` · `+r(t.date),1)):a(``,!0)]),t.snippet?(p(),o(`p`,yt,r(t.snippet),1)):a(``,!0)]),t.image_url?(p(),o(`div`,bt,[e(`img`,{src:t.image_url,alt:t.title,class:`w-full h-full object-cover`,loading:`lazy`},null,8,xt)])):a(``,!0)],8,pt))),128))])])}var Ct=S(ut,[[`render`,St]]),wt=m({name:`PeopleAlsoAsk`,components:{ElCollapse:v,ElCollapseItem:_},props:{data:{type:Array,required:!0}}}),Tt={class:`rounded-xl border border-[var(--el-border-color-lighter)] p-5 bg-[var(--el-fill-color-blank)]`},Et={class:`text-base font-bold mb-3`},Dt={key:0,class:`text-sm text-[var(--el-text-color-regular)] mb-2 leading-relaxed`},Ot=[`href`];function kt(t,n,l,m,h,g){let _=c(`el-collapse-item`),v=c(`el-collapse`);return p(),o(`div`,Tt,[e(`h3`,Et,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`,Dt,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,Ot)):a(``,!0)]),_:2},1032,[`title`]))),128))]),_:1})])}var At=S(wt,[[`render`,kt]]),jt=m({name:`RelatedSearches`,components:{SearchIcon:x},props:{data:{type:Array,required:!0}},emits:[`search`],methods:{onSearch(e){e&&this.$emit(`search`,e)}}}),Mt={class:`rounded-xl border border-[var(--el-border-color-lighter)] p-5 bg-[var(--el-fill-color-blank)]`},Nt={class:`text-base font-bold mb-3`},$={class:`flex flex-wrap gap-2`},Pt=[`onClick`];function Ft(t,a,l,u,d,m){let h=c(`search-icon`);return p(),o(`div`,Mt,[e(`h3`,Nt,r(t.$t(`serp.name.relatedSearches`)),1),e(`div`,$,[(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,Pt))),128))])])}var It=m({name:`ResultPanel`,components:{GlobeIcon:b,HelpIcon:k,KnowledgeGraph:we,OrganicResult:Le,ImageResults:qe,VideoResults:lt,NewsResults:Ct,PeopleAlsoAsk:At,RelatedSearches:S(jt,[[`render`,Ft]])},emits:[`related-search`],computed:{results(){return this.$store.state.serp?.results},searching(){return this.$store.state.serp?.status?.search===E.Request},noResults(){return this.$store.state.serp?.status?.search===E.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)}}}),Lt={class:`h-full overflow-y-auto p-6`},Rt={key:0,class:`max-w-3xl mx-auto py-8`},zt={key:1,class:`flex flex-col items-center justify-center py-24 text-[var(--el-text-color-disabled)]`},Bt={class:`text-base`},Vt={key:2,class:`max-w-3xl mx-auto`},Ht={key:1,class:`mb-6`},Ut={key:3,class:`flex flex-col items-center justify-center py-24 text-[var(--el-text-color-disabled)]`},Wt={class:`text-base`};function Gt(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`,Lt,[n.searching?(p(),o(`div`,Rt,[(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`,zt,[i(_,{class:`text-5xl mb-4 opacity-40`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),e(`p`,Bt,r(n.$t(`serp.message.noResults`)),1)])):n.results?(p(),o(`div`,Vt,[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`,Ht,[(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`,Ut,[i(T,{class:`text-5xl mb-4 opacity-30`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),e(`p`,Wt,r(n.$t(`serp.description.query`)),1)]))])}var Kt=m({name:`SerpIndex`,components:{Layout:F,SearchPanel:ue,ResultPanel:S(It,[[`render`,Gt]])},inject:[`initialized`],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(ee()&&this.$store.state.serp?.config?.query){D.info(this.$t(`serp.message.searching`));try{await this.$store.dispatch(`serp/search`),D.success(this.$t(`serp.message.searchSuccess`))}catch(e){(e?.response?.data)?.error?.code===`used_up`?D.error(this.$t(`serp.message.usedUp`)):D.error(this.$t(`serp.message.searchFailed`))}}},async onRelatedSearch(e){this.$store.commit(`serp/setConfig`,{...this.$store.state.serp?.config,query:e}),await this.onSearch()}}});function qt(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 Jt=S(Kt,[[`render`,qt]]);export{Jt 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{n as v,r as y,t as b}from"./select-C1DRhWnC.js";import{t as x}from"./upload-V9clb5xP.js";import{t as S}from"./tooltip-BUeFXdRV.js";import{t as C}from"./alert-CnaTI5Gp.js";import{t as w}from"./drawer-WJpD3B-h.js";import{t as T}from"./input-number-Cu-ypyye.js";import{t as E}from"./switch-D8nKhRhq.js";import{n as D}from"./taskDrawerMixin-BYiVGM2q.js";import{t as O}from"./box-LABsHSHx.js";import{t as k}from"./clock-CuqZkl7_.js";import{r as A,t as j}from"./PromptTextarea-nhjTRPsO.js";import{t as M}from"./image-Csdrf1Q9.js";import{t as N}from"./info-beFALQcg.js";import{t as P}from"./trash-2-BAYs4oSn.js";import{t as F}from"./triangle-alert-9bHZRjQO.js";import{t as I}from"./upload-wp-jhKLk.js";import{t as L}from"./wand-sparkles-CWJ7w1RN.js";import{t as R}from"./zap-DspE4dgC.js";import{An as z,Fn as B,Hn as ee,In as te,Ln as ne,Mn as re,Nn as ie,Rn as ae,Un as oe,Vn as V,jn as H,zn as U}from"./constants-B0QZudfQ.js";import{Bt as W,Dn as G,E as K,Fi as q,Ht as se,Kt as ce,Ut as le,Vt as ue,Wt as de,ai as J,bi as fe,ci as pe,tn as me,xi as Y,yr as he}from"./index-CilVeL08.js";import{t as ge}from"./CopyToClipboard-CwUIV3sA.js";import{t as X}from"./ImagePreview-Cod5m2VA.js";import{t as _e}from"./Consumption-D14USkw2.js";import{a as Z,n as ve,r as ye,t as be}from"./pagination-hGuMVaBt.js";import{t as xe}from"./ApiCodeButton-Bq1o8E9q.js";import{t as Se}from"./BotPlaceholder-CWM-26bc.js";import{t as Ce}from"./ImageWrapper-CId6JKHn.js";var we=_({name:`LayoutNanobanana`,components:{MagicIcon:L,ElDrawer:w,ElButton:q},mixins:[D]}),Te={class:`main flex flex-row flex-1`},Ee={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)]`},De={class:`result h-full p-6 flex-1 flex flex-col min-w-0 overflow-x-hidden bg-[var(--app-content-bg)]`};function Oe(t,n,r,i,o,c){let f=l(`magic-icon`),m=l(`el-button`),_=l(`el-drawer`);return h(),s(`div`,Te,[e(`div`,Ee,[d(t.$slots,`config`,{},void 0,!0)]),e(`div`,De,[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 ke=K(we,[[`render`,Oe],[`__scopeId`,`data-v-fa2172a6`]]),Ae=_({name:`PromptInput`,components:{PromptTextarea:j},computed:{prompt:{get(){return this.$store.state.openaiimage?.config?.prompt},set(e){this.$store.commit(`openaiimage/setConfig`,{...this.$store.state.openaiimage?.config,prompt:e})}}},mounted(){this.prompt||=``}});function je(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(`openaiimage.name.prompt`),info:e.$t(`openaiimage.description.prompt`),placeholder:e.$t(`openaiimage.placeholder.prompt`)},null,8,[`modelValue`,`title`,`info`,`placeholder`])}var Me=K(Ae,[[`render`,je]]),Ne=_({name:`ImageUrlsInput`,components:{UploadIcon:I,ElUpload:x,ElButton:q,InfoIcon:Z,ImagePreview:X},mixins:[de,le,ue],data(){return{fileList:[],uploadUrl:pe()+`/api/v1/files/`,suppressWatch:!1}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},urls(){return this.fileList.map(e=>e?.response?.file_url).filter(e=>!!e)},value(){return this.$store.state.openaiimage?.config?.image_urls}},watch:{value:{immediate:!0,handler(e){if(this.suppressWatch)return;if(!e||e.length===0){let e=(this.fileList||[]).filter(e=>!e?.response?.file_url);this.fileList=e.length?e:[];return}let t=[];e.forEach(e=>{let n=this.fileList.find(t=>t?.response?.file_url===e||t?.url===e);n?t.push(n):t.push({name:e.split(`/`).pop()||e,url:e,status:`success`,percentage:100,response:{file_url:e}})}),(this.fileList||[]).filter(e=>!e?.response?.file_url).forEach(e=>{t.some(t=>t===e||t?.url===e?.url||t?.response?.file_url===e?.response?.file_url)||t.push(e)}),this.fileList=t}}},mounted(){},methods:{onChange(e){if(!e?.url&&e?.raw)try{e.url=URL.createObjectURL(e.raw)}catch{}},onRemove(e){if(e?.url&&typeof e.url==`string`&&e.url.startsWith(`blob:`))try{URL.revokeObjectURL(e.url)}catch{}this.onSetImageUrls()},onExceed(){Y.warning(this.$t(`openaiimage.message.uploadImageExceed`))},onError(){Y.error(this.$t(`openaiimage.message.uploadImageError`))},onSetImageUrls(){let e=this.urls;this.suppressWatch=!0,this.$store.commit(`openaiimage/setConfig`,{...this.$store.state.openaiimage?.config,image_urls:e}),this.$nextTick(()=>{this.suppressWatch=!1})},async onSuccess(e,t){e?.file_url&&(t.url=e.file_url,t.response=e),this.onSetImageUrls()},onRemovePreview(e,t){if(this.fileList.splice(e,1),t?.url&&typeof t.url==`string`&&t.url.startsWith(`blob:`))try{URL.revokeObjectURL(t.url)}catch{}this.onSetImageUrls()}}}),Pe={class:`field flex min-h-8 w-full items-center justify-between gap-3`},Fe={class:`flex min-w-0 items-center`},Ie={class:`title m-0 text-[14px] font-bold`},Le={class:`file-list flex flex-wrap gap-[10px]`};function Re(t,n,o,u,d,g){let _=l(`info-icon`),v=l(`upload-icon`),y=l(`el-button`),b=l(`el-upload`),x=l(`image-preview`);return h(),s(`div`,null,[e(`div`,Pe,[e(`div`,Fe,[e(`h2`,Ie,i(t.$t(`openaiimage.name.imageUrls`)),1),a(_,{content:t.$t(`openaiimage.description.imageUrls`)},null,8,[`content`])]),a(b,{ref:`uploader`,"file-list":t.fileList,"onUpdate:fileList":n[0]||=e=>t.fileList=e,accept:`.png,.jpg,.jpeg,.gif,.bmp,.webp`,name:`file`,class:`value shrink-0`,limit:5,multiple:!0,"show-file-list":!1,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(`openaiimage.button.uploadImageUrls`)),1)]),_:1})]),_:1},8,[`file-list`,`action`,`on-exceed`,`on-error`,`on-success`,`on-change`,`on-remove`,`headers`])]),e(`div`,Le,[(h(!0),s(c,null,m(t.fileList,(e,n)=>(h(),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 ze=K(Ne,[[`render`,Re]]),Be=_({name:`OpenAIImageModelSelector`,components:{ElSelect:y,ElOption:b,InfoIcon:Z},data(){return{options:[{value:B,label:this.$t(`openaiimage.model.gptImage1`)},{value:te,label:this.$t(`openaiimage.model.gptImage15`)},{value:ne,label:this.$t(`openaiimage.model.gptImage2`)},{value:ae,label:this.$t(`openaiimage.model.gptImage2Official`)}]}},computed:{value:{get(){return this.$store.state.openaiimage?.config?.model},set(e){this.$store.commit(`openaiimage/setConfig`,{...this.$store.state.openaiimage?.config,model:e})}},modelDescription(){return this.$t(`openaiimage.description.model`)}},mounted(){this.value||=ie}}),Ve={class:`field`},He={class:`label`},Ue={class:`box`},We={class:`title font-bold`};function Ge(t,n,r,o,u,d){let g=l(`info-icon`),_=l(`el-option`),v=l(`el-select`);return h(),s(`div`,Ve,[e(`div`,He,[e(`div`,Ue,[e(`h2`,We,i(t.$t(`openaiimage.name.model`)),1),a(g,{content:t.modelDescription,class:`info`},null,8,[`content`])])]),a(v,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,class:`value`,placeholder:t.$t(`openaiimage.placeholder.select`)},{default:p(()=>[(h(!0),s(c,null,m(t.options,e=>(h(),f(_,{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`])])}var Ke=K(Be,[[`render`,Ge],[`__scopeId`,`data-v-a42acad4`]]);function Q(e){if(!e)return;let t=/^(\d+)x(\d+)$/.exec(e);if(t)return{w:Number(t[1]),h:Number(t[2])}}var qe=_({name:`OpenAIImageSizeSelector`,components:{ElSelect:y,ElOption:b,ElOptionGroup:v,ElSwitch:E,ElInputNumber:T,InfoIcon:Z},data(){return{customMode:!1,customWidth:1024,customHeight:1024}},computed:{model(){return this.$store.state.openaiimage?.config?.model||`gpt-image-2`},storedSize(){return this.$store.state.openaiimage?.config?.size},emptySizeValue(){return``},customSupported(){return re.includes(this.model)},presets(){return U[this.model]??U[`gpt-image-2`]??[]},presetGroups(){return this.model===`gpt-image-2`||this.model===`gpt-image-2:official`?[{label:this.$t(`openaiimage.sizeGroup.standard1k`),options:V},{label:this.$t(`openaiimage.sizeGroup.preset2k`),options:ee},{label:this.$t(`openaiimage.sizeGroup.preset4k`),options:oe}]:[{label:this.$t(`openaiimage.sizeGroup.standard1k`),options:this.presets}]},useCustom:{get(){return this.customSupported&&this.customMode},set(e){if(!(e&&!this.customSupported))if(this.customMode=e,e){if(this.customError)return;this.commitSize(`${this.customWidth}x${this.customHeight}`)}else this.commitSize()}},presetValue:{get(){let e=this.storedSize;return e&&this.presets.includes(e)?e:this.emptySizeValue},set(e){this.customMode=!1,this.commitSize(e||void 0)}},multiple(){return 16},minSide(){return 256},maxSide(){return z},customError(){let e=this.customWidth,t=this.customHeight;return!Number.isFinite(e)||!Number.isFinite(t)||e<=0||t<=0?this.$t(`openaiimage.error.customSizePositive`):e%this.multiple!==0||t%this.multiple!==0?this.$t(`openaiimage.error.customSizeMultiple`,{multiple:this.multiple}):e<this.minSide||t<this.minSide?this.$t(`openaiimage.error.customSizeMin`,{min:this.minSide}):Math.max(e,t)>this.maxSide?this.$t(`openaiimage.error.customSizeMax`,{max:this.maxSide}):e*t>8294400?this.$t(`openaiimage.error.customSizePixels`,{pixels:H.toLocaleString()}):``}},watch:{model:{immediate:!1,handler(){this.customSupported||(this.customMode=!1);let e=this.storedSize;if(!e||this.presets.includes(e))return;let t=Q(e);t&&this.customSupported&&(this.customMode=!0,this.customWidth=t.w,this.customHeight=t.h,!this.customError)||this.commitSize()}},storedSize(e){if(!e){this.customMode=!1;return}if(this.presets.includes(e)){this.customMode=!1;return}let t=Q(e);t&&this.customSupported&&(this.customMode=!0,this.customWidth!==t.w&&(this.customWidth=t.w),this.customHeight!==t.h&&(this.customHeight=t.h))},customWidth(){this.syncCustomToStore()},customHeight(){this.syncCustomToStore()}},mounted(){let e=this.storedSize,t=Q(e);e&&t&&this.customSupported&&!this.presets.includes(e)&&(this.customMode=!0,this.customWidth=t.w,this.customHeight=t.h)},methods:{commitSize(e){let t={...this.$store.state.openaiimage?.config};e?t.size=e:delete t.size,this.$store.commit(`openaiimage/setConfig`,t)},syncCustomToStore(){this.useCustom&&(this.customError||this.commitSize(`${this.customWidth}x${this.customHeight}`))}}}),Je={class:`resolution`},Ye={class:`field`},Xe={class:`label`},Ze={class:`box`},Qe={class:`title font-bold`},$e={class:`field custom-toggle`},et={class:`label`},tt={class:`box`},nt={class:`title font-bold`},rt={key:0,class:`custom-inputs`},it={class:`row`},at={class:`row-label`},ot={class:`row`},st={class:`row-label`},ct={key:0,class:`error`};function lt(t,n,r,u,d,g){let _=l(`info-icon`),v=l(`el-option`),y=l(`el-option-group`),b=l(`el-select`),x=l(`el-switch`),S=l(`el-input-number`);return h(),s(`div`,Je,[e(`div`,Ye,[e(`div`,Xe,[e(`div`,Ze,[e(`h2`,Qe,i(t.$t(`openaiimage.name.size`)),1),a(_,{content:t.$t(`openaiimage.description.size`),class:`info`},null,8,[`content`])])]),a(b,{modelValue:t.presetValue,"onUpdate:modelValue":n[0]||=e=>t.presetValue=e,class:`value`,placeholder:t.$t(`openaiimage.placeholder.select`),disabled:t.useCustom},{default:p(()=>[a(v,{label:t.$t(`suno.gender.auto`),value:t.emptySizeValue},null,8,[`label`,`value`]),(h(!0),s(c,null,m(t.presetGroups,e=>(h(),f(y,{key:e.label,label:e.label},{default:p(()=>[(h(!0),s(c,null,m(e.options,e=>(h(),f(v,{key:e,label:e,value:e},null,8,[`label`,`value`]))),128))]),_:2},1032,[`label`]))),128))]),_:1},8,[`modelValue`,`placeholder`,`disabled`])]),t.customSupported?(h(),s(c,{key:0},[e(`div`,$e,[e(`div`,et,[e(`div`,tt,[e(`h2`,nt,i(t.$t(`openaiimage.name.customSize`)),1),a(_,{content:t.$t(`openaiimage.description.customSize`),class:`info`},null,8,[`content`])])]),a(x,{modelValue:t.useCustom,"onUpdate:modelValue":n[1]||=e=>t.useCustom=e,class:`value-switch`},null,8,[`modelValue`])]),t.useCustom?(h(),s(`div`,rt,[e(`div`,it,[e(`span`,at,i(t.$t(`openaiimage.name.width`)),1),a(S,{modelValue:t.customWidth,"onUpdate:modelValue":n[2]||=e=>t.customWidth=e,class:`row-input`,min:t.minSide,max:t.maxSide,step:t.multiple,"step-strictly":!0,"controls-position":`right`},null,8,[`modelValue`,`min`,`max`,`step`])]),e(`div`,ot,[e(`span`,st,i(t.$t(`openaiimage.name.height`)),1),a(S,{modelValue:t.customHeight,"onUpdate:modelValue":n[3]||=e=>t.customHeight=e,class:`row-input`,min:t.minSide,max:t.maxSide,step:t.multiple,"step-strictly":!0,"controls-position":`right`},null,8,[`modelValue`,`min`,`max`,`step`])]),t.customError?(h(),s(`div`,ct,i(t.customError),1)):o(``,!0)])):o(``,!0)],64)):o(``,!0)])}var ut=_({name:`ConfigPanel`,components:{MagicIcon:L,ElButton:q,PromptInput:Me,Consumption:_e,ImageUrlsInput:ze,ModelSelector:Ke,ResolutionSelector:K(qe,[[`render`,lt],[`__scopeId`,`data-v-dfce4922`]])},emits:[`generate`],computed:{config(){return this.$store.state.openaiimage?.config},consumption(){return ce({...this.config||{}},this.service?.cost)},service(){return this.$store.state.openaiimage?.service}},methods:{onGenerate(){this.$emit(`generate`)}}}),dt={class:`flex flex-col h-full`},ft={class:`flex-1 overflow-y-auto p-5`},pt={class:`flex flex-col items-center justify-center px-5 pb-5`};function mt(t,n,o,c,u,d){let f=l(`model-selector`),m=l(`resolution-selector`),g=l(`prompt-input`),_=l(`image-urls-input`),v=l(`consumption`),y=l(`magic-icon`),b=l(`el-button`);return h(),s(`div`,dt,[e(`div`,ft,[a(f,{class:`mb-4`}),a(m,{class:`mb-4`}),a(g,{class:`mb-4`}),a(_,{class:`mb-4`})]),e(`div`,pt,[a(v,{value:t.consumption,service:t.service},null,8,[`value`,`service`]),a(b,{type:`primary`,class:`btn w-full`,round:``,onClick:t.onGenerate},{default:p(()=>[a(y,{class:`mr-2`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`openaiimage.button.generate`)),1)]),_:1},8,[`onClick`])])])}var ht=K(ut,[[`render`,mt]]),gt=_({name:`TaskPreview`,components:{ApplicationIcon:O,ChannelIcon:A,DeleteIcon:P,ImageIcon:M,InfoIcon:N,LightningIcon:R,MagicIcon:L,TimeIcon:k,WarningIcon:F,CopyToClipboard:ge,ElAlert:C,ImageWrapper:Ce,ElButton:q,ElTooltip:S,ImagePreview:X,ApiCodeButton:xe},props:{modelValue:{type:Object,required:!0}},computed:{isEditRequest(){let e=this.modelValue?.request;return this.modelValue?.type===`images_edits`||e?.action===`edit`||this.referenceImages.length>0},showTaskType(){return!!(this.modelValue?.request?.action||this.modelValue?.type||this.referenceImages.length>0)},taskTypeLabel(){return this.isEditRequest?this.$t(`openaiimage.name.edits`):this.$t(`openaiimage.name.generate`)},openaiimagePath(){return this.isEditRequest?`/openai/images/edits`:`/openai/images/generations`},openaiimageCodeBody(){let e=this.modelValue?.request;if(!e)return;let t={...e};if(delete t.action,delete t.callback_url,this.isEditRequest){delete t.image_urls,delete t.image;let e=this.referenceImages;e.length===1?t.image=e[0]:e.length>1&&(t.image=e)}else delete t.image_urls,delete t.image;return t},images(){let e=[];return Array.isArray(this.modelValue?.response?.data)&&this.modelValue?.response?.data?.forEach(t=>{let n=t;if(n?.image_url||n?.url){e.push(n);return}n?.b64_json&&e.push({...n,url:`data:image/png;base64,${n.b64_json}`})}),e},referenceImages(){let e=this.modelValue?.request;if(!e)return[];let t=Array.isArray(e.image_urls)?e.image_urls:[];if(t.length>0)return t.filter(e=>typeof e==`string`&&e.length>0);let n=e.image;return Array.isArray(n)?n.filter(e=>typeof e==`string`&&e.length>0):typeof n==`string`&&n.length>0?[n]:Array.isArray(e.images)?e.images.map(e=>{if(typeof e==`string`)return e;if(e&&typeof e==`object`)return e.image_url}).filter(e=>typeof e==`string`&&e.length>0):[]}},methods:{onEdit(e){if(!e)return;console.debug(`Edit image:`,e);let t={...this.$store.state.openaiimage?.config||{}};t.image_urls=[e],this.$store.commit(`openaiimage/setConfig`,t)},async onDelete(){let e=this.modelValue?.id;if(e){try{await fe.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(`openaiimage/deleteTask`,{id:e}),Y.success(this.$t(`common.message.deleteTaskSuccess`))}catch{Y.error(this.$t(`common.message.deleteTaskFailed`))}}}}}),_t={class:`preview`},vt={class:`left`},yt={class:`main`},bt={class:`bot`},xt={class:`datetime`},St=[`aria-label`],Ct={class:`info`},wt={key:0,class:`flex justify-start items-center gap-2 mt-2 w-full overflow-x-auto`},Tt={key:1,class:`prompt mt-2`},Et={key:0},Dt={key:0,class:n({content:!0,failed:!0})},Ot={class:`flex justify-start items-center gap-4 w-full overflow-x-auto`},kt={class:n({operations:!0,"mt-2":!0,"mb-2":!0})},At={key:0,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},jt={key:1,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Mt={key:2,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Nt={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Pt={key:3,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Ft={key:4,class:`text-[var(--el-text-color-regular)] text-xs mb-0`},It={key:1,class:n({content:!0})},Lt={key:0,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Rt={key:1,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},zt={key:2,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Bt={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},$={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Vt={key:3,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Ht={key:4,class:`text-[var(--el-text-color-regular)] text-xs mb-0`},Ut={key:2,class:n({content:!0})},Wt={key:0,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Gt={key:1,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Kt={key:2,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},qt={class:`text-[var(--el-text-color-regular)] text-xs mb-2`};function Jt(n,u,d,g,_,v){let y=l(`capability-presentation`),b=l(`delete-icon`),x=l(`el-tooltip`),S=l(`image-preview`),C=l(`image-wrapper`),w=l(`el-button`),T=l(`api-code-button`),E=l(`application-icon`),D=l(`image-icon`),O=l(`lightning-icon`),k=l(`magic-icon`),A=l(`copy-to-clipboard`),j=l(`time-icon`),M=l(`channel-icon`),N=l(`el-alert`),P=l(`warning-icon`),F=l(`info-icon`);return h(),s(`div`,_t,[e(`div`,vt,[a(y,{capability:`openaiimage`,part:`avatar`,class:`avatar`})]),e(`div`,yt,[e(`div`,bt,[a(y,{capability:`openaiimage`,part:`name`}),e(`span`,xt,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,St)):o(``,!0)]),_:1},8,[`content`])]),e(`div`,Ct,[n.referenceImages.length>0?(h(),s(`div`,wt,[(h(!0),s(c,null,m(n.referenceImages,(e,t)=>(h(),f(S,{key:t,url:e,name:`image-${t+1}`,closable:!1},null,8,[`url`,`name`]))),128))])):o(``,!0),n.modelValue?.request?.prompt?(h(),s(`p`,Tt,[r(i(n.modelValue?.request?.prompt)+` `,1),n.modelValue?.response?o(``,!0):(h(),s(`span`,Et,` - (`+i(n.$t(`openaiimage.status.pending`))+`) `,1))])):o(``,!0)]),n.modelValue?.response?.success===!0?(h(),s(`div`,Dt,[e(`div`,Ot,[(h(!0),s(c,null,m(n.images,(e,t)=>(h(),f(C,{key:t,src:e?.image_url||e?.url||``,"raw-src":e?.image_url||e?.url||``},null,8,[`src`,`raw-src`]))),128))]),e(`div`,kt,[a(x,{class:`box-item`,effect:`dark`,content:n.$t(`common.button.edit`),placement:`top-start`},{default:p(()=>[a(w,{type:`info`,size:`small`,class:`btn-action`,onClick:u[1]||=t(e=>n.onEdit(n.images?.[0]?.image_url||n.images?.[0]?.url),[`stop`])},{default:p(()=>[r(i(n.$t(`common.button.edit`)),1)]),_:1})]),_:1},8,[`content`]),a(T,{path:n.openaiimagePath,body:n.openaiimageCodeBody},null,8,[`path`,`body`])]),a(N,{closable:!1,class:`mt-2 success`},{default:p(()=>[n.modelValue?.request?.model?(h(),s(`p`,At,[a(E,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`openaiimage.name.model`))+`: `+i(n.modelValue?.request?.model),1)])):o(``,!0),n.modelValue?.request?.size?(h(),s(`p`,jt,[a(D,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`openaiimage.name.size`))+`: `+i(n.modelValue?.request?.size),1)])):o(``,!0),n.showTaskType?(h(),s(`p`,Mt,[a(O,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`openaiimage.name.task`))+`: `+i(n.taskTypeLabel),1)])):o(``,!0),e(`p`,Nt,[a(k,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`openaiimage.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(A,{content:n.modelValue?.id,class:`btn-copy inline-block`},null,8,[`content`])]),n.modelValue?.elapsed?(h(),s(`p`,Pt,[a(j,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`openaiimage.name.elapsed`))+`: `+i(n.modelValue?.elapsed?.toFixed(2))+`s `,1)])):o(``,!0),n.modelValue?.response?.trace_id?(h(),s(`p`,Ft,[a(M,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`openaiimage.name.traceId`))+`: `+i(n.modelValue?.response?.trace_id)+` `,1),a(A,{content:n.modelValue?.response?.trace_id,class:`btn-copy inline-block`},null,8,[`content`])])):o(``,!0)]),_:1})])):n.modelValue?.response?.success===!1?(h(),s(`div`,It,[a(N,{closable:!1,class:`failure`},{template:p(()=>[a(P,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`openaiimage.name.failure`)),1)]),default:p(()=>[n.modelValue?.request?.model?(h(),s(`p`,Lt,[a(E,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`openaiimage.name.model`))+`: `+i(n.modelValue?.request?.model),1)])):o(``,!0),n.modelValue?.request?.size?(h(),s(`p`,Rt,[a(D,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`openaiimage.name.size`))+`: `+i(n.modelValue?.request?.size),1)])):o(``,!0),n.showTaskType?(h(),s(`p`,zt,[a(O,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`openaiimage.name.task`))+`: `+i(n.taskTypeLabel),1)])):o(``,!0),e(`p`,Bt,[a(k,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`openaiimage.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(A,{content:n.modelValue?.id,class:`btn-copy`},null,8,[`content`])]),e(`p`,$,[a(F,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`openaiimage.name.failureReason`))+`: `+i(n.modelValue?.response?.error?.message)+` `,1),a(A,{content:n.modelValue?.response?.error?.message,class:`btn-copy`},null,8,[`content`])]),n.modelValue?.elapsed?(h(),s(`p`,Vt,[a(j,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`openaiimage.name.elapsed`))+`: `+i(n.modelValue?.elapsed?.toFixed(2))+`s `,1)])):o(``,!0),n.modelValue?.response?.trace_id?(h(),s(`p`,Ht,[a(M,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`openaiimage.name.traceId`))+`: `+i(n.modelValue?.response?.trace_id)+` `,1),a(A,{content:n.modelValue?.response?.trace_id,class:`btn-copy`},null,8,[`content`])])):o(``,!0)]),_:1})])):(h(),s(`div`,Ut,[a(N,{closable:!1,class:`info`},{template:p(()=>[n.modelValue?.response?(h(),f(F,{key:1,class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`})):(h(),f(j,{key:0,class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`})),r(` `+i(n.$t(n.modelValue?.response?`openaiimage.name.status`:`openaiimage.status.pending`)),1)]),default:p(()=>[n.modelValue?.request?.model?(h(),s(`p`,Wt,[a(E,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`openaiimage.name.model`))+`: `+i(n.modelValue?.request?.model),1)])):o(``,!0),n.modelValue?.request?.size?(h(),s(`p`,Gt,[a(D,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`openaiimage.name.size`))+`: `+i(n.modelValue?.request?.size),1)])):o(``,!0),n.showTaskType?(h(),s(`p`,Kt,[a(O,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`openaiimage.name.task`))+`: `+i(n.taskTypeLabel),1)])):o(``,!0),e(`p`,qt,[a(k,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`openaiimage.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(A,{content:n.modelValue?.id,class:`btn-copy`},null,8,[`content`])])]),_:1})]))])])}var Yt=_({name:`RecentPanel`,components:{TaskPreview:K(gt,[[`render`,Jt],[`__scopeId`,`data-v-de37fde1`]]),BotPlaceholder:Se,NoTasks:ye,ScrollList:ve},props:{loading:{type:Boolean,default:!1}},emits:[`reach-top`],data(){return{job:0}},computed:{tasks(){return{...this.$store.state.openaiimage?.tasks,items:this.$store.state.openaiimage?.tasks?.items?.slice()}}},methods:{getScrollElement(){return this.$refs.scrollList?.getScrollElement?.()}}}),Xt={key:0},Zt={key:2,class:`w-full h-full flex items-center justify-center`};function Qt(e,t,n,r,i,u){let d=l(`bot-placeholder`),g=l(`task-preview`),_=l(`scroll-list`),v=l(`no-tasks`);return h(),s(c,null,[e.tasks?.items===void 0?(h(),s(`div`,Xt,[a(d)])):e.tasks?.items?.length&&e.tasks?.items?.length>0?(h(),f(_,{key:1,ref:`scrollList`,class:`tasks 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`,Zt,[a(v)])):o(``,!0)],64)}var $t=_({name:`OpenAIImageIndex`,components:{ConfigPanel:ht,Layout:ke,RecentPanel:K(Yt,[[`render`,Qt]])},mixins:[se],inject:[`initialized`],data(){return{task:void 0,job:0,loading:!1}},computed:{applicationsLoading(){return this.$store.state.openaiimage?.status?.getApplications===J.Request},tasksLoading(){return this.$store.state.openaiimage?.status?.getTasks===J.Request},credential(){return this.$store.state.openaiimage?.credential},config(){return this.$store.state.openaiimage?.config},application(){return this.$store.state.openaiimage?.application},tasks(){return this.$store.state.openaiimage?.tasks}},watch:{tasks:{handler(e,t){e?.items?.length>t?.items?.length&&console.debug(`new tasks detected`)},deep:!0},initialized:{async handler(e){e&&(console.debug(`layout initialized`),await this.onGetTasks(),await this.onScrollDown(),this.job=window.setInterval(()=>{this.onGetTasks()},5e3))},immediate:!0}},async mounted(){await this.onGetService()},async unmounted(){window.clearInterval(this.job)},methods:{async onReachTop(){await be({tasks:this.tasks,getTasks:()=>this.tasks,loading:this.loading,setLoading:e=>this.loading=e,isBlocked:()=>this.tasksLoading,fetch:e=>this.onGetTasks({createdAtMax:e}),getScrollElement:()=>this.getTasksScrollElement()})},async onGetService(){console.debug(`start onGetService`),await this.$store.dispatch(`openaiimage/getService`),console.debug(`end onGetService`)},async onGetApplication(){console.debug(`start onGetApplication`),await this.$store.dispatch(`openaiimage/getApplications`),console.debug(`end onGetApplication`),await this.onGetTasks()},async onScrollDown(){await this.$nextTick();let e=this.getTasksScrollElement();e&&(e.scrollTop=e.scrollHeight)},async onGetTasks(e){if(this.applicationsLoading||this.tasksLoading){console.debug(`loading`);return}console.debug(`start onGetTasks`,e);let{limit:t=20,createdAtMin:n,createdAtMax:r}=e||{};console.debug(`limit`,t,`createdAtMin`,n,`createdAtMax`,r),await this.$store.dispatch(`openaiimage/getTasks`,{limit:t,createdAtMin:n,createdAtMax:r})},async onGenerate(){if(!W(this.uploadTracker,e=>this.$t(e),e=>Y.warning(e)))return;let e={...this.config||{}},t=Array.isArray(e?.image_urls)&&e.image_urls.length>0;if(!this.hasText(e.prompt)){Y.error(this.$t(`openaiimage.message.promptRequired`));return}e.prompt=e.prompt.trim(),!t&&`image_urls`in e&&delete e.image_urls,e.size||delete e.size;let n={...e,action:`generate`,async:!0},r={action:`edit`,model:e?.model,prompt:e?.prompt,size:e?.size,image_urls:e?.image_urls||[],async:!0};if(!me())return;let i=this.credential?.token;if(!i){console.error(`no token specified`);return}Y.info(this.$t(`openaiimage.message.startingTask`)),he(`openaiimage`,t?G.edit(r,{token:i}):G.generate(n,{token:i})).then(e=>{console.debug(`task accepted`,e.data?.task_id),Y.success(this.$t(`openaiimage.message.startTaskSuccess`))}).catch(e=>{let t=e?.response?.data;t?.error?.code===`used_up`?Y.error(this.$t(`openaiimage.message.usedUp`)):Y.error(this.$t(`openaiimage.message.startTaskFailed`)+(t?.error?.message||``))}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})},getTasksScrollElement(){return this.$refs.recentPanel?.getScrollElement?.()},hasText(e){return typeof e==`string`&&e.trim().length>0}}});function en(e,t,n,r,i,o){let s=l(`config-panel`),c=l(`recent-panel`),u=l(`layout`);return h(),f(u,null,{config:p(()=>[a(s,{onGenerate:e.onGenerate},null,8,[`onGenerate`])]),result:p(()=>[a(c,{ref:`recentPanel`,loading:e.loading,onReachTop:e.onReachTop},null,8,[`loading`,`onReachTop`])]),_:1})}var tn=K($t,[[`render`,en]]);export{tn as default};
|
|
1
|
+
import"./rolldown-runtime--c01j_DQ.js";import{A as e,C as t,Gt as n,I as r,Jt as i,L as a,M as o,N as s,T as c,at as l,ht as u,it as d,j as f,mt as p,rt as m,tt as h,x as g,z as _}from"./vendor-chart-Dw-P17PN.js";import{n as v,r as y,t as b}from"./select-B5xUToXJ.js";import{t as x}from"./upload-BoPI2xaA.js";import{t as S}from"./tooltip-C29VE8lc.js";import{t as C}from"./alert-Du-kIP6d.js";import{t as w}from"./drawer-U5-wdIK9.js";import{t as T}from"./input-number-DySKK0eZ.js";import{t as E}from"./switch-B2zhTxNP.js";import{n as D}from"./taskDrawerMixin-zmmVKGal.js";import{t as O}from"./box-CcCHrqHP.js";import{t as k}from"./clock-D3yOwNlp.js";import{r as A,t as j}from"./PromptTextarea-CMi86YLj.js";import{t as M}from"./image-1Ye5CSlo.js";import{t as N}from"./info-B-wBOS_X.js";import{t as P}from"./trash-2-DagHPMKf.js";import{t as F}from"./triangle-alert-BmGMd5LW.js";import{t as I}from"./upload-CNONr7BK.js";import{t as L}from"./wand-sparkles-Dz2mS8Xn.js";import{t as R}from"./zap-DDQV5yCC.js";import{An as z,Fn as B,Hn as ee,In as te,Ln as ne,Mn as re,Nn as ie,Rn as ae,Un as oe,Vn as V,jn as H,zn as U}from"./constants-DmRAKvwo.js";import{Bt as W,Dn as G,E as K,Fi as q,Ht as se,Kt as ce,Ut as le,Vt as ue,Wt as de,ai as J,bi as fe,ci as pe,tn as me,xi as Y,yr as he}from"./index-SFwaJFVg.js";import{t as ge}from"./CopyToClipboard-o7ZAAs0c.js";import{t as X}from"./ImagePreview-RN3N0RLb.js";import{t as _e}from"./Consumption-C5Dn3lp_.js";import{a as Z,n as ve,r as ye,t as be}from"./pagination-C3CGbJVG.js";import{t as xe}from"./ApiCodeButton-B7wjtH_v.js";import{t as Se}from"./BotPlaceholder-Ciz09doX.js";import{t as Ce}from"./ImageWrapper-DnTAW35X.js";var we=_({name:`LayoutNanobanana`,components:{MagicIcon:L,ElDrawer:w,ElButton:q},mixins:[D]}),Te={class:`main flex flex-row flex-1`},Ee={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)]`},De={class:`result h-full p-6 flex-1 flex flex-col min-w-0 overflow-x-hidden bg-[var(--app-content-bg)]`};function Oe(t,n,r,i,o,c){let f=l(`magic-icon`),m=l(`el-button`),_=l(`el-drawer`);return h(),s(`div`,Te,[e(`div`,Ee,[d(t.$slots,`config`,{},void 0,!0)]),e(`div`,De,[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 ke=K(we,[[`render`,Oe],[`__scopeId`,`data-v-fa2172a6`]]),Ae=_({name:`PromptInput`,components:{PromptTextarea:j},computed:{prompt:{get(){return this.$store.state.openaiimage?.config?.prompt},set(e){this.$store.commit(`openaiimage/setConfig`,{...this.$store.state.openaiimage?.config,prompt:e})}}},mounted(){this.prompt||=``}});function je(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(`openaiimage.name.prompt`),info:e.$t(`openaiimage.description.prompt`),placeholder:e.$t(`openaiimage.placeholder.prompt`)},null,8,[`modelValue`,`title`,`info`,`placeholder`])}var Me=K(Ae,[[`render`,je]]),Ne=_({name:`ImageUrlsInput`,components:{UploadIcon:I,ElUpload:x,ElButton:q,InfoIcon:Z,ImagePreview:X},mixins:[de,le,ue],data(){return{fileList:[],uploadUrl:pe()+`/api/v1/files/`,suppressWatch:!1}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},urls(){return this.fileList.map(e=>e?.response?.file_url).filter(e=>!!e)},value(){return this.$store.state.openaiimage?.config?.image_urls}},watch:{value:{immediate:!0,handler(e){if(this.suppressWatch)return;if(!e||e.length===0){let e=(this.fileList||[]).filter(e=>!e?.response?.file_url);this.fileList=e.length?e:[];return}let t=[];e.forEach(e=>{let n=this.fileList.find(t=>t?.response?.file_url===e||t?.url===e);n?t.push(n):t.push({name:e.split(`/`).pop()||e,url:e,status:`success`,percentage:100,response:{file_url:e}})}),(this.fileList||[]).filter(e=>!e?.response?.file_url).forEach(e=>{t.some(t=>t===e||t?.url===e?.url||t?.response?.file_url===e?.response?.file_url)||t.push(e)}),this.fileList=t}}},mounted(){},methods:{onChange(e){if(!e?.url&&e?.raw)try{e.url=URL.createObjectURL(e.raw)}catch{}},onRemove(e){if(e?.url&&typeof e.url==`string`&&e.url.startsWith(`blob:`))try{URL.revokeObjectURL(e.url)}catch{}this.onSetImageUrls()},onExceed(){Y.warning(this.$t(`openaiimage.message.uploadImageExceed`))},onError(){Y.error(this.$t(`openaiimage.message.uploadImageError`))},onSetImageUrls(){let e=this.urls;this.suppressWatch=!0,this.$store.commit(`openaiimage/setConfig`,{...this.$store.state.openaiimage?.config,image_urls:e}),this.$nextTick(()=>{this.suppressWatch=!1})},async onSuccess(e,t){e?.file_url&&(t.url=e.file_url,t.response=e),this.onSetImageUrls()},onRemovePreview(e,t){if(this.fileList.splice(e,1),t?.url&&typeof t.url==`string`&&t.url.startsWith(`blob:`))try{URL.revokeObjectURL(t.url)}catch{}this.onSetImageUrls()}}}),Pe={class:`field flex min-h-8 w-full items-center justify-between gap-3`},Fe={class:`flex min-w-0 items-center`},Ie={class:`title m-0 text-[14px] font-bold`},Le={class:`file-list flex flex-wrap gap-[10px]`};function Re(t,n,o,u,d,g){let _=l(`info-icon`),v=l(`upload-icon`),y=l(`el-button`),b=l(`el-upload`),x=l(`image-preview`);return h(),s(`div`,null,[e(`div`,Pe,[e(`div`,Fe,[e(`h2`,Ie,i(t.$t(`openaiimage.name.imageUrls`)),1),a(_,{content:t.$t(`openaiimage.description.imageUrls`)},null,8,[`content`])]),a(b,{ref:`uploader`,"file-list":t.fileList,"onUpdate:fileList":n[0]||=e=>t.fileList=e,accept:`.png,.jpg,.jpeg,.gif,.bmp,.webp`,name:`file`,class:`value shrink-0`,limit:5,multiple:!0,"show-file-list":!1,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(`openaiimage.button.uploadImageUrls`)),1)]),_:1})]),_:1},8,[`file-list`,`action`,`on-exceed`,`on-error`,`on-success`,`on-change`,`on-remove`,`headers`])]),e(`div`,Le,[(h(!0),s(c,null,m(t.fileList,(e,n)=>(h(),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 ze=K(Ne,[[`render`,Re]]),Be=_({name:`OpenAIImageModelSelector`,components:{ElSelect:y,ElOption:b,InfoIcon:Z},data(){return{options:[{value:B,label:this.$t(`openaiimage.model.gptImage1`)},{value:te,label:this.$t(`openaiimage.model.gptImage15`)},{value:ne,label:this.$t(`openaiimage.model.gptImage2`)},{value:ae,label:this.$t(`openaiimage.model.gptImage2Official`)}]}},computed:{value:{get(){return this.$store.state.openaiimage?.config?.model},set(e){this.$store.commit(`openaiimage/setConfig`,{...this.$store.state.openaiimage?.config,model:e})}},modelDescription(){return this.$t(`openaiimage.description.model`)}},mounted(){this.value||=ie}}),Ve={class:`field`},He={class:`label`},Ue={class:`box`},We={class:`title font-bold`};function Ge(t,n,r,o,u,d){let g=l(`info-icon`),_=l(`el-option`),v=l(`el-select`);return h(),s(`div`,Ve,[e(`div`,He,[e(`div`,Ue,[e(`h2`,We,i(t.$t(`openaiimage.name.model`)),1),a(g,{content:t.modelDescription,class:`info`},null,8,[`content`])])]),a(v,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,class:`value`,placeholder:t.$t(`openaiimage.placeholder.select`)},{default:p(()=>[(h(!0),s(c,null,m(t.options,e=>(h(),f(_,{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`])])}var Ke=K(Be,[[`render`,Ge],[`__scopeId`,`data-v-a42acad4`]]);function Q(e){if(!e)return;let t=/^(\d+)x(\d+)$/.exec(e);if(t)return{w:Number(t[1]),h:Number(t[2])}}var qe=_({name:`OpenAIImageSizeSelector`,components:{ElSelect:y,ElOption:b,ElOptionGroup:v,ElSwitch:E,ElInputNumber:T,InfoIcon:Z},data(){return{customMode:!1,customWidth:1024,customHeight:1024}},computed:{model(){return this.$store.state.openaiimage?.config?.model||`gpt-image-2`},storedSize(){return this.$store.state.openaiimage?.config?.size},emptySizeValue(){return``},customSupported(){return re.includes(this.model)},presets(){return U[this.model]??U[`gpt-image-2`]??[]},presetGroups(){return this.model===`gpt-image-2`||this.model===`gpt-image-2:official`?[{label:this.$t(`openaiimage.sizeGroup.standard1k`),options:V},{label:this.$t(`openaiimage.sizeGroup.preset2k`),options:ee},{label:this.$t(`openaiimage.sizeGroup.preset4k`),options:oe}]:[{label:this.$t(`openaiimage.sizeGroup.standard1k`),options:this.presets}]},useCustom:{get(){return this.customSupported&&this.customMode},set(e){if(!(e&&!this.customSupported))if(this.customMode=e,e){if(this.customError)return;this.commitSize(`${this.customWidth}x${this.customHeight}`)}else this.commitSize()}},presetValue:{get(){let e=this.storedSize;return e&&this.presets.includes(e)?e:this.emptySizeValue},set(e){this.customMode=!1,this.commitSize(e||void 0)}},multiple(){return 16},minSide(){return 256},maxSide(){return z},customError(){let e=this.customWidth,t=this.customHeight;return!Number.isFinite(e)||!Number.isFinite(t)||e<=0||t<=0?this.$t(`openaiimage.error.customSizePositive`):e%this.multiple!==0||t%this.multiple!==0?this.$t(`openaiimage.error.customSizeMultiple`,{multiple:this.multiple}):e<this.minSide||t<this.minSide?this.$t(`openaiimage.error.customSizeMin`,{min:this.minSide}):Math.max(e,t)>this.maxSide?this.$t(`openaiimage.error.customSizeMax`,{max:this.maxSide}):e*t>8294400?this.$t(`openaiimage.error.customSizePixels`,{pixels:H.toLocaleString()}):``}},watch:{model:{immediate:!1,handler(){this.customSupported||(this.customMode=!1);let e=this.storedSize;if(!e||this.presets.includes(e))return;let t=Q(e);t&&this.customSupported&&(this.customMode=!0,this.customWidth=t.w,this.customHeight=t.h,!this.customError)||this.commitSize()}},storedSize(e){if(!e){this.customMode=!1;return}if(this.presets.includes(e)){this.customMode=!1;return}let t=Q(e);t&&this.customSupported&&(this.customMode=!0,this.customWidth!==t.w&&(this.customWidth=t.w),this.customHeight!==t.h&&(this.customHeight=t.h))},customWidth(){this.syncCustomToStore()},customHeight(){this.syncCustomToStore()}},mounted(){let e=this.storedSize,t=Q(e);e&&t&&this.customSupported&&!this.presets.includes(e)&&(this.customMode=!0,this.customWidth=t.w,this.customHeight=t.h)},methods:{commitSize(e){let t={...this.$store.state.openaiimage?.config};e?t.size=e:delete t.size,this.$store.commit(`openaiimage/setConfig`,t)},syncCustomToStore(){this.useCustom&&(this.customError||this.commitSize(`${this.customWidth}x${this.customHeight}`))}}}),Je={class:`resolution`},Ye={class:`field`},Xe={class:`label`},Ze={class:`box`},Qe={class:`title font-bold`},$e={class:`field custom-toggle`},et={class:`label`},tt={class:`box`},nt={class:`title font-bold`},rt={key:0,class:`custom-inputs`},it={class:`row`},at={class:`row-label`},ot={class:`row`},st={class:`row-label`},ct={key:0,class:`error`};function lt(t,n,r,u,d,g){let _=l(`info-icon`),v=l(`el-option`),y=l(`el-option-group`),b=l(`el-select`),x=l(`el-switch`),S=l(`el-input-number`);return h(),s(`div`,Je,[e(`div`,Ye,[e(`div`,Xe,[e(`div`,Ze,[e(`h2`,Qe,i(t.$t(`openaiimage.name.size`)),1),a(_,{content:t.$t(`openaiimage.description.size`),class:`info`},null,8,[`content`])])]),a(b,{modelValue:t.presetValue,"onUpdate:modelValue":n[0]||=e=>t.presetValue=e,class:`value`,placeholder:t.$t(`openaiimage.placeholder.select`),disabled:t.useCustom},{default:p(()=>[a(v,{label:t.$t(`suno.gender.auto`),value:t.emptySizeValue},null,8,[`label`,`value`]),(h(!0),s(c,null,m(t.presetGroups,e=>(h(),f(y,{key:e.label,label:e.label},{default:p(()=>[(h(!0),s(c,null,m(e.options,e=>(h(),f(v,{key:e,label:e,value:e},null,8,[`label`,`value`]))),128))]),_:2},1032,[`label`]))),128))]),_:1},8,[`modelValue`,`placeholder`,`disabled`])]),t.customSupported?(h(),s(c,{key:0},[e(`div`,$e,[e(`div`,et,[e(`div`,tt,[e(`h2`,nt,i(t.$t(`openaiimage.name.customSize`)),1),a(_,{content:t.$t(`openaiimage.description.customSize`),class:`info`},null,8,[`content`])])]),a(x,{modelValue:t.useCustom,"onUpdate:modelValue":n[1]||=e=>t.useCustom=e,class:`value-switch`},null,8,[`modelValue`])]),t.useCustom?(h(),s(`div`,rt,[e(`div`,it,[e(`span`,at,i(t.$t(`openaiimage.name.width`)),1),a(S,{modelValue:t.customWidth,"onUpdate:modelValue":n[2]||=e=>t.customWidth=e,class:`row-input`,min:t.minSide,max:t.maxSide,step:t.multiple,"step-strictly":!0,"controls-position":`right`},null,8,[`modelValue`,`min`,`max`,`step`])]),e(`div`,ot,[e(`span`,st,i(t.$t(`openaiimage.name.height`)),1),a(S,{modelValue:t.customHeight,"onUpdate:modelValue":n[3]||=e=>t.customHeight=e,class:`row-input`,min:t.minSide,max:t.maxSide,step:t.multiple,"step-strictly":!0,"controls-position":`right`},null,8,[`modelValue`,`min`,`max`,`step`])]),t.customError?(h(),s(`div`,ct,i(t.customError),1)):o(``,!0)])):o(``,!0)],64)):o(``,!0)])}var ut=_({name:`ConfigPanel`,components:{MagicIcon:L,ElButton:q,PromptInput:Me,Consumption:_e,ImageUrlsInput:ze,ModelSelector:Ke,ResolutionSelector:K(qe,[[`render`,lt],[`__scopeId`,`data-v-dfce4922`]])},emits:[`generate`],computed:{config(){return this.$store.state.openaiimage?.config},consumption(){return ce({...this.config||{}},this.service?.cost)},service(){return this.$store.state.openaiimage?.service}},methods:{onGenerate(){this.$emit(`generate`)}}}),dt={class:`flex flex-col h-full`},ft={class:`flex-1 overflow-y-auto p-5`},pt={class:`flex flex-col items-center justify-center px-5 pb-5`};function mt(t,n,o,c,u,d){let f=l(`model-selector`),m=l(`resolution-selector`),g=l(`prompt-input`),_=l(`image-urls-input`),v=l(`consumption`),y=l(`magic-icon`),b=l(`el-button`);return h(),s(`div`,dt,[e(`div`,ft,[a(f,{class:`mb-4`}),a(m,{class:`mb-4`}),a(g,{class:`mb-4`}),a(_,{class:`mb-4`})]),e(`div`,pt,[a(v,{value:t.consumption,service:t.service},null,8,[`value`,`service`]),a(b,{type:`primary`,class:`btn w-full`,round:``,onClick:t.onGenerate},{default:p(()=>[a(y,{class:`mr-2`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`openaiimage.button.generate`)),1)]),_:1},8,[`onClick`])])])}var ht=K(ut,[[`render`,mt]]),gt=_({name:`TaskPreview`,components:{ApplicationIcon:O,ChannelIcon:A,DeleteIcon:P,ImageIcon:M,InfoIcon:N,LightningIcon:R,MagicIcon:L,TimeIcon:k,WarningIcon:F,CopyToClipboard:ge,ElAlert:C,ImageWrapper:Ce,ElButton:q,ElTooltip:S,ImagePreview:X,ApiCodeButton:xe},props:{modelValue:{type:Object,required:!0}},computed:{isEditRequest(){let e=this.modelValue?.request;return this.modelValue?.type===`images_edits`||e?.action===`edit`||this.referenceImages.length>0},showTaskType(){return!!(this.modelValue?.request?.action||this.modelValue?.type||this.referenceImages.length>0)},taskTypeLabel(){return this.isEditRequest?this.$t(`openaiimage.name.edits`):this.$t(`openaiimage.name.generate`)},openaiimagePath(){return this.isEditRequest?`/openai/images/edits`:`/openai/images/generations`},openaiimageCodeBody(){let e=this.modelValue?.request;if(!e)return;let t={...e};if(delete t.action,delete t.callback_url,this.isEditRequest){delete t.image_urls,delete t.image;let e=this.referenceImages;e.length===1?t.image=e[0]:e.length>1&&(t.image=e)}else delete t.image_urls,delete t.image;return t},images(){let e=[];return Array.isArray(this.modelValue?.response?.data)&&this.modelValue?.response?.data?.forEach(t=>{let n=t;if(n?.image_url||n?.url){e.push(n);return}n?.b64_json&&e.push({...n,url:`data:image/png;base64,${n.b64_json}`})}),e},referenceImages(){let e=this.modelValue?.request;if(!e)return[];let t=Array.isArray(e.image_urls)?e.image_urls:[];if(t.length>0)return t.filter(e=>typeof e==`string`&&e.length>0);let n=e.image;return Array.isArray(n)?n.filter(e=>typeof e==`string`&&e.length>0):typeof n==`string`&&n.length>0?[n]:Array.isArray(e.images)?e.images.map(e=>{if(typeof e==`string`)return e;if(e&&typeof e==`object`)return e.image_url}).filter(e=>typeof e==`string`&&e.length>0):[]}},methods:{onEdit(e){if(!e)return;console.debug(`Edit image:`,e);let t={...this.$store.state.openaiimage?.config||{}};t.image_urls=[e],this.$store.commit(`openaiimage/setConfig`,t)},async onDelete(){let e=this.modelValue?.id;if(e){try{await fe.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(`openaiimage/deleteTask`,{id:e}),Y.success(this.$t(`common.message.deleteTaskSuccess`))}catch{Y.error(this.$t(`common.message.deleteTaskFailed`))}}}}}),_t={class:`preview`},vt={class:`left`},yt={class:`main`},bt={class:`bot`},xt={class:`datetime`},St=[`aria-label`],Ct={class:`info`},wt={key:0,class:`flex justify-start items-center gap-2 mt-2 w-full overflow-x-auto`},Tt={key:1,class:`prompt mt-2`},Et={key:0},Dt={key:0,class:n({content:!0,failed:!0})},Ot={class:`flex justify-start items-center gap-4 w-full overflow-x-auto`},kt={class:n({operations:!0,"mt-2":!0,"mb-2":!0})},At={key:0,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},jt={key:1,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Mt={key:2,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Nt={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Pt={key:3,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Ft={key:4,class:`text-[var(--el-text-color-regular)] text-xs mb-0`},It={key:1,class:n({content:!0})},Lt={key:0,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Rt={key:1,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},zt={key:2,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Bt={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},$={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Vt={key:3,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Ht={key:4,class:`text-[var(--el-text-color-regular)] text-xs mb-0`},Ut={key:2,class:n({content:!0})},Wt={key:0,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Gt={key:1,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Kt={key:2,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},qt={class:`text-[var(--el-text-color-regular)] text-xs mb-2`};function Jt(n,u,d,g,_,v){let y=l(`capability-presentation`),b=l(`delete-icon`),x=l(`el-tooltip`),S=l(`image-preview`),C=l(`image-wrapper`),w=l(`el-button`),T=l(`api-code-button`),E=l(`application-icon`),D=l(`image-icon`),O=l(`lightning-icon`),k=l(`magic-icon`),A=l(`copy-to-clipboard`),j=l(`time-icon`),M=l(`channel-icon`),N=l(`el-alert`),P=l(`warning-icon`),F=l(`info-icon`);return h(),s(`div`,_t,[e(`div`,vt,[a(y,{capability:`openaiimage`,part:`avatar`,class:`avatar`})]),e(`div`,yt,[e(`div`,bt,[a(y,{capability:`openaiimage`,part:`name`}),e(`span`,xt,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,St)):o(``,!0)]),_:1},8,[`content`])]),e(`div`,Ct,[n.referenceImages.length>0?(h(),s(`div`,wt,[(h(!0),s(c,null,m(n.referenceImages,(e,t)=>(h(),f(S,{key:t,url:e,name:`image-${t+1}`,closable:!1},null,8,[`url`,`name`]))),128))])):o(``,!0),n.modelValue?.request?.prompt?(h(),s(`p`,Tt,[r(i(n.modelValue?.request?.prompt)+` `,1),n.modelValue?.response?o(``,!0):(h(),s(`span`,Et,` - (`+i(n.$t(`openaiimage.status.pending`))+`) `,1))])):o(``,!0)]),n.modelValue?.response?.success===!0?(h(),s(`div`,Dt,[e(`div`,Ot,[(h(!0),s(c,null,m(n.images,(e,t)=>(h(),f(C,{key:t,src:e?.image_url||e?.url||``,"raw-src":e?.image_url||e?.url||``},null,8,[`src`,`raw-src`]))),128))]),e(`div`,kt,[a(x,{class:`box-item`,effect:`dark`,content:n.$t(`common.button.edit`),placement:`top-start`},{default:p(()=>[a(w,{type:`info`,size:`small`,class:`btn-action`,onClick:u[1]||=t(e=>n.onEdit(n.images?.[0]?.image_url||n.images?.[0]?.url),[`stop`])},{default:p(()=>[r(i(n.$t(`common.button.edit`)),1)]),_:1})]),_:1},8,[`content`]),a(T,{path:n.openaiimagePath,body:n.openaiimageCodeBody},null,8,[`path`,`body`])]),a(N,{closable:!1,class:`mt-2 success`},{default:p(()=>[n.modelValue?.request?.model?(h(),s(`p`,At,[a(E,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`openaiimage.name.model`))+`: `+i(n.modelValue?.request?.model),1)])):o(``,!0),n.modelValue?.request?.size?(h(),s(`p`,jt,[a(D,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`openaiimage.name.size`))+`: `+i(n.modelValue?.request?.size),1)])):o(``,!0),n.showTaskType?(h(),s(`p`,Mt,[a(O,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`openaiimage.name.task`))+`: `+i(n.taskTypeLabel),1)])):o(``,!0),e(`p`,Nt,[a(k,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`openaiimage.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(A,{content:n.modelValue?.id,class:`btn-copy inline-block`},null,8,[`content`])]),n.modelValue?.elapsed?(h(),s(`p`,Pt,[a(j,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`openaiimage.name.elapsed`))+`: `+i(n.modelValue?.elapsed?.toFixed(2))+`s `,1)])):o(``,!0),n.modelValue?.response?.trace_id?(h(),s(`p`,Ft,[a(M,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`openaiimage.name.traceId`))+`: `+i(n.modelValue?.response?.trace_id)+` `,1),a(A,{content:n.modelValue?.response?.trace_id,class:`btn-copy inline-block`},null,8,[`content`])])):o(``,!0)]),_:1})])):n.modelValue?.response?.success===!1?(h(),s(`div`,It,[a(N,{closable:!1,class:`failure`},{template:p(()=>[a(P,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`openaiimage.name.failure`)),1)]),default:p(()=>[n.modelValue?.request?.model?(h(),s(`p`,Lt,[a(E,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`openaiimage.name.model`))+`: `+i(n.modelValue?.request?.model),1)])):o(``,!0),n.modelValue?.request?.size?(h(),s(`p`,Rt,[a(D,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`openaiimage.name.size`))+`: `+i(n.modelValue?.request?.size),1)])):o(``,!0),n.showTaskType?(h(),s(`p`,zt,[a(O,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`openaiimage.name.task`))+`: `+i(n.taskTypeLabel),1)])):o(``,!0),e(`p`,Bt,[a(k,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`openaiimage.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(A,{content:n.modelValue?.id,class:`btn-copy`},null,8,[`content`])]),e(`p`,$,[a(F,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`openaiimage.name.failureReason`))+`: `+i(n.modelValue?.response?.error?.message)+` `,1),a(A,{content:n.modelValue?.response?.error?.message,class:`btn-copy`},null,8,[`content`])]),n.modelValue?.elapsed?(h(),s(`p`,Vt,[a(j,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`openaiimage.name.elapsed`))+`: `+i(n.modelValue?.elapsed?.toFixed(2))+`s `,1)])):o(``,!0),n.modelValue?.response?.trace_id?(h(),s(`p`,Ht,[a(M,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`openaiimage.name.traceId`))+`: `+i(n.modelValue?.response?.trace_id)+` `,1),a(A,{content:n.modelValue?.response?.trace_id,class:`btn-copy`},null,8,[`content`])])):o(``,!0)]),_:1})])):(h(),s(`div`,Ut,[a(N,{closable:!1,class:`info`},{template:p(()=>[n.modelValue?.response?(h(),f(F,{key:1,class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`})):(h(),f(j,{key:0,class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`})),r(` `+i(n.$t(n.modelValue?.response?`openaiimage.name.status`:`openaiimage.status.pending`)),1)]),default:p(()=>[n.modelValue?.request?.model?(h(),s(`p`,Wt,[a(E,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`openaiimage.name.model`))+`: `+i(n.modelValue?.request?.model),1)])):o(``,!0),n.modelValue?.request?.size?(h(),s(`p`,Gt,[a(D,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`openaiimage.name.size`))+`: `+i(n.modelValue?.request?.size),1)])):o(``,!0),n.showTaskType?(h(),s(`p`,Kt,[a(O,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`openaiimage.name.task`))+`: `+i(n.taskTypeLabel),1)])):o(``,!0),e(`p`,qt,[a(k,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`openaiimage.name.taskId`))+`: `+i(n.modelValue?.id)+` `,1),a(A,{content:n.modelValue?.id,class:`btn-copy`},null,8,[`content`])])]),_:1})]))])])}var Yt=_({name:`RecentPanel`,components:{TaskPreview:K(gt,[[`render`,Jt],[`__scopeId`,`data-v-de37fde1`]]),BotPlaceholder:Se,NoTasks:ye,ScrollList:ve},props:{loading:{type:Boolean,default:!1}},emits:[`reach-top`],data(){return{job:0}},computed:{tasks(){return{...this.$store.state.openaiimage?.tasks,items:this.$store.state.openaiimage?.tasks?.items?.slice()}}},methods:{getScrollElement(){return this.$refs.scrollList?.getScrollElement?.()}}}),Xt={key:0},Zt={key:2,class:`w-full h-full flex items-center justify-center`};function Qt(e,t,n,r,i,u){let d=l(`bot-placeholder`),g=l(`task-preview`),_=l(`scroll-list`),v=l(`no-tasks`);return h(),s(c,null,[e.tasks?.items===void 0?(h(),s(`div`,Xt,[a(d)])):e.tasks?.items?.length&&e.tasks?.items?.length>0?(h(),f(_,{key:1,ref:`scrollList`,class:`tasks 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`,Zt,[a(v)])):o(``,!0)],64)}var $t=_({name:`OpenAIImageIndex`,components:{ConfigPanel:ht,Layout:ke,RecentPanel:K(Yt,[[`render`,Qt]])},mixins:[se],inject:[`initialized`],data(){return{task:void 0,job:0,loading:!1}},computed:{applicationsLoading(){return this.$store.state.openaiimage?.status?.getApplications===J.Request},tasksLoading(){return this.$store.state.openaiimage?.status?.getTasks===J.Request},credential(){return this.$store.state.openaiimage?.credential},config(){return this.$store.state.openaiimage?.config},application(){return this.$store.state.openaiimage?.application},tasks(){return this.$store.state.openaiimage?.tasks}},watch:{tasks:{handler(e,t){e?.items?.length>t?.items?.length&&console.debug(`new tasks detected`)},deep:!0},initialized:{async handler(e){e&&(console.debug(`layout initialized`),await this.onGetTasks(),await this.onScrollDown(),this.job=window.setInterval(()=>{this.onGetTasks()},5e3))},immediate:!0}},async mounted(){await this.onGetService()},async unmounted(){window.clearInterval(this.job)},methods:{async onReachTop(){await be({tasks:this.tasks,getTasks:()=>this.tasks,loading:this.loading,setLoading:e=>this.loading=e,isBlocked:()=>this.tasksLoading,fetch:e=>this.onGetTasks({createdAtMax:e}),getScrollElement:()=>this.getTasksScrollElement()})},async onGetService(){console.debug(`start onGetService`),await this.$store.dispatch(`openaiimage/getService`),console.debug(`end onGetService`)},async onGetApplication(){console.debug(`start onGetApplication`),await this.$store.dispatch(`openaiimage/getApplications`),console.debug(`end onGetApplication`),await this.onGetTasks()},async onScrollDown(){await this.$nextTick();let e=this.getTasksScrollElement();e&&(e.scrollTop=e.scrollHeight)},async onGetTasks(e){if(this.applicationsLoading||this.tasksLoading){console.debug(`loading`);return}console.debug(`start onGetTasks`,e);let{limit:t=20,createdAtMin:n,createdAtMax:r}=e||{};console.debug(`limit`,t,`createdAtMin`,n,`createdAtMax`,r),await this.$store.dispatch(`openaiimage/getTasks`,{limit:t,createdAtMin:n,createdAtMax:r})},async onGenerate(){if(!W(this.uploadTracker,e=>this.$t(e),e=>Y.warning(e)))return;let e={...this.config||{}},t=Array.isArray(e?.image_urls)&&e.image_urls.length>0;if(!this.hasText(e.prompt)){Y.error(this.$t(`openaiimage.message.promptRequired`));return}e.prompt=e.prompt.trim(),!t&&`image_urls`in e&&delete e.image_urls,e.size||delete e.size;let n={...e,action:`generate`,async:!0},r={action:`edit`,model:e?.model,prompt:e?.prompt,size:e?.size,image_urls:e?.image_urls||[],async:!0};if(!me())return;let i=this.credential?.token;if(!i){console.error(`no token specified`);return}Y.info(this.$t(`openaiimage.message.startingTask`)),he(`openaiimage`,t?G.edit(r,{token:i}):G.generate(n,{token:i})).then(e=>{console.debug(`task accepted`,e.data?.task_id),Y.success(this.$t(`openaiimage.message.startTaskSuccess`))}).catch(e=>{let t=e?.response?.data;t?.error?.code===`used_up`?Y.error(this.$t(`openaiimage.message.usedUp`)):Y.error(this.$t(`openaiimage.message.startTaskFailed`)+(t?.error?.message||``))}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})},getTasksScrollElement(){return this.$refs.recentPanel?.getScrollElement?.()},hasText(e){return typeof e==`string`&&e.trim().length>0}}});function en(e,t,n,r,i,o){let s=l(`config-panel`),c=l(`recent-panel`),u=l(`layout`);return h(),f(u,null,{config:p(()=>[a(s,{onGenerate:e.onGenerate},null,8,[`onGenerate`])]),result:p(()=>[a(c,{ref:`recentPanel`,loading:e.loading,onReachTop:e.onReachTop},null,8,[`loading`,`onReachTop`])]),_:1})}var tn=K($t,[[`render`,en]]);export{tn as default};
|