import{w as g,d as f}from"./entry.CaGtJKZT.js";import"./_sentry-release-injection-file.CoJXowhS.js";import{c as d,b as m,d as c,e as b}from"./generateSSEId.CF-9PkDq.js";import{g as w}from"./main.B_evcY-p.js";import{u as _}from"./summary.CSNuWYKY.js";import{a as U}from"./roles.CkYU7pmX.js";import{b as I}from"./gallery.D6CqKm6i.js";import{r as T,S as p}from"./stripePublic.DFFOjwmV.js";import{P as v}from"./scheduler.Djr8yumE.js";(function(){try{var n=typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{},i=new n.Error().stack;i&&(n._sentryDebugIds=n._sentryDebugIds||{},n._sentryDebugIds[i]="eb345a00-17fc-4dbf-898d-7896ec954e5b",n._sentryDebugIdIdentifier="sentry-dbid-eb345a00-17fc-4dbf-898d-7896ec954e5b")}catch{}})();const F=g([]);function J(n,i){if(!n)return;const e=i.findIndex(t=>t.id===n);if(e!==-1)return e+1}const r=g([]),D=({id:n,error:i})=>{r.update(e=>{if(e===null)return e;const t=e.find(s=>s.id===n);if(t)return t.status="failed",t.error=i,t.animation=c(t.animation),e;const o=e.find(s=>s.ui_id===n);return o&&(o.status="failed",o.error=i,o.animation=c(o.animation)),e})},N=async({id:n,outputs:i})=>{const e=v(r);if(e===null)return;const t=e.find(a=>a.id===n);if(!t)return;if(t.status="succeeded",t.outputs=i,i&&i.length>0&&i[0].image_url)try{await h(i[0].image_url)}catch(a){console.error(a)}I(t.input),t.completed_at=d(Date.now());const o=t.started_at,s=t.completed_at;o&&s&&b.set(new Date(s).getTime()-new Date(o).getTime()),r.set(e)};async function h(n){return new Promise((i,e)=>{const t=new Image;t.onload=()=>i(t),t.onerror=()=>e(t),t.src=n})}const j=({ui_id:n,id:i,queued_id:e})=>{r.update(t=>{if(t===null)return t;const o=t.find(s=>s.ui_id===n);return!o||o.status==="server-processing"||o.status==="succeeded"||o.status==="failed"||(o.id=i,o.status="server-received",o.queued_id=e),t})},M=({ui_id:n,id:i})=>{r.update(e=>{if(e===null)return e;const t=e.find(s=>s.id===i);if(t&&t.status!=="succeeded"&&t.status!=="failed")return t.status="server-processing",t.started_at=d(Date.now()),t.ui_id||(t.ui_id=n),t.animation=c(t.animation),e;const o=e.find(s=>s.ui_id===n);return o&&o.status!=="succeeded"&&o.status!=="failed"&&(o.status="server-processing",o.started_at=d(Date.now()),o.id||(o.id=i),o.animation=c(o.animation)),e})};async function X(n){r.update(i=>{const e={...n,outputs:[],created_at:d(Date.now()),status:"to-be-submitted",animation:m()};return i===null?[e]:(i.unshift(e),i)})}async function z({request:n,access_token:i,app_version:e,thumbmark_id:t}){const o=await fetch(`${w().origin}/v1/user/upscale`,{method:"POST",headers:{"Content-Type":"application/json","X-App-Version":e,"X-Thumbmark-ID":t||"",Authorization:`Bearer ${i}`},body:JSON.stringify(n)});if(!o.ok)throw D({id:n.ui_id}),new Error(`Failed to submit upscale request: ${o.status}`);const s=await o.json();return console.log("Upscale request response:",s),{...s,ui_id:n.ui_id}}const u=1,C=({productId:n,roles:i})=>{var t,o;if(!n){if(!i)return u;for(let s=0;s<i.length;s++){const a=T[i[s]];if(!a)continue;const l=(t=p[a])==null?void 0:t.parallel_upscales;if(l)return l}return u}const e=(o=p[n])==null?void 0:o.parallel_upscales;return e||u},O=f(_,n=>{const i=n==null?void 0:n.product_id,e=n==null?void 0:n.roles;return C({productId:i,roles:e})}),P=f(r,n=>n.filter(i=>i.status!=="succeeded"&&i.status!=="failed").length),Q=f([P,O,_],([n,i,e])=>U(e==null?void 0:e.roles)?!1:n>=i);export{N as a,D as b,z as c,j as d,X as e,J as g,Q as m,F as q,M as s,r as u};
//# sourceMappingURL=upscale.Bt8oldkl.js.map
