(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[7893,2386],{39996:function(e,t,a){"use strict";a.r(t),a.d(t,{ControlParam:function(){return U},ControlParamItem:function(){return $},Sd:function(){return eh},SdPanel:function(){return X},getModelParamBasicData:function(){return V},getParams:function(){return z},models:function(){return J},params:function(){return G}});var r,n,l,s,i,d,o,c,m=a(57437),u=a(3109),p=a.n(u),h=a(61399),v=a.n(h),g=a(71869),x=a.n(g),P=a(35499),S=a(76908),j=a(13894),f=a(75591),y=a(2265),w=a(92944),b=a(59208),_=a(44922),Z=a(68397),k=a(14845),C=a(94880),N=a(54838),A=a(24333),E=a(84193),M=a(52846);function I(){return(I=Object.assign?Object.assign.bind():function(e){for(var t=1;tG.filter(t=>!(t.support&&!t.support.includes(e))),J=[{name:"Stable Image Ultra",value:"ultra",params:e=>K("ultra",e)},{name:"Stable Image Core",value:"core",params:e=>K("core",e)},{name:"Stable Diffusion 3",value:"sd3",params:e=>K("sd3",e).filter(t=>!("sd3-large-turbo"===e.model&&"negative_prompt"==t.value))}];function $(e){return(0,m.jsxs)("div",{className:(0,B.Z)(R()["ctrl-param-item"],e.className),children:[(0,m.jsx)("div",{className:R()["ctrl-param-item-header"],children:(0,m.jsx)("div",{className:R()["ctrl-param-item-title"],children:(0,m.jsxs)("div",{children:[e.title,e.required&&(0,m.jsx)("span",{style:{color:"red"},children:"*"})]})})}),e.children,e.subTitle&&(0,m.jsx)("div",{className:R()["ctrl-param-item-sub-title"],children:e.subTitle})]})}function U(e){var t;return(0,m.jsx)(m.Fragment,{children:null===(t=e.columns)||void 0===t?void 0:t.map(t=>{let a;switch(t.type){case"textarea":a=(0,m.jsx)($,{title:t.name,subTitle:t.sub,required:t.required,children:(0,m.jsx)("textarea",{rows:t.rows||3,style:{maxWidth:"100%",width:"100%",padding:"10px"},placeholder:t.placeholder,onChange:a=>{e.onChange(t.value,a.currentTarget.value)},value:e.data[t.value]})});break;case"select":a=(0,m.jsx)($,{title:t.name,subTitle:t.sub,required:t.required,children:(0,m.jsx)(F.Ph,{"aria-label":t.name,value:e.data[t.value],onChange:a=>{e.onChange(t.value,a.currentTarget.value)},children:t.options.map(e=>(0,m.jsx)("option",{value:e.value,children:e.name},e.value))})});break;case"number":a=(0,m.jsx)($,{title:t.name,subTitle:t.sub,required:t.required,children:(0,m.jsx)("input",{"aria-label":t.name,type:"number",min:t.min,max:t.max,value:e.data[t.value]||0,onChange:a=>{e.onChange(t.value,parseInt(a.currentTarget.value))}})});break;default:a=(0,m.jsx)($,{title:t.name,subTitle:t.sub,required:t.required,children:(0,m.jsx)("input",{"aria-label":t.name,type:"text",value:e.data[t.value],style:{maxWidth:"100%",width:"100%"},onChange:a=>{e.onChange(t.value,a.currentTarget.value)}})})}return(0,m.jsx)("div",{children:a},t.value)})})}let V=(e,t,a)=>{let r={};return e.forEach(e=>{a&&["text","textarea","number"].includes(e.type)?r[e.value]=e.default||"":r[e.value]=t[e.value]||e.default||""}),r},z=(e,t)=>{var a;return(null===(a=J.find(t=>t.value===e.value))||void 0===a?void 0:a.params(t))||[]};function X(){let e=et(),t=e.currentModel,a=e.setCurrentModel,r=e.currentParams,n=e.setCurrentParams,l=e=>{a(e),n(V(e.params({}),r))};return(0,m.jsxs)(m.Fragment,{children:[(0,m.jsx)($,{title:j.ZP.SdPanel.AIModel,children:(0,m.jsx)("div",{className:R()["ai-models"],children:J.map(e=>(0,m.jsx)(P.h,{text:e.name,type:t.value==e.value?"primary":null,shadow:!0,onClick:()=>l(e)},e.value))})}),(0,m.jsx)(U,{columns:null==z?void 0:z(t,r),data:r,onChange:(e,t)=>{n({...r,[e]:t})}})]})}var Q=a(39138);let Y={name:J[0].name,value:J[0].value},ee=V(J[0].params({}),{}),et=(0,L.D)({currentId:0,draw:[],currentModel:Y,currentParams:ee},(e,t)=>({getNextId(){let a=++t().currentId;return e({currentId:a}),a},sendTask(a,r){e({draw:[a={...a,id:(0,q.x0)(),status:"running"},...t().draw]}),this.getNextId(),this.stabilityRequestCall(a),null==r||r()},stabilityRequestCall(e){let t=Q._.getState(),a=f.L.Stability,r="";t.useCustomConfig&&(a=t.stabilityUrl||f.L.Stability,r=(0,T.Oj)(t.stabilityApiKey)),!r&&t.enabledAccessControl()&&(r=(0,T.Oj)(f.TW+t.accessCode));let n={Accept:"application/json",Authorization:r},l="".concat(a,"/").concat(f.Xy.GeneratePath,"/").concat(e.model),s=new FormData;for(let t in e.params)s.append(t,e.params[t]);fetch(l,{method:"POST",headers:n,body:s}).then(e=>e.json()).then(t=>{if(t.errors&&t.errors.length>0){this.updateDraw({...e,status:"error",error:t.errors[0]}),this.getNextId();return}let a=this;"SUCCESS"===t.finish_reason?(0,W.Ix)((0,W.lf)(t.image,"image/png")).then(t=>{console.debug("uploadImage success",t,a),a.updateDraw({...e,status:"success",img_data:t})}).catch(t=>{console.error("uploadImage error",t),a.updateDraw({...e,status:"error",error:JSON.stringify(t)})}):a.updateDraw({...e,status:"error",error:JSON.stringify(t)}),this.getNextId()}).catch(t=>{this.updateDraw({...e,status:"error",error:t.message}),console.error("Error:",t),this.getNextId()})},updateDraw(a){let r=t().draw||[];r.some((t,n)=>{if(t.id===a.id)return r[n]=a,e(()=>({draw:r})),!0})},setCurrentModel(t){e({currentModel:t})},setCurrentParams(t){e({currentParams:t})}}),{name:f.KJ.SdList,version:1});var ea=a(24053),er=a(15592);function en(){return(en=Object.assign?Object.assign.bind():function(e){for(var t=1;t(await Promise.resolve().then(a.bind(a,39996))).SdPanel,{loadableGenerated:{webpack:()=>[39996]},loading:()=>null});function eu(e){(0,ec.Ku)();let t=(0,w.S0)(),{onDragStart:a,shouldNarrow:r}=(0,ec.RW)(),n=(0,b.s0)(),l=et(),s=l.currentModel,i=l.currentParams,d=l.setCurrentParams;return(0,m.jsxs)(ec.th,{onDragStart:a,shouldNarrow:r,...e,children:[t?(0,m.jsxs)("div",{className:"window-header","data-tauri-drag-region":!0,style:{paddingLeft:0,paddingRight:0},children:[(0,m.jsx)("div",{className:"window-actions",children:(0,m.jsx)("div",{className:"window-action-button",children:(0,m.jsx)(P.h,{icon:(0,m.jsx)(S.Z,{}),bordered:!0,title:j.ZP.Sd.Actions.ReturnHome,onClick:()=>n(f.y$.Home)})})}),(0,m.jsx)(el,{width:50,height:50}),(0,m.jsx)("div",{className:"window-actions",children:(0,m.jsx)("div",{className:"window-action-button",children:(0,m.jsx)(P.h,{icon:(0,m.jsx)(ed,{}),bordered:!0,title:j.ZP.Sd.Actions.History,onClick:()=>n(f.y$.SdNew)})})})]}):(0,m.jsx)(ec.ec,{title:(0,m.jsx)(P.h,{icon:(0,m.jsx)(S.Z,{}),bordered:!0,title:j.ZP.Sd.Actions.ReturnHome,onClick:()=>n(f.y$.Home)}),logo:(0,m.jsx)(el,{width:38,height:"100%"})}),(0,m.jsx)(ec.M3,{children:(0,m.jsx)(em,{})}),(0,m.jsx)(ec.yw,{primaryAction:(0,m.jsx)("a",{href:f.Bv,target:"_blank",rel:"noopener noreferrer",children:(0,m.jsx)(P.h,{icon:(0,m.jsx)(es.Z,{}),shadow:!0})}),secondaryAction:(0,m.jsx)(P.h,{text:j.ZP.SdPanel.Submit,type:"primary",shadow:!0,onClick:()=>{let e=null==z?void 0:z(s,i),t={};for(let r=0;r{d(V(e,i,!0)),n(f.y$.SdNew)})}})})]})}var ep=a(34307);function eh(){let e=(0,w.S0)(),t=(0,b.s0)(),a=(0,b.TH)(),r=(0,y.useMemo)(()=>(0,C.Z)(),[]),n=!e&&!(null==r?void 0:r.isApp),l=(0,_.MG)(),s=(0,y.useRef)(null),i=et(),[d,o]=(0,y.useState)(i.draw),c=a.pathname===f.y$.Sd;return(0,y.useEffect)(()=>{o(i.draw)},[i.currentId]),(0,m.jsxs)(m.Fragment,{children:[(0,m.jsx)(eu,{className:(0,B.Z)({[x()["sidebar-show"]]:c})}),(0,m.jsx)(ep.WindowContent,{children:(0,m.jsxs)("div",{className:p().chat,children:[(0,m.jsxs)("div",{className:"window-header","data-tauri-drag-region":!0,children:[e&&(0,m.jsx)("div",{className:"window-actions",children:(0,m.jsx)("div",{className:"window-action-button",children:(0,m.jsx)(P.h,{icon:(0,m.jsx)(S.Z,{}),bordered:!0,title:j.ZP.Chat.Actions.ChatList,onClick:()=>t(f.y$.Sd)})})}),(0,m.jsxs)("div",{className:(0,B.Z)("window-header-title",p()["chat-body-title"]),children:[(0,m.jsx)("div",{className:"window-header-main-title",children:"Stability AI"}),(0,m.jsx)("div",{className:"window-header-sub-title",children:j.ZP.Sd.SubTitle(d.length||0)})]}),(0,m.jsxs)("div",{className:"window-actions",children:[n&&(0,m.jsx)("div",{className:"window-action-button",children:(0,m.jsx)(P.h,{aria:j.ZP.Chat.Actions.FullScreen,icon:l.tightBorder?(0,m.jsx)(Z.Z,{}):(0,m.jsx)(k.Z,{}),bordered:!0,onClick:()=>{l.update(e=>e.tightBorder=!e.tightBorder)}})}),e&&(0,m.jsx)(el,{width:50,height:50})]})]}),(0,m.jsx)("div",{className:p()["chat-body"],ref:s,children:(0,m.jsx)("div",{className:v()["sd-img-list"],children:d.length>0?d.map(t=>(0,m.jsxs)("div",{style:{display:"flex"},className:v()["sd-img-item"],children:["success"===t.status?(0,m.jsx)("img",{className:v().img,src:t.img_data,alt:t.id,onClick:a=>(0,F.vi)(t.img_data,!0,e?{width:"100%",height:"fit-content"}:{maxWidth:"100%",maxHeight:"100%"},e?{width:"100%",height:"fit-content"}:{width:"100%",height:"100%"})}):"error"===t.status?(0,m.jsx)("div",{className:v()["pre-img"],children:(0,m.jsx)(er.Z,{})}):(0,m.jsx)("div",{className:v()["pre-img"],children:(0,m.jsx)(ea.Z,{})}),(0,m.jsxs)("div",{style:{marginLeft:"10px"},className:v()["sd-img-item-info"],children:[(0,m.jsxs)("p",{className:v()["line-1"],children:[j.ZP.SdPanel.Prompt,":"," ",(0,m.jsx)("span",{className:"clickable",title:t.params.prompt,onClick:()=>{(0,F.K4)({title:j.ZP.Sd.Detail,children:(0,m.jsx)("div",{style:{userSelect:"text"},children:t.params.prompt})})},children:t.params.prompt})]}),(0,m.jsxs)("p",{children:[j.ZP.SdPanel.AIModel,": ",t.model_name]}),function(e){let t,a;switch(e.status){case"success":t=j.ZP.Sd.Status.Success,a="green";break;case"error":t=j.ZP.Sd.Status.Error,a="red";break;case"wait":t=j.ZP.Sd.Status.Wait,a="yellow";break;case"running":t=j.ZP.Sd.Status.Running,a="blue";break;default:t=e.status.toUpperCase()}return(0,m.jsxs)("p",{className:v()["line-1"],title:e.error,style:{color:a},children:[(0,m.jsxs)("span",{children:[j.ZP.Sd.Status.Name,": ",t]}),"error"===e.status&&(0,m.jsxs)("span",{className:"clickable",onClick:()=>{(0,F.K4)({title:j.ZP.Sd.Detail,children:(0,m.jsx)("div",{style:{color:a,userSelect:"text"},children:e.error})})},children:["- ",e.error]})]})}(t),(0,m.jsx)("p",{children:t.created_at}),(0,m.jsx)("div",{className:p()["chat-message-actions"],children:(0,m.jsxs)("div",{className:p()["chat-input-actions"],children:[(0,m.jsx)(N.ChatAction,{text:j.ZP.Sd.Actions.Params,icon:(0,m.jsx)(D,{}),onClick:()=>{(0,F.K4)({title:j.ZP.Sd.GenerateParams,children:(0,m.jsx)("div",{style:{userSelect:"text"},children:Object.keys(t.params).map(e=>{let a=e,r=t.params[e];switch(a){case"prompt":a=j.ZP.SdPanel.Prompt;break;case"negative_prompt":a=j.ZP.SdPanel.NegativePrompt;break;case"aspect_ratio":a=j.ZP.SdPanel.AspectRatio;break;case"seed":a="Seed",r=r||0;break;case"output_format":a=j.ZP.SdPanel.OutFormat,r=null==r?void 0:r.toUpperCase();break;case"style":var n,l,s;a=j.ZP.SdPanel.ImageStyle,r=null===(s=G.find(e=>"style"===e.value))||void 0===s?void 0:null===(l=s.options)||void 0===l?void 0:null===(n=l.find(e=>e.value===r))||void 0===n?void 0:n.name}return(0,m.jsxs)("div",{style:{margin:"10px"},children:[(0,m.jsxs)("strong",{children:[a,": "]}),r]},e)})})})}}),(0,m.jsx)(N.ChatAction,{text:j.ZP.Sd.Actions.Copy,icon:(0,m.jsx)(E.Z,{}),onClick:()=>(0,w.vQ)((0,w.YK)({role:"user",content:t.params.prompt}))}),(0,m.jsx)(N.ChatAction,{text:j.ZP.Sd.Actions.Retry,icon:(0,m.jsx)(O.Z,{}),onClick:()=>{let e={model:t.model,model_name:t.model_name,status:"wait",params:{...t.params},created_at:new Date().toLocaleString(),img_data:""};i.sendTask(e)}}),(0,m.jsx)(N.ChatAction,{text:j.ZP.Sd.Actions.Delete,icon:(0,m.jsx)(A.Z,{}),onClick:async()=>{await (0,F.i0)(j.ZP.Sd.Danger.Delete)&&(0,W.CM)(t.img_data).finally(()=>{i.draw=d.filter(e=>e.id!==t.id),i.getNextId()})}})]})})]})]},t.id)):(0,m.jsx)("div",{children:j.ZP.Sd.EmptyRecord})})})]},"1")})]})}},44666:function(e){e.exports={"ctrl-param-item":"sd-panel_ctrl-param-item__J3n2p","slide-in":"sd-panel_slide-in__pgHFP","ctrl-param-item-header":"sd-panel_ctrl-param-item-header__WMsg6","ctrl-param-item-title":"sd-panel_ctrl-param-item-title__2MLu7","ctrl-param-item-sub-title":"sd-panel_ctrl-param-item-sub-title__BAohX","ai-models":"sd-panel_ai-models__gLs5k"}},61399:function(e){e.exports={"sd-img-list":"sd_sd-img-list__oHHnG","sd-img-item":"sd_sd-img-item__cMa5W","sd-img-item-info":"sd_sd-img-item-info__jbgQS","line-1":"sd_line-1__2ScCb","pre-img":"sd_pre-img__Ty1zJ",img:"sd_img__9EVCT"}}}]);