@acedatacloud/nexior 3.17.4 → 3.17.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/assets/{Auth-UrOnsReI.js → Auth-M-wj0J-w.js} +1 -1
- package/dist/assets/{BotPlaceholder-D1brFsYP.js → BotPlaceholder-C1Azl5K7.js} +1 -1
- package/dist/assets/{Callback-CEfkP7EZ.js → Callback-Bz3B9nx6.js} +1 -1
- package/dist/assets/{Console-BJNJrrBO.js → Console-BzLhkikT.js} +1 -1
- package/dist/assets/{Conversation-Bs7qIsnf.js → Conversation-LVJfixVu.js} +2 -2
- package/dist/assets/{CopyToClipboard-DcdEVT8q.js → CopyToClipboard-AFrGC6zu.js} +1 -1
- package/dist/assets/{Detail-DXinej4R.js → Detail-CqdREk_1.js} +1 -1
- package/dist/assets/{EditArray-DX1XTYOn.js → EditArray-CGbwGpRK.js} +1 -1
- package/dist/assets/{Extra-CQ_WfrlD.js → Extra-yKXFVG1a.js} +1 -1
- package/dist/assets/{FilePreview-BH4xmpTP.js → FilePreview-Dt2uzjGl.js} +1 -1
- package/dist/assets/{History-yDLoSPoJ.js → History-Dc-8wkvv.js} +1 -1
- package/dist/assets/{ImagePreview-D-KnXoir.js → ImagePreview-Vw_6gGQd.js} +1 -1
- package/dist/assets/{ImageWrapper-BBcaUhxm.js → ImageWrapper-BHZ6v6Hu.js} +1 -1
- package/dist/assets/{Index-D2Afinxd.js → Index-0kgZhs6d.js} +1 -1
- package/dist/assets/{Index-IXPq-mGt.js → Index-BpDPvB2e.js} +1 -1
- package/dist/assets/{Index-yCRh5IX4.js → Index-C06T2dzl.js} +1 -1
- package/dist/assets/{Index-BhmQ4Z0s.js → Index-CTsXrHyW.js} +1 -1
- package/dist/assets/{Index-Dn2Quw1D.js → Index-CfbuVnfs.js} +1 -1
- package/dist/assets/{Index-DwxOZYA3.js → Index-CojbKmR3.js} +1 -1
- package/dist/assets/{Index-D3Agcw9z.js → Index-Cqzgq7iB.js} +1 -1
- package/dist/assets/{Index-C7ZAf6tR.js → Index-D2oiKbFP.js} +1 -1
- package/dist/assets/{Index-CfLG3wTC.js → Index-D_AMTZIC.js} +1 -1
- package/dist/assets/{Index-DYJDydgE.js → Index-J7JlA35c.js} +1 -1
- package/dist/assets/{Index-DEXMW4cW.js → Index-QMfw1hIR.js} +1 -1
- package/dist/assets/{Index-VKzm7erR.js → Index-QeCRKHNv.js} +1 -1
- package/dist/assets/{Index-C3vVbohs.js → Index-YDLgar-q.js} +1 -1
- package/dist/assets/Index-auc3aXY9.js +1 -0
- package/dist/assets/Index-lGPUVGER.css +1 -0
- package/dist/assets/{InfoIcon-Br1f42SZ.js → InfoIcon-aG3xky6z.js} +1 -1
- package/dist/assets/{Invitees-muoz1tFS.js → Invitees-EIz5GH1N.js} +1 -1
- package/dist/assets/{List-BZuNTZXS.js → List-DY6olt_K.js} +1 -1
- package/dist/assets/{List-CHvsB5jh.js → List-DoLXxtF6.js} +1 -1
- package/dist/assets/{List-BEH8NtBh.js → List-eOJcJP2B.js} +1 -1
- package/dist/assets/{Login-DcH8DxMO.js → Login-o4ywAw_b.js} +1 -1
- package/dist/assets/{Main-cNk_aIFV.js → Main-utEpcTki.js} +1 -1
- package/dist/assets/{Navigator-BGl1_Pgt.js → Navigator-BL82vOxY.js} +1 -1
- package/dist/assets/{NoTasks-CgeVr5YB.js → NoTasks-D6aQEQ_z.js} +1 -1
- package/dist/assets/{Pagination-CEoqyF7v.js → Pagination-BUIYUPlC.js} +1 -1
- package/dist/assets/{Status-BLLZc2aA.js → Status-DvmAEWo4.js} +1 -1
- package/dist/assets/{Subscribe-UQUcC7CS.js → Subscribe-CB1ThAcy.js} +1 -1
- package/dist/assets/{VideoPlayer-DUY52eya.js → VideoPlayer-B4hwt6p9.js} +1 -1
- package/dist/assets/{_Uint8Array-Cp8E3K79.js → _Uint8Array-CKCrVCIW.js} +1 -1
- package/dist/assets/{_baseClone-DyBfXBsi.js → _baseClone-2NfMeWJP.js} +1 -1
- package/dist/assets/{_baseIteratee-B9I0pDUN.js → _baseIteratee-DrOJ5XUl.js} +1 -1
- package/dist/assets/{_initCloneObject-Rg_w1aJn.js → _initCloneObject-CfGFlXWr.js} +1 -1
- package/dist/assets/{castArray-B7L7jPOI.js → castArray-DVyev9bJ.js} +1 -1
- package/dist/assets/{debounce-BXWQzEeG.js → debounce-Dnlkicc5.js} +1 -1
- package/dist/assets/{distribution-HZUNEO37.js → distribution-BbSVq125.js} +1 -1
- package/dist/assets/{dropdown-1Tl9Db1N.js → dropdown-CxuXHpft.js} +1 -1
- package/dist/assets/{index-Dbfp85VL.js → index-B099pfCb.js} +1 -1
- package/dist/assets/{index-DWUYlHcq.js → index-B3Ntk-No.js} +1 -1
- package/dist/assets/{index-Dkgd-CmS.js → index-BEf6ot_1.js} +1 -1
- package/dist/assets/{index-CcPgf95n.js → index-BFW05bY6.js} +1 -1
- package/dist/assets/{index-Bd5hlKhP.js → index-BGGxyBYT.js} +1 -1
- package/dist/assets/{index-FSR3bkwo.js → index-BTbYbX3l.js} +1 -1
- package/dist/assets/{index-C-YxCum6.js → index-BZuQIN64.js} +1 -1
- package/dist/assets/{index-QJ0n_1Kf.js → index-BnwSAYOH.js} +1 -1
- package/dist/assets/{index-D8sqLsu8.js → index-BoPdW-Of.js} +1 -1
- package/dist/assets/{index-mRzx9BSD.js → index-By0D1Y9r.js} +1 -1
- package/dist/assets/{index-B5o8qRlX.js → index-ByY_tD9H.js} +1 -1
- package/dist/assets/{index-BWm3U-BN.js → index-CGl7iLF3.js} +1 -1
- package/dist/assets/{index-IdqXq7O8.js → index-CY75twqY.js} +1 -1
- package/dist/assets/{index-7-cfxo6X.js → index-CZ5FRTN3.js} +1 -1
- package/dist/assets/{index-KXI5e-q0.js → index-D-xE_DuU.js} +1 -1
- package/dist/assets/{index-BRp_12fg.js → index-D67IuHtq.js} +1 -1
- package/dist/assets/{index-B5W4Ro1I.js → index-D7SIBJVO.js} +1 -1
- package/dist/assets/{index-DpZ5x9eg.js → index-DDIFQJDx.js} +1 -1
- package/dist/assets/{index-BDnu8Rx2.js → index-DI_C3Ao9.js} +4 -4
- package/dist/assets/{index-BpN23C33.js → index-DLRLNopw.js} +1 -1
- package/dist/assets/{index-dcR5mro7.js → index-DPVwLadf.js} +1 -1
- package/dist/assets/{index-BerRn096.js → index-DgyERZhI.js} +1 -1
- package/dist/assets/{index-Cvzwn5DL.js → index-DlFjlQy3.js} +1 -1
- package/dist/assets/{index-BHstLZkN.js → index-DqzgaH2_.js} +1 -1
- package/dist/assets/{index-BjeXTDuD.js → index-PU4oJo9l.js} +1 -1
- package/dist/assets/{index-DmRA92w7.js → index-Uz6VpvEs.js} +1 -1
- package/dist/assets/{index-BqB8EtmR.js → index-bcWh3aiG.js} +1 -1
- package/dist/assets/{index-CJFnLzQ-.js → index-ml3LR6LG.js} +1 -1
- package/dist/assets/{index-DZxnN0Hy.js → index-sVUmFHgv.js} +1 -1
- package/dist/assets/{index.es-BcVUdKzU.js → index.es-Sv2RX3tE.js} +1 -1
- package/dist/assets/{isEqual-oRaCHLap.js → isEqual-rNurVTiM.js} +1 -1
- package/dist/assets/{isPlainObject-D0l8uyMi.js → isPlainObject-BiS_yJCA.js} +1 -1
- package/dist/assets/midjourney-BCDKTBps.js +1 -0
- package/dist/assets/midjourney-BPcmoRqB.js +1 -0
- package/dist/assets/midjourney-Bn_bnom2.js +1 -0
- package/dist/assets/midjourney-C9rsTTmv.js +1 -0
- package/dist/assets/{midjourney-tCFio6uZ.js → midjourney-CKT0ckpN.js} +1 -1
- package/dist/assets/midjourney-CkXL5sd0.js +1 -0
- package/dist/assets/midjourney-D4nnkrfR.js +1 -0
- package/dist/assets/midjourney-DMiOZ3gh.js +1 -0
- package/dist/assets/midjourney-DQsIqxRE.js +1 -0
- package/dist/assets/midjourney-Dd0w-JCt.js +1 -0
- package/dist/assets/midjourney-Dja-dCmE.js +1 -0
- package/dist/assets/midjourney-DlwRY6Im.js +1 -0
- package/dist/assets/midjourney-Dr2BQ3dQ.js +1 -0
- package/dist/assets/midjourney-Dvt_BL0B.js +1 -0
- package/dist/assets/midjourney-nm2wEVEf.js +1 -0
- package/dist/assets/{order-B4JxV1l_.js → order-qoLDORAh.js} +1 -1
- package/dist/assets/{price-kIEvtbxH.js → price-CV9K1ebj.js} +1 -1
- package/dist/assets/{strings-DEKOZWkP.js → strings-CKxhwaoH.js} +1 -1
- package/dist/assets/{typescript-DhyxNYRx.js → typescript-8pw9sVHl.js} +1 -1
- package/dist/assets/{use-form-item-B7j42EP5.js → use-form-item-D6NQ9sNV.js} +1 -1
- package/dist/index.html +1 -1
- package/package.json +1 -1
- package/dist/assets/Index-8ecEfh5u.js +0 -1
- package/dist/assets/Index-IjNohCrs.css +0 -1
- package/dist/assets/midjourney-BK68rw4v.js +0 -1
- package/dist/assets/midjourney-Bc96BM98.js +0 -1
- package/dist/assets/midjourney-BxBWHaOt.js +0 -1
- package/dist/assets/midjourney-BxOyD_dl.js +0 -1
- package/dist/assets/midjourney-CCAZM0l6.js +0 -1
- package/dist/assets/midjourney-CvJ_CJAc.js +0 -1
- package/dist/assets/midjourney-D1IbLd1m.js +0 -1
- package/dist/assets/midjourney-DJ_2P23a.js +0 -1
- package/dist/assets/midjourney-DKLOMMVC.js +0 -1
- package/dist/assets/midjourney-DM4jVekc.js +0 -1
- package/dist/assets/midjourney-DPAw3bi8.js +0 -1
- package/dist/assets/midjourney-DlQvz4Bo.js +0 -1
- package/dist/assets/midjourney-DtAVhT0M.js +0 -1
- package/dist/assets/midjourney-tsH3Y0i-.js +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
import{F as E}from"./index.es-BcVUdKzU.js";import{E as S}from"./index-DmRA92w7.js";import{E as U}from"./index-Cvzwn5DL.js";import{d as h,h as $,b as i,t as a,k as t,r as T,j as _,l as s,o as r,eF as j,x as l,F as y,v as C,i as V,eG as D,D as f,y as x,n as I,eH as F,dr as P,dm as R}from"./index-BDnu8Rx2.js";import{E as L,a as M}from"./index-QJ0n_1Kf.js";import{I as G}from"./InfoIcon-Br1f42SZ.js";import{E as B,a as O}from"./index-dcR5mro7.js";import{E as q}from"./index-BHstLZkN.js";import{C as N,N as z}from"./NoTasks-CgeVr5YB.js";import{a as H}from"./price-kIEvtbxH.js";import{C as X}from"./CopyToClipboard-DcdEVT8q.js";import{I as K}from"./ImageWrapper-BBcaUhxm.js";import{E as W}from"./index-B5o8qRlX.js";import{E as J}from"./index-B5W4Ro1I.js";import{B as Q}from"./BotPlaceholder-D1brFsYP.js";import{E as w}from"./index-Dbfp85VL.js";import"./use-form-item-B7j42EP5.js";import"./index-r5W6hzzQ.js";import"./index-BjeXTDuD.js";import"./index-DZxnN0Hy.js";import"./typescript-DhyxNYRx.js";import"./index-KXI5e-q0.js";import"./strings-DEKOZWkP.js";import"./castArray-B7L7jPOI.js";import"./isEqual-oRaCHLap.js";import"./_Uint8Array-Cp8E3K79.js";import"./debounce-BXWQzEeG.js";import"./_baseIteratee-B9I0pDUN.js";import"./index-BqB8EtmR.js";import"./index-FSR3bkwo.js";import"./index-D8sqLsu8.js";const Y=h({name:"LayoutFlux",components:{ElDrawer:U,ElButton:S,FontAwesomeIcon:E},data(){return{drawer:!1}}}),Z={class:"main"},ee={class:"config"},te={class:"result"};function oe(e,o,p,c,g,v){const d=s("font-awesome-icon"),m=s("el-button"),n=s("el-drawer");return r(),i("div",Z,[a("div",ee,[T(e.$slots,"config",{},void 0,!0)]),a("div",te,[T(e.$slots,"result",{},void 0,!0)]),t(m,{circle:"",class:"menu",onClick:o[0]||(o[0]=u=>e.drawer=!0)},{default:_(()=>[t(d,{icon:"fa-solid fa-magic"})]),_:1}),t(n,{modelValue:e.drawer,"onUpdate:modelValue":o[1]||(o[1]=u=>e.drawer=u),direction:"ltr","with-header":!1,size:"340px",class:"drawer"},{default:_(()=>[T(e.$slots,"config",{},void 0,!0)]),_:3},8,["modelValue"])])}const se=$(Y,[["render",oe],["__scopeId","data-v-126e6454"]]),ne=h({name:"ModelSelector",components:{ElSelect:M,ElOption:L},props:{modelValue:{type:String,default:void 0}},emits:["update:modelValue"],data(){return{options:[{value:"flux-schnell",label:"flux-schnell"},{value:"flux-dev",label:"flux-dev"},{value:"flux-pro",label:"flux-pro"},{value:"flux-pro-1.1",label:"flux-pro-1.1"},{value:"flux-pro-1.1-ultra",label:"flux-pro-1.1-ultra"},{value:"flux-kontext-pro",label:"flux-kontext-pro"},{value:"flux-kontext-max",label:"flux-kontext-max"}]}},computed:{value:{get(){return this.$store.state.flux?.config?.model},set(e){this.$store.commit("flux/setConfig",{...this.$store.state.flux.config,model:e})}}},mounted(){this.value||(this.value=j)}}),ae={class:"field"},le={class:"title font-bold"};function re(e,o,p,c,g,v){const d=s("el-option"),m=s("el-select");return r(),i("div",ae,[a("h2",le,l(e.$t("flux.name.model")),1),t(m,{modelValue:e.value,"onUpdate:modelValue":o[0]||(o[0]=n=>e.value=n),class:"value",placeholder:e.$t("flux.placeholder.select")},{default:_(()=>[(r(!0),i(y,null,C(e.options,n=>(r(),V(d,{key:n.value,label:n.label,value:n.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const ie=$(ne,[["render",re],["__scopeId","data-v-2e94cca6"]]),ce=h({name:"CountSelector",components:{ElSlider:O,InfoIcon:G,ElInputNumber:B},computed:{value:{get(){return this.$store.state.flux?.config?.count},set(e){console.debug("set count",e),this.$store.commit("flux/setConfig",{...this.$store.state.flux?.config,count:e})}}},mounted(){this.value||(this.value=D)}}),ue={class:"flex justify-between"},de={class:"flex justify-start items-center"},me={class:"text-sm font-bold"},pe={class:"flex justify-end items-center"},fe={class:"w-full"};function _e(e,o,p,c,g,v){const d=s("info-icon"),m=s("el-input-number"),n=s("el-slider");return r(),i("div",null,[a("div",ue,[a("div",de,[a("span",me,l(e.$t("flux.name.numbers")),1),t(d,{content:e.$t("flux.description.numbers")},null,8,["content"])]),a("div",pe,[t(m,{modelValue:e.value,"onUpdate:modelValue":o[0]||(o[0]=u=>e.value=u),"controls-position":"right"},null,8,["modelValue"])])]),a("div",fe,[t(n,{modelValue:e.value,"onUpdate:modelValue":o[1]||(o[1]=u=>e.value=u),min:1,max:4,step:1},null,8,["modelValue"])])])}const he=$(ce,[["render",_e]]),$e="",ge=h({name:"PromptInput",components:{ElInput:q,InfoIcon:G},computed:{prompt:{get(){return this.$store.state.flux?.config?.prompt},set(e){console.debug("set prompt",e),this.$store.commit("flux/setConfig",{...this.$store.state.flux?.config,prompt:e})}}},mounted(){this.prompt||(this.prompt=$e)}}),ve={class:"field"},be={class:"box"},xe={class:"title font-bold"};function ke(e,o,p,c,g,v){const d=s("info-icon"),m=s("el-input");return r(),i("div",ve,[a("div",be,[a("h2",xe,l(e.$t("flux.name.prompt")),1),t(d,{content:e.$t("flux.description.prompt"),class:"info"},null,8,["content"])]),t(m,{modelValue:e.prompt,"onUpdate:modelValue":o[0]||(o[0]=n=>e.prompt=n),rows:3,type:"textarea",class:"prompt",placeholder:e.$t("flux.placeholder.prompt"),maxlength:300,"show-word-limit":""},null,8,["modelValue","placeholder"])])}const we=$(ge,[["render",ke],["__scopeId","data-v-4c101a17"]]),ye=h({name:"PresetPanel",components:{ElButton:S,FontAwesomeIcon:E,PromptInput:we,ModelSelector:ie,CountSelector:he,Consumption:N},emits:["generate"],computed:{config(){return this.$store.state.flux?.config},consumption(){return H(this.config,this.service?.metadata?.price)},service(){return this.$store.state.flux?.service}},methods:{onGenerate(){this.$emit("generate")}}}),Ve={class:"flex flex-col h-full"},Te={class:"flex-1 overflow-y-auto p-[15px]"},Ee={class:"flex flex-col items-center justify-center px-[15px] pb-[15px]"};function Ce(e,o,p,c,g,v){const d=s("prompt-input"),m=s("model-selector"),n=s("count-selector"),u=s("consumption"),b=s("font-awesome-icon"),k=s("el-button");return r(),i("div",Ve,[a("div",Te,[t(d,{class:"mb-4"}),t(m,{class:"mb-4"}),t(n,{class:"mb-4"})]),a("div",Ee,[t(u,{value:e.consumption,service:e.service},null,8,["value","service"]),t(k,{type:"primary",class:"btn w-full",round:"",onClick:e.onGenerate},{default:_(()=>[t(b,{icon:"fa-solid fa-magic",class:"mr-2"}),f(" "+l(e.$t("flux.button.generate")),1)]),_:1},8,["onClick"])])])}const Ie=$(ye,[["render",Ce]]),Se=h({name:"TaskPreview",components:{ElImage:J,CopyToClipboard:X,FontAwesomeIcon:E,ElAlert:W,ImageWrapper:K},props:{modelValue:{type:Object,required:!0}},data(){return{}},computed:{application(){return this.$store.state.flux?.application},config(){return this.$store.state.flux?.config},images(){let e=[];const o=this.modelValue?.request?.action;return Array.isArray(this.modelValue?.response?.data)&&this.modelValue?.response?.data?.forEach(p=>{let c=p;o&&(c.action=o),e.push(c)}),e}},methods:{onDownload(e,o){e.stopPropagation(),console.log("on download"),window.open(o,"_blank")},onOpenImage(e){window.open(e,"_blank")}}}),Ge={class:"preview"},Ae={class:"left"},Ue={class:"main"},je={class:"bot"},De={class:"datetime"},Fe={class:"info"},Pe={key:0,class:"prompt mt-2"},Re={key:0},Le={key:0,class:I({content:!0,failed:!0})},Me={class:"flex justify-start items-center gap-4 w-full overflow-x-auto"},Be={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Oe={class:"text-[var(--el-text-color-regular)] text-xs mb-0"},qe={key:1,class:I({content:!0})},Ne={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},ze={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},He={class:"text-[var(--el-text-color-regular)] text-xs mb-0"},Xe={key:2,class:I({content:!0})},Ke={class:"text-[var(--el-text-color-regular)] text-xs mb-0"};function We(e,o,p,c,g,v){const d=s("el-image"),m=s("image-wrapper"),n=s("font-awesome-icon"),u=s("copy-to-clipboard"),b=s("el-alert");return r(),i("div",Ge,[a("div",Ae,[t(d,{src:"https://cdn.acedata.cloud/ogm2oa.png",class:"avatar"})]),a("div",Ue,[a("div",je,[f(l(e.$t("flux.name.fluxBot"))+" ",1),a("span",De,l(e.$dayjs.format(""+new Date(parseFloat((e.modelValue?.created_at||"").toString())*1e3))),1)]),a("div",Fe,[e.modelValue?.request?.prompt?(r(),i("p",Pe,[f(l(e.modelValue?.request?.prompt)+" ",1),e.modelValue?.response?x("",!0):(r(),i("span",Re," - ("+l(e.$t("flux.status.pending"))+") ",1))])):x("",!0)]),e.modelValue?.response?.success===!0?(r(),i("div",Le,[a("div",Me,[(r(!0),i(y,null,C(e.images,(k,A)=>(r(),V(m,{key:A,src:k?.image_url,"raw-src":k?.image_url,"model-value":k},null,8,["src","raw-src","model-value"]))),128))]),t(b,{closable:!1,class:"mt-2 success"},{default:_(()=>[a("p",Be,[t(n,{icon:"fa-solid fa-hashtag",class:"mr-1"}),f(" "+l(e.$t("flux.name.model"))+": "+l(e.modelValue?.request?.model),1)]),a("p",Oe,[t(n,{icon:"fa-solid fa-magic",class:"mr-1"}),f(" "+l(e.$t("flux.name.taskId"))+": "+l(e.modelValue?.id)+" ",1),t(u,{content:e.modelValue?.id,class:"btn-copy inline-block"},null,8,["content"])])]),_:1})])):x("",!0),e.modelValue?.response?.success===!1?(r(),i("div",qe,[t(b,{closable:!1,class:"failure"},{template:_(()=>[t(n,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),f(" "+l(e.$t("flux.name.failure")),1)]),default:_(()=>[a("p",Ne,[t(n,{icon:"fa-solid fa-magic",class:"mr-1"}),f(" "+l(e.$t("flux.name.taskId"))+": "+l(e.modelValue?.id)+" ",1),t(u,{content:e.modelValue?.id,class:"btn-copy"},null,8,["content"])]),a("p",ze,[t(n,{icon:"fa-solid fa-circle-info",class:"mr-1"}),f(" "+l(e.$t("flux.name.failureReason"))+": "+l(e.modelValue?.response?.error?.message)+" ",1),t(u,{content:e.modelValue?.response?.error?.message,class:"btn-copy"},null,8,["content"])]),a("p",He,[t(n,{icon:"fa-solid fa-hashtag",class:"mr-1"}),f(" "+l(e.$t("flux.name.traceId"))+": "+l(e.modelValue?.response?.trace_id)+" ",1),t(u,{content:e.modelValue?.response?.trace_id,class:"btn-copy"},null,8,["content"])])]),_:1})])):x("",!0),e.modelValue?.response?x("",!0):(r(),i("div",Xe,[t(b,{closable:!1,class:"info"},{template:_(()=>[t(n,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),f(" "+l(e.$t("flux.name.failure")),1)]),default:_(()=>[a("p",Ke,[t(n,{icon:"fa-solid fa-magic",class:"mr-1"}),f(" "+l(e.$t("flux.name.taskId"))+": "+l(e.modelValue?.id)+" ",1),t(u,{content:e.modelValue?.id,class:"btn-copy"},null,8,["content"])])]),_:1})]))])])}const Je=$(Se,[["render",We],["__scopeId","data-v-fd5838a5"]]),Qe=h({name:"RecentPanel",components:{TaskPreview:Je,BotPlaceholder:Q,NoTasks:z},emits:["reach-top"],data(){return{job:0}},computed:{tasks(){return{...this.$store.state.flux?.tasks,items:this.$store.state.flux?.tasks?.items?.slice()}}},methods:{onHandleScroll(){const e=this.$refs.panel;console.log("reach-top reach-top reach-top"),e.scrollTop===0&&this.$emit("reach-top")}}}),Ye={key:0},Ze={key:1,class:"tasks h-full w-full overflow-y-auto"},et={key:2,class:"w-full h-full flex items-center justify-center"};function tt(e,o,p,c,g,v){const d=s("bot-placeholder"),m=s("task-preview"),n=s("no-tasks");return r(),i(y,null,[e.tasks?.items===void 0?(r(),i("div",Ye,[t(d)])):e.tasks?.items?.length&&e.tasks?.items?.length>0?(r(),i("div",Ze,[(r(!0),i(y,null,C(e.tasks?.items,(u,b)=>(r(),V(m,{key:b,"model-value":u},null,8,["model-value"]))),128))])):x("",!0),e.tasks?.items?.length===0?(r(),i("div",et,[t(n)])):x("",!0)],64)}const ot=$(Qe,[["render",tt]]),st="https://webhook.acedata.cloud/flux",nt=h({name:"FluxIndex",components:{ConfigPanel:Ie,Layout:se,RecentPanel:ot},inject:["initialized"],data(){return{task:void 0,job:0}},computed:{loading(){return this.$store.state.flux?.status?.getApplications===R.Request},credential(){return this.$store.state.flux?.credential},config(){return this.$store.state.flux?.config},application(){return this.$store.state.flux?.application},tasks(){return this.$store.state.flux?.tasks}},watch:{tasks:{handler(e,o){e?.items?.length>o?.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=setInterval(()=>{this.onGetTasks()},5e3))},immediate:!0}},async mounted(){await this.onGetService()},async unmounted(){clearInterval(this.job)},methods:{async onReachTop(){console.debug("reached top"),await this.onGetTasks({createdAtMax:this.tasks?.items?.[0]?.created_at})},async onGetService(){console.debug("start onGetService"),await this.$store.dispatch("flux/getService"),console.debug("end onGetService")},async onGetApplication(){console.debug("start onGetApplication"),await this.$store.dispatch("flux/getApplications"),console.debug("end onGetApplication"),await this.onGetTasks()},async onScrollDown(){setTimeout(()=>{const e=document.querySelector(".tasks");e&&(e.scrollTop=e.scrollHeight)},1e3)},async onGetTasks(e){if(this.loading){console.debug("loading");return}console.debug("start onGetTasks",e);const{limit:o=5,createdAtMin:p,createdAtMax:c}=e||{};console.debug("limit",o,"createdAtMin",p,"createdAtMax",c),await this.$store.dispatch("flux/getTasks",{limit:o,createdAtMin:p,createdAtMax:c})},async onGenerate(){const e={...this.config,callback_url:st},o=this.credential?.token;if(!o){console.error("no token specified");return}w.info(this.$t("flux.message.startingTask")),F.generate(e,{token:o}).then(()=>{w.success(this.$t("flux.message.startTaskSuccess"))}).catch(p=>{const c=p?.response?.data;c?.error?.code===P?w.error(this.$t("flux.message.usedUp")):w.error(this.$t("flux.message.startTaskFailed")+c?.error?.message)}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})}}});function at(e,o,p,c,g,v){const d=s("config-panel"),m=s("recent-panel"),n=s("layout");return r(),V(n,null,{config:_(()=>[t(d,{onGenerate:e.onGenerate},null,8,["onGenerate"])]),result:_(()=>[t(m,{onReachTop:e.onReachTop},null,8,["onReachTop"])]),_:1})}const Pt=$(nt,[["render",at]]);export{Pt as default};
|
|
1
|
+
import{F as E}from"./index.es-Sv2RX3tE.js";import{E as S}from"./index-Uz6VpvEs.js";import{E as U}from"./index-DlFjlQy3.js";import{d as h,h as $,b as i,t as a,k as t,r as T,j as _,l as s,o as r,eF as j,x as l,F as y,v as C,i as V,eG as D,D as f,y as x,n as I,eH as F,dr as P,dm as R}from"./index-DI_C3Ao9.js";import{E as L,a as M}from"./index-BnwSAYOH.js";import{I as G}from"./InfoIcon-aG3xky6z.js";import{E as B,a as O}from"./index-DPVwLadf.js";import{E as q}from"./index-DqzgaH2_.js";import{C as N,N as z}from"./NoTasks-D6aQEQ_z.js";import{a as H}from"./price-CV9K1ebj.js";import{C as X}from"./CopyToClipboard-AFrGC6zu.js";import{I as K}from"./ImageWrapper-BHZ6v6Hu.js";import{E as W}from"./index-ByY_tD9H.js";import{E as J}from"./index-D7SIBJVO.js";import{B as Q}from"./BotPlaceholder-C1Azl5K7.js";import{E as w}from"./index-B099pfCb.js";import"./use-form-item-D6NQ9sNV.js";import"./index-r5W6hzzQ.js";import"./index-PU4oJo9l.js";import"./index-sVUmFHgv.js";import"./typescript-8pw9sVHl.js";import"./index-D-xE_DuU.js";import"./strings-CKxhwaoH.js";import"./castArray-DVyev9bJ.js";import"./isEqual-rNurVTiM.js";import"./_Uint8Array-CKCrVCIW.js";import"./debounce-Dnlkicc5.js";import"./_baseIteratee-DrOJ5XUl.js";import"./index-bcWh3aiG.js";import"./index-BTbYbX3l.js";import"./index-BoPdW-Of.js";const Y=h({name:"LayoutFlux",components:{ElDrawer:U,ElButton:S,FontAwesomeIcon:E},data(){return{drawer:!1}}}),Z={class:"main"},ee={class:"config"},te={class:"result"};function oe(e,o,p,c,g,v){const d=s("font-awesome-icon"),m=s("el-button"),n=s("el-drawer");return r(),i("div",Z,[a("div",ee,[T(e.$slots,"config",{},void 0,!0)]),a("div",te,[T(e.$slots,"result",{},void 0,!0)]),t(m,{circle:"",class:"menu",onClick:o[0]||(o[0]=u=>e.drawer=!0)},{default:_(()=>[t(d,{icon:"fa-solid fa-magic"})]),_:1}),t(n,{modelValue:e.drawer,"onUpdate:modelValue":o[1]||(o[1]=u=>e.drawer=u),direction:"ltr","with-header":!1,size:"340px",class:"drawer"},{default:_(()=>[T(e.$slots,"config",{},void 0,!0)]),_:3},8,["modelValue"])])}const se=$(Y,[["render",oe],["__scopeId","data-v-126e6454"]]),ne=h({name:"ModelSelector",components:{ElSelect:M,ElOption:L},props:{modelValue:{type:String,default:void 0}},emits:["update:modelValue"],data(){return{options:[{value:"flux-schnell",label:"flux-schnell"},{value:"flux-dev",label:"flux-dev"},{value:"flux-pro",label:"flux-pro"},{value:"flux-pro-1.1",label:"flux-pro-1.1"},{value:"flux-pro-1.1-ultra",label:"flux-pro-1.1-ultra"},{value:"flux-kontext-pro",label:"flux-kontext-pro"},{value:"flux-kontext-max",label:"flux-kontext-max"}]}},computed:{value:{get(){return this.$store.state.flux?.config?.model},set(e){this.$store.commit("flux/setConfig",{...this.$store.state.flux.config,model:e})}}},mounted(){this.value||(this.value=j)}}),ae={class:"field"},le={class:"title font-bold"};function re(e,o,p,c,g,v){const d=s("el-option"),m=s("el-select");return r(),i("div",ae,[a("h2",le,l(e.$t("flux.name.model")),1),t(m,{modelValue:e.value,"onUpdate:modelValue":o[0]||(o[0]=n=>e.value=n),class:"value",placeholder:e.$t("flux.placeholder.select")},{default:_(()=>[(r(!0),i(y,null,C(e.options,n=>(r(),V(d,{key:n.value,label:n.label,value:n.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const ie=$(ne,[["render",re],["__scopeId","data-v-2e94cca6"]]),ce=h({name:"CountSelector",components:{ElSlider:O,InfoIcon:G,ElInputNumber:B},computed:{value:{get(){return this.$store.state.flux?.config?.count},set(e){console.debug("set count",e),this.$store.commit("flux/setConfig",{...this.$store.state.flux?.config,count:e})}}},mounted(){this.value||(this.value=D)}}),ue={class:"flex justify-between"},de={class:"flex justify-start items-center"},me={class:"text-sm font-bold"},pe={class:"flex justify-end items-center"},fe={class:"w-full"};function _e(e,o,p,c,g,v){const d=s("info-icon"),m=s("el-input-number"),n=s("el-slider");return r(),i("div",null,[a("div",ue,[a("div",de,[a("span",me,l(e.$t("flux.name.numbers")),1),t(d,{content:e.$t("flux.description.numbers")},null,8,["content"])]),a("div",pe,[t(m,{modelValue:e.value,"onUpdate:modelValue":o[0]||(o[0]=u=>e.value=u),"controls-position":"right"},null,8,["modelValue"])])]),a("div",fe,[t(n,{modelValue:e.value,"onUpdate:modelValue":o[1]||(o[1]=u=>e.value=u),min:1,max:4,step:1},null,8,["modelValue"])])])}const he=$(ce,[["render",_e]]),$e="",ge=h({name:"PromptInput",components:{ElInput:q,InfoIcon:G},computed:{prompt:{get(){return this.$store.state.flux?.config?.prompt},set(e){console.debug("set prompt",e),this.$store.commit("flux/setConfig",{...this.$store.state.flux?.config,prompt:e})}}},mounted(){this.prompt||(this.prompt=$e)}}),ve={class:"field"},be={class:"box"},xe={class:"title font-bold"};function ke(e,o,p,c,g,v){const d=s("info-icon"),m=s("el-input");return r(),i("div",ve,[a("div",be,[a("h2",xe,l(e.$t("flux.name.prompt")),1),t(d,{content:e.$t("flux.description.prompt"),class:"info"},null,8,["content"])]),t(m,{modelValue:e.prompt,"onUpdate:modelValue":o[0]||(o[0]=n=>e.prompt=n),rows:3,type:"textarea",class:"prompt",placeholder:e.$t("flux.placeholder.prompt"),maxlength:300,"show-word-limit":""},null,8,["modelValue","placeholder"])])}const we=$(ge,[["render",ke],["__scopeId","data-v-4c101a17"]]),ye=h({name:"PresetPanel",components:{ElButton:S,FontAwesomeIcon:E,PromptInput:we,ModelSelector:ie,CountSelector:he,Consumption:N},emits:["generate"],computed:{config(){return this.$store.state.flux?.config},consumption(){return H(this.config,this.service?.metadata?.price)},service(){return this.$store.state.flux?.service}},methods:{onGenerate(){this.$emit("generate")}}}),Ve={class:"flex flex-col h-full"},Te={class:"flex-1 overflow-y-auto p-[15px]"},Ee={class:"flex flex-col items-center justify-center px-[15px] pb-[15px]"};function Ce(e,o,p,c,g,v){const d=s("prompt-input"),m=s("model-selector"),n=s("count-selector"),u=s("consumption"),b=s("font-awesome-icon"),k=s("el-button");return r(),i("div",Ve,[a("div",Te,[t(d,{class:"mb-4"}),t(m,{class:"mb-4"}),t(n,{class:"mb-4"})]),a("div",Ee,[t(u,{value:e.consumption,service:e.service},null,8,["value","service"]),t(k,{type:"primary",class:"btn w-full",round:"",onClick:e.onGenerate},{default:_(()=>[t(b,{icon:"fa-solid fa-magic",class:"mr-2"}),f(" "+l(e.$t("flux.button.generate")),1)]),_:1},8,["onClick"])])])}const Ie=$(ye,[["render",Ce]]),Se=h({name:"TaskPreview",components:{ElImage:J,CopyToClipboard:X,FontAwesomeIcon:E,ElAlert:W,ImageWrapper:K},props:{modelValue:{type:Object,required:!0}},data(){return{}},computed:{application(){return this.$store.state.flux?.application},config(){return this.$store.state.flux?.config},images(){let e=[];const o=this.modelValue?.request?.action;return Array.isArray(this.modelValue?.response?.data)&&this.modelValue?.response?.data?.forEach(p=>{let c=p;o&&(c.action=o),e.push(c)}),e}},methods:{onDownload(e,o){e.stopPropagation(),console.log("on download"),window.open(o,"_blank")},onOpenImage(e){window.open(e,"_blank")}}}),Ge={class:"preview"},Ae={class:"left"},Ue={class:"main"},je={class:"bot"},De={class:"datetime"},Fe={class:"info"},Pe={key:0,class:"prompt mt-2"},Re={key:0},Le={key:0,class:I({content:!0,failed:!0})},Me={class:"flex justify-start items-center gap-4 w-full overflow-x-auto"},Be={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Oe={class:"text-[var(--el-text-color-regular)] text-xs mb-0"},qe={key:1,class:I({content:!0})},Ne={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},ze={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},He={class:"text-[var(--el-text-color-regular)] text-xs mb-0"},Xe={key:2,class:I({content:!0})},Ke={class:"text-[var(--el-text-color-regular)] text-xs mb-0"};function We(e,o,p,c,g,v){const d=s("el-image"),m=s("image-wrapper"),n=s("font-awesome-icon"),u=s("copy-to-clipboard"),b=s("el-alert");return r(),i("div",Ge,[a("div",Ae,[t(d,{src:"https://cdn.acedata.cloud/ogm2oa.png",class:"avatar"})]),a("div",Ue,[a("div",je,[f(l(e.$t("flux.name.fluxBot"))+" ",1),a("span",De,l(e.$dayjs.format(""+new Date(parseFloat((e.modelValue?.created_at||"").toString())*1e3))),1)]),a("div",Fe,[e.modelValue?.request?.prompt?(r(),i("p",Pe,[f(l(e.modelValue?.request?.prompt)+" ",1),e.modelValue?.response?x("",!0):(r(),i("span",Re," - ("+l(e.$t("flux.status.pending"))+") ",1))])):x("",!0)]),e.modelValue?.response?.success===!0?(r(),i("div",Le,[a("div",Me,[(r(!0),i(y,null,C(e.images,(k,A)=>(r(),V(m,{key:A,src:k?.image_url,"raw-src":k?.image_url,"model-value":k},null,8,["src","raw-src","model-value"]))),128))]),t(b,{closable:!1,class:"mt-2 success"},{default:_(()=>[a("p",Be,[t(n,{icon:"fa-solid fa-hashtag",class:"mr-1"}),f(" "+l(e.$t("flux.name.model"))+": "+l(e.modelValue?.request?.model),1)]),a("p",Oe,[t(n,{icon:"fa-solid fa-magic",class:"mr-1"}),f(" "+l(e.$t("flux.name.taskId"))+": "+l(e.modelValue?.id)+" ",1),t(u,{content:e.modelValue?.id,class:"btn-copy inline-block"},null,8,["content"])])]),_:1})])):x("",!0),e.modelValue?.response?.success===!1?(r(),i("div",qe,[t(b,{closable:!1,class:"failure"},{template:_(()=>[t(n,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),f(" "+l(e.$t("flux.name.failure")),1)]),default:_(()=>[a("p",Ne,[t(n,{icon:"fa-solid fa-magic",class:"mr-1"}),f(" "+l(e.$t("flux.name.taskId"))+": "+l(e.modelValue?.id)+" ",1),t(u,{content:e.modelValue?.id,class:"btn-copy"},null,8,["content"])]),a("p",ze,[t(n,{icon:"fa-solid fa-circle-info",class:"mr-1"}),f(" "+l(e.$t("flux.name.failureReason"))+": "+l(e.modelValue?.response?.error?.message)+" ",1),t(u,{content:e.modelValue?.response?.error?.message,class:"btn-copy"},null,8,["content"])]),a("p",He,[t(n,{icon:"fa-solid fa-hashtag",class:"mr-1"}),f(" "+l(e.$t("flux.name.traceId"))+": "+l(e.modelValue?.response?.trace_id)+" ",1),t(u,{content:e.modelValue?.response?.trace_id,class:"btn-copy"},null,8,["content"])])]),_:1})])):x("",!0),e.modelValue?.response?x("",!0):(r(),i("div",Xe,[t(b,{closable:!1,class:"info"},{template:_(()=>[t(n,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),f(" "+l(e.$t("flux.name.failure")),1)]),default:_(()=>[a("p",Ke,[t(n,{icon:"fa-solid fa-magic",class:"mr-1"}),f(" "+l(e.$t("flux.name.taskId"))+": "+l(e.modelValue?.id)+" ",1),t(u,{content:e.modelValue?.id,class:"btn-copy"},null,8,["content"])])]),_:1})]))])])}const Je=$(Se,[["render",We],["__scopeId","data-v-fd5838a5"]]),Qe=h({name:"RecentPanel",components:{TaskPreview:Je,BotPlaceholder:Q,NoTasks:z},emits:["reach-top"],data(){return{job:0}},computed:{tasks(){return{...this.$store.state.flux?.tasks,items:this.$store.state.flux?.tasks?.items?.slice()}}},methods:{onHandleScroll(){const e=this.$refs.panel;console.log("reach-top reach-top reach-top"),e.scrollTop===0&&this.$emit("reach-top")}}}),Ye={key:0},Ze={key:1,class:"tasks h-full w-full overflow-y-auto"},et={key:2,class:"w-full h-full flex items-center justify-center"};function tt(e,o,p,c,g,v){const d=s("bot-placeholder"),m=s("task-preview"),n=s("no-tasks");return r(),i(y,null,[e.tasks?.items===void 0?(r(),i("div",Ye,[t(d)])):e.tasks?.items?.length&&e.tasks?.items?.length>0?(r(),i("div",Ze,[(r(!0),i(y,null,C(e.tasks?.items,(u,b)=>(r(),V(m,{key:b,"model-value":u},null,8,["model-value"]))),128))])):x("",!0),e.tasks?.items?.length===0?(r(),i("div",et,[t(n)])):x("",!0)],64)}const ot=$(Qe,[["render",tt]]),st="https://webhook.acedata.cloud/flux",nt=h({name:"FluxIndex",components:{ConfigPanel:Ie,Layout:se,RecentPanel:ot},inject:["initialized"],data(){return{task:void 0,job:0}},computed:{loading(){return this.$store.state.flux?.status?.getApplications===R.Request},credential(){return this.$store.state.flux?.credential},config(){return this.$store.state.flux?.config},application(){return this.$store.state.flux?.application},tasks(){return this.$store.state.flux?.tasks}},watch:{tasks:{handler(e,o){e?.items?.length>o?.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=setInterval(()=>{this.onGetTasks()},5e3))},immediate:!0}},async mounted(){await this.onGetService()},async unmounted(){clearInterval(this.job)},methods:{async onReachTop(){console.debug("reached top"),await this.onGetTasks({createdAtMax:this.tasks?.items?.[0]?.created_at})},async onGetService(){console.debug("start onGetService"),await this.$store.dispatch("flux/getService"),console.debug("end onGetService")},async onGetApplication(){console.debug("start onGetApplication"),await this.$store.dispatch("flux/getApplications"),console.debug("end onGetApplication"),await this.onGetTasks()},async onScrollDown(){setTimeout(()=>{const e=document.querySelector(".tasks");e&&(e.scrollTop=e.scrollHeight)},1e3)},async onGetTasks(e){if(this.loading){console.debug("loading");return}console.debug("start onGetTasks",e);const{limit:o=5,createdAtMin:p,createdAtMax:c}=e||{};console.debug("limit",o,"createdAtMin",p,"createdAtMax",c),await this.$store.dispatch("flux/getTasks",{limit:o,createdAtMin:p,createdAtMax:c})},async onGenerate(){const e={...this.config,callback_url:st},o=this.credential?.token;if(!o){console.error("no token specified");return}w.info(this.$t("flux.message.startingTask")),F.generate(e,{token:o}).then(()=>{w.success(this.$t("flux.message.startTaskSuccess"))}).catch(p=>{const c=p?.response?.data;c?.error?.code===P?w.error(this.$t("flux.message.usedUp")):w.error(this.$t("flux.message.startTaskFailed")+c?.error?.message)}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})}}});function at(e,o,p,c,g,v){const d=s("config-panel"),m=s("recent-panel"),n=s("layout");return r(),V(n,null,{config:_(()=>[t(d,{onGenerate:e.onGenerate},null,8,["onGenerate"])]),result:_(()=>[t(m,{onReachTop:e.onReachTop},null,8,["onReachTop"])]),_:1})}const Pt=$(nt,[["render",at]]);export{Pt as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{F as A}from"./index.es-BcVUdKzU.js";import{E as G}from"./index-DmRA92w7.js";import{E as B}from"./index-Cvzwn5DL.js";import{d as g,h as b,b as r,t as i,k as o,r as R,j as c,l as s,o as n,ev as F,x as a,F as C,v as L,i as w,ew as M,y as u,c6 as q,D as v,J as S,K as T,n as U,ex as z,dr as N,dm as H}from"./index-BDnu8Rx2.js";import{E as j,a as D}from"./index-QJ0n_1Kf.js";import{V as P}from"./VideoPlayer-DUY52eya.js";import{I as O}from"./InfoIcon-Br1f42SZ.js";import{I as K}from"./ImagePreview-D-KnXoir.js";import{E as J}from"./index-BpN23C33.js";import{E}from"./index-Dbfp85VL.js";import{C as Q,N as W}from"./NoTasks-CgeVr5YB.js";import{E as X}from"./index-BHstLZkN.js";import{a as Y}from"./price-kIEvtbxH.js";import{C as Z}from"./CopyToClipboard-DcdEVT8q.js";import{E as x}from"./index-BjeXTDuD.js";import{E as ee}from"./index-B5o8qRlX.js";import{E as oe}from"./index-B5W4Ro1I.js";import{B as te}from"./BotPlaceholder-D1brFsYP.js";import"./use-form-item-B7j42EP5.js";import"./index-r5W6hzzQ.js";import"./index-KXI5e-q0.js";import"./typescript-DhyxNYRx.js";import"./index-DZxnN0Hy.js";import"./strings-DEKOZWkP.js";import"./castArray-B7L7jPOI.js";import"./isEqual-oRaCHLap.js";import"./_Uint8Array-Cp8E3K79.js";import"./debounce-BXWQzEeG.js";import"./_baseIteratee-B9I0pDUN.js";import"./index-BqB8EtmR.js";import"./vue-plyr-QZFBikSk.js";import"./index-Dkgd-CmS.js";import"./_baseClone-DyBfXBsi.js";import"./_initCloneObject-Rg_w1aJn.js";import"./index-FSR3bkwo.js";import"./index-D8sqLsu8.js";const se=g({name:"LayoutVeo",components:{ElDrawer:B,ElButton:G,FontAwesomeIcon:A},data(){return{drawer:!1}}}),ne={class:"main"},ae={class:"config"},le={class:"result"};function re(e,t,_,h,k,y){const d=s("font-awesome-icon"),p=s("el-button"),l=s("el-drawer");return n(),r("div",ne,[i("div",ae,[R(e.$slots,"config",{},void 0,!0)]),i("div",le,[R(e.$slots,"result",{},void 0,!0)]),o(p,{circle:"",class:"menu",onClick:t[0]||(t[0]=$=>e.drawer=!0)},{default:c(()=>[o(d,{icon:"fa-solid fa-magic"})]),_:1}),o(l,{modelValue:e.drawer,"onUpdate:modelValue":t[1]||(t[1]=$=>e.drawer=$),direction:"ltr","with-header":!1,size:"350px"},{default:c(()=>[R(e.$slots,"config",{},void 0,!0)]),_:3},8,["modelValue"])])}const ie=b(se,[["render",re],["__scopeId","data-v-9ef3dd3f"]]),ce=g({name:"ModelSelector",components:{ElSelect:D,ElOption:j},props:{modelValue:{type:String,default:void 0}},emits:["update:modelValue"],data(){return{options:[{value:"veo2",label:"veo2"},{value:"veo2-fast",label:"veo2-fast"},{value:"veo3",label:"veo3"},{value:"veo3-fast",label:"veo3-fast"}]}},computed:{value:{get(){return this.$store.state.veo?.config?.model},set(e){this.$store.commit("veo/setConfig",{...this.$store.state.veo.config,model:e})}}},mounted(){this.value||(this.value=F)}}),de={class:"field"},pe={class:"title font-bold"};function me(e,t,_,h,k,y){const d=s("el-option"),p=s("el-select");return n(),r("div",de,[i("h2",pe,a(e.$t("veo.name.model")),1),o(p,{modelValue:e.value,"onUpdate:modelValue":t[0]||(t[0]=l=>e.value=l),class:"value",placeholder:e.$t("veo.placeholder.select")},{default:c(()=>[(n(!0),r(C,null,L(e.options,l=>(n(),w(d,{key:l.value,label:l.label,value:l.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const ue=b(ce,[["render",me],["__scopeId","data-v-ef445fc5"]]),fe=g({name:"ModelSelector",components:{ElSelect:D,ElOption:j},data(){return{}},computed:{options(){return[{value:"text2video",label:this.$t("veo.button.action1")},{value:"image2video",label:this.$t("veo.button.action2")},{value:"get1080p",label:this.$t("veo.button.action3")}]},value:{get(){return this.$store.state.veo?.config?.action},set(e){this.$store.commit("veo/setConfig",{...this.$store.state.veo?.config,action:e})}}},mounted(){this.value||(this.value=M)}}),ve={class:"field"},_e={class:"title font-bold"},he={class:"float-left"};function $e(e,t,_,h,k,y){const d=s("el-option"),p=s("el-select");return n(),r("div",ve,[i("h2",_e,a(e.$t("veo.name.action")),1),o(p,{modelValue:e.value,"onUpdate:modelValue":t[0]||(t[0]=l=>e.value=l),class:"value",placeholder:e.$t("veo.placeholder.select"),clearable:""},{default:c(()=>[(n(!0),r(C,null,L(e.options,l=>(n(),w(d,{key:l.value,label:l.label,value:l.value},{default:c(()=>[i("span",he,a(l.label),1)]),_:2},1032,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const ge=b(fe,[["render",$e],["__scopeId","data-v-821be9a3"]]),be=g({name:"VideoFromInput",components:{VideoPlayer:P},props:{modelValue:{type:Object,required:!1,default:void 0}},data(){return{options:{quality:{default:"1080p"}}}},computed:{config(){return this.$store.state.veo?.config}}}),ke={class:"relative"},ye={class:"flex mb-2"},we={class:"text-sm font-bold"};function Ve(e,t,_,h,k,y){const d=s("video-player");return n(),r("div",ke,[i("div",ye,[i("span",we,a(e.$t("veo.name.action3")),1)]),i("div",null,[e.config?.video_url?(n(),w(d,{key:0,src:e.config?.video_url},null,8,["src"])):u("",!0)])])}const Ee=b(be,[["render",Ve]]),Ie=g({name:"StartEndImage",components:{ElUpload:J,ElButton:G,InfoIcon:O,FontAwesomeIcon:A,ImagePreview:K},emits:["change"],data(){return{fileList:[],uploadUrl:q()+"/api/v1/files/"}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},urls(){return this.fileList.map(e=>e?.response?.file_url)},value:{get(){return this.$store.state?.veo?.config?.image_urls},set(){}}},mounted(){this.value||(this.value=void 0),this.onSetStartEndImageUrl()},methods:{onExceed(){E.warning(this.$t("veo.message.uploadReferencesExceed"))},onError(){E.error(this.$t("veo.message.uploadReferencesError"))},onSetStartEndImageUrl(){const e=this.urls;this.$store.commit("veo/setConfig",{...this.$store.state?.veo?.config,image_urls:e})},async onSuccess(){this.onSetStartEndImageUrl()}}}),Se={class:"relative"},Te={class:"flex justify-between"},Ce={class:"flex justify-start items-center"},Ae={class:"text-sm font-bold"};function Ge(e,t,_,h,k,y){const d=s("info-icon"),p=s("image-preview"),l=s("font-awesome-icon"),$=s("el-button"),f=s("el-upload");return n(),r("div",Se,[i("div",Te,[i("div",Ce,[i("span",Ae,a(e.$t("veo.name.startEndImage")),1),o(d,{content:e.$t("veo.description.uploadStartEndImage")},null,8,["content"])])]),o(f,{"file-list":e.fileList,"onUpdate:fileList":t[0]||(t[0]=m=>e.fileList=m),name:"file",accept:".png,.jpg,.jpeg,.gif,.bmp,.webp",limit:2,class:"upload-wrapper",multiple:!1,action:e.uploadUrl,"list-type":"picture","on-exceed":e.onExceed,"on-error":e.onError,"on-success":e.onSuccess,headers:e.headers},{file:c(({file:m})=>[m.url&&m.percentage!==void 0?(n(),w(p,{key:0,url:m.url,name:m.name,percentage:m.percentage,onRemove:V=>e.fileList.splice(e.fileList.indexOf(m),1)},null,8,["url","name","percentage","onRemove"])):u("",!0)]),default:c(()=>[o($,{round:"",type:"primary",size:"small",class:"btn btn-upload"},{default:c(()=>[o(l,{icon:"fa-solid fa-upload",class:"icon mr-1"}),v(" "+a(e.$t("veo.button.uploadReferences")),1)]),_:1})]),_:1},8,["file-list","action","on-exceed","on-error","on-success","headers"])])}const Ue=b(Ie,[["render",Ge],["__scopeId","data-v-43d971b7"]]),Re="",Le=g({name:"PromptInput",components:{ElInput:X,InfoIcon:O},computed:{prompt:{get(){return this.$store.state.veo?.config?.prompt},set(e){console.debug("set prompt",e),this.$store.commit("veo/setConfig",{...this.$store.state.veo?.config,prompt:e})}}},mounted(){this.prompt||(this.prompt=Re)}}),je={class:"field"},De={class:"box"},Pe={class:"title font-bold"};function Oe(e,t,_,h,k,y){const d=s("info-icon"),p=s("el-input");return n(),r("div",je,[i("div",De,[i("h2",Pe,a(e.$t("veo.name.prompt")),1),o(d,{content:e.$t("veo.description.prompt"),class:"info"},null,8,["content"])]),o(p,{modelValue:e.prompt,"onUpdate:modelValue":t[0]||(t[0]=l=>e.prompt=l),rows:3,type:"textarea",class:"prompt",placeholder:e.$t("veo.placeholder.prompt"),maxlength:500,"show-word-limit":""},null,8,["modelValue","placeholder"])])}const Be=b(Le,[["render",Oe],["__scopeId","data-v-9189572a"]]),Fe=g({name:"ConfigPanel",components:{ElButton:G,Consumption:Q,FontAwesomeIcon:A,PromptInput:Be,ModelSelector:ue,StartEndImage:Ue,ActionSelector:ge,VideoFromInput:Ee},emits:["generate"],computed:{config(){return this.$store.state.veo?.config},consumption(){return Y(this.config,this.service?.metadata?.price)},service(){return this.$store.state.veo?.service}},methods:{onGenerate(){this.$emit("generate")}}}),Me={class:"flex flex-col h-full"},qe={class:"flex-1 overflow-y-auto p-[15px]"},ze={class:"flex flex-col items-center justify-center px-[15px] pb-[15px]"};function Ne(e,t,_,h,k,y){const d=s("video-from-input"),p=s("action-selector"),l=s("prompt-input"),$=s("model-selector"),f=s("start-end-image"),m=s("consumption"),V=s("font-awesome-icon"),I=s("el-button");return n(),r("div",Me,[i("div",qe,[S(o(d,{class:"mb-4"},null,512),[[T,e.config?.action==="get1080p"]]),o(p,{class:"mb-4"}),S(o(l,{class:"mb-4"},null,512),[[T,e.config?.action!=="get1080p"]]),S(o($,{class:"mb-4"},null,512),[[T,e.config?.action!=="get1080p"]]),S(o(f,{class:"mb-2"},null,512),[[T,e.config?.action==="image2video"]])]),i("div",ze,[o(m,{value:e.consumption,service:e.service},null,8,["value","service"]),o(I,{type:"primary",class:"btn w-full",round:"",onClick:e.onGenerate},{default:c(()=>[o(V,{icon:"fa-solid fa-magic",class:"mr-2"}),v(" "+a(e.$t("veo.button.generate")),1)]),_:1},8,["onClick"])])])}const He=b(Fe,[["render",Ne]]),Ke=g({name:"TaskPreview",components:{ElImage:oe,CopyToClipboard:Z,FontAwesomeIcon:A,ElAlert:ee,VideoPlayer:P,ElTooltip:x,ElButton:G},props:{modelValue:{type:Object,required:!0}},data(){return{}},computed:{application(){return this.$store.state.veo?.application},config(){return this.$store.state.veo?.config}},methods:{onGet1080p(e,t){console.debug("set config",t),this.$store.commit("veo/setConfig",{...this.$store.state.veo?.config,video_id:t?.data?.[0]?.id,video_url:t?.data[0]?.video_url,action:"get1080p"})},onDownload(e,t){e.stopPropagation(),console.log("on download"),window.open(t,"_blank")},onOpenVideo(e){window.open(e,"_blank")}}}),Je={class:"preview"},Qe={class:"left"},We={class:"main"},Xe={class:"bot"},Ye={class:"datetime"},Ze={class:"info"},xe={key:0,class:"prompt mt-2"},eo={key:0},oo={key:1},to={key:0,class:U({content:!0,failed:!0})},so={key:0,class:"mb-4"},no={key:1,class:U({operations:!0,"mt-2":!0})},ao={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},lo={class:"text-[var(--el-text-color-regular)] text-xs mb-0"},ro={key:1,class:U({content:!0})},io={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},co={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},po={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-0"},mo={key:2,class:U({content:!0})},uo={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},fo={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-0"};function vo(e,t,_,h,k,y){const d=s("el-image"),p=s("video-player"),l=s("el-button"),$=s("el-tooltip"),f=s("font-awesome-icon"),m=s("copy-to-clipboard"),V=s("el-alert");return n(),r("div",Je,[i("div",Qe,[o(d,{src:"https://cdn.acedata.cloud/8nxyy9.jpg",class:"avatar"})]),i("div",We,[i("div",Xe,[v(a(e.$t("veo.name.veoBot"))+" ",1),i("span",Ye,a(e.$dayjs.format(""+new Date(parseFloat((e.modelValue?.created_at||"").toString())*1e3))),1)]),i("div",Ze,[e.modelValue?.request?.prompt?(n(),r("p",xe,[v(a(e.modelValue?.request?.prompt)+" ",1),e.modelValue?.response?u("",!0):(n(),r("span",eo," - ("+a(e.$t("veo.status.pending"))+") ",1)),Array.isArray(e.modelValue?.response?.data)&&e.modelValue?.response?.data[0]?.state==="running"?(n(),r("span",oo," - ("+a(e.$t("veo.status.processing"))+") ",1)):u("",!0)])):u("",!0)]),e.modelValue?.response?.success===!0&&e.modelValue?.response?.data?(n(),r("div",to,[e.modelValue?.response?.data[0]?.video_url?(n(),r("div",so,[o(p,{src:e.modelValue?.response?.data[0]?.video_url},null,8,["src"])])):u("",!0),e.modelValue?.response.success?(n(),r("div",no,[o($,{class:"box-item",effect:"dark",content:e.$t("veo.message.downloadVideo"),placement:"top-start"},{default:c(()=>[e.modelValue?.response?.data[0]?.video_url?(n(),w(l,{key:0,type:"info",size:"small",class:"btn-action",onClick:t[0]||(t[0]=I=>e.onGet1080p(I,e.modelValue?.response))},{default:c(()=>[v(a(e.$t("veo.button.action3")),1)]),_:1})):u("",!0)]),_:1},8,["content"]),o($,{class:"box-item",effect:"dark",content:e.$t("veo.message.downloadVideo"),placement:"top-start"},{default:c(()=>[e.modelValue?.response?.data[0]?.video_url?(n(),w(l,{key:0,type:"info",size:"small",class:"btn-action",onClick:t[1]||(t[1]=I=>e.onDownload(I,e.modelValue?.response?.data[0]?.video_url))},{default:c(()=>[v(a(e.$t("veo.button.download")),1)]),_:1})):u("",!0)]),_:1},8,["content"])])):u("",!0),o(V,{closable:!1,class:"mt-2 success"},{default:c(()=>[i("p",ao,[o(f,{icon:"fa-solid fa-hashtag",class:"mr-1"}),v(" "+a(e.$t("veo.name.model"))+": "+a(e.modelValue?.request?.model),1)]),i("p",lo,[o(f,{icon:"fa-solid fa-magic",class:"mr-1"}),v(" "+a(e.$t("veo.name.taskId"))+": "+a(e.modelValue?.id)+" ",1),o(m,{content:e.modelValue?.id},null,8,["content"])])]),_:1})])):u("",!0),e.modelValue?.response?.success===!1?(n(),r("div",ro,[o(V,{closable:!1,class:"failure"},{template:c(()=>[o(f,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),v(" "+a(e.$t("veo.name.failure")),1)]),default:c(()=>[i("p",io,[o(f,{icon:"fa-solid fa-magic",class:"mr-1"}),v(" "+a(e.$t("veo.name.taskId"))+": "+a(e.modelValue?.id)+" ",1),o(m,{content:e.modelValue?.id},null,8,["content"])]),i("p",co,[o(f,{icon:"fa-solid fa-circle-info",class:"mr-1"}),v(" "+a(e.$t("veo.name.failureReason"))+": "+a(e.modelValue?.response?.error?.message)+" ",1),o(m,{content:e.modelValue?.response?.error?.message},null,8,["content"])]),e.modelValue?.response?.trace_id?(n(),r("p",po,[o(f,{icon:"fa-solid fa-hashtag",class:"mr-1"}),v(" "+a(e.$t("veo.name.traceId"))+": "+a(e.modelValue?.response?.trace_id)+" ",1),o(m,{content:e.modelValue?.response?.trace_id},null,8,["content"])])):u("",!0)]),_:1})])):u("",!0),e.modelValue?.response?.success===void 0?(n(),r("div",mo,[o(V,{closable:!1,class:"info"},{template:c(()=>[o(f,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),v(" "+a(e.$t("veo.name.failure")),1)]),default:c(()=>[i("p",uo,[o(f,{icon:"fa-solid fa-magic",class:"mr-1"}),v(" "+a(e.$t("veo.name.taskId"))+": "+a(e.modelValue?.id)+" ",1),o(m,{content:e.modelValue?.id},null,8,["content"])]),e.modelValue?.response?.trace_id?(n(),r("p",fo,[o(f,{icon:"fa-solid fa-hashtag",class:"mr-1"}),v(" "+a(e.$t("veo.name.traceId"))+": "+a(e.modelValue?.response?.trace_id)+" ",1),o(m,{content:e.modelValue?.response?.trace_id},null,8,["content"])])):u("",!0)]),_:1})])):u("",!0)])])}const _o=b(Ke,[["render",vo],["__scopeId","data-v-5372c9d1"]]),ho=g({name:"RecentPanel",components:{TaskPreview:_o,NoTasks:W,BotPlaceholder:te},emits:["reach-top"],data(){return{job:0}},computed:{tasks(){return{...this.$store.state.veo?.tasks,items:this.$store.state.veo?.tasks?.items?.slice()}}},methods:{onHandleScroll(){const e=this.$refs.panel;console.log("reach-top reach-top reach-top"),e.scrollTop===0&&this.$emit("reach-top")}}}),$o={key:0},go={key:1,class:"h-full w-full overflow-y-auto"},bo={key:2,class:"w-full h-full flex items-center justify-center"};function ko(e,t,_,h,k,y){const d=s("bot-placeholder"),p=s("task-preview"),l=s("no-tasks");return n(),r(C,null,[e.tasks?.items===void 0?(n(),r("div",$o,[o(d)])):e.tasks?.items?.length&&e.tasks?.items?.length>0?(n(),r("div",go,[(n(!0),r(C,null,L(e.tasks?.items,($,f)=>(n(),w(p,{key:f,"model-value":$},null,8,["model-value"]))),128))])):u("",!0),e.tasks?.items?.length===0?(n(),r("div",bo,[o(l)])):u("",!0)],64)}const yo=b(ho,[["render",ko]]),wo="https://webhook.acedata.cloud/veo",Vo=g({name:"VeoIndex",components:{ConfigPanel:He,Layout:ie,RecentPanel:yo},inject:["initialized"],data(){return{task:void 0,job:0}},computed:{loading(){return this.$store.state.veo?.status?.getApplications===H.Request},credential(){return this.$store.state.veo.credential},config(){return this.$store.state.veo.config},tasks(){return this.$store.state.veo.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=setInterval(()=>{this.onGetTasks()},5e3))},immediate:!0}},async mounted(){await this.onGetService()},async unmounted(){clearInterval(this.job)},methods:{async onReachTop(){console.debug("reached top"),await this.onGetTasks({createdAtMax:this.tasks?.items?.[0]?.created_at})},async onGetService(){console.debug("start onGetService"),await this.$store.dispatch("veo/getService"),console.debug("end onGetService")},async onGetApplication(){console.debug("start onGetApplication"),await this.$store.dispatch("veo/getApplications"),console.debug("end onGetApplication"),await this.onGetTasks()},async onScrollDown(){setTimeout(()=>{const e=document.querySelector(".tasks");e&&(e.scrollTop=e.scrollHeight)},500)},async onGetTasks(e){if(this.loading){console.debug("loading");return}console.debug("start onGetTasks",e);const{limit:t=5,createdAtMin:_,createdAtMax:h}=e||{};console.debug("limit",t,"createdAtMin",_,"createdAtMax",h),await this.$store.dispatch("veo/getTasks",{limit:t,createdAtMin:_,createdAtMax:h})},async onGenerate(){const e={...this.config,callback_url:wo},t=this.credential?.token;if(!t){console.error("no token specified");return}E.info(this.$t("veo.message.startingTask")),z.generate(e,{token:t}).then(()=>{E.success(this.$t("veo.message.startTaskSuccess"))}).catch(_=>{_?.response?.data?.error?.code===N?E.error(this.$t("veo.message.usedUp")):E.error(this.$t("veo.message.startTaskFailed"))}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})}}});function Eo(e,t,_,h,k,y){const d=s("config-panel"),p=s("recent-panel"),l=s("layout");return n(),w(l,null,{config:c(()=>[o(d,{onGenerate:e.onGenerate},null,8,["onGenerate"])]),result:c(()=>[o(p,{onReachTop:e.onReachTop},null,8,["onReachTop"])]),_:1})}const it=b(Vo,[["render",Eo]]);export{it as default};
|
|
1
|
+
import{F as A}from"./index.es-Sv2RX3tE.js";import{E as G}from"./index-Uz6VpvEs.js";import{E as B}from"./index-DlFjlQy3.js";import{d as g,h as b,b as r,t as i,k as o,r as R,j as c,l as s,o as n,ev as F,x as a,F as C,v as L,i as w,ew as M,y as u,c6 as q,D as v,J as S,K as T,n as U,ex as z,dr as N,dm as H}from"./index-DI_C3Ao9.js";import{E as j,a as D}from"./index-BnwSAYOH.js";import{V as P}from"./VideoPlayer-B4hwt6p9.js";import{I as O}from"./InfoIcon-aG3xky6z.js";import{I as K}from"./ImagePreview-Vw_6gGQd.js";import{E as J}from"./index-DLRLNopw.js";import{E}from"./index-B099pfCb.js";import{C as Q,N as W}from"./NoTasks-D6aQEQ_z.js";import{E as X}from"./index-DqzgaH2_.js";import{a as Y}from"./price-CV9K1ebj.js";import{C as Z}from"./CopyToClipboard-AFrGC6zu.js";import{E as x}from"./index-PU4oJo9l.js";import{E as ee}from"./index-ByY_tD9H.js";import{E as oe}from"./index-D7SIBJVO.js";import{B as te}from"./BotPlaceholder-C1Azl5K7.js";import"./use-form-item-D6NQ9sNV.js";import"./index-r5W6hzzQ.js";import"./index-D-xE_DuU.js";import"./typescript-8pw9sVHl.js";import"./index-sVUmFHgv.js";import"./strings-CKxhwaoH.js";import"./castArray-DVyev9bJ.js";import"./isEqual-rNurVTiM.js";import"./_Uint8Array-CKCrVCIW.js";import"./debounce-Dnlkicc5.js";import"./_baseIteratee-DrOJ5XUl.js";import"./index-bcWh3aiG.js";import"./vue-plyr-QZFBikSk.js";import"./index-BEf6ot_1.js";import"./_baseClone-2NfMeWJP.js";import"./_initCloneObject-CfGFlXWr.js";import"./index-BTbYbX3l.js";import"./index-BoPdW-Of.js";const se=g({name:"LayoutVeo",components:{ElDrawer:B,ElButton:G,FontAwesomeIcon:A},data(){return{drawer:!1}}}),ne={class:"main"},ae={class:"config"},le={class:"result"};function re(e,t,_,h,k,y){const d=s("font-awesome-icon"),p=s("el-button"),l=s("el-drawer");return n(),r("div",ne,[i("div",ae,[R(e.$slots,"config",{},void 0,!0)]),i("div",le,[R(e.$slots,"result",{},void 0,!0)]),o(p,{circle:"",class:"menu",onClick:t[0]||(t[0]=$=>e.drawer=!0)},{default:c(()=>[o(d,{icon:"fa-solid fa-magic"})]),_:1}),o(l,{modelValue:e.drawer,"onUpdate:modelValue":t[1]||(t[1]=$=>e.drawer=$),direction:"ltr","with-header":!1,size:"350px"},{default:c(()=>[R(e.$slots,"config",{},void 0,!0)]),_:3},8,["modelValue"])])}const ie=b(se,[["render",re],["__scopeId","data-v-9ef3dd3f"]]),ce=g({name:"ModelSelector",components:{ElSelect:D,ElOption:j},props:{modelValue:{type:String,default:void 0}},emits:["update:modelValue"],data(){return{options:[{value:"veo2",label:"veo2"},{value:"veo2-fast",label:"veo2-fast"},{value:"veo3",label:"veo3"},{value:"veo3-fast",label:"veo3-fast"}]}},computed:{value:{get(){return this.$store.state.veo?.config?.model},set(e){this.$store.commit("veo/setConfig",{...this.$store.state.veo.config,model:e})}}},mounted(){this.value||(this.value=F)}}),de={class:"field"},pe={class:"title font-bold"};function me(e,t,_,h,k,y){const d=s("el-option"),p=s("el-select");return n(),r("div",de,[i("h2",pe,a(e.$t("veo.name.model")),1),o(p,{modelValue:e.value,"onUpdate:modelValue":t[0]||(t[0]=l=>e.value=l),class:"value",placeholder:e.$t("veo.placeholder.select")},{default:c(()=>[(n(!0),r(C,null,L(e.options,l=>(n(),w(d,{key:l.value,label:l.label,value:l.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const ue=b(ce,[["render",me],["__scopeId","data-v-ef445fc5"]]),fe=g({name:"ModelSelector",components:{ElSelect:D,ElOption:j},data(){return{}},computed:{options(){return[{value:"text2video",label:this.$t("veo.button.action1")},{value:"image2video",label:this.$t("veo.button.action2")},{value:"get1080p",label:this.$t("veo.button.action3")}]},value:{get(){return this.$store.state.veo?.config?.action},set(e){this.$store.commit("veo/setConfig",{...this.$store.state.veo?.config,action:e})}}},mounted(){this.value||(this.value=M)}}),ve={class:"field"},_e={class:"title font-bold"},he={class:"float-left"};function $e(e,t,_,h,k,y){const d=s("el-option"),p=s("el-select");return n(),r("div",ve,[i("h2",_e,a(e.$t("veo.name.action")),1),o(p,{modelValue:e.value,"onUpdate:modelValue":t[0]||(t[0]=l=>e.value=l),class:"value",placeholder:e.$t("veo.placeholder.select"),clearable:""},{default:c(()=>[(n(!0),r(C,null,L(e.options,l=>(n(),w(d,{key:l.value,label:l.label,value:l.value},{default:c(()=>[i("span",he,a(l.label),1)]),_:2},1032,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const ge=b(fe,[["render",$e],["__scopeId","data-v-821be9a3"]]),be=g({name:"VideoFromInput",components:{VideoPlayer:P},props:{modelValue:{type:Object,required:!1,default:void 0}},data(){return{options:{quality:{default:"1080p"}}}},computed:{config(){return this.$store.state.veo?.config}}}),ke={class:"relative"},ye={class:"flex mb-2"},we={class:"text-sm font-bold"};function Ve(e,t,_,h,k,y){const d=s("video-player");return n(),r("div",ke,[i("div",ye,[i("span",we,a(e.$t("veo.name.action3")),1)]),i("div",null,[e.config?.video_url?(n(),w(d,{key:0,src:e.config?.video_url},null,8,["src"])):u("",!0)])])}const Ee=b(be,[["render",Ve]]),Ie=g({name:"StartEndImage",components:{ElUpload:J,ElButton:G,InfoIcon:O,FontAwesomeIcon:A,ImagePreview:K},emits:["change"],data(){return{fileList:[],uploadUrl:q()+"/api/v1/files/"}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},urls(){return this.fileList.map(e=>e?.response?.file_url)},value:{get(){return this.$store.state?.veo?.config?.image_urls},set(){}}},mounted(){this.value||(this.value=void 0),this.onSetStartEndImageUrl()},methods:{onExceed(){E.warning(this.$t("veo.message.uploadReferencesExceed"))},onError(){E.error(this.$t("veo.message.uploadReferencesError"))},onSetStartEndImageUrl(){const e=this.urls;this.$store.commit("veo/setConfig",{...this.$store.state?.veo?.config,image_urls:e})},async onSuccess(){this.onSetStartEndImageUrl()}}}),Se={class:"relative"},Te={class:"flex justify-between"},Ce={class:"flex justify-start items-center"},Ae={class:"text-sm font-bold"};function Ge(e,t,_,h,k,y){const d=s("info-icon"),p=s("image-preview"),l=s("font-awesome-icon"),$=s("el-button"),f=s("el-upload");return n(),r("div",Se,[i("div",Te,[i("div",Ce,[i("span",Ae,a(e.$t("veo.name.startEndImage")),1),o(d,{content:e.$t("veo.description.uploadStartEndImage")},null,8,["content"])])]),o(f,{"file-list":e.fileList,"onUpdate:fileList":t[0]||(t[0]=m=>e.fileList=m),name:"file",accept:".png,.jpg,.jpeg,.gif,.bmp,.webp",limit:2,class:"upload-wrapper",multiple:!1,action:e.uploadUrl,"list-type":"picture","on-exceed":e.onExceed,"on-error":e.onError,"on-success":e.onSuccess,headers:e.headers},{file:c(({file:m})=>[m.url&&m.percentage!==void 0?(n(),w(p,{key:0,url:m.url,name:m.name,percentage:m.percentage,onRemove:V=>e.fileList.splice(e.fileList.indexOf(m),1)},null,8,["url","name","percentage","onRemove"])):u("",!0)]),default:c(()=>[o($,{round:"",type:"primary",size:"small",class:"btn btn-upload"},{default:c(()=>[o(l,{icon:"fa-solid fa-upload",class:"icon mr-1"}),v(" "+a(e.$t("veo.button.uploadReferences")),1)]),_:1})]),_:1},8,["file-list","action","on-exceed","on-error","on-success","headers"])])}const Ue=b(Ie,[["render",Ge],["__scopeId","data-v-43d971b7"]]),Re="",Le=g({name:"PromptInput",components:{ElInput:X,InfoIcon:O},computed:{prompt:{get(){return this.$store.state.veo?.config?.prompt},set(e){console.debug("set prompt",e),this.$store.commit("veo/setConfig",{...this.$store.state.veo?.config,prompt:e})}}},mounted(){this.prompt||(this.prompt=Re)}}),je={class:"field"},De={class:"box"},Pe={class:"title font-bold"};function Oe(e,t,_,h,k,y){const d=s("info-icon"),p=s("el-input");return n(),r("div",je,[i("div",De,[i("h2",Pe,a(e.$t("veo.name.prompt")),1),o(d,{content:e.$t("veo.description.prompt"),class:"info"},null,8,["content"])]),o(p,{modelValue:e.prompt,"onUpdate:modelValue":t[0]||(t[0]=l=>e.prompt=l),rows:3,type:"textarea",class:"prompt",placeholder:e.$t("veo.placeholder.prompt"),maxlength:500,"show-word-limit":""},null,8,["modelValue","placeholder"])])}const Be=b(Le,[["render",Oe],["__scopeId","data-v-9189572a"]]),Fe=g({name:"ConfigPanel",components:{ElButton:G,Consumption:Q,FontAwesomeIcon:A,PromptInput:Be,ModelSelector:ue,StartEndImage:Ue,ActionSelector:ge,VideoFromInput:Ee},emits:["generate"],computed:{config(){return this.$store.state.veo?.config},consumption(){return Y(this.config,this.service?.metadata?.price)},service(){return this.$store.state.veo?.service}},methods:{onGenerate(){this.$emit("generate")}}}),Me={class:"flex flex-col h-full"},qe={class:"flex-1 overflow-y-auto p-[15px]"},ze={class:"flex flex-col items-center justify-center px-[15px] pb-[15px]"};function Ne(e,t,_,h,k,y){const d=s("video-from-input"),p=s("action-selector"),l=s("prompt-input"),$=s("model-selector"),f=s("start-end-image"),m=s("consumption"),V=s("font-awesome-icon"),I=s("el-button");return n(),r("div",Me,[i("div",qe,[S(o(d,{class:"mb-4"},null,512),[[T,e.config?.action==="get1080p"]]),o(p,{class:"mb-4"}),S(o(l,{class:"mb-4"},null,512),[[T,e.config?.action!=="get1080p"]]),S(o($,{class:"mb-4"},null,512),[[T,e.config?.action!=="get1080p"]]),S(o(f,{class:"mb-2"},null,512),[[T,e.config?.action==="image2video"]])]),i("div",ze,[o(m,{value:e.consumption,service:e.service},null,8,["value","service"]),o(I,{type:"primary",class:"btn w-full",round:"",onClick:e.onGenerate},{default:c(()=>[o(V,{icon:"fa-solid fa-magic",class:"mr-2"}),v(" "+a(e.$t("veo.button.generate")),1)]),_:1},8,["onClick"])])])}const He=b(Fe,[["render",Ne]]),Ke=g({name:"TaskPreview",components:{ElImage:oe,CopyToClipboard:Z,FontAwesomeIcon:A,ElAlert:ee,VideoPlayer:P,ElTooltip:x,ElButton:G},props:{modelValue:{type:Object,required:!0}},data(){return{}},computed:{application(){return this.$store.state.veo?.application},config(){return this.$store.state.veo?.config}},methods:{onGet1080p(e,t){console.debug("set config",t),this.$store.commit("veo/setConfig",{...this.$store.state.veo?.config,video_id:t?.data?.[0]?.id,video_url:t?.data[0]?.video_url,action:"get1080p"})},onDownload(e,t){e.stopPropagation(),console.log("on download"),window.open(t,"_blank")},onOpenVideo(e){window.open(e,"_blank")}}}),Je={class:"preview"},Qe={class:"left"},We={class:"main"},Xe={class:"bot"},Ye={class:"datetime"},Ze={class:"info"},xe={key:0,class:"prompt mt-2"},eo={key:0},oo={key:1},to={key:0,class:U({content:!0,failed:!0})},so={key:0,class:"mb-4"},no={key:1,class:U({operations:!0,"mt-2":!0})},ao={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},lo={class:"text-[var(--el-text-color-regular)] text-xs mb-0"},ro={key:1,class:U({content:!0})},io={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},co={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},po={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-0"},mo={key:2,class:U({content:!0})},uo={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},fo={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-0"};function vo(e,t,_,h,k,y){const d=s("el-image"),p=s("video-player"),l=s("el-button"),$=s("el-tooltip"),f=s("font-awesome-icon"),m=s("copy-to-clipboard"),V=s("el-alert");return n(),r("div",Je,[i("div",Qe,[o(d,{src:"https://cdn.acedata.cloud/8nxyy9.jpg",class:"avatar"})]),i("div",We,[i("div",Xe,[v(a(e.$t("veo.name.veoBot"))+" ",1),i("span",Ye,a(e.$dayjs.format(""+new Date(parseFloat((e.modelValue?.created_at||"").toString())*1e3))),1)]),i("div",Ze,[e.modelValue?.request?.prompt?(n(),r("p",xe,[v(a(e.modelValue?.request?.prompt)+" ",1),e.modelValue?.response?u("",!0):(n(),r("span",eo," - ("+a(e.$t("veo.status.pending"))+") ",1)),Array.isArray(e.modelValue?.response?.data)&&e.modelValue?.response?.data[0]?.state==="running"?(n(),r("span",oo," - ("+a(e.$t("veo.status.processing"))+") ",1)):u("",!0)])):u("",!0)]),e.modelValue?.response?.success===!0&&e.modelValue?.response?.data?(n(),r("div",to,[e.modelValue?.response?.data[0]?.video_url?(n(),r("div",so,[o(p,{src:e.modelValue?.response?.data[0]?.video_url},null,8,["src"])])):u("",!0),e.modelValue?.response.success?(n(),r("div",no,[o($,{class:"box-item",effect:"dark",content:e.$t("veo.message.downloadVideo"),placement:"top-start"},{default:c(()=>[e.modelValue?.response?.data[0]?.video_url?(n(),w(l,{key:0,type:"info",size:"small",class:"btn-action",onClick:t[0]||(t[0]=I=>e.onGet1080p(I,e.modelValue?.response))},{default:c(()=>[v(a(e.$t("veo.button.action3")),1)]),_:1})):u("",!0)]),_:1},8,["content"]),o($,{class:"box-item",effect:"dark",content:e.$t("veo.message.downloadVideo"),placement:"top-start"},{default:c(()=>[e.modelValue?.response?.data[0]?.video_url?(n(),w(l,{key:0,type:"info",size:"small",class:"btn-action",onClick:t[1]||(t[1]=I=>e.onDownload(I,e.modelValue?.response?.data[0]?.video_url))},{default:c(()=>[v(a(e.$t("veo.button.download")),1)]),_:1})):u("",!0)]),_:1},8,["content"])])):u("",!0),o(V,{closable:!1,class:"mt-2 success"},{default:c(()=>[i("p",ao,[o(f,{icon:"fa-solid fa-hashtag",class:"mr-1"}),v(" "+a(e.$t("veo.name.model"))+": "+a(e.modelValue?.request?.model),1)]),i("p",lo,[o(f,{icon:"fa-solid fa-magic",class:"mr-1"}),v(" "+a(e.$t("veo.name.taskId"))+": "+a(e.modelValue?.id)+" ",1),o(m,{content:e.modelValue?.id},null,8,["content"])])]),_:1})])):u("",!0),e.modelValue?.response?.success===!1?(n(),r("div",ro,[o(V,{closable:!1,class:"failure"},{template:c(()=>[o(f,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),v(" "+a(e.$t("veo.name.failure")),1)]),default:c(()=>[i("p",io,[o(f,{icon:"fa-solid fa-magic",class:"mr-1"}),v(" "+a(e.$t("veo.name.taskId"))+": "+a(e.modelValue?.id)+" ",1),o(m,{content:e.modelValue?.id},null,8,["content"])]),i("p",co,[o(f,{icon:"fa-solid fa-circle-info",class:"mr-1"}),v(" "+a(e.$t("veo.name.failureReason"))+": "+a(e.modelValue?.response?.error?.message)+" ",1),o(m,{content:e.modelValue?.response?.error?.message},null,8,["content"])]),e.modelValue?.response?.trace_id?(n(),r("p",po,[o(f,{icon:"fa-solid fa-hashtag",class:"mr-1"}),v(" "+a(e.$t("veo.name.traceId"))+": "+a(e.modelValue?.response?.trace_id)+" ",1),o(m,{content:e.modelValue?.response?.trace_id},null,8,["content"])])):u("",!0)]),_:1})])):u("",!0),e.modelValue?.response?.success===void 0?(n(),r("div",mo,[o(V,{closable:!1,class:"info"},{template:c(()=>[o(f,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),v(" "+a(e.$t("veo.name.failure")),1)]),default:c(()=>[i("p",uo,[o(f,{icon:"fa-solid fa-magic",class:"mr-1"}),v(" "+a(e.$t("veo.name.taskId"))+": "+a(e.modelValue?.id)+" ",1),o(m,{content:e.modelValue?.id},null,8,["content"])]),e.modelValue?.response?.trace_id?(n(),r("p",fo,[o(f,{icon:"fa-solid fa-hashtag",class:"mr-1"}),v(" "+a(e.$t("veo.name.traceId"))+": "+a(e.modelValue?.response?.trace_id)+" ",1),o(m,{content:e.modelValue?.response?.trace_id},null,8,["content"])])):u("",!0)]),_:1})])):u("",!0)])])}const _o=b(Ke,[["render",vo],["__scopeId","data-v-5372c9d1"]]),ho=g({name:"RecentPanel",components:{TaskPreview:_o,NoTasks:W,BotPlaceholder:te},emits:["reach-top"],data(){return{job:0}},computed:{tasks(){return{...this.$store.state.veo?.tasks,items:this.$store.state.veo?.tasks?.items?.slice()}}},methods:{onHandleScroll(){const e=this.$refs.panel;console.log("reach-top reach-top reach-top"),e.scrollTop===0&&this.$emit("reach-top")}}}),$o={key:0},go={key:1,class:"h-full w-full overflow-y-auto"},bo={key:2,class:"w-full h-full flex items-center justify-center"};function ko(e,t,_,h,k,y){const d=s("bot-placeholder"),p=s("task-preview"),l=s("no-tasks");return n(),r(C,null,[e.tasks?.items===void 0?(n(),r("div",$o,[o(d)])):e.tasks?.items?.length&&e.tasks?.items?.length>0?(n(),r("div",go,[(n(!0),r(C,null,L(e.tasks?.items,($,f)=>(n(),w(p,{key:f,"model-value":$},null,8,["model-value"]))),128))])):u("",!0),e.tasks?.items?.length===0?(n(),r("div",bo,[o(l)])):u("",!0)],64)}const yo=b(ho,[["render",ko]]),wo="https://webhook.acedata.cloud/veo",Vo=g({name:"VeoIndex",components:{ConfigPanel:He,Layout:ie,RecentPanel:yo},inject:["initialized"],data(){return{task:void 0,job:0}},computed:{loading(){return this.$store.state.veo?.status?.getApplications===H.Request},credential(){return this.$store.state.veo.credential},config(){return this.$store.state.veo.config},tasks(){return this.$store.state.veo.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=setInterval(()=>{this.onGetTasks()},5e3))},immediate:!0}},async mounted(){await this.onGetService()},async unmounted(){clearInterval(this.job)},methods:{async onReachTop(){console.debug("reached top"),await this.onGetTasks({createdAtMax:this.tasks?.items?.[0]?.created_at})},async onGetService(){console.debug("start onGetService"),await this.$store.dispatch("veo/getService"),console.debug("end onGetService")},async onGetApplication(){console.debug("start onGetApplication"),await this.$store.dispatch("veo/getApplications"),console.debug("end onGetApplication"),await this.onGetTasks()},async onScrollDown(){setTimeout(()=>{const e=document.querySelector(".tasks");e&&(e.scrollTop=e.scrollHeight)},500)},async onGetTasks(e){if(this.loading){console.debug("loading");return}console.debug("start onGetTasks",e);const{limit:t=5,createdAtMin:_,createdAtMax:h}=e||{};console.debug("limit",t,"createdAtMin",_,"createdAtMax",h),await this.$store.dispatch("veo/getTasks",{limit:t,createdAtMin:_,createdAtMax:h})},async onGenerate(){const e={...this.config,callback_url:wo},t=this.credential?.token;if(!t){console.error("no token specified");return}E.info(this.$t("veo.message.startingTask")),z.generate(e,{token:t}).then(()=>{E.success(this.$t("veo.message.startTaskSuccess"))}).catch(_=>{_?.response?.data?.error?.code===N?E.error(this.$t("veo.message.usedUp")):E.error(this.$t("veo.message.startTaskFailed"))}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})}}});function Eo(e,t,_,h,k,y){const d=s("config-panel"),p=s("recent-panel"),l=s("layout");return n(),w(l,null,{config:c(()=>[o(d,{onGenerate:e.onGenerate},null,8,["onGenerate"])]),result:c(()=>[o(p,{onReachTop:e.onReachTop},null,8,["onReachTop"])]),_:1})}const it=b(Vo,[["render",Eo]]);export{it as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{F as S}from"./index.es-BcVUdKzU.js";import{E as I}from"./index-DmRA92w7.js";import{E as O}from"./index-Cvzwn5DL.js";import{d as v,h as b,b as m,t as n,k as t,r as T,j as u,l as s,o as a,eh as N,x as i,ei as q,ej as H,c6 as j,D as g,i as k,y as f,n as C,ah as z,F as D,v as K,ek as J,dr as Q,dm as W}from"./index-BDnu8Rx2.js";import{I as U}from"./InfoIcon-Br1f42SZ.js";import{E as A}from"./index-mRzx9BSD.js";import{I as F}from"./ImagePreview-D-KnXoir.js";import{E as R}from"./index-BpN23C33.js";import{E}from"./index-Dbfp85VL.js";import{F as X}from"./FilePreview-BH4xmpTP.js";import{E as Y}from"./index-BHstLZkN.js";import{V as M}from"./VideoPlayer-DUY52eya.js";import{C as Z,N as x}from"./NoTasks-CgeVr5YB.js";import{a as ee}from"./price-kIEvtbxH.js";import{C as te}from"./CopyToClipboard-DcdEVT8q.js";import{E as oe}from"./index-BjeXTDuD.js";import{E as se}from"./index-B5o8qRlX.js";import{E as ne}from"./index-B5W4Ro1I.js";import{B as ae}from"./BotPlaceholder-D1brFsYP.js";import"./use-form-item-B7j42EP5.js";import"./index-r5W6hzzQ.js";import"./index-DZxnN0Hy.js";import"./index-Dkgd-CmS.js";import"./typescript-DhyxNYRx.js";import"./_baseClone-DyBfXBsi.js";import"./_Uint8Array-Cp8E3K79.js";import"./_initCloneObject-Rg_w1aJn.js";import"./isEqual-oRaCHLap.js";import"./index-FSR3bkwo.js";import"./vue-plyr-QZFBikSk.js";import"./debounce-BXWQzEeG.js";import"./index-D8sqLsu8.js";const le=v({name:"LayoutLuma",components:{ElDrawer:O,ElButton:I,FontAwesomeIcon:S},data(){return{drawer:!1}}}),ie={class:"main"},re={class:"config"},ce={class:"result"};function me(e,o,p,h,w,y){const r=s("font-awesome-icon"),d=s("el-button"),c=s("el-drawer");return a(),m("div",ie,[n("div",re,[T(e.$slots,"config",{},void 0,!0)]),n("div",ce,[T(e.$slots,"result",{},void 0,!0)]),t(d,{circle:"",class:"menu",onClick:o[0]||(o[0]=$=>e.drawer=!0)},{default:u(()=>[t(r,{icon:"fa-solid fa-magic"})]),_:1}),t(c,{modelValue:e.drawer,"onUpdate:modelValue":o[1]||(o[1]=$=>e.drawer=$),direction:"ltr","with-header":!1,size:"350px",class:"drawer"},{default:u(()=>[T(e.$slots,"config",{},void 0,!0)]),_:3},8,["modelValue"])])}const ue=b(le,[["render",me],["__scopeId","data-v-e43f6bbe"]]),de=v({name:"EnhancementSelector",components:{ElSwitch:A,InfoIcon:U},computed:{value:{get(){return this.$store.state.luma?.config?.enhancement},set(e){console.debug("set enhancement",e),this.$store.commit("luma/setConfig",{...this.$store.state.luma?.config,enhancement:e})}}},mounted(){this.value===void 0&&(this.value=N)}}),pe={class:"relative"},fe={class:"flex justify-between"},_e={class:"flex justify-start items-center"},he={class:"text-sm font-bold"},$e={class:"flex justify-end items-center"};function ge(e,o,p,h,w,y){const r=s("info-icon"),d=s("el-switch");return a(),m("div",pe,[n("div",fe,[n("div",_e,[n("span",he,i(e.$t("luma.name.enhancement")),1),t(r,{content:e.$t("luma.description.enhancement")},null,8,["content"])]),n("div",$e,[t(d,{modelValue:e.value,"onUpdate:modelValue":o[0]||(o[0]=c=>e.value=c),class:"value"},null,8,["modelValue"])])])])}const ve=b(de,[["render",ge]]),be=v({name:"CustomSelector",components:{ElSwitch:A,InfoIcon:U},computed:{value:{get(){return this.$store.state.luma?.config?.custom},set(e){console.debug("set custom",e),this.$store.commit("luma/setConfig",{...this.$store.state.luma?.config,custom:e})}}},mounted(){this.value===void 0&&(this.value=q)}}),we={class:"relative"},ye={class:"flex justify-between"},ke={class:"flex justify-start items-center"},Ee={class:"text-sm font-bold"},Ve={class:"flex justify-end items-center"};function Ue(e,o,p,h,w,y){const r=s("info-icon"),d=s("el-switch");return a(),m("div",we,[n("div",ye,[n("div",ke,[n("span",Ee,i(e.$t("luma.name.custom")),1),t(r,{content:e.$t("luma.description.custom")},null,8,["content"])]),n("div",Ve,[t(d,{modelValue:e.value,"onUpdate:modelValue":o[0]||(o[0]=c=>e.value=c),class:"value"},null,8,["modelValue"])])])])}const Se=b(be,[["render",Ue]]),Ie=v({name:"LoopSelector",components:{ElSwitch:A,InfoIcon:U},computed:{value:{get(){return this.$store.state.luma?.config?.loop},set(e){console.debug("set loop",e),this.$store.commit("luma/setConfig",{...this.$store.state.luma?.config,loop:e})}}},mounted(){this.value===void 0&&(this.value=H)}}),Le={class:"relative"},Ce={class:"flex justify-between"},Te={class:"flex justify-start items-center"},je={class:"text-sm font-bold"},Ae={class:"flex justify-end items-center"};function Re(e,o,p,h,w,y){const r=s("info-icon"),d=s("el-switch");return a(),m("div",Le,[n("div",Ce,[n("div",Te,[n("span",je,i(e.$t("luma.name.loop")),1),t(r,{content:e.$t("luma.description.loop")},null,8,["content"])]),n("div",Ae,[t(d,{modelValue:e.value,"onUpdate:modelValue":o[0]||(o[0]=c=>e.value=c),class:"value"},null,8,["modelValue"])])])])}const Ge=b(Ie,[["render",Re]]),Pe=v({name:"EndImage",components:{ElUpload:R,ElButton:I,ImagePreview:F,InfoIcon:U,FontAwesomeIcon:S},data(){return{fileList:[],uploadUrl:j()+"/api/v1/files/"}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},urls(){return this.fileList.map(e=>e?.response?.file_url)},value:{get(){return this.$store.state?.luma?.config?.start_image_url},set(){}}},mounted(){this.value||(this.value=void 0),this.onSetEndImageUrl()},methods:{onExceed(){E.warning(this.$t("luma.message.uploadReferencesExceed"))},onError(){E.error(this.$t("luma.message.uploadReferencesError"))},onSetEndImageUrl(){const e=this.urls?.[0];this.$store.commit("luma/setConfig",{...this.$store.state.luma?.config,end_image_url:e})},async onSuccess(){this.onSetEndImageUrl()}}}),ze={class:"relative"},De={class:"flex justify-between"},Fe={class:"flex justify-start items-center"},Me={class:"text-sm font-bold"};function Be(e,o,p,h,w,y){const r=s("info-icon"),d=s("image-preview"),c=s("font-awesome-icon"),$=s("el-button"),_=s("el-upload");return a(),m("div",ze,[n("div",De,[n("div",Fe,[n("span",Me,i(e.$t("luma.name.endImageUrl")),1),t(r,{content:e.$t("luma.description.endImageUrl")},null,8,["content"])])]),t(_,{"file-list":e.fileList,"onUpdate:fileList":o[0]||(o[0]=l=>e.fileList=l),name:"file",accept:".png,.jpg,.jpeg,.gif,.bmp,.webp",limit:5,class:"upload-wrapper",multiple:!1,action:e.uploadUrl,"list-type":"picture","on-exceed":e.onExceed,"on-error":e.onError,"on-success":e.onSuccess,headers:e.headers},{file:u(({file:l})=>[l.url&&l.percentage!==void 0?(a(),k(d,{key:0,url:l.url,name:l.name,percentage:l.percentage,onRemove:V=>e.fileList.splice(e.fileList.indexOf(l),1)},null,8,["url","name","percentage","onRemove"])):f("",!0)]),default:u(()=>[t($,{round:"",type:"primary",size:"small",class:"btn btn-upload"},{default:u(()=>[t(c,{icon:"fa-solid fa-upload",class:"icon mr-1"}),g(" "+i(e.$t("luma.button.uploadEndImageUrl")),1)]),_:1})]),_:1},8,["file-list","action","on-exceed","on-error","on-success","headers"])])}const Oe=b(Pe,[["render",Be],["__scopeId","data-v-7ab78c3e"]]),Ne=v({name:"StartImage",components:{ElUpload:R,ElButton:I,ImagePreview:F,InfoIcon:U,FontAwesomeIcon:S},data(){return{fileList:[],uploadUrl:j()+"/api/v1/files/"}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},urls(){return this.fileList.map(e=>e?.response?.file_url)},value:{get(){return this.$store.state?.luma?.config?.start_image_url},set(){}}},mounted(){this.value||(this.value=void 0),this.onSetStartImageUrl()},methods:{onExceed(){E.warning(this.$t("luma.message.uploadReferencesExceed"))},onError(){E.error(this.$t("luma.message.uploadReferencesError"))},onSetStartImageUrl(){const e=this.urls?.[0];this.$store.commit("luma/setConfig",{...this.$store.state.luma?.config,start_image_url:e})},async onSuccess(){this.onSetStartImageUrl()}}}),qe={class:"relative"},He={class:"flex justify-between"},Ke={class:"flex justify-start items-center"},Je={class:"text-sm font-bold"};function Qe(e,o,p,h,w,y){const r=s("info-icon"),d=s("image-preview"),c=s("font-awesome-icon"),$=s("el-button"),_=s("el-upload");return a(),m("div",qe,[n("div",He,[n("div",Ke,[n("span",Je,i(e.$t("luma.name.startImageUrl")),1),t(r,{content:e.$t("luma.description.startImageUrl")},null,8,["content"])])]),t(_,{"file-list":e.fileList,"onUpdate:fileList":o[0]||(o[0]=l=>e.fileList=l),name:"file",accept:".png,.jpg,.jpeg,.gif,.bmp,.webp",limit:5,class:"upload-wrapper",multiple:!1,action:e.uploadUrl,"list-type":"picture","on-exceed":e.onExceed,"on-error":e.onError,"on-success":e.onSuccess,headers:e.headers},{file:u(({file:l})=>[l.percentage!=null?(a(),k(d,{key:0,url:l.url||l.response.file_url,name:l.name,percentage:l.percentage,onRemove:V=>e.fileList.splice(e.fileList.indexOf(l),1)},null,8,["url","name","percentage","onRemove"])):f("",!0)]),default:u(()=>[t($,{round:"",type:"primary",size:"small",class:"btn btn-upload"},{default:u(()=>[t(c,{icon:"fa-solid fa-upload",class:"icon mr-1"}),g(" "+i(e.$t("luma.button.uploadStartImageUrl")),1)]),_:1})]),_:1},8,["file-list","action","on-exceed","on-error","on-success","headers"])])}const We=b(Ne,[["render",Qe],["__scopeId","data-v-425a8cec"]]),Xe=v({name:"UploadVideo",components:{ElUpload:R,ElButton:I,InfoIcon:U,FilePreview:X,FontAwesomeIcon:S},data(){return{fileList:[],uploadUrl:j()+"/api/v1/files/"}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},urls(){return this.fileList.map(e=>e?.response?.file_url)},value:{get(){return this.$store.state.luma?.config?.video_url},set(){const e=this.urls?.[0];this.$store.commit("luma/setConfig",{...this.$store.state.luma?.config,video_url:e})}}},mounted(){this.value||(this.value=void 0)},methods:{onExceed(){E.warning(this.$t("luma.message.uploadVideoExceed"))},onError(){E.error(this.$t("luma.message.uploadVideoError"))},beforeUpload(e){const o=e.type==="video/mp4",p=e.size/1024/1024<10;return o?p?!0:(E.error(this.$t("luma.message.uploadVideoSizeExceed")),!1):(E.error(this.$t("luma.message.uploadVideoTypeFailed")),!1)},onSetVideoUrl(){const e=this.urls?.[0];this.$store.commit("luma/setConfig",{...this.$store.state.luma?.config,video_url:e,action:"extend"})},async onSuccess(){this.onSetVideoUrl()}}}),Ye={class:"relative"},Ze={class:"flex justify-between"},xe={class:"flex justify-start items-center"},et={class:"text-sm font-bold"};function tt(e,o,p,h,w,y){const r=s("info-icon"),d=s("file-preview"),c=s("font-awesome-icon"),$=s("el-button"),_=s("el-upload");return a(),m("div",Ye,[n("div",Ze,[n("div",xe,[n("span",et,i(e.$t("luma.name.videoUrl")),1),t(r,{content:e.$t("luma.description.videoUrl")},null,8,["content"])])]),t(_,{"file-list":e.fileList,"onUpdate:fileList":o[0]||(o[0]=l=>e.fileList=l),accept:".mp4",name:"file",class:"value","show-file-list":!0,limit:1,multiple:!1,action:e.uploadUrl,"before-upload":e.beforeUpload,"on-exceed":e.onExceed,"on-error":e.onError,"on-success":e.onSuccess,headers:e.headers},{file:u(({file:l})=>[l.percentage!=null?(a(),k(d,{key:0,url:l.url||l.response?.file_url,name:l.name,percentage:l.percentage,onRemove:V=>e.fileList.splice(e.fileList.indexOf(l),1)},null,8,["url","name","percentage","onRemove"])):f("",!0)]),default:u(()=>[t($,{round:"",type:"primary",size:"small",class:"btn btn-upload"},{default:u(()=>[t(c,{icon:"fa-solid fa-upload",class:"icon mr-1"}),g(" "+i(e.$t("luma.button.uploadVideoUrl")),1)]),_:1})]),_:1},8,["file-list","action","before-upload","on-exceed","on-error","on-success","headers"])])}const ot=b(Xe,[["render",tt],["__scopeId","data-v-74e51526"]]),st="",nt=v({name:"PromptInput",components:{ElInput:Y,InfoIcon:U},computed:{prompt:{get(){return this.$store.state.luma?.config?.prompt},set(e){console.debug("set prompt",e),this.$store.commit("luma/setConfig",{...this.$store.state.luma?.config,prompt:e})}}},mounted(){this.prompt||(this.prompt=st)}}),at={class:"field"},lt={class:"box"},it={class:"title font-bold"};function rt(e,o,p,h,w,y){const r=s("info-icon"),d=s("el-input");return a(),m("div",at,[n("div",lt,[n("h2",it,i(e.$t("luma.name.prompt")),1),t(r,{content:e.$t("luma.description.prompt"),class:"info"},null,8,["content"])]),t(d,{modelValue:e.prompt,"onUpdate:modelValue":o[0]||(o[0]=c=>e.prompt=c),rows:3,type:"textarea",class:"prompt",placeholder:e.$t("luma.placeholder.prompt"),maxlength:2e3,"show-word-limit":""},null,8,["modelValue","placeholder"])])}const ct=b(nt,[["render",rt],["__scopeId","data-v-e8284075"]]),mt=v({name:"ExtendFromInput",components:{VideoPlayer:M},props:{modelValue:{type:Object,required:!1,default:void 0}},data(){return{options:{quality:{default:"1080p"}}}},computed:{config(){return this.$store.state.luma?.config}}}),ut={class:"relative"},dt={class:"flex mb-2"},pt={class:"text-sm font-bold"};function ft(e,o,p,h,w,y){const r=s("video-player");return a(),m("div",ut,[n("div",dt,[n("span",pt,i(e.$t("luma.name.extend")),1)]),n("div",null,[e.config?.video_url?(a(),k(r,{key:0,src:e.config?.video_url},null,8,["src"])):f("",!0)])])}const _t=b(mt,[["render",ft]]),ht=v({name:"ConfigPanel",components:{LoopSelector:Ge,StartImageInput:We,EndImageInput:Oe,EnhancementSelector:ve,ElButton:I,FontAwesomeIcon:S,PromptInput:ct,ExtendFromInput:_t,CustomSelector:Se,UploadVideo:ot,Consumption:Z},emits:["generate"],computed:{config(){return this.$store.state.luma?.config},consumption(){return ee(this.config,this.service?.metadata?.price)},service(){return this.$store.state.luma?.service}},methods:{onGenerate(){this.$emit("generate")}}}),$t={class:"flex flex-col h-full"},gt={class:"flex-1 overflow-y-auto p-[15px]"},vt={class:"flex flex-col items-center justify-center px-[15px] pb-[15px]"};function bt(e,o,p,h,w,y){const r=s("extend-from-input"),d=s("prompt-input"),c=s("custom-selector"),$=s("upload-video"),_=s("start-image-input"),l=s("end-image-input"),V=s("enhancement-selector"),L=s("loop-selector"),B=s("consumption"),G=s("font-awesome-icon"),P=s("el-button");return a(),m("div",$t,[n("div",gt,[e.config?.video_id||e.config?.video_url?(a(),k(r,{key:0,class:"mb-4"})):f("",!0),t(d,{class:"mb-4"}),e.config?.video_id?f("",!0):(a(),k(c,{key:1,class:"mb-4"})),e.config?.custom?(a(),k($,{key:2,class:"mb-4"})):f("",!0),!(e.config?.video_id||e.config?.video_url)&&!e.config?.custom?(a(),k(_,{key:3,class:"mb-4"})):f("",!0),t(l,{class:"mb-4"}),t(V,{class:"mb-4"}),t(L,{class:"mb-4"})]),n("div",vt,[t(B,{value:e.consumption,service:e.service},null,8,["value","service"]),e.config?.video_url!==void 0||e.config?.custom?(a(),k(P,{key:0,type:"primary",class:"btn w-full",round:"",onClick:e.onGenerate},{default:u(()=>[t(G,{icon:"fa-solid fa-magic",class:"mr-2"}),g(" "+i(e.$t("luma.button.extend")),1)]),_:1},8,["onClick"])):(a(),k(P,{key:1,type:"primary",class:"btn w-full",round:"",onClick:e.onGenerate},{default:u(()=>[t(G,{icon:"fa-solid fa-magic",class:"mr-2"}),g(" "+i(e.$t("luma.button.generate")),1)]),_:1},8,["onClick"]))])])}const wt=b(ht,[["render",bt]]),yt=v({name:"TaskPreview",components:{ElImage:ne,CopyToClipboard:te,FontAwesomeIcon:S,ElAlert:se,VideoPlayer:M,ElTooltip:oe,ElButton:I},props:{modelValue:{type:Object,required:!0}},emits:["extend"],data(){return{}},computed:{application(){return this.$store.state.luma?.application},config(){return this.$store.state.luma?.config}},methods:{onExtend(e,o){console.debug("set config",o),this.$store.commit("luma/setConfig",{...this.$store.state.luma?.config,video_id:o.video_id,prompt:o.prompt,action:"extend",thumbnail_url:o.thumbnail_url,video_url:o.video_url}),this.$emit("extend")},onDownload(e){window.open(e,"_blank")}}}),kt={class:"preview"},Et={class:"left"},Vt={class:"main"},Ut={class:"bot"},St={class:"datetime"},It={class:"info"},Lt={key:0,class:"prompt mt-2"},Ct={key:0},Tt={key:1},jt={key:0,class:C({content:!0,failed:!0})},At={key:0,class:"mb-4"},Rt={key:1,class:C({operations:!0,"mt-2":!0,"mb-4":!0})},Gt={class:"text-[var(--el-text-color-regular)] text-xs mb-0"},Pt={key:1,class:C({content:!0})},zt={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Dt={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Ft={class:"text-[var(--el-text-color-regular)] text-xs mb-0"},Mt={key:2,class:C({content:!0})},Bt={class:"text-[var(--el-text-color-regular)] text-xs mb-0"};function Ot(e,o,p,h,w,y){const r=s("el-image"),d=s("video-player"),c=s("el-button"),$=s("el-tooltip"),_=s("font-awesome-icon"),l=s("copy-to-clipboard"),V=s("el-alert");return a(),m("div",kt,[n("div",Et,[t(r,{src:"https://cdn.acedata.cloud/ahjfwi.png",class:"avatar"})]),n("div",Vt,[n("div",Ut,[g(i(e.$t("luma.name.lumaBot"))+" ",1),n("span",St,i(e.$dayjs.format(""+new Date(parseFloat((e.modelValue?.created_at||"").toString())*1e3))),1)]),n("div",It,[e.modelValue?.request?.prompt?(a(),m("p",Lt,[g(i(e.modelValue?.request?.prompt)+" ",1),e.modelValue?.response?f("",!0):(a(),m("span",Ct," - ("+i(e.$t("luma.status.pending"))+") ",1)),e.modelValue?.response?.state==="processing"||e.modelValue?.response?.state==="pending"?(a(),m("span",Tt," - ("+i(e.$t("luma.status.processing"))+") ",1)):f("",!0)])):f("",!0)]),e.modelValue?.response?.success===!0?(a(),m("div",jt,[e.modelValue.response.video_url?(a(),m("div",At,[t(d,{src:e.modelValue.response.video_url},null,8,["src"])])):f("",!0),e.modelValue?.response&&!e.config?.custom?(a(),m("div",Rt,[t($,{class:"box-item",effect:"dark",content:e.$t("luma.message.extendVideo"),placement:"top-start"},{default:u(()=>[t(c,{type:"info",size:"small",class:"btn-action",onClick:o[0]||(o[0]=z(L=>e.onExtend(L,e.modelValue?.response),["stop"]))},{default:u(()=>[g(i(e.$t("luma.button.extend")),1)]),_:1})]),_:1},8,["content"]),t($,{class:"box-item",effect:"dark",content:e.$t("luma.message.downloadVideo"),placement:"top-start"},{default:u(()=>[t(c,{type:"info",size:"small",class:"btn-action",onClick:o[1]||(o[1]=z(L=>e.onDownload(e.modelValue?.response?.video_url),["stop"]))},{default:u(()=>[g(i(e.$t("luma.button.download")),1)]),_:1})]),_:1},8,["content"])])):f("",!0),t(V,{closable:!1,class:"mt-2 success"},{default:u(()=>[n("p",Gt,[t(_,{icon:"fa-solid fa-magic",class:"mr-1"}),g(" "+i(e.$t("luma.name.taskId"))+": "+i(e.modelValue?.id)+" ",1),t(l,{content:e.modelValue?.id},null,8,["content"])])]),_:1})])):f("",!0),e.modelValue?.response?.state==="failed"||e.modelValue?.response?.success===!1?(a(),m("div",Pt,[t(V,{closable:!1,class:"failure"},{template:u(()=>[t(_,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),g(" "+i(e.$t("luma.name.failure")),1)]),default:u(()=>[n("p",zt,[t(_,{icon:"fa-solid fa-magic",class:"mr-1"}),g(" "+i(e.$t("luma.name.taskId"))+": "+i(e.modelValue?.id)+" ",1),t(l,{content:e.modelValue?.id},null,8,["content"])]),n("p",Dt,[t(_,{icon:"fa-solid fa-circle-info",class:"mr-1"}),g(" "+i(e.$t("luma.name.failureReason"))+": "+i(e.modelValue?.response?.error?.message)+" ",1),t(l,{content:e.modelValue?.response?.error?.message},null,8,["content"])]),n("p",Ft,[t(_,{icon:"fa-solid fa-hashtag",class:"mr-1"}),g(" "+i(e.$t("luma.name.traceId"))+": "+i(e.modelValue?.trace_id)+" ",1),t(l,{content:e.modelValue?.response?.trace_id},null,8,["content"])])]),_:1})])):f("",!0),!e.modelValue?.response||e.modelValue?.response?.state==="processing"||e.modelValue?.response?.state==="pending"?(a(),m("div",Mt,[t(V,{closable:!1,class:"info"},{template:u(()=>[t(_,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),g(" "+i(e.$t("luma.name.failure")),1)]),default:u(()=>[n("p",Bt,[t(_,{icon:"fa-solid fa-magic",class:"mr-1"}),g(" "+i(e.$t("luma.name.taskId"))+": "+i(e.modelValue?.id)+" ",1),t(l,{content:e.modelValue?.id},null,8,["content"])])]),_:1})])):f("",!0)])])}const Nt=b(yt,[["render",Ot],["__scopeId","data-v-1b4a59bc"]]),qt=v({name:"RecentPanel",components:{BotPlaceholder:ae,TaskPreview:Nt,NoTasks:x},emits:["reach-top","extend"],data(){return{job:0}},computed:{tasks(){return{...this.$store.state.luma?.tasks,items:this.$store.state.luma?.tasks?.items?.slice()}}},methods:{onHandleScroll(){const e=this.$refs.panel;console.log("reach-top reach-top reach-top"),e.scrollTop===0&&this.$emit("reach-top")}}}),Ht={key:0},Kt={key:1,class:"tasks w-full h-full overflow-y-auto"},Jt={key:2,class:"w-full h-full flex items-center justify-center"};function Qt(e,o,p,h,w,y){const r=s("bot-placeholder"),d=s("task-preview"),c=s("no-tasks");return a(),m(D,null,[e.tasks?.items===void 0?(a(),m("div",Ht,[t(r)])):e.tasks?.items?.length&&e.tasks?.items?.length>0?(a(),m("div",Kt,[(a(!0),m(D,null,K(e.tasks?.items,($,_)=>(a(),k(d,{key:_,"model-value":$,onExtend:o[0]||(o[0]=l=>e.$emit("extend"))},null,8,["model-value"]))),128))])):f("",!0),e.tasks?.items?.length===0?(a(),m("div",Jt,[t(c)])):f("",!0)],64)}const Wt=b(qt,[["render",Qt]]),Xt="https://webhook.acedata.cloud/luma",Yt=v({name:"LumaIndex",components:{ConfigPanel:wt,Layout:ue,RecentPanel:Wt},inject:["initialized"],emits:["extend"],data(){return{task:void 0,job:0}},computed:{loading(){return this.$store.state.luma?.status?.getApplications===W.Request},credential(){return this.$store.state.luma.credential},config(){return this.$store.state.luma.config},application(){return this.$store.state.luma.application},tasks(){return this.$store.state.luma.tasks}},watch:{tasks:{handler(e,o){e?.items?.length>o?.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=setInterval(()=>{this.onGetTasks()},5e3))},immediate:!0}},async mounted(){await this.onGetService()},async unmounted(){clearInterval(this.job)},methods:{async onReachTop(){console.debug("reached top"),await this.onGetTasks({createdAtMax:this.tasks?.items?.[0]?.created_at})},async onGetService(){console.debug("start onGetService"),await this.$store.dispatch("luma/getService"),console.debug("end onGetService")},async onGetApplication(){console.debug("start onGetApplication"),await this.$store.dispatch("luma/getApplications"),console.debug("end onGetApplication"),await this.onGetTasks()},async onScrollDown(){console.debug("scrolling down"),setTimeout(()=>{const e=document.querySelector(".tasks");e&&(e.scrollTop=e.scrollHeight)},500)},async onGetTasks(e){if(this.loading){console.debug("loading");return}console.debug("start onGetTasks",e);const{limit:o=5,createdAtMin:p,createdAtMax:h}=e||{};console.debug("limit",o,"createdAtMin",p,"createdAtMax",h),await this.$store.dispatch("luma/getTasks",{limit:o,createdAtMin:p,createdAtMax:h})},async onGenerate(){const e={...this.config,callback_url:Xt},o=this.credential?.token;if(!o){console.error("no token specified");return}E.info(this.$t("luma.message.startingTask")),J.generate(e,{token:o}).then(()=>{E.success(this.$t("luma.message.startTaskSuccess"))}).catch(p=>{p?.response?.data?.error?.code===Q?E.error(this.$t("luma.message.usedUp")):E.error(this.$t("luma.message.startTaskFailed"))}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})}}});function Zt(e,o,p,h,w,y){const r=s("config-panel"),d=s("recent-panel"),c=s("layout");return a(),k(c,null,{config:u(()=>[t(r,{onGenerate:e.onGenerate},null,8,["onGenerate"])]),result:u(()=>[t(d,{onReachTop:e.onReachTop,onExtend:o[0]||(o[0]=$=>e.$emit("extend"))},null,8,["onReachTop"])]),_:1})}const jo=b(Yt,[["render",Zt]]);export{jo as default};
|
|
1
|
+
import{F as S}from"./index.es-Sv2RX3tE.js";import{E as I}from"./index-Uz6VpvEs.js";import{E as O}from"./index-DlFjlQy3.js";import{d as v,h as b,b as m,t as n,k as t,r as T,j as u,l as s,o as a,eh as N,x as i,ei as q,ej as H,c6 as j,D as g,i as k,y as f,n as C,ah as z,F as D,v as K,ek as J,dr as Q,dm as W}from"./index-DI_C3Ao9.js";import{I as U}from"./InfoIcon-aG3xky6z.js";import{E as A}from"./index-By0D1Y9r.js";import{I as F}from"./ImagePreview-Vw_6gGQd.js";import{E as R}from"./index-DLRLNopw.js";import{E}from"./index-B099pfCb.js";import{F as X}from"./FilePreview-Dt2uzjGl.js";import{E as Y}from"./index-DqzgaH2_.js";import{V as M}from"./VideoPlayer-B4hwt6p9.js";import{C as Z,N as x}from"./NoTasks-D6aQEQ_z.js";import{a as ee}from"./price-CV9K1ebj.js";import{C as te}from"./CopyToClipboard-AFrGC6zu.js";import{E as oe}from"./index-PU4oJo9l.js";import{E as se}from"./index-ByY_tD9H.js";import{E as ne}from"./index-D7SIBJVO.js";import{B as ae}from"./BotPlaceholder-C1Azl5K7.js";import"./use-form-item-D6NQ9sNV.js";import"./index-r5W6hzzQ.js";import"./index-sVUmFHgv.js";import"./index-BEf6ot_1.js";import"./typescript-8pw9sVHl.js";import"./_baseClone-2NfMeWJP.js";import"./_Uint8Array-CKCrVCIW.js";import"./_initCloneObject-CfGFlXWr.js";import"./isEqual-rNurVTiM.js";import"./index-BTbYbX3l.js";import"./vue-plyr-QZFBikSk.js";import"./debounce-Dnlkicc5.js";import"./index-BoPdW-Of.js";const le=v({name:"LayoutLuma",components:{ElDrawer:O,ElButton:I,FontAwesomeIcon:S},data(){return{drawer:!1}}}),ie={class:"main"},re={class:"config"},ce={class:"result"};function me(e,o,p,h,w,y){const r=s("font-awesome-icon"),d=s("el-button"),c=s("el-drawer");return a(),m("div",ie,[n("div",re,[T(e.$slots,"config",{},void 0,!0)]),n("div",ce,[T(e.$slots,"result",{},void 0,!0)]),t(d,{circle:"",class:"menu",onClick:o[0]||(o[0]=$=>e.drawer=!0)},{default:u(()=>[t(r,{icon:"fa-solid fa-magic"})]),_:1}),t(c,{modelValue:e.drawer,"onUpdate:modelValue":o[1]||(o[1]=$=>e.drawer=$),direction:"ltr","with-header":!1,size:"350px",class:"drawer"},{default:u(()=>[T(e.$slots,"config",{},void 0,!0)]),_:3},8,["modelValue"])])}const ue=b(le,[["render",me],["__scopeId","data-v-e43f6bbe"]]),de=v({name:"EnhancementSelector",components:{ElSwitch:A,InfoIcon:U},computed:{value:{get(){return this.$store.state.luma?.config?.enhancement},set(e){console.debug("set enhancement",e),this.$store.commit("luma/setConfig",{...this.$store.state.luma?.config,enhancement:e})}}},mounted(){this.value===void 0&&(this.value=N)}}),pe={class:"relative"},fe={class:"flex justify-between"},_e={class:"flex justify-start items-center"},he={class:"text-sm font-bold"},$e={class:"flex justify-end items-center"};function ge(e,o,p,h,w,y){const r=s("info-icon"),d=s("el-switch");return a(),m("div",pe,[n("div",fe,[n("div",_e,[n("span",he,i(e.$t("luma.name.enhancement")),1),t(r,{content:e.$t("luma.description.enhancement")},null,8,["content"])]),n("div",$e,[t(d,{modelValue:e.value,"onUpdate:modelValue":o[0]||(o[0]=c=>e.value=c),class:"value"},null,8,["modelValue"])])])])}const ve=b(de,[["render",ge]]),be=v({name:"CustomSelector",components:{ElSwitch:A,InfoIcon:U},computed:{value:{get(){return this.$store.state.luma?.config?.custom},set(e){console.debug("set custom",e),this.$store.commit("luma/setConfig",{...this.$store.state.luma?.config,custom:e})}}},mounted(){this.value===void 0&&(this.value=q)}}),we={class:"relative"},ye={class:"flex justify-between"},ke={class:"flex justify-start items-center"},Ee={class:"text-sm font-bold"},Ve={class:"flex justify-end items-center"};function Ue(e,o,p,h,w,y){const r=s("info-icon"),d=s("el-switch");return a(),m("div",we,[n("div",ye,[n("div",ke,[n("span",Ee,i(e.$t("luma.name.custom")),1),t(r,{content:e.$t("luma.description.custom")},null,8,["content"])]),n("div",Ve,[t(d,{modelValue:e.value,"onUpdate:modelValue":o[0]||(o[0]=c=>e.value=c),class:"value"},null,8,["modelValue"])])])])}const Se=b(be,[["render",Ue]]),Ie=v({name:"LoopSelector",components:{ElSwitch:A,InfoIcon:U},computed:{value:{get(){return this.$store.state.luma?.config?.loop},set(e){console.debug("set loop",e),this.$store.commit("luma/setConfig",{...this.$store.state.luma?.config,loop:e})}}},mounted(){this.value===void 0&&(this.value=H)}}),Le={class:"relative"},Ce={class:"flex justify-between"},Te={class:"flex justify-start items-center"},je={class:"text-sm font-bold"},Ae={class:"flex justify-end items-center"};function Re(e,o,p,h,w,y){const r=s("info-icon"),d=s("el-switch");return a(),m("div",Le,[n("div",Ce,[n("div",Te,[n("span",je,i(e.$t("luma.name.loop")),1),t(r,{content:e.$t("luma.description.loop")},null,8,["content"])]),n("div",Ae,[t(d,{modelValue:e.value,"onUpdate:modelValue":o[0]||(o[0]=c=>e.value=c),class:"value"},null,8,["modelValue"])])])])}const Ge=b(Ie,[["render",Re]]),Pe=v({name:"EndImage",components:{ElUpload:R,ElButton:I,ImagePreview:F,InfoIcon:U,FontAwesomeIcon:S},data(){return{fileList:[],uploadUrl:j()+"/api/v1/files/"}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},urls(){return this.fileList.map(e=>e?.response?.file_url)},value:{get(){return this.$store.state?.luma?.config?.start_image_url},set(){}}},mounted(){this.value||(this.value=void 0),this.onSetEndImageUrl()},methods:{onExceed(){E.warning(this.$t("luma.message.uploadReferencesExceed"))},onError(){E.error(this.$t("luma.message.uploadReferencesError"))},onSetEndImageUrl(){const e=this.urls?.[0];this.$store.commit("luma/setConfig",{...this.$store.state.luma?.config,end_image_url:e})},async onSuccess(){this.onSetEndImageUrl()}}}),ze={class:"relative"},De={class:"flex justify-between"},Fe={class:"flex justify-start items-center"},Me={class:"text-sm font-bold"};function Be(e,o,p,h,w,y){const r=s("info-icon"),d=s("image-preview"),c=s("font-awesome-icon"),$=s("el-button"),_=s("el-upload");return a(),m("div",ze,[n("div",De,[n("div",Fe,[n("span",Me,i(e.$t("luma.name.endImageUrl")),1),t(r,{content:e.$t("luma.description.endImageUrl")},null,8,["content"])])]),t(_,{"file-list":e.fileList,"onUpdate:fileList":o[0]||(o[0]=l=>e.fileList=l),name:"file",accept:".png,.jpg,.jpeg,.gif,.bmp,.webp",limit:5,class:"upload-wrapper",multiple:!1,action:e.uploadUrl,"list-type":"picture","on-exceed":e.onExceed,"on-error":e.onError,"on-success":e.onSuccess,headers:e.headers},{file:u(({file:l})=>[l.url&&l.percentage!==void 0?(a(),k(d,{key:0,url:l.url,name:l.name,percentage:l.percentage,onRemove:V=>e.fileList.splice(e.fileList.indexOf(l),1)},null,8,["url","name","percentage","onRemove"])):f("",!0)]),default:u(()=>[t($,{round:"",type:"primary",size:"small",class:"btn btn-upload"},{default:u(()=>[t(c,{icon:"fa-solid fa-upload",class:"icon mr-1"}),g(" "+i(e.$t("luma.button.uploadEndImageUrl")),1)]),_:1})]),_:1},8,["file-list","action","on-exceed","on-error","on-success","headers"])])}const Oe=b(Pe,[["render",Be],["__scopeId","data-v-7ab78c3e"]]),Ne=v({name:"StartImage",components:{ElUpload:R,ElButton:I,ImagePreview:F,InfoIcon:U,FontAwesomeIcon:S},data(){return{fileList:[],uploadUrl:j()+"/api/v1/files/"}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},urls(){return this.fileList.map(e=>e?.response?.file_url)},value:{get(){return this.$store.state?.luma?.config?.start_image_url},set(){}}},mounted(){this.value||(this.value=void 0),this.onSetStartImageUrl()},methods:{onExceed(){E.warning(this.$t("luma.message.uploadReferencesExceed"))},onError(){E.error(this.$t("luma.message.uploadReferencesError"))},onSetStartImageUrl(){const e=this.urls?.[0];this.$store.commit("luma/setConfig",{...this.$store.state.luma?.config,start_image_url:e})},async onSuccess(){this.onSetStartImageUrl()}}}),qe={class:"relative"},He={class:"flex justify-between"},Ke={class:"flex justify-start items-center"},Je={class:"text-sm font-bold"};function Qe(e,o,p,h,w,y){const r=s("info-icon"),d=s("image-preview"),c=s("font-awesome-icon"),$=s("el-button"),_=s("el-upload");return a(),m("div",qe,[n("div",He,[n("div",Ke,[n("span",Je,i(e.$t("luma.name.startImageUrl")),1),t(r,{content:e.$t("luma.description.startImageUrl")},null,8,["content"])])]),t(_,{"file-list":e.fileList,"onUpdate:fileList":o[0]||(o[0]=l=>e.fileList=l),name:"file",accept:".png,.jpg,.jpeg,.gif,.bmp,.webp",limit:5,class:"upload-wrapper",multiple:!1,action:e.uploadUrl,"list-type":"picture","on-exceed":e.onExceed,"on-error":e.onError,"on-success":e.onSuccess,headers:e.headers},{file:u(({file:l})=>[l.percentage!=null?(a(),k(d,{key:0,url:l.url||l.response.file_url,name:l.name,percentage:l.percentage,onRemove:V=>e.fileList.splice(e.fileList.indexOf(l),1)},null,8,["url","name","percentage","onRemove"])):f("",!0)]),default:u(()=>[t($,{round:"",type:"primary",size:"small",class:"btn btn-upload"},{default:u(()=>[t(c,{icon:"fa-solid fa-upload",class:"icon mr-1"}),g(" "+i(e.$t("luma.button.uploadStartImageUrl")),1)]),_:1})]),_:1},8,["file-list","action","on-exceed","on-error","on-success","headers"])])}const We=b(Ne,[["render",Qe],["__scopeId","data-v-425a8cec"]]),Xe=v({name:"UploadVideo",components:{ElUpload:R,ElButton:I,InfoIcon:U,FilePreview:X,FontAwesomeIcon:S},data(){return{fileList:[],uploadUrl:j()+"/api/v1/files/"}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},urls(){return this.fileList.map(e=>e?.response?.file_url)},value:{get(){return this.$store.state.luma?.config?.video_url},set(){const e=this.urls?.[0];this.$store.commit("luma/setConfig",{...this.$store.state.luma?.config,video_url:e})}}},mounted(){this.value||(this.value=void 0)},methods:{onExceed(){E.warning(this.$t("luma.message.uploadVideoExceed"))},onError(){E.error(this.$t("luma.message.uploadVideoError"))},beforeUpload(e){const o=e.type==="video/mp4",p=e.size/1024/1024<10;return o?p?!0:(E.error(this.$t("luma.message.uploadVideoSizeExceed")),!1):(E.error(this.$t("luma.message.uploadVideoTypeFailed")),!1)},onSetVideoUrl(){const e=this.urls?.[0];this.$store.commit("luma/setConfig",{...this.$store.state.luma?.config,video_url:e,action:"extend"})},async onSuccess(){this.onSetVideoUrl()}}}),Ye={class:"relative"},Ze={class:"flex justify-between"},xe={class:"flex justify-start items-center"},et={class:"text-sm font-bold"};function tt(e,o,p,h,w,y){const r=s("info-icon"),d=s("file-preview"),c=s("font-awesome-icon"),$=s("el-button"),_=s("el-upload");return a(),m("div",Ye,[n("div",Ze,[n("div",xe,[n("span",et,i(e.$t("luma.name.videoUrl")),1),t(r,{content:e.$t("luma.description.videoUrl")},null,8,["content"])])]),t(_,{"file-list":e.fileList,"onUpdate:fileList":o[0]||(o[0]=l=>e.fileList=l),accept:".mp4",name:"file",class:"value","show-file-list":!0,limit:1,multiple:!1,action:e.uploadUrl,"before-upload":e.beforeUpload,"on-exceed":e.onExceed,"on-error":e.onError,"on-success":e.onSuccess,headers:e.headers},{file:u(({file:l})=>[l.percentage!=null?(a(),k(d,{key:0,url:l.url||l.response?.file_url,name:l.name,percentage:l.percentage,onRemove:V=>e.fileList.splice(e.fileList.indexOf(l),1)},null,8,["url","name","percentage","onRemove"])):f("",!0)]),default:u(()=>[t($,{round:"",type:"primary",size:"small",class:"btn btn-upload"},{default:u(()=>[t(c,{icon:"fa-solid fa-upload",class:"icon mr-1"}),g(" "+i(e.$t("luma.button.uploadVideoUrl")),1)]),_:1})]),_:1},8,["file-list","action","before-upload","on-exceed","on-error","on-success","headers"])])}const ot=b(Xe,[["render",tt],["__scopeId","data-v-74e51526"]]),st="",nt=v({name:"PromptInput",components:{ElInput:Y,InfoIcon:U},computed:{prompt:{get(){return this.$store.state.luma?.config?.prompt},set(e){console.debug("set prompt",e),this.$store.commit("luma/setConfig",{...this.$store.state.luma?.config,prompt:e})}}},mounted(){this.prompt||(this.prompt=st)}}),at={class:"field"},lt={class:"box"},it={class:"title font-bold"};function rt(e,o,p,h,w,y){const r=s("info-icon"),d=s("el-input");return a(),m("div",at,[n("div",lt,[n("h2",it,i(e.$t("luma.name.prompt")),1),t(r,{content:e.$t("luma.description.prompt"),class:"info"},null,8,["content"])]),t(d,{modelValue:e.prompt,"onUpdate:modelValue":o[0]||(o[0]=c=>e.prompt=c),rows:3,type:"textarea",class:"prompt",placeholder:e.$t("luma.placeholder.prompt"),maxlength:2e3,"show-word-limit":""},null,8,["modelValue","placeholder"])])}const ct=b(nt,[["render",rt],["__scopeId","data-v-e8284075"]]),mt=v({name:"ExtendFromInput",components:{VideoPlayer:M},props:{modelValue:{type:Object,required:!1,default:void 0}},data(){return{options:{quality:{default:"1080p"}}}},computed:{config(){return this.$store.state.luma?.config}}}),ut={class:"relative"},dt={class:"flex mb-2"},pt={class:"text-sm font-bold"};function ft(e,o,p,h,w,y){const r=s("video-player");return a(),m("div",ut,[n("div",dt,[n("span",pt,i(e.$t("luma.name.extend")),1)]),n("div",null,[e.config?.video_url?(a(),k(r,{key:0,src:e.config?.video_url},null,8,["src"])):f("",!0)])])}const _t=b(mt,[["render",ft]]),ht=v({name:"ConfigPanel",components:{LoopSelector:Ge,StartImageInput:We,EndImageInput:Oe,EnhancementSelector:ve,ElButton:I,FontAwesomeIcon:S,PromptInput:ct,ExtendFromInput:_t,CustomSelector:Se,UploadVideo:ot,Consumption:Z},emits:["generate"],computed:{config(){return this.$store.state.luma?.config},consumption(){return ee(this.config,this.service?.metadata?.price)},service(){return this.$store.state.luma?.service}},methods:{onGenerate(){this.$emit("generate")}}}),$t={class:"flex flex-col h-full"},gt={class:"flex-1 overflow-y-auto p-[15px]"},vt={class:"flex flex-col items-center justify-center px-[15px] pb-[15px]"};function bt(e,o,p,h,w,y){const r=s("extend-from-input"),d=s("prompt-input"),c=s("custom-selector"),$=s("upload-video"),_=s("start-image-input"),l=s("end-image-input"),V=s("enhancement-selector"),L=s("loop-selector"),B=s("consumption"),G=s("font-awesome-icon"),P=s("el-button");return a(),m("div",$t,[n("div",gt,[e.config?.video_id||e.config?.video_url?(a(),k(r,{key:0,class:"mb-4"})):f("",!0),t(d,{class:"mb-4"}),e.config?.video_id?f("",!0):(a(),k(c,{key:1,class:"mb-4"})),e.config?.custom?(a(),k($,{key:2,class:"mb-4"})):f("",!0),!(e.config?.video_id||e.config?.video_url)&&!e.config?.custom?(a(),k(_,{key:3,class:"mb-4"})):f("",!0),t(l,{class:"mb-4"}),t(V,{class:"mb-4"}),t(L,{class:"mb-4"})]),n("div",vt,[t(B,{value:e.consumption,service:e.service},null,8,["value","service"]),e.config?.video_url!==void 0||e.config?.custom?(a(),k(P,{key:0,type:"primary",class:"btn w-full",round:"",onClick:e.onGenerate},{default:u(()=>[t(G,{icon:"fa-solid fa-magic",class:"mr-2"}),g(" "+i(e.$t("luma.button.extend")),1)]),_:1},8,["onClick"])):(a(),k(P,{key:1,type:"primary",class:"btn w-full",round:"",onClick:e.onGenerate},{default:u(()=>[t(G,{icon:"fa-solid fa-magic",class:"mr-2"}),g(" "+i(e.$t("luma.button.generate")),1)]),_:1},8,["onClick"]))])])}const wt=b(ht,[["render",bt]]),yt=v({name:"TaskPreview",components:{ElImage:ne,CopyToClipboard:te,FontAwesomeIcon:S,ElAlert:se,VideoPlayer:M,ElTooltip:oe,ElButton:I},props:{modelValue:{type:Object,required:!0}},emits:["extend"],data(){return{}},computed:{application(){return this.$store.state.luma?.application},config(){return this.$store.state.luma?.config}},methods:{onExtend(e,o){console.debug("set config",o),this.$store.commit("luma/setConfig",{...this.$store.state.luma?.config,video_id:o.video_id,prompt:o.prompt,action:"extend",thumbnail_url:o.thumbnail_url,video_url:o.video_url}),this.$emit("extend")},onDownload(e){window.open(e,"_blank")}}}),kt={class:"preview"},Et={class:"left"},Vt={class:"main"},Ut={class:"bot"},St={class:"datetime"},It={class:"info"},Lt={key:0,class:"prompt mt-2"},Ct={key:0},Tt={key:1},jt={key:0,class:C({content:!0,failed:!0})},At={key:0,class:"mb-4"},Rt={key:1,class:C({operations:!0,"mt-2":!0,"mb-4":!0})},Gt={class:"text-[var(--el-text-color-regular)] text-xs mb-0"},Pt={key:1,class:C({content:!0})},zt={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Dt={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},Ft={class:"text-[var(--el-text-color-regular)] text-xs mb-0"},Mt={key:2,class:C({content:!0})},Bt={class:"text-[var(--el-text-color-regular)] text-xs mb-0"};function Ot(e,o,p,h,w,y){const r=s("el-image"),d=s("video-player"),c=s("el-button"),$=s("el-tooltip"),_=s("font-awesome-icon"),l=s("copy-to-clipboard"),V=s("el-alert");return a(),m("div",kt,[n("div",Et,[t(r,{src:"https://cdn.acedata.cloud/ahjfwi.png",class:"avatar"})]),n("div",Vt,[n("div",Ut,[g(i(e.$t("luma.name.lumaBot"))+" ",1),n("span",St,i(e.$dayjs.format(""+new Date(parseFloat((e.modelValue?.created_at||"").toString())*1e3))),1)]),n("div",It,[e.modelValue?.request?.prompt?(a(),m("p",Lt,[g(i(e.modelValue?.request?.prompt)+" ",1),e.modelValue?.response?f("",!0):(a(),m("span",Ct," - ("+i(e.$t("luma.status.pending"))+") ",1)),e.modelValue?.response?.state==="processing"||e.modelValue?.response?.state==="pending"?(a(),m("span",Tt," - ("+i(e.$t("luma.status.processing"))+") ",1)):f("",!0)])):f("",!0)]),e.modelValue?.response?.success===!0?(a(),m("div",jt,[e.modelValue.response.video_url?(a(),m("div",At,[t(d,{src:e.modelValue.response.video_url},null,8,["src"])])):f("",!0),e.modelValue?.response&&!e.config?.custom?(a(),m("div",Rt,[t($,{class:"box-item",effect:"dark",content:e.$t("luma.message.extendVideo"),placement:"top-start"},{default:u(()=>[t(c,{type:"info",size:"small",class:"btn-action",onClick:o[0]||(o[0]=z(L=>e.onExtend(L,e.modelValue?.response),["stop"]))},{default:u(()=>[g(i(e.$t("luma.button.extend")),1)]),_:1})]),_:1},8,["content"]),t($,{class:"box-item",effect:"dark",content:e.$t("luma.message.downloadVideo"),placement:"top-start"},{default:u(()=>[t(c,{type:"info",size:"small",class:"btn-action",onClick:o[1]||(o[1]=z(L=>e.onDownload(e.modelValue?.response?.video_url),["stop"]))},{default:u(()=>[g(i(e.$t("luma.button.download")),1)]),_:1})]),_:1},8,["content"])])):f("",!0),t(V,{closable:!1,class:"mt-2 success"},{default:u(()=>[n("p",Gt,[t(_,{icon:"fa-solid fa-magic",class:"mr-1"}),g(" "+i(e.$t("luma.name.taskId"))+": "+i(e.modelValue?.id)+" ",1),t(l,{content:e.modelValue?.id},null,8,["content"])])]),_:1})])):f("",!0),e.modelValue?.response?.state==="failed"||e.modelValue?.response?.success===!1?(a(),m("div",Pt,[t(V,{closable:!1,class:"failure"},{template:u(()=>[t(_,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),g(" "+i(e.$t("luma.name.failure")),1)]),default:u(()=>[n("p",zt,[t(_,{icon:"fa-solid fa-magic",class:"mr-1"}),g(" "+i(e.$t("luma.name.taskId"))+": "+i(e.modelValue?.id)+" ",1),t(l,{content:e.modelValue?.id},null,8,["content"])]),n("p",Dt,[t(_,{icon:"fa-solid fa-circle-info",class:"mr-1"}),g(" "+i(e.$t("luma.name.failureReason"))+": "+i(e.modelValue?.response?.error?.message)+" ",1),t(l,{content:e.modelValue?.response?.error?.message},null,8,["content"])]),n("p",Ft,[t(_,{icon:"fa-solid fa-hashtag",class:"mr-1"}),g(" "+i(e.$t("luma.name.traceId"))+": "+i(e.modelValue?.trace_id)+" ",1),t(l,{content:e.modelValue?.response?.trace_id},null,8,["content"])])]),_:1})])):f("",!0),!e.modelValue?.response||e.modelValue?.response?.state==="processing"||e.modelValue?.response?.state==="pending"?(a(),m("div",Mt,[t(V,{closable:!1,class:"info"},{template:u(()=>[t(_,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),g(" "+i(e.$t("luma.name.failure")),1)]),default:u(()=>[n("p",Bt,[t(_,{icon:"fa-solid fa-magic",class:"mr-1"}),g(" "+i(e.$t("luma.name.taskId"))+": "+i(e.modelValue?.id)+" ",1),t(l,{content:e.modelValue?.id},null,8,["content"])])]),_:1})])):f("",!0)])])}const Nt=b(yt,[["render",Ot],["__scopeId","data-v-1b4a59bc"]]),qt=v({name:"RecentPanel",components:{BotPlaceholder:ae,TaskPreview:Nt,NoTasks:x},emits:["reach-top","extend"],data(){return{job:0}},computed:{tasks(){return{...this.$store.state.luma?.tasks,items:this.$store.state.luma?.tasks?.items?.slice()}}},methods:{onHandleScroll(){const e=this.$refs.panel;console.log("reach-top reach-top reach-top"),e.scrollTop===0&&this.$emit("reach-top")}}}),Ht={key:0},Kt={key:1,class:"tasks w-full h-full overflow-y-auto"},Jt={key:2,class:"w-full h-full flex items-center justify-center"};function Qt(e,o,p,h,w,y){const r=s("bot-placeholder"),d=s("task-preview"),c=s("no-tasks");return a(),m(D,null,[e.tasks?.items===void 0?(a(),m("div",Ht,[t(r)])):e.tasks?.items?.length&&e.tasks?.items?.length>0?(a(),m("div",Kt,[(a(!0),m(D,null,K(e.tasks?.items,($,_)=>(a(),k(d,{key:_,"model-value":$,onExtend:o[0]||(o[0]=l=>e.$emit("extend"))},null,8,["model-value"]))),128))])):f("",!0),e.tasks?.items?.length===0?(a(),m("div",Jt,[t(c)])):f("",!0)],64)}const Wt=b(qt,[["render",Qt]]),Xt="https://webhook.acedata.cloud/luma",Yt=v({name:"LumaIndex",components:{ConfigPanel:wt,Layout:ue,RecentPanel:Wt},inject:["initialized"],emits:["extend"],data(){return{task:void 0,job:0}},computed:{loading(){return this.$store.state.luma?.status?.getApplications===W.Request},credential(){return this.$store.state.luma.credential},config(){return this.$store.state.luma.config},application(){return this.$store.state.luma.application},tasks(){return this.$store.state.luma.tasks}},watch:{tasks:{handler(e,o){e?.items?.length>o?.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=setInterval(()=>{this.onGetTasks()},5e3))},immediate:!0}},async mounted(){await this.onGetService()},async unmounted(){clearInterval(this.job)},methods:{async onReachTop(){console.debug("reached top"),await this.onGetTasks({createdAtMax:this.tasks?.items?.[0]?.created_at})},async onGetService(){console.debug("start onGetService"),await this.$store.dispatch("luma/getService"),console.debug("end onGetService")},async onGetApplication(){console.debug("start onGetApplication"),await this.$store.dispatch("luma/getApplications"),console.debug("end onGetApplication"),await this.onGetTasks()},async onScrollDown(){console.debug("scrolling down"),setTimeout(()=>{const e=document.querySelector(".tasks");e&&(e.scrollTop=e.scrollHeight)},500)},async onGetTasks(e){if(this.loading){console.debug("loading");return}console.debug("start onGetTasks",e);const{limit:o=5,createdAtMin:p,createdAtMax:h}=e||{};console.debug("limit",o,"createdAtMin",p,"createdAtMax",h),await this.$store.dispatch("luma/getTasks",{limit:o,createdAtMin:p,createdAtMax:h})},async onGenerate(){const e={...this.config,callback_url:Xt},o=this.credential?.token;if(!o){console.error("no token specified");return}E.info(this.$t("luma.message.startingTask")),J.generate(e,{token:o}).then(()=>{E.success(this.$t("luma.message.startTaskSuccess"))}).catch(p=>{p?.response?.data?.error?.code===Q?E.error(this.$t("luma.message.usedUp")):E.error(this.$t("luma.message.startTaskFailed"))}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})}}});function Zt(e,o,p,h,w,y){const r=s("config-panel"),d=s("recent-panel"),c=s("layout");return a(),k(c,null,{config:u(()=>[t(r,{onGenerate:e.onGenerate},null,8,["onGenerate"])]),result:u(()=>[t(d,{onReachTop:e.onReachTop,onExtend:o[0]||(o[0]=$=>e.$emit("extend"))},null,8,["onReachTop"])]),_:1})}const jo=b(Yt,[["render",Zt]]);export{jo as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{F as A}from"./index.es-BcVUdKzU.js";import{E as G}from"./index-DmRA92w7.js";import{E as P}from"./index-Cvzwn5DL.js";import{d as $,h as v,b as l,t as c,k as t,r as E,j as p,l as i,o,c6 as D,x as n,D as _,F as w,v as I,i as V,n as T,c as L,y as g,eK as j,dr as z,de as O,dl as B,dm as C}from"./index-BDnu8Rx2.js";import{I as M}from"./InfoIcon-Br1f42SZ.js";import{E as q}from"./index-BpN23C33.js";import{E as k}from"./index-Dbfp85VL.js";import{a as F,E as N}from"./index-BWm3U-BN.js";import{E as U}from"./index-B5W4Ro1I.js";import{E as H,a as K}from"./index-IdqXq7O8.js";import{A as J}from"./Status-BLLZc2aA.js";import{C as Q}from"./CopyToClipboard-DcdEVT8q.js";import{E as W}from"./index-B5o8qRlX.js";import{a as X,E as Y}from"./index-D8sqLsu8.js";import"./use-form-item-B7j42EP5.js";import"./index-r5W6hzzQ.js";import"./index-BjeXTDuD.js";import"./index-DZxnN0Hy.js";import"./typescript-DhyxNYRx.js";import"./index-Dkgd-CmS.js";import"./_baseClone-DyBfXBsi.js";import"./_Uint8Array-Cp8E3K79.js";import"./_initCloneObject-Rg_w1aJn.js";import"./isEqual-oRaCHLap.js";import"./debounce-BXWQzEeG.js";import"./index-FSR3bkwo.js";import"./strings-DEKOZWkP.js";import"./isPlainObject-D0l8uyMi.js";const Z=$({name:"LayoutHeadshots",components:{ElDrawer:P,ElButton:G,FontAwesomeIcon:A},data(){return{drawer:!1}}}),x={class:"main"},ee={class:"config"},te={class:"result"};function se(e,s,m,u,b,y){const d=i("font-awesome-icon"),h=i("el-button"),a=i("el-drawer");return o(),l("div",x,[c("div",ee,[E(e.$slots,"config",{},void 0,!0)]),c("div",te,[E(e.$slots,"result",{},void 0,!0)]),t(h,{circle:"",class:"menu",onClick:s[0]||(s[0]=r=>e.drawer=!0)},{default:p(()=>[t(d,{icon:"fa-solid fa-gear"})]),_:1}),t(a,{modelValue:e.drawer,"onUpdate:modelValue":s[1]||(s[1]=r=>e.drawer=r),"with-header":!1,size:"340px",class:"drawer"},{default:p(()=>[E(e.$slots,"config",{},void 0,!0)]),_:3},8,["modelValue"])])}const oe=v(Z,[["render",se],["__scopeId","data-v-14651d70"]]),ae=$({name:"ImageUrlsInput",components:{ElUpload:q,ElButton:G,InfoIcon:M},data(){return{fileList:[],uploadUrl:D()+"/api/v1/files/"}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},urls(){return this.fileList.map(e=>e?.response?.file_url)},value:{get(){return this.$store.state.headshots?.config?.image_urls},set(){const e=this.urls;this.$store.commit("headshots/setConfig",{...this.$store.state.headshots?.config,image_urls:e})}}},mounted(){this.value||(this.value=void 0),this.onSetImageUrls()},methods:{onExceed(){k.warning(this.$t("headshots.message.uploadImageExceed"))},onError(){k.error(this.$t("headshots.message.uploadImageError"))},onSetImageUrls(){const e=this.urls;this.$store.commit("headshots/setConfig",{...this.$store.state.headshots?.config,image_urls:e})},async onSuccess(){this.onSetImageUrls()}}}),ne={class:"field"},ie={class:"title font-bold"},le={class:"upload-wrapper"};function re(e,s,m,u,b,y){const d=i("el-button"),h=i("el-upload"),a=i("info-icon");return o(),l("div",ne,[c("h2",ie,n(e.$t("headshots.name.endImageUrls")),1),c("div",le,[t(h,{"file-list":e.fileList,"onUpdate:fileList":s[0]||(s[0]=r=>e.fileList=r),accept:".png,.jpg,.jpeg,.gif,.bmp,.webp",name:"file",class:"value","show-file-list":!0,limit:2,multiple:!0,action:e.uploadUrl,"on-exceed":e.onExceed,"on-error":e.onError,"on-success":e.onSuccess,headers:e.headers},{default:p(()=>[t(d,{size:"small",type:"primary",round:""},{default:p(()=>[_(n(e.$t("headshots.button.uploadImageUrls")),1)]),_:1})]),_:1},8,["file-list","action","on-exceed","on-error","on-success","headers"])]),t(a,{content:e.$t("headshots.description.endImageUrls"),class:"info"},null,8,["content"])])}const ce=v(ae,[["render",re],["__scopeId","data-v-a6bd8c31"]]),de="fast",pe=$({name:"ModeSelector",components:{ElRadioButton:N,ElRadioGroup:F},data(){return{options:[{label:this.$t("headshots.button.fast"),value:"fast"},{label:this.$t("headshots.button.relax"),value:"relax"}]}},computed:{value:{get(){return this.$store.state.headshots.config?.mode},set(e){console.debug("set mode",e),this.$store.commit("headshots/setConfig",{...this.$store.state.headshots.config,mode:e})}}},mounted(){this.value||(this.value=de)}}),me={class:"field"},ue={class:"title font-bold"};function he(e,s,m,u,b,y){const d=i("el-radio-button"),h=i("el-radio-group");return o(),l("div",me,[c("h2",ue,n(e.$t("headshots.name.mode")),1),t(h,{modelValue:e.value,"onUpdate:modelValue":s[0]||(s[0]=a=>e.value=a),size:"small",class:"mode"},{default:p(()=>[(o(!0),l(w,null,I(e.options,a=>(o(),V(d,{key:a.value,label:a.value},{default:p(()=>[_(n(a.label),1)]),_:2},1032,["label"]))),128))]),_:1},8,["modelValue"])])}const _e=v(pe,[["render",he],["__scopeId","data-v-a2a0d5fa"]]),fe=$({name:"StylizeSelector",components:{ElTabs:K,ElTabPane:H,ElImage:U},data(){return{tab:"styles",value:"",elements:{styles:{displayName:this.$t("headshots.styleCategory.styles"),items:[{image:"https://static.aipedias.com/aicamera/common/20241008/20241008202314260779439.png",label:this.$t("headshots.styleTag.malePportrait"),value:"male_portrait"},{image:"https://static.aipedias.com/aicamera/common/20241008/202410082022241e9755548.png",label:this.$t("headshots.styleTag.malePportrait2"),value:"male_portrait2"},{image:"https://static.aipedias.com/aicamera/common/20241101/20241101170130d78f66521.png",label:this.$t("headshots.styleTag.kindergarten"),value:"kindergarten"},{image:"https://static.aipedias.com/aicamera/common/20240923/20240923123233accf60398.webp",label:this.$t("headshots.styleTag.logoTshirt"),value:"logo_tshirt"},{image:"https://static.aipedias.com/aicamera/common/20241025/202410252012329472d0656.jpg",label:this.$t("headshots.styleTag.wedding"),value:"wedding"},{image:"https://static.aipedias.com/aicamera/common/20240915/20240915145045254931400.webp",label:this.$t("headshots.styleTag.businessPphoto"),value:"business_photo"},{image:"https://static.aipedias.com/aicamera/common/20240810/20240810194526040341795.jpg",label:this.$t("headshots.styleTag.bobSuit"),value:"bob_suit"},{image:"https://static.aipedias.com/aicamera/common/20240717/20240717152654e0b348173.webp",label:this.$t("headshots.styleTag.femalePortrait"),value:"female_portrait"}]}}}},watch:{value(e){console.debug("set template",e),this.$store.commit("headshots/setConfig",{...this.$store.state.headshots?.config,template:e})}},mounted(){this.value||(this.value=""),console.debug("set template",this.value),this.$store.commit("headshots/setConfig",{...this.$store.state.headshots?.config,template:this.value})},methods:{onToggle(e){this.value===e?this.value="":this.value=e,console.debug("set template",this.value),this.$store.commit("headshots/setConfig",{...this.$store.state.headshots?.config,template:this.value})}}}),ge={class:"field"},$e=["onClick"],ve={class:"name"};function be(e,s,m,u,b,y){const d=i("el-image"),h=i("el-tab-pane"),a=i("el-tabs");return o(),l("div",ge,[t(a,{modelValue:e.tab,"onUpdate:modelValue":s[0]||(s[0]=r=>e.tab=r)},{default:p(()=>[(o(!0),l(w,null,I(e.elements,(r,f)=>(o(),V(h,{key:f,label:r.displayName,name:f,class:"pane"},{default:p(()=>[(o(!0),l(w,null,I(r.items,(S,R)=>(o(),l("div",{key:R,class:T({item:!0,active:e.value===S.value}),onClick:ht=>e.onToggle(S.value)},[t(d,{src:S.image,fit:"fill",class:"preview"},null,8,["src"]),c("span",ve,n(S.label),1)],10,$e))),128))]),_:2},1032,["label","name"]))),128))]),_:1},8,["modelValue"])])}const ye=v(fe,[["render",be],["__scopeId","data-v-be4bd25d"]]),ke=$({name:"PresetPanel",components:{ModeSelector:_e,ImageUrlsInput:ce,ElButton:G,FontAwesomeIcon:A,ElementsSelector:ye},emits:["generate"],computed:{config(){return this.$store.state.headshots?.config}},methods:{onGenerate(){this.$emit("generate")}}}),we={class:"panel"},Ie={class:"config"},Te={class:"actions"};function Se(e,s,m,u,b,y){const d=i("elements-selector"),h=i("mode-selector"),a=i("image-urls-input"),r=i("font-awesome-icon"),f=i("el-button");return o(),l("div",we,[c("div",Ie,[t(d,{class:"mb-4"}),t(h,{class:"mb-4"}),t(a,{class:"mb-4"}),c("div",Te,[t(f,{type:"primary",class:"btn w-full",round:"",onClick:e.onGenerate},{default:p(()=>[t(r,{icon:"fa-solid fa-magic",class:"mr-2"}),_(" "+n(e.$t("headshots.button.generate")),1)]),_:1},8,["onClick"])])])])}const Ve=v(ke,[["render",Se],["__scopeId","data-v-78172a54"]]),Ee=$({name:"ImageGallery",props:{modelValue:{type:Object,required:!0}},setup(e){return{images:L(()=>e.modelValue?.response?.data?.slice(0,2)||[]),viewImage:u=>{window.open(u,"_blank")}}}}),Ce={class:"image-gallery"},Ae=["src"],Ge=["onClick"];function Ue(e,s,m,u,b,y){return o(),l("div",Ce,[(o(!0),l(w,null,I(e.images,(d,h)=>(o(),l("div",{key:h,class:"image-container"},[c("img",{src:d.image_url,alt:"Image"},null,8,Ae),d.image_url?(o(),l("button",{key:0,class:"view-button",onClick:a=>e.viewImage(d.image_url)},n(e.$t("headshots.button.viewImage")),9,Ge)):g("",!0)]))),128))])}const Re=v(Ee,[["render",Ue],["__scopeId","data-v-03641510"]]),Pe=$({name:"TaskPreview",components:{ElImage:U,CopyToClipboard:Q,FontAwesomeIcon:A,ElAlert:W,ImageGallery:Re},props:{modelValue:{type:Object,required:!0}},data(){return{}},computed:{application(){return this.$store.state.headshots?.application},config(){return this.$store.state.headshots?.config}},methods:{onDownload(e,s){e.stopPropagation(),console.log("on download"),window.open(s,"_blank")},onReload(e){const s=e.target,m=new URL(s.src),u=m.searchParams.get("retry");if(!u)m.searchParams.set("retry","1");else if(parseInt(u)<2)m.searchParams.set("retry",(parseInt(u)+1).toString());else return;s.src=m.toString()},onOpenVideo(e){window.open(e,"_blank")}}}),De={class:"preview"},Le={class:"left"},je={class:"main"},ze={class:"bot"},Oe={class:"datetime"},Be={class:"info"},Me={key:0,class:"prompt mt-2"},qe={key:0},Fe={key:1},Ne={key:0,class:T({content:!0,failed:!0})},He={class:"image-wrapper"},Ke={class:"description"},Je={key:1,class:T({content:!0})},Qe={class:"description"},We={class:"description"},Xe={class:"description"},Ye={key:2,class:T({content:!0})},Ze={class:"description"},xe={key:3,class:T({content:!0})},et={class:"description"};function tt(e,s,m,u,b,y){const d=i("el-image"),h=i("image-gallery"),a=i("font-awesome-icon"),r=i("copy-to-clipboard"),f=i("el-alert");return o(),l("div",De,[c("div",Le,[t(d,{src:"https://cdn.acedata.cloud/isxyfw.png",class:"avatar"})]),c("div",je,[c("div",ze,[_(n(e.$t("headshots.name.headshotsBot"))+" ",1),c("span",Oe,n(e.$dayjs.format(""+new Date(parseFloat((e.modelValue?.created_at||"").toString())*1e3))),1)]),c("div",Be,[e.modelValue?.request?.template?(o(),l("p",Me,[_(n(e.modelValue?.request?.template)+" ",1),e.modelValue?.response?g("",!0):(o(),l("span",qe," - ("+n(e.$t("headshots.status.pending"))+") ",1)),e.modelValue?.response?.status==="unknown"?(o(),l("span",Fe," - ("+n(e.$t("headshots.status.processing"))+") ",1)):g("",!0)])):g("",!0)]),e.modelValue?.response?.success===!0?(o(),l("div",Ne,[c("div",He,[t(h,{"model-value":e.modelValue},null,8,["model-value"])]),t(f,{closable:!1,class:"mt-2 success"},{default:p(()=>[c("p",Ke,[t(a,{icon:"fa-solid fa-magic",class:"mr-1"}),_(" "+n(e.$t("headshots.name.taskId"))+": "+n(e.modelValue?.id)+" ",1),t(r,{content:e.modelValue?.id,class:"btn-copy"},null,8,["content"])])]),_:1})])):g("",!0),e.modelValue?.response?.success===!1?(o(),l("div",Je,[t(f,{closable:!1,class:"failure"},{template:p(()=>[t(a,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),_(" "+n(e.$t("headshots.name.failure")),1)]),default:p(()=>[c("p",Qe,[t(a,{icon:"fa-solid fa-magic",class:"mr-1"}),_(" "+n(e.$t("headshots.name.taskId"))+": "+n(e.modelValue?.id)+" ",1),t(r,{content:e.modelValue?.id,class:"btn-copy"},null,8,["content"])]),c("p",We,[t(a,{icon:"fa-solid fa-circle-info",class:"mr-1"}),_(" "+n(e.$t("headshots.name.failureReason"))+": "+n(e.modelValue?.response?.error?.message)+" ",1),t(r,{content:e.modelValue?.response?.error?.message,class:"btn-copy"},null,8,["content"])]),c("p",Xe,[t(a,{icon:"fa-solid fa-hashtag",class:"mr-1"}),_(" "+n(e.$t("headshots.name.traceId"))+": "+n(e.modelValue?.response?.trace_id)+" ",1),t(r,{content:e.modelValue?.response?.trace_id,class:"btn-copy"},null,8,["content"])])]),_:1})])):g("",!0),e.modelValue?.response?g("",!0):(o(),l("div",Ye,[t(f,{closable:!1,class:"info"},{template:p(()=>[t(a,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),_(" "+n(e.$t("headshots.name.failure")),1)]),default:p(()=>[c("p",Ze,[t(a,{icon:"fa-solid fa-magic",class:"mr-1"}),_(" "+n(e.$t("headshots.name.taskId"))+": "+n(e.modelValue?.id)+" ",1),t(r,{content:e.modelValue?.id,class:"btn-copy"},null,8,["content"])])]),_:1})])),e.modelValue?.response?.status==="unknown"?(o(),l("div",xe,[t(f,{closable:!1,class:"info"},{template:p(()=>[t(a,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),_(" "+n(e.$t("headshots.name.failure")),1)]),default:p(()=>[c("p",et,[t(a,{icon:"fa-solid fa-magic",class:"mr-1"}),_(" "+n(e.$t("headshots.name.taskId"))+": "+n(e.modelValue?.id)+" ",1),t(r,{content:e.modelValue?.id,class:"btn-copy"},null,8,["content"])])]),_:1})])):g("",!0)])])}const st=v(Pe,[["render",tt],["__scopeId","data-v-77229910"]]),ot=$({name:"RecentPanel",components:{TaskPreview:st,ElSkeleton:Y,ElSkeletonItem:X},emits:["reach-top"],data(){return{job:0}},computed:{tasks(){return{...this.$store.state.headshots?.tasks,items:this.$store.state.headshots?.tasks?.items?.slice()}}},methods:{onHandleScroll(){const e=this.$refs.panel;console.log("reach-top reach-top reach-top"),e.scrollTop===0&&this.$emit("reach-top")}}}),at={key:0,class:"tasks"},nt={class:"left"},it={class:"main"},lt={key:1,class:"tasks"},rt={key:2,class:"description"};function ct(e,s,m,u,b,y){const d=i("el-skeleton-item"),h=i("el-skeleton"),a=i("task-preview");return o(),l("div",{ref:"panel",class:"panel recent",onScroll:s[0]||(s[0]=(...r)=>e.onHandleScroll&&e.onHandleScroll(...r))},[e.tasks?.items===void 0?(o(),l("div",at,[(o(),l(w,null,I(3,r=>c("div",{key:r,class:"task placeholder"},[c("div",nt,[t(h,{animated:""},{template:p(()=>[t(d,{variant:"image",class:"avatar"})]),_:1})]),c("div",it,[t(h,{animated:""},{template:p(()=>[t(d,{variant:"p",class:"title"}),t(d,{variant:"image",class:"icon"})]),_:1})])])),64))])):e.tasks?.items?.length&&e.tasks?.items?.length>0?(o(),l("div",lt,[(o(!0),l(w,null,I(e.tasks?.items,(r,f)=>(o(),V(a,{key:f,"model-value":r,class:"preview"},null,8,["model-value"]))),128))])):g("",!0),e.tasks?.items?.length===0?(o(),l("p",rt,n(e.$t("headshots.message.noTasks")),1)):g("",!0)],544)}const dt=v(ot,[["render",ct],["__scopeId","data-v-d79bcb1f"]]),pt="https://webhook.acedata.cloud/headshots",mt=$({name:"HeadshotsIndex",components:{ConfigPanel:Ve,Layout:oe,ApplicationStatus:J,RecentPanel:dt},inject:["initialized"],data(){return{task:void 0,job:0}},computed:{loading(){return this.$store.state.headshots?.status?.getApplications===C.Request},service(){return this.$store.state.headshots.service},credential(){return this.$store.state.headshots.credential},config(){return this.$store.state.headshots.config},initializing(){return this.$store.state.headshots.status.getApplications===C.Request},needApply(){return this.$store.state.headshots.status.getApplications===C.Success&&!this.application},application(){return this.$store.state.headshots.application},applications(){return this.$store.state.headshots.applications},tasks(){return this.$store.state.headshots.tasks}},watch:{tasks:{handler(e,s){e?.items?.length>s?.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=setInterval(()=>{this.onGetTasks()},5e3))},immediate:!0}},async mounted(){await this.onGetService()},async unmounted(){clearInterval(this.job)},methods:{async onReachTop(){console.debug("reached top"),await this.onGetTasks({createdAtMax:this.tasks?.items?.[0]?.created_at})},async onGetService(){console.debug("start onGetService"),await this.$store.dispatch("headshots/getService"),console.debug("end onGetService")},async onGetApplication(){console.debug("start onGetApplication"),await this.$store.dispatch("headshots/getApplications"),console.debug("end onGetApplication"),await this.onGetTasks()},onApply(){O.create({application:this.application}).then(({data:e})=>{this.application=e,k.success(this.$t("application.message.applySuccessfully"))}).catch(e=>{e?.response?.data?.code===B&&k.error(this.$t("application.message.alreadyApplied"))})},async onScrollDown(){setTimeout(()=>{const e=document.querySelector(".recent");e&&(e.scrollTop=e.scrollHeight)},500)},async onGetTasks(e){if(this.loading){console.debug("loading");return}console.debug("start onGetTasks",e);const{limit:s=5,createdAtMin:m,createdAtMax:u}=e||{};console.debug("limit",s,"createdAtMin",m,"createdAtMax",u),await this.$store.dispatch("headshots/getTasks",{limit:s,createdAtMin:m,createdAtMax:u})},async onGeneratePicture(){const e={...this.config,callback_url:pt},s=this.credential?.token;if(!s){console.error("no token specified");return}k.info(this.$t("headshots.message.startingTask")),j.generate(e,{token:s}).then(()=>{k.success(this.$t("headshots.message.startTaskSuccess")),this.$store.commit("headshots/setConfig",{config:void 0})}).catch(m=>{m?.response?.data?.error?.code===z?k.error(this.$t("headshots.message.usedUp")):k.error(this.$t("headshots.message.startTaskFailed"))}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})}}});function ut(e,s,m,u,b,y){const d=i("config-panel"),h=i("application-status"),a=i("recent-panel"),r=i("layout");return o(),V(r,null,{config:p(()=>[t(d,{onGenerate:e.onGeneratePicture},null,8,["onGenerate"])]),result:p(()=>[t(h,{initializing:e.initializing,application:e.application,applications:e.applications,service:e.service,"need-apply":e.needApply,class:"mb-4",onRefresh:e.onGetApplication,onSelect:s[0]||(s[0]=f=>e.$store.dispatch("headshots/setApplication",f))},null,8,["initializing","application","applications","service","need-apply","onRefresh"]),t(a,{class:"panel recent",onReachTop:e.onReachTop},null,8,["onReachTop"])]),_:1})}const Ft=v(mt,[["render",ut],["__scopeId","data-v-19d3c623"]]);export{Ft as default};
|
|
1
|
+
import{F as A}from"./index.es-Sv2RX3tE.js";import{E as G}from"./index-Uz6VpvEs.js";import{E as P}from"./index-DlFjlQy3.js";import{d as $,h as v,b as l,t as c,k as t,r as E,j as p,l as i,o,c6 as D,x as n,D as _,F as w,v as I,i as V,n as T,c as L,y as g,eK as j,dr as z,de as O,dl as B,dm as C}from"./index-DI_C3Ao9.js";import{I as M}from"./InfoIcon-aG3xky6z.js";import{E as q}from"./index-DLRLNopw.js";import{E as k}from"./index-B099pfCb.js";import{a as F,E as N}from"./index-CGl7iLF3.js";import{E as U}from"./index-D7SIBJVO.js";import{E as H,a as K}from"./index-CY75twqY.js";import{A as J}from"./Status-DvmAEWo4.js";import{C as Q}from"./CopyToClipboard-AFrGC6zu.js";import{E as W}from"./index-ByY_tD9H.js";import{a as X,E as Y}from"./index-BoPdW-Of.js";import"./use-form-item-D6NQ9sNV.js";import"./index-r5W6hzzQ.js";import"./index-PU4oJo9l.js";import"./index-sVUmFHgv.js";import"./typescript-8pw9sVHl.js";import"./index-BEf6ot_1.js";import"./_baseClone-2NfMeWJP.js";import"./_Uint8Array-CKCrVCIW.js";import"./_initCloneObject-CfGFlXWr.js";import"./isEqual-rNurVTiM.js";import"./debounce-Dnlkicc5.js";import"./index-BTbYbX3l.js";import"./strings-CKxhwaoH.js";import"./isPlainObject-BiS_yJCA.js";const Z=$({name:"LayoutHeadshots",components:{ElDrawer:P,ElButton:G,FontAwesomeIcon:A},data(){return{drawer:!1}}}),x={class:"main"},ee={class:"config"},te={class:"result"};function se(e,s,m,u,b,y){const d=i("font-awesome-icon"),h=i("el-button"),a=i("el-drawer");return o(),l("div",x,[c("div",ee,[E(e.$slots,"config",{},void 0,!0)]),c("div",te,[E(e.$slots,"result",{},void 0,!0)]),t(h,{circle:"",class:"menu",onClick:s[0]||(s[0]=r=>e.drawer=!0)},{default:p(()=>[t(d,{icon:"fa-solid fa-gear"})]),_:1}),t(a,{modelValue:e.drawer,"onUpdate:modelValue":s[1]||(s[1]=r=>e.drawer=r),"with-header":!1,size:"340px",class:"drawer"},{default:p(()=>[E(e.$slots,"config",{},void 0,!0)]),_:3},8,["modelValue"])])}const oe=v(Z,[["render",se],["__scopeId","data-v-14651d70"]]),ae=$({name:"ImageUrlsInput",components:{ElUpload:q,ElButton:G,InfoIcon:M},data(){return{fileList:[],uploadUrl:D()+"/api/v1/files/"}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},urls(){return this.fileList.map(e=>e?.response?.file_url)},value:{get(){return this.$store.state.headshots?.config?.image_urls},set(){const e=this.urls;this.$store.commit("headshots/setConfig",{...this.$store.state.headshots?.config,image_urls:e})}}},mounted(){this.value||(this.value=void 0),this.onSetImageUrls()},methods:{onExceed(){k.warning(this.$t("headshots.message.uploadImageExceed"))},onError(){k.error(this.$t("headshots.message.uploadImageError"))},onSetImageUrls(){const e=this.urls;this.$store.commit("headshots/setConfig",{...this.$store.state.headshots?.config,image_urls:e})},async onSuccess(){this.onSetImageUrls()}}}),ne={class:"field"},ie={class:"title font-bold"},le={class:"upload-wrapper"};function re(e,s,m,u,b,y){const d=i("el-button"),h=i("el-upload"),a=i("info-icon");return o(),l("div",ne,[c("h2",ie,n(e.$t("headshots.name.endImageUrls")),1),c("div",le,[t(h,{"file-list":e.fileList,"onUpdate:fileList":s[0]||(s[0]=r=>e.fileList=r),accept:".png,.jpg,.jpeg,.gif,.bmp,.webp",name:"file",class:"value","show-file-list":!0,limit:2,multiple:!0,action:e.uploadUrl,"on-exceed":e.onExceed,"on-error":e.onError,"on-success":e.onSuccess,headers:e.headers},{default:p(()=>[t(d,{size:"small",type:"primary",round:""},{default:p(()=>[_(n(e.$t("headshots.button.uploadImageUrls")),1)]),_:1})]),_:1},8,["file-list","action","on-exceed","on-error","on-success","headers"])]),t(a,{content:e.$t("headshots.description.endImageUrls"),class:"info"},null,8,["content"])])}const ce=v(ae,[["render",re],["__scopeId","data-v-a6bd8c31"]]),de="fast",pe=$({name:"ModeSelector",components:{ElRadioButton:N,ElRadioGroup:F},data(){return{options:[{label:this.$t("headshots.button.fast"),value:"fast"},{label:this.$t("headshots.button.relax"),value:"relax"}]}},computed:{value:{get(){return this.$store.state.headshots.config?.mode},set(e){console.debug("set mode",e),this.$store.commit("headshots/setConfig",{...this.$store.state.headshots.config,mode:e})}}},mounted(){this.value||(this.value=de)}}),me={class:"field"},ue={class:"title font-bold"};function he(e,s,m,u,b,y){const d=i("el-radio-button"),h=i("el-radio-group");return o(),l("div",me,[c("h2",ue,n(e.$t("headshots.name.mode")),1),t(h,{modelValue:e.value,"onUpdate:modelValue":s[0]||(s[0]=a=>e.value=a),size:"small",class:"mode"},{default:p(()=>[(o(!0),l(w,null,I(e.options,a=>(o(),V(d,{key:a.value,label:a.value},{default:p(()=>[_(n(a.label),1)]),_:2},1032,["label"]))),128))]),_:1},8,["modelValue"])])}const _e=v(pe,[["render",he],["__scopeId","data-v-a2a0d5fa"]]),fe=$({name:"StylizeSelector",components:{ElTabs:K,ElTabPane:H,ElImage:U},data(){return{tab:"styles",value:"",elements:{styles:{displayName:this.$t("headshots.styleCategory.styles"),items:[{image:"https://static.aipedias.com/aicamera/common/20241008/20241008202314260779439.png",label:this.$t("headshots.styleTag.malePportrait"),value:"male_portrait"},{image:"https://static.aipedias.com/aicamera/common/20241008/202410082022241e9755548.png",label:this.$t("headshots.styleTag.malePportrait2"),value:"male_portrait2"},{image:"https://static.aipedias.com/aicamera/common/20241101/20241101170130d78f66521.png",label:this.$t("headshots.styleTag.kindergarten"),value:"kindergarten"},{image:"https://static.aipedias.com/aicamera/common/20240923/20240923123233accf60398.webp",label:this.$t("headshots.styleTag.logoTshirt"),value:"logo_tshirt"},{image:"https://static.aipedias.com/aicamera/common/20241025/202410252012329472d0656.jpg",label:this.$t("headshots.styleTag.wedding"),value:"wedding"},{image:"https://static.aipedias.com/aicamera/common/20240915/20240915145045254931400.webp",label:this.$t("headshots.styleTag.businessPphoto"),value:"business_photo"},{image:"https://static.aipedias.com/aicamera/common/20240810/20240810194526040341795.jpg",label:this.$t("headshots.styleTag.bobSuit"),value:"bob_suit"},{image:"https://static.aipedias.com/aicamera/common/20240717/20240717152654e0b348173.webp",label:this.$t("headshots.styleTag.femalePortrait"),value:"female_portrait"}]}}}},watch:{value(e){console.debug("set template",e),this.$store.commit("headshots/setConfig",{...this.$store.state.headshots?.config,template:e})}},mounted(){this.value||(this.value=""),console.debug("set template",this.value),this.$store.commit("headshots/setConfig",{...this.$store.state.headshots?.config,template:this.value})},methods:{onToggle(e){this.value===e?this.value="":this.value=e,console.debug("set template",this.value),this.$store.commit("headshots/setConfig",{...this.$store.state.headshots?.config,template:this.value})}}}),ge={class:"field"},$e=["onClick"],ve={class:"name"};function be(e,s,m,u,b,y){const d=i("el-image"),h=i("el-tab-pane"),a=i("el-tabs");return o(),l("div",ge,[t(a,{modelValue:e.tab,"onUpdate:modelValue":s[0]||(s[0]=r=>e.tab=r)},{default:p(()=>[(o(!0),l(w,null,I(e.elements,(r,f)=>(o(),V(h,{key:f,label:r.displayName,name:f,class:"pane"},{default:p(()=>[(o(!0),l(w,null,I(r.items,(S,R)=>(o(),l("div",{key:R,class:T({item:!0,active:e.value===S.value}),onClick:ht=>e.onToggle(S.value)},[t(d,{src:S.image,fit:"fill",class:"preview"},null,8,["src"]),c("span",ve,n(S.label),1)],10,$e))),128))]),_:2},1032,["label","name"]))),128))]),_:1},8,["modelValue"])])}const ye=v(fe,[["render",be],["__scopeId","data-v-be4bd25d"]]),ke=$({name:"PresetPanel",components:{ModeSelector:_e,ImageUrlsInput:ce,ElButton:G,FontAwesomeIcon:A,ElementsSelector:ye},emits:["generate"],computed:{config(){return this.$store.state.headshots?.config}},methods:{onGenerate(){this.$emit("generate")}}}),we={class:"panel"},Ie={class:"config"},Te={class:"actions"};function Se(e,s,m,u,b,y){const d=i("elements-selector"),h=i("mode-selector"),a=i("image-urls-input"),r=i("font-awesome-icon"),f=i("el-button");return o(),l("div",we,[c("div",Ie,[t(d,{class:"mb-4"}),t(h,{class:"mb-4"}),t(a,{class:"mb-4"}),c("div",Te,[t(f,{type:"primary",class:"btn w-full",round:"",onClick:e.onGenerate},{default:p(()=>[t(r,{icon:"fa-solid fa-magic",class:"mr-2"}),_(" "+n(e.$t("headshots.button.generate")),1)]),_:1},8,["onClick"])])])])}const Ve=v(ke,[["render",Se],["__scopeId","data-v-78172a54"]]),Ee=$({name:"ImageGallery",props:{modelValue:{type:Object,required:!0}},setup(e){return{images:L(()=>e.modelValue?.response?.data?.slice(0,2)||[]),viewImage:u=>{window.open(u,"_blank")}}}}),Ce={class:"image-gallery"},Ae=["src"],Ge=["onClick"];function Ue(e,s,m,u,b,y){return o(),l("div",Ce,[(o(!0),l(w,null,I(e.images,(d,h)=>(o(),l("div",{key:h,class:"image-container"},[c("img",{src:d.image_url,alt:"Image"},null,8,Ae),d.image_url?(o(),l("button",{key:0,class:"view-button",onClick:a=>e.viewImage(d.image_url)},n(e.$t("headshots.button.viewImage")),9,Ge)):g("",!0)]))),128))])}const Re=v(Ee,[["render",Ue],["__scopeId","data-v-03641510"]]),Pe=$({name:"TaskPreview",components:{ElImage:U,CopyToClipboard:Q,FontAwesomeIcon:A,ElAlert:W,ImageGallery:Re},props:{modelValue:{type:Object,required:!0}},data(){return{}},computed:{application(){return this.$store.state.headshots?.application},config(){return this.$store.state.headshots?.config}},methods:{onDownload(e,s){e.stopPropagation(),console.log("on download"),window.open(s,"_blank")},onReload(e){const s=e.target,m=new URL(s.src),u=m.searchParams.get("retry");if(!u)m.searchParams.set("retry","1");else if(parseInt(u)<2)m.searchParams.set("retry",(parseInt(u)+1).toString());else return;s.src=m.toString()},onOpenVideo(e){window.open(e,"_blank")}}}),De={class:"preview"},Le={class:"left"},je={class:"main"},ze={class:"bot"},Oe={class:"datetime"},Be={class:"info"},Me={key:0,class:"prompt mt-2"},qe={key:0},Fe={key:1},Ne={key:0,class:T({content:!0,failed:!0})},He={class:"image-wrapper"},Ke={class:"description"},Je={key:1,class:T({content:!0})},Qe={class:"description"},We={class:"description"},Xe={class:"description"},Ye={key:2,class:T({content:!0})},Ze={class:"description"},xe={key:3,class:T({content:!0})},et={class:"description"};function tt(e,s,m,u,b,y){const d=i("el-image"),h=i("image-gallery"),a=i("font-awesome-icon"),r=i("copy-to-clipboard"),f=i("el-alert");return o(),l("div",De,[c("div",Le,[t(d,{src:"https://cdn.acedata.cloud/isxyfw.png",class:"avatar"})]),c("div",je,[c("div",ze,[_(n(e.$t("headshots.name.headshotsBot"))+" ",1),c("span",Oe,n(e.$dayjs.format(""+new Date(parseFloat((e.modelValue?.created_at||"").toString())*1e3))),1)]),c("div",Be,[e.modelValue?.request?.template?(o(),l("p",Me,[_(n(e.modelValue?.request?.template)+" ",1),e.modelValue?.response?g("",!0):(o(),l("span",qe," - ("+n(e.$t("headshots.status.pending"))+") ",1)),e.modelValue?.response?.status==="unknown"?(o(),l("span",Fe," - ("+n(e.$t("headshots.status.processing"))+") ",1)):g("",!0)])):g("",!0)]),e.modelValue?.response?.success===!0?(o(),l("div",Ne,[c("div",He,[t(h,{"model-value":e.modelValue},null,8,["model-value"])]),t(f,{closable:!1,class:"mt-2 success"},{default:p(()=>[c("p",Ke,[t(a,{icon:"fa-solid fa-magic",class:"mr-1"}),_(" "+n(e.$t("headshots.name.taskId"))+": "+n(e.modelValue?.id)+" ",1),t(r,{content:e.modelValue?.id,class:"btn-copy"},null,8,["content"])])]),_:1})])):g("",!0),e.modelValue?.response?.success===!1?(o(),l("div",Je,[t(f,{closable:!1,class:"failure"},{template:p(()=>[t(a,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),_(" "+n(e.$t("headshots.name.failure")),1)]),default:p(()=>[c("p",Qe,[t(a,{icon:"fa-solid fa-magic",class:"mr-1"}),_(" "+n(e.$t("headshots.name.taskId"))+": "+n(e.modelValue?.id)+" ",1),t(r,{content:e.modelValue?.id,class:"btn-copy"},null,8,["content"])]),c("p",We,[t(a,{icon:"fa-solid fa-circle-info",class:"mr-1"}),_(" "+n(e.$t("headshots.name.failureReason"))+": "+n(e.modelValue?.response?.error?.message)+" ",1),t(r,{content:e.modelValue?.response?.error?.message,class:"btn-copy"},null,8,["content"])]),c("p",Xe,[t(a,{icon:"fa-solid fa-hashtag",class:"mr-1"}),_(" "+n(e.$t("headshots.name.traceId"))+": "+n(e.modelValue?.response?.trace_id)+" ",1),t(r,{content:e.modelValue?.response?.trace_id,class:"btn-copy"},null,8,["content"])])]),_:1})])):g("",!0),e.modelValue?.response?g("",!0):(o(),l("div",Ye,[t(f,{closable:!1,class:"info"},{template:p(()=>[t(a,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),_(" "+n(e.$t("headshots.name.failure")),1)]),default:p(()=>[c("p",Ze,[t(a,{icon:"fa-solid fa-magic",class:"mr-1"}),_(" "+n(e.$t("headshots.name.taskId"))+": "+n(e.modelValue?.id)+" ",1),t(r,{content:e.modelValue?.id,class:"btn-copy"},null,8,["content"])])]),_:1})])),e.modelValue?.response?.status==="unknown"?(o(),l("div",xe,[t(f,{closable:!1,class:"info"},{template:p(()=>[t(a,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),_(" "+n(e.$t("headshots.name.failure")),1)]),default:p(()=>[c("p",et,[t(a,{icon:"fa-solid fa-magic",class:"mr-1"}),_(" "+n(e.$t("headshots.name.taskId"))+": "+n(e.modelValue?.id)+" ",1),t(r,{content:e.modelValue?.id,class:"btn-copy"},null,8,["content"])])]),_:1})])):g("",!0)])])}const st=v(Pe,[["render",tt],["__scopeId","data-v-77229910"]]),ot=$({name:"RecentPanel",components:{TaskPreview:st,ElSkeleton:Y,ElSkeletonItem:X},emits:["reach-top"],data(){return{job:0}},computed:{tasks(){return{...this.$store.state.headshots?.tasks,items:this.$store.state.headshots?.tasks?.items?.slice()}}},methods:{onHandleScroll(){const e=this.$refs.panel;console.log("reach-top reach-top reach-top"),e.scrollTop===0&&this.$emit("reach-top")}}}),at={key:0,class:"tasks"},nt={class:"left"},it={class:"main"},lt={key:1,class:"tasks"},rt={key:2,class:"description"};function ct(e,s,m,u,b,y){const d=i("el-skeleton-item"),h=i("el-skeleton"),a=i("task-preview");return o(),l("div",{ref:"panel",class:"panel recent",onScroll:s[0]||(s[0]=(...r)=>e.onHandleScroll&&e.onHandleScroll(...r))},[e.tasks?.items===void 0?(o(),l("div",at,[(o(),l(w,null,I(3,r=>c("div",{key:r,class:"task placeholder"},[c("div",nt,[t(h,{animated:""},{template:p(()=>[t(d,{variant:"image",class:"avatar"})]),_:1})]),c("div",it,[t(h,{animated:""},{template:p(()=>[t(d,{variant:"p",class:"title"}),t(d,{variant:"image",class:"icon"})]),_:1})])])),64))])):e.tasks?.items?.length&&e.tasks?.items?.length>0?(o(),l("div",lt,[(o(!0),l(w,null,I(e.tasks?.items,(r,f)=>(o(),V(a,{key:f,"model-value":r,class:"preview"},null,8,["model-value"]))),128))])):g("",!0),e.tasks?.items?.length===0?(o(),l("p",rt,n(e.$t("headshots.message.noTasks")),1)):g("",!0)],544)}const dt=v(ot,[["render",ct],["__scopeId","data-v-d79bcb1f"]]),pt="https://webhook.acedata.cloud/headshots",mt=$({name:"HeadshotsIndex",components:{ConfigPanel:Ve,Layout:oe,ApplicationStatus:J,RecentPanel:dt},inject:["initialized"],data(){return{task:void 0,job:0}},computed:{loading(){return this.$store.state.headshots?.status?.getApplications===C.Request},service(){return this.$store.state.headshots.service},credential(){return this.$store.state.headshots.credential},config(){return this.$store.state.headshots.config},initializing(){return this.$store.state.headshots.status.getApplications===C.Request},needApply(){return this.$store.state.headshots.status.getApplications===C.Success&&!this.application},application(){return this.$store.state.headshots.application},applications(){return this.$store.state.headshots.applications},tasks(){return this.$store.state.headshots.tasks}},watch:{tasks:{handler(e,s){e?.items?.length>s?.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=setInterval(()=>{this.onGetTasks()},5e3))},immediate:!0}},async mounted(){await this.onGetService()},async unmounted(){clearInterval(this.job)},methods:{async onReachTop(){console.debug("reached top"),await this.onGetTasks({createdAtMax:this.tasks?.items?.[0]?.created_at})},async onGetService(){console.debug("start onGetService"),await this.$store.dispatch("headshots/getService"),console.debug("end onGetService")},async onGetApplication(){console.debug("start onGetApplication"),await this.$store.dispatch("headshots/getApplications"),console.debug("end onGetApplication"),await this.onGetTasks()},onApply(){O.create({application:this.application}).then(({data:e})=>{this.application=e,k.success(this.$t("application.message.applySuccessfully"))}).catch(e=>{e?.response?.data?.code===B&&k.error(this.$t("application.message.alreadyApplied"))})},async onScrollDown(){setTimeout(()=>{const e=document.querySelector(".recent");e&&(e.scrollTop=e.scrollHeight)},500)},async onGetTasks(e){if(this.loading){console.debug("loading");return}console.debug("start onGetTasks",e);const{limit:s=5,createdAtMin:m,createdAtMax:u}=e||{};console.debug("limit",s,"createdAtMin",m,"createdAtMax",u),await this.$store.dispatch("headshots/getTasks",{limit:s,createdAtMin:m,createdAtMax:u})},async onGeneratePicture(){const e={...this.config,callback_url:pt},s=this.credential?.token;if(!s){console.error("no token specified");return}k.info(this.$t("headshots.message.startingTask")),j.generate(e,{token:s}).then(()=>{k.success(this.$t("headshots.message.startTaskSuccess")),this.$store.commit("headshots/setConfig",{config:void 0})}).catch(m=>{m?.response?.data?.error?.code===z?k.error(this.$t("headshots.message.usedUp")):k.error(this.$t("headshots.message.startTaskFailed"))}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})}}});function ut(e,s,m,u,b,y){const d=i("config-panel"),h=i("application-status"),a=i("recent-panel"),r=i("layout");return o(),V(r,null,{config:p(()=>[t(d,{onGenerate:e.onGeneratePicture},null,8,["onGenerate"])]),result:p(()=>[t(h,{initializing:e.initializing,application:e.application,applications:e.applications,service:e.service,"need-apply":e.needApply,class:"mb-4",onRefresh:e.onGetApplication,onSelect:s[0]||(s[0]=f=>e.$store.dispatch("headshots/setApplication",f))},null,8,["initializing","application","applications","service","need-apply","onRefresh"]),t(a,{class:"panel recent",onReachTop:e.onReachTop},null,8,["onReachTop"])]),_:1})}const Ft=v(mt,[["render",ut],["__scopeId","data-v-19d3c623"]]);export{Ft as default};
|