@acedatacloud/nexior 3.18.4 → 3.18.6
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-DoNWrMIn.js → Auth-B-h9LpgH.js} +1 -1
- package/dist/assets/{Callback-qfe2A1Cl.js → Callback-NGZUyB5h.js} +1 -1
- package/dist/assets/{Console-CkmGMbfk.css → Console-BAK6l-EJ.css} +1 -1
- package/dist/assets/Console-DCdoozOl.js +1 -0
- package/dist/assets/{Conversation-DEjpfchQ.css → Conversation-BnySvQJk.css} +1 -1
- package/dist/assets/{Conversation-CCk14M4O.js → Conversation-pI_gz3Yc.js} +3 -3
- package/dist/assets/{CopyToClipboard-CWTGukXW.js → CopyToClipboard-CxB4Os-F.js} +1 -1
- package/dist/assets/{Detail-LhkHY7I6.js → Detail-s4yeBAAU.js} +1 -1
- package/dist/assets/{EditArray-Dj4DJOxY.js → EditArray-BdoQ4ADX.js} +1 -1
- package/dist/assets/{Extra-BoPHaCrX.js → Extra-CTg08Uiu.js} +1 -1
- package/dist/assets/{FilePreview-QU_0fuqr.js → FilePreview-CaLTpiV3.js} +1 -1
- package/dist/assets/{History-D8wHzT81.js → History-BB5cQFhz.js} +1 -1
- package/dist/assets/{ImagePreview-B6H-c819.js → ImagePreview-DTGd8rDz.js} +1 -1
- package/dist/assets/ImageWrapper-DEadO_7m.css +1 -0
- package/dist/assets/{ImageWrapper-BjZhDlGd.js → ImageWrapper-ZZNi1Tf0.js} +1 -1
- package/dist/assets/{Index-Cc8GQVTf.js → Index-B7OuzOuM.js} +1 -1
- package/dist/assets/{Index-D5kseYoP.js → Index-BJRCFe5U.js} +1 -1
- package/dist/assets/{Index-CwEULQmd.js → Index-BSwon9tD.js} +1 -1
- package/dist/assets/{Index-D-laTBWt.js → Index-Bn5Xhp-X.js} +1 -1
- package/dist/assets/{Index-SUmwCSBi.js → Index-CU6ehDf4.js} +1 -1
- package/dist/assets/{Index-DWEr3dQ5.js → Index-CqTL24v6.js} +1 -1
- package/dist/assets/{Index-DoPVqoe7.js → Index-CxuTUJFQ.js} +1 -1
- package/dist/assets/{Index-C60NNo-n.js → Index-D9pD47Yt.js} +1 -1
- package/dist/assets/{Index-DazoOsEe.js → Index-DVrwtER0.js} +1 -1
- package/dist/assets/{Index-Dv3emySX.js → Index-Dd-1_p1M.js} +1 -1
- package/dist/assets/{Index-ydTvLji1.js → Index-QLrbEEGT.js} +1 -1
- package/dist/assets/Index-RKtQZrzA.css +1 -0
- package/dist/assets/{Index-CRn2hnXr.js → Index-SKDkobSu.js} +1 -1
- package/dist/assets/{Index-DwiTjnKq.js → Index-dhHW2EET.js} +1 -1
- package/dist/assets/{Index-D10t6YBv.js → Index-lzk6uZb0.js} +1 -1
- package/dist/assets/{InfoIcon-B_7NXzqM.js → InfoIcon-Bsrt1n4f.js} +1 -1
- package/dist/assets/{Invitees-Dwf5jf5R.js → Invitees-GUF2eAZ1.js} +1 -1
- package/dist/assets/{List-C8fER6VI.js → List-CUsWeLDb.js} +1 -1
- package/dist/assets/{List-DcH0a8aW.js → List-CXwqv-6q.js} +1 -1
- package/dist/assets/{List-a_yXYN9K.js → List-DpCi78hq.js} +1 -1
- package/dist/assets/{Login-CQj2rq-d.js → Login-CyvNwSMK.js} +1 -1
- package/dist/assets/Main-DA9Dbqkc.js +1 -0
- package/dist/assets/{Main-ciuyHaq3.css → Main-uNZuTHox.css} +1 -1
- package/dist/assets/{Navigator-BVabXyZw.css → Navigator-CGP8w-Hr.css} +1 -1
- package/dist/assets/{Navigator-3PzSmz6k.js → Navigator-DMj_mq4g.js} +1 -1
- package/dist/assets/NoTasks-qE38LAPT.js +1 -0
- package/dist/assets/{Pagination-D6MS_uJo.js → Pagination-CVtF1yOG.js} +1 -1
- package/dist/assets/{Status-CywhmmtI.js → Status-DVFs2WUp.js} +1 -1
- package/dist/assets/{Subscribe-dWvG_tL3.js → Subscribe-CfbVsfjU.js} +1 -1
- package/dist/assets/{VideoPlayer-B4vYbQji.js → VideoPlayer-BmdWeQBt.js} +1 -1
- package/dist/assets/{_baseClone-BeP5In-D.js → _baseClone-CRS_hbmQ.js} +1 -1
- package/dist/assets/{_baseIteratee-Gayx4zPC.js → _baseIteratee-5b2KyUcR.js} +1 -1
- package/dist/assets/{_initCloneObject-Hx3XrS5v.js → _initCloneObject-CDrM-DRb.js} +1 -1
- package/dist/assets/{castArray-BFNMyvNy.js → castArray-meeljStI.js} +1 -1
- package/dist/assets/{debounce-uq4Y0tBJ.js → debounce-CHZZjuqV.js} +1 -1
- package/dist/assets/{distribution-DsfLzv1o.js → distribution-DBz8z85L.js} +1 -1
- package/dist/assets/{dropdown-K7N91EB1.js → dropdown-DBGhP9d3.js} +1 -1
- package/dist/assets/{index-Kp6849pw.js → index-2S8RZDnf.js} +1 -1
- package/dist/assets/{index-Bp_hO4E0.js → index-3lo058YU.js} +25 -25
- package/dist/assets/{index-HvkIh69g.js → index-6EYLLWBi.js} +1 -1
- package/dist/assets/{index-1hGPlp5P.js → index-B13bU6Pc.js} +1 -1
- package/dist/assets/{index-De26v3kc.js → index-B3C-4A4c.js} +1 -1
- package/dist/assets/{index-CU0-t0AD.js → index-BBaBEPdv.js} +1 -1
- package/dist/assets/{index-BJYfdB7L.js → index-BGr2zc_b.js} +1 -1
- package/dist/assets/{index-DLOV623W.js → index-BbcOj7dc.js} +1 -1
- package/dist/assets/{index-2jAF6ZPA.js → index-Bc76ybrq.js} +1 -1
- package/dist/assets/{index-DNAKdnzC.js → index-BexKdMqT.js} +1 -1
- package/dist/assets/{index-6eG4Alfo.js → index-BgJAqVc9.js} +1 -1
- package/dist/assets/{index-C6-YAIfm.js → index-BtzoeCCU.js} +1 -1
- package/dist/assets/{index-Badrs_Tv.js → index-BuiYbTBs.js} +1 -1
- package/dist/assets/{index-RaOl9MLo.js → index-Bul-eFT9.js} +1 -1
- package/dist/assets/{index-Dd5KxKjr.js → index-C0ozXmL_.js} +1 -1
- package/dist/assets/{index-ADnAfaIo.js → index-Cal8CXkb.js} +1 -1
- package/dist/assets/{index-D5q2zvKq.js → index-CbrIDsQE.js} +1 -1
- package/dist/assets/{index-DJHmsgYy.js → index-Co74fEHD.js} +1 -1
- package/dist/assets/{index-D0XQbOYS.js → index-CoK_goO3.js} +1 -1
- package/dist/assets/{index-Bc2xTmqI.js → index-Cp3RtlLn.js} +1 -1
- package/dist/assets/{index-DwST9-YB.js → index-DKUshCU9.js} +1 -1
- package/dist/assets/{index-By0I6dZ-.js → index-DSki3J7c.js} +1 -1
- package/dist/assets/{index-BWb1p7aO.js → index-DSwhKvGW.js} +1 -1
- package/dist/assets/{index-Da4hcGYx.js → index-DTXoPlEl.js} +1 -1
- package/dist/assets/{index-CzWlUUuG.js → index-Dp8fn9QU.js} +1 -1
- package/dist/assets/{index-C9fMP4wC.js → index-KT3ISZBT.js} +1 -1
- package/dist/assets/{index-DsJzwtEG.js → index-LvZvT_fN.js} +1 -1
- package/dist/assets/{index-B9ydRjkI.js → index-cmgOdrHT.js} +1 -1
- package/dist/assets/{index-DB_BXJo9.css → index-kRFwCZww.css} +1 -1
- package/dist/assets/{index-IIDcIl8W.js → index-uIvyDtTT.js} +1 -1
- package/dist/assets/{index.es-DuwM2xpS.js → index.es-CWv4kFfI.js} +1 -1
- package/dist/assets/{isEqual-CXl2hOES.js → isEqual-C_oa6Ou9.js} +1 -1
- package/dist/assets/{isPlainObject-pD7JBCci.js → isPlainObject-DdJA7vs8.js} +1 -1
- package/dist/assets/{order-Bjjw7v-S.js → order-CH7ddJ2v.js} +1 -1
- package/dist/assets/{price-Dyx4MeTf.js → price-CVM2KZiS.js} +1 -1
- package/dist/assets/{strings-Dqqb4Qff.js → strings-DgUrSd6E.js} +1 -1
- package/dist/assets/{typescript-BpY75mvT.js → typescript-BURh-phI.js} +1 -1
- package/dist/assets/{use-form-item-C7v6lxI-.js → use-form-item-BDNX4lww.js} +1 -1
- package/dist/index.html +2 -2
- package/package.json +1 -1
- package/dist/assets/Console-D2B4s5xu.js +0 -1
- package/dist/assets/ImageWrapper-cN_O9DCY.css +0 -1
- package/dist/assets/Index-B8qS_0St.css +0 -1
- package/dist/assets/Main-Ck_4o8yN.js +0 -1
- package/dist/assets/NoTasks-C_P7dqM5.css +0 -1
- package/dist/assets/NoTasks-XPY3isSt.js +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
import{F as E}from"./index.es-DuwM2xpS.js";import{E as S}from"./index-Dd5KxKjr.js";import{E as P}from"./index-BWb1p7aO.js";import{d as $,h as g,b as i,t as a,k as t,r as U,j as f,l as s,o as l,eI as R,x as r,F as V,v as T,i as y,eJ as D,eK as F,c6 as B,D as h,y as x,n as C,eL as O,dr as M,dm as N}from"./index-Bp_hO4E0.js";import{E as L,a as G}from"./index-By0I6dZ-.js";import{I as A}from"./InfoIcon-B_7NXzqM.js";import{E as q,a as z}from"./index-CzWlUUuG.js";import{I as X}from"./ImagePreview-B6H-c819.js";import{E as H}from"./index-Bc2xTmqI.js";import{E as k}from"./index-C6-YAIfm.js";import{E as K}from"./index-BJYfdB7L.js";import{C as J,N as W,B as Q}from"./NoTasks-XPY3isSt.js";import{a as Y}from"./price-Dyx4MeTf.js";import{C as Z}from"./CopyToClipboard-CWTGukXW.js";import{I as ee}from"./ImageWrapper-BjZhDlGd.js";import{E as te}from"./index-2jAF6ZPA.js";import{E as oe}from"./index-CU0-t0AD.js";import"./use-form-item-C7v6lxI-.js";import"./index-r5W6hzzQ.js";import"./index-Badrs_Tv.js";import"./index-6eG4Alfo.js";import"./typescript-BpY75mvT.js";import"./index-DJHmsgYy.js";import"./strings-Dqqb4Qff.js";import"./castArray-BFNMyvNy.js";import"./isEqual-CXl2hOES.js";import"./_initCloneObject-Hx3XrS5v.js";import"./debounce-uq4Y0tBJ.js";import"./_baseIteratee-Gayx4zPC.js";import"./index-Da4hcGYx.js";import"./index-DwST9-YB.js";import"./_baseClone-BeP5In-D.js";import"./index-DsJzwtEG.js";import"./index-1hGPlp5P.js";const se=$({name:"LayoutFlux",components:{ElDrawer:P,ElButton:S,FontAwesomeIcon:E},data(){return{drawer:!1}}}),ne={class:"main"},ae={class:"config"},le={class:"result"};function re(e,o,m,p,v,b){const c=s("font-awesome-icon"),u=s("el-button"),n=s("el-drawer");return l(),i("div",ne,[a("div",ae,[U(e.$slots,"config",{},void 0,!0)]),a("div",le,[U(e.$slots,"result",{},void 0,!0)]),t(u,{circle:"",class:"menu",onClick:o[0]||(o[0]=d=>e.drawer=!0)},{default:f(()=>[t(c,{icon:"fa-solid fa-magic"})]),_:1}),t(n,{modelValue:e.drawer,"onUpdate:modelValue":o[1]||(o[1]=d=>e.drawer=d),direction:"ltr","with-header":!1,size:"340px",class:"drawer"},{default:f(()=>[U(e.$slots,"config",{},void 0,!0)]),_:3},8,["modelValue"])])}const ie=g(se,[["render",re],["__scopeId","data-v-126e6454"]]),ce=$({name:"ModelSelector",components:{ElSelect:G,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=R)}}),ue={class:"field"},de={class:"title font-bold"};function pe(e,o,m,p,v,b){const c=s("el-option"),u=s("el-select");return l(),i("div",ue,[a("h2",de,r(e.$t("flux.name.model")),1),t(u,{modelValue:e.value,"onUpdate:modelValue":o[0]||(o[0]=n=>e.value=n),class:"value",placeholder:e.$t("flux.placeholder.select")},{default:f(()=>[(l(!0),i(V,null,T(e.options,n=>(l(),y(c,{key:n.value,label:n.label,value:n.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const me=g(ce,[["render",pe],["__scopeId","data-v-2e94cca6"]]),fe=$({name:"CountSelector",components:{ElSlider:z,InfoIcon:A,ElInputNumber:q},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)}}),_e={class:"flex justify-between"},he={class:"flex justify-start items-center"},$e={class:"text-sm font-bold"},ge={class:"flex justify-end items-center"},ve={class:"w-full"};function be(e,o,m,p,v,b){const c=s("info-icon"),u=s("el-input-number"),n=s("el-slider");return l(),i("div",null,[a("div",_e,[a("div",he,[a("span",$e,r(e.$t("flux.name.numbers")),1),t(c,{content:e.$t("flux.description.numbers")},null,8,["content"])]),a("div",ge,[t(u,{modelValue:e.value,"onUpdate:modelValue":o[0]||(o[0]=d=>e.value=d),"controls-position":"right"},null,8,["modelValue"])])]),a("div",ve,[t(n,{modelValue:e.value,"onUpdate:modelValue":o[1]||(o[1]=d=>e.value=d),min:1,max:4,step:1},null,8,["modelValue"])])])}const xe=g(fe,[["render",be]]),we=$({name:"ActionSelector",components:{ElSelect:G,ElOption:L},props:{modelValue:{type:String,default:void 0}},emits:["update:modelValue"],data(){return{options:[{value:"generate",label:this.$t("flux.name.generate")},{value:"edits",label:this.$t("flux.name.edits")}]}},computed:{value:{get(){return this.$store.state.flux?.config?.action},set(e){this.$store.commit("flux/setConfig",{...this.$store.state.flux.config,action:e})}}},mounted(){this.value||(this.value=F)}}),ke={class:"field"},ye={class:"title font-bold"};function Ve(e,o,m,p,v,b){const c=s("el-option"),u=s("el-select");return l(),i("div",ke,[a("h2",ye,r(e.$t("flux.name.task")),1),t(u,{modelValue:e.value,"onUpdate:modelValue":o[0]||(o[0]=n=>e.value=n),class:"value",placeholder:e.$t("flux.placeholder.select")},{default:f(()=>[(l(!0),i(V,null,T(e.options,n=>(l(),y(c,{key:n.value,label:n.label,value:n.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const Ie=g(we,[["render",Ve],["__scopeId","data-v-81fd05e5"]]),Ee=$({name:"ImageUrlInput",components:{ElUpload:H,ElButton:S,InfoIcon:A,FontAwesomeIcon:E,ImagePreview:X},emits:["change"],data(){return{fileList:[],uploadUrl:B()+"/api/v1/files/"}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},urls(){return this.fileList.map(e=>e?.response?.file_url)}},watch:{urls:{handler(e){console.debug("URLs changed:",e),this.$store.commit("flux/setConfig",{...this.$store.state.flux.config,image_url:e[0]})}}},methods:{onExceed(){k.warning(this.$t("flux.message.uploadStartImageExceed"))},onError(){k.error(this.$t("flux.message.uploadStartImageError"))}}}),Te={class:"relative"},Ue={class:"flex justify-between"},Se={class:"flex justify-start items-center"},Ce={class:"text-sm font-bold"};function Ae(e,o,m,p,v,b){const c=s("info-icon"),u=s("image-preview"),n=s("font-awesome-icon"),d=s("el-button"),w=s("el-upload");return l(),i("div",Te,[a("div",Ue,[a("div",Se,[a("span",Ce,r(e.$t("flux.name.imageUrl")),1),t(c,{content:e.$t("flux.description.imageUrl")},null,8,["content"])])]),t(w,{"file-list":e.fileList,"onUpdate:fileList":o[0]||(o[0]=_=>e.fileList=_),name:"file",limit:5,class:"upload-wrapper",accept:".png,.jpg,.jpeg,.gif,.bmp,.webp",multiple:!0,"list-type":"picture",action:e.uploadUrl,"on-exceed":e.onExceed,"on-error":e.onError,headers:e.headers},{file:f(({file:_})=>[t(u,{url:_.url||_.response?.file_url,name:_.name,percentage:_.percentage,onRemove:I=>e.fileList.splice(e.fileList.indexOf(_),1)},null,8,["url","name","percentage","onRemove"])]),default:f(()=>[t(d,{round:"",type:"primary",size:"small",class:"btn btn-upload"},{default:f(()=>[t(n,{icon:"fa-solid fa-upload",class:"icon mr-1"}),h(" "+r(e.$t("flux.button.uploadImageUrl")),1)]),_:1})]),_:1},8,["file-list","action","on-exceed","on-error","headers"])])}const Le=g(Ee,[["render",Ae],["__scopeId","data-v-04710032"]]),Ge="",je=$({name:"PromptInput",components:{ElInput:K,InfoIcon:A},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=Ge)}}),Pe={class:"field"},Re={class:"box"},De={class:"title font-bold"};function Fe(e,o,m,p,v,b){const c=s("info-icon"),u=s("el-input");return l(),i("div",Pe,[a("div",Re,[a("h2",De,r(e.$t("flux.name.prompt")),1),t(c,{content:e.$t("flux.description.prompt"),class:"info"},null,8,["content"])]),t(u,{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 Be=g(je,[["render",Fe],["__scopeId","data-v-4c101a17"]]),Oe=$({name:"PresetPanel",components:{ElButton:S,FontAwesomeIcon:E,PromptInput:Be,ModelSelector:me,CountSelector:xe,Consumption:J,ActionSelector:Ie,ImageUrlInput:Le},emits:["generate"],computed:{config(){return this.$store.state.flux?.config},consumption(){return Y(this.config,this.service?.metadata?.price)},service(){return this.$store.state.flux?.service}},methods:{onGenerate(){this.$emit("generate")}}}),Me={class:"flex flex-col h-full"},Ne={class:"flex-1 overflow-y-auto p-[15px]"},qe={class:"flex flex-col items-center justify-center px-[15px] pb-[15px]"};function ze(e,o,m,p,v,b){const c=s("action-selector"),u=s("prompt-input"),n=s("image-url-input"),d=s("model-selector"),w=s("count-selector"),_=s("consumption"),I=s("font-awesome-icon"),j=s("el-button");return l(),i("div",Me,[a("div",Ne,[t(c,{class:"mb-4"}),t(u,{class:"mb-4"}),e.config?.action==="edits"?(l(),y(n,{key:0,class:"mb-4"})):x("",!0),t(d,{class:"mb-4"}),t(w,{class:"mb-4"})]),a("div",qe,[t(_,{value:e.consumption,service:e.service},null,8,["value","service"]),t(j,{type:"primary",class:"btn w-full",round:"",onClick:e.onGenerate},{default:f(()=>[t(I,{icon:"fa-solid fa-magic",class:"mr-2"}),h(" "+r(e.$t("flux.button.generate")),1)]),_:1},8,["onClick"])])])}const Xe=g(Oe,[["render",ze]]),He=$({name:"TaskPreview",components:{ElImage:oe,CopyToClipboard:Z,FontAwesomeIcon:E,ElAlert:te,ImageWrapper:ee},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(m=>{let p=m;o&&(p.action=o),e.push(p)}),e}},methods:{onDownload(e,o){e.stopPropagation(),console.log("on download"),window.open(o,"_blank")},onOpenImage(e){window.open(e,"_blank")}}}),Ke={class:"preview"},Je={class:"left"},We={class:"main"},Qe={class:"bot"},Ye={class:"datetime"},Ze={class:"info"},et={key:0,class:"prompt mt-2"},tt={key:0},ot={key:0,class:C({content:!0,failed:!0})},st={class:"flex justify-start items-center gap-4 w-full overflow-x-auto"},nt={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},at={class:"text-[var(--el-text-color-regular)] text-xs mb-0"},lt={key:1,class:C({content:!0})},rt={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},it={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},ct={class:"text-[var(--el-text-color-regular)] text-xs mb-0"},ut={key:2,class:C({content:!0})},dt={class:"text-[var(--el-text-color-regular)] text-xs mb-0"};function pt(e,o,m,p,v,b){const c=s("el-image"),u=s("image-wrapper"),n=s("font-awesome-icon"),d=s("copy-to-clipboard"),w=s("el-alert");return l(),i("div",Ke,[a("div",Je,[t(c,{src:"https://cdn.acedata.cloud/ogm2oa.png",class:"avatar"})]),a("div",We,[a("div",Qe,[h(r(e.$t("flux.name.fluxBot"))+" ",1),a("span",Ye,r(e.$dayjs.format(""+new Date(parseFloat((e.modelValue?.created_at||"").toString())*1e3))),1)]),a("div",Ze,[e.modelValue?.request?.prompt?(l(),i("p",et,[h(r(e.modelValue?.request?.prompt)+" ",1),e.modelValue?.response?x("",!0):(l(),i("span",tt," - ("+r(e.$t("flux.status.pending"))+") ",1))])):x("",!0)]),e.modelValue?.response?.success===!0?(l(),i("div",ot,[a("div",st,[(l(!0),i(V,null,T(e.images,(_,I)=>(l(),y(u,{key:I,src:_?.image_url,"raw-src":_?.image_url,"model-value":_},null,8,["src","raw-src","model-value"]))),128))]),t(w,{closable:!1,class:"mt-2 success"},{default:f(()=>[a("p",nt,[t(n,{icon:"fa-solid fa-hashtag",class:"mr-1"}),h(" "+r(e.$t("flux.name.model"))+": "+r(e.modelValue?.request?.model),1)]),a("p",at,[t(n,{icon:"fa-solid fa-magic",class:"mr-1"}),h(" "+r(e.$t("flux.name.taskId"))+": "+r(e.modelValue?.id)+" ",1),t(d,{content:e.modelValue?.id,class:"btn-copy inline-block"},null,8,["content"])])]),_:1})])):x("",!0),e.modelValue?.response?.success===!1?(l(),i("div",lt,[t(w,{closable:!1,class:"failure"},{template:f(()=>[t(n,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),h(" "+r(e.$t("flux.name.failure")),1)]),default:f(()=>[a("p",rt,[t(n,{icon:"fa-solid fa-magic",class:"mr-1"}),h(" "+r(e.$t("flux.name.taskId"))+": "+r(e.modelValue?.id)+" ",1),t(d,{content:e.modelValue?.id,class:"btn-copy"},null,8,["content"])]),a("p",it,[t(n,{icon:"fa-solid fa-circle-info",class:"mr-1"}),h(" "+r(e.$t("flux.name.failureReason"))+": "+r(e.modelValue?.response?.error?.message)+" ",1),t(d,{content:e.modelValue?.response?.error?.message,class:"btn-copy"},null,8,["content"])]),a("p",ct,[t(n,{icon:"fa-solid fa-hashtag",class:"mr-1"}),h(" "+r(e.$t("flux.name.traceId"))+": "+r(e.modelValue?.response?.trace_id)+" ",1),t(d,{content:e.modelValue?.response?.trace_id,class:"btn-copy"},null,8,["content"])])]),_:1})])):x("",!0),e.modelValue?.response?x("",!0):(l(),i("div",ut,[t(w,{closable:!1,class:"info"},{template:f(()=>[t(n,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),h(" "+r(e.$t("flux.name.failure")),1)]),default:f(()=>[a("p",dt,[t(n,{icon:"fa-solid fa-magic",class:"mr-1"}),h(" "+r(e.$t("flux.name.taskId"))+": "+r(e.modelValue?.id)+" ",1),t(d,{content:e.modelValue?.id,class:"btn-copy"},null,8,["content"])])]),_:1})]))])])}const mt=g(He,[["render",pt],["__scopeId","data-v-fd5838a5"]]),ft=$({name:"RecentPanel",components:{TaskPreview:mt,BotPlaceholder:Q,NoTasks:W},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")}}}),_t={key:0},ht={key:1,class:"tasks h-full w-full overflow-y-auto"},$t={key:2,class:"w-full h-full flex items-center justify-center"};function gt(e,o,m,p,v,b){const c=s("bot-placeholder"),u=s("task-preview"),n=s("no-tasks");return l(),i(V,null,[e.tasks?.items===void 0?(l(),i("div",_t,[t(c)])):e.tasks?.items?.length&&e.tasks?.items?.length>0?(l(),i("div",ht,[(l(!0),i(V,null,T(e.tasks?.items,d=>(l(),y(u,{key:d.id,"model-value":d},null,8,["model-value"]))),128))])):x("",!0),e.tasks?.items?.length===0?(l(),i("div",$t,[t(n)])):x("",!0)],64)}const vt=g(ft,[["render",gt]]),bt="https://webhook.acedata.cloud/flux",xt=$({name:"FluxIndex",components:{ConfigPanel:Xe,Layout:ie,RecentPanel:vt},inject:["initialized"],data(){return{task:void 0,job:0}},computed:{loading(){return this.$store.state.flux?.status?.getApplications===N.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:m,createdAtMax:p}=e||{};console.debug("limit",o,"createdAtMin",m,"createdAtMax",p),await this.$store.dispatch("flux/getTasks",{limit:o,createdAtMin:m,createdAtMax:p})},async onGenerate(){const e={...this.config,callback_url:bt},o=this.credential?.token;if(!o){console.error("no token specified");return}k.info(this.$t("flux.message.startingTask")),O.generate(e,{token:o}).then(()=>{k.success(this.$t("flux.message.startTaskSuccess"))}).catch(m=>{const p=m?.response?.data;p?.error?.code===M?k.error(this.$t("flux.message.usedUp")):k.error(this.$t("flux.message.startTaskFailed")+p?.error?.message)}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})}}});function wt(e,o,m,p,v,b){const c=s("config-panel"),u=s("recent-panel"),n=s("layout");return l(),y(n,null,{config:f(()=>[t(c,{onGenerate:e.onGenerate},null,8,["onGenerate"])]),result:f(()=>[t(u,{onReachTop:e.onReachTop},null,8,["onReachTop"])]),_:1})}const so=g(xt,[["render",wt]]);export{so as default};
|
|
1
|
+
import{F as E}from"./index.es-CWv4kFfI.js";import{E as S}from"./index-C0ozXmL_.js";import{E as P}from"./index-DSwhKvGW.js";import{d as $,h as g,b as i,t as a,k as t,r as U,j as f,l as s,o as l,eI as R,x as r,F as V,v as T,i as y,eJ as D,eK as F,c6 as B,D as h,y as x,n as C,eL as O,dr as M,dm as N}from"./index-3lo058YU.js";import{E as L,a as G}from"./index-DSki3J7c.js";import{I as A}from"./InfoIcon-Bsrt1n4f.js";import{E as q,a as z}from"./index-Dp8fn9QU.js";import{I as X}from"./ImagePreview-DTGd8rDz.js";import{E as H}from"./index-Cp3RtlLn.js";import{E as k}from"./index-BtzoeCCU.js";import{E as K}from"./index-BGr2zc_b.js";import{C as J,N as W,B as Q}from"./NoTasks-qE38LAPT.js";import{a as Y}from"./price-CVM2KZiS.js";import{C as Z}from"./CopyToClipboard-CxB4Os-F.js";import{I as ee}from"./ImageWrapper-ZZNi1Tf0.js";import{E as te}from"./index-Bc76ybrq.js";import{E as oe}from"./index-BBaBEPdv.js";import"./use-form-item-BDNX4lww.js";import"./index-r5W6hzzQ.js";import"./index-BuiYbTBs.js";import"./index-BgJAqVc9.js";import"./typescript-BURh-phI.js";import"./index-Co74fEHD.js";import"./strings-DgUrSd6E.js";import"./castArray-meeljStI.js";import"./isEqual-C_oa6Ou9.js";import"./_initCloneObject-CDrM-DRb.js";import"./debounce-CHZZjuqV.js";import"./_baseIteratee-5b2KyUcR.js";import"./index-DTXoPlEl.js";import"./index-DKUshCU9.js";import"./_baseClone-CRS_hbmQ.js";import"./index-LvZvT_fN.js";import"./index-B13bU6Pc.js";const se=$({name:"LayoutFlux",components:{ElDrawer:P,ElButton:S,FontAwesomeIcon:E},data(){return{drawer:!1}}}),ne={class:"main"},ae={class:"config"},le={class:"result"};function re(e,o,m,p,v,b){const c=s("font-awesome-icon"),u=s("el-button"),n=s("el-drawer");return l(),i("div",ne,[a("div",ae,[U(e.$slots,"config",{},void 0,!0)]),a("div",le,[U(e.$slots,"result",{},void 0,!0)]),t(u,{circle:"",class:"menu",onClick:o[0]||(o[0]=d=>e.drawer=!0)},{default:f(()=>[t(c,{icon:"fa-solid fa-magic"})]),_:1}),t(n,{modelValue:e.drawer,"onUpdate:modelValue":o[1]||(o[1]=d=>e.drawer=d),direction:"ltr","with-header":!1,size:"340px",class:"drawer"},{default:f(()=>[U(e.$slots,"config",{},void 0,!0)]),_:3},8,["modelValue"])])}const ie=g(se,[["render",re],["__scopeId","data-v-126e6454"]]),ce=$({name:"ModelSelector",components:{ElSelect:G,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=R)}}),ue={class:"field"},de={class:"title font-bold"};function pe(e,o,m,p,v,b){const c=s("el-option"),u=s("el-select");return l(),i("div",ue,[a("h2",de,r(e.$t("flux.name.model")),1),t(u,{modelValue:e.value,"onUpdate:modelValue":o[0]||(o[0]=n=>e.value=n),class:"value",placeholder:e.$t("flux.placeholder.select")},{default:f(()=>[(l(!0),i(V,null,T(e.options,n=>(l(),y(c,{key:n.value,label:n.label,value:n.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const me=g(ce,[["render",pe],["__scopeId","data-v-2e94cca6"]]),fe=$({name:"CountSelector",components:{ElSlider:z,InfoIcon:A,ElInputNumber:q},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)}}),_e={class:"flex justify-between"},he={class:"flex justify-start items-center"},$e={class:"text-sm font-bold"},ge={class:"flex justify-end items-center"},ve={class:"w-full"};function be(e,o,m,p,v,b){const c=s("info-icon"),u=s("el-input-number"),n=s("el-slider");return l(),i("div",null,[a("div",_e,[a("div",he,[a("span",$e,r(e.$t("flux.name.numbers")),1),t(c,{content:e.$t("flux.description.numbers")},null,8,["content"])]),a("div",ge,[t(u,{modelValue:e.value,"onUpdate:modelValue":o[0]||(o[0]=d=>e.value=d),"controls-position":"right"},null,8,["modelValue"])])]),a("div",ve,[t(n,{modelValue:e.value,"onUpdate:modelValue":o[1]||(o[1]=d=>e.value=d),min:1,max:4,step:1},null,8,["modelValue"])])])}const xe=g(fe,[["render",be]]),we=$({name:"ActionSelector",components:{ElSelect:G,ElOption:L},props:{modelValue:{type:String,default:void 0}},emits:["update:modelValue"],data(){return{options:[{value:"generate",label:this.$t("flux.name.generate")},{value:"edits",label:this.$t("flux.name.edits")}]}},computed:{value:{get(){return this.$store.state.flux?.config?.action},set(e){this.$store.commit("flux/setConfig",{...this.$store.state.flux.config,action:e})}}},mounted(){this.value||(this.value=F)}}),ke={class:"field"},ye={class:"title font-bold"};function Ve(e,o,m,p,v,b){const c=s("el-option"),u=s("el-select");return l(),i("div",ke,[a("h2",ye,r(e.$t("flux.name.task")),1),t(u,{modelValue:e.value,"onUpdate:modelValue":o[0]||(o[0]=n=>e.value=n),class:"value",placeholder:e.$t("flux.placeholder.select")},{default:f(()=>[(l(!0),i(V,null,T(e.options,n=>(l(),y(c,{key:n.value,label:n.label,value:n.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const Ie=g(we,[["render",Ve],["__scopeId","data-v-81fd05e5"]]),Ee=$({name:"ImageUrlInput",components:{ElUpload:H,ElButton:S,InfoIcon:A,FontAwesomeIcon:E,ImagePreview:X},emits:["change"],data(){return{fileList:[],uploadUrl:B()+"/api/v1/files/"}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},urls(){return this.fileList.map(e=>e?.response?.file_url)}},watch:{urls:{handler(e){console.debug("URLs changed:",e),this.$store.commit("flux/setConfig",{...this.$store.state.flux.config,image_url:e[0]})}}},methods:{onExceed(){k.warning(this.$t("flux.message.uploadStartImageExceed"))},onError(){k.error(this.$t("flux.message.uploadStartImageError"))}}}),Te={class:"relative"},Ue={class:"flex justify-between"},Se={class:"flex justify-start items-center"},Ce={class:"text-sm font-bold"};function Ae(e,o,m,p,v,b){const c=s("info-icon"),u=s("image-preview"),n=s("font-awesome-icon"),d=s("el-button"),w=s("el-upload");return l(),i("div",Te,[a("div",Ue,[a("div",Se,[a("span",Ce,r(e.$t("flux.name.imageUrl")),1),t(c,{content:e.$t("flux.description.imageUrl")},null,8,["content"])])]),t(w,{"file-list":e.fileList,"onUpdate:fileList":o[0]||(o[0]=_=>e.fileList=_),name:"file",limit:5,class:"upload-wrapper",accept:".png,.jpg,.jpeg,.gif,.bmp,.webp",multiple:!0,"list-type":"picture",action:e.uploadUrl,"on-exceed":e.onExceed,"on-error":e.onError,headers:e.headers},{file:f(({file:_})=>[t(u,{url:_.url||_.response?.file_url,name:_.name,percentage:_.percentage,onRemove:I=>e.fileList.splice(e.fileList.indexOf(_),1)},null,8,["url","name","percentage","onRemove"])]),default:f(()=>[t(d,{round:"",type:"primary",size:"small",class:"btn btn-upload"},{default:f(()=>[t(n,{icon:"fa-solid fa-upload",class:"icon mr-1"}),h(" "+r(e.$t("flux.button.uploadImageUrl")),1)]),_:1})]),_:1},8,["file-list","action","on-exceed","on-error","headers"])])}const Le=g(Ee,[["render",Ae],["__scopeId","data-v-04710032"]]),Ge="",je=$({name:"PromptInput",components:{ElInput:K,InfoIcon:A},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=Ge)}}),Pe={class:"field"},Re={class:"box"},De={class:"title font-bold"};function Fe(e,o,m,p,v,b){const c=s("info-icon"),u=s("el-input");return l(),i("div",Pe,[a("div",Re,[a("h2",De,r(e.$t("flux.name.prompt")),1),t(c,{content:e.$t("flux.description.prompt"),class:"info"},null,8,["content"])]),t(u,{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 Be=g(je,[["render",Fe],["__scopeId","data-v-4c101a17"]]),Oe=$({name:"PresetPanel",components:{ElButton:S,FontAwesomeIcon:E,PromptInput:Be,ModelSelector:me,CountSelector:xe,Consumption:J,ActionSelector:Ie,ImageUrlInput:Le},emits:["generate"],computed:{config(){return this.$store.state.flux?.config},consumption(){return Y(this.config,this.service?.metadata?.price)},service(){return this.$store.state.flux?.service}},methods:{onGenerate(){this.$emit("generate")}}}),Me={class:"flex flex-col h-full"},Ne={class:"flex-1 overflow-y-auto p-[15px]"},qe={class:"flex flex-col items-center justify-center px-[15px] pb-[15px]"};function ze(e,o,m,p,v,b){const c=s("action-selector"),u=s("prompt-input"),n=s("image-url-input"),d=s("model-selector"),w=s("count-selector"),_=s("consumption"),I=s("font-awesome-icon"),j=s("el-button");return l(),i("div",Me,[a("div",Ne,[t(c,{class:"mb-4"}),t(u,{class:"mb-4"}),e.config?.action==="edits"?(l(),y(n,{key:0,class:"mb-4"})):x("",!0),t(d,{class:"mb-4"}),t(w,{class:"mb-4"})]),a("div",qe,[t(_,{value:e.consumption,service:e.service},null,8,["value","service"]),t(j,{type:"primary",class:"btn w-full",round:"",onClick:e.onGenerate},{default:f(()=>[t(I,{icon:"fa-solid fa-magic",class:"mr-2"}),h(" "+r(e.$t("flux.button.generate")),1)]),_:1},8,["onClick"])])])}const Xe=g(Oe,[["render",ze]]),He=$({name:"TaskPreview",components:{ElImage:oe,CopyToClipboard:Z,FontAwesomeIcon:E,ElAlert:te,ImageWrapper:ee},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(m=>{let p=m;o&&(p.action=o),e.push(p)}),e}},methods:{onDownload(e,o){e.stopPropagation(),console.log("on download"),window.open(o,"_blank")},onOpenImage(e){window.open(e,"_blank")}}}),Ke={class:"preview"},Je={class:"left"},We={class:"main"},Qe={class:"bot"},Ye={class:"datetime"},Ze={class:"info"},et={key:0,class:"prompt mt-2"},tt={key:0},ot={key:0,class:C({content:!0,failed:!0})},st={class:"flex justify-start items-center gap-4 w-full overflow-x-auto"},nt={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},at={class:"text-[var(--el-text-color-regular)] text-xs mb-0"},lt={key:1,class:C({content:!0})},rt={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},it={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},ct={class:"text-[var(--el-text-color-regular)] text-xs mb-0"},ut={key:2,class:C({content:!0})},dt={class:"text-[var(--el-text-color-regular)] text-xs mb-0"};function pt(e,o,m,p,v,b){const c=s("el-image"),u=s("image-wrapper"),n=s("font-awesome-icon"),d=s("copy-to-clipboard"),w=s("el-alert");return l(),i("div",Ke,[a("div",Je,[t(c,{src:"https://cdn.acedata.cloud/ogm2oa.png",class:"avatar"})]),a("div",We,[a("div",Qe,[h(r(e.$t("flux.name.fluxBot"))+" ",1),a("span",Ye,r(e.$dayjs.format(""+new Date(parseFloat((e.modelValue?.created_at||"").toString())*1e3))),1)]),a("div",Ze,[e.modelValue?.request?.prompt?(l(),i("p",et,[h(r(e.modelValue?.request?.prompt)+" ",1),e.modelValue?.response?x("",!0):(l(),i("span",tt," - ("+r(e.$t("flux.status.pending"))+") ",1))])):x("",!0)]),e.modelValue?.response?.success===!0?(l(),i("div",ot,[a("div",st,[(l(!0),i(V,null,T(e.images,(_,I)=>(l(),y(u,{key:I,src:_?.image_url,"raw-src":_?.image_url,"model-value":_},null,8,["src","raw-src","model-value"]))),128))]),t(w,{closable:!1,class:"mt-2 success"},{default:f(()=>[a("p",nt,[t(n,{icon:"fa-solid fa-hashtag",class:"mr-1"}),h(" "+r(e.$t("flux.name.model"))+": "+r(e.modelValue?.request?.model),1)]),a("p",at,[t(n,{icon:"fa-solid fa-magic",class:"mr-1"}),h(" "+r(e.$t("flux.name.taskId"))+": "+r(e.modelValue?.id)+" ",1),t(d,{content:e.modelValue?.id,class:"btn-copy inline-block"},null,8,["content"])])]),_:1})])):x("",!0),e.modelValue?.response?.success===!1?(l(),i("div",lt,[t(w,{closable:!1,class:"failure"},{template:f(()=>[t(n,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),h(" "+r(e.$t("flux.name.failure")),1)]),default:f(()=>[a("p",rt,[t(n,{icon:"fa-solid fa-magic",class:"mr-1"}),h(" "+r(e.$t("flux.name.taskId"))+": "+r(e.modelValue?.id)+" ",1),t(d,{content:e.modelValue?.id,class:"btn-copy"},null,8,["content"])]),a("p",it,[t(n,{icon:"fa-solid fa-circle-info",class:"mr-1"}),h(" "+r(e.$t("flux.name.failureReason"))+": "+r(e.modelValue?.response?.error?.message)+" ",1),t(d,{content:e.modelValue?.response?.error?.message,class:"btn-copy"},null,8,["content"])]),a("p",ct,[t(n,{icon:"fa-solid fa-hashtag",class:"mr-1"}),h(" "+r(e.$t("flux.name.traceId"))+": "+r(e.modelValue?.response?.trace_id)+" ",1),t(d,{content:e.modelValue?.response?.trace_id,class:"btn-copy"},null,8,["content"])])]),_:1})])):x("",!0),e.modelValue?.response?x("",!0):(l(),i("div",ut,[t(w,{closable:!1,class:"info"},{template:f(()=>[t(n,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),h(" "+r(e.$t("flux.name.failure")),1)]),default:f(()=>[a("p",dt,[t(n,{icon:"fa-solid fa-magic",class:"mr-1"}),h(" "+r(e.$t("flux.name.taskId"))+": "+r(e.modelValue?.id)+" ",1),t(d,{content:e.modelValue?.id,class:"btn-copy"},null,8,["content"])])]),_:1})]))])])}const mt=g(He,[["render",pt],["__scopeId","data-v-fd5838a5"]]),ft=$({name:"RecentPanel",components:{TaskPreview:mt,BotPlaceholder:Q,NoTasks:W},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")}}}),_t={key:0},ht={key:1,class:"tasks h-full w-full overflow-y-auto"},$t={key:2,class:"w-full h-full flex items-center justify-center"};function gt(e,o,m,p,v,b){const c=s("bot-placeholder"),u=s("task-preview"),n=s("no-tasks");return l(),i(V,null,[e.tasks?.items===void 0?(l(),i("div",_t,[t(c)])):e.tasks?.items?.length&&e.tasks?.items?.length>0?(l(),i("div",ht,[(l(!0),i(V,null,T(e.tasks?.items,d=>(l(),y(u,{key:d.id,"model-value":d},null,8,["model-value"]))),128))])):x("",!0),e.tasks?.items?.length===0?(l(),i("div",$t,[t(n)])):x("",!0)],64)}const vt=g(ft,[["render",gt]]),bt="https://webhook.acedata.cloud/flux",xt=$({name:"FluxIndex",components:{ConfigPanel:Xe,Layout:ie,RecentPanel:vt},inject:["initialized"],data(){return{task:void 0,job:0}},computed:{loading(){return this.$store.state.flux?.status?.getApplications===N.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:m,createdAtMax:p}=e||{};console.debug("limit",o,"createdAtMin",m,"createdAtMax",p),await this.$store.dispatch("flux/getTasks",{limit:o,createdAtMin:m,createdAtMax:p})},async onGenerate(){const e={...this.config,callback_url:bt},o=this.credential?.token;if(!o){console.error("no token specified");return}k.info(this.$t("flux.message.startingTask")),O.generate(e,{token:o}).then(()=>{k.success(this.$t("flux.message.startTaskSuccess"))}).catch(m=>{const p=m?.response?.data;p?.error?.code===M?k.error(this.$t("flux.message.usedUp")):k.error(this.$t("flux.message.startTaskFailed")+p?.error?.message)}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})}}});function wt(e,o,m,p,v,b){const c=s("config-panel"),u=s("recent-panel"),n=s("layout");return l(),y(n,null,{config:f(()=>[t(c,{onGenerate:e.onGenerate},null,8,["onGenerate"])]),result:f(()=>[t(u,{onReachTop:e.onReachTop},null,8,["onReachTop"])]),_:1})}const so=g(xt,[["render",wt]]);export{so as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{C}from"./CopyToClipboard-
|
|
1
|
+
import{C}from"./CopyToClipboard-CxB4Os-F.js";import{d as I,db as F,e2 as T,e3 as N,e4 as P,h as B,i as r,j as o,k as i,l,t as e,x as s,b as p,D as m,y as k,o as n}from"./index-3lo058YU.js";import{d as O,a as w,s as M}from"./distribution-DBz8z85L.js";import{g as q}from"./price-CVM2KZiS.js";import{F as R}from"./index.es-CWv4kFfI.js";import{E as z}from"./index-B13bU6Pc.js";import{E as U,a as V}from"./index-CbrIDsQE.js";import{E as A}from"./index-BuiYbTBs.js";import{E as H,a as G,b as Q}from"./index-Bul-eFT9.js";import{E as j}from"./index-Cal8CXkb.js";import{E as W}from"./index-C0ozXmL_.js";import{E as Y}from"./index-DKUshCU9.js";import"./index-Co74fEHD.js";import"./typescript-BURh-phI.js";import"./index-BgJAqVc9.js";import"./_initCloneObject-CDrM-DRb.js";import"./isPlainObject-DdJA7vs8.js";import"./_baseIteratee-5b2KyUcR.js";import"./isEqual-C_oa6Ou9.js";import"./castArray-meeljStI.js";import"./debounce-CHZZjuqV.js";import"./index-B3C-4A4c.js";import"./use-form-item-BDNX4lww.js";import"./index-DTXoPlEl.js";import"./index-r5W6hzzQ.js";const J=I({name:"ConsoleDistributionList",components:{CopyToClipboard:C,FontAwesomeIcon:R,QrCode:F,ElProgress:Y,ElRow:Q,ElCol:G,ElButton:W,ElDivider:j,ElCard:H,ElTooltip:A,ElTable:V,ElTableColumn:U,ElSkeleton:z},data(){return{invitees:[],inviteesCount:void 0,distributionLevels:[],distributionLink:void 0,distributionStatus:void 0,loading:!1}},computed:{redirect(){return this.$route.query.redirect},page(){return parseInt(this.$route.query.page?.toString()||"1")},distributionLevelMap(){let t={};return this.distributionLevels.forEach(a=>{t[a.level]=a}),t}},watch:{page:{handler(){this.onFetchData()}}},async mounted(){this.onFetchData(),this.onGenerateDistributionLink()},methods:{getPriceString:q,goHistory(){this.$router.push({name:P})},goInvitees(){this.$router.push({name:N})},onPageChange(t){this.$router.push({name:this.$route.name?.toString(),query:{page:t}})},getPercentageForNextLevel(){const t=this.distributionLevelMap[this.distributionStatus?.level?.level]?.threshold,a=this.distributionLevelMap[this.distributionStatus?.level?.level+1]?.threshold;return Math.floor((this.distributionStatus?.price-t)/(a-t)*100)},getDeltaForNextLevel(){const t=this.distributionLevelMap[this.distributionStatus?.level?.level+1]?.threshold;return Math.floor(t-this.distributionStatus?.price)},async onFetchData(){this.loading=!0,await w.initialize(),Promise.all([this.onFetchDistributionStatus(),this.onFetchDistributionLevels(),this.onFetchInvitees()]).finally(()=>{this.loading=!1})},async onGenerateDistributionLink(){const a=`${window.location.origin}?inviter_id=${this.$store.getters.user.id}`;try{const v=(await M.create(a))?.data?.data?.url;this.distributionLink=(v||a).replace("surl.id","share.acedata.cloud")}catch{this.distributionLink=a}},async onFetchDistributionStatus(){const{data:t}=await w.getAll({user_id:this.$store.getters.user.id});t.items&&t.items.length>0&&(this.distributionStatus=t.items[0])},async onFetchDistributionLevels(){const{data:t}=await O.getAll({limit:20,user_id:this.$store.getters.user.id});this.distributionLevels=t.items},async onFetchInvitees(){const{data:t}=await T.getInvitees({});this.invitees=t.items,this.inviteesCount=t.count}}}),K={class:"title"},X={key:1},Z={class:"icon-wrapper"},x={class:"text-left"},tt={class:"description"},et={class:"value"},it={key:1},st={class:"icon-wrapper"},ot={class:"text-left"},nt={class:"description"},lt={class:"value"},at={key:1},rt={class:"icon-wrapper"},dt={class:"text-left"},ct={class:"description"},ut={class:"value"},pt={key:1},ht={class:"icon-wrapper"},mt={class:"text-left"},_t={class:"description"},bt={class:"value"},vt={key:1},ft={class:"title"},gt={class:"clear-both overflow-hidden"},kt={class:"float-left description"},yt={class:"float-right description"},$t={class:"description"},wt={class:"level"},Lt={class:"level"},St={class:"level"},Et={key:1},Dt={class:"title"},Ct={class:"link-wrapper text-center"},It=["href"],Ft={class:"qr-wrapper ml-auto mr-auto"},Tt={class:"mt-0"},Nt={class:"description"},Pt={class:"more"};function Bt(t,a,v,Ot,Mt,qt){const d=l("el-col"),_=l("el-row"),c=l("el-skeleton"),b=l("font-awesome-icon"),f=l("el-button"),u=l("el-card"),y=l("el-tooltip"),L=l("el-progress"),$=l("el-divider"),g=l("el-table-column"),S=l("el-table"),E=l("copy-to-clipboard"),D=l("qr-code");return n(),r(_,{class:"panel"},{default:o(()=>[i(d,{span:24},{default:o(()=>[i(_,null,{default:o(()=>[i(d,{span:24},{default:o(()=>[e("h2",K,s(t.$t("common.title.distribution")),1)]),_:1})]),_:1}),i(_,{gutter:15},{default:o(()=>[i(d,{md:6,xs:24},{default:o(()=>[i(u,{shadow:"hover",class:"item-mini mb-4"},{default:o(()=>[t.loading?(n(),r(c,{key:0})):(n(),p("div",X,[e("div",Z,[i(b,{icon:"fa-solid fa-wallet",class:"icon"})]),e("div",x,[e("p",tt,s(t.$t("distribution.title.price")),1),e("p",et,s(t.getPriceString({value:t.distributionStatus?.price})),1)]),i(f,{type:"primary",round:"",size:"small",class:"btn",onClick:t.goHistory},{default:o(()=>[m(s(t.$t("distribution.button.detail")),1)]),_:1},8,["onClick"])]))]),_:1})]),_:1}),i(d,{md:6,xs:24},{default:o(()=>[i(u,{shadow:"hover",class:"item-mini mb-4"},{default:o(()=>[t.loading?(n(),r(c,{key:0})):(n(),p("div",it,[e("div",st,[i(b,{icon:"fa-solid fa-coins",class:"icon"})]),e("div",ot,[e("p",nt,s(t.$t("distribution.title.reward")),1),e("p",lt,s(t.getPriceString({value:t.distributionStatus?.reward})),1)]),i(y,{effect:"dark",content:t.$t("distribution.message.developingWithDrawal"),placement:"top"},{default:o(()=>[i(f,{type:"primary",round:"",size:"small",class:"btn"},{default:o(()=>[m(s(t.$t("distribution.button.withdrawal")),1)]),_:1})]),_:1},8,["content"])]))]),_:1})]),_:1}),i(d,{md:6,xs:24},{default:o(()=>[i(u,{shadow:"hover",class:"item-mini mb-4"},{default:o(()=>[t.loading?(n(),r(c,{key:0})):(n(),p("div",at,[e("div",rt,[i(b,{icon:"fa-solid fa-percent",class:"icon"})]),e("div",dt,[e("p",ct,s(t.$t("distribution.title.percentage")),1),e("p",ut,s(t.distributionStatus?.level?.percentage)+"%",1)])]))]),_:1})]),_:1}),i(d,{md:6,xs:24},{default:o(()=>[i(u,{shadow:"hover",class:"item-mini mb-4"},{default:o(()=>[t.loading?(n(),r(c,{key:0})):(n(),p("div",pt,[e("div",ht,[i(b,{icon:"fa-regular fa-user",class:"icon"})]),e("div",mt,[e("p",_t,s(t.$t("distribution.title.inviteesCount")),1),e("p",bt,s(t.inviteesCount),1)]),i(f,{type:"primary",round:"",size:"small",class:"btn",onClick:t.goInvitees},{default:o(()=>[m(s(t.$t("distribution.button.detail")),1)]),_:1},8,["onClick"])]))]),_:1})]),_:1})]),_:1}),i(_,{gutter:15},{default:o(()=>[i(d,{md:12,xs:24},{default:o(()=>[i(u,{shadow:"hover",class:"level-info mb-4"},{default:o(()=>[t.loading?(n(),r(c,{key:0})):(n(),p("div",vt,[e("h4",ft,s(t.$t("distribution.title.levelInfo")),1),e("div",gt,[e("div",kt,[e("p",null,s(t.$t("distribution.title.currentLevel"))+": L"+s(t.distributionStatus?.level?.level),1),e("p",null,s(t.$t("distribution.title.currentPercentage"))+": "+s(t.distributionLevelMap[t.distributionStatus?.level?.level]?.percentage)+"% ",1)]),e("div",yt,[e("p",null,s(t.$t("distribution.title.nextLevel"))+": L"+s(t.distributionStatus?.level?.level+1),1),e("p",null,s(t.$t("distribution.title.nextPercentage"))+": "+s(t.distributionLevelMap[t.distributionStatus?.level?.level+1]?.percentage)+"% ",1)])]),i(L,{"text-inside":!0,"stroke-width":20,percentage:t.getPercentageForNextLevel(),class:"mb-2"},null,8,["percentage"]),e("p",$t,s(t.$t("distribution.message.deltaPriceForNextLevel"))+": $"+s(t.getDeltaForNextLevel()),1),i($),t.distributionLevels?(n(),r(S,{key:0,data:t.distributionLevels,stripe:""},{default:o(()=>[i(g,{label:t.$t("distribution.field.level")},{default:o(h=>[e("span",wt,"L"+s(h.row?.level),1)]),_:1},8,["label"]),i(g,{label:t.$t("distribution.field.threshold")},{default:o(h=>[e("span",Lt,"$"+s(h.row?.threshold),1)]),_:1},8,["label"]),i(g,{label:t.$t("distribution.field.percentage")},{default:o(h=>[e("span",St,s(h.row?.percentage)+"%",1)]),_:1},8,["label"])]),_:1},8,["data"])):k("",!0)]))]),_:1})]),_:1}),i(d,{md:12,xs:24},{default:o(()=>[i(u,{shadow:"hover",class:"distribution-info mb-4"},{default:o(()=>[t.loading?(n(),r(c,{key:0})):(n(),p("div",Et,[e("h4",Dt,s(t.$t("distribution.title.distributionLink")),1),i($),e("div",Ct,[k("",!0),e("a",{href:t.distributionLink,class:"link"},s(t.distributionLink),9,It),i(E,{content:t.distributionLink},null,8,["content"])]),e("div",Ft,[t.distributionLink?(n(),r(D,{key:0,value:t.distributionLink,size:180,margin:2,class:"block mb-2 ml-auto mr-auto",type:"image/png",color:{dark:"#000000",light:"#ffffff"}},null,8,["value"])):k("",!0),e("p",Tt,s(t.$t("distribution.message.distributionQrDescription")),1)]),e("p",Nt,[m(s(t.$t("distribution.message.distributionLinkDescription"))+" ",1),e("span",Pt,[i(y,{effect:"dark",content:t.$t("distribution.message.distributionLinkDescription2"),placement:"top"},{default:o(()=>[m(s(t.$t("distribution.message.technicalDetail")),1)]),_:1},8,["content"])])])]))]),_:1})]),_:1})]),_:1})]),_:1})]),_:1})}const de=B(J,[["render",Bt],["__scopeId","data-v-a8befdf2"]]);export{de as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{F as R}from"./index.es-DuwM2xpS.js";import{E as C}from"./index-Dd5KxKjr.js";import{E as O}from"./index-BWb1p7aO.js";import{d as $,h as g,b as r,t as l,k as t,r as U,j as m,l as s,o as a,eo as q,x as i,F as V,v as S,i as I,ep as j,D as _,eq as z,c6 as B,y as h,n as A,er as F,dr as N,de as H,dl as K,dm as P}from"./index-Bp_hO4E0.js";import{I as D}from"./InfoIcon-B_7NXzqM.js";import{E as J}from"./index-IIDcIl8W.js";import{E as G,a as L}from"./index-By0I6dZ-.js";import{a as Q,E as W}from"./index-B9ydRjkI.js";import{E as X}from"./index-Bc2xTmqI.js";import{E as w}from"./index-C6-YAIfm.js";import{E as Y}from"./index-BJYfdB7L.js";import{C as Z}from"./CopyToClipboard-CWTGukXW.js";import{s as x}from"./vue-plyr-QZFBikSk.js";import{E as ee}from"./index-Badrs_Tv.js";import{E as te}from"./index-2jAF6ZPA.js";import{E as oe}from"./index-CU0-t0AD.js";import{a as se,E as ae}from"./index-1hGPlp5P.js";import"./use-form-item-C7v6lxI-.js";import"./index-r5W6hzzQ.js";import"./index-6eG4Alfo.js";import"./index-DJHmsgYy.js";import"./typescript-BpY75mvT.js";import"./strings-Dqqb4Qff.js";import"./castArray-BFNMyvNy.js";import"./isEqual-CXl2hOES.js";import"./_initCloneObject-Hx3XrS5v.js";import"./debounce-uq4Y0tBJ.js";import"./_baseIteratee-Gayx4zPC.js";import"./index-Da4hcGYx.js";import"./index-DwST9-YB.js";import"./_baseClone-BeP5In-D.js";import"./index-DsJzwtEG.js";const ne=$({name:"LayoutPika",components:{ElDrawer:O,ElButton:C,FontAwesomeIcon:R},data(){return{drawer:!1}}}),ie={class:"main"},le={class:"config"},re={class:"result"};function ce(e,o,p,d,k,v){const c=s("font-awesome-icon"),u=s("el-button"),n=s("el-drawer");return a(),r("div",ie,[l("div",le,[U(e.$slots,"config",{},void 0,!0)]),l("div",re,[U(e.$slots,"result",{},void 0,!0)]),t(u,{circle:"",class:"menu",onClick:o[0]||(o[0]=f=>e.drawer=!0)},{default:m(()=>[t(c,{icon:"fa-solid fa-magic"})]),_:1}),t(n,{modelValue:e.drawer,"onUpdate:modelValue":o[1]||(o[1]=f=>e.drawer=f),"with-header":!1,size:"350px"},{default:m(()=>[U(e.$slots,"config",{},void 0,!0)]),_:3},8,["modelValue"])])}const pe=g(ne,[["render",ce],["__scopeId","data-v-35c01ab3"]]),de=$({name:"IngredientsSelector",components:{ElSwitch:J,InfoIcon:D},computed:{value:{get(){return this.$store.state.pika?.config?.ingredients},set(e){console.debug("set ingredients",e),e||this.$store.commit("pika/setConfig",{...this.$store.state.pika?.config,ingredients:e,ingredients_mode:void 0,image_url:void 0}),this.$store.commit("pika/setConfig",{...this.$store.state.pika?.config,ingredients:e,model:"2.0"})}}},mounted(){this.value===void 0&&(this.value=q)}}),ue={class:"field"},me={class:"title font-bold"};function fe(e,o,p,d,k,v){const c=s("el-switch"),u=s("info-icon");return a(),r("div",ue,[l("h2",me,i(e.$t("pika.name.ingredients")),1),t(c,{modelValue:e.value,"onUpdate:modelValue":o[0]||(o[0]=n=>e.value=n),class:"value"},null,8,["modelValue"]),t(u,{content:e.$t("pika.description.ingredients"),class:"info"},null,8,["content"])])}const _e=g(de,[["render",fe],["__scopeId","data-v-17c0af5c"]]),he=$({name:"EffectSelector",components:{ElSelect:L,ElOption:G},data(){return{}},computed:{options(){return[{value:"Levitate",label:this.$t("pika.style.effect1")},{value:"Decapitate",label:this.$t("pika.style.effect2")},{value:"Eye-pop",label:this.$t("pika.style.effect3")},{value:"Ta-da",label:this.$t("pika.style.effect4")},{value:"Deflate",label:this.$t("pika.style.effect5")},{value:"Crumble",label:this.$t("pika.style.effect6")},{value:"Dissolve",label:this.$t("pika.style.effect7")},{value:"Squish",label:this.$t("pika.style.effect8")},{value:"Inflate",label:this.$t("pika.style.effect9")},{value:"Melt",label:this.$t("pika.style.effect10")},{value:"Cake-ify",label:this.$t("pika.style.effect11")},{value:"Crush",label:this.$t("pika.style.effect12")},{value:"Explode",label:this.$t("pika.style.effect13")}]},value:{get(){return this.$store.state.pika?.config?.effect},set(e){this.$store.commit("pika/setConfig",{...this.$store.state.pika?.config,effect:e})}}}}),$e={class:"field"},ge={class:"title font-bold"},ke={class:"float-left"};function ve(e,o,p,d,k,v){const c=s("el-option"),u=s("el-select");return a(),r("div",$e,[l("h2",ge,i(e.$t("pika.name.effect")),1),t(u,{modelValue:e.value,"onUpdate:modelValue":o[0]||(o[0]=n=>e.value=n),class:"value",placeholder:e.$t("pika.placeholder.select"),clearable:""},{default:m(()=>[(a(!0),r(V,null,S(e.options,n=>(a(),I(c,{key:n.value,label:n.label,value:n.value},{default:m(()=>[l("span",ke,i(n.label),1)]),_:2},1032,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const be=g(he,[["render",ve],["__scopeId","data-v-d1c54475"]]),ye=$({name:"IngredientsModelSelector",components:{ElRadioButton:W,ElRadioGroup:Q},data(){return{options:[{label:this.$t("pika.button.precise"),value:"precise"},{label:this.$t("pika.button.creative"),value:"creative"}]}},computed:{value:{get(){return this.$store.state.pika?.config?.ingredients_mode},set(e){this.$store.commit("pika/setConfig",{...this.$store.state.pika?.config,ingredients_mode:e})}}},mounted(){this.value||(this.value=j)}}),we={class:"field"},Ie={class:"title font-bold"};function Ee(e,o,p,d,k,v){const c=s("el-radio-button"),u=s("el-radio-group");return a(),r("div",we,[l("h2",Ie,i(e.$t("pika.name.ingredientsModel")),1),t(u,{modelValue:e.value,"onUpdate:modelValue":o[0]||(o[0]=n=>e.value=n),size:"small",class:"quality"},{default:m(()=>[(a(!0),r(V,null,S(e.options,n=>(a(),I(c,{key:n.value,label:n.value},{default:m(()=>[_(i(n.label),1)]),_:2},1032,["label"]))),128))]),_:1},8,["modelValue"])])}const Ve=g(ye,[["render",Ee],["__scopeId","data-v-b948551f"]]),Se=$({name:"ModelSelector",components:{ElSelect:L,ElOption:G},props:{modelValue:{type:String,default:void 0}},emits:["update:modelValue"],data(){return{options:[{value:"2.0",label:"2.0"},{value:"1.5",label:"1.5"}]}},computed:{value:{get(){return this.$store.state.pika?.config?.model},set(e){this.$store.commit("pika/setConfig",{...this.$store.state.pika.config,model:e})}}},mounted(){this.value||(this.value=z)}}),Te={class:"field"},Ce={class:"title font-bold"};function Ae(e,o,p,d,k,v){const c=s("el-option"),u=s("el-select");return a(),r("div",Te,[l("h2",Ce,i(e.$t("pika.name.model")),1),t(u,{modelValue:e.value,"onUpdate:modelValue":o[0]||(o[0]=n=>e.value=n),class:"value",placeholder:e.$t("pika.placeholder.select")},{default:m(()=>[(a(!0),r(V,null,S(e.options,n=>(a(),I(c,{key:n.value,label:n.label,value:n.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const Ue=g(Se,[["render",Ae],["__scopeId","data-v-7b2e870a"]]),Pe=$({name:"ImageUrlInput",components:{ElUpload:X,ElButton:C,InfoIcon:D},data(){return{fileList:[],uploadUrl:B()+"/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.pika?.config?.image_url},set(){const e=this.urls?.[0];this.$store.commit("pika/setConfig",{...this.$store.state.pika?.config,image_url:e})}}},mounted(){this.value||(this.value=void 0),this.onSetStartImageUrl()},methods:{onExceed(){w.warning(this.$t("pika.message.uploadStartImageExceed"))},onError(){w.error(this.$t("pika.message.uploadStartImageError"))},async onRemove(){w.error(this.$t("pika.message.uploadStartImageError"))},onSetStartImageUrl(){this.$store.commit("pika/setConfig",{...this.$store.state.pika?.config,image_url:this.urls})},async onSuccess(){this.onSetStartImageUrl()}}}),Re={class:"field"},De={class:"title font-bold"},Ge={class:"upload-wrapper"};function Le(e,o,p,d,k,v){const c=s("el-button"),u=s("el-upload"),n=s("info-icon");return a(),r("div",Re,[l("h2",De,i(e.$t("pika.name.imageUrl")),1),l("div",Ge,[t(u,{"file-list":e.fileList,"onUpdate:fileList":o[0]||(o[0]=f=>e.fileList=f),accept:".png,.jpg,.jpeg,.gif,.bmp,.webp",name:"file",class:"value","show-file-list":!0,limit:3,multiple:!0,action:e.uploadUrl,"on-exceed":e.onExceed,"on-error":e.onError,"on-remove":e.onRemove,"on-success":e.onSuccess,headers:e.headers},{default:m(()=>[t(c,{size:"small",type:"primary",round:""},{default:m(()=>[_(i(e.$t("pika.button.uploadImageUrl")),1)]),_:1})]),_:1},8,["file-list","action","on-exceed","on-error","on-remove","on-success","headers"])]),t(n,{content:e.$t("pika.description.imageUrl"),class:"info"},null,8,["content"])])}const Me=g(Pe,[["render",Le],["__scopeId","data-v-55a9552e"]]),Oe="",qe=$({name:"PromptInput",components:{ElInput:Y,InfoIcon:D},computed:{prompt:{get(){return this.$store.state.pika?.config?.prompt},set(e){console.debug("set prompt",e),this.$store.commit("pika/setConfig",{...this.$store.state.pika?.config,prompt:e})}}},mounted(){this.prompt||(this.prompt=Oe)}}),je={class:"field"},ze={class:"box"},Be={class:"title font-bold"};function Fe(e,o,p,d,k,v){const c=s("info-icon"),u=s("el-input");return a(),r("div",je,[l("div",ze,[l("h2",Be,i(e.$t("pika.name.prompt")),1),t(c,{content:e.$t("pika.description.prompt"),class:"info"},null,8,["content"])]),t(u,{modelValue:e.prompt,"onUpdate:modelValue":o[0]||(o[0]=n=>e.prompt=n),rows:3,type:"textarea",class:"prompt",placeholder:e.$t("pika.placeholder.prompt"),maxlength:300,"show-word-limit":""},null,8,["modelValue","placeholder"])])}const Ne=g(qe,[["render",Fe],["__scopeId","data-v-b94e7a3e"]]),He=$({name:"PresetPanel",components:{ImageUrlInput:Me,ElButton:C,FontAwesomeIcon:R,PromptInput:Ne,IngredientsSelector:_e,IngredientsModelSelector:Ve,ModelSelector:Ue,EffectSelector:be},emits:["generate"],computed:{config(){return this.$store.state.pika?.config}},methods:{onGenerate(){this.$emit("generate")}}}),Ke={class:"panel"},Je={class:"config"},Qe={class:"actions"};function We(e,o,p,d,k,v){const c=s("prompt-input"),u=s("model-selector"),n=s("ingredients-selector"),f=s("effect-selector"),b=s("image-url-input"),E=s("ingredients-model-selector"),T=s("font-awesome-icon"),y=s("el-button");return a(),r("div",Ke,[l("div",Je,[t(c,{class:"mb-4"}),t(u,{class:"mb-4"}),t(n,{class:"mb-4"}),t(f,{class:"mb-4"}),e.config?.ingredients?(a(),I(b,{key:0,class:"mb-4"})):h("",!0),e.config?.ingredients?(a(),I(E,{key:1,class:"mb-4"})):h("",!0),l("div",Qe,[t(y,{type:"primary",class:"btn w-full",round:"",onClick:e.onGenerate},{default:m(()=>[t(T,{icon:"fa-solid fa-magic",class:"mr-2"}),_(" "+i(e.$t("pika.button.generate")),1)]),_:1},8,["onClick"])])])])}const Xe=g(He,[["render",We],["__scopeId","data-v-53b25bc4"]]),Ye=$({name:"VideoPlayer",components:{VuePlyr:x},props:{modelValue:{type:Object,required:!0}},data(){return{options:{quality:{default:"1080p"}}}}}),Ze=["data-poster"],xe=["src"];function et(e,o,p,d,k,v){const c=s("vue-plyr");return a(),r("div",null,[t(c,{options:e.options,class:"video"},{default:m(()=>[l("video",{controls:"",crossorigin:"",playsinline:"","data-poster":e.modelValue?.image_url},[l("source",{size:"1080",src:e.modelValue?.video_url,type:"video/mp4"},null,8,xe)],8,Ze)]),_:1},8,["options"])])}const tt=g(Ye,[["render",et],["__scopeId","data-v-fc420430"]]),ot=$({name:"TaskPreview",components:{ElImage:oe,CopyToClipboard:Z,FontAwesomeIcon:R,ElAlert:te,VideoPlayer:tt,ElTooltip:ee,ElButton:C},props:{modelValue:{type:Object,required:!0}},data(){return{}},computed:{application(){return this.$store.state.pika?.application},config(){return this.$store.state.pika?.config},videos(){let e=[];const o=this.modelValue?.request?.action;return Array.isArray(this.modelValue?.response?.data)&&this.modelValue?.response?.data?.forEach(p=>{let d=p;o&&(d.action=o),e.push(d)}),e}},methods:{onDownload(e){console.log("on download"),window.open(e,"_blank")},onReload(e){const o=e.target,p=new URL(o.src),d=p.searchParams.get("retry");if(!d)p.searchParams.set("retry","1");else if(parseInt(d)<2)p.searchParams.set("retry",(parseInt(d)+1).toString());else return;o.src=p.toString()},onOpenVideo(e){window.open(e,"_blank")}}}),st={class:"left"},at={class:"main"},nt={class:"bot"},it={class:"datetime"},lt={class:"info"},rt={key:0,class:"prompt mt-2"},ct={key:0},pt={key:1},dt={key:0,class:A({content:!0,failed:!0})},ut={class:"image-wrapper"},mt={key:0,class:A({operations:!0,"mt-2":!0})},ft={class:"description"},_t={key:1,class:A({content:!0})},ht={class:"description"},$t={class:"description"},gt={class:"description"},kt={key:2,class:A({content:!0})},vt={class:"description"};function bt(e,o,p,d,k,v){const c=s("el-image"),u=s("VideoPlayer"),n=s("el-button"),f=s("el-tooltip"),b=s("font-awesome-icon"),E=s("copy-to-clipboard"),T=s("el-alert");return a(!0),r(V,null,S(e.videos,(y,M)=>(a(),r("div",{key:M,class:"preview"},[l("div",st,[t(c,{src:"https://cdn.acedata.cloud/i80tgn.png",class:"avatar"})]),l("div",at,[l("div",nt,[_(i(e.$t("pika.name.pikaBot"))+" ",1),l("span",it,i(e.$dayjs.format(""+new Date(parseFloat((e.modelValue?.created_at||"").toString())*1e3))),1)]),l("div",lt,[e.modelValue?.request?.prompt?(a(),r("p",rt,[_(i(e.modelValue?.request?.prompt)+" ",1),e.modelValue?.response?h("",!0):(a(),r("span",ct," - ("+i(e.$t("pika.status.pending"))+") ",1)),y?.state==="processing"||y?.state==="pending"||y?.state==="completed"?(a(),r("span",pt," - ("+i(e.$t("pika.status.processing"))+") ",1)):h("",!0)])):h("",!0)]),e.modelValue?.response?.success===!0?(a(),r("div",dt,[l("div",ut,[t(u,{"model-value":y},null,8,["model-value"])]),y?(a(),r("div",mt,[t(f,{class:"box-item",effect:"dark",content:e.$t("pika.message.downloadVideo"),placement:"top-start"},{default:m(()=>[y?.video_url?(a(),I(n,{key:0,type:"info",size:"small",class:"btn-action",onClick:Dt=>e.onDownload(y?.video_url)},{default:m(()=>[_(i(e.$t("pika.button.download")),1)]),_:2},1032,["onClick"])):h("",!0)]),_:2},1032,["content"])])):h("",!0),t(T,{closable:!1,class:"mt-2 success"},{default:m(()=>[l("p",ft,[t(b,{icon:"fa-solid fa-magic",class:"mr-1"}),_(" "+i(e.$t("pika.name.taskId"))+": "+i(e.modelValue?.id)+" ",1),t(E,{content:e.modelValue?.id,class:"btn-copy"},null,8,["content"])])]),_:1})])):h("",!0),e.modelValue?.response?.success===!1?(a(),r("div",_t,[t(T,{closable:!1,class:"failure"},{template:m(()=>[t(b,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),_(" "+i(e.$t("pika.name.failure")),1)]),default:m(()=>[l("p",ht,[t(b,{icon:"fa-solid fa-magic",class:"mr-1"}),_(" "+i(e.$t("pika.name.taskId"))+": "+i(e.modelValue?.id)+" ",1),t(E,{content:e.modelValue?.id,class:"btn-copy"},null,8,["content"])]),l("p",$t,[t(b,{icon:"fa-solid fa-circle-info",class:"mr-1"}),_(" "+i(e.$t("pika.name.failureReason"))+": "+i(e.modelValue?.response?.error?.message)+" ",1),t(E,{content:e.modelValue?.response?.error?.message,class:"btn-copy"},null,8,["content"])]),l("p",gt,[t(b,{icon:"fa-solid fa-hashtag",class:"mr-1"}),_(" "+i(e.$t("pika.name.traceId"))+": "+i(e.modelValue?.response?.trace_id)+" ",1),t(E,{content:e.modelValue?.response?.trace_id,class:"btn-copy"},null,8,["content"])])]),_:1})])):h("",!0),!e.modelValue?.response||y?.state==="processing"||y?.state==="pending"?(a(),r("div",kt,[t(T,{closable:!1,class:"info"},{template:m(()=>[t(b,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),_(" "+i(e.$t("pika.name.failure")),1)]),default:m(()=>[l("p",vt,[t(b,{icon:"fa-solid fa-magic",class:"mr-1"}),_(" "+i(e.$t("pika.name.taskId"))+": "+i(e.modelValue?.id)+" ",1),t(E,{content:e.modelValue?.id,class:"btn-copy"},null,8,["content"])])]),_:1})])):h("",!0)])]))),128)}const yt=g(ot,[["render",bt],["__scopeId","data-v-052d49ba"]]),wt=$({name:"RecentPanel",components:{TaskPreview:yt,ElSkeleton:ae,ElSkeletonItem:se},emits:["reach-top"],data(){return{job:0}},computed:{tasks(){return{...this.$store.state.pika?.tasks,items:this.$store.state.pika?.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")}}}),It={key:0,class:"tasks"},Et={class:"left"},Vt={class:"main"},St={key:1,class:"tasks"},Tt={key:2,class:"w-full h-full flex items-center justify-center"};function Ct(e,o,p,d,k,v){const c=s("el-skeleton-item"),u=s("el-skeleton"),n=s("task-preview");return a(),r("div",{ref:"panel",class:"panel recent",onScroll:o[0]||(o[0]=(...f)=>e.onHandleScroll&&e.onHandleScroll(...f))},[e.tasks?.items===void 0?(a(),r("div",It,[(a(),r(V,null,S(3,f=>l("div",{key:f,class:"task placeholder"},[l("div",Et,[t(u,{animated:""},{template:m(()=>[t(c,{variant:"image",class:"avatar"})]),_:1})]),l("div",Vt,[t(u,{animated:""},{template:m(()=>[t(c,{variant:"p",class:"title"}),t(c,{variant:"image",class:"icon"})]),_:1})])])),64))])):e.tasks?.items?.length&&e.tasks?.items?.length>0?(a(),r("div",St,[(a(!0),r(V,null,S(e.tasks?.items,(f,b)=>(a(),I(n,{key:b,"model-value":f,class:"preview"},null,8,["model-value"]))),128))])):h("",!0),e.tasks?.items?.length===0?(a(),r("p",Tt,i(e.$t("pika.message.noTasks")),1)):h("",!0)],544)}const At=g(wt,[["render",Ct],["__scopeId","data-v-1f6b602e"]]),Ut="https://webhook.acedata.cloud/pika",Pt=$({name:"PikaIndex",components:{ConfigPanel:Xe,Layout:pe,RecentPanel:At},inject:["initialized"],data(){return{task:void 0,job:0}},computed:{loading(){return this.$store.state.pika?.status?.getApplications===P.Request},service(){return this.$store.state.pika.service},credential(){return this.$store.state.pika.credential},config(){return this.$store.state.pika.config},initializing(){return this.$store.state.pika.status.getApplications===P.Request},needApply(){return this.$store.state.pika.status.getApplications===P.Success&&!this.application},application(){return this.$store.state.pika.application},applications(){return this.$store.state.pika.applications},tasks(){return this.$store.state.pika.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("pika/getService"),console.debug("end onGetService")},async onGetApplication(){console.debug("start onGetApplication"),await this.$store.dispatch("pika/getApplications"),console.debug("end onGetApplication"),await this.onGetTasks()},onApply(){H.create({application:this.application}).then(({data:e})=>{this.application=e,w.success(this.$t("application.message.applySuccessfully"))}).catch(e=>{e?.response?.data?.code===K&&w.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:o=5,createdAtMin:p,createdAtMax:d}=e||{};console.debug("limit",o,"createdAtMin",p,"createdAtMax",d),await this.$store.dispatch("pika/getTasks",{limit:o,createdAtMin:p,createdAtMax:d})},async onGenerate(){const e={...this.config,callback_url:Ut},o=this.credential?.token;if(!o){console.error("no token specified");return}w.info(this.$t("pika.message.startingTask")),F.generate(e,{token:o}).then(()=>{w.success(this.$t("pika.message.startTaskSuccess")),this.$store.commit("pika/setConfig",{config:void 0})}).catch(p=>{p?.response?.data?.error?.code===N?w.error(this.$t("pika.message.usedUp")):w.error(this.$t("pika.message.startTaskFailed"))}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})}}});function Rt(e,o,p,d,k,v){const c=s("config-panel"),u=s("recent-panel"),n=s("layout");return a(),I(n,null,{config:m(()=>[t(c,{onGenerate:e.onGenerate},null,8,["onGenerate"])]),result:m(()=>[t(u,{class:"panel recent",onReachTop:e.onReachTop},null,8,["onReachTop"])]),_:1})}const fo=g(Pt,[["render",Rt],["__scopeId","data-v-bc973743"]]);export{fo as default};
|
|
1
|
+
import{F as R}from"./index.es-CWv4kFfI.js";import{E as C}from"./index-C0ozXmL_.js";import{E as O}from"./index-DSwhKvGW.js";import{d as $,h as g,b as r,t as l,k as t,r as U,j as m,l as s,o as a,eo as q,x as i,F as V,v as S,i as I,ep as j,D as _,eq as z,c6 as B,y as h,n as A,er as F,dr as N,de as H,dl as K,dm as P}from"./index-3lo058YU.js";import{I as D}from"./InfoIcon-Bsrt1n4f.js";import{E as J}from"./index-uIvyDtTT.js";import{E as G,a as L}from"./index-DSki3J7c.js";import{a as Q,E as W}from"./index-cmgOdrHT.js";import{E as X}from"./index-Cp3RtlLn.js";import{E as w}from"./index-BtzoeCCU.js";import{E as Y}from"./index-BGr2zc_b.js";import{C as Z}from"./CopyToClipboard-CxB4Os-F.js";import{s as x}from"./vue-plyr-QZFBikSk.js";import{E as ee}from"./index-BuiYbTBs.js";import{E as te}from"./index-Bc76ybrq.js";import{E as oe}from"./index-BBaBEPdv.js";import{a as se,E as ae}from"./index-B13bU6Pc.js";import"./use-form-item-BDNX4lww.js";import"./index-r5W6hzzQ.js";import"./index-BgJAqVc9.js";import"./index-Co74fEHD.js";import"./typescript-BURh-phI.js";import"./strings-DgUrSd6E.js";import"./castArray-meeljStI.js";import"./isEqual-C_oa6Ou9.js";import"./_initCloneObject-CDrM-DRb.js";import"./debounce-CHZZjuqV.js";import"./_baseIteratee-5b2KyUcR.js";import"./index-DTXoPlEl.js";import"./index-DKUshCU9.js";import"./_baseClone-CRS_hbmQ.js";import"./index-LvZvT_fN.js";const ne=$({name:"LayoutPika",components:{ElDrawer:O,ElButton:C,FontAwesomeIcon:R},data(){return{drawer:!1}}}),ie={class:"main"},le={class:"config"},re={class:"result"};function ce(e,o,p,d,k,v){const c=s("font-awesome-icon"),u=s("el-button"),n=s("el-drawer");return a(),r("div",ie,[l("div",le,[U(e.$slots,"config",{},void 0,!0)]),l("div",re,[U(e.$slots,"result",{},void 0,!0)]),t(u,{circle:"",class:"menu",onClick:o[0]||(o[0]=f=>e.drawer=!0)},{default:m(()=>[t(c,{icon:"fa-solid fa-magic"})]),_:1}),t(n,{modelValue:e.drawer,"onUpdate:modelValue":o[1]||(o[1]=f=>e.drawer=f),"with-header":!1,size:"350px"},{default:m(()=>[U(e.$slots,"config",{},void 0,!0)]),_:3},8,["modelValue"])])}const pe=g(ne,[["render",ce],["__scopeId","data-v-35c01ab3"]]),de=$({name:"IngredientsSelector",components:{ElSwitch:J,InfoIcon:D},computed:{value:{get(){return this.$store.state.pika?.config?.ingredients},set(e){console.debug("set ingredients",e),e||this.$store.commit("pika/setConfig",{...this.$store.state.pika?.config,ingredients:e,ingredients_mode:void 0,image_url:void 0}),this.$store.commit("pika/setConfig",{...this.$store.state.pika?.config,ingredients:e,model:"2.0"})}}},mounted(){this.value===void 0&&(this.value=q)}}),ue={class:"field"},me={class:"title font-bold"};function fe(e,o,p,d,k,v){const c=s("el-switch"),u=s("info-icon");return a(),r("div",ue,[l("h2",me,i(e.$t("pika.name.ingredients")),1),t(c,{modelValue:e.value,"onUpdate:modelValue":o[0]||(o[0]=n=>e.value=n),class:"value"},null,8,["modelValue"]),t(u,{content:e.$t("pika.description.ingredients"),class:"info"},null,8,["content"])])}const _e=g(de,[["render",fe],["__scopeId","data-v-17c0af5c"]]),he=$({name:"EffectSelector",components:{ElSelect:L,ElOption:G},data(){return{}},computed:{options(){return[{value:"Levitate",label:this.$t("pika.style.effect1")},{value:"Decapitate",label:this.$t("pika.style.effect2")},{value:"Eye-pop",label:this.$t("pika.style.effect3")},{value:"Ta-da",label:this.$t("pika.style.effect4")},{value:"Deflate",label:this.$t("pika.style.effect5")},{value:"Crumble",label:this.$t("pika.style.effect6")},{value:"Dissolve",label:this.$t("pika.style.effect7")},{value:"Squish",label:this.$t("pika.style.effect8")},{value:"Inflate",label:this.$t("pika.style.effect9")},{value:"Melt",label:this.$t("pika.style.effect10")},{value:"Cake-ify",label:this.$t("pika.style.effect11")},{value:"Crush",label:this.$t("pika.style.effect12")},{value:"Explode",label:this.$t("pika.style.effect13")}]},value:{get(){return this.$store.state.pika?.config?.effect},set(e){this.$store.commit("pika/setConfig",{...this.$store.state.pika?.config,effect:e})}}}}),$e={class:"field"},ge={class:"title font-bold"},ke={class:"float-left"};function ve(e,o,p,d,k,v){const c=s("el-option"),u=s("el-select");return a(),r("div",$e,[l("h2",ge,i(e.$t("pika.name.effect")),1),t(u,{modelValue:e.value,"onUpdate:modelValue":o[0]||(o[0]=n=>e.value=n),class:"value",placeholder:e.$t("pika.placeholder.select"),clearable:""},{default:m(()=>[(a(!0),r(V,null,S(e.options,n=>(a(),I(c,{key:n.value,label:n.label,value:n.value},{default:m(()=>[l("span",ke,i(n.label),1)]),_:2},1032,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const be=g(he,[["render",ve],["__scopeId","data-v-d1c54475"]]),ye=$({name:"IngredientsModelSelector",components:{ElRadioButton:W,ElRadioGroup:Q},data(){return{options:[{label:this.$t("pika.button.precise"),value:"precise"},{label:this.$t("pika.button.creative"),value:"creative"}]}},computed:{value:{get(){return this.$store.state.pika?.config?.ingredients_mode},set(e){this.$store.commit("pika/setConfig",{...this.$store.state.pika?.config,ingredients_mode:e})}}},mounted(){this.value||(this.value=j)}}),we={class:"field"},Ie={class:"title font-bold"};function Ee(e,o,p,d,k,v){const c=s("el-radio-button"),u=s("el-radio-group");return a(),r("div",we,[l("h2",Ie,i(e.$t("pika.name.ingredientsModel")),1),t(u,{modelValue:e.value,"onUpdate:modelValue":o[0]||(o[0]=n=>e.value=n),size:"small",class:"quality"},{default:m(()=>[(a(!0),r(V,null,S(e.options,n=>(a(),I(c,{key:n.value,label:n.value},{default:m(()=>[_(i(n.label),1)]),_:2},1032,["label"]))),128))]),_:1},8,["modelValue"])])}const Ve=g(ye,[["render",Ee],["__scopeId","data-v-b948551f"]]),Se=$({name:"ModelSelector",components:{ElSelect:L,ElOption:G},props:{modelValue:{type:String,default:void 0}},emits:["update:modelValue"],data(){return{options:[{value:"2.0",label:"2.0"},{value:"1.5",label:"1.5"}]}},computed:{value:{get(){return this.$store.state.pika?.config?.model},set(e){this.$store.commit("pika/setConfig",{...this.$store.state.pika.config,model:e})}}},mounted(){this.value||(this.value=z)}}),Te={class:"field"},Ce={class:"title font-bold"};function Ae(e,o,p,d,k,v){const c=s("el-option"),u=s("el-select");return a(),r("div",Te,[l("h2",Ce,i(e.$t("pika.name.model")),1),t(u,{modelValue:e.value,"onUpdate:modelValue":o[0]||(o[0]=n=>e.value=n),class:"value",placeholder:e.$t("pika.placeholder.select")},{default:m(()=>[(a(!0),r(V,null,S(e.options,n=>(a(),I(c,{key:n.value,label:n.label,value:n.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const Ue=g(Se,[["render",Ae],["__scopeId","data-v-7b2e870a"]]),Pe=$({name:"ImageUrlInput",components:{ElUpload:X,ElButton:C,InfoIcon:D},data(){return{fileList:[],uploadUrl:B()+"/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.pika?.config?.image_url},set(){const e=this.urls?.[0];this.$store.commit("pika/setConfig",{...this.$store.state.pika?.config,image_url:e})}}},mounted(){this.value||(this.value=void 0),this.onSetStartImageUrl()},methods:{onExceed(){w.warning(this.$t("pika.message.uploadStartImageExceed"))},onError(){w.error(this.$t("pika.message.uploadStartImageError"))},async onRemove(){w.error(this.$t("pika.message.uploadStartImageError"))},onSetStartImageUrl(){this.$store.commit("pika/setConfig",{...this.$store.state.pika?.config,image_url:this.urls})},async onSuccess(){this.onSetStartImageUrl()}}}),Re={class:"field"},De={class:"title font-bold"},Ge={class:"upload-wrapper"};function Le(e,o,p,d,k,v){const c=s("el-button"),u=s("el-upload"),n=s("info-icon");return a(),r("div",Re,[l("h2",De,i(e.$t("pika.name.imageUrl")),1),l("div",Ge,[t(u,{"file-list":e.fileList,"onUpdate:fileList":o[0]||(o[0]=f=>e.fileList=f),accept:".png,.jpg,.jpeg,.gif,.bmp,.webp",name:"file",class:"value","show-file-list":!0,limit:3,multiple:!0,action:e.uploadUrl,"on-exceed":e.onExceed,"on-error":e.onError,"on-remove":e.onRemove,"on-success":e.onSuccess,headers:e.headers},{default:m(()=>[t(c,{size:"small",type:"primary",round:""},{default:m(()=>[_(i(e.$t("pika.button.uploadImageUrl")),1)]),_:1})]),_:1},8,["file-list","action","on-exceed","on-error","on-remove","on-success","headers"])]),t(n,{content:e.$t("pika.description.imageUrl"),class:"info"},null,8,["content"])])}const Me=g(Pe,[["render",Le],["__scopeId","data-v-55a9552e"]]),Oe="",qe=$({name:"PromptInput",components:{ElInput:Y,InfoIcon:D},computed:{prompt:{get(){return this.$store.state.pika?.config?.prompt},set(e){console.debug("set prompt",e),this.$store.commit("pika/setConfig",{...this.$store.state.pika?.config,prompt:e})}}},mounted(){this.prompt||(this.prompt=Oe)}}),je={class:"field"},ze={class:"box"},Be={class:"title font-bold"};function Fe(e,o,p,d,k,v){const c=s("info-icon"),u=s("el-input");return a(),r("div",je,[l("div",ze,[l("h2",Be,i(e.$t("pika.name.prompt")),1),t(c,{content:e.$t("pika.description.prompt"),class:"info"},null,8,["content"])]),t(u,{modelValue:e.prompt,"onUpdate:modelValue":o[0]||(o[0]=n=>e.prompt=n),rows:3,type:"textarea",class:"prompt",placeholder:e.$t("pika.placeholder.prompt"),maxlength:300,"show-word-limit":""},null,8,["modelValue","placeholder"])])}const Ne=g(qe,[["render",Fe],["__scopeId","data-v-b94e7a3e"]]),He=$({name:"PresetPanel",components:{ImageUrlInput:Me,ElButton:C,FontAwesomeIcon:R,PromptInput:Ne,IngredientsSelector:_e,IngredientsModelSelector:Ve,ModelSelector:Ue,EffectSelector:be},emits:["generate"],computed:{config(){return this.$store.state.pika?.config}},methods:{onGenerate(){this.$emit("generate")}}}),Ke={class:"panel"},Je={class:"config"},Qe={class:"actions"};function We(e,o,p,d,k,v){const c=s("prompt-input"),u=s("model-selector"),n=s("ingredients-selector"),f=s("effect-selector"),b=s("image-url-input"),E=s("ingredients-model-selector"),T=s("font-awesome-icon"),y=s("el-button");return a(),r("div",Ke,[l("div",Je,[t(c,{class:"mb-4"}),t(u,{class:"mb-4"}),t(n,{class:"mb-4"}),t(f,{class:"mb-4"}),e.config?.ingredients?(a(),I(b,{key:0,class:"mb-4"})):h("",!0),e.config?.ingredients?(a(),I(E,{key:1,class:"mb-4"})):h("",!0),l("div",Qe,[t(y,{type:"primary",class:"btn w-full",round:"",onClick:e.onGenerate},{default:m(()=>[t(T,{icon:"fa-solid fa-magic",class:"mr-2"}),_(" "+i(e.$t("pika.button.generate")),1)]),_:1},8,["onClick"])])])])}const Xe=g(He,[["render",We],["__scopeId","data-v-53b25bc4"]]),Ye=$({name:"VideoPlayer",components:{VuePlyr:x},props:{modelValue:{type:Object,required:!0}},data(){return{options:{quality:{default:"1080p"}}}}}),Ze=["data-poster"],xe=["src"];function et(e,o,p,d,k,v){const c=s("vue-plyr");return a(),r("div",null,[t(c,{options:e.options,class:"video"},{default:m(()=>[l("video",{controls:"",crossorigin:"",playsinline:"","data-poster":e.modelValue?.image_url},[l("source",{size:"1080",src:e.modelValue?.video_url,type:"video/mp4"},null,8,xe)],8,Ze)]),_:1},8,["options"])])}const tt=g(Ye,[["render",et],["__scopeId","data-v-fc420430"]]),ot=$({name:"TaskPreview",components:{ElImage:oe,CopyToClipboard:Z,FontAwesomeIcon:R,ElAlert:te,VideoPlayer:tt,ElTooltip:ee,ElButton:C},props:{modelValue:{type:Object,required:!0}},data(){return{}},computed:{application(){return this.$store.state.pika?.application},config(){return this.$store.state.pika?.config},videos(){let e=[];const o=this.modelValue?.request?.action;return Array.isArray(this.modelValue?.response?.data)&&this.modelValue?.response?.data?.forEach(p=>{let d=p;o&&(d.action=o),e.push(d)}),e}},methods:{onDownload(e){console.log("on download"),window.open(e,"_blank")},onReload(e){const o=e.target,p=new URL(o.src),d=p.searchParams.get("retry");if(!d)p.searchParams.set("retry","1");else if(parseInt(d)<2)p.searchParams.set("retry",(parseInt(d)+1).toString());else return;o.src=p.toString()},onOpenVideo(e){window.open(e,"_blank")}}}),st={class:"left"},at={class:"main"},nt={class:"bot"},it={class:"datetime"},lt={class:"info"},rt={key:0,class:"prompt mt-2"},ct={key:0},pt={key:1},dt={key:0,class:A({content:!0,failed:!0})},ut={class:"image-wrapper"},mt={key:0,class:A({operations:!0,"mt-2":!0})},ft={class:"description"},_t={key:1,class:A({content:!0})},ht={class:"description"},$t={class:"description"},gt={class:"description"},kt={key:2,class:A({content:!0})},vt={class:"description"};function bt(e,o,p,d,k,v){const c=s("el-image"),u=s("VideoPlayer"),n=s("el-button"),f=s("el-tooltip"),b=s("font-awesome-icon"),E=s("copy-to-clipboard"),T=s("el-alert");return a(!0),r(V,null,S(e.videos,(y,M)=>(a(),r("div",{key:M,class:"preview"},[l("div",st,[t(c,{src:"https://cdn.acedata.cloud/i80tgn.png",class:"avatar"})]),l("div",at,[l("div",nt,[_(i(e.$t("pika.name.pikaBot"))+" ",1),l("span",it,i(e.$dayjs.format(""+new Date(parseFloat((e.modelValue?.created_at||"").toString())*1e3))),1)]),l("div",lt,[e.modelValue?.request?.prompt?(a(),r("p",rt,[_(i(e.modelValue?.request?.prompt)+" ",1),e.modelValue?.response?h("",!0):(a(),r("span",ct," - ("+i(e.$t("pika.status.pending"))+") ",1)),y?.state==="processing"||y?.state==="pending"||y?.state==="completed"?(a(),r("span",pt," - ("+i(e.$t("pika.status.processing"))+") ",1)):h("",!0)])):h("",!0)]),e.modelValue?.response?.success===!0?(a(),r("div",dt,[l("div",ut,[t(u,{"model-value":y},null,8,["model-value"])]),y?(a(),r("div",mt,[t(f,{class:"box-item",effect:"dark",content:e.$t("pika.message.downloadVideo"),placement:"top-start"},{default:m(()=>[y?.video_url?(a(),I(n,{key:0,type:"info",size:"small",class:"btn-action",onClick:Dt=>e.onDownload(y?.video_url)},{default:m(()=>[_(i(e.$t("pika.button.download")),1)]),_:2},1032,["onClick"])):h("",!0)]),_:2},1032,["content"])])):h("",!0),t(T,{closable:!1,class:"mt-2 success"},{default:m(()=>[l("p",ft,[t(b,{icon:"fa-solid fa-magic",class:"mr-1"}),_(" "+i(e.$t("pika.name.taskId"))+": "+i(e.modelValue?.id)+" ",1),t(E,{content:e.modelValue?.id,class:"btn-copy"},null,8,["content"])])]),_:1})])):h("",!0),e.modelValue?.response?.success===!1?(a(),r("div",_t,[t(T,{closable:!1,class:"failure"},{template:m(()=>[t(b,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),_(" "+i(e.$t("pika.name.failure")),1)]),default:m(()=>[l("p",ht,[t(b,{icon:"fa-solid fa-magic",class:"mr-1"}),_(" "+i(e.$t("pika.name.taskId"))+": "+i(e.modelValue?.id)+" ",1),t(E,{content:e.modelValue?.id,class:"btn-copy"},null,8,["content"])]),l("p",$t,[t(b,{icon:"fa-solid fa-circle-info",class:"mr-1"}),_(" "+i(e.$t("pika.name.failureReason"))+": "+i(e.modelValue?.response?.error?.message)+" ",1),t(E,{content:e.modelValue?.response?.error?.message,class:"btn-copy"},null,8,["content"])]),l("p",gt,[t(b,{icon:"fa-solid fa-hashtag",class:"mr-1"}),_(" "+i(e.$t("pika.name.traceId"))+": "+i(e.modelValue?.response?.trace_id)+" ",1),t(E,{content:e.modelValue?.response?.trace_id,class:"btn-copy"},null,8,["content"])])]),_:1})])):h("",!0),!e.modelValue?.response||y?.state==="processing"||y?.state==="pending"?(a(),r("div",kt,[t(T,{closable:!1,class:"info"},{template:m(()=>[t(b,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),_(" "+i(e.$t("pika.name.failure")),1)]),default:m(()=>[l("p",vt,[t(b,{icon:"fa-solid fa-magic",class:"mr-1"}),_(" "+i(e.$t("pika.name.taskId"))+": "+i(e.modelValue?.id)+" ",1),t(E,{content:e.modelValue?.id,class:"btn-copy"},null,8,["content"])])]),_:1})])):h("",!0)])]))),128)}const yt=g(ot,[["render",bt],["__scopeId","data-v-052d49ba"]]),wt=$({name:"RecentPanel",components:{TaskPreview:yt,ElSkeleton:ae,ElSkeletonItem:se},emits:["reach-top"],data(){return{job:0}},computed:{tasks(){return{...this.$store.state.pika?.tasks,items:this.$store.state.pika?.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")}}}),It={key:0,class:"tasks"},Et={class:"left"},Vt={class:"main"},St={key:1,class:"tasks"},Tt={key:2,class:"w-full h-full flex items-center justify-center"};function Ct(e,o,p,d,k,v){const c=s("el-skeleton-item"),u=s("el-skeleton"),n=s("task-preview");return a(),r("div",{ref:"panel",class:"panel recent",onScroll:o[0]||(o[0]=(...f)=>e.onHandleScroll&&e.onHandleScroll(...f))},[e.tasks?.items===void 0?(a(),r("div",It,[(a(),r(V,null,S(3,f=>l("div",{key:f,class:"task placeholder"},[l("div",Et,[t(u,{animated:""},{template:m(()=>[t(c,{variant:"image",class:"avatar"})]),_:1})]),l("div",Vt,[t(u,{animated:""},{template:m(()=>[t(c,{variant:"p",class:"title"}),t(c,{variant:"image",class:"icon"})]),_:1})])])),64))])):e.tasks?.items?.length&&e.tasks?.items?.length>0?(a(),r("div",St,[(a(!0),r(V,null,S(e.tasks?.items,(f,b)=>(a(),I(n,{key:b,"model-value":f,class:"preview"},null,8,["model-value"]))),128))])):h("",!0),e.tasks?.items?.length===0?(a(),r("p",Tt,i(e.$t("pika.message.noTasks")),1)):h("",!0)],544)}const At=g(wt,[["render",Ct],["__scopeId","data-v-1f6b602e"]]),Ut="https://webhook.acedata.cloud/pika",Pt=$({name:"PikaIndex",components:{ConfigPanel:Xe,Layout:pe,RecentPanel:At},inject:["initialized"],data(){return{task:void 0,job:0}},computed:{loading(){return this.$store.state.pika?.status?.getApplications===P.Request},service(){return this.$store.state.pika.service},credential(){return this.$store.state.pika.credential},config(){return this.$store.state.pika.config},initializing(){return this.$store.state.pika.status.getApplications===P.Request},needApply(){return this.$store.state.pika.status.getApplications===P.Success&&!this.application},application(){return this.$store.state.pika.application},applications(){return this.$store.state.pika.applications},tasks(){return this.$store.state.pika.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("pika/getService"),console.debug("end onGetService")},async onGetApplication(){console.debug("start onGetApplication"),await this.$store.dispatch("pika/getApplications"),console.debug("end onGetApplication"),await this.onGetTasks()},onApply(){H.create({application:this.application}).then(({data:e})=>{this.application=e,w.success(this.$t("application.message.applySuccessfully"))}).catch(e=>{e?.response?.data?.code===K&&w.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:o=5,createdAtMin:p,createdAtMax:d}=e||{};console.debug("limit",o,"createdAtMin",p,"createdAtMax",d),await this.$store.dispatch("pika/getTasks",{limit:o,createdAtMin:p,createdAtMax:d})},async onGenerate(){const e={...this.config,callback_url:Ut},o=this.credential?.token;if(!o){console.error("no token specified");return}w.info(this.$t("pika.message.startingTask")),F.generate(e,{token:o}).then(()=>{w.success(this.$t("pika.message.startTaskSuccess")),this.$store.commit("pika/setConfig",{config:void 0})}).catch(p=>{p?.response?.data?.error?.code===N?w.error(this.$t("pika.message.usedUp")):w.error(this.$t("pika.message.startTaskFailed"))}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})}}});function Rt(e,o,p,d,k,v){const c=s("config-panel"),u=s("recent-panel"),n=s("layout");return a(),I(n,null,{config:m(()=>[t(c,{onGenerate:e.onGenerate},null,8,["onGenerate"])]),result:m(()=>[t(u,{class:"panel recent",onReachTop:e.onReachTop},null,8,["onReachTop"])]),_:1})}const fo=g(Pt,[["render",Rt],["__scopeId","data-v-bc973743"]]);export{fo as default};
|