@acedatacloud/nexior 3.318.6 → 3.318.7
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-Cdz-Fy3S.js → ApiCodeButton-WF_-U1A1.js} +1 -1
- package/dist/assets/{Artifacts-BImBqI6A.js → Artifacts-BJuA2Ibd.js} +1 -1
- package/dist/assets/{AskUserQuestionCard-C2JnGaxW.js → AskUserQuestionCard-Qi_DuDNL.js} +1 -1
- package/dist/assets/{Auth-Dzjlaxkg.js → Auth-IHwtaeqi.js} +1 -1
- package/dist/assets/{Bare-BPMYTI45.js → Bare-BPZYY1Xq.js} +1 -1
- package/dist/assets/{BotPlaceholder-60_H2JxQ.js → BotPlaceholder-BU4a0XLq.js} +1 -1
- package/dist/assets/{BottomFooter-C69AsjsW.js → BottomFooter-DY3eyfcG.js} +1 -1
- package/dist/assets/{Callback-DkeSGsX-.js → Callback-Btt65S_U.js} +1 -1
- package/dist/assets/{CodeSnippet-BO6HTf2g.js → CodeSnippet-ica94L3y.js} +1 -1
- package/dist/assets/{Console-CLxRepSL.js → Console-DiZQcY3g.js} +1 -1
- package/dist/assets/{Consumption-C6c-vSv0.js → Consumption-B2gTsRAP.js} +1 -1
- package/dist/assets/{Conversation-gjCMEybz.js → Conversation-C5ufdabm.js} +1 -1
- package/dist/assets/{Conversation-C8vf4X_M.js → Conversation-hHrmJR3C.js} +1 -1
- package/dist/assets/{CopyToClipboard-BPv_hKe6.js → CopyToClipboard-CdGWA3lV.js} +1 -1
- package/dist/assets/{Detail-CsXy5uwE.js → Detail-pDe65zRE.js} +2 -2
- package/dist/assets/{Extra-C6dHZNTg.js → Extra-p0NTSwXZ.js} +1 -1
- package/dist/assets/{FilePreview-BNce0rD6.js → FilePreview--fPsrQcg.js} +1 -1
- package/dist/assets/{Hailuo-BhiYWRfG.js → Hailuo-CVqeGU-4.js} +1 -1
- package/dist/assets/{History-BAKfOWTG.js → History-C0QvSJ18.js} +1 -1
- package/dist/assets/{ImagePreview-DiItKL-y.js → ImagePreview-8jJNA6v3.js} +1 -1
- package/dist/assets/{ImageWrapper-CxRidcAh.js → ImageWrapper-BF74hGuQ.js} +1 -1
- package/dist/assets/{Index-DANxC1Zb.js → Index-5Rrfw-vP.js} +1 -1
- package/dist/assets/{Index-D9wtwCUj.js → Index-B-3lMHHe.js} +1 -1
- package/dist/assets/{Index-D6ZB82Kt.js → Index-B6PzpIkT.js} +1 -1
- package/dist/assets/{Index-B0TkfH1N.js → Index-B7-2IhUF.js} +1 -1
- package/dist/assets/{Index-51D-2SQS.js → Index-B8mmAOjF.js} +1 -1
- package/dist/assets/{Index-25HtaL2Q.js → Index-BTAv3pQ-.js} +1 -1
- package/dist/assets/{Index-DSmP-t5T.js → Index-BTwKM5NU.js} +1 -1
- package/dist/assets/{Index-D64Dw4Ob.js → Index-BVA6ejN4.js} +1 -1
- package/dist/assets/{Index-BQOhP75-.js → Index-BYPHtn-T.js} +1 -1
- package/dist/assets/{Index-D-hz0fJB.js → Index-Bb-7m17t.js} +1 -1
- package/dist/assets/{Index-BLMiXSJ-.js → Index-BkXlcoCe.js} +1 -1
- package/dist/assets/{Index-BUczs_C9.js → Index-Bn1gz0JH.js} +1 -1
- package/dist/assets/{Index-CQhaxDc5.js → Index-Bxk7USXS.js} +1 -1
- package/dist/assets/{Index-BZhyOGJE.js → Index-C-XGtgZ9.js} +1 -1
- package/dist/assets/{Index-D_EvoZ9u.css → Index-CA7cJJ3U.css} +1 -1
- package/dist/assets/{Index-DSr6ENSK.js → Index-CMZfBMn8.js} +1 -1
- package/dist/assets/{Index-CTup-78i.js → Index-CRrfzBgG.js} +1 -1
- package/dist/assets/{Index-BeUs6yIg.js → Index-CWNapjip.js} +1 -1
- package/dist/assets/{Index-CxVOj4Z4.js → Index-CoEB7A3T.js} +1 -1
- package/dist/assets/{Index-czH0QaAg.js → Index-DGebSLQB.js} +1 -1
- package/dist/assets/{Index-Ck4pfae7.js → Index-Dl6N0Qho.js} +1 -1
- package/dist/assets/{Index-D1OE9OED.js → Index-DlUv1xiC.js} +1 -1
- package/dist/assets/{Index-DhZxvIs0.js → Index-Dm0EJorz.js} +1 -1
- package/dist/assets/{Index-DdLl12bK.js → Index-Dt20_8CD.js} +1 -1
- package/dist/assets/{Index-B21eKFVR.js → Index-FBRgeKJa.js} +1 -1
- package/dist/assets/{Index-DfCvXx28.js → Index-ZF4u8nZX.js} +1 -1
- package/dist/assets/{Index-BqJ9csRC.js → Index-kLVRnI_F.js} +1 -1
- package/dist/assets/{Index-J_r-y6zM.js → Index-kqYWhuFx.js} +1 -1
- package/dist/assets/Index-odsWj4gY.js +1 -0
- package/dist/assets/{Invitees-B3rU3nQS.js → Invitees-BxKU6H8S.js} +1 -1
- package/dist/assets/{List-CCS5887g.js → List-BGWhworY.js} +1 -1
- package/dist/assets/{List-CmQcVv3m.js → List-BSahF1YS.js} +1 -1
- package/dist/assets/{List-XkMfd3QO.js → List-DmuBxflh.js} +1 -1
- package/dist/assets/{LocalTools-BJAMtJn7.js → LocalTools-Bt74g9N0.js} +1 -1
- package/dist/assets/{LocalTools-DuDjwFNl.js → LocalTools-DSaGPY01.js} +1 -1
- package/dist/assets/{Main-CW87MEHM.js → Main-CI1xkhqc.js} +1 -1
- package/dist/assets/{Message-CWbPXkhr.js → Message-DZ2lB0Vx.js} +1 -1
- package/dist/assets/{Model-Cr1HDNsw.js → Model-B-zSAdfC.js} +1 -1
- package/dist/assets/{Navigator-BO8oejW1.js → Navigator-C-zX58Pb.js} +3 -3
- package/dist/assets/{NoTasks-BUMSVlPF.js → NoTasks-C3tcHEtF.js} +1 -1
- package/dist/assets/{NotFound-FWk-RhOI.js → NotFound-Czd24iIv.js} +1 -1
- package/dist/assets/{Pagination-BMKyrsOm.js → Pagination-chMaME-P.js} +1 -1
- package/dist/assets/{Pay-W6gY3YR6.js → Pay-Cox3QdNV.js} +1 -1
- package/dist/assets/{Player-Dueh_pOa.js → Player-Cv4vJuad.js} +1 -1
- package/dist/assets/{PromptTextarea-Dfu-o_C6.js → PromptTextarea-66psG0Ji.js} +1 -1
- package/dist/assets/{RealtimeCall-Lh-jOAGd.js → RealtimeCall-he2KZoic.js} +1 -1
- package/dist/assets/{ScheduledTasks-C4TnBpsV.js → ScheduledTasks-5XOH7usN.js} +1 -1
- package/dist/assets/{Status-Dk-vw_fo.js → Status-BdUtKKUD.js} +1 -1
- package/dist/assets/{Subscribe-DEq5Ziv4.js → Subscribe-IEBf_6o4.js} +1 -1
- package/dist/assets/{TabSwitcher-CIK5WRf5.js → TabSwitcher-BW7vqtMl.js} +1 -1
- package/dist/assets/{Tts-CaiUH0EQ.js → Tts-BTpAV7uV.js} +1 -1
- package/dist/assets/{VideoPlayer-DR0GK7w6.js → VideoPlayer-NjLw9ykt.js} +1 -1
- package/dist/assets/{VideoPreview-eYaQopZ6.js → VideoPreview-B8FUS_c5.js} +1 -1
- package/dist/assets/{alert-Opv77n_G.js → alert-BDvIuUu3.js} +1 -1
- package/dist/assets/{avatar-BAVZqEOx.js → avatar-yhJ0eKlG.js} +1 -1
- package/dist/assets/{basic-T-z6rKsv.js → basic-D8QqTpQW.js} +1 -1
- package/dist/assets/{chat-BriRY4Le.js → chat-6oNmsNfD.js} +1 -1
- package/dist/assets/{codingBridge-BXnPnZR_.js → codingBridge-D771TbWD.js} +1 -1
- package/dist/assets/{codingBridgeNotify-C6xU4DBK.js → codingBridgeNotify-pIQNli04.js} +2 -2
- package/dist/assets/{collapse-c2sK1KTq.js → collapse-C-qULowS.js} +1 -1
- package/dist/assets/constants-Bs-70rQx.js +1 -0
- package/dist/assets/{createTaskActions-BOdoxpV8.js → createTaskActions-Da73ug9a.js} +1 -1
- package/dist/assets/{date-picker-CtcBG4yB.js → date-picker-zEEUWoJD.js} +1 -1
- package/dist/assets/{digitalhuman-BzspKP2J.js → digitalhuman-B69MLLAr.js} +1 -1
- package/dist/assets/{drawer-VR-pZKxs.js → drawer-B9vlF9-6.js} +1 -1
- package/dist/assets/{dropdown-p35jSqoK.js → dropdown-CsAasnhQ.js} +1 -1
- package/dist/assets/{dropdown-SyKEnRGq.js → dropdown-DO-f0tMd.js} +1 -1
- package/dist/assets/{esm-Bcu9rj2X.js → esm-1q07ali_.js} +1 -1
- package/dist/assets/{esm-Cf3y_sOc.js → esm-8ErrqOJ9.js} +1 -1
- package/dist/assets/{esm-OY_UWqNA.js → esm-COYGa9F5.js} +2 -2
- package/dist/assets/esm-DSLXJo7A.js +1 -0
- package/dist/assets/{esm-BFnMDv4b.js → esm-Dv2l1uq9.js} +3 -3
- package/dist/assets/{esm-C_Jf-Gza.js → esm-OzpD8pHa.js} +1 -1
- package/dist/assets/{esm-C4UJ3Iov.js → esm-QRXEX6Zg.js} +2 -2
- package/dist/assets/{fish-CNJAj25U.js → fish-CRiKi-L5.js} +1 -1
- package/dist/assets/{flux-zJUFsvuR.js → flux-5cAbmOQY.js} +1 -1
- package/dist/assets/{grokvideo-B4li7ObW.js → grokvideo-COILDSeT.js} +1 -1
- package/dist/assets/{hailuo-BojaMJ7H.js → hailuo-DCfAkLJG.js} +1 -1
- package/dist/assets/{headshots-BrWIJjDQ.js → headshots-D09bGBJX.js} +1 -1
- package/dist/assets/{i18n-DznFwuOo.js → i18n-B1v8pkqA.js} +1 -1
- package/dist/assets/{image-D2Uc31X4.js → image-DsbwPTmm.js} +1 -1
- package/dist/assets/{index-DPT0LY_a.js → index-BDvTozfe.js} +4 -4
- package/dist/assets/{index.browser.esm-BVPh7rJF.js → index.browser.esm-taL9mIxG.js} +1 -1
- package/dist/assets/{index.es-BF0roIeI.js → index.es-B8y6GOsn.js} +1 -1
- package/dist/assets/{input-number-CjZlVSMZ.js → input-number-Co-ZG8zL.js} +1 -1
- package/dist/assets/{kling-NdcJDIMv.js → kling-DWi0wCKE.js} +1 -1
- package/dist/assets/{luma-D2qRDbRW.js → luma-CGUUM-Ta.js} +1 -1
- package/dist/assets/{maestro-BR0_32A8.js → maestro-Br5yaBFy.js} +1 -1
- package/dist/assets/{maestro-S1f6xymm.js → maestro-By4YajaZ.js} +1 -1
- package/dist/assets/{maestro-CQTXWsL-.js → maestro-DZHDJXP9.js} +1 -1
- package/dist/assets/{midjourney-xrMjHyy7.js → midjourney-DgjZEOZ3.js} +1 -1
- package/dist/assets/{mobileLocalExec-C-BqE-A8.js → mobileLocalExec-6yMCCAj6.js} +2 -2
- package/dist/assets/{nanobanana-B4CPs-DV.js → nanobanana-DNrdLCBS.js} +1 -1
- package/dist/assets/{openaiimage-0MCEvIOF.js → openaiimage-BYGPf0wj.js} +1 -1
- package/dist/assets/{pagination-CUnmIqY0.js → pagination-BNew-8XN.js} +1 -1
- package/dist/assets/{pika-B02PS2SS.js → pika-PLLq1RTW.js} +1 -1
- package/dist/assets/{pixverse-hGS5yg2C.js → pixverse-IOCk7a01.js} +1 -1
- package/dist/assets/{popover-DDUaOsYb.js → popover-DT7zNo3z.js} +1 -1
- package/dist/assets/{producer-BptOe2yo.js → producer-C3TkrgUA.js} +1 -1
- package/dist/assets/{qrart-xFFmORGv.js → qrart-DajQO3oi.js} +1 -1
- package/dist/assets/{realtime-DopmSstM.js → realtime-B43C_a2D.js} +1 -1
- package/dist/assets/{row-BObmfvTI.js → row-GPnV-Mb1.js} +1 -1
- package/dist/assets/{seedance-BDeajC--.js → seedance-BO4A9Bw_.js} +1 -1
- package/dist/assets/{seedream-Ct5XCthv.js → seedream-CFXJbScI.js} +1 -1
- package/dist/assets/{select-leWGa1qy.js → select-BMkecWJ3.js} +1 -1
- package/dist/assets/{serp-C2YZ4etl.js → serp-7VJtgbbD.js} +1 -1
- package/dist/assets/{slider-CtUWZeFa.js → slider-C8QFYGMv.js} +1 -1
- package/dist/assets/{solana-wallets-C1kyG7zs.js → solana-wallets-MyNvL3wy.js} +2 -2
- package/dist/assets/{solana-wallets-vue-XcfIGgDN.js → solana-wallets-vue-vOsKpkZE.js} +1 -1
- package/dist/assets/{sora-BPV1PBfs.js → sora-CLQRLFhs.js} +1 -1
- package/dist/assets/{suno-CRWPzAz6.js → suno-CZ50MDNU.js} +1 -1
- package/dist/assets/{switch-DJBjdzV-.js → switch-D9jGUBnB.js} +1 -1
- package/dist/assets/{table-fiT7UBle.js → table-Z4ix7Txh.js} +1 -1
- package/dist/assets/{tabs-CL1IKHZm.js → tabs-DjGinRJL.js} +1 -1
- package/dist/assets/{time-picker-Bnhiky3Z.js → time-picker-BZMTrkSW.js} +1 -1
- package/dist/assets/{tooltip-Bg-5iX0y.js → tooltip-DW1XZtXG.js} +1 -1
- package/dist/assets/{upload-DFnNkCSJ.js → upload-BVKjQKBq.js} +1 -1
- package/dist/assets/{veo-nz1x28ar.js → veo-B4DXqFCr.js} +1 -1
- package/dist/assets/{wan-D7W0TaoT.js → wan-DQYbgMO7.js} +1 -1
- package/dist/assets/{web-gjjT5EV1.js → web-B89HYN77.js} +1 -1
- package/dist/assets/{web-CPHEGuLs.js → web-Camq_Kr6.js} +1 -1
- package/dist/assets/{web-K2lh7xuM.js → web-CbCElfem.js} +1 -1
- package/dist/assets/{web-CYZZdbwr.js → web-D1lM6mmb.js} +1 -1
- package/dist/assets/{web-BLsW0wnr.js → web-lR2PaDWQ.js} +1 -1
- package/dist/assets/{webextrator-CJ7tIg_O.js → webextrator-DMsh9lCW.js} +1 -1
- package/dist/index.html +3 -3
- package/package.json +1 -1
- package/dist/assets/Index-CI-c4tuB.js +0 -1
- package/dist/assets/constants-BqvGY8Qp.js +0 -1
- package/dist/assets/esm-DDubVLqZ.js +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
import"./rolldown-runtime--c01j_DQ.js";import{A as e,D as t,Gt as n,Ht as r,I as i,N as a,O as o,P as s,Q as c,S as l,b as u,dt as d,et as f,ft as p,k as m,nt as h,tt as g,v as _}from"./vendor-chart-kBsXB1rh.js";import{n as v,r as y,t as b}from"./select-leWGa1qy.js";import{t as x}from"./upload-DFnNkCSJ.js";import{t as S}from"./tooltip-Bg-5iX0y.js";import{t as C}from"./image-D2Uc31X4.js";import{t as w}from"./alert-Opv77n_G.js";import{t as T}from"./drawer-VR-pZKxs.js";import{t as E}from"./input-number-CjZlVSMZ.js";import{t as D}from"./switch-DJBjdzV-.js";import{_n as O,bn as k,cn as A,dn as j,fn as M,gn as ee,hn as N,ln as P,mn as F,pn as I,yn as L}from"./constants-BqvGY8Qp.js";import{A as R,Ht as te,Kt as ne,Ut as re,Vr as z,Vt as ie,Wr as B,Wt as V,ei as H,en as U,fi as W,ti as G,tr as K,vn as q}from"./index-DPT0LY_a.js";import{t as J}from"./index.es-BF0roIeI.js";import{t as Y}from"./CopyToClipboard-BPv_hKe6.js";import{t as X}from"./ImagePreview-DiItKL-y.js";import{n as ae}from"./taskDrawerMixin-CfysS2FH.js";import{t as oe}from"./Consumption-C6c-vSv0.js";import{i as Z,n as se,t as ce}from"./pagination-CUnmIqY0.js";import{t as le}from"./ApiCodeButton-Cdz-Fy3S.js";import{t as ue}from"./BotPlaceholder-60_H2JxQ.js";import{t as de}from"./NoTasks-BUMSVlPF.js";import{t as fe}from"./PromptTextarea-Dfu-o_C6.js";import{t as pe}from"./ImageWrapper-CxRidcAh.js";var me=i({name:`LayoutSeedream`,components:{ElDrawer:T,ElButton:W,FontAwesomeIcon:J},mixins:[ae]}),he={class:`main flex flex-row flex-1`},ge={class:`config w-[320px] h-full overflow-y-auto bg-[var(--app-sidebar-bg)] border-r border-[var(--app-border-subtle)]`},_e={class:`result h-full p-6 flex-1 flex flex-col bg-[var(--app-content-bg)]`};function ve(n,r,i,a,o,l){let u=h(`font-awesome-icon`),f=h(`el-button`),m=h(`el-drawer`);return c(),e(`div`,he,[t(`div`,ge,[g(n.$slots,`config`,{},void 0,!0)]),t(`div`,_e,[g(n.$slots,`result`,{},void 0,!0)]),p(s(f,{circle:``,class:`menu`,onClick:r[0]||=e=>n.drawer=!0},{default:d(()=>[s(u,{icon:`fa-solid fa-magic`})]),_:1},512),[[_,!n.tasksEmpty]]),s(m,{modelValue:n.drawer,"onUpdate:modelValue":r[1]||=e=>n.drawer=e,direction:`ltr`,"with-header":!1,size:`340px`,class:`drawer`},{default:d(()=>[g(n.$slots,`config`,{},void 0,!0)]),_:3},8,[`modelValue`])])}var ye=R(me,[[`render`,ve],[`__scopeId`,`data-v-2a1715d6`]]),be=i({name:`SeedreamPromptInput`,components:{PromptTextarea:fe},computed:{prompt:{get(){return this.$store.state.seedream?.config?.prompt},set(e){this.$store.commit(`seedream/setConfig`,{...this.$store.state.seedream?.config,prompt:e})}}},mounted(){this.prompt||=``}});function xe(e,t,n,r,i,a){let s=h(`prompt-textarea`);return c(),o(s,{modelValue:e.prompt,"onUpdate:modelValue":t[0]||=t=>e.prompt=t,title:e.$t(`seedream.name.prompt`),info:e.$t(`seedream.description.prompt`),placeholder:e.$t(`seedream.placeholder.prompt`)},null,8,[`modelValue`,`title`,`info`,`placeholder`])}var Se=R(be,[[`render`,xe]]),Ce={image:!0,imageRequired:!1,sizeTiers:[`1K`,`2K`,`3K`,`4K`],sizeAdaptive:!0,sizePixel:!0,sizePixelDefault:void 0,groupGeneration:!1,seed:!1,guidanceScale:!1,outputFormat:!1,tools:!1};function Q(e){switch(e){case F:return{image:!0,imageRequired:!1,sizeTiers:[`2K`,`3K`,`4K`],sizeAdaptive:!0,sizePixel:!0,groupGeneration:!0,seed:!1,guidanceScale:!1,outputFormat:!0,tools:!0};case I:return{image:!0,imageRequired:!1,sizeTiers:[`2K`,`4K`],sizeAdaptive:!0,sizePixel:!0,groupGeneration:!0,seed:!1,guidanceScale:!1,outputFormat:!1,tools:!1};case M:return{image:!0,imageRequired:!1,sizeTiers:[`1K`,`2K`,`4K`],sizeAdaptive:!0,sizePixel:!0,groupGeneration:!0,seed:!1,guidanceScale:!1,outputFormat:!1,tools:!1};case j:return{image:!1,imageRequired:!1,sizeTiers:[],sizeAdaptive:!1,sizePixel:!0,sizePixelDefault:`1024x1024`,groupGeneration:!1,seed:!0,guidanceScale:!0,guidanceScaleDefault:P[j],outputFormat:!1,tools:!1};case N:return{image:!0,imageRequired:!0,sizeTiers:[],sizeAdaptive:!1,sizePixel:!0,sizePixelDefault:`1024x1024`,groupGeneration:!1,seed:!1,guidanceScale:!0,guidanceScaleDefault:P[N],outputFormat:!1,tools:!1};default:return Ce}}var we=[`1K`,`2K`,`3K`,`4K`];function Te(e,t){if(!e)return[];let n=t.model??e.model;if(!n)return[];let r=Q(n),i=[];Array.isArray(e.image)&&e.image.length>0&&!r.image&&i.push({field:`image`,i18nLabel:`seedream.name.imageUrls`});let a=typeof e.size==`string`?e.size:void 0;if(a){let e=a.toUpperCase();(we.includes(e)&&!r.sizeTiers.includes(e)||a===`adaptive`&&!r.sizeAdaptive)&&i.push({field:`size`,i18nLabel:`seedream.name.size`})}return e.sequential_image_generation===`auto`&&!r.groupGeneration&&i.push({field:`sequential_image_generation`,i18nLabel:`seedream.name.maxImages`}),e.seed!==void 0&&e.seed!==null&&!r.seed&&i.push({field:`seed`,i18nLabel:`seedream.name.seed`}),e.guidance_scale!==void 0&&e.guidance_scale!==null&&!r.guidanceScale&&i.push({field:`guidance_scale`,i18nLabel:`seedream.name.guidanceScale`}),e.output_format&&!r.outputFormat&&i.push({field:`output_format`,i18nLabel:`seedream.name.outputFormat`}),Array.isArray(e.tools)&&e.tools.length>0&&!r.tools&&i.push({field:`tools`,i18nLabel:`seedream.name.tools`}),i}function Ee(e,t,n){let r={...e},i=Q(n.model??e.model);for(let e of t)switch(e.field){case`image`:delete r.image;break;case`size`:i.sizePixelDefault?r.size=i.sizePixelDefault:delete r.size;break;case`sequential_image_generation`:r.sequential_image_generation=`disabled`,delete r.sequential_image_generation_options;break;case`seed`:delete r.seed;break;case`guidance_scale`:delete r.guidance_scale;break;case`output_format`:delete r.output_format;break;case`tools`:delete r.tools;break}return r}var De=i({name:`SeedreamImageInput`,components:{ElUpload:x,ElButton:W,InfoIcon:Z,ImagePreview:X,FontAwesomeIcon:J},mixins:[V,te],data(){return{fileList:[],uploadUrl:B()+`/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.seedream?.config?.image},model(){return this.$store.state.seedream?.config?.model},supported(){return Q(this.model).image}},watch:{value:{immediate:!0,handler(e){if(this.suppressWatch)return;if(!e||e.length===0){let e=(this.fileList||[]).filter(e=>!e?.response?.file_url);this.fileList=e.length?e:[];return}let t=[];e.forEach(e=>{let n=this.fileList.find(t=>t?.response?.file_url===e||t?.url===e);n?t.push(n):t.push({name:e.split(`/`).pop()||e,url:e,status:`success`,percentage:100,response:{file_url:e}})}),(this.fileList||[]).filter(e=>!e?.response?.file_url).forEach(e=>{t.some(t=>t===e||t?.url===e?.url||t?.response?.file_url===e?.response?.file_url)||t.push(e)}),this.fileList=t}}},methods:{onChange(e){if(!e?.url&&e?.raw)try{e.url=URL.createObjectURL(e.raw)}catch{}},onRemove(e){if(e?.url&&typeof e.url==`string`&&e.url.startsWith(`blob:`))try{URL.revokeObjectURL(e.url)}catch{}this.onSetImages()},onExceed(){G.warning(this.$t(`seedream.message.uploadImageExceed`))},onError(){G.error(this.$t(`seedream.message.uploadImageError`))},onSetImages(){let e=this.urls;this.suppressWatch=!0,this.$store.commit(`seedream/setConfig`,{...this.$store.state.seedream?.config,image:e}),this.$nextTick(()=>{this.suppressWatch=!1})},async onSuccess(e,t){e?.file_url&&(t.url=e.file_url,t.response=e),this.onSetImages()},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.onSetImages()}}}),Oe={key:0},ke={class:`field`},Ae={class:`label`},je={class:`box`},Me={class:`title font-bold`},Ne={class:`value`},Pe={class:`file-list mt-2 flex flex-wrap gap-[10px]`};function Fe(r,i,u,p,g,_){let v=h(`info-icon`),y=h(`font-awesome-icon`),b=h(`el-button`),x=h(`el-upload`),S=h(`image-preview`);return r.supported?(c(),e(`div`,Oe,[t(`div`,ke,[t(`div`,Ae,[t(`div`,je,[t(`h2`,Me,n(r.$t(`seedream.name.imageUrls`)),1),s(v,{content:r.$t(`seedream.description.imageUrls`),class:`info`},null,8,[`content`])])]),t(`div`,Ne,[s(x,{ref:`uploader`,"file-list":r.fileList,"onUpdate:fileList":i[0]||=e=>r.fileList=e,accept:`.png,.jpg,.jpeg,.gif,.bmp,.webp`,name:`file`,limit:14,multiple:!0,"show-file-list":!1,action:r.uploadUrl,"on-exceed":r.onExceed,"on-error":r.onError,"on-success":r.onSuccess,"on-change":r.onChange,"on-remove":r.onRemove,headers:r.headers},{default:d(()=>[s(b,{size:`small`,type:`primary`,round:``},{default:d(()=>[s(y,{icon:`fa-solid fa-upload`,class:`mr-1`}),a(` `+n(r.$t(`seedream.button.uploadImageUrls`)),1)]),_:1})]),_:1},8,[`file-list`,`action`,`on-exceed`,`on-error`,`on-success`,`on-change`,`on-remove`,`headers`])])]),t(`div`,Pe,[(c(!0),e(l,null,f(r.fileList,(e,t)=>(c(),o(S,{key:e.uid||e?.response?.file_url||e.url||t,url:e.url||e?.response?.file_url,name:e.name,percentage:e.percentage,onRemove:n=>r.onRemovePreview(t,e)},null,8,[`url`,`name`,`percentage`,`onRemove`]))),128))])])):m(``,!0)}var Ie=R(De,[[`render`,Fe],[`__scopeId`,`data-v-6ef4c2e4`]]),Le=i({name:`SeedreamModelSelector`,components:{ElSelect:y,ElOption:b,InfoIcon:Z},data(){return{revertKey:0,options:[{value:F,label:this.$t(`seedream.model.seedream50`)},{value:I,label:this.$t(`seedream.model.seedream45`)},{value:M,label:this.$t(`seedream.model.seedream40`)},{value:j,label:this.$t(`seedream.model.seedream30t2i`)},{value:N,label:this.$t(`seedream.model.seededit30i2i`)}]}},computed:{value(){return this.$store.state.seedream?.config?.model}},mounted(){this.value||this.applyModel(A)},methods:{async onChange(e){let t=this.$store.state.seedream?.config||{},n=Te(t,{model:e});if(n.length===0){this.applyModel(e);return}let r=n.map(e=>this.$t(e.i18nLabel)).join(`、`);try{await H.confirm(this.$t(`seedream.message.featureNotSupportedBody`,{fields:r}),this.$t(`seedream.message.featureNotSupportedTitle`),{confirmButtonText:this.$t(`seedream.button.confirmContinue`),cancelButtonText:this.$t(`seedream.button.cancelSwitch`),type:`warning`});let i=Ee({...t,model:e},n,{model:e});this.$store.commit(`seedream/setConfig`,i),G.success(this.$t(`seedream.message.featureRemovedNotice`,{fields:r}))}catch{this.revertKey+=1}},applyModel(e){this.$store.commit(`seedream/setConfig`,{...this.$store.state.seedream?.config,model:e})}}}),Re={class:`field`},ze={class:`label`},Be={class:`box`},Ve={class:`title font-bold`};function He(r,i,a,u,p,m){let g=h(`info-icon`),_=h(`el-option`),v=h(`el-select`);return c(),e(`div`,Re,[t(`div`,ze,[t(`div`,Be,[t(`h2`,Ve,n(r.$t(`seedream.name.model`)),1),s(g,{content:r.$t(`seedream.description.model`),class:`info`},null,8,[`content`])])]),(c(),o(v,{key:r.revertKey,"model-value":r.value,class:`value`,placeholder:r.$t(`seedream.placeholder.select`),onChange:r.onChange},{default:d(()=>[(c(!0),e(l,null,f(r.options,e=>(c(),o(_,{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:1},8,[`model-value`,`placeholder`,`onChange`]))])}var Ue=R(Le,[[`render`,He],[`__scopeId`,`data-v-8892a12c`]]),We=i({name:`SeedreamSizeSelector`,components:{ElSelect:y,ElOption:b,ElOptionGroup:v,InfoIcon:Z},data(){return{SEEDREAM_SIZE_ADAPTIVE:L,pixelOptions:O}},computed:{model(){return this.$store.state.seedream?.config?.model},capabilities(){return Q(this.model)},value:{get(){return this.$store.state.seedream?.config?.size},set(e){this.$store.commit(`seedream/setConfig`,{...this.$store.state.seedream?.config,size:e})}}},watch:{model:{immediate:!0,handler(){if(this.value)return;let e=this.capabilities;e.sizeTiers.length?this.value=e.sizeTiers.includes(`2K`)?`2K`:e.sizeTiers[0]:e.sizePixelDefault&&(this.value=e.sizePixelDefault)}}}}),Ge={class:`field`},Ke={class:`label`},qe={class:`box`},Je={class:`title font-bold`};function Ye(r,i,a,u,p,g){let _=h(`info-icon`),v=h(`el-option`),y=h(`el-option-group`),b=h(`el-select`);return c(),e(`div`,Ge,[t(`div`,Ke,[t(`div`,qe,[t(`h2`,Je,n(r.$t(`seedream.name.size`)),1),s(_,{content:r.$t(`seedream.description.size`),class:`info`},null,8,[`content`])])]),s(b,{modelValue:r.value,"onUpdate:modelValue":i[0]||=e=>r.value=e,class:`value`,placeholder:r.$t(`seedream.placeholder.size`),filterable:``,"allow-create":``,"default-first-option":``},{default:d(()=>[r.capabilities.sizeTiers.length?(c(),o(y,{key:0,label:r.$t(`seedream.size.group.tier`)},{default:d(()=>[(c(!0),e(l,null,f(r.capabilities.sizeTiers,e=>(c(),o(v,{key:e,label:e,value:e},null,8,[`label`,`value`]))),128))]),_:1},8,[`label`])):m(``,!0),r.capabilities.sizeAdaptive?(c(),o(y,{key:1,label:r.$t(`seedream.size.group.adaptive`)},{default:d(()=>[(c(),o(v,{key:r.SEEDREAM_SIZE_ADAPTIVE,label:r.$t(`seedream.size.adaptive`),value:r.SEEDREAM_SIZE_ADAPTIVE},null,8,[`label`,`value`]))]),_:1},8,[`label`])):m(``,!0),s(y,{label:r.$t(`seedream.size.group.pixel`)},{default:d(()=>[(c(!0),e(l,null,f(r.pixelOptions,e=>(c(),o(v,{key:e.value,label:`${e.value} (${e.ratio})`,value:e.value},null,8,[`label`,`value`]))),128))]),_:1},8,[`label`])]),_:1},8,[`modelValue`,`placeholder`])])}var Xe=R(We,[[`render`,Ye],[`__scopeId`,`data-v-dd7bd021`]]),Ze=i({name:`SeedreamMaxImagesSelector`,components:{ElInputNumber:E,InfoIcon:Z},computed:{config(){return this.$store.state.seedream?.config||{}},supported(){return Q(this.config?.model).groupGeneration},referenceImageCount(){let e=this.config?.image;return Array.isArray(e)?e.length:0},effectiveMax(){let e=15-this.referenceImageCount;return Math.max(1,Math.min(15,e))},value:{get(){let e=this.config?.sequential_image_generation_options?.max_images;return typeof e==`number`&&e>=1?e:1},set(e){let t={...this.config||{}},n=Math.max(1,Math.min(this.effectiveMax,Math.floor(e||1)));n>1?(t.sequential_image_generation=`auto`,t.sequential_image_generation_options={...t.sequential_image_generation_options||{},max_images:n}):(t.sequential_image_generation=`disabled`,t.sequential_image_generation_options&&delete t.sequential_image_generation_options),this.$store.commit(`seedream/setConfig`,t)}}},watch:{effectiveMax(e){this.value>e&&(this.value=e)}}}),Qe={key:0,class:`field`},$e={class:`label`},et={class:`box`},tt={class:`title font-bold`},nt={class:`value`};function rt(r,i,a,o,l,u){let d=h(`info-icon`),f=h(`el-input-number`);return r.supported?(c(),e(`div`,Qe,[t(`div`,$e,[t(`div`,et,[t(`h2`,tt,n(r.$t(`seedream.name.maxImages`)),1),s(d,{content:r.$t(`seedream.description.maxImages`),class:`info`},null,8,[`content`])])]),t(`div`,nt,[s(f,{modelValue:r.value,"onUpdate:modelValue":i[0]||=e=>r.value=e,min:1,max:r.effectiveMax,step:1,size:`default`,"controls-position":`right`,class:`counter`},null,8,[`modelValue`,`max`])])])):m(``,!0)}var it=R(Ze,[[`render`,rt],[`__scopeId`,`data-v-f079fd20`]]),at=i({name:`SeedreamOutputFormatSelector`,components:{ElSelect:y,ElOption:b,InfoIcon:Z},data(){return{options:[...ee]}},computed:{config(){return this.$store.state.seedream?.config||{}},supported(){return Q(this.config?.model).outputFormat},value:{get(){return this.config?.output_format},set(e){let t={...this.config||{}};t.output_format=e,this.$store.commit(`seedream/setConfig`,t)}}}}),ot={key:0,class:`field`},st={class:`label`},ct={class:`box`},lt={class:`title font-bold`};function ut(r,i,a,u,p,g){let _=h(`info-icon`),v=h(`el-option`),y=h(`el-select`);return r.supported?(c(),e(`div`,ot,[t(`div`,st,[t(`div`,ct,[t(`h2`,lt,n(r.$t(`seedream.name.outputFormat`)),1),s(_,{content:r.$t(`seedream.description.outputFormat`),class:`info`},null,8,[`content`])])]),s(y,{modelValue:r.value,"onUpdate:modelValue":i[0]||=e=>r.value=e,class:`value`,placeholder:r.$t(`seedream.placeholder.select`)},{default:d(()=>[(c(!0),e(l,null,f(r.options,e=>(c(),o(v,{key:e,label:e.toUpperCase(),value:e},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`])])):m(``,!0)}var dt=R(at,[[`render`,ut],[`__scopeId`,`data-v-69ea4c07`]]),ft=i({name:`SeedreamSeedInput`,components:{ElInputNumber:E,InfoIcon:Z},computed:{config(){return this.$store.state.seedream?.config||{}},supported(){return Q(this.config?.model).seed},value:{get(){let e=this.config?.seed;return typeof e==`number`?e:-1},set(e){let t={...this.config||{}};t.seed=typeof e==`number`&&Number.isInteger(e)?e:-1,this.$store.commit(`seedream/setConfig`,t)}}}}),pt={key:0,class:`field`},mt={class:`label`},ht={class:`box`},gt={class:`title font-bold`},_t={class:`value`};function vt(r,i,a,o,l,u){let d=h(`info-icon`),f=h(`el-input-number`);return r.supported?(c(),e(`div`,pt,[t(`div`,mt,[t(`div`,ht,[t(`h2`,gt,n(r.$t(`seedream.name.seed`)),1),s(d,{content:r.$t(`seedream.description.seed`),class:`info`},null,8,[`content`])])]),t(`div`,_t,[s(f,{modelValue:r.value,"onUpdate:modelValue":i[0]||=e=>r.value=e,min:-1,max:2147483647,step:1,size:`default`,"controls-position":`right`,class:`counter`},null,8,[`modelValue`])])])):m(``,!0)}var yt=R(ft,[[`render`,vt],[`__scopeId`,`data-v-10cdc1e0`]]),bt=i({name:`SeedreamGuidanceScaleInput`,components:{ElInputNumber:E,InfoIcon:Z},computed:{config(){return this.$store.state.seedream?.config||{}},supported(){return Q(this.config?.model).guidanceScale},defaultValue(){return Q(this.config?.model).guidanceScaleDefault??2.5},value:{get(){let e=this.config?.guidance_scale;return typeof e==`number`?e:this.defaultValue},set(e){let t={...this.config||{}};t.guidance_scale=typeof e==`number`&&e>=1&&e<=10?e:this.defaultValue,this.$store.commit(`seedream/setConfig`,t)}}}}),xt={key:0,class:`field`},St={class:`label`},Ct={class:`box`},wt={class:`title font-bold`},Tt={class:`value`};function Et(r,i,a,o,l,u){let d=h(`info-icon`),f=h(`el-input-number`);return r.supported?(c(),e(`div`,xt,[t(`div`,St,[t(`div`,Ct,[t(`h2`,wt,n(r.$t(`seedream.name.guidanceScale`)),1),s(d,{content:r.$t(`seedream.description.guidanceScale`),class:`info`},null,8,[`content`])])]),t(`div`,Tt,[s(f,{modelValue:r.value,"onUpdate:modelValue":i[0]||=e=>r.value=e,min:1,max:10,step:.1,precision:1,size:`default`,"controls-position":`right`,class:`counter`},null,8,[`modelValue`])])])):m(``,!0)}var Dt=R(bt,[[`render`,Et],[`__scopeId`,`data-v-7386f064`]]),Ot=i({name:`SeedreamWatermarkSwitch`,components:{ElSwitch:D,InfoIcon:Z},computed:{value:{get(){let e=this.$store.state.seedream?.config?.watermark;return e===void 0?!1:!!e},set(e){this.$store.commit(`seedream/setConfig`,{...this.$store.state.seedream?.config,watermark:e})}}}}),kt={class:`field`},At={class:`label`},jt={class:`box`},Mt={class:`title font-bold`},Nt={class:`value`};function Pt(r,i,a,o,l,u){let d=h(`info-icon`),f=h(`el-switch`);return c(),e(`div`,kt,[t(`div`,At,[t(`div`,jt,[t(`h2`,Mt,n(r.$t(`seedream.name.watermark`)),1),s(d,{content:r.$t(`seedream.description.watermark`),class:`info`},null,8,[`content`])])]),t(`div`,Nt,[s(f,{modelValue:r.value,"onUpdate:modelValue":i[0]||=e=>r.value=e},null,8,[`modelValue`])])])}var Ft=i({name:`SeedreamConfigPanel`,components:{ElButton:W,FontAwesomeIcon:J,PromptInput:Se,Consumption:oe,ImageInput:Ie,ModelSelector:Ue,SizeSelector:Xe,MaxImagesSelector:it,OutputFormatSelector:dt,SeedInput:yt,GuidanceScaleInput:Dt,WatermarkSwitch:R(Ot,[[`render`,Pt],[`__scopeId`,`data-v-9e2abf0f`]])},emits:[`generate`],computed:{config(){return this.$store.state.seedream?.config},consumption(){let e={...this.config||{}},t=Array.isArray(e?.image)&&e.image.length>0,n=e?.sequential_image_generation===`auto`?Math.max(1,Math.floor(e?.sequential_image_generation_options?.max_images||1)):1;return ne({...e,action:t?`edit`:`generate`,model:k(e?.model),count:n},this.service?.cost)},service(){return this.$store.state.seedream?.service}},methods:{onGenerate(){this.$emit(`generate`)}}}),It={class:`flex flex-col h-full`},Lt={class:`flex-1 overflow-y-auto p-5`},Rt={class:`flex flex-col items-center justify-center px-5 pb-5`};function zt(r,i,o,l,u,f){let p=h(`model-selector`),m=h(`size-selector`),g=h(`max-images-selector`),_=h(`output-format-selector`),v=h(`seed-input`),y=h(`guidance-scale-input`),b=h(`watermark-switch`),x=h(`prompt-input`),S=h(`image-input`),C=h(`consumption`),w=h(`font-awesome-icon`),T=h(`el-button`);return c(),e(`div`,It,[t(`div`,Lt,[s(p,{class:`mb-4`}),s(m,{class:`mb-4`}),s(g,{class:`mb-4`}),s(_,{class:`mb-4`}),s(v,{class:`mb-4`}),s(y,{class:`mb-4`}),s(b,{class:`mb-4`}),s(x,{class:`mb-4`}),s(S,{class:`mb-4`})]),t(`div`,Rt,[s(C,{value:r.consumption,service:r.service},null,8,[`value`,`service`]),s(T,{type:`primary`,class:`btn w-full`,round:``,onClick:r.onGenerate},{default:d(()=>[s(w,{icon:`fa-solid fa-magic`,class:`mr-2`}),a(` `+n(r.$t(`seedream.button.generate`)),1)]),_:1},8,[`onClick`])])])}var Bt=R(Ft,[[`render`,zt]]),Vt=i({name:`SeedreamTaskPreview`,components:{ElImage:C,CopyToClipboard:Y,FontAwesomeIcon:J,ElAlert:w,ImageWrapper:pe,ElButton:W,ElTooltip:S,ImagePreview:X,ApiCodeButton:le},props:{modelValue:{type:Object,required:!0}},computed:{isEdit(){return Array.isArray(this.modelValue?.request?.image)&&(this.modelValue?.request?.image?.length||0)>0},images(){let e=[];return Array.isArray(this.modelValue?.response?.data)&&this.modelValue?.response?.data?.forEach(t=>{e.push(t)}),e}},methods:{shortModel(e){return k(e)||e},onEdit(e){if(!e)return;console.debug(`Edit image:`,e);let t={...this.$store.state.seedream?.config||{}};t.image=[e],this.$store.commit(`seedream/setConfig`,t)}}}),Ht={class:`preview`},Ut={class:`left`},Wt={class:`main`},Gt={class:`bot`},Kt={class:`datetime`},qt={class:`info`},Jt={key:0,class:`flex justify-start items-center gap-2 mt-2 w-full overflow-x-auto`},Yt={key:1,class:`prompt mt-2`},Xt={key:0},Zt={key:0,class:r({content:!0})},Qt={class:`text-[var(--el-text-color-regular)] text-xs mb-0`},$t={key:1,class:r({content:!0,failed:!0})},en={class:`flex justify-start items-center gap-4 w-full overflow-x-auto`},tn={class:r({operations:!0,"mt-2":!0,"mb-2":!0})},nn={key:0,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},rn={key:1,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},an={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},on={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},sn={key:2,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},cn={key:3,class:`text-[var(--el-text-color-regular)] text-xs mb-0`},$={key:2,class:r({content:!0})},ln={key:0,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},un={key:1,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},dn={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},fn={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},pn={key:2,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},mn={key:3,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},hn={key:4,class:`text-[var(--el-text-color-regular)] text-xs mb-0`},gn={key:3,class:r({content:!0})},_n={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},vn={key:0,class:`text-[var(--el-text-color-regular)] text-xs mb-0`};function yn(r,i,p,g,_,v){let y=h(`el-image`),b=h(`image-preview`),x=h(`font-awesome-icon`),S=h(`copy-to-clipboard`),C=h(`el-alert`),w=h(`image-wrapper`),T=h(`el-button`),E=h(`el-tooltip`),D=h(`api-code-button`);return c(),e(`div`,Ht,[t(`div`,Ut,[s(y,{src:`https://cdn.acedata.cloud/9egrbn.png`,class:`avatar`})]),t(`div`,Wt,[t(`div`,Gt,[a(n(r.$t(`seedream.name.seedreamBot`))+` `,1),t(`span`,Kt,n(r.$dayjs.format(``+new Date(parseFloat((r.modelValue?.created_at||``).toString())*1e3))),1)]),t(`div`,qt,[Array.isArray(r.modelValue?.request?.image)&&r.modelValue?.request?.image.length>0?(c(),e(`div`,Jt,[(c(!0),e(l,null,f(r.modelValue?.request?.image,(e,t)=>(c(),o(b,{key:t,url:e,name:`image-${t+1}`,closable:!1},null,8,[`url`,`name`]))),128))])):m(``,!0),r.modelValue?.request?.prompt?(c(),e(`p`,Yt,[a(n(r.modelValue?.request?.prompt)+` `,1),r.modelValue?.response?m(``,!0):(c(),e(`span`,Xt,` - (`+n(r.$t(`seedream.status.pending`))+`) `,1))])):m(``,!0)]),r.modelValue?.response?r.modelValue?.response?.success===!0?(c(),e(`div`,$t,[t(`div`,en,[(c(!0),e(l,null,f(r.images,(e,t)=>(c(),o(w,{key:t,src:e?.image_url,"raw-src":e?.image_url},null,8,[`src`,`raw-src`]))),128))]),t(`div`,tn,[s(E,{class:`box-item`,effect:`dark`,content:r.$t(`common.button.edit`),placement:`top-start`},{default:d(()=>[s(T,{type:`info`,size:`small`,class:`btn-action`,onClick:i[0]||=u(e=>r.onEdit(r.images?.[0]?.image_url),[`stop`])},{default:d(()=>[a(n(r.$t(`common.button.edit`)),1)]),_:1})]),_:1},8,[`content`]),s(D,{path:`/seedream/images`,body:r.modelValue?.request},null,8,[`body`])]),s(C,{closable:!1,class:`mt-2 success`},{default:d(()=>[r.modelValue?.request?.model?(c(),e(`p`,nn,[s(x,{icon:`fa-solid fa-cube`,class:`mr-1`}),a(` `+n(r.$t(`seedream.name.model`))+`: `+n(r.shortModel(r.modelValue?.request?.model)),1)])):m(``,!0),r.modelValue?.request?.size?(c(),e(`p`,rn,[s(x,{icon:`fa-solid fa-image`,class:`mr-1`}),a(` `+n(r.$t(`seedream.name.size`))+`: `+n(r.modelValue?.request?.size),1)])):m(``,!0),t(`p`,an,[s(x,{icon:`fa-solid fa-bolt`,class:`mr-1`}),a(` `+n(r.$t(`seedream.name.task`))+`: `+n(r.isEdit?r.$t(`seedream.name.edits`):r.$t(`seedream.name.generate`)),1)]),t(`p`,on,[s(x,{icon:`fa-solid fa-magic`,class:`mr-1`}),a(` `+n(r.$t(`seedream.name.taskId`))+`: `+n(r.modelValue?.id)+` `,1),s(S,{content:r.modelValue?.id,class:`btn-copy inline-block`},null,8,[`content`])]),r.modelValue?.elapsed?(c(),e(`p`,sn,[s(x,{icon:`fa-solid fa-clock`,class:`mr-1`}),a(` `+n(r.$t(`seedream.name.elapsed`))+`: `+n(r.modelValue?.elapsed?.toFixed(2))+`s `,1)])):m(``,!0),r.modelValue?.response?.trace_id?(c(),e(`p`,cn,[s(x,{icon:`fa-solid fa-hashtag`,class:`mr-1`}),a(` `+n(r.$t(`seedream.name.traceId`))+`: `+n(r.modelValue?.response?.trace_id)+` `,1),s(S,{content:r.modelValue?.response?.trace_id,class:`btn-copy inline-block`},null,8,[`content`])])):m(``,!0)]),_:1})])):r.modelValue?.response?.success===!1?(c(),e(`div`,$,[s(C,{closable:!1,class:`failure`},{template:d(()=>[s(x,{icon:`fa-solid fa-exclamation-triangle`,class:`mr-1`}),a(` `+n(r.$t(`seedream.name.failure`)),1)]),default:d(()=>[r.modelValue?.request?.model?(c(),e(`p`,ln,[s(x,{icon:`fa-solid fa-cube`,class:`mr-1`}),a(` `+n(r.$t(`seedream.name.model`))+`: `+n(r.shortModel(r.modelValue?.request?.model)),1)])):m(``,!0),r.modelValue?.request?.size?(c(),e(`p`,un,[s(x,{icon:`fa-solid fa-image`,class:`mr-1`}),a(` `+n(r.$t(`seedream.name.size`))+`: `+n(r.modelValue?.request?.size),1)])):m(``,!0),t(`p`,dn,[s(x,{icon:`fa-solid fa-bolt`,class:`mr-1`}),a(` `+n(r.$t(`seedream.name.task`))+`: `+n(r.isEdit?r.$t(`seedream.name.edits`):r.$t(`seedream.name.generate`)),1)]),t(`p`,fn,[s(x,{icon:`fa-solid fa-magic`,class:`mr-1`}),a(` `+n(r.$t(`seedream.name.taskId`))+`: `+n(r.modelValue?.id)+` `,1),s(S,{content:r.modelValue?.id,class:`btn-copy`},null,8,[`content`])]),r.modelValue?.response?.error?.message?(c(),e(`p`,pn,[s(x,{icon:`fa-solid fa-circle-info`,class:`mr-1`}),a(` `+n(r.$t(`seedream.name.failureReason`))+`: `+n(r.modelValue?.response?.error?.message)+` `,1),s(S,{content:r.modelValue?.response?.error?.message,class:`btn-copy`},null,8,[`content`])])):m(``,!0),r.modelValue?.elapsed?(c(),e(`p`,mn,[s(x,{icon:`fa-solid fa-clock`,class:`mr-1`}),a(` `+n(r.$t(`seedream.name.elapsed`))+`: `+n(r.modelValue?.elapsed?.toFixed(2))+`s `,1)])):m(``,!0),r.modelValue?.response?.trace_id?(c(),e(`p`,hn,[s(x,{icon:`fa-solid fa-hashtag`,class:`mr-1`}),a(` `+n(r.$t(`seedream.name.traceId`))+`: `+n(r.modelValue?.response?.trace_id)+` `,1),s(S,{content:r.modelValue?.response?.trace_id,class:`btn-copy`},null,8,[`content`])])):m(``,!0)]),_:1})])):(c(),e(`div`,gn,[s(C,{closable:!1,class:`info`},{template:d(()=>[s(x,{icon:`fa-solid fa-circle-info`,class:`mr-1`}),a(` `+n(r.$t(`seedream.name.status`)),1)]),default:d(()=>[t(`p`,_n,[s(x,{icon:`fa-solid fa-magic`,class:`mr-1`}),a(` `+n(r.$t(`seedream.name.taskId`))+`: `+n(r.modelValue?.id)+` `,1),s(S,{content:r.modelValue?.id,class:`btn-copy`},null,8,[`content`])]),r.modelValue?.response?.trace_id?(c(),e(`p`,vn,[s(x,{icon:`fa-solid fa-hashtag`,class:`mr-1`}),a(` `+n(r.$t(`seedream.name.traceId`))+`: `+n(r.modelValue?.response?.trace_id)+` `,1),s(S,{content:r.modelValue?.response?.trace_id,class:`btn-copy`},null,8,[`content`])])):m(``,!0)]),_:1})])):(c(),e(`div`,Zt,[s(C,{closable:!1,class:`info`},{template:d(()=>[s(x,{icon:`fa-regular fa-clock`,class:`mr-1`}),a(` `+n(r.$t(`seedream.status.pending`)),1)]),default:d(()=>[t(`p`,Qt,[s(x,{icon:`fa-solid fa-magic`,class:`mr-1`}),a(` `+n(r.$t(`seedream.name.taskId`))+`: `+n(r.modelValue?.id)+` `,1),s(S,{content:r.modelValue?.id,class:`btn-copy inline-block`},null,8,[`content`])])]),_:1})]))])])}var bn=i({name:`SeedreamRecentPanel`,components:{TaskPreview:R(Vt,[[`render`,yn],[`__scopeId`,`data-v-1b4654bc`]]),BotPlaceholder:ue,NoTasks:de,ScrollList:se},props:{loading:{type:Boolean,default:!1}},emits:[`reach-top`],computed:{tasks(){return{...this.$store.state.seedream?.tasks,items:this.$store.state.seedream?.tasks?.items?.slice()}}},methods:{getScrollElement(){return this.$refs.scrollList?.getScrollElement?.()}}}),xn={key:0},Sn={key:2,class:`w-full h-full flex items-center justify-center`};function Cn(t,n,r,i,a,u){let p=h(`bot-placeholder`),g=h(`task-preview`),_=h(`scroll-list`),v=h(`no-tasks`);return c(),e(l,null,[t.tasks?.items===void 0?(c(),e(`div`,xn,[s(p)])):t.tasks?.items?.length&&t.tasks?.items?.length>0?(c(),o(_,{key:1,ref:`scrollList`,class:`tasks h-full w-full overflow-y-auto`,loading:t.loading,onReachTop:n[0]||=e=>t.$emit(`reach-top`)},{default:d(()=>[(c(!0),e(l,null,f(t.tasks?.items,e=>(c(),o(g,{key:e.id,"model-value":e},null,8,[`model-value`]))),128))]),_:1},8,[`loading`])):m(``,!0),t.tasks?.items?.length===0?(c(),e(`div`,Sn,[s(v)])):m(``,!0)],64)}var wn=i({name:`SeedreamIndex`,components:{ConfigPanel:Bt,Layout:ye,RecentPanel:R(bn,[[`render`,Cn]])},mixins:[re],inject:[`initialized`],data(){return{task:void 0,job:0,loading:!1}},computed:{applicationsLoading(){return this.$store.state.seedream?.status?.getApplications===z.Request},tasksLoading(){return this.$store.state.seedream?.status?.getTasks===z.Request},credential(){return this.$store.state.seedream?.credential},config(){return this.$store.state.seedream?.config},application(){return this.$store.state.seedream?.application},tasks(){return this.$store.state.seedream?.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 ce({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(`seedream/getService`),console.debug(`end onGetService`)},async onGetApplication(){console.debug(`start onGetApplication`),await this.$store.dispatch(`seedream/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(`seedream/getTasks`,{limit:t,createdAtMin:n,createdAtMax:r})},async onGenerate(){if(!ie(this.uploadTracker,e=>this.$t(e),e=>G.warning(e)))return;let e={...this.config||{}};!(Array.isArray(e?.image)&&e.image.length>0)&&`image`in e&&delete e.image,e?.size||delete e.size;let t={...e,async:!0};if(!U())return;let n=this.credential?.token;if(!n){console.error(`no token specified`);return}G.info(this.$t(`seedream.message.startingTask`)),K(`seedream`,q.generate(t,{token:n})).then(()=>{G.success(this.$t(`seedream.message.startTaskSuccess`))}).catch(e=>{let t=e?.response?.data;t?.error?.code===`used_up`?G.error(this.$t(`seedream.message.usedUp`)):G.error(this.$t(`seedream.message.startTaskFailed`)+(t?.error?.message||``))}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})},getTasksScrollElement(){return this.$refs.recentPanel?.getScrollElement?.()}}});function Tn(e,t,n,r,i,a){let l=h(`config-panel`),u=h(`recent-panel`),f=h(`layout`);return c(),o(f,null,{config:d(()=>[s(l,{onGenerate:e.onGenerate},null,8,[`onGenerate`])]),result:d(()=>[s(u,{ref:`recentPanel`,loading:e.loading,onReachTop:e.onReachTop},null,8,[`loading`,`onReachTop`])]),_:1})}var En=R(wn,[[`render`,Tn]]);export{En as default};
|
|
1
|
+
import"./rolldown-runtime--c01j_DQ.js";import{A as e,D as t,Gt as n,Ht as r,I as i,N as a,O as o,P as s,Q as c,S as l,b as u,dt as d,et as f,ft as p,k as m,nt as h,tt as g,v as _}from"./vendor-chart-kBsXB1rh.js";import{n as v,r as y,t as b}from"./select-BMkecWJ3.js";import{t as x}from"./upload-BVKjQKBq.js";import{t as S}from"./tooltip-DW1XZtXG.js";import{t as C}from"./image-DsbwPTmm.js";import{t as w}from"./alert-BDvIuUu3.js";import{t as T}from"./drawer-B9vlF9-6.js";import{t as E}from"./input-number-Co-ZG8zL.js";import{t as D}from"./switch-D9jGUBnB.js";import{_n as O,bn as k,cn as A,dn as j,fn as M,gn as ee,hn as N,ln as P,mn as F,pn as I,yn as L}from"./constants-Bs-70rQx.js";import{A as R,Ht as te,Kt as ne,Ut as re,Vr as z,Vt as ie,Wr as B,Wt as V,ei as H,en as U,fi as W,ti as G,tr as K,vn as q}from"./index-BDvTozfe.js";import{t as J}from"./index.es-B8y6GOsn.js";import{t as Y}from"./CopyToClipboard-CdGWA3lV.js";import{t as X}from"./ImagePreview-8jJNA6v3.js";import{n as ae}from"./taskDrawerMixin-CfysS2FH.js";import{t as oe}from"./Consumption-B2gTsRAP.js";import{i as Z,n as se,t as ce}from"./pagination-BNew-8XN.js";import{t as le}from"./ApiCodeButton-WF_-U1A1.js";import{t as ue}from"./BotPlaceholder-BU4a0XLq.js";import{t as de}from"./NoTasks-C3tcHEtF.js";import{t as fe}from"./PromptTextarea-66psG0Ji.js";import{t as pe}from"./ImageWrapper-BF74hGuQ.js";var me=i({name:`LayoutSeedream`,components:{ElDrawer:T,ElButton:W,FontAwesomeIcon:J},mixins:[ae]}),he={class:`main flex flex-row flex-1`},ge={class:`config w-[320px] h-full overflow-y-auto bg-[var(--app-sidebar-bg)] border-r border-[var(--app-border-subtle)]`},_e={class:`result h-full p-6 flex-1 flex flex-col bg-[var(--app-content-bg)]`};function ve(n,r,i,a,o,l){let u=h(`font-awesome-icon`),f=h(`el-button`),m=h(`el-drawer`);return c(),e(`div`,he,[t(`div`,ge,[g(n.$slots,`config`,{},void 0,!0)]),t(`div`,_e,[g(n.$slots,`result`,{},void 0,!0)]),p(s(f,{circle:``,class:`menu`,onClick:r[0]||=e=>n.drawer=!0},{default:d(()=>[s(u,{icon:`fa-solid fa-magic`})]),_:1},512),[[_,!n.tasksEmpty]]),s(m,{modelValue:n.drawer,"onUpdate:modelValue":r[1]||=e=>n.drawer=e,direction:`ltr`,"with-header":!1,size:`340px`,class:`drawer`},{default:d(()=>[g(n.$slots,`config`,{},void 0,!0)]),_:3},8,[`modelValue`])])}var ye=R(me,[[`render`,ve],[`__scopeId`,`data-v-2a1715d6`]]),be=i({name:`SeedreamPromptInput`,components:{PromptTextarea:fe},computed:{prompt:{get(){return this.$store.state.seedream?.config?.prompt},set(e){this.$store.commit(`seedream/setConfig`,{...this.$store.state.seedream?.config,prompt:e})}}},mounted(){this.prompt||=``}});function xe(e,t,n,r,i,a){let s=h(`prompt-textarea`);return c(),o(s,{modelValue:e.prompt,"onUpdate:modelValue":t[0]||=t=>e.prompt=t,title:e.$t(`seedream.name.prompt`),info:e.$t(`seedream.description.prompt`),placeholder:e.$t(`seedream.placeholder.prompt`)},null,8,[`modelValue`,`title`,`info`,`placeholder`])}var Se=R(be,[[`render`,xe]]),Ce={image:!0,imageRequired:!1,sizeTiers:[`1K`,`2K`,`3K`,`4K`],sizeAdaptive:!0,sizePixel:!0,sizePixelDefault:void 0,groupGeneration:!1,seed:!1,guidanceScale:!1,outputFormat:!1,tools:!1};function Q(e){switch(e){case F:return{image:!0,imageRequired:!1,sizeTiers:[`2K`,`3K`,`4K`],sizeAdaptive:!0,sizePixel:!0,groupGeneration:!0,seed:!1,guidanceScale:!1,outputFormat:!0,tools:!0};case I:return{image:!0,imageRequired:!1,sizeTiers:[`2K`,`4K`],sizeAdaptive:!0,sizePixel:!0,groupGeneration:!0,seed:!1,guidanceScale:!1,outputFormat:!1,tools:!1};case M:return{image:!0,imageRequired:!1,sizeTiers:[`1K`,`2K`,`4K`],sizeAdaptive:!0,sizePixel:!0,groupGeneration:!0,seed:!1,guidanceScale:!1,outputFormat:!1,tools:!1};case j:return{image:!1,imageRequired:!1,sizeTiers:[],sizeAdaptive:!1,sizePixel:!0,sizePixelDefault:`1024x1024`,groupGeneration:!1,seed:!0,guidanceScale:!0,guidanceScaleDefault:P[j],outputFormat:!1,tools:!1};case N:return{image:!0,imageRequired:!0,sizeTiers:[],sizeAdaptive:!1,sizePixel:!0,sizePixelDefault:`1024x1024`,groupGeneration:!1,seed:!1,guidanceScale:!0,guidanceScaleDefault:P[N],outputFormat:!1,tools:!1};default:return Ce}}var we=[`1K`,`2K`,`3K`,`4K`];function Te(e,t){if(!e)return[];let n=t.model??e.model;if(!n)return[];let r=Q(n),i=[];Array.isArray(e.image)&&e.image.length>0&&!r.image&&i.push({field:`image`,i18nLabel:`seedream.name.imageUrls`});let a=typeof e.size==`string`?e.size:void 0;if(a){let e=a.toUpperCase();(we.includes(e)&&!r.sizeTiers.includes(e)||a===`adaptive`&&!r.sizeAdaptive)&&i.push({field:`size`,i18nLabel:`seedream.name.size`})}return e.sequential_image_generation===`auto`&&!r.groupGeneration&&i.push({field:`sequential_image_generation`,i18nLabel:`seedream.name.maxImages`}),e.seed!==void 0&&e.seed!==null&&!r.seed&&i.push({field:`seed`,i18nLabel:`seedream.name.seed`}),e.guidance_scale!==void 0&&e.guidance_scale!==null&&!r.guidanceScale&&i.push({field:`guidance_scale`,i18nLabel:`seedream.name.guidanceScale`}),e.output_format&&!r.outputFormat&&i.push({field:`output_format`,i18nLabel:`seedream.name.outputFormat`}),Array.isArray(e.tools)&&e.tools.length>0&&!r.tools&&i.push({field:`tools`,i18nLabel:`seedream.name.tools`}),i}function Ee(e,t,n){let r={...e},i=Q(n.model??e.model);for(let e of t)switch(e.field){case`image`:delete r.image;break;case`size`:i.sizePixelDefault?r.size=i.sizePixelDefault:delete r.size;break;case`sequential_image_generation`:r.sequential_image_generation=`disabled`,delete r.sequential_image_generation_options;break;case`seed`:delete r.seed;break;case`guidance_scale`:delete r.guidance_scale;break;case`output_format`:delete r.output_format;break;case`tools`:delete r.tools;break}return r}var De=i({name:`SeedreamImageInput`,components:{ElUpload:x,ElButton:W,InfoIcon:Z,ImagePreview:X,FontAwesomeIcon:J},mixins:[V,te],data(){return{fileList:[],uploadUrl:B()+`/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.seedream?.config?.image},model(){return this.$store.state.seedream?.config?.model},supported(){return Q(this.model).image}},watch:{value:{immediate:!0,handler(e){if(this.suppressWatch)return;if(!e||e.length===0){let e=(this.fileList||[]).filter(e=>!e?.response?.file_url);this.fileList=e.length?e:[];return}let t=[];e.forEach(e=>{let n=this.fileList.find(t=>t?.response?.file_url===e||t?.url===e);n?t.push(n):t.push({name:e.split(`/`).pop()||e,url:e,status:`success`,percentage:100,response:{file_url:e}})}),(this.fileList||[]).filter(e=>!e?.response?.file_url).forEach(e=>{t.some(t=>t===e||t?.url===e?.url||t?.response?.file_url===e?.response?.file_url)||t.push(e)}),this.fileList=t}}},methods:{onChange(e){if(!e?.url&&e?.raw)try{e.url=URL.createObjectURL(e.raw)}catch{}},onRemove(e){if(e?.url&&typeof e.url==`string`&&e.url.startsWith(`blob:`))try{URL.revokeObjectURL(e.url)}catch{}this.onSetImages()},onExceed(){G.warning(this.$t(`seedream.message.uploadImageExceed`))},onError(){G.error(this.$t(`seedream.message.uploadImageError`))},onSetImages(){let e=this.urls;this.suppressWatch=!0,this.$store.commit(`seedream/setConfig`,{...this.$store.state.seedream?.config,image:e}),this.$nextTick(()=>{this.suppressWatch=!1})},async onSuccess(e,t){e?.file_url&&(t.url=e.file_url,t.response=e),this.onSetImages()},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.onSetImages()}}}),Oe={key:0},ke={class:`field`},Ae={class:`label`},je={class:`box`},Me={class:`title font-bold`},Ne={class:`value`},Pe={class:`file-list mt-2 flex flex-wrap gap-[10px]`};function Fe(r,i,u,p,g,_){let v=h(`info-icon`),y=h(`font-awesome-icon`),b=h(`el-button`),x=h(`el-upload`),S=h(`image-preview`);return r.supported?(c(),e(`div`,Oe,[t(`div`,ke,[t(`div`,Ae,[t(`div`,je,[t(`h2`,Me,n(r.$t(`seedream.name.imageUrls`)),1),s(v,{content:r.$t(`seedream.description.imageUrls`),class:`info`},null,8,[`content`])])]),t(`div`,Ne,[s(x,{ref:`uploader`,"file-list":r.fileList,"onUpdate:fileList":i[0]||=e=>r.fileList=e,accept:`.png,.jpg,.jpeg,.gif,.bmp,.webp`,name:`file`,limit:14,multiple:!0,"show-file-list":!1,action:r.uploadUrl,"on-exceed":r.onExceed,"on-error":r.onError,"on-success":r.onSuccess,"on-change":r.onChange,"on-remove":r.onRemove,headers:r.headers},{default:d(()=>[s(b,{size:`small`,type:`primary`,round:``},{default:d(()=>[s(y,{icon:`fa-solid fa-upload`,class:`mr-1`}),a(` `+n(r.$t(`seedream.button.uploadImageUrls`)),1)]),_:1})]),_:1},8,[`file-list`,`action`,`on-exceed`,`on-error`,`on-success`,`on-change`,`on-remove`,`headers`])])]),t(`div`,Pe,[(c(!0),e(l,null,f(r.fileList,(e,t)=>(c(),o(S,{key:e.uid||e?.response?.file_url||e.url||t,url:e.url||e?.response?.file_url,name:e.name,percentage:e.percentage,onRemove:n=>r.onRemovePreview(t,e)},null,8,[`url`,`name`,`percentage`,`onRemove`]))),128))])])):m(``,!0)}var Ie=R(De,[[`render`,Fe],[`__scopeId`,`data-v-6ef4c2e4`]]),Le=i({name:`SeedreamModelSelector`,components:{ElSelect:y,ElOption:b,InfoIcon:Z},data(){return{revertKey:0,options:[{value:F,label:this.$t(`seedream.model.seedream50`)},{value:I,label:this.$t(`seedream.model.seedream45`)},{value:M,label:this.$t(`seedream.model.seedream40`)},{value:j,label:this.$t(`seedream.model.seedream30t2i`)},{value:N,label:this.$t(`seedream.model.seededit30i2i`)}]}},computed:{value(){return this.$store.state.seedream?.config?.model}},mounted(){this.value||this.applyModel(A)},methods:{async onChange(e){let t=this.$store.state.seedream?.config||{},n=Te(t,{model:e});if(n.length===0){this.applyModel(e);return}let r=n.map(e=>this.$t(e.i18nLabel)).join(`、`);try{await H.confirm(this.$t(`seedream.message.featureNotSupportedBody`,{fields:r}),this.$t(`seedream.message.featureNotSupportedTitle`),{confirmButtonText:this.$t(`seedream.button.confirmContinue`),cancelButtonText:this.$t(`seedream.button.cancelSwitch`),type:`warning`});let i=Ee({...t,model:e},n,{model:e});this.$store.commit(`seedream/setConfig`,i),G.success(this.$t(`seedream.message.featureRemovedNotice`,{fields:r}))}catch{this.revertKey+=1}},applyModel(e){this.$store.commit(`seedream/setConfig`,{...this.$store.state.seedream?.config,model:e})}}}),Re={class:`field`},ze={class:`label`},Be={class:`box`},Ve={class:`title font-bold`};function He(r,i,a,u,p,m){let g=h(`info-icon`),_=h(`el-option`),v=h(`el-select`);return c(),e(`div`,Re,[t(`div`,ze,[t(`div`,Be,[t(`h2`,Ve,n(r.$t(`seedream.name.model`)),1),s(g,{content:r.$t(`seedream.description.model`),class:`info`},null,8,[`content`])])]),(c(),o(v,{key:r.revertKey,"model-value":r.value,class:`value`,placeholder:r.$t(`seedream.placeholder.select`),onChange:r.onChange},{default:d(()=>[(c(!0),e(l,null,f(r.options,e=>(c(),o(_,{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:1},8,[`model-value`,`placeholder`,`onChange`]))])}var Ue=R(Le,[[`render`,He],[`__scopeId`,`data-v-8892a12c`]]),We=i({name:`SeedreamSizeSelector`,components:{ElSelect:y,ElOption:b,ElOptionGroup:v,InfoIcon:Z},data(){return{SEEDREAM_SIZE_ADAPTIVE:L,pixelOptions:O}},computed:{model(){return this.$store.state.seedream?.config?.model},capabilities(){return Q(this.model)},value:{get(){return this.$store.state.seedream?.config?.size},set(e){this.$store.commit(`seedream/setConfig`,{...this.$store.state.seedream?.config,size:e})}}},watch:{model:{immediate:!0,handler(){if(this.value)return;let e=this.capabilities;e.sizeTiers.length?this.value=e.sizeTiers.includes(`2K`)?`2K`:e.sizeTiers[0]:e.sizePixelDefault&&(this.value=e.sizePixelDefault)}}}}),Ge={class:`field`},Ke={class:`label`},qe={class:`box`},Je={class:`title font-bold`};function Ye(r,i,a,u,p,g){let _=h(`info-icon`),v=h(`el-option`),y=h(`el-option-group`),b=h(`el-select`);return c(),e(`div`,Ge,[t(`div`,Ke,[t(`div`,qe,[t(`h2`,Je,n(r.$t(`seedream.name.size`)),1),s(_,{content:r.$t(`seedream.description.size`),class:`info`},null,8,[`content`])])]),s(b,{modelValue:r.value,"onUpdate:modelValue":i[0]||=e=>r.value=e,class:`value`,placeholder:r.$t(`seedream.placeholder.size`),filterable:``,"allow-create":``,"default-first-option":``},{default:d(()=>[r.capabilities.sizeTiers.length?(c(),o(y,{key:0,label:r.$t(`seedream.size.group.tier`)},{default:d(()=>[(c(!0),e(l,null,f(r.capabilities.sizeTiers,e=>(c(),o(v,{key:e,label:e,value:e},null,8,[`label`,`value`]))),128))]),_:1},8,[`label`])):m(``,!0),r.capabilities.sizeAdaptive?(c(),o(y,{key:1,label:r.$t(`seedream.size.group.adaptive`)},{default:d(()=>[(c(),o(v,{key:r.SEEDREAM_SIZE_ADAPTIVE,label:r.$t(`seedream.size.adaptive`),value:r.SEEDREAM_SIZE_ADAPTIVE},null,8,[`label`,`value`]))]),_:1},8,[`label`])):m(``,!0),s(y,{label:r.$t(`seedream.size.group.pixel`)},{default:d(()=>[(c(!0),e(l,null,f(r.pixelOptions,e=>(c(),o(v,{key:e.value,label:`${e.value} (${e.ratio})`,value:e.value},null,8,[`label`,`value`]))),128))]),_:1},8,[`label`])]),_:1},8,[`modelValue`,`placeholder`])])}var Xe=R(We,[[`render`,Ye],[`__scopeId`,`data-v-dd7bd021`]]),Ze=i({name:`SeedreamMaxImagesSelector`,components:{ElInputNumber:E,InfoIcon:Z},computed:{config(){return this.$store.state.seedream?.config||{}},supported(){return Q(this.config?.model).groupGeneration},referenceImageCount(){let e=this.config?.image;return Array.isArray(e)?e.length:0},effectiveMax(){let e=15-this.referenceImageCount;return Math.max(1,Math.min(15,e))},value:{get(){let e=this.config?.sequential_image_generation_options?.max_images;return typeof e==`number`&&e>=1?e:1},set(e){let t={...this.config||{}},n=Math.max(1,Math.min(this.effectiveMax,Math.floor(e||1)));n>1?(t.sequential_image_generation=`auto`,t.sequential_image_generation_options={...t.sequential_image_generation_options||{},max_images:n}):(t.sequential_image_generation=`disabled`,t.sequential_image_generation_options&&delete t.sequential_image_generation_options),this.$store.commit(`seedream/setConfig`,t)}}},watch:{effectiveMax(e){this.value>e&&(this.value=e)}}}),Qe={key:0,class:`field`},$e={class:`label`},et={class:`box`},tt={class:`title font-bold`},nt={class:`value`};function rt(r,i,a,o,l,u){let d=h(`info-icon`),f=h(`el-input-number`);return r.supported?(c(),e(`div`,Qe,[t(`div`,$e,[t(`div`,et,[t(`h2`,tt,n(r.$t(`seedream.name.maxImages`)),1),s(d,{content:r.$t(`seedream.description.maxImages`),class:`info`},null,8,[`content`])])]),t(`div`,nt,[s(f,{modelValue:r.value,"onUpdate:modelValue":i[0]||=e=>r.value=e,min:1,max:r.effectiveMax,step:1,size:`default`,"controls-position":`right`,class:`counter`},null,8,[`modelValue`,`max`])])])):m(``,!0)}var it=R(Ze,[[`render`,rt],[`__scopeId`,`data-v-f079fd20`]]),at=i({name:`SeedreamOutputFormatSelector`,components:{ElSelect:y,ElOption:b,InfoIcon:Z},data(){return{options:[...ee]}},computed:{config(){return this.$store.state.seedream?.config||{}},supported(){return Q(this.config?.model).outputFormat},value:{get(){return this.config?.output_format},set(e){let t={...this.config||{}};t.output_format=e,this.$store.commit(`seedream/setConfig`,t)}}}}),ot={key:0,class:`field`},st={class:`label`},ct={class:`box`},lt={class:`title font-bold`};function ut(r,i,a,u,p,g){let _=h(`info-icon`),v=h(`el-option`),y=h(`el-select`);return r.supported?(c(),e(`div`,ot,[t(`div`,st,[t(`div`,ct,[t(`h2`,lt,n(r.$t(`seedream.name.outputFormat`)),1),s(_,{content:r.$t(`seedream.description.outputFormat`),class:`info`},null,8,[`content`])])]),s(y,{modelValue:r.value,"onUpdate:modelValue":i[0]||=e=>r.value=e,class:`value`,placeholder:r.$t(`seedream.placeholder.select`)},{default:d(()=>[(c(!0),e(l,null,f(r.options,e=>(c(),o(v,{key:e,label:e.toUpperCase(),value:e},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`])])):m(``,!0)}var dt=R(at,[[`render`,ut],[`__scopeId`,`data-v-69ea4c07`]]),ft=i({name:`SeedreamSeedInput`,components:{ElInputNumber:E,InfoIcon:Z},computed:{config(){return this.$store.state.seedream?.config||{}},supported(){return Q(this.config?.model).seed},value:{get(){let e=this.config?.seed;return typeof e==`number`?e:-1},set(e){let t={...this.config||{}};t.seed=typeof e==`number`&&Number.isInteger(e)?e:-1,this.$store.commit(`seedream/setConfig`,t)}}}}),pt={key:0,class:`field`},mt={class:`label`},ht={class:`box`},gt={class:`title font-bold`},_t={class:`value`};function vt(r,i,a,o,l,u){let d=h(`info-icon`),f=h(`el-input-number`);return r.supported?(c(),e(`div`,pt,[t(`div`,mt,[t(`div`,ht,[t(`h2`,gt,n(r.$t(`seedream.name.seed`)),1),s(d,{content:r.$t(`seedream.description.seed`),class:`info`},null,8,[`content`])])]),t(`div`,_t,[s(f,{modelValue:r.value,"onUpdate:modelValue":i[0]||=e=>r.value=e,min:-1,max:2147483647,step:1,size:`default`,"controls-position":`right`,class:`counter`},null,8,[`modelValue`])])])):m(``,!0)}var yt=R(ft,[[`render`,vt],[`__scopeId`,`data-v-10cdc1e0`]]),bt=i({name:`SeedreamGuidanceScaleInput`,components:{ElInputNumber:E,InfoIcon:Z},computed:{config(){return this.$store.state.seedream?.config||{}},supported(){return Q(this.config?.model).guidanceScale},defaultValue(){return Q(this.config?.model).guidanceScaleDefault??2.5},value:{get(){let e=this.config?.guidance_scale;return typeof e==`number`?e:this.defaultValue},set(e){let t={...this.config||{}};t.guidance_scale=typeof e==`number`&&e>=1&&e<=10?e:this.defaultValue,this.$store.commit(`seedream/setConfig`,t)}}}}),xt={key:0,class:`field`},St={class:`label`},Ct={class:`box`},wt={class:`title font-bold`},Tt={class:`value`};function Et(r,i,a,o,l,u){let d=h(`info-icon`),f=h(`el-input-number`);return r.supported?(c(),e(`div`,xt,[t(`div`,St,[t(`div`,Ct,[t(`h2`,wt,n(r.$t(`seedream.name.guidanceScale`)),1),s(d,{content:r.$t(`seedream.description.guidanceScale`),class:`info`},null,8,[`content`])])]),t(`div`,Tt,[s(f,{modelValue:r.value,"onUpdate:modelValue":i[0]||=e=>r.value=e,min:1,max:10,step:.1,precision:1,size:`default`,"controls-position":`right`,class:`counter`},null,8,[`modelValue`])])])):m(``,!0)}var Dt=R(bt,[[`render`,Et],[`__scopeId`,`data-v-7386f064`]]),Ot=i({name:`SeedreamWatermarkSwitch`,components:{ElSwitch:D,InfoIcon:Z},computed:{value:{get(){let e=this.$store.state.seedream?.config?.watermark;return e===void 0?!1:!!e},set(e){this.$store.commit(`seedream/setConfig`,{...this.$store.state.seedream?.config,watermark:e})}}}}),kt={class:`field`},At={class:`label`},jt={class:`box`},Mt={class:`title font-bold`},Nt={class:`value`};function Pt(r,i,a,o,l,u){let d=h(`info-icon`),f=h(`el-switch`);return c(),e(`div`,kt,[t(`div`,At,[t(`div`,jt,[t(`h2`,Mt,n(r.$t(`seedream.name.watermark`)),1),s(d,{content:r.$t(`seedream.description.watermark`),class:`info`},null,8,[`content`])])]),t(`div`,Nt,[s(f,{modelValue:r.value,"onUpdate:modelValue":i[0]||=e=>r.value=e},null,8,[`modelValue`])])])}var Ft=i({name:`SeedreamConfigPanel`,components:{ElButton:W,FontAwesomeIcon:J,PromptInput:Se,Consumption:oe,ImageInput:Ie,ModelSelector:Ue,SizeSelector:Xe,MaxImagesSelector:it,OutputFormatSelector:dt,SeedInput:yt,GuidanceScaleInput:Dt,WatermarkSwitch:R(Ot,[[`render`,Pt],[`__scopeId`,`data-v-9e2abf0f`]])},emits:[`generate`],computed:{config(){return this.$store.state.seedream?.config},consumption(){let e={...this.config||{}},t=Array.isArray(e?.image)&&e.image.length>0,n=e?.sequential_image_generation===`auto`?Math.max(1,Math.floor(e?.sequential_image_generation_options?.max_images||1)):1;return ne({...e,action:t?`edit`:`generate`,model:k(e?.model),count:n},this.service?.cost)},service(){return this.$store.state.seedream?.service}},methods:{onGenerate(){this.$emit(`generate`)}}}),It={class:`flex flex-col h-full`},Lt={class:`flex-1 overflow-y-auto p-5`},Rt={class:`flex flex-col items-center justify-center px-5 pb-5`};function zt(r,i,o,l,u,f){let p=h(`model-selector`),m=h(`size-selector`),g=h(`max-images-selector`),_=h(`output-format-selector`),v=h(`seed-input`),y=h(`guidance-scale-input`),b=h(`watermark-switch`),x=h(`prompt-input`),S=h(`image-input`),C=h(`consumption`),w=h(`font-awesome-icon`),T=h(`el-button`);return c(),e(`div`,It,[t(`div`,Lt,[s(p,{class:`mb-4`}),s(m,{class:`mb-4`}),s(g,{class:`mb-4`}),s(_,{class:`mb-4`}),s(v,{class:`mb-4`}),s(y,{class:`mb-4`}),s(b,{class:`mb-4`}),s(x,{class:`mb-4`}),s(S,{class:`mb-4`})]),t(`div`,Rt,[s(C,{value:r.consumption,service:r.service},null,8,[`value`,`service`]),s(T,{type:`primary`,class:`btn w-full`,round:``,onClick:r.onGenerate},{default:d(()=>[s(w,{icon:`fa-solid fa-magic`,class:`mr-2`}),a(` `+n(r.$t(`seedream.button.generate`)),1)]),_:1},8,[`onClick`])])])}var Bt=R(Ft,[[`render`,zt]]),Vt=i({name:`SeedreamTaskPreview`,components:{ElImage:C,CopyToClipboard:Y,FontAwesomeIcon:J,ElAlert:w,ImageWrapper:pe,ElButton:W,ElTooltip:S,ImagePreview:X,ApiCodeButton:le},props:{modelValue:{type:Object,required:!0}},computed:{isEdit(){return Array.isArray(this.modelValue?.request?.image)&&(this.modelValue?.request?.image?.length||0)>0},images(){let e=[];return Array.isArray(this.modelValue?.response?.data)&&this.modelValue?.response?.data?.forEach(t=>{e.push(t)}),e}},methods:{shortModel(e){return k(e)||e},onEdit(e){if(!e)return;console.debug(`Edit image:`,e);let t={...this.$store.state.seedream?.config||{}};t.image=[e],this.$store.commit(`seedream/setConfig`,t)}}}),Ht={class:`preview`},Ut={class:`left`},Wt={class:`main`},Gt={class:`bot`},Kt={class:`datetime`},qt={class:`info`},Jt={key:0,class:`flex justify-start items-center gap-2 mt-2 w-full overflow-x-auto`},Yt={key:1,class:`prompt mt-2`},Xt={key:0},Zt={key:0,class:r({content:!0})},Qt={class:`text-[var(--el-text-color-regular)] text-xs mb-0`},$t={key:1,class:r({content:!0,failed:!0})},en={class:`flex justify-start items-center gap-4 w-full overflow-x-auto`},tn={class:r({operations:!0,"mt-2":!0,"mb-2":!0})},nn={key:0,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},rn={key:1,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},an={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},on={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},sn={key:2,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},cn={key:3,class:`text-[var(--el-text-color-regular)] text-xs mb-0`},$={key:2,class:r({content:!0})},ln={key:0,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},un={key:1,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},dn={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},fn={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},pn={key:2,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},mn={key:3,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},hn={key:4,class:`text-[var(--el-text-color-regular)] text-xs mb-0`},gn={key:3,class:r({content:!0})},_n={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},vn={key:0,class:`text-[var(--el-text-color-regular)] text-xs mb-0`};function yn(r,i,p,g,_,v){let y=h(`el-image`),b=h(`image-preview`),x=h(`font-awesome-icon`),S=h(`copy-to-clipboard`),C=h(`el-alert`),w=h(`image-wrapper`),T=h(`el-button`),E=h(`el-tooltip`),D=h(`api-code-button`);return c(),e(`div`,Ht,[t(`div`,Ut,[s(y,{src:`https://cdn.acedata.cloud/9egrbn.png`,class:`avatar`})]),t(`div`,Wt,[t(`div`,Gt,[a(n(r.$t(`seedream.name.seedreamBot`))+` `,1),t(`span`,Kt,n(r.$dayjs.format(``+new Date(parseFloat((r.modelValue?.created_at||``).toString())*1e3))),1)]),t(`div`,qt,[Array.isArray(r.modelValue?.request?.image)&&r.modelValue?.request?.image.length>0?(c(),e(`div`,Jt,[(c(!0),e(l,null,f(r.modelValue?.request?.image,(e,t)=>(c(),o(b,{key:t,url:e,name:`image-${t+1}`,closable:!1},null,8,[`url`,`name`]))),128))])):m(``,!0),r.modelValue?.request?.prompt?(c(),e(`p`,Yt,[a(n(r.modelValue?.request?.prompt)+` `,1),r.modelValue?.response?m(``,!0):(c(),e(`span`,Xt,` - (`+n(r.$t(`seedream.status.pending`))+`) `,1))])):m(``,!0)]),r.modelValue?.response?r.modelValue?.response?.success===!0?(c(),e(`div`,$t,[t(`div`,en,[(c(!0),e(l,null,f(r.images,(e,t)=>(c(),o(w,{key:t,src:e?.image_url,"raw-src":e?.image_url},null,8,[`src`,`raw-src`]))),128))]),t(`div`,tn,[s(E,{class:`box-item`,effect:`dark`,content:r.$t(`common.button.edit`),placement:`top-start`},{default:d(()=>[s(T,{type:`info`,size:`small`,class:`btn-action`,onClick:i[0]||=u(e=>r.onEdit(r.images?.[0]?.image_url),[`stop`])},{default:d(()=>[a(n(r.$t(`common.button.edit`)),1)]),_:1})]),_:1},8,[`content`]),s(D,{path:`/seedream/images`,body:r.modelValue?.request},null,8,[`body`])]),s(C,{closable:!1,class:`mt-2 success`},{default:d(()=>[r.modelValue?.request?.model?(c(),e(`p`,nn,[s(x,{icon:`fa-solid fa-cube`,class:`mr-1`}),a(` `+n(r.$t(`seedream.name.model`))+`: `+n(r.shortModel(r.modelValue?.request?.model)),1)])):m(``,!0),r.modelValue?.request?.size?(c(),e(`p`,rn,[s(x,{icon:`fa-solid fa-image`,class:`mr-1`}),a(` `+n(r.$t(`seedream.name.size`))+`: `+n(r.modelValue?.request?.size),1)])):m(``,!0),t(`p`,an,[s(x,{icon:`fa-solid fa-bolt`,class:`mr-1`}),a(` `+n(r.$t(`seedream.name.task`))+`: `+n(r.isEdit?r.$t(`seedream.name.edits`):r.$t(`seedream.name.generate`)),1)]),t(`p`,on,[s(x,{icon:`fa-solid fa-magic`,class:`mr-1`}),a(` `+n(r.$t(`seedream.name.taskId`))+`: `+n(r.modelValue?.id)+` `,1),s(S,{content:r.modelValue?.id,class:`btn-copy inline-block`},null,8,[`content`])]),r.modelValue?.elapsed?(c(),e(`p`,sn,[s(x,{icon:`fa-solid fa-clock`,class:`mr-1`}),a(` `+n(r.$t(`seedream.name.elapsed`))+`: `+n(r.modelValue?.elapsed?.toFixed(2))+`s `,1)])):m(``,!0),r.modelValue?.response?.trace_id?(c(),e(`p`,cn,[s(x,{icon:`fa-solid fa-hashtag`,class:`mr-1`}),a(` `+n(r.$t(`seedream.name.traceId`))+`: `+n(r.modelValue?.response?.trace_id)+` `,1),s(S,{content:r.modelValue?.response?.trace_id,class:`btn-copy inline-block`},null,8,[`content`])])):m(``,!0)]),_:1})])):r.modelValue?.response?.success===!1?(c(),e(`div`,$,[s(C,{closable:!1,class:`failure`},{template:d(()=>[s(x,{icon:`fa-solid fa-exclamation-triangle`,class:`mr-1`}),a(` `+n(r.$t(`seedream.name.failure`)),1)]),default:d(()=>[r.modelValue?.request?.model?(c(),e(`p`,ln,[s(x,{icon:`fa-solid fa-cube`,class:`mr-1`}),a(` `+n(r.$t(`seedream.name.model`))+`: `+n(r.shortModel(r.modelValue?.request?.model)),1)])):m(``,!0),r.modelValue?.request?.size?(c(),e(`p`,un,[s(x,{icon:`fa-solid fa-image`,class:`mr-1`}),a(` `+n(r.$t(`seedream.name.size`))+`: `+n(r.modelValue?.request?.size),1)])):m(``,!0),t(`p`,dn,[s(x,{icon:`fa-solid fa-bolt`,class:`mr-1`}),a(` `+n(r.$t(`seedream.name.task`))+`: `+n(r.isEdit?r.$t(`seedream.name.edits`):r.$t(`seedream.name.generate`)),1)]),t(`p`,fn,[s(x,{icon:`fa-solid fa-magic`,class:`mr-1`}),a(` `+n(r.$t(`seedream.name.taskId`))+`: `+n(r.modelValue?.id)+` `,1),s(S,{content:r.modelValue?.id,class:`btn-copy`},null,8,[`content`])]),r.modelValue?.response?.error?.message?(c(),e(`p`,pn,[s(x,{icon:`fa-solid fa-circle-info`,class:`mr-1`}),a(` `+n(r.$t(`seedream.name.failureReason`))+`: `+n(r.modelValue?.response?.error?.message)+` `,1),s(S,{content:r.modelValue?.response?.error?.message,class:`btn-copy`},null,8,[`content`])])):m(``,!0),r.modelValue?.elapsed?(c(),e(`p`,mn,[s(x,{icon:`fa-solid fa-clock`,class:`mr-1`}),a(` `+n(r.$t(`seedream.name.elapsed`))+`: `+n(r.modelValue?.elapsed?.toFixed(2))+`s `,1)])):m(``,!0),r.modelValue?.response?.trace_id?(c(),e(`p`,hn,[s(x,{icon:`fa-solid fa-hashtag`,class:`mr-1`}),a(` `+n(r.$t(`seedream.name.traceId`))+`: `+n(r.modelValue?.response?.trace_id)+` `,1),s(S,{content:r.modelValue?.response?.trace_id,class:`btn-copy`},null,8,[`content`])])):m(``,!0)]),_:1})])):(c(),e(`div`,gn,[s(C,{closable:!1,class:`info`},{template:d(()=>[s(x,{icon:`fa-solid fa-circle-info`,class:`mr-1`}),a(` `+n(r.$t(`seedream.name.status`)),1)]),default:d(()=>[t(`p`,_n,[s(x,{icon:`fa-solid fa-magic`,class:`mr-1`}),a(` `+n(r.$t(`seedream.name.taskId`))+`: `+n(r.modelValue?.id)+` `,1),s(S,{content:r.modelValue?.id,class:`btn-copy`},null,8,[`content`])]),r.modelValue?.response?.trace_id?(c(),e(`p`,vn,[s(x,{icon:`fa-solid fa-hashtag`,class:`mr-1`}),a(` `+n(r.$t(`seedream.name.traceId`))+`: `+n(r.modelValue?.response?.trace_id)+` `,1),s(S,{content:r.modelValue?.response?.trace_id,class:`btn-copy`},null,8,[`content`])])):m(``,!0)]),_:1})])):(c(),e(`div`,Zt,[s(C,{closable:!1,class:`info`},{template:d(()=>[s(x,{icon:`fa-regular fa-clock`,class:`mr-1`}),a(` `+n(r.$t(`seedream.status.pending`)),1)]),default:d(()=>[t(`p`,Qt,[s(x,{icon:`fa-solid fa-magic`,class:`mr-1`}),a(` `+n(r.$t(`seedream.name.taskId`))+`: `+n(r.modelValue?.id)+` `,1),s(S,{content:r.modelValue?.id,class:`btn-copy inline-block`},null,8,[`content`])])]),_:1})]))])])}var bn=i({name:`SeedreamRecentPanel`,components:{TaskPreview:R(Vt,[[`render`,yn],[`__scopeId`,`data-v-1b4654bc`]]),BotPlaceholder:ue,NoTasks:de,ScrollList:se},props:{loading:{type:Boolean,default:!1}},emits:[`reach-top`],computed:{tasks(){return{...this.$store.state.seedream?.tasks,items:this.$store.state.seedream?.tasks?.items?.slice()}}},methods:{getScrollElement(){return this.$refs.scrollList?.getScrollElement?.()}}}),xn={key:0},Sn={key:2,class:`w-full h-full flex items-center justify-center`};function Cn(t,n,r,i,a,u){let p=h(`bot-placeholder`),g=h(`task-preview`),_=h(`scroll-list`),v=h(`no-tasks`);return c(),e(l,null,[t.tasks?.items===void 0?(c(),e(`div`,xn,[s(p)])):t.tasks?.items?.length&&t.tasks?.items?.length>0?(c(),o(_,{key:1,ref:`scrollList`,class:`tasks h-full w-full overflow-y-auto`,loading:t.loading,onReachTop:n[0]||=e=>t.$emit(`reach-top`)},{default:d(()=>[(c(!0),e(l,null,f(t.tasks?.items,e=>(c(),o(g,{key:e.id,"model-value":e},null,8,[`model-value`]))),128))]),_:1},8,[`loading`])):m(``,!0),t.tasks?.items?.length===0?(c(),e(`div`,Sn,[s(v)])):m(``,!0)],64)}var wn=i({name:`SeedreamIndex`,components:{ConfigPanel:Bt,Layout:ye,RecentPanel:R(bn,[[`render`,Cn]])},mixins:[re],inject:[`initialized`],data(){return{task:void 0,job:0,loading:!1}},computed:{applicationsLoading(){return this.$store.state.seedream?.status?.getApplications===z.Request},tasksLoading(){return this.$store.state.seedream?.status?.getTasks===z.Request},credential(){return this.$store.state.seedream?.credential},config(){return this.$store.state.seedream?.config},application(){return this.$store.state.seedream?.application},tasks(){return this.$store.state.seedream?.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 ce({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(`seedream/getService`),console.debug(`end onGetService`)},async onGetApplication(){console.debug(`start onGetApplication`),await this.$store.dispatch(`seedream/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(`seedream/getTasks`,{limit:t,createdAtMin:n,createdAtMax:r})},async onGenerate(){if(!ie(this.uploadTracker,e=>this.$t(e),e=>G.warning(e)))return;let e={...this.config||{}};!(Array.isArray(e?.image)&&e.image.length>0)&&`image`in e&&delete e.image,e?.size||delete e.size;let t={...e,async:!0};if(!U())return;let n=this.credential?.token;if(!n){console.error(`no token specified`);return}G.info(this.$t(`seedream.message.startingTask`)),K(`seedream`,q.generate(t,{token:n})).then(()=>{G.success(this.$t(`seedream.message.startTaskSuccess`))}).catch(e=>{let t=e?.response?.data;t?.error?.code===`used_up`?G.error(this.$t(`seedream.message.usedUp`)):G.error(this.$t(`seedream.message.startTaskFailed`)+(t?.error?.message||``))}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})},getTasksScrollElement(){return this.$refs.recentPanel?.getScrollElement?.()}}});function Tn(e,t,n,r,i,a){let l=h(`config-panel`),u=h(`recent-panel`),f=h(`layout`);return c(),o(f,null,{config:d(()=>[s(l,{onGenerate:e.onGenerate},null,8,[`onGenerate`])]),result:d(()=>[s(u,{ref:`recentPanel`,loading:e.loading,onReachTop:e.onReachTop},null,8,[`loading`,`onReachTop`])]),_:1})}var En=R(wn,[[`render`,Tn]]);export{En as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import"./rolldown-runtime--c01j_DQ.js";import{A as e,D as t,Gt as n,I as r,M as i,N as a,O as o,P as s,Q as c,S as l,dt as u,et as d,k as f,nt as p,tt as m}from"./vendor-chart-kBsXB1rh.js";import{r as h,t as g}from"./select-leWGa1qy.js";import{n as _,t as v}from"./collapse-c2sK1KTq.js";import{t as y}from"./drawer-VR-pZKxs.js";import"./constants-BqvGY8Qp.js";import{A as b,Kt as x,Vr as S,en as C,fi as w,ti as T,xi as E}from"./index-DPT0LY_a.js";import{t as D}from"./index.es-BF0roIeI.js";import{t as ee}from"./Consumption-C6c-vSv0.js";var te=r({name:`LayoutSerp`,components:{ElDrawer:y,ElButton:w,FontAwesomeIcon:D},data(){return{drawer:!1}}}),O={class:`main flex flex-row flex-1`},k={class:`config w-[320px] flex-none h-full overflow-y-auto bg-[var(--app-sidebar-bg)] border-r border-[var(--app-border-subtle)]`},A={class:`result h-full flex-1 flex flex-col min-w-0 overflow-x-hidden bg-[var(--app-content-bg)]`};function j(n,r,i,a,o,l){let d=p(`font-awesome-icon`),f=p(`el-button`),h=p(`el-drawer`);return c(),e(`div`,O,[t(`div`,k,[m(n.$slots,`config`,{},void 0,!0)]),t(`div`,A,[m(n.$slots,`result`,{},void 0,!0)]),s(f,{circle:``,class:`menu`,onClick:r[0]||=e=>n.drawer=!0},{default:u(()=>[s(d,{icon:`fa-solid fa-search`})]),_:1}),s(h,{modelValue:n.drawer,"onUpdate:modelValue":r[1]||=e=>n.drawer=e,direction:`ltr`,"with-header":!1,size:`340px`,class:`drawer`},{default:u(()=>[m(n.$slots,`config`,{},void 0,!0)]),_:3},8,[`modelValue`])])}var M=b(te,[[`render`,j],[`__scopeId`,`data-v-72398911`]]),N=r({name:`QueryInput`,components:{ElInput:E},computed:{query:{get(){return this.$store.state.serp?.config?.query},set(e){this.$store.commit(`serp/setConfig`,{...this.$store.state.serp?.config,query:e})}}}}),P={class:`field`},F={class:`box`},I={class:`title font-bold`};function L(r,i,a,o,l,u){let d=p(`el-input`);return c(),e(`div`,P,[t(`div`,F,[t(`h2`,I,n(r.$t(`serp.name.query`)),1)]),s(d,{modelValue:r.query,"onUpdate:modelValue":i[0]||=e=>r.query=e,rows:3,type:`textarea`,class:`prompt`,placeholder:r.$t(`serp.placeholder.query`)},null,8,[`modelValue`,`placeholder`])])}var R=b(N,[[`render`,L],[`__scopeId`,`data-v-3582b195`]]),z=r({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`}}),B={class:`field`},V={class:`title font-bold`};function H(r,i,a,o,l,d){let f=p(`el-option`),m=p(`el-select`);return c(),e(`div`,B,[t(`h2`,V,n(r.$t(`serp.name.type`)),1),s(m,{modelValue:r.value,"onUpdate:modelValue":i[0]||=e=>r.value=e,class:`value`},{default:u(()=>[s(f,{value:`search`,label:r.$t(`serp.type.search`)},null,8,[`label`]),s(f,{value:`images`,label:r.$t(`serp.type.images`)},null,8,[`label`]),s(f,{value:`news`,label:r.$t(`serp.type.news`)},null,8,[`label`]),s(f,{value:`videos`,label:r.$t(`serp.type.videos`)},null,8,[`label`])]),_:1},8,[`modelValue`])])}var U=b(z,[[`render`,H],[`__scopeId`,`data-v-2913fb62`]]),W=r({name:`CountryInput`,components:{ElInput:E},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`}}),G={class:`field`},K={class:`title font-bold`};function q(r,i,a,o,l,u){let d=p(`el-input`);return c(),e(`div`,G,[t(`h2`,K,n(r.$t(`serp.name.country`)),1),s(d,{modelValue:r.value,"onUpdate:modelValue":i[0]||=e=>r.value=e,class:`value`,placeholder:r.$t(`serp.placeholder.country`)},null,8,[`modelValue`,`placeholder`])])}var J=b(W,[[`render`,q],[`__scopeId`,`data-v-f0672cc6`]]),Y=r({name:`LanguageInput`,components:{ElInput:E},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`}}),X={class:`field`},Z={class:`title font-bold`};function Q(r,i,a,o,l,u){let d=p(`el-input`);return c(),e(`div`,X,[t(`h2`,Z,n(r.$t(`serp.name.language`)),1),s(d,{modelValue:r.value,"onUpdate:modelValue":i[0]||=e=>r.value=e,class:`value`,placeholder:r.$t(`serp.placeholder.language`)},null,8,[`modelValue`,`placeholder`])])}var ne=r({name:`SearchPanel`,components:{ElButton:w,FontAwesomeIcon:D,QueryInput:R,TypeSelector:U,CountryInput:J,LanguageInput:b(Y,[[`render`,Q],[`__scopeId`,`data-v-dc1c94b7`]]),Consumption:ee},emits:[`search`],computed:{config(){return this.$store.state.serp?.config},consumption(){return x(this.config,this.service?.cost)},service(){return this.$store.state.serp?.service},searching(){return this.$store.state.serp?.status?.search===S.Request}},methods:{onSearch(){this.$emit(`search`)}}}),re={class:`flex flex-col h-full`},ie={class:`flex-1 overflow-y-auto p-5`},ae={class:`flex flex-col items-center justify-center px-5 pb-5`};function oe(r,i,o,l,d,f){let m=p(`query-input`),h=p(`type-selector`),g=p(`country-input`),_=p(`language-input`),v=p(`consumption`),y=p(`font-awesome-icon`),b=p(`el-button`);return c(),e(`div`,re,[t(`div`,ie,[s(m,{class:`mb-4`}),s(h,{class:`mb-4`}),s(g,{class:`mb-4`}),s(_,{class:`mb-4`})]),t(`div`,ae,[s(v,{value:r.consumption,service:r.service},null,8,[`value`,`service`]),s(b,{type:`primary`,class:`btn w-full`,round:``,loading:r.searching,onClick:r.onSearch},{default:u(()=>[s(y,{icon:`fa-solid fa-search`,class:`mr-2`}),a(` `+n(r.$t(`serp.button.search`)),1)]),_:1},8,[`loading`,`onClick`])])])}var se=b(ne,[[`render`,oe]]),ce=r({name:`KnowledgeGraph`,props:{data:{type:Object,required:!0}}}),le={class:`knowledge-graph rounded-xl border border-[var(--el-border-color-lighter)] p-5 bg-[var(--el-fill-color-blank)]`},ue={class:`flex flex-row gap-4`},de=[`src`,`alt`],fe={class:`flex-1 min-w-0`},pe={key:0,class:`text-xs text-[var(--el-text-color-disabled)] mb-1 uppercase tracking-wide`},me={class:`text-xl font-bold mb-1.5`},he={key:1,class:`text-sm text-[var(--el-text-color-regular)] mb-3 leading-relaxed`},ge=[`href`],_e={key:2,class:`text-sm`},ve={class:`text-[var(--el-text-color-disabled)] flex-none font-medium`},ye={class:`text-[var(--el-text-color-regular)]`};function be(r,i,o,s,u,p){return c(),e(`div`,le,[t(`div`,ue,[r.data.image_url?(c(),e(`img`,{key:0,src:r.data.image_url,alt:r.data.title,class:`w-28 h-28 rounded-lg object-cover flex-none shadow-sm`},null,8,de)):f(``,!0),t(`div`,fe,[r.data.type?(c(),e(`div`,pe,n(r.data.type),1)):f(``,!0),t(`h3`,me,n(r.data.title),1),r.data.description?(c(),e(`p`,he,[a(n(r.data.description)+` `,1),r.data.description_link?(c(),e(`a`,{key:0,href:r.data.description_link,target:`_blank`,rel:`noopener noreferrer`,class:`text-[var(--el-color-primary)] hover:underline ml-1`},n(r.data.description_source||`Source`),9,ge)):f(``,!0)])):f(``,!0),r.data.attributes&&Object.keys(r.data.attributes).length?(c(),e(`div`,_e,[(c(!0),e(l,null,d(r.data.attributes,(r,i)=>(c(),e(`div`,{key:i,class:`flex gap-2 mb-1 py-0.5`},[t(`span`,ve,n(i)+`:`,1),t(`span`,ye,n(r),1)]))),128))])):f(``,!0)])])])}var xe=b(ce,[[`render`,be]]),Se=r({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`}}}),Ce={class:`organic-result rounded-lg p-4 transition-all duration-200 hover:bg-[var(--el-fill-color-lighter)]`},we={key:0,class:`flex items-center gap-2 mb-1.5`},Te=[`src`,`alt`],Ee={class:`text-xs text-[var(--el-text-color-secondary)] truncate`},De={class:`text-xs text-[var(--el-text-color-disabled)]`},Oe=[`href`],ke={key:1,class:`text-xs text-[var(--el-text-color-disabled)] mt-1`},Ae={key:2,class:`text-sm text-[var(--el-text-color-regular)] mt-1.5 leading-relaxed line-clamp-3`},je={key:3,class:`mt-3 flex flex-wrap gap-x-4 gap-y-1`},Me=[`href`];function Ne(r,i,a,o,s,u){return c(),e(`div`,Ce,[r.displayUrl?(c(),e(`div`,we,[t(`img`,{src:r.faviconUrl,alt:r.hostname,class:`w-4 h-4 rounded-sm flex-none`,loading:`lazy`,onError:i[0]||=(...e)=>r.onFaviconError&&r.onFaviconError(...e)},null,40,Te),t(`span`,Ee,n(r.hostname),1),t(`span`,De,n(r.pathname),1)])):f(``,!0),t(`a`,{href:r.data.link,target:`_blank`,rel:`noopener noreferrer`,class:`text-base font-semibold text-[var(--el-color-primary)] hover:underline leading-snug block`},n(r.data.title),9,Oe),r.data.date?(c(),e(`div`,ke,n(r.data.date),1)):f(``,!0),r.data.snippet?(c(),e(`p`,Ae,n(r.data.snippet),1)):f(``,!0),r.data.sitelinks?.length?(c(),e(`div`,je,[(c(!0),e(l,null,d(r.data.sitelinks,(t,r)=>(c(),e(`a`,{key:r,href:t.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`},n(t.title),9,Me))),128))])):f(``,!0)])}var Pe=b(Se,[[`render`,Ne]]),Fe=r({name:`ImageResults`,props:{data:{type:Array,required:!0}}}),Ie={class:`rounded-xl border border-[var(--el-border-color-lighter)] p-5 bg-[var(--el-fill-color-blank)]`},Le={class:`text-base font-bold mb-3`},Re={class:`grid grid-cols-2 sm:grid-cols-3 md:grid-cols-4 gap-3`},ze=[`href`],Be=[`src`,`alt`],Ve={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`},He={class:`text-xs text-white line-clamp-2`};function Ue(r,i,a,o,s,u){return c(),e(`div`,Ie,[t(`h3`,Le,n(r.$t(`serp.name.imageResults`)),1),t(`div`,Re,[(c(!0),e(l,null,d(r.data,(r,i)=>(c(),e(`a`,{key:i,href:r.link,target:`_blank`,rel:`noopener noreferrer`,class:`group relative rounded-lg overflow-hidden bg-[var(--el-fill-color-light)] aspect-square`},[r.image_url?(c(),e(`img`,{key:0,src:r.image_url,alt:r.title,class:`w-full h-full object-cover transition-transform duration-300 group-hover:scale-105`,loading:`lazy`},null,8,Be)):f(``,!0),t(`div`,Ve,[t(`span`,He,n(r.title),1)])],8,ze))),128))])])}var We=b(Fe,[[`render`,Ue]]),Ge=r({name:`VideoResults`,props:{data:{type:Array,required:!0}}}),Ke={class:`text-base font-bold mb-3`},qe={class:`space-y-4`},Je=[`href`],Ye={class:`relative flex-shrink-0 w-40 h-24 rounded overflow-hidden bg-gray-100 dark:bg-gray-800`},Xe=[`src`,`alt`],Ze={key:1,class:`absolute bottom-1 right-1 bg-black/80 text-white text-xs px-1 rounded`},Qe={class:`flex-1 min-w-0`},$e={class:`text-blue-600 group-hover:underline font-medium line-clamp-2`},et={class:`text-xs text-gray-400 mt-1`},tt={key:0},nt={key:1},rt={key:2},it={key:0,class:`text-sm text-gray-600 dark:text-gray-300 mt-1 line-clamp-2`};function at(r,i,a,o,s,u){return c(),e(`div`,null,[t(`h3`,Ke,n(r.$t(`serp.name.videoResults`)),1),t(`div`,qe,[(c(!0),e(l,null,d(r.data,(r,i)=>(c(),e(`a`,{key:i,href:r.link,target:`_blank`,rel:`noopener noreferrer`,class:`flex gap-4 group`},[t(`div`,Ye,[r.image_url?(c(),e(`img`,{key:0,src:r.image_url,alt:r.title,class:`w-full h-full object-cover`,loading:`lazy`},null,8,Xe)):f(``,!0),r.duration?(c(),e(`div`,Ze,n(r.duration),1)):f(``,!0)]),t(`div`,Qe,[t(`div`,$e,n(r.title),1),t(`div`,et,[r.source?(c(),e(`span`,tt,n(r.source),1)):f(``,!0),r.channel?(c(),e(`span`,nt,` · `+n(r.channel),1)):f(``,!0),r.date?(c(),e(`span`,rt,` · `+n(r.date),1)):f(``,!0)]),r.snippet?(c(),e(`p`,it,n(r.snippet),1)):f(``,!0)])],8,Je))),128))])])}var ot=b(Ge,[[`render`,at]]),st=r({name:`NewsResults`,props:{data:{type:Array,required:!0}}}),ct={class:`text-base font-bold mb-3`},lt={class:`space-y-4`},ut=[`href`],dt={class:`flex-1 min-w-0`},ft={class:`text-blue-600 group-hover:underline font-medium line-clamp-2`},pt={class:`text-xs text-gray-400 mt-1`},mt={key:0},ht={key:1},gt={key:0,class:`text-sm text-gray-600 dark:text-gray-300 mt-1 line-clamp-2`},_t={key:0,class:`flex-shrink-0 w-24 h-24 rounded overflow-hidden bg-gray-100 dark:bg-gray-800`},vt=[`src`,`alt`];function yt(r,i,a,o,s,u){return c(),e(`div`,null,[t(`h3`,ct,n(r.$t(`serp.name.newsResults`)),1),t(`div`,lt,[(c(!0),e(l,null,d(r.data,(r,i)=>(c(),e(`a`,{key:i,href:r.link,target:`_blank`,rel:`noopener noreferrer`,class:`flex gap-4 group`},[t(`div`,dt,[t(`div`,ft,n(r.title),1),t(`div`,pt,[r.source?(c(),e(`span`,mt,n(r.source),1)):f(``,!0),r.date?(c(),e(`span`,ht,` · `+n(r.date),1)):f(``,!0)]),r.snippet?(c(),e(`p`,gt,n(r.snippet),1)):f(``,!0)]),r.image_url?(c(),e(`div`,_t,[t(`img`,{src:r.image_url,alt:r.title,class:`w-full h-full object-cover`,loading:`lazy`},null,8,vt)])):f(``,!0)],8,ut))),128))])])}var bt=b(st,[[`render`,yt]]),xt=r({name:`PeopleAlsoAsk`,components:{ElCollapse:v,ElCollapseItem:_},props:{data:{type:Array,required:!0}}}),St={class:`rounded-xl border border-[var(--el-border-color-lighter)] p-5 bg-[var(--el-fill-color-blank)]`},Ct={class:`text-base font-bold mb-3`},wt={key:0,class:`text-sm text-[var(--el-text-color-regular)] mb-2 leading-relaxed`},Tt=[`href`];function Et(r,i,a,m,h,g){let _=p(`el-collapse-item`),v=p(`el-collapse`);return c(),e(`div`,St,[t(`h3`,Ct,n(r.$t(`serp.name.peopleAlsoAsk`)),1),s(v,null,{default:u(()=>[(c(!0),e(l,null,d(r.data,(t,r)=>(c(),o(_,{key:r,title:t.question||t.title||``},{default:u(()=>[t.snippet?(c(),e(`p`,wt,n(t.snippet),1)):f(``,!0),t.link?(c(),e(`a`,{key:1,href:t.link,target:`_blank`,rel:`noopener noreferrer`,class:`text-xs text-[var(--el-color-primary)] hover:underline`},n(t.title||t.link),9,Tt)):f(``,!0)]),_:2},1032,[`title`]))),128))]),_:1})])}var Dt=b(xt,[[`render`,Et]]),Ot=r({name:`RelatedSearches`,components:{FontAwesomeIcon:D},props:{data:{type:Array,required:!0}},emits:[`search`],methods:{onSearch(e){e&&this.$emit(`search`,e)}}}),kt={class:`rounded-xl border border-[var(--el-border-color-lighter)] p-5 bg-[var(--el-fill-color-blank)]`},At={class:`text-base font-bold mb-3`},jt={class:`flex flex-wrap gap-2`},Mt=[`onClick`];function Nt(r,i,o,u,f,m){let h=p(`font-awesome-icon`);return c(),e(`div`,kt,[t(`h3`,At,n(r.$t(`serp.name.relatedSearches`)),1),t(`div`,jt,[(c(!0),e(l,null,d(r.data,(t,i)=>(c(),e(`button`,{key:i,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:e=>r.onSearch(t.query)},[s(h,{icon:`fa-solid fa-magnifying-glass`,class:`text-xs opacity-50`}),a(` `+n(t.query),1)],8,Mt))),128))])])}var $=r({name:`ResultPanel`,components:{FontAwesomeIcon:D,KnowledgeGraph:xe,OrganicResult:Pe,ImageResults:We,VideoResults:ot,NewsResults:bt,PeopleAlsoAsk:Dt,RelatedSearches:b(Ot,[[`render`,Nt]])},emits:[`related-search`],computed:{results(){return this.$store.state.serp?.results},searching(){return this.$store.state.serp?.status?.search===S.Request},noResults(){return this.$store.state.serp?.status?.search===S.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)}}}),Pt={class:`h-full overflow-y-auto p-6`},Ft={key:0,class:`max-w-3xl mx-auto py-8`},It={key:1,class:`flex flex-col items-center justify-center py-24 text-[var(--el-text-color-disabled)]`},Lt={class:`text-base`},Rt={key:2,class:`max-w-3xl mx-auto`},zt={key:1,class:`mb-6`},Bt={key:3,class:`flex flex-col items-center justify-center py-24 text-[var(--el-text-color-disabled)]`},Vt={class:`text-base`};function Ht(r,a,u,m,h,g){let _=p(`font-awesome-icon`),v=p(`knowledge-graph`),y=p(`organic-result`),b=p(`image-results`),x=p(`video-results`),S=p(`news-results`),C=p(`people-also-ask`),w=p(`related-searches`);return c(),e(`div`,Pt,[r.searching?(c(),e(`div`,Ft,[(c(),e(l,null,d(4,e=>t(`div`,{key:e,class:`mb-6 animate-pulse`},[...a[0]||=[i(`<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))])):r.noResults?(c(),e(`div`,It,[s(_,{icon:`fa-solid fa-face-meh`,class:`text-5xl mb-4 opacity-40`}),t(`p`,Lt,n(r.$t(`serp.message.noResults`)),1)])):r.results?(c(),e(`div`,Rt,[r.results.knowledge_graph?.title?(c(),o(v,{key:0,data:r.results.knowledge_graph,class:`mb-6`},null,8,[`data`])):f(``,!0),r.results.organic?.length?(c(),e(`div`,zt,[(c(!0),e(l,null,d(r.results.organic,(e,t)=>(c(),o(y,{key:t,data:e,class:`mb-1`},null,8,[`data`]))),128))])):f(``,!0),r.results.images?.length?(c(),o(b,{key:2,data:r.results.images,class:`mb-6`},null,8,[`data`])):f(``,!0),r.results.videos?.length?(c(),o(x,{key:3,data:r.results.videos,class:`mb-6`},null,8,[`data`])):f(``,!0),r.results.news?.length?(c(),o(S,{key:4,data:r.results.news,class:`mb-6`},null,8,[`data`])):f(``,!0),r.results.people_also_ask?.length?(c(),o(C,{key:5,data:r.results.people_also_ask,class:`mb-6`},null,8,[`data`])):f(``,!0),r.results.related_searches?.length?(c(),o(w,{key:6,data:r.results.related_searches,class:`mb-6`,onSearch:r.onRelatedSearch},null,8,[`data`,`onSearch`])):f(``,!0)])):(c(),e(`div`,Bt,[s(_,{icon:`fa-solid fa-globe`,class:`text-5xl mb-4 opacity-30`}),t(`p`,Vt,n(r.$t(`serp.description.query`)),1)]))])}var Ut=r({name:`SerpIndex`,components:{Layout:M,SearchPanel:se,ResultPanel:b($,[[`render`,Ht]])},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(C()&&this.$store.state.serp?.config?.query){T.info(this.$t(`serp.message.searching`));try{await this.$store.dispatch(`serp/search`),T.success(this.$t(`serp.message.searchSuccess`))}catch(e){(e?.response?.data)?.error?.code===`used_up`?T.error(this.$t(`serp.message.usedUp`)):T.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 Wt(e,t,n,r,i,a){let l=p(`search-panel`),d=p(`result-panel`),f=p(`layout`);return c(),o(f,null,{config:u(()=>[s(l,{onSearch:e.onSearch},null,8,[`onSearch`])]),result:u(()=>[s(d,{onRelatedSearch:e.onRelatedSearch},null,8,[`onRelatedSearch`])]),_:1})}var Gt=b(Ut,[[`render`,Wt]]);export{Gt as default};
|
|
1
|
+
import"./rolldown-runtime--c01j_DQ.js";import{A as e,D as t,Gt as n,I as r,M as i,N as a,O as o,P as s,Q as c,S as l,dt as u,et as d,k as f,nt as p,tt as m}from"./vendor-chart-kBsXB1rh.js";import{r as h,t as g}from"./select-BMkecWJ3.js";import{n as _,t as v}from"./collapse-C-qULowS.js";import{t as y}from"./drawer-B9vlF9-6.js";import"./constants-Bs-70rQx.js";import{A as b,Kt as x,Vr as S,en as C,fi as w,ti as T,xi as E}from"./index-BDvTozfe.js";import{t as D}from"./index.es-B8y6GOsn.js";import{t as ee}from"./Consumption-B2gTsRAP.js";var te=r({name:`LayoutSerp`,components:{ElDrawer:y,ElButton:w,FontAwesomeIcon:D},data(){return{drawer:!1}}}),O={class:`main flex flex-row flex-1`},k={class:`config w-[320px] flex-none h-full overflow-y-auto bg-[var(--app-sidebar-bg)] border-r border-[var(--app-border-subtle)]`},A={class:`result h-full flex-1 flex flex-col min-w-0 overflow-x-hidden bg-[var(--app-content-bg)]`};function j(n,r,i,a,o,l){let d=p(`font-awesome-icon`),f=p(`el-button`),h=p(`el-drawer`);return c(),e(`div`,O,[t(`div`,k,[m(n.$slots,`config`,{},void 0,!0)]),t(`div`,A,[m(n.$slots,`result`,{},void 0,!0)]),s(f,{circle:``,class:`menu`,onClick:r[0]||=e=>n.drawer=!0},{default:u(()=>[s(d,{icon:`fa-solid fa-search`})]),_:1}),s(h,{modelValue:n.drawer,"onUpdate:modelValue":r[1]||=e=>n.drawer=e,direction:`ltr`,"with-header":!1,size:`340px`,class:`drawer`},{default:u(()=>[m(n.$slots,`config`,{},void 0,!0)]),_:3},8,[`modelValue`])])}var M=b(te,[[`render`,j],[`__scopeId`,`data-v-72398911`]]),N=r({name:`QueryInput`,components:{ElInput:E},computed:{query:{get(){return this.$store.state.serp?.config?.query},set(e){this.$store.commit(`serp/setConfig`,{...this.$store.state.serp?.config,query:e})}}}}),P={class:`field`},F={class:`box`},I={class:`title font-bold`};function L(r,i,a,o,l,u){let d=p(`el-input`);return c(),e(`div`,P,[t(`div`,F,[t(`h2`,I,n(r.$t(`serp.name.query`)),1)]),s(d,{modelValue:r.query,"onUpdate:modelValue":i[0]||=e=>r.query=e,rows:3,type:`textarea`,class:`prompt`,placeholder:r.$t(`serp.placeholder.query`)},null,8,[`modelValue`,`placeholder`])])}var R=b(N,[[`render`,L],[`__scopeId`,`data-v-3582b195`]]),z=r({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`}}),B={class:`field`},V={class:`title font-bold`};function H(r,i,a,o,l,d){let f=p(`el-option`),m=p(`el-select`);return c(),e(`div`,B,[t(`h2`,V,n(r.$t(`serp.name.type`)),1),s(m,{modelValue:r.value,"onUpdate:modelValue":i[0]||=e=>r.value=e,class:`value`},{default:u(()=>[s(f,{value:`search`,label:r.$t(`serp.type.search`)},null,8,[`label`]),s(f,{value:`images`,label:r.$t(`serp.type.images`)},null,8,[`label`]),s(f,{value:`news`,label:r.$t(`serp.type.news`)},null,8,[`label`]),s(f,{value:`videos`,label:r.$t(`serp.type.videos`)},null,8,[`label`])]),_:1},8,[`modelValue`])])}var U=b(z,[[`render`,H],[`__scopeId`,`data-v-2913fb62`]]),W=r({name:`CountryInput`,components:{ElInput:E},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`}}),G={class:`field`},K={class:`title font-bold`};function q(r,i,a,o,l,u){let d=p(`el-input`);return c(),e(`div`,G,[t(`h2`,K,n(r.$t(`serp.name.country`)),1),s(d,{modelValue:r.value,"onUpdate:modelValue":i[0]||=e=>r.value=e,class:`value`,placeholder:r.$t(`serp.placeholder.country`)},null,8,[`modelValue`,`placeholder`])])}var J=b(W,[[`render`,q],[`__scopeId`,`data-v-f0672cc6`]]),Y=r({name:`LanguageInput`,components:{ElInput:E},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`}}),X={class:`field`},Z={class:`title font-bold`};function Q(r,i,a,o,l,u){let d=p(`el-input`);return c(),e(`div`,X,[t(`h2`,Z,n(r.$t(`serp.name.language`)),1),s(d,{modelValue:r.value,"onUpdate:modelValue":i[0]||=e=>r.value=e,class:`value`,placeholder:r.$t(`serp.placeholder.language`)},null,8,[`modelValue`,`placeholder`])])}var ne=r({name:`SearchPanel`,components:{ElButton:w,FontAwesomeIcon:D,QueryInput:R,TypeSelector:U,CountryInput:J,LanguageInput:b(Y,[[`render`,Q],[`__scopeId`,`data-v-dc1c94b7`]]),Consumption:ee},emits:[`search`],computed:{config(){return this.$store.state.serp?.config},consumption(){return x(this.config,this.service?.cost)},service(){return this.$store.state.serp?.service},searching(){return this.$store.state.serp?.status?.search===S.Request}},methods:{onSearch(){this.$emit(`search`)}}}),re={class:`flex flex-col h-full`},ie={class:`flex-1 overflow-y-auto p-5`},ae={class:`flex flex-col items-center justify-center px-5 pb-5`};function oe(r,i,o,l,d,f){let m=p(`query-input`),h=p(`type-selector`),g=p(`country-input`),_=p(`language-input`),v=p(`consumption`),y=p(`font-awesome-icon`),b=p(`el-button`);return c(),e(`div`,re,[t(`div`,ie,[s(m,{class:`mb-4`}),s(h,{class:`mb-4`}),s(g,{class:`mb-4`}),s(_,{class:`mb-4`})]),t(`div`,ae,[s(v,{value:r.consumption,service:r.service},null,8,[`value`,`service`]),s(b,{type:`primary`,class:`btn w-full`,round:``,loading:r.searching,onClick:r.onSearch},{default:u(()=>[s(y,{icon:`fa-solid fa-search`,class:`mr-2`}),a(` `+n(r.$t(`serp.button.search`)),1)]),_:1},8,[`loading`,`onClick`])])])}var se=b(ne,[[`render`,oe]]),ce=r({name:`KnowledgeGraph`,props:{data:{type:Object,required:!0}}}),le={class:`knowledge-graph rounded-xl border border-[var(--el-border-color-lighter)] p-5 bg-[var(--el-fill-color-blank)]`},ue={class:`flex flex-row gap-4`},de=[`src`,`alt`],fe={class:`flex-1 min-w-0`},pe={key:0,class:`text-xs text-[var(--el-text-color-disabled)] mb-1 uppercase tracking-wide`},me={class:`text-xl font-bold mb-1.5`},he={key:1,class:`text-sm text-[var(--el-text-color-regular)] mb-3 leading-relaxed`},ge=[`href`],_e={key:2,class:`text-sm`},ve={class:`text-[var(--el-text-color-disabled)] flex-none font-medium`},ye={class:`text-[var(--el-text-color-regular)]`};function be(r,i,o,s,u,p){return c(),e(`div`,le,[t(`div`,ue,[r.data.image_url?(c(),e(`img`,{key:0,src:r.data.image_url,alt:r.data.title,class:`w-28 h-28 rounded-lg object-cover flex-none shadow-sm`},null,8,de)):f(``,!0),t(`div`,fe,[r.data.type?(c(),e(`div`,pe,n(r.data.type),1)):f(``,!0),t(`h3`,me,n(r.data.title),1),r.data.description?(c(),e(`p`,he,[a(n(r.data.description)+` `,1),r.data.description_link?(c(),e(`a`,{key:0,href:r.data.description_link,target:`_blank`,rel:`noopener noreferrer`,class:`text-[var(--el-color-primary)] hover:underline ml-1`},n(r.data.description_source||`Source`),9,ge)):f(``,!0)])):f(``,!0),r.data.attributes&&Object.keys(r.data.attributes).length?(c(),e(`div`,_e,[(c(!0),e(l,null,d(r.data.attributes,(r,i)=>(c(),e(`div`,{key:i,class:`flex gap-2 mb-1 py-0.5`},[t(`span`,ve,n(i)+`:`,1),t(`span`,ye,n(r),1)]))),128))])):f(``,!0)])])])}var xe=b(ce,[[`render`,be]]),Se=r({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`}}}),Ce={class:`organic-result rounded-lg p-4 transition-all duration-200 hover:bg-[var(--el-fill-color-lighter)]`},we={key:0,class:`flex items-center gap-2 mb-1.5`},Te=[`src`,`alt`],Ee={class:`text-xs text-[var(--el-text-color-secondary)] truncate`},De={class:`text-xs text-[var(--el-text-color-disabled)]`},Oe=[`href`],ke={key:1,class:`text-xs text-[var(--el-text-color-disabled)] mt-1`},Ae={key:2,class:`text-sm text-[var(--el-text-color-regular)] mt-1.5 leading-relaxed line-clamp-3`},je={key:3,class:`mt-3 flex flex-wrap gap-x-4 gap-y-1`},Me=[`href`];function Ne(r,i,a,o,s,u){return c(),e(`div`,Ce,[r.displayUrl?(c(),e(`div`,we,[t(`img`,{src:r.faviconUrl,alt:r.hostname,class:`w-4 h-4 rounded-sm flex-none`,loading:`lazy`,onError:i[0]||=(...e)=>r.onFaviconError&&r.onFaviconError(...e)},null,40,Te),t(`span`,Ee,n(r.hostname),1),t(`span`,De,n(r.pathname),1)])):f(``,!0),t(`a`,{href:r.data.link,target:`_blank`,rel:`noopener noreferrer`,class:`text-base font-semibold text-[var(--el-color-primary)] hover:underline leading-snug block`},n(r.data.title),9,Oe),r.data.date?(c(),e(`div`,ke,n(r.data.date),1)):f(``,!0),r.data.snippet?(c(),e(`p`,Ae,n(r.data.snippet),1)):f(``,!0),r.data.sitelinks?.length?(c(),e(`div`,je,[(c(!0),e(l,null,d(r.data.sitelinks,(t,r)=>(c(),e(`a`,{key:r,href:t.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`},n(t.title),9,Me))),128))])):f(``,!0)])}var Pe=b(Se,[[`render`,Ne]]),Fe=r({name:`ImageResults`,props:{data:{type:Array,required:!0}}}),Ie={class:`rounded-xl border border-[var(--el-border-color-lighter)] p-5 bg-[var(--el-fill-color-blank)]`},Le={class:`text-base font-bold mb-3`},Re={class:`grid grid-cols-2 sm:grid-cols-3 md:grid-cols-4 gap-3`},ze=[`href`],Be=[`src`,`alt`],Ve={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`},He={class:`text-xs text-white line-clamp-2`};function Ue(r,i,a,o,s,u){return c(),e(`div`,Ie,[t(`h3`,Le,n(r.$t(`serp.name.imageResults`)),1),t(`div`,Re,[(c(!0),e(l,null,d(r.data,(r,i)=>(c(),e(`a`,{key:i,href:r.link,target:`_blank`,rel:`noopener noreferrer`,class:`group relative rounded-lg overflow-hidden bg-[var(--el-fill-color-light)] aspect-square`},[r.image_url?(c(),e(`img`,{key:0,src:r.image_url,alt:r.title,class:`w-full h-full object-cover transition-transform duration-300 group-hover:scale-105`,loading:`lazy`},null,8,Be)):f(``,!0),t(`div`,Ve,[t(`span`,He,n(r.title),1)])],8,ze))),128))])])}var We=b(Fe,[[`render`,Ue]]),Ge=r({name:`VideoResults`,props:{data:{type:Array,required:!0}}}),Ke={class:`text-base font-bold mb-3`},qe={class:`space-y-4`},Je=[`href`],Ye={class:`relative flex-shrink-0 w-40 h-24 rounded overflow-hidden bg-gray-100 dark:bg-gray-800`},Xe=[`src`,`alt`],Ze={key:1,class:`absolute bottom-1 right-1 bg-black/80 text-white text-xs px-1 rounded`},Qe={class:`flex-1 min-w-0`},$e={class:`text-blue-600 group-hover:underline font-medium line-clamp-2`},et={class:`text-xs text-gray-400 mt-1`},tt={key:0},nt={key:1},rt={key:2},it={key:0,class:`text-sm text-gray-600 dark:text-gray-300 mt-1 line-clamp-2`};function at(r,i,a,o,s,u){return c(),e(`div`,null,[t(`h3`,Ke,n(r.$t(`serp.name.videoResults`)),1),t(`div`,qe,[(c(!0),e(l,null,d(r.data,(r,i)=>(c(),e(`a`,{key:i,href:r.link,target:`_blank`,rel:`noopener noreferrer`,class:`flex gap-4 group`},[t(`div`,Ye,[r.image_url?(c(),e(`img`,{key:0,src:r.image_url,alt:r.title,class:`w-full h-full object-cover`,loading:`lazy`},null,8,Xe)):f(``,!0),r.duration?(c(),e(`div`,Ze,n(r.duration),1)):f(``,!0)]),t(`div`,Qe,[t(`div`,$e,n(r.title),1),t(`div`,et,[r.source?(c(),e(`span`,tt,n(r.source),1)):f(``,!0),r.channel?(c(),e(`span`,nt,` · `+n(r.channel),1)):f(``,!0),r.date?(c(),e(`span`,rt,` · `+n(r.date),1)):f(``,!0)]),r.snippet?(c(),e(`p`,it,n(r.snippet),1)):f(``,!0)])],8,Je))),128))])])}var ot=b(Ge,[[`render`,at]]),st=r({name:`NewsResults`,props:{data:{type:Array,required:!0}}}),ct={class:`text-base font-bold mb-3`},lt={class:`space-y-4`},ut=[`href`],dt={class:`flex-1 min-w-0`},ft={class:`text-blue-600 group-hover:underline font-medium line-clamp-2`},pt={class:`text-xs text-gray-400 mt-1`},mt={key:0},ht={key:1},gt={key:0,class:`text-sm text-gray-600 dark:text-gray-300 mt-1 line-clamp-2`},_t={key:0,class:`flex-shrink-0 w-24 h-24 rounded overflow-hidden bg-gray-100 dark:bg-gray-800`},vt=[`src`,`alt`];function yt(r,i,a,o,s,u){return c(),e(`div`,null,[t(`h3`,ct,n(r.$t(`serp.name.newsResults`)),1),t(`div`,lt,[(c(!0),e(l,null,d(r.data,(r,i)=>(c(),e(`a`,{key:i,href:r.link,target:`_blank`,rel:`noopener noreferrer`,class:`flex gap-4 group`},[t(`div`,dt,[t(`div`,ft,n(r.title),1),t(`div`,pt,[r.source?(c(),e(`span`,mt,n(r.source),1)):f(``,!0),r.date?(c(),e(`span`,ht,` · `+n(r.date),1)):f(``,!0)]),r.snippet?(c(),e(`p`,gt,n(r.snippet),1)):f(``,!0)]),r.image_url?(c(),e(`div`,_t,[t(`img`,{src:r.image_url,alt:r.title,class:`w-full h-full object-cover`,loading:`lazy`},null,8,vt)])):f(``,!0)],8,ut))),128))])])}var bt=b(st,[[`render`,yt]]),xt=r({name:`PeopleAlsoAsk`,components:{ElCollapse:v,ElCollapseItem:_},props:{data:{type:Array,required:!0}}}),St={class:`rounded-xl border border-[var(--el-border-color-lighter)] p-5 bg-[var(--el-fill-color-blank)]`},Ct={class:`text-base font-bold mb-3`},wt={key:0,class:`text-sm text-[var(--el-text-color-regular)] mb-2 leading-relaxed`},Tt=[`href`];function Et(r,i,a,m,h,g){let _=p(`el-collapse-item`),v=p(`el-collapse`);return c(),e(`div`,St,[t(`h3`,Ct,n(r.$t(`serp.name.peopleAlsoAsk`)),1),s(v,null,{default:u(()=>[(c(!0),e(l,null,d(r.data,(t,r)=>(c(),o(_,{key:r,title:t.question||t.title||``},{default:u(()=>[t.snippet?(c(),e(`p`,wt,n(t.snippet),1)):f(``,!0),t.link?(c(),e(`a`,{key:1,href:t.link,target:`_blank`,rel:`noopener noreferrer`,class:`text-xs text-[var(--el-color-primary)] hover:underline`},n(t.title||t.link),9,Tt)):f(``,!0)]),_:2},1032,[`title`]))),128))]),_:1})])}var Dt=b(xt,[[`render`,Et]]),Ot=r({name:`RelatedSearches`,components:{FontAwesomeIcon:D},props:{data:{type:Array,required:!0}},emits:[`search`],methods:{onSearch(e){e&&this.$emit(`search`,e)}}}),kt={class:`rounded-xl border border-[var(--el-border-color-lighter)] p-5 bg-[var(--el-fill-color-blank)]`},At={class:`text-base font-bold mb-3`},jt={class:`flex flex-wrap gap-2`},Mt=[`onClick`];function Nt(r,i,o,u,f,m){let h=p(`font-awesome-icon`);return c(),e(`div`,kt,[t(`h3`,At,n(r.$t(`serp.name.relatedSearches`)),1),t(`div`,jt,[(c(!0),e(l,null,d(r.data,(t,i)=>(c(),e(`button`,{key:i,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:e=>r.onSearch(t.query)},[s(h,{icon:`fa-solid fa-magnifying-glass`,class:`text-xs opacity-50`}),a(` `+n(t.query),1)],8,Mt))),128))])])}var $=r({name:`ResultPanel`,components:{FontAwesomeIcon:D,KnowledgeGraph:xe,OrganicResult:Pe,ImageResults:We,VideoResults:ot,NewsResults:bt,PeopleAlsoAsk:Dt,RelatedSearches:b(Ot,[[`render`,Nt]])},emits:[`related-search`],computed:{results(){return this.$store.state.serp?.results},searching(){return this.$store.state.serp?.status?.search===S.Request},noResults(){return this.$store.state.serp?.status?.search===S.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)}}}),Pt={class:`h-full overflow-y-auto p-6`},Ft={key:0,class:`max-w-3xl mx-auto py-8`},It={key:1,class:`flex flex-col items-center justify-center py-24 text-[var(--el-text-color-disabled)]`},Lt={class:`text-base`},Rt={key:2,class:`max-w-3xl mx-auto`},zt={key:1,class:`mb-6`},Bt={key:3,class:`flex flex-col items-center justify-center py-24 text-[var(--el-text-color-disabled)]`},Vt={class:`text-base`};function Ht(r,a,u,m,h,g){let _=p(`font-awesome-icon`),v=p(`knowledge-graph`),y=p(`organic-result`),b=p(`image-results`),x=p(`video-results`),S=p(`news-results`),C=p(`people-also-ask`),w=p(`related-searches`);return c(),e(`div`,Pt,[r.searching?(c(),e(`div`,Ft,[(c(),e(l,null,d(4,e=>t(`div`,{key:e,class:`mb-6 animate-pulse`},[...a[0]||=[i(`<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))])):r.noResults?(c(),e(`div`,It,[s(_,{icon:`fa-solid fa-face-meh`,class:`text-5xl mb-4 opacity-40`}),t(`p`,Lt,n(r.$t(`serp.message.noResults`)),1)])):r.results?(c(),e(`div`,Rt,[r.results.knowledge_graph?.title?(c(),o(v,{key:0,data:r.results.knowledge_graph,class:`mb-6`},null,8,[`data`])):f(``,!0),r.results.organic?.length?(c(),e(`div`,zt,[(c(!0),e(l,null,d(r.results.organic,(e,t)=>(c(),o(y,{key:t,data:e,class:`mb-1`},null,8,[`data`]))),128))])):f(``,!0),r.results.images?.length?(c(),o(b,{key:2,data:r.results.images,class:`mb-6`},null,8,[`data`])):f(``,!0),r.results.videos?.length?(c(),o(x,{key:3,data:r.results.videos,class:`mb-6`},null,8,[`data`])):f(``,!0),r.results.news?.length?(c(),o(S,{key:4,data:r.results.news,class:`mb-6`},null,8,[`data`])):f(``,!0),r.results.people_also_ask?.length?(c(),o(C,{key:5,data:r.results.people_also_ask,class:`mb-6`},null,8,[`data`])):f(``,!0),r.results.related_searches?.length?(c(),o(w,{key:6,data:r.results.related_searches,class:`mb-6`,onSearch:r.onRelatedSearch},null,8,[`data`,`onSearch`])):f(``,!0)])):(c(),e(`div`,Bt,[s(_,{icon:`fa-solid fa-globe`,class:`text-5xl mb-4 opacity-30`}),t(`p`,Vt,n(r.$t(`serp.description.query`)),1)]))])}var Ut=r({name:`SerpIndex`,components:{Layout:M,SearchPanel:se,ResultPanel:b($,[[`render`,Ht]])},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(C()&&this.$store.state.serp?.config?.query){T.info(this.$t(`serp.message.searching`));try{await this.$store.dispatch(`serp/search`),T.success(this.$t(`serp.message.searchSuccess`))}catch(e){(e?.response?.data)?.error?.code===`used_up`?T.error(this.$t(`serp.message.usedUp`)):T.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 Wt(e,t,n,r,i,a){let l=p(`search-panel`),d=p(`result-panel`),f=p(`layout`);return c(),o(f,null,{config:u(()=>[s(l,{onSearch:e.onSearch},null,8,[`onSearch`])]),result:u(()=>[s(d,{onRelatedSearch:e.onRelatedSearch},null,8,[`onRelatedSearch`])]),_:1})}var Gt=b(Ut,[[`render`,Wt]]);export{Gt as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{A as e,I as t,Q as n}from"./vendor-chart-kBsXB1rh.js";import{A as r}from"./index-
|
|
1
|
+
import{A as e,I as t,Q as n}from"./vendor-chart-kBsXB1rh.js";import{A as r}from"./index-BDvTozfe.js";var i=t({name:`SettingsIndex`,mounted(){let e=this.$route.query.tab||``;window.dispatchEvent(new CustomEvent(`open-user-settings`,{detail:{tab:e}}))}}),a={class:`settings-page`};function o(t,r,i,o,s,c){return n(),e(`div`,a)}var s=r(i,[[`render`,o]]);export{s as default};
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import"./rolldown-runtime--c01j_DQ.js";import{A as e,D as t,Gt as n,I as r,M as i,N as a,O as o,P as s,Q as c,S as l,b as u,dt as d,et as f,k as p,nt as m,tt as h,y as g}from"./vendor-chart-kBsXB1rh.js";import{r as _,t as v}from"./select-leWGa1qy.js";import{n as y,t as b}from"./tabs-CL1IKHZm.js";import{t as x}from"./tooltip-Bg-5iX0y.js";import{t as S}from"./image-D2Uc31X4.js";import{t as C}from"./alert-Opv77n_G.js";import{n as w,r as ee}from"./radio-Ct6y4mt7.js";import{n as T,t as E}from"./collapse-c2sK1KTq.js";import{t as D}from"./drawer-VR-pZKxs.js";import{t as O}from"./input-number-CjZlVSMZ.js";import{t as k}from"./switch-DJBjdzV-.js";import"./constants-BqvGY8Qp.js";import{A,Kt as te,Vr as j,en as M,fi as N,ti as P,xi as F}from"./index-DPT0LY_a.js";import{t as I}from"./index.es-BF0roIeI.js";import{t as L}from"./CopyToClipboard-BPv_hKe6.js";import{t as R}from"./Consumption-C6c-vSv0.js";var z=r({name:`LayoutWebextrator`,components:{ElDrawer:D,ElButton:N,FontAwesomeIcon:I},data(){return{drawer:!1}}}),B={class:`main flex flex-row flex-1`},V={class:`config w-[340px] flex-none h-full overflow-y-auto bg-[var(--app-sidebar-bg)] border-r border-[var(--app-border-subtle)]`},H={class:`result h-full flex-1 flex flex-col min-w-0 overflow-x-hidden bg-[var(--app-content-bg)]`};function U(n,r,i,a,o,l){let u=m(`font-awesome-icon`),f=m(`el-button`),p=m(`el-drawer`);return c(),e(`div`,B,[t(`div`,V,[h(n.$slots,`config`,{},void 0,!0)]),t(`div`,H,[h(n.$slots,`result`,{},void 0,!0)]),s(f,{circle:``,class:`menu`,onClick:r[0]||=e=>n.drawer=!0},{default:d(()=>[s(u,{icon:`fa-solid fa-sliders`})]),_:1}),s(p,{modelValue:n.drawer,"onUpdate:modelValue":r[1]||=e=>n.drawer=e,direction:`ltr`,"with-header":!1,size:`340px`,class:`drawer`},{default:d(()=>[h(n.$slots,`config`,{},void 0,!0)]),_:3},8,[`modelValue`])])}var W=A(z,[[`render`,U],[`__scopeId`,`data-v-7b1cd8ae`]]),G=r({name:`ModeSelector`,components:{ElRadioGroup:ee,ElRadioButton:w,FontAwesomeIcon:I},computed:{value:{get(){return this.$store.state.webextrator?.config?.mode},set(e){this.$store.commit(`webextrator/setConfig`,{...this.$store.state.webextrator?.config,mode:e})}}}}),K={class:`field`},q={class:`title font-bold`};function J(r,i,o,l,u,f){let p=m(`font-awesome-icon`),h=m(`el-radio-button`),g=m(`el-radio-group`);return c(),e(`div`,K,[t(`h2`,q,n(r.$t(`webextrator.name.mode`)),1),s(g,{modelValue:r.value,"onUpdate:modelValue":i[0]||=e=>r.value=e,class:`value w-full`},{default:d(()=>[s(h,{label:`extract`,value:`extract`},{default:d(()=>[s(p,{icon:`fa-solid fa-wand-magic-sparkles`,class:`mr-1`}),a(` `+n(r.$t(`webextrator.mode.extract`)),1)]),_:1}),s(h,{label:`render`,value:`render`},{default:d(()=>[s(p,{icon:`fa-solid fa-globe`,class:`mr-1`}),a(` `+n(r.$t(`webextrator.mode.render`)),1)]),_:1})]),_:1},8,[`modelValue`])])}var Y=A(G,[[`render`,J],[`__scopeId`,`data-v-31e6c11d`]]),X=r({name:`UrlInput`,components:{ElInput:F},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`)}}}),Z={class:`field`},Q={class:`title font-bold`};function ne(r,i,a,o,l,d){let f=m(`el-input`);return c(),e(`div`,Z,[t(`h2`,Q,n(r.$t(`webextrator.name.url`)),1),s(f,{modelValue:r.url,"onUpdate:modelValue":i[0]||=e=>r.url=e,type:`textarea`,rows:2,class:`prompt`,placeholder:r.$t(`webextrator.placeholder.url`),onKeydown:g(u(r.onEnter,[`exact`,`prevent`]),[`enter`])},null,8,[`modelValue`,`placeholder`,`onKeydown`])])}var re=A(X,[[`render`,ne],[`__scopeId`,`data-v-18488009`]]),ie=r({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`}}),ae={class:`field`},oe={class:`title font-bold`};function se(r,i,a,o,l,u){let f=m(`el-option`),p=m(`el-select`);return c(),e(`div`,ae,[t(`h2`,oe,n(r.$t(`webextrator.name.expectedType`)),1),s(p,{modelValue:r.value,"onUpdate:modelValue":i[0]||=e=>r.value=e,class:`value`},{default:d(()=>[s(f,{value:`general`,label:r.$t(`webextrator.expectedType.general`)},null,8,[`label`]),s(f,{value:`article`,label:r.$t(`webextrator.expectedType.article`)},null,8,[`label`]),s(f,{value:`product`,label:r.$t(`webextrator.expectedType.product`)},null,8,[`label`])]),_:1},8,[`modelValue`])])}var ce=A(ie,[[`render`,se],[`__scopeId`,`data-v-3b572c49`]]),le=r({name:`LlmToggle`,components:{ElSwitch:k,ElTooltip:x,FontAwesomeIcon:I},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})}}}}),ue={class:`field`},de={class:`title font-bold`};function fe(r,i,o,l,u,f){let p=m(`font-awesome-icon`),h=m(`el-tooltip`),g=m(`el-switch`);return c(),e(`div`,ue,[t(`h2`,de,[a(n(r.$t(`webextrator.name.enableLlm`))+` `,1),s(h,{effect:`dark`,content:r.$t(`webextrator.description.enableLlm`),placement:`top`},{default:d(()=>[s(p,{icon:`fa-solid fa-circle-info`,class:`ml-1 text-[var(--el-text-color-secondary)] text-xs`})]),_:1},8,[`content`])]),s(g,{modelValue:r.value,"onUpdate:modelValue":i[0]||=e=>r.value=e,class:`value`},null,8,[`modelValue`])])}var pe=A(le,[[`render`,fe],[`__scopeId`,`data-v-32fa7c89`]]),me=[`image`,`font`,`media`,`stylesheet`,`xhr`,`fetch`],he=r({name:`AdvancedOptions`,components:{ElCollapse:E,ElCollapseItem:T,ElInput:F,ElInputNumber:O,ElSelect:_,ElOption:v},data(){return{active:[]}},computed:{resourceKinds(){return me},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})}}}),ge={class:`field`},_e={class:`sub-title`},ve={class:`field`},ye={class:`sub-title`},be={class:`field`},xe={class:`sub-title`},Se={class:`field`},Ce={class:`sub-title`},we={class:`field`},Te={class:`sub-title`};function Ee(r,i,a,u,p,h){let g=m(`el-option`),_=m(`el-select`),v=m(`el-input`),y=m(`el-input-number`),b=m(`el-collapse-item`),x=m(`el-collapse`);return c(),o(x,{modelValue:r.active,"onUpdate:modelValue":i[5]||=e=>r.active=e,class:`advanced`},{default:d(()=>[s(b,{title:r.$t(`webextrator.name.advanced`),name:`advanced`},{default:d(()=>[t(`div`,ge,[t(`h2`,_e,n(r.$t(`webextrator.name.waitUntil`)),1),s(_,{modelValue:r.waitUntil,"onUpdate:modelValue":i[0]||=e=>r.waitUntil=e,class:`value`},{default:d(()=>[s(g,{value:`networkidle`,label:r.$t(`webextrator.waitUntil.networkidle`)},null,8,[`label`]),s(g,{value:`load`,label:r.$t(`webextrator.waitUntil.load`)},null,8,[`label`]),s(g,{value:`domcontentloaded`,label:r.$t(`webextrator.waitUntil.domcontentloaded`)},null,8,[`label`]),s(g,{value:`commit`,label:r.$t(`webextrator.waitUntil.commit`)},null,8,[`label`])]),_:1},8,[`modelValue`])]),t(`div`,ve,[t(`h2`,ye,n(r.$t(`webextrator.name.waitForSelector`)),1),s(v,{modelValue:r.waitForSelector,"onUpdate:modelValue":i[1]||=e=>r.waitForSelector=e,placeholder:r.$t(`webextrator.placeholder.waitForSelector`)},null,8,[`modelValue`,`placeholder`])]),t(`div`,be,[t(`h2`,xe,n(r.$t(`webextrator.name.timeout`)),1),s(y,{modelValue:r.timeout,"onUpdate:modelValue":i[2]||=e=>r.timeout=e,min:1,max:120,step:5,"controls-position":`right`,class:`w-full`},null,8,[`modelValue`])]),t(`div`,Se,[t(`h2`,Ce,n(r.$t(`webextrator.name.delay`)),1),s(y,{modelValue:r.delay,"onUpdate:modelValue":i[3]||=e=>r.delay=e,min:0,max:30,step:1,"controls-position":`right`,class:`w-full`},null,8,[`modelValue`])]),t(`div`,we,[t(`h2`,Te,n(r.$t(`webextrator.name.blockResources`)),1),s(_,{modelValue:r.blockResources,"onUpdate:modelValue":i[4]||=e=>r.blockResources=e,multiple:``,"collapse-tags":``,placeholder:r.$t(`webextrator.placeholder.blockResources`),class:`w-full`},{default:d(()=>[(c(!0),e(l,null,f(r.resourceKinds,e=>(c(),o(g,{key:e,label:r.$t(`webextrator.blockResource.${e}`),value:e},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`])])]),_:1},8,[`title`])]),_:1},8,[`modelValue`])}var De=r({name:`WebextratorConfigPanel`,components:{ElButton:N,FontAwesomeIcon:I,ModeSelector:Y,UrlInput:re,ExpectedTypeSelector:ce,LlmToggle:pe,AdvancedOptions:A(he,[[`render`,Ee],[`__scopeId`,`data-v-8f36d2df`]]),Consumption:R},emits:[`run`],computed:{config(){return this.$store.state.webextrator?.config},service(){return this.$store.state.webextrator?.service},consumption(){return te(this.config||{},this.service?.cost)},running(){return this.$store.state.webextrator?.status?.run===j.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`)}}}),Oe={class:`flex flex-col h-full`},ke={class:`flex-1 overflow-y-auto p-5`},Ae={class:`flex flex-col items-center justify-center px-5 pb-5`};function je(r,i,o,u,f,h){let g=m(`mode-selector`),_=m(`url-input`),v=m(`expected-type-selector`),y=m(`llm-toggle`),b=m(`advanced-options`),x=m(`consumption`),S=m(`font-awesome-icon`),C=m(`el-button`);return c(),e(`div`,Oe,[t(`div`,ke,[s(g,{class:`mb-4`}),s(_,{class:`mb-4`,onSubmit:r.onRun},null,8,[`onSubmit`]),r.isExtract?(c(),e(l,{key:0},[s(v,{class:`mb-4`}),s(y,{class:`mb-4`})],64)):p(``,!0),s(b,{class:`mb-4`})]),t(`div`,Ae,[s(x,{value:r.consumption,service:r.service},null,8,[`value`,`service`]),s(C,{type:`primary`,class:`w-full`,round:``,loading:r.running,disabled:!r.canRun,onClick:r.onRun},{default:d(()=>[s(S,{icon:`fa-solid fa-bolt`,class:`mr-2`}),a(` `+n(r.$t(r.isExtract?`webextrator.button.extract`:`webextrator.button.render`)),1)]),_:1},8,[`loading`,`disabled`,`onClick`])])])}var Me=A(De,[[`render`,je]]),Ne=e=>!!e&&e.kind!==`render`,Pe=r({name:`WebextratorResultPanel`,components:{ElAlert:C,ElImage:S,ElTabs:y,ElTabPane:b,FontAwesomeIcon:I,CopyToClipboard:L},data(){return{activeTab:`markdown`}},computed:{response(){return this.$store.state.webextrator?.response},running(){return this.$store.state.webextrator?.status?.run===j.Request},data(){return this.response?.data},renderData(){return this.data&&this.data.kind===`render`?this.data:void 0},extractData(){return Ne(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,D as t,Gt as n,I as r,M as i,N as a,O as o,P as s,Q as c,S as l,b as u,dt as d,et as f,k as p,nt as m,tt as h,y as g}from"./vendor-chart-kBsXB1rh.js";import{r as _,t as v}from"./select-BMkecWJ3.js";import{n as y,t as b}from"./tabs-DjGinRJL.js";import{t as x}from"./tooltip-DW1XZtXG.js";import{t as S}from"./image-DsbwPTmm.js";import{t as C}from"./alert-BDvIuUu3.js";import{n as w,r as ee}from"./radio-Ct6y4mt7.js";import{n as T,t as E}from"./collapse-C-qULowS.js";import{t as D}from"./drawer-B9vlF9-6.js";import{t as O}from"./input-number-Co-ZG8zL.js";import{t as k}from"./switch-D9jGUBnB.js";import"./constants-Bs-70rQx.js";import{A,Kt as te,Vr as j,en as M,fi as N,ti as P,xi as F}from"./index-BDvTozfe.js";import{t as I}from"./index.es-B8y6GOsn.js";import{t as L}from"./CopyToClipboard-CdGWA3lV.js";import{t as R}from"./Consumption-B2gTsRAP.js";var z=r({name:`LayoutWebextrator`,components:{ElDrawer:D,ElButton:N,FontAwesomeIcon:I},data(){return{drawer:!1}}}),B={class:`main flex flex-row flex-1`},V={class:`config w-[340px] flex-none h-full overflow-y-auto bg-[var(--app-sidebar-bg)] border-r border-[var(--app-border-subtle)]`},H={class:`result h-full flex-1 flex flex-col min-w-0 overflow-x-hidden bg-[var(--app-content-bg)]`};function U(n,r,i,a,o,l){let u=m(`font-awesome-icon`),f=m(`el-button`),p=m(`el-drawer`);return c(),e(`div`,B,[t(`div`,V,[h(n.$slots,`config`,{},void 0,!0)]),t(`div`,H,[h(n.$slots,`result`,{},void 0,!0)]),s(f,{circle:``,class:`menu`,onClick:r[0]||=e=>n.drawer=!0},{default:d(()=>[s(u,{icon:`fa-solid fa-sliders`})]),_:1}),s(p,{modelValue:n.drawer,"onUpdate:modelValue":r[1]||=e=>n.drawer=e,direction:`ltr`,"with-header":!1,size:`340px`,class:`drawer`},{default:d(()=>[h(n.$slots,`config`,{},void 0,!0)]),_:3},8,[`modelValue`])])}var W=A(z,[[`render`,U],[`__scopeId`,`data-v-7b1cd8ae`]]),G=r({name:`ModeSelector`,components:{ElRadioGroup:ee,ElRadioButton:w,FontAwesomeIcon:I},computed:{value:{get(){return this.$store.state.webextrator?.config?.mode},set(e){this.$store.commit(`webextrator/setConfig`,{...this.$store.state.webextrator?.config,mode:e})}}}}),K={class:`field`},q={class:`title font-bold`};function J(r,i,o,l,u,f){let p=m(`font-awesome-icon`),h=m(`el-radio-button`),g=m(`el-radio-group`);return c(),e(`div`,K,[t(`h2`,q,n(r.$t(`webextrator.name.mode`)),1),s(g,{modelValue:r.value,"onUpdate:modelValue":i[0]||=e=>r.value=e,class:`value w-full`},{default:d(()=>[s(h,{label:`extract`,value:`extract`},{default:d(()=>[s(p,{icon:`fa-solid fa-wand-magic-sparkles`,class:`mr-1`}),a(` `+n(r.$t(`webextrator.mode.extract`)),1)]),_:1}),s(h,{label:`render`,value:`render`},{default:d(()=>[s(p,{icon:`fa-solid fa-globe`,class:`mr-1`}),a(` `+n(r.$t(`webextrator.mode.render`)),1)]),_:1})]),_:1},8,[`modelValue`])])}var Y=A(G,[[`render`,J],[`__scopeId`,`data-v-31e6c11d`]]),X=r({name:`UrlInput`,components:{ElInput:F},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`)}}}),Z={class:`field`},Q={class:`title font-bold`};function ne(r,i,a,o,l,d){let f=m(`el-input`);return c(),e(`div`,Z,[t(`h2`,Q,n(r.$t(`webextrator.name.url`)),1),s(f,{modelValue:r.url,"onUpdate:modelValue":i[0]||=e=>r.url=e,type:`textarea`,rows:2,class:`prompt`,placeholder:r.$t(`webextrator.placeholder.url`),onKeydown:g(u(r.onEnter,[`exact`,`prevent`]),[`enter`])},null,8,[`modelValue`,`placeholder`,`onKeydown`])])}var re=A(X,[[`render`,ne],[`__scopeId`,`data-v-18488009`]]),ie=r({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`}}),ae={class:`field`},oe={class:`title font-bold`};function se(r,i,a,o,l,u){let f=m(`el-option`),p=m(`el-select`);return c(),e(`div`,ae,[t(`h2`,oe,n(r.$t(`webextrator.name.expectedType`)),1),s(p,{modelValue:r.value,"onUpdate:modelValue":i[0]||=e=>r.value=e,class:`value`},{default:d(()=>[s(f,{value:`general`,label:r.$t(`webextrator.expectedType.general`)},null,8,[`label`]),s(f,{value:`article`,label:r.$t(`webextrator.expectedType.article`)},null,8,[`label`]),s(f,{value:`product`,label:r.$t(`webextrator.expectedType.product`)},null,8,[`label`])]),_:1},8,[`modelValue`])])}var ce=A(ie,[[`render`,se],[`__scopeId`,`data-v-3b572c49`]]),le=r({name:`LlmToggle`,components:{ElSwitch:k,ElTooltip:x,FontAwesomeIcon:I},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})}}}}),ue={class:`field`},de={class:`title font-bold`};function fe(r,i,o,l,u,f){let p=m(`font-awesome-icon`),h=m(`el-tooltip`),g=m(`el-switch`);return c(),e(`div`,ue,[t(`h2`,de,[a(n(r.$t(`webextrator.name.enableLlm`))+` `,1),s(h,{effect:`dark`,content:r.$t(`webextrator.description.enableLlm`),placement:`top`},{default:d(()=>[s(p,{icon:`fa-solid fa-circle-info`,class:`ml-1 text-[var(--el-text-color-secondary)] text-xs`})]),_:1},8,[`content`])]),s(g,{modelValue:r.value,"onUpdate:modelValue":i[0]||=e=>r.value=e,class:`value`},null,8,[`modelValue`])])}var pe=A(le,[[`render`,fe],[`__scopeId`,`data-v-32fa7c89`]]),me=[`image`,`font`,`media`,`stylesheet`,`xhr`,`fetch`],he=r({name:`AdvancedOptions`,components:{ElCollapse:E,ElCollapseItem:T,ElInput:F,ElInputNumber:O,ElSelect:_,ElOption:v},data(){return{active:[]}},computed:{resourceKinds(){return me},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})}}}),ge={class:`field`},_e={class:`sub-title`},ve={class:`field`},ye={class:`sub-title`},be={class:`field`},xe={class:`sub-title`},Se={class:`field`},Ce={class:`sub-title`},we={class:`field`},Te={class:`sub-title`};function Ee(r,i,a,u,p,h){let g=m(`el-option`),_=m(`el-select`),v=m(`el-input`),y=m(`el-input-number`),b=m(`el-collapse-item`),x=m(`el-collapse`);return c(),o(x,{modelValue:r.active,"onUpdate:modelValue":i[5]||=e=>r.active=e,class:`advanced`},{default:d(()=>[s(b,{title:r.$t(`webextrator.name.advanced`),name:`advanced`},{default:d(()=>[t(`div`,ge,[t(`h2`,_e,n(r.$t(`webextrator.name.waitUntil`)),1),s(_,{modelValue:r.waitUntil,"onUpdate:modelValue":i[0]||=e=>r.waitUntil=e,class:`value`},{default:d(()=>[s(g,{value:`networkidle`,label:r.$t(`webextrator.waitUntil.networkidle`)},null,8,[`label`]),s(g,{value:`load`,label:r.$t(`webextrator.waitUntil.load`)},null,8,[`label`]),s(g,{value:`domcontentloaded`,label:r.$t(`webextrator.waitUntil.domcontentloaded`)},null,8,[`label`]),s(g,{value:`commit`,label:r.$t(`webextrator.waitUntil.commit`)},null,8,[`label`])]),_:1},8,[`modelValue`])]),t(`div`,ve,[t(`h2`,ye,n(r.$t(`webextrator.name.waitForSelector`)),1),s(v,{modelValue:r.waitForSelector,"onUpdate:modelValue":i[1]||=e=>r.waitForSelector=e,placeholder:r.$t(`webextrator.placeholder.waitForSelector`)},null,8,[`modelValue`,`placeholder`])]),t(`div`,be,[t(`h2`,xe,n(r.$t(`webextrator.name.timeout`)),1),s(y,{modelValue:r.timeout,"onUpdate:modelValue":i[2]||=e=>r.timeout=e,min:1,max:120,step:5,"controls-position":`right`,class:`w-full`},null,8,[`modelValue`])]),t(`div`,Se,[t(`h2`,Ce,n(r.$t(`webextrator.name.delay`)),1),s(y,{modelValue:r.delay,"onUpdate:modelValue":i[3]||=e=>r.delay=e,min:0,max:30,step:1,"controls-position":`right`,class:`w-full`},null,8,[`modelValue`])]),t(`div`,we,[t(`h2`,Te,n(r.$t(`webextrator.name.blockResources`)),1),s(_,{modelValue:r.blockResources,"onUpdate:modelValue":i[4]||=e=>r.blockResources=e,multiple:``,"collapse-tags":``,placeholder:r.$t(`webextrator.placeholder.blockResources`),class:`w-full`},{default:d(()=>[(c(!0),e(l,null,f(r.resourceKinds,e=>(c(),o(g,{key:e,label:r.$t(`webextrator.blockResource.${e}`),value:e},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`])])]),_:1},8,[`title`])]),_:1},8,[`modelValue`])}var De=r({name:`WebextratorConfigPanel`,components:{ElButton:N,FontAwesomeIcon:I,ModeSelector:Y,UrlInput:re,ExpectedTypeSelector:ce,LlmToggle:pe,AdvancedOptions:A(he,[[`render`,Ee],[`__scopeId`,`data-v-8f36d2df`]]),Consumption:R},emits:[`run`],computed:{config(){return this.$store.state.webextrator?.config},service(){return this.$store.state.webextrator?.service},consumption(){return te(this.config||{},this.service?.cost)},running(){return this.$store.state.webextrator?.status?.run===j.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`)}}}),Oe={class:`flex flex-col h-full`},ke={class:`flex-1 overflow-y-auto p-5`},Ae={class:`flex flex-col items-center justify-center px-5 pb-5`};function je(r,i,o,u,f,h){let g=m(`mode-selector`),_=m(`url-input`),v=m(`expected-type-selector`),y=m(`llm-toggle`),b=m(`advanced-options`),x=m(`consumption`),S=m(`font-awesome-icon`),C=m(`el-button`);return c(),e(`div`,Oe,[t(`div`,ke,[s(g,{class:`mb-4`}),s(_,{class:`mb-4`,onSubmit:r.onRun},null,8,[`onSubmit`]),r.isExtract?(c(),e(l,{key:0},[s(v,{class:`mb-4`}),s(y,{class:`mb-4`})],64)):p(``,!0),s(b,{class:`mb-4`})]),t(`div`,Ae,[s(x,{value:r.consumption,service:r.service},null,8,[`value`,`service`]),s(C,{type:`primary`,class:`w-full`,round:``,loading:r.running,disabled:!r.canRun,onClick:r.onRun},{default:d(()=>[s(S,{icon:`fa-solid fa-bolt`,class:`mr-2`}),a(` `+n(r.$t(r.isExtract?`webextrator.button.extract`:`webextrator.button.render`)),1)]),_:1},8,[`loading`,`disabled`,`onClick`])])])}var Me=A(De,[[`render`,je]]),Ne=e=>!!e&&e.kind!==`render`,Pe=r({name:`WebextratorResultPanel`,components:{ElAlert:C,ElImage:S,ElTabs:y,ElTabPane:b,FontAwesomeIcon:I,CopyToClipboard:L},data(){return{activeTab:`markdown`}},computed:{response(){return this.$store.state.webextrator?.response},running(){return this.$store.state.webextrator?.status?.run===j.Request},data(){return this.response?.data},renderData(){return this.data&&this.data.kind===`render`?this.data:void 0},extractData(){return Ne(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`}}}),Fe={class:`h-full overflow-y-auto p-6`},Ie={key:0,class:`max-w-4xl mx-auto py-4`},Le={class:`flex items-center gap-2 mb-3 text-[var(--el-color-primary)] text-sm`},Re={key:1,class:`flex flex-col items-center justify-center py-24 text-[var(--el-text-color-disabled)]`},ze={class:`text-base mb-1`},Be={class:`text-xs opacity-70`},Ve={key:2,class:`max-w-4xl mx-auto py-4`},He={class:`text-xs whitespace-pre-wrap break-words`},Ue={key:3,class:`max-w-4xl mx-auto`},We={class:`mb-4`},Ge={class:`text-xl font-semibold leading-snug mb-1 break-words text-[var(--el-text-color-primary)]`},Ke={class:`flex flex-wrap items-center gap-x-3 gap-y-1 text-xs text-[var(--el-text-color-secondary)]`},qe=[`href`],Je={key:1},Ye={key:2},Xe={key:3},Ze={key:0,class:`mt-2 text-sm text-[var(--el-text-color-regular)] leading-relaxed line-clamp-3`},Qe={key:0,class:`mb-5`},$e={class:`tab-toolbar`},et={class:`content-block`},tt={class:`tab-toolbar`},$={class:`content-block`},nt={class:`tab-toolbar`},rt={class:`content-block code`},it={class:`tab-toolbar`},at={class:`links-list`},ot=[`href`],st={class:`grid grid-cols-2 md:grid-cols-3 lg:grid-cols-4 gap-2`},ct={class:`tab-toolbar`},lt={class:`content-block code`},ut={class:`tab-toolbar`},dt={class:`content-block code`};function ft(r,u,h,g,_,v){let y=m(`font-awesome-icon`),b=m(`el-alert`),x=m(`el-image`),S=m(`copy-to-clipboard`),C=m(`el-tab-pane`),w=m(`el-tabs`);return c(),e(`div`,Fe,[r.running?(c(),e(`div`,Ie,[t(`div`,Le,[s(y,{icon:`fa-solid fa-circle-notch`,spin:``}),t(`span`,null,n(r.$t(`webextrator.message.running`)),1)]),u[1]||=i(`<div class="mb-6 animate-pulse" data-v-b05b4db0><div class="h-5 w-3/5 rounded bg-[var(--el-fill-color-dark)] mb-2" data-v-b05b4db0></div><div class="h-3 w-2/5 rounded bg-[var(--el-fill-color)] mb-4" data-v-b05b4db0></div><div class="h-64 w-full rounded bg-[var(--el-fill-color)] mb-3" data-v-b05b4db0></div><div class="h-3 w-full rounded bg-[var(--el-fill-color)] mb-1" data-v-b05b4db0></div><div class="h-3 w-5/6 rounded bg-[var(--el-fill-color)] mb-1" data-v-b05b4db0></div><div class="h-3 w-4/6 rounded bg-[var(--el-fill-color)]" data-v-b05b4db0></div></div>`,1)])):!r.response&&!r.errorMessage?(c(),e(`div`,Re,[s(y,{icon:`fa-solid fa-globe`,class:`text-6xl mb-4 opacity-30`}),t(`p`,ze,n(r.$t(`webextrator.description.intro`)),1),t(`p`,Be,n(r.$t(`webextrator.description.introHint`)),1)])):r.errorMessage?(c(),e(`div`,Ve,[s(b,{type:`error`,closable:!1,"show-icon":``,title:r.$t(`webextrator.message.failed`)},{default:d(()=>[t(`pre`,He,n(r.errorMessage),1)]),_:1},8,[`title`])])):r.data?(c(),e(`div`,Ue,[t(`header`,We,[t(`h1`,Ge,n(r.data.title||r.$t(`webextrator.message.untitled`)),1),t(`div`,Ke,[r.finalUrl?(c(),e(`a`,{key:0,href:r.finalUrl,target:`_blank`,rel:`noopener`,class:`hover:underline truncate max-w-[60%]`},[s(y,{icon:`fa-solid fa-up-right-from-square`,class:`mr-1`}),a(n(r.finalUrl),1)],8,qe)):p(``,!0),r.renderData?.status?(c(),e(`span`,Je,[s(y,{icon:`fa-solid fa-signal`,class:`mr-1`}),a(n(r.renderData.status),1)])):p(``,!0),r.response?.elapsed?(c(),e(`span`,Ye,[s(y,{icon:`fa-solid fa-clock`,class:`mr-1`}),a(n(r.response.elapsed.toFixed(2))+`s `,1)])):p(``,!0),r.contentTypeLabel?(c(),e(`span`,Xe,[s(y,{icon:`fa-solid fa-tag`,class:`mr-1`}),a(n(r.contentTypeLabel),1)])):p(``,!0)]),r.extractData?.description?(c(),e(`p`,Ze,n(r.extractData.description),1)):p(``,!0)]),r.screenshotSrc?(c(),e(`figure`,Qe,[s(x,{src:r.screenshotSrc,fit:`contain`,"preview-src-list":[r.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`])])):p(``,!0),s(w,{modelValue:r.activeTab,"onUpdate:modelValue":u[0]||=e=>r.activeTab=e,class:`result-tabs`},{default:d(()=>[r.markdown?(c(),o(C,{key:0,label:r.$t(`webextrator.tab.markdown`),name:`markdown`},{default:d(()=>[t(`div`,$e,[s(S,{content:r.markdown},null,8,[`content`])]),t(`pre`,et,n(r.markdown),1)]),_:1},8,[`label`])):p(``,!0),r.plainText?(c(),o(C,{key:1,label:r.$t(`webextrator.tab.text`),name:`text`},{default:d(()=>[t(`div`,tt,[s(S,{content:r.plainText},null,8,[`content`])]),t(`pre`,$,n(r.plainText),1)]),_:1},8,[`label`])):p(``,!0),r.extractData?.structured?(c(),o(C,{key:2,label:r.$t(`webextrator.tab.structured`),name:`structured`},{default:d(()=>[t(`div`,nt,[s(S,{content:r.structuredPretty},null,8,[`content`])]),t(`pre`,rt,n(r.structuredPretty),1)]),_:1},8,[`label`])):p(``,!0),r.links.length?(c(),o(C,{key:3,label:`${r.$t(`webextrator.tab.links`)} (${r.links.length})`,name:`links`},{default:d(()=>[t(`div`,it,[s(S,{content:r.linksPlain},null,8,[`content`])]),t(`ul`,at,[(c(!0),e(l,null,f(r.links,(r,i)=>(c(),e(`li`,{key:i,class:`truncate`},[t(`a`,{href:r,target:`_blank`,rel:`noopener`},n(r),9,ot)]))),128))])]),_:1},8,[`label`])):p(``,!0),r.images.length?(c(),o(C,{key:4,label:`${r.$t(`webextrator.tab.images`)} (${r.images.length})`,name:`images`},{default:d(()=>[t(`div`,st,[(c(!0),e(l,null,f(r.images,(e,t)=>(c(),o(x,{key:t,src:e,fit:`cover`,loading:`lazy`,"preview-src-list":r.images,"initial-index":t,"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`])):p(``,!0),r.html?(c(),o(C,{key:5,label:r.$t(`webextrator.tab.html`),name:`html`},{default:d(()=>[t(`div`,ct,[s(S,{content:r.html},null,8,[`content`])]),t(`pre`,lt,n(r.html),1)]),_:1},8,[`label`])):p(``,!0),s(C,{label:r.$t(`webextrator.tab.raw`),name:`raw`},{default:d(()=>[t(`div`,ut,[s(S,{content:r.rawPretty},null,8,[`content`])]),t(`pre`,dt,n(r.rawPretty),1)]),_:1},8,[`label`])]),_:1},8,[`modelValue`])])):p(``,!0)])}var pt=r({name:`WebextratorIndex`,components:{Layout:W,ConfigPanel:Me,ResultPanel:A(Pe,[[`render`,ft],[`__scopeId`,`data-v-b05b4db0`]])},inject:[`initialized`],async mounted(){await this.$store.dispatch(`webextrator/getService`)},methods:{async onRun(){if(!M())return;let e=this.$store.state.webextrator?.config;if(!e?.url)return;let t=(e.mode||`extract`)===`extract`;P.info(this.$t(t?`webextrator.message.extracting`:`webextrator.message.rendering`));try{await this.$store.dispatch(`webextrator/run`),P.success(this.$t(`webextrator.message.success`))}catch(e){let t=e?.response?.data?.error?.code||e?.response?.data?.code;t===`used_up`?P.error(this.$t(`webextrator.message.usedUp`)):t===`too_many_requests`?P.error(this.$t(`webextrator.message.busy`)):t===`timeout`?P.error(this.$t(`webextrator.message.timeout`)):t===`antibot_blocked`?P.error(this.$t(`webextrator.message.antibotBlocked`)):P.error(this.$t(`webextrator.message.failed`))}}}});function mt(e,t,n,r,i,a){let l=m(`config-panel`),u=m(`result-panel`),f=m(`layout`);return c(),o(f,null,{config:d(()=>[s(l,{onRun:e.onRun},null,8,[`onRun`])]),result:d(()=>[s(u)]),_:1})}var ht=A(pt,[[`render`,mt]]);export{ht as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import"./rolldown-runtime--c01j_DQ.js";import{A as e,D as t,Gt as n,Ht as r,I as i,N as a,O as o,P as s,Q as c,S as l,b as u,dt as d,et as f,ft as p,k as m,nt as h,tt as g,v as _}from"./vendor-chart-kBsXB1rh.js";import{n as v,r as y,t as b}from"./select-leWGa1qy.js";import{t as x}from"./upload-DFnNkCSJ.js";import{t as S}from"./tooltip-Bg-5iX0y.js";import{t as C}from"./image-D2Uc31X4.js";import{t as w}from"./alert-Opv77n_G.js";import{t as T}from"./drawer-VR-pZKxs.js";import{t as E}from"./input-number-CjZlVSMZ.js";import{t as D}from"./switch-DJBjdzV-.js";import{An as O,Cn as k,Dn as A,En as j,Mn as M,Nn as N,On as P,Pn as ee,Sn as te,Tn as ne,kn as re,wn as ie,xn as F}from"./constants-BqvGY8Qp.js";import{A as I,Ht as L,Kt as R,Ut as z,Vr as B,Vt as V,Wr as H,en as U,fi as W,ti as G,tr as K,yn as q}from"./index-DPT0LY_a.js";import{t as J}from"./index.es-BF0roIeI.js";import{t as Y}from"./CopyToClipboard-BPv_hKe6.js";import{t as X}from"./ImagePreview-DiItKL-y.js";import{n as ae}from"./taskDrawerMixin-CfysS2FH.js";import{t as oe}from"./Consumption-C6c-vSv0.js";import{i as Z,n as se,t as ce}from"./pagination-CUnmIqY0.js";import{t as le}from"./ApiCodeButton-Cdz-Fy3S.js";import{t as ue}from"./BotPlaceholder-60_H2JxQ.js";import{t as de}from"./NoTasks-BUMSVlPF.js";import{t as fe}from"./PromptTextarea-Dfu-o_C6.js";import{t as pe}from"./ImageWrapper-CxRidcAh.js";var me=i({name:`LayoutNanobanana`,components:{ElDrawer:T,ElButton:W,FontAwesomeIcon:J},mixins:[ae]}),he={class:`main flex flex-row flex-1`},ge={class:`config w-[320px] flex-none h-full overflow-y-auto bg-[var(--app-sidebar-bg)] border-r border-[var(--app-border-subtle)]`},_e={class:`result h-full p-6 flex-1 flex flex-col min-w-0 overflow-x-hidden bg-[var(--app-content-bg)]`};function ve(n,r,i,a,o,l){let u=h(`font-awesome-icon`),f=h(`el-button`),m=h(`el-drawer`);return c(),e(`div`,he,[t(`div`,ge,[g(n.$slots,`config`,{},void 0,!0)]),t(`div`,_e,[g(n.$slots,`result`,{},void 0,!0)]),p(s(f,{circle:``,class:`menu`,onClick:r[0]||=e=>n.drawer=!0},{default:d(()=>[s(u,{icon:`fa-solid fa-magic`})]),_:1},512),[[_,!n.tasksEmpty]]),s(m,{modelValue:n.drawer,"onUpdate:modelValue":r[1]||=e=>n.drawer=e,direction:`ltr`,"with-header":!1,size:`340px`,class:`drawer`},{default:d(()=>[g(n.$slots,`config`,{},void 0,!0)]),_:3},8,[`modelValue`])])}var ye=I(me,[[`render`,ve],[`__scopeId`,`data-v-cca80bbd`]]),be=i({name:`PromptInput`,components:{PromptTextarea:fe},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 xe(e,t,n,r,i,a){let s=h(`prompt-textarea`);return c(),o(s,{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 Se=I(be,[[`render`,xe]]),Ce=i({name:`ImageUrlsInput`,components:{ElUpload:x,ElButton:W,InfoIcon:Z,ImagePreview:X,FontAwesomeIcon:J},mixins:[L],data(){return{fileList:[],uploadUrl:H()+`/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(){G.warning(this.$t(`openaiimage.message.uploadImageExceed`))},onError(){G.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()}}}),we={class:`field flex items-center justify-between`},Te={class:`title font-bold text-[14px] mb-[10px]`},Ee={class:`upload-wrapper flex flex-col items-start gap-[8px]`},De={class:`controls flex items-center`},Oe={class:`file-list flex flex-wrap gap-[10px]`};function ke(r,i,u,p,m,g){let _=h(`font-awesome-icon`),v=h(`el-button`),y=h(`el-upload`),b=h(`info-icon`),x=h(`image-preview`);return c(),e(l,null,[t(`div`,we,[t(`h2`,Te,n(r.$t(`openaiimage.name.imageUrls`)),1),t(`div`,Ee,[t(`div`,De,[s(y,{"file-list":r.fileList,"onUpdate:fileList":i[0]||=e=>r.fileList=e,accept:`.png,.jpg,.jpeg,.gif,.bmp,.webp`,name:`file`,class:`value`,limit:5,multiple:!0,"show-file-list":!1,action:r.uploadUrl,"on-exceed":r.onExceed,"on-error":r.onError,"on-success":r.onSuccess,"on-change":r.onChange,"on-remove":r.onRemove,headers:r.headers},{default:d(()=>[s(v,{size:`small`,type:`primary`,round:``},{default:d(()=>[s(_,{icon:`fa-solid fa-upload`,class:`mr-1`}),a(` `+n(r.$t(`openaiimage.button.uploadImageUrls`)),1)]),_:1})]),_:1},8,[`file-list`,`action`,`on-exceed`,`on-error`,`on-success`,`on-change`,`on-remove`,`headers`]),s(b,{content:r.$t(`openaiimage.description.imageUrls`),class:`ml-2`},null,8,[`content`])])])]),t(`div`,Oe,[(c(!0),e(l,null,f(r.fileList,(e,t)=>(c(),o(x,{key:e.uid||e?.response?.file_url||e.url||t,url:e.url||e?.response?.file_url,name:e.name,percentage:e.percentage,onRemove:n=>r.onRemovePreview(t,e)},null,8,[`url`,`name`,`percentage`,`onRemove`]))),128))])],64)}var Ae=I(Ce,[[`render`,ke]]),je=i({name:`OpenAIImageModelSelector`,components:{ElSelect:y,ElOption:b,InfoIcon:Z},data(){return{options:[{value:j,label:this.$t(`openaiimage.model.gptImage1`)},{value:A,label:this.$t(`openaiimage.model.gptImage15`)},{value:P,label:this.$t(`openaiimage.model.gptImage2`)},{value:re,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}}),Me={class:`field`},Ne={class:`label`},Pe={class:`box`},Fe={class:`title font-bold`};function Ie(r,i,a,u,p,m){let g=h(`info-icon`),_=h(`el-option`),v=h(`el-select`);return c(),e(`div`,Me,[t(`div`,Ne,[t(`div`,Pe,[t(`h2`,Fe,n(r.$t(`openaiimage.name.model`)),1),s(g,{content:r.modelDescription,class:`info`},null,8,[`content`])])]),s(v,{modelValue:r.value,"onUpdate:modelValue":i[0]||=e=>r.value=e,class:`value`,placeholder:r.$t(`openaiimage.placeholder.select`)},{default:d(()=>[(c(!0),e(l,null,f(r.options,e=>(c(),o(_,{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`])])}var Le=I(je,[[`render`,Ie],[`__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 Re=i({name:`OpenAIImageSizeSelector`,components:{ElSelect:y,ElOption:b,ElOptionGroup:v,ElSwitch:D,ElInputNumber:E,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 k.includes(this.model)},presets(){return O[this.model]??O[`gpt-image-2`]??[]},presetGroups(){return this.model===`gpt-image-2`||this.model===`gpt-image-2:official`?[{label:this.$t(`openaiimage.sizeGroup.standard1k`),options:M},{label:this.$t(`openaiimage.sizeGroup.preset2k`),options:N},{label:this.$t(`openaiimage.sizeGroup.preset4k`),options:ee}]:[{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 F},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:te.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}`))}}}),ze={class:`resolution`},Be={class:`field`},Ve={class:`label`},He={class:`box`},Ue={class:`title font-bold`},We={class:`field custom-toggle`},Ge={class:`label`},Ke={class:`box`},qe={class:`title font-bold`},Je={key:0,class:`custom-inputs`},Ye={class:`row`},Xe={class:`row-label`},Ze={class:`row`},Qe={class:`row-label`},$e={key:0,class:`error`};function et(r,i,a,u,p,g){let _=h(`info-icon`),v=h(`el-option`),y=h(`el-option-group`),b=h(`el-select`),x=h(`el-switch`),S=h(`el-input-number`);return c(),e(`div`,ze,[t(`div`,Be,[t(`div`,Ve,[t(`div`,He,[t(`h2`,Ue,n(r.$t(`openaiimage.name.size`)),1),s(_,{content:r.$t(`openaiimage.description.size`),class:`info`},null,8,[`content`])])]),s(b,{modelValue:r.presetValue,"onUpdate:modelValue":i[0]||=e=>r.presetValue=e,class:`value`,placeholder:r.$t(`openaiimage.placeholder.select`),disabled:r.useCustom},{default:d(()=>[s(v,{label:r.$t(`suno.gender.auto`),value:r.emptySizeValue},null,8,[`label`,`value`]),(c(!0),e(l,null,f(r.presetGroups,t=>(c(),o(y,{key:t.label,label:t.label},{default:d(()=>[(c(!0),e(l,null,f(t.options,e=>(c(),o(v,{key:e,label:e,value:e},null,8,[`label`,`value`]))),128))]),_:2},1032,[`label`]))),128))]),_:1},8,[`modelValue`,`placeholder`,`disabled`])]),r.customSupported?(c(),e(l,{key:0},[t(`div`,We,[t(`div`,Ge,[t(`div`,Ke,[t(`h2`,qe,n(r.$t(`openaiimage.name.customSize`)),1),s(_,{content:r.$t(`openaiimage.description.customSize`),class:`info`},null,8,[`content`])])]),s(x,{modelValue:r.useCustom,"onUpdate:modelValue":i[1]||=e=>r.useCustom=e,class:`value-switch`},null,8,[`modelValue`])]),r.useCustom?(c(),e(`div`,Je,[t(`div`,Ye,[t(`span`,Xe,n(r.$t(`openaiimage.name.width`)),1),s(S,{modelValue:r.customWidth,"onUpdate:modelValue":i[2]||=e=>r.customWidth=e,class:`row-input`,min:r.minSide,max:r.maxSide,step:r.multiple,"step-strictly":!0,"controls-position":`right`},null,8,[`modelValue`,`min`,`max`,`step`])]),t(`div`,Ze,[t(`span`,Qe,n(r.$t(`openaiimage.name.height`)),1),s(S,{modelValue:r.customHeight,"onUpdate:modelValue":i[3]||=e=>r.customHeight=e,class:`row-input`,min:r.minSide,max:r.maxSide,step:r.multiple,"step-strictly":!0,"controls-position":`right`},null,8,[`modelValue`,`min`,`max`,`step`])]),r.customError?(c(),e(`div`,$e,n(r.customError),1)):m(``,!0)])):m(``,!0)],64)):m(``,!0)])}var tt=i({name:`ConfigPanel`,components:{ElButton:W,FontAwesomeIcon:J,PromptInput:Se,Consumption:oe,ImageUrlsInput:Ae,ModelSelector:Le,ResolutionSelector:I(Re,[[`render`,et],[`__scopeId`,`data-v-dfce4922`]])},emits:[`generate`],computed:{config(){return this.$store.state.openaiimage?.config},consumption(){return R({...this.config||{}},this.service?.cost)},service(){return this.$store.state.openaiimage?.service}},methods:{onGenerate(){this.$emit(`generate`)}}}),nt={class:`flex flex-col h-full`},rt={class:`flex-1 overflow-y-auto p-5`},it={class:`flex flex-col items-center justify-center px-5 pb-5`};function at(r,i,o,l,u,f){let p=h(`model-selector`),m=h(`resolution-selector`),g=h(`prompt-input`),_=h(`image-urls-input`),v=h(`consumption`),y=h(`font-awesome-icon`),b=h(`el-button`);return c(),e(`div`,nt,[t(`div`,rt,[s(p,{class:`mb-4`}),s(m,{class:`mb-4`}),s(g,{class:`mb-4`}),s(_,{class:`mb-4`})]),t(`div`,it,[s(v,{value:r.consumption,service:r.service},null,8,[`value`,`service`]),s(b,{type:`primary`,class:`btn w-full`,round:``,onClick:r.onGenerate},{default:d(()=>[s(y,{icon:`fa-solid fa-magic`,class:`mr-2`}),a(` `+n(r.$t(`openaiimage.button.generate`)),1)]),_:1},8,[`onClick`])])])}var ot=I(tt,[[`render`,at]]),st=i({name:`TaskPreview`,components:{ElImage:C,CopyToClipboard:Y,FontAwesomeIcon:J,ElAlert:w,ImageWrapper:pe,ElButton:W,ElTooltip:S,ImagePreview:X,ApiCodeButton:le},props:{modelValue:{type:Object,required:!0}},setup(){return{OPENAIIMAGE_LOGO:ne}},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)}}}),ct={class:`preview`},lt={class:`left`},ut={class:`main`},dt={class:`bot`},ft={class:`datetime`},pt={class:`info`},mt={key:0,class:`flex justify-start items-center gap-2 mt-2 w-full overflow-x-auto`},ht={key:1,class:`prompt mt-2`},gt={key:0},_t={key:0,class:r({content:!0,failed:!0})},vt={class:`flex justify-start items-center gap-4 w-full overflow-x-auto`},yt={class:r({operations:!0,"mt-2":!0,"mb-2":!0})},bt={key:0,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},xt={key:1,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},St={key:2,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Ct={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},wt={key:3,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Tt={key:4,class:`text-[var(--el-text-color-regular)] text-xs mb-0`},Et={key:1,class:r({content:!0})},Dt={key:0,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Ot={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`},At={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},jt={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Mt={key:3,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Nt={key:4,class:`text-[var(--el-text-color-regular)] text-xs mb-0`},$={key:2,class:r({content:!0})},Pt={key:0,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Ft={key:1,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},It={key:2,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Lt={class:`text-[var(--el-text-color-regular)] text-xs mb-2`};function Rt(r,i,p,g,_,v){let y=h(`el-image`),b=h(`image-preview`),x=h(`image-wrapper`),S=h(`el-button`),C=h(`el-tooltip`),w=h(`api-code-button`),T=h(`font-awesome-icon`),E=h(`copy-to-clipboard`),D=h(`el-alert`);return c(),e(`div`,ct,[t(`div`,lt,[s(y,{src:r.OPENAIIMAGE_LOGO,class:`avatar`},null,8,[`src`])]),t(`div`,ut,[t(`div`,dt,[a(n(r.$t(`openaiimage.name.openaiimageBot`))+` `,1),t(`span`,ft,n(r.$dayjs.format(``+new Date(parseFloat((r.modelValue?.created_at||``).toString())*1e3))),1)]),t(`div`,pt,[r.referenceImages.length>0?(c(),e(`div`,mt,[(c(!0),e(l,null,f(r.referenceImages,(e,t)=>(c(),o(b,{key:t,url:e,name:`image-${t+1}`,closable:!1},null,8,[`url`,`name`]))),128))])):m(``,!0),r.modelValue?.request?.prompt?(c(),e(`p`,ht,[a(n(r.modelValue?.request?.prompt)+` `,1),r.modelValue?.response?m(``,!0):(c(),e(`span`,gt,` - (`+n(r.$t(`openaiimage.status.pending`))+`) `,1))])):m(``,!0)]),r.modelValue?.response?.success===!0?(c(),e(`div`,_t,[t(`div`,vt,[(c(!0),e(l,null,f(r.images,(e,t)=>(c(),o(x,{key:t,src:e?.image_url||e?.url||``,"raw-src":e?.image_url||e?.url||``},null,8,[`src`,`raw-src`]))),128))]),t(`div`,yt,[s(C,{class:`box-item`,effect:`dark`,content:r.$t(`common.button.edit`),placement:`top-start`},{default:d(()=>[s(S,{type:`info`,size:`small`,class:`btn-action`,onClick:i[0]||=u(e=>r.onEdit(r.images?.[0]?.image_url||r.images?.[0]?.url),[`stop`])},{default:d(()=>[a(n(r.$t(`common.button.edit`)),1)]),_:1})]),_:1},8,[`content`]),s(w,{path:r.openaiimagePath,body:r.openaiimageCodeBody},null,8,[`path`,`body`])]),s(D,{closable:!1,class:`mt-2 success`},{default:d(()=>[r.modelValue?.request?.model?(c(),e(`p`,bt,[s(T,{icon:`fa-solid fa-cube`,class:`mr-1`}),a(` `+n(r.$t(`openaiimage.name.model`))+`: `+n(r.modelValue?.request?.model),1)])):m(``,!0),r.modelValue?.request?.size?(c(),e(`p`,xt,[s(T,{icon:`fa-solid fa-image`,class:`mr-1`}),a(` `+n(r.$t(`openaiimage.name.size`))+`: `+n(r.modelValue?.request?.size),1)])):m(``,!0),r.showTaskType?(c(),e(`p`,St,[s(T,{icon:`fa-solid fa-bolt`,class:`mr-1`}),a(` `+n(r.$t(`openaiimage.name.task`))+`: `+n(r.taskTypeLabel),1)])):m(``,!0),t(`p`,Ct,[s(T,{icon:`fa-solid fa-magic`,class:`mr-1`}),a(` `+n(r.$t(`openaiimage.name.taskId`))+`: `+n(r.modelValue?.id)+` `,1),s(E,{content:r.modelValue?.id,class:`btn-copy inline-block`},null,8,[`content`])]),r.modelValue?.elapsed?(c(),e(`p`,wt,[s(T,{icon:`fa-solid fa-clock`,class:`mr-1`}),a(` `+n(r.$t(`openaiimage.name.elapsed`))+`: `+n(r.modelValue?.elapsed?.toFixed(2))+`s `,1)])):m(``,!0),r.modelValue?.response?.trace_id?(c(),e(`p`,Tt,[s(T,{icon:`fa-solid fa-hashtag`,class:`mr-1`}),a(` `+n(r.$t(`openaiimage.name.traceId`))+`: `+n(r.modelValue?.response?.trace_id)+` `,1),s(E,{content:r.modelValue?.response?.trace_id,class:`btn-copy inline-block`},null,8,[`content`])])):m(``,!0)]),_:1})])):r.modelValue?.response?.success===!1?(c(),e(`div`,Et,[s(D,{closable:!1,class:`failure`},{template:d(()=>[s(T,{icon:`fa-solid fa-exclamation-triangle`,class:`mr-1`}),a(` `+n(r.$t(`openaiimage.name.failure`)),1)]),default:d(()=>[r.modelValue?.request?.model?(c(),e(`p`,Dt,[s(T,{icon:`fa-solid fa-cube`,class:`mr-1`}),a(` `+n(r.$t(`openaiimage.name.model`))+`: `+n(r.modelValue?.request?.model),1)])):m(``,!0),r.modelValue?.request?.size?(c(),e(`p`,Ot,[s(T,{icon:`fa-solid fa-image`,class:`mr-1`}),a(` `+n(r.$t(`openaiimage.name.size`))+`: `+n(r.modelValue?.request?.size),1)])):m(``,!0),r.showTaskType?(c(),e(`p`,kt,[s(T,{icon:`fa-solid fa-bolt`,class:`mr-1`}),a(` `+n(r.$t(`openaiimage.name.task`))+`: `+n(r.taskTypeLabel),1)])):m(``,!0),t(`p`,At,[s(T,{icon:`fa-solid fa-magic`,class:`mr-1`}),a(` `+n(r.$t(`openaiimage.name.taskId`))+`: `+n(r.modelValue?.id)+` `,1),s(E,{content:r.modelValue?.id,class:`btn-copy`},null,8,[`content`])]),t(`p`,jt,[s(T,{icon:`fa-solid fa-circle-info`,class:`mr-1`}),a(` `+n(r.$t(`openaiimage.name.failureReason`))+`: `+n(r.modelValue?.response?.error?.message)+` `,1),s(E,{content:r.modelValue?.response?.error?.message,class:`btn-copy`},null,8,[`content`])]),r.modelValue?.elapsed?(c(),e(`p`,Mt,[s(T,{icon:`fa-solid fa-clock`,class:`mr-1`}),a(` `+n(r.$t(`openaiimage.name.elapsed`))+`: `+n(r.modelValue?.elapsed?.toFixed(2))+`s `,1)])):m(``,!0),r.modelValue?.response?.trace_id?(c(),e(`p`,Nt,[s(T,{icon:`fa-solid fa-hashtag`,class:`mr-1`}),a(` `+n(r.$t(`openaiimage.name.traceId`))+`: `+n(r.modelValue?.response?.trace_id)+` `,1),s(E,{content:r.modelValue?.response?.trace_id,class:`btn-copy`},null,8,[`content`])])):m(``,!0)]),_:1})])):(c(),e(`div`,$,[s(D,{closable:!1,class:`info`},{template:d(()=>[s(T,{icon:`fa-solid fa-exclamation-triangle`,class:`mr-1`}),a(` `+n(r.$t(`openaiimage.name.failure`)),1)]),default:d(()=>[r.modelValue?.request?.model?(c(),e(`p`,Pt,[s(T,{icon:`fa-solid fa-cube`,class:`mr-1`}),a(` `+n(r.$t(`openaiimage.name.model`))+`: `+n(r.modelValue?.request?.model),1)])):m(``,!0),r.modelValue?.request?.size?(c(),e(`p`,Ft,[s(T,{icon:`fa-solid fa-image`,class:`mr-1`}),a(` `+n(r.$t(`openaiimage.name.size`))+`: `+n(r.modelValue?.request?.size),1)])):m(``,!0),r.showTaskType?(c(),e(`p`,It,[s(T,{icon:`fa-solid fa-bolt`,class:`mr-1`}),a(` `+n(r.$t(`openaiimage.name.task`))+`: `+n(r.taskTypeLabel),1)])):m(``,!0),t(`p`,Lt,[s(T,{icon:`fa-solid fa-magic`,class:`mr-1`}),a(` `+n(r.$t(`openaiimage.name.taskId`))+`: `+n(r.modelValue?.id)+` `,1),s(E,{content:r.modelValue?.id,class:`btn-copy`},null,8,[`content`])])]),_:1})]))])])}var zt=i({name:`RecentPanel`,components:{TaskPreview:I(st,[[`render`,Rt],[`__scopeId`,`data-v-8ee5fb87`]]),BotPlaceholder:ue,NoTasks:de,ScrollList:se},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?.()}}}),Bt={key:0},Vt={key:2,class:`w-full h-full flex items-center justify-center`};function Ht(t,n,r,i,a,u){let p=h(`bot-placeholder`),g=h(`task-preview`),_=h(`scroll-list`),v=h(`no-tasks`);return c(),e(l,null,[t.tasks?.items===void 0?(c(),e(`div`,Bt,[s(p)])):t.tasks?.items?.length&&t.tasks?.items?.length>0?(c(),o(_,{key:1,ref:`scrollList`,class:`tasks h-full w-full overflow-y-auto`,loading:t.loading,onReachTop:n[0]||=e=>t.$emit(`reach-top`)},{default:d(()=>[(c(!0),e(l,null,f(t.tasks?.items,e=>(c(),o(g,{key:e.id,"model-value":e},null,8,[`model-value`]))),128))]),_:1},8,[`loading`])):m(``,!0),t.tasks?.items?.length===0?(c(),e(`div`,Vt,[s(v)])):m(``,!0)],64)}var Ut=i({name:`OpenAIImageIndex`,components:{ConfigPanel:ot,Layout:ye,RecentPanel:I(zt,[[`render`,Ht]])},mixins:[z],inject:[`initialized`],data(){return{task:void 0,job:0,loading:!1}},computed:{applicationsLoading(){return this.$store.state.openaiimage?.status?.getApplications===B.Request},tasksLoading(){return this.$store.state.openaiimage?.status?.getTasks===B.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 ce({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(!V(this.uploadTracker,e=>this.$t(e),e=>G.warning(e)))return;let e={...this.config||{}},t=Array.isArray(e?.image_urls)&&e.image_urls.length>0;if(!this.hasText(e.prompt)){G.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(!U())return;let i=this.credential?.token;if(!i){console.error(`no token specified`);return}G.info(this.$t(`openaiimage.message.startingTask`)),K(`openaiimage`,t?q.edit(r,{token:i}):q.generate(n,{token:i})).then(e=>{console.debug(`task accepted`,e.data?.task_id),G.success(this.$t(`openaiimage.message.startTaskSuccess`))}).catch(e=>{let t=e?.response?.data;t?.error?.code===`used_up`?G.error(this.$t(`openaiimage.message.usedUp`)):G.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 Wt(e,t,n,r,i,a){let l=h(`config-panel`),u=h(`recent-panel`),f=h(`layout`);return c(),o(f,null,{config:d(()=>[s(l,{onGenerate:e.onGenerate},null,8,[`onGenerate`])]),result:d(()=>[s(u,{ref:`recentPanel`,loading:e.loading,onReachTop:e.onReachTop},null,8,[`loading`,`onReachTop`])]),_:1})}var Gt=I(Ut,[[`render`,Wt]]);export{Gt as default};
|
|
1
|
+
import"./rolldown-runtime--c01j_DQ.js";import{A as e,D as t,Gt as n,Ht as r,I as i,N as a,O as o,P as s,Q as c,S as l,b as u,dt as d,et as f,ft as p,k as m,nt as h,tt as g,v as _}from"./vendor-chart-kBsXB1rh.js";import{n as v,r as y,t as b}from"./select-BMkecWJ3.js";import{t as x}from"./upload-BVKjQKBq.js";import{t as S}from"./tooltip-DW1XZtXG.js";import{t as C}from"./image-DsbwPTmm.js";import{t as w}from"./alert-BDvIuUu3.js";import{t as T}from"./drawer-B9vlF9-6.js";import{t as E}from"./input-number-Co-ZG8zL.js";import{t as D}from"./switch-D9jGUBnB.js";import{An as O,Cn as k,Dn as A,En as j,Mn as M,Nn as N,On as P,Pn as ee,Sn as te,Tn as ne,kn as re,wn as ie,xn as F}from"./constants-Bs-70rQx.js";import{A as I,Ht as L,Kt as R,Ut as z,Vr as B,Vt as V,Wr as H,en as U,fi as W,ti as G,tr as K,yn as q}from"./index-BDvTozfe.js";import{t as J}from"./index.es-B8y6GOsn.js";import{t as Y}from"./CopyToClipboard-CdGWA3lV.js";import{t as X}from"./ImagePreview-8jJNA6v3.js";import{n as ae}from"./taskDrawerMixin-CfysS2FH.js";import{t as oe}from"./Consumption-B2gTsRAP.js";import{i as Z,n as se,t as ce}from"./pagination-BNew-8XN.js";import{t as le}from"./ApiCodeButton-WF_-U1A1.js";import{t as ue}from"./BotPlaceholder-BU4a0XLq.js";import{t as de}from"./NoTasks-C3tcHEtF.js";import{t as fe}from"./PromptTextarea-66psG0Ji.js";import{t as pe}from"./ImageWrapper-BF74hGuQ.js";var me=i({name:`LayoutNanobanana`,components:{ElDrawer:T,ElButton:W,FontAwesomeIcon:J},mixins:[ae]}),he={class:`main flex flex-row flex-1`},ge={class:`config w-[320px] flex-none h-full overflow-y-auto bg-[var(--app-sidebar-bg)] border-r border-[var(--app-border-subtle)]`},_e={class:`result h-full p-6 flex-1 flex flex-col min-w-0 overflow-x-hidden bg-[var(--app-content-bg)]`};function ve(n,r,i,a,o,l){let u=h(`font-awesome-icon`),f=h(`el-button`),m=h(`el-drawer`);return c(),e(`div`,he,[t(`div`,ge,[g(n.$slots,`config`,{},void 0,!0)]),t(`div`,_e,[g(n.$slots,`result`,{},void 0,!0)]),p(s(f,{circle:``,class:`menu`,onClick:r[0]||=e=>n.drawer=!0},{default:d(()=>[s(u,{icon:`fa-solid fa-magic`})]),_:1},512),[[_,!n.tasksEmpty]]),s(m,{modelValue:n.drawer,"onUpdate:modelValue":r[1]||=e=>n.drawer=e,direction:`ltr`,"with-header":!1,size:`340px`,class:`drawer`},{default:d(()=>[g(n.$slots,`config`,{},void 0,!0)]),_:3},8,[`modelValue`])])}var ye=I(me,[[`render`,ve],[`__scopeId`,`data-v-cca80bbd`]]),be=i({name:`PromptInput`,components:{PromptTextarea:fe},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 xe(e,t,n,r,i,a){let s=h(`prompt-textarea`);return c(),o(s,{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 Se=I(be,[[`render`,xe]]),Ce=i({name:`ImageUrlsInput`,components:{ElUpload:x,ElButton:W,InfoIcon:Z,ImagePreview:X,FontAwesomeIcon:J},mixins:[L],data(){return{fileList:[],uploadUrl:H()+`/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(){G.warning(this.$t(`openaiimage.message.uploadImageExceed`))},onError(){G.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()}}}),we={class:`field flex items-center justify-between`},Te={class:`title font-bold text-[14px] mb-[10px]`},Ee={class:`upload-wrapper flex flex-col items-start gap-[8px]`},De={class:`controls flex items-center`},Oe={class:`file-list flex flex-wrap gap-[10px]`};function ke(r,i,u,p,m,g){let _=h(`font-awesome-icon`),v=h(`el-button`),y=h(`el-upload`),b=h(`info-icon`),x=h(`image-preview`);return c(),e(l,null,[t(`div`,we,[t(`h2`,Te,n(r.$t(`openaiimage.name.imageUrls`)),1),t(`div`,Ee,[t(`div`,De,[s(y,{"file-list":r.fileList,"onUpdate:fileList":i[0]||=e=>r.fileList=e,accept:`.png,.jpg,.jpeg,.gif,.bmp,.webp`,name:`file`,class:`value`,limit:5,multiple:!0,"show-file-list":!1,action:r.uploadUrl,"on-exceed":r.onExceed,"on-error":r.onError,"on-success":r.onSuccess,"on-change":r.onChange,"on-remove":r.onRemove,headers:r.headers},{default:d(()=>[s(v,{size:`small`,type:`primary`,round:``},{default:d(()=>[s(_,{icon:`fa-solid fa-upload`,class:`mr-1`}),a(` `+n(r.$t(`openaiimage.button.uploadImageUrls`)),1)]),_:1})]),_:1},8,[`file-list`,`action`,`on-exceed`,`on-error`,`on-success`,`on-change`,`on-remove`,`headers`]),s(b,{content:r.$t(`openaiimage.description.imageUrls`),class:`ml-2`},null,8,[`content`])])])]),t(`div`,Oe,[(c(!0),e(l,null,f(r.fileList,(e,t)=>(c(),o(x,{key:e.uid||e?.response?.file_url||e.url||t,url:e.url||e?.response?.file_url,name:e.name,percentage:e.percentage,onRemove:n=>r.onRemovePreview(t,e)},null,8,[`url`,`name`,`percentage`,`onRemove`]))),128))])],64)}var Ae=I(Ce,[[`render`,ke]]),je=i({name:`OpenAIImageModelSelector`,components:{ElSelect:y,ElOption:b,InfoIcon:Z},data(){return{options:[{value:j,label:this.$t(`openaiimage.model.gptImage1`)},{value:A,label:this.$t(`openaiimage.model.gptImage15`)},{value:P,label:this.$t(`openaiimage.model.gptImage2`)},{value:re,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}}),Me={class:`field`},Ne={class:`label`},Pe={class:`box`},Fe={class:`title font-bold`};function Ie(r,i,a,u,p,m){let g=h(`info-icon`),_=h(`el-option`),v=h(`el-select`);return c(),e(`div`,Me,[t(`div`,Ne,[t(`div`,Pe,[t(`h2`,Fe,n(r.$t(`openaiimage.name.model`)),1),s(g,{content:r.modelDescription,class:`info`},null,8,[`content`])])]),s(v,{modelValue:r.value,"onUpdate:modelValue":i[0]||=e=>r.value=e,class:`value`,placeholder:r.$t(`openaiimage.placeholder.select`)},{default:d(()=>[(c(!0),e(l,null,f(r.options,e=>(c(),o(_,{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`])])}var Le=I(je,[[`render`,Ie],[`__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 Re=i({name:`OpenAIImageSizeSelector`,components:{ElSelect:y,ElOption:b,ElOptionGroup:v,ElSwitch:D,ElInputNumber:E,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 k.includes(this.model)},presets(){return O[this.model]??O[`gpt-image-2`]??[]},presetGroups(){return this.model===`gpt-image-2`||this.model===`gpt-image-2:official`?[{label:this.$t(`openaiimage.sizeGroup.standard1k`),options:M},{label:this.$t(`openaiimage.sizeGroup.preset2k`),options:N},{label:this.$t(`openaiimage.sizeGroup.preset4k`),options:ee}]:[{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 F},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:te.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}`))}}}),ze={class:`resolution`},Be={class:`field`},Ve={class:`label`},He={class:`box`},Ue={class:`title font-bold`},We={class:`field custom-toggle`},Ge={class:`label`},Ke={class:`box`},qe={class:`title font-bold`},Je={key:0,class:`custom-inputs`},Ye={class:`row`},Xe={class:`row-label`},Ze={class:`row`},Qe={class:`row-label`},$e={key:0,class:`error`};function et(r,i,a,u,p,g){let _=h(`info-icon`),v=h(`el-option`),y=h(`el-option-group`),b=h(`el-select`),x=h(`el-switch`),S=h(`el-input-number`);return c(),e(`div`,ze,[t(`div`,Be,[t(`div`,Ve,[t(`div`,He,[t(`h2`,Ue,n(r.$t(`openaiimage.name.size`)),1),s(_,{content:r.$t(`openaiimage.description.size`),class:`info`},null,8,[`content`])])]),s(b,{modelValue:r.presetValue,"onUpdate:modelValue":i[0]||=e=>r.presetValue=e,class:`value`,placeholder:r.$t(`openaiimage.placeholder.select`),disabled:r.useCustom},{default:d(()=>[s(v,{label:r.$t(`suno.gender.auto`),value:r.emptySizeValue},null,8,[`label`,`value`]),(c(!0),e(l,null,f(r.presetGroups,t=>(c(),o(y,{key:t.label,label:t.label},{default:d(()=>[(c(!0),e(l,null,f(t.options,e=>(c(),o(v,{key:e,label:e,value:e},null,8,[`label`,`value`]))),128))]),_:2},1032,[`label`]))),128))]),_:1},8,[`modelValue`,`placeholder`,`disabled`])]),r.customSupported?(c(),e(l,{key:0},[t(`div`,We,[t(`div`,Ge,[t(`div`,Ke,[t(`h2`,qe,n(r.$t(`openaiimage.name.customSize`)),1),s(_,{content:r.$t(`openaiimage.description.customSize`),class:`info`},null,8,[`content`])])]),s(x,{modelValue:r.useCustom,"onUpdate:modelValue":i[1]||=e=>r.useCustom=e,class:`value-switch`},null,8,[`modelValue`])]),r.useCustom?(c(),e(`div`,Je,[t(`div`,Ye,[t(`span`,Xe,n(r.$t(`openaiimage.name.width`)),1),s(S,{modelValue:r.customWidth,"onUpdate:modelValue":i[2]||=e=>r.customWidth=e,class:`row-input`,min:r.minSide,max:r.maxSide,step:r.multiple,"step-strictly":!0,"controls-position":`right`},null,8,[`modelValue`,`min`,`max`,`step`])]),t(`div`,Ze,[t(`span`,Qe,n(r.$t(`openaiimage.name.height`)),1),s(S,{modelValue:r.customHeight,"onUpdate:modelValue":i[3]||=e=>r.customHeight=e,class:`row-input`,min:r.minSide,max:r.maxSide,step:r.multiple,"step-strictly":!0,"controls-position":`right`},null,8,[`modelValue`,`min`,`max`,`step`])]),r.customError?(c(),e(`div`,$e,n(r.customError),1)):m(``,!0)])):m(``,!0)],64)):m(``,!0)])}var tt=i({name:`ConfigPanel`,components:{ElButton:W,FontAwesomeIcon:J,PromptInput:Se,Consumption:oe,ImageUrlsInput:Ae,ModelSelector:Le,ResolutionSelector:I(Re,[[`render`,et],[`__scopeId`,`data-v-dfce4922`]])},emits:[`generate`],computed:{config(){return this.$store.state.openaiimage?.config},consumption(){return R({...this.config||{}},this.service?.cost)},service(){return this.$store.state.openaiimage?.service}},methods:{onGenerate(){this.$emit(`generate`)}}}),nt={class:`flex flex-col h-full`},rt={class:`flex-1 overflow-y-auto p-5`},it={class:`flex flex-col items-center justify-center px-5 pb-5`};function at(r,i,o,l,u,f){let p=h(`model-selector`),m=h(`resolution-selector`),g=h(`prompt-input`),_=h(`image-urls-input`),v=h(`consumption`),y=h(`font-awesome-icon`),b=h(`el-button`);return c(),e(`div`,nt,[t(`div`,rt,[s(p,{class:`mb-4`}),s(m,{class:`mb-4`}),s(g,{class:`mb-4`}),s(_,{class:`mb-4`})]),t(`div`,it,[s(v,{value:r.consumption,service:r.service},null,8,[`value`,`service`]),s(b,{type:`primary`,class:`btn w-full`,round:``,onClick:r.onGenerate},{default:d(()=>[s(y,{icon:`fa-solid fa-magic`,class:`mr-2`}),a(` `+n(r.$t(`openaiimage.button.generate`)),1)]),_:1},8,[`onClick`])])])}var ot=I(tt,[[`render`,at]]),st=i({name:`TaskPreview`,components:{ElImage:C,CopyToClipboard:Y,FontAwesomeIcon:J,ElAlert:w,ImageWrapper:pe,ElButton:W,ElTooltip:S,ImagePreview:X,ApiCodeButton:le},props:{modelValue:{type:Object,required:!0}},setup(){return{OPENAIIMAGE_LOGO:ne}},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)}}}),ct={class:`preview`},lt={class:`left`},ut={class:`main`},dt={class:`bot`},ft={class:`datetime`},pt={class:`info`},mt={key:0,class:`flex justify-start items-center gap-2 mt-2 w-full overflow-x-auto`},ht={key:1,class:`prompt mt-2`},gt={key:0},_t={key:0,class:r({content:!0,failed:!0})},vt={class:`flex justify-start items-center gap-4 w-full overflow-x-auto`},yt={class:r({operations:!0,"mt-2":!0,"mb-2":!0})},bt={key:0,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},xt={key:1,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},St={key:2,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Ct={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},wt={key:3,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Tt={key:4,class:`text-[var(--el-text-color-regular)] text-xs mb-0`},Et={key:1,class:r({content:!0})},Dt={key:0,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Ot={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`},At={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},jt={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Mt={key:3,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Nt={key:4,class:`text-[var(--el-text-color-regular)] text-xs mb-0`},$={key:2,class:r({content:!0})},Pt={key:0,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Ft={key:1,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},It={key:2,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Lt={class:`text-[var(--el-text-color-regular)] text-xs mb-2`};function Rt(r,i,p,g,_,v){let y=h(`el-image`),b=h(`image-preview`),x=h(`image-wrapper`),S=h(`el-button`),C=h(`el-tooltip`),w=h(`api-code-button`),T=h(`font-awesome-icon`),E=h(`copy-to-clipboard`),D=h(`el-alert`);return c(),e(`div`,ct,[t(`div`,lt,[s(y,{src:r.OPENAIIMAGE_LOGO,class:`avatar`},null,8,[`src`])]),t(`div`,ut,[t(`div`,dt,[a(n(r.$t(`openaiimage.name.openaiimageBot`))+` `,1),t(`span`,ft,n(r.$dayjs.format(``+new Date(parseFloat((r.modelValue?.created_at||``).toString())*1e3))),1)]),t(`div`,pt,[r.referenceImages.length>0?(c(),e(`div`,mt,[(c(!0),e(l,null,f(r.referenceImages,(e,t)=>(c(),o(b,{key:t,url:e,name:`image-${t+1}`,closable:!1},null,8,[`url`,`name`]))),128))])):m(``,!0),r.modelValue?.request?.prompt?(c(),e(`p`,ht,[a(n(r.modelValue?.request?.prompt)+` `,1),r.modelValue?.response?m(``,!0):(c(),e(`span`,gt,` - (`+n(r.$t(`openaiimage.status.pending`))+`) `,1))])):m(``,!0)]),r.modelValue?.response?.success===!0?(c(),e(`div`,_t,[t(`div`,vt,[(c(!0),e(l,null,f(r.images,(e,t)=>(c(),o(x,{key:t,src:e?.image_url||e?.url||``,"raw-src":e?.image_url||e?.url||``},null,8,[`src`,`raw-src`]))),128))]),t(`div`,yt,[s(C,{class:`box-item`,effect:`dark`,content:r.$t(`common.button.edit`),placement:`top-start`},{default:d(()=>[s(S,{type:`info`,size:`small`,class:`btn-action`,onClick:i[0]||=u(e=>r.onEdit(r.images?.[0]?.image_url||r.images?.[0]?.url),[`stop`])},{default:d(()=>[a(n(r.$t(`common.button.edit`)),1)]),_:1})]),_:1},8,[`content`]),s(w,{path:r.openaiimagePath,body:r.openaiimageCodeBody},null,8,[`path`,`body`])]),s(D,{closable:!1,class:`mt-2 success`},{default:d(()=>[r.modelValue?.request?.model?(c(),e(`p`,bt,[s(T,{icon:`fa-solid fa-cube`,class:`mr-1`}),a(` `+n(r.$t(`openaiimage.name.model`))+`: `+n(r.modelValue?.request?.model),1)])):m(``,!0),r.modelValue?.request?.size?(c(),e(`p`,xt,[s(T,{icon:`fa-solid fa-image`,class:`mr-1`}),a(` `+n(r.$t(`openaiimage.name.size`))+`: `+n(r.modelValue?.request?.size),1)])):m(``,!0),r.showTaskType?(c(),e(`p`,St,[s(T,{icon:`fa-solid fa-bolt`,class:`mr-1`}),a(` `+n(r.$t(`openaiimage.name.task`))+`: `+n(r.taskTypeLabel),1)])):m(``,!0),t(`p`,Ct,[s(T,{icon:`fa-solid fa-magic`,class:`mr-1`}),a(` `+n(r.$t(`openaiimage.name.taskId`))+`: `+n(r.modelValue?.id)+` `,1),s(E,{content:r.modelValue?.id,class:`btn-copy inline-block`},null,8,[`content`])]),r.modelValue?.elapsed?(c(),e(`p`,wt,[s(T,{icon:`fa-solid fa-clock`,class:`mr-1`}),a(` `+n(r.$t(`openaiimage.name.elapsed`))+`: `+n(r.modelValue?.elapsed?.toFixed(2))+`s `,1)])):m(``,!0),r.modelValue?.response?.trace_id?(c(),e(`p`,Tt,[s(T,{icon:`fa-solid fa-hashtag`,class:`mr-1`}),a(` `+n(r.$t(`openaiimage.name.traceId`))+`: `+n(r.modelValue?.response?.trace_id)+` `,1),s(E,{content:r.modelValue?.response?.trace_id,class:`btn-copy inline-block`},null,8,[`content`])])):m(``,!0)]),_:1})])):r.modelValue?.response?.success===!1?(c(),e(`div`,Et,[s(D,{closable:!1,class:`failure`},{template:d(()=>[s(T,{icon:`fa-solid fa-exclamation-triangle`,class:`mr-1`}),a(` `+n(r.$t(`openaiimage.name.failure`)),1)]),default:d(()=>[r.modelValue?.request?.model?(c(),e(`p`,Dt,[s(T,{icon:`fa-solid fa-cube`,class:`mr-1`}),a(` `+n(r.$t(`openaiimage.name.model`))+`: `+n(r.modelValue?.request?.model),1)])):m(``,!0),r.modelValue?.request?.size?(c(),e(`p`,Ot,[s(T,{icon:`fa-solid fa-image`,class:`mr-1`}),a(` `+n(r.$t(`openaiimage.name.size`))+`: `+n(r.modelValue?.request?.size),1)])):m(``,!0),r.showTaskType?(c(),e(`p`,kt,[s(T,{icon:`fa-solid fa-bolt`,class:`mr-1`}),a(` `+n(r.$t(`openaiimage.name.task`))+`: `+n(r.taskTypeLabel),1)])):m(``,!0),t(`p`,At,[s(T,{icon:`fa-solid fa-magic`,class:`mr-1`}),a(` `+n(r.$t(`openaiimage.name.taskId`))+`: `+n(r.modelValue?.id)+` `,1),s(E,{content:r.modelValue?.id,class:`btn-copy`},null,8,[`content`])]),t(`p`,jt,[s(T,{icon:`fa-solid fa-circle-info`,class:`mr-1`}),a(` `+n(r.$t(`openaiimage.name.failureReason`))+`: `+n(r.modelValue?.response?.error?.message)+` `,1),s(E,{content:r.modelValue?.response?.error?.message,class:`btn-copy`},null,8,[`content`])]),r.modelValue?.elapsed?(c(),e(`p`,Mt,[s(T,{icon:`fa-solid fa-clock`,class:`mr-1`}),a(` `+n(r.$t(`openaiimage.name.elapsed`))+`: `+n(r.modelValue?.elapsed?.toFixed(2))+`s `,1)])):m(``,!0),r.modelValue?.response?.trace_id?(c(),e(`p`,Nt,[s(T,{icon:`fa-solid fa-hashtag`,class:`mr-1`}),a(` `+n(r.$t(`openaiimage.name.traceId`))+`: `+n(r.modelValue?.response?.trace_id)+` `,1),s(E,{content:r.modelValue?.response?.trace_id,class:`btn-copy`},null,8,[`content`])])):m(``,!0)]),_:1})])):(c(),e(`div`,$,[s(D,{closable:!1,class:`info`},{template:d(()=>[s(T,{icon:`fa-solid fa-exclamation-triangle`,class:`mr-1`}),a(` `+n(r.$t(`openaiimage.name.failure`)),1)]),default:d(()=>[r.modelValue?.request?.model?(c(),e(`p`,Pt,[s(T,{icon:`fa-solid fa-cube`,class:`mr-1`}),a(` `+n(r.$t(`openaiimage.name.model`))+`: `+n(r.modelValue?.request?.model),1)])):m(``,!0),r.modelValue?.request?.size?(c(),e(`p`,Ft,[s(T,{icon:`fa-solid fa-image`,class:`mr-1`}),a(` `+n(r.$t(`openaiimage.name.size`))+`: `+n(r.modelValue?.request?.size),1)])):m(``,!0),r.showTaskType?(c(),e(`p`,It,[s(T,{icon:`fa-solid fa-bolt`,class:`mr-1`}),a(` `+n(r.$t(`openaiimage.name.task`))+`: `+n(r.taskTypeLabel),1)])):m(``,!0),t(`p`,Lt,[s(T,{icon:`fa-solid fa-magic`,class:`mr-1`}),a(` `+n(r.$t(`openaiimage.name.taskId`))+`: `+n(r.modelValue?.id)+` `,1),s(E,{content:r.modelValue?.id,class:`btn-copy`},null,8,[`content`])])]),_:1})]))])])}var zt=i({name:`RecentPanel`,components:{TaskPreview:I(st,[[`render`,Rt],[`__scopeId`,`data-v-8ee5fb87`]]),BotPlaceholder:ue,NoTasks:de,ScrollList:se},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?.()}}}),Bt={key:0},Vt={key:2,class:`w-full h-full flex items-center justify-center`};function Ht(t,n,r,i,a,u){let p=h(`bot-placeholder`),g=h(`task-preview`),_=h(`scroll-list`),v=h(`no-tasks`);return c(),e(l,null,[t.tasks?.items===void 0?(c(),e(`div`,Bt,[s(p)])):t.tasks?.items?.length&&t.tasks?.items?.length>0?(c(),o(_,{key:1,ref:`scrollList`,class:`tasks h-full w-full overflow-y-auto`,loading:t.loading,onReachTop:n[0]||=e=>t.$emit(`reach-top`)},{default:d(()=>[(c(!0),e(l,null,f(t.tasks?.items,e=>(c(),o(g,{key:e.id,"model-value":e},null,8,[`model-value`]))),128))]),_:1},8,[`loading`])):m(``,!0),t.tasks?.items?.length===0?(c(),e(`div`,Vt,[s(v)])):m(``,!0)],64)}var Ut=i({name:`OpenAIImageIndex`,components:{ConfigPanel:ot,Layout:ye,RecentPanel:I(zt,[[`render`,Ht]])},mixins:[z],inject:[`initialized`],data(){return{task:void 0,job:0,loading:!1}},computed:{applicationsLoading(){return this.$store.state.openaiimage?.status?.getApplications===B.Request},tasksLoading(){return this.$store.state.openaiimage?.status?.getTasks===B.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 ce({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(!V(this.uploadTracker,e=>this.$t(e),e=>G.warning(e)))return;let e={...this.config||{}},t=Array.isArray(e?.image_urls)&&e.image_urls.length>0;if(!this.hasText(e.prompt)){G.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(!U())return;let i=this.credential?.token;if(!i){console.error(`no token specified`);return}G.info(this.$t(`openaiimage.message.startingTask`)),K(`openaiimage`,t?q.edit(r,{token:i}):q.generate(n,{token:i})).then(e=>{console.debug(`task accepted`,e.data?.task_id),G.success(this.$t(`openaiimage.message.startTaskSuccess`))}).catch(e=>{let t=e?.response?.data;t?.error?.code===`used_up`?G.error(this.$t(`openaiimage.message.usedUp`)):G.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 Wt(e,t,n,r,i,a){let l=h(`config-panel`),u=h(`recent-panel`),f=h(`layout`);return c(),o(f,null,{config:d(()=>[s(l,{onGenerate:e.onGenerate},null,8,[`onGenerate`])]),result:d(()=>[s(u,{ref:`recentPanel`,loading:e.loading,onReachTop:e.onReachTop},null,8,[`loading`,`onReachTop`])]),_:1})}var Gt=I(Ut,[[`render`,Wt]]);export{Gt as default};
|