import{d as ns,o as ls,L as rs,a as d,c as f,b as os,B as us,e as o,F as z,r as ye,t as v,f as h,M as is,N as qe,n as Oe,g as y,h as V,O as cs,i as Q,E as p,P as ds,Q as fs,R as vs,S as hs,T as ps,U as _s,_ as ys,q as gs,s as ms}from"./pywebview-Cz_PRNOK.js";import{e as ks}from"./brand-Cs6TxmtW.js";import{c as ws}from"./categorized-timers-JPA-olTr.js";const Is={class:"page-shell module-page"},bs={class:"main-content"},Ss={class:"left-panel"},Ts={class:"upload-zone"},Cs={class:"selected-files clean-placeholder split-selected-files"},Rs={key:0,class:"more-line"},Ns={key:1},Es={class:"run-row"},Fs=["disabled"],Ps=["disabled"],xs={class:"loading-msg"},$s={key:0,class:"queue-debug-card"},As={key:0,class:"queue-debug-line"},Ds={key:1,class:"queue-debug-payload"},Ms={class:"right-panel"},Bs={class:"task-list-wrap"},Us={class:"clean-result-summary"},Ls={class:"summary-card"},qs={class:"summary-card"},Os={class:"summary-card"},Ks={class:"result-list-wrap"},Gs={key:0,class:"empty-tasks"},Hs={key:0,class:"result-subsection"},Js={class:"task-list clean-result-list"},js={class:"left split-result-main"},zs=["title"],Vs={class:"files"},Qs={class:"files"},Xs={key:0,class:"files"},Ws={key:1,class:"files"},Ys={key:2,class:"files"},Zs={key:3,class:"time"},et={key:4,class:"delete-brand-progress-block"},st={class:"delete-brand-progress-header"},tt={class:"delete-brand-progress-bar"},at={class:"files delete-brand-progress"},nt={key:5,class:"files split-entry-list delete-brand-preview"},lt={key:6,class:"files"},rt={class:"task-right split-result-actions"},ot=["onClick"],ut=["onClick"],it={key:1,class:"result-subsection"},ct={class:"task-list clean-result-list"},dt={class:"left split-result-main"},ft=["title"],vt={class:"files"},ht={class:"files"},pt={key:0,class:"files"},_t={key:1,class:"files"},yt={key:2,class:"time"},gt={key:3,class:"delete-brand-progress-block"},mt={class:"delete-brand-progress-header"},kt={class:"delete-brand-progress-bar"},wt={class:"files delete-brand-progress"},It={key:4,class:"files split-entry-list delete-brand-preview"},bt={key:5,class:"files"},St={class:"task-right split-result-actions"},Tt=["onClick"],Ct=["onClick"],Rt=ns({__name:"BrandDeleteBrandTab",setup(Et){function D(){return`delete-brand:current-tasks:${typeof window<"u"&&window.localStorage.getItem("uid")||"0"}`}const M=y([]),X=y([]),O=y(!1),ge=y([]),i=y([]),K=y([]),W=y({total:0,successCount:0,failedCount:0,items:[]}),b=y(""),S=y(""),m=y({}),T=y(null),le=y(!1),Y=y(!1),R=y(!1),B=y(""),Z=y(!1),G=y(null),re=y(!1);let U=!1;const L=ws("delete-brand"),oe=V(()=>M.value.slice(0,10)),N=V(()=>{const e=[...i.value].sort((t,a)=>(a.createdAt||0)-(t.createdAt||0)),s=[];return e.forEach(t=>{s.push(...t.items)}),s});function Ke(){try{const e=typeof window<"u"?window.localStorage.getItem(D()):null;if(e){if(i.value=JSON.parse(e),i.value.length>0){const s=i.value[i.value.length-1];b.value=s.queuePushResult||"",S.value=s.queuePayloadText||""}}else i.value=[]}catch{i.value=[]}}function ue(e,s,t,a){if(!s?.length)return;const r=i.value.findIndex(c=>c.taskId===e),l=r>=0?i.value[r]:null,n=s.map(c=>{const _=l?.items.find(as=>q(as,c)),k=Array.isArray(c.countries)?c.countries:void 0,g=Array.isArray(_?.countries)?_?.countries:void 0,w=k&&k.length>0?k:g&&g.length>0?g:k??g,I=Array.isArray(c.previewRows)?c.previewRows:void 0,C=Array.isArray(_?.previewRows)?_?.previewRows:void 0,_e=I&&I.length>0?I:C&&C.length>0?C:I??C;return{...c,countries:w,previewRows:_e,_pushed:_?._pushed??c._pushed??!1,_completed:_?._completed??c._completed??!1}}),u={taskId:e,items:n,createdAt:l?.createdAt||Date.now(),queuePushResult:t??l?.queuePushResult,queuePayloadText:a??l?.queuePayloadText};r>=0?i.value[r]=u:i.value.push(u),typeof window<"u"&&window.localStorage.setItem(D(),JSON.stringify(i.value))}function me(e){const s=i.value.length;i.value=i.value.filter(t=>t.taskId!==e),i.value.length!==s&&typeof window<"u"&&window.localStorage.setItem(D(),JSON.stringify(i.value))}function ke(e){return e==="SUCCESS"||e==="FAILED"||e==="COMPLETED"}function Ge(e){if(!e?.length)return!1;const s=new Set;if(e.forEach(a=>{a.taskId&&ke(a.taskStatus)&&s.add(a.taskId)}),!s.size)return!1;const t=i.value.length;return i.value=i.value.filter(a=>!s.has(a.taskId)),i.value.length!==t?(ie(),!0):!1}const ee=V(()=>K.value.filter(e=>!N.value.some(s=>q(s,e)))),He=V(()=>N.value.length>0||ee.value.length>0),Je=V(()=>N.value.filter(e=>Me(e)&&E(e)==="未入队"));function ie(){typeof window<"u"&&(i.value.length===0?window.localStorage.removeItem(D()):window.localStorage.setItem(D(),JSON.stringify(i.value)))}function P(e){return e?(i.value.find(t=>t.taskId===e)?.items.length||0)>1:!1}function ce(e){return e&&i.value.find(s=>s.taskId===e)||null}function q(e,s){return!e||!s?!1:e.resultId!=null&&s.resultId!=null?e.resultId===s.resultId:e.fileKey&&s.fileKey?e.fileKey===s.fileKey:e.sourceFilename===s.sourceFilename}function x(e,s){const t=ce(e);return t&&t.items.find(a=>q(a,s))||null}function we(e){if(!e)return!1;const s=ce(e);if(!s)return!1;let t=!1;const a=m.value[e]?.line_progress?.info,r=P(e);if(a?.file_name&&a.current_line!=null&&a.total_lines!=null&&a.total_lines>0&&a.current_line>=a.total_lines){const l=s.items.find(n=>n.sourceFilename===a.file_name);l&&!l._completed&&(l._completed=!0,t=!0)}if(!r){const l=m.value[e]?.task?.status;if((l==="SUCCESS"||l==="FAILED")&&s.items.length===1){const n=s.items[0];n&&!n._completed&&(n._completed=!0,t=!0)}}return t&&ie(),t}function Ie(e){return e&&m.value[e]?.task?.status||""}function se(e){if(e.error)return e.error;if(e.matchStatus&&e.matchStatus!=="MATCHED")return e.matchMessage||"";const s=e.taskId;return s&&m.value[s]?.task?.errorMessage||""}function be(e){const s=e.taskId;if(!s)return!1;const t=m.value[s]?.line_progress,a=Ie(s),r=P(s),l=E(e);if(r){const n=x(s,e),u=j(e)===B.value,c=!!(t?.has_progress&&t?.info?.file_name===e.sourceFilename);return u||c||n?._pushed||(a==="RUNNING"||a==="PENDING"||!a)&&n?._completed?!0:{success:!1,retryable:!0}}return l==="本文件解析完毕"||l==="已被全局判定为终态"?!1:t?.has_progress||t?.info?!0:l==="已入队"||l==="处理中"}function Se(e){return e.map(s=>A(s)?{...s,matched:!0,_pushed:!1,_completed:!1}:{...s,matched:!1,openStoreUrl:void 0,error:s.error||void 0,_pushed:!1,_completed:!1})}function Te(e){return e.matchStatus==="INDEX_STALE"&&A(e)?`已匹配 ${e.shopId||""}(索引过期,可继续推送)`.trim():e.matchStatus==="MATCHED"||e.matched?`已匹配 ${e.shopId||""}`.trim():e.matchMessage?e.matchMessage:e.matchStatus==="CONFLICT"?"存在多个同名店铺,请人工确认":e.matchStatus==="PENDING"?"店铺索引暂未就绪":e.matchStatus?e.matchStatus:e.matched?`已匹配 ${e.shopId||""}`.trim():"待匹配"}function je(){ge.value=[...N.value,...ee.value]}function $(){je(),ze(ge.value)}function ze(e){W.value={total:e.length,successCount:e.filter(s=>s.success).length,failedCount:e.filter(s=>!s.success).length,items:e}}function de(e){const s=e.taskId;return s&&(m.value[s]?.fileProgress||[]).find(r=>r.fileKey&&e.fileKey?r.fileKey===e.fileKey:r.sourceFilename&&e.sourceFilename?r.sourceFilename===e.sourceFilename:!1)||null}function Ce(e){const s=e.taskId;if(!s)return"";const t=m.value[s],a=t?.line_progress?.info,r=de(e);if(P(s)){const u=x(s,e),c=t?.task?.status,_=!!(a?.file_name&&a.file_name===e.sourceFilename);let k=u?._completed?"COMPLETED":(u?._pushed,"PENDING"),g=0,w=Math.max(0,e.totalRows??r?.totalRows??0);c==="SUCCESS"||c==="FAILED"&&u?._completed?(k="COMPLETED",g=w):_?(k="RUNNING",g=Math.max(0,Math.min(w||Number.MAX_SAFE_INTEGER,a?.current_line??0)),!w&&a?.total_lines&&a.total_lines>0&&(w=a.total_lines)):u?._completed?(k="COMPLETED",g=w):u?._pushed&&(k="PENDING",g=0);const I=[];if(I.push(`文件状态:${k}`),I.push(`文件进度:${g}/${w}`),a?.finished_files!=null){const C=a.file_total&&a.file_total>0?`/${a.file_total}`:"";I.push(`已完成文件:${a.finished_files}${C}`)}return a?.phase&&I.push(`阶段:${a.phase}`),I.join("|")}if(r){const u=[],c=r.processedRows??0,_=r.totalRows??0;if(r.status&&u.push(`文件状态:${r.status}`),u.push(`文件进度:${c}/${_}`),a?.finished_files!=null){const k=a.file_total&&a.file_total>0?`/${a.file_total}`:"";u.push(`已完成文件:${a.finished_files}${k}`)}return a?.phase&&u.push(`阶段:${a.phase}`),u.join("|")}if(!t?.line_progress?.has_progress||!a){const u=t?.task?.status;return u?`任务状态:${u}`:""}const n=[];if(a.phase&&n.push(`阶段:${a.phase}`),a.file_index&&a.file_total&&n.push(`文件:${a.file_index}/${a.file_total}`),a.file_name&&n.push(`当前文件:${a.file_name}`),a.current_line!=null&&a.total_lines!=null&&n.push(`${P(s)?"当前文件进度":"进度"}:${a.current_line}/${a.total_lines}`),a.current_country&&n.push(`国家:${a.current_country}`),a.current_asin&&n.push(`ASIN:${a.current_asin}`),a.finished_files!=null){const u=a.file_total&&a.file_total>0?`/${a.file_total}`:"";n.push(`已完成文件:${a.finished_files}${u}`)}return n.join("|")}function te(e){const s=e.taskId;if(!s)return 0;const t=m.value[s]?.line_progress?.info;if(P(s)){const n=x(s,e);if(m.value[s]?.task?.status==="SUCCESS"||n?._completed)return 100;const c=Math.max(0,e.totalRows??de(e)?.totalRows??0);if(!!(t?.file_name&&t.file_name===e.sourceFilename)){if(t?.current_line!=null&&t?.total_lines&&t.total_lines>0)return Math.max(0,Math.min(100,Math.round(t.current_line/t.total_lines*100)));if(t?.current_line!=null&&c>0)return Math.max(0,Math.min(100,Math.round(t.current_line/c*100)))}return 0}const r=de(e);return r?Math.max(0,Math.min(100,r.percent??0)):t?t.current_line!=null&&t.total_lines&&t.total_lines>0?Math.max(0,Math.min(100,Math.round(t.current_line/t.total_lines*100))):t.finished_files!=null&&t.file_total&&t.file_total>0?Math.max(0,Math.min(100,Math.round(t.finished_files/t.file_total*100))):m.value[s]?.task?.status==="SUCCESS"?100:0:0}function Re(e){const s=m.value[e]?.task?.status;return ke(s)}function H(){const e=new Set;return i.value.forEach(s=>{s.items.some(t=>t._pushed)&&e.add(s.taskId)}),Array.from(e)}function E(e){const s=e.taskId;if(!s||!ce(s))return"";const a=x(s,e),r=Ie(s),l=m.value[s]?.line_progress,n=P(s);if(!n&&(r==="SUCCESS"||r==="FAILED"||e.taskStatus==="SUCCESS"||e.taskStatus==="FAILED"))return"已被全局判定为终态";if(ae(e)||ae(a)||a?._completed)return"本文件解析完毕";if(r==="RUNNING"&&l?.has_progress&&l?.info?.file_name===e.sourceFilename)return"处理中";if(n&&!a?._pushed&&!a?._completed)return"未入队";if(n&&r==="SUCCESS")return"本文件解析完毕";if(!n){const u=m.value[s];if(u?.items&&u.items.find(_=>q(_,e))&&r==="SUCCESS")return"本文件解析完毕"}return a?._pushed?"已入队":"未入队"}function Ne(e){return!!(e.downloadUrl||e.fileReady)}function ae(e){if(!e)return!1;const s=String(e.fileStatus||"").toUpperCase();return!!(e.fileReady||e.downloadUrl||s==="SUCCESS"||s==="COMPLETED")}function F(e,s){return e??s}function Ve(e){const s=e?.task?.id;if(!s)return!1;const t=i.value.find(n=>n.taskId===s);if(!t)return{success:!1,retryable:!1};const a=e?.items||[];let r=!1;const l=t.items.map(n=>{const u=a.find(_e=>q(_e,n));if(!u)return n;const c=Array.isArray(u.countries)?u.countries:void 0,_=Array.isArray(n.countries)?n.countries:void 0,k=c&&c.length>0?c:_&&_.length>0?_:c??_,g=Array.isArray(u.previewRows)?u.previewRows:void 0,w=Array.isArray(n.previewRows)?n.previewRows:void 0,I=g&&g.length>0?g:w&&w.length>0?w:g??w,C={...n,...u,shopName:F(u.shopName,n.shopName),companyName:F(u.companyName,n.companyName),shopId:F(u.shopId,n.shopId),platform:F(u.platform,n.platform),openStoreUrl:F(u.openStoreUrl,n.openStoreUrl),matchStatus:F(u.matchStatus,n.matchStatus),matchMessage:F(u.matchMessage,n.matchMessage),matched:A(n)||A(u),countryCount:F(u.countryCount,n.countryCount),countries:k,previewRows:I,_pushed:n._pushed,_completed:n._completed||ae(u)};return JSON.stringify(C)!==JSON.stringify(n)&&(r=!0),C});for(const n of a)l.some(u=>q(u,n))||(l.push({...n,_pushed:!1,_completed:ae(n)}),r=!0);return JSON.stringify(l)!==JSON.stringify(t.items)&&(t.items=l,r=!0),r&&ie(),r}async function fe(e){const s=e||H();if(s.length)try{const t=await cs(s);re.value&&R.value&&(b.value="后端已恢复,继续执行当前任务并自动衔接后续任务..."),re.value=!1;let a=!1;for(const r of t.items||[]){const l=r?.task?.id;typeof l=="number"&&l>0&&(m.value[l]=r,Ve(r)&&(a=!0),we(l)&&(a=!0))}a&&$()}catch(t){const a=(t instanceof Error?t.message:String(t||"")).toLowerCase();["无法连接到后端服务","bad gateway","gateway timeout","network error","timeout","502","503","504"].some(l=>a.includes(l.toLowerCase()))&&R.value&&(re.value=!0,b.value="当前任务运行中,正在等待后端服务恢复...")}}function Qe(){return _s()}function ve(e=!1){if(U)return;if(T.value){if(!e)return;L.clearTimer("task-poll",T.value),T.value=null}const s=async()=>{if(T.value=null,U)return;if(le.value){ve();return}const t=H();if(!t.length)return;le.value=!0;let a=!1,r=!1;try{await fe(t),await Le();for(const l of t)Re(l)&&(me(l),a=!0,r=!0)}finally{le.value=!1}r?await J():a&&$(),!U&&H().length>0&&ve()};e?s():T.value=L.setTimeout("task-poll",s,Qe())}function he(e=!1){T.value&&!e||ve(e)}function ne(e){if(e.fileReady||e.downloadUrl)return{className:"success",text:"已完成"};const s=e.taskId?m.value[e.taskId]?.task?.status:null;return s==="SUCCESS"?{className:"success",text:"已完成"}:s==="FAILED"?{className:"failed",text:"失败"}:s==="RUNNING"?{className:"running",text:"执行中"}:e.taskStatus==="SUCCESS"?{className:"success",text:"已完成"}:e.taskStatus==="FAILED"?{className:"failed",text:"失败"}:e.taskStatus==="RUNNING"?{className:"running",text:"执行中"}:e.success?{className:"success",text:"已完成"}:{className:"failed",text:"失败"}}function Ee(){T.value&&(L.clearTimer("task-poll",T.value),T.value=null),pe()}async function Fe(e){const s=Q();if(!s?.upload_file_to_java)throw new Error("当前桌面端未提供文件上传桥接能力");const t=[];for(const a of e){const r=typeof a=="string"?a:a.absolutePath,l=typeof a=="string"?void 0:a.relativePath,n=await s.upload_file_to_java(r,l);if(!n?.success||!n.data)throw new Error(n?.error||n?.message||`上传失败:${r}`);t.push(n.data)}return t}async function Xe(){const e=Q();if(!e?.select_brand_xlsx_files){p.warning("当前环境不支持文件选择,请在本机客户端中打开");return}try{const s=await e.select_brand_xlsx_files();if(!s?.length)return;M.value=s,X.value=await Fe(s),p.success(`已选择 ${s.length} 个删除品牌文件`)}catch(s){p.error(s instanceof Error?s.message:"选择失败")}}async function We(){const e=Q();if(!e?.select_brand_folder){p.warning("当前环境不支持文件夹选择,请在本机客户端中打开");return}try{const s=await e.select_brand_folder();if(!s)return;const t=await ks(s);if(!t.success||!t.items?.length){p.warning(t.error||"该文件夹下没有 xlsx 文件");return}M.value=t.items.map(a=>a.relativePath||a.absolutePath),X.value=await Fe(t.items),p.success(`已选择文件夹内 ${t.items.length} 个 xlsx 文件`)}catch(s){p.error(s instanceof Error?s.message:"选择失败")}}async function Ye(){if(!X.value.length){p.warning("请先选择待处理文件");return}try{O.value=!0;const e=await ds({files:X.value.map(l=>({fileKey:l.fileKey,originalFilename:l.originalFilename,relativePath:l.relativePath}))}),s=Se(e.items||[]),t=s.some(l=>A(l)),a=s.some(l=>l.matchStatus==="INDEX_STALE"&&l.matched),r=s.some(l=>!A(l));b.value=t?"解析完成,可在左侧点击“推送到 Python 队列”开始串行处理":"解析完成,当前没有可推送的文件",S.value="",s.length&&s[0].taskId&&ue(s[0].taskId,s,b.value,S.value),$(),r?p.warning("部分文件尚未命中可用店铺索引,已保留状态信息,请等待后台刷新后重试。"):a?p.warning("部分文件命中的是过期索引,仍可推送到 Python 队列;后台刷新后会自动重新匹配。"):t?p.success("删除品牌解析完成,请在左侧推送到 Python 队列"):p.warning("当前没有可推送的文件,请先等待店铺索引刷新。"),await J()}catch(e){p.error(e instanceof Error?e.message:"执行失败")}finally{O.value=!1}}async function Pe(e){const s=e.taskId;if(!s){p.warning("未找到任务ID");return}const t=Q(),a=e.resultId?fs(e.resultId):vs(s),r=e.outputFilename||e.sourceFilename||`delete-brand_${s}.xlsx`;if(t?.save_file_from_url_new){const l=await t.save_file_from_url_new(a,r);l.success?p.success(`已保存:${l.path||r}`):l.error&&l.error!=="用户取消"&&p.error(l.error);return}}async function J(){try{const e=await hs();K.value=Se(e.items||[]),Ge(K.value),$(),await fe(),he(!0)}catch(e){const s=(e instanceof Error?e.message:String(e||"")).toLowerCase();["无法连接到后端服务","bad gateway","gateway timeout","network error","timeout","502","503","504"].some(a=>s.includes(a.toLowerCase()))||console.error("loadHistory error:",e)}}function xe(e){i.value.forEach(t=>{t.items=t.items.filter(a=>a.resultId!==e)});const s=i.value.length;i.value=i.value.filter(t=>t.items.length>0),i.value.length!==s&&typeof window<"u"&&window.localStorage.setItem(D(),JSON.stringify(i.value)),K.value=K.value.filter(t=>t.resultId!==e),$(),H().length===0&&Ee()}async function $e(e){try{await ps(e),xe(e),await J(),p.success("已删除")}catch(s){const t=s instanceof Error?s.message:"删除失败";if(typeof t=="string"&&t.includes("记录不存在")){xe(e),p.success("已删除");return}p.error(t)}}function Ae(e){const s=e.slice(0,5).map(a=>`${a.country}:${a.asin}${a.status?`(${a.status})`:""}`);return e.length-s.length>0?`${s.join("、")} 等 ${e.length} 条`:s.join("、")}function Ft(e,s){}function pe(){G.value&&(L.clearTimer("auto-retry",G.value),G.value=null)}function Ze(e=3e3){U||(pe(),G.value=L.setTimeout("auto-retry",()=>{G.value=null,U||Le().catch(()=>{})},e))}function es(e){return e.includes("当前店铺正在执行中")}function De(){for(const e of i.value)for(const s of e.items){const t=E(s);if(t==="已入队"||t==="处理中")return!0}return!1}function j(e){return e.resultId!=null?`result:${e.resultId}`:`task:${e.taskId||0}:${e.sourceFilename||""}`}function A(e){return!!(e.matched||e.matchStatus==="MATCHED"||e.matchStatus==="INDEX_STALE"&&e.shopId)}function ss(e){return!!(e.shopName&&Array.isArray(e.countries)&&e.countries.length>0)}function Me(e){return!!(e.taskId&&(A(e)||ss(e)))}function Be(){return N.value.find(e=>!Me(e)||j(e)===B.value||x(e.taskId,e)?._completed?!1:E(e)==="未入队")}async function Ue(e,s){if(s?.auto&&De())return e.taskId,e.sourceFilename,{success:!1,retryable:!0};const t=Q(),a=e.taskId;if(!a)return{success:!1,retryable:!1};const r=i.value.find(c=>c.taskId===a);if(!r)return{success:!1,retryable:!1};if(!t?.enqueue_json)return p.error("当前环境未启用 pywebview enqueue_json(浏览器环境不会推送)"),{success:!1,retryable:!1};const l={type:"delete-brand-run",ts:Date.now(),data:{taskId:a,items:[e]}};S.value=JSON.stringify(l,null,2);const n=await t.enqueue_json(l);let u="";if(n?.success){u=`已推送文件 ${e.sourceFilename},当前队列长度:${n.queue_size??"-"}`;const c=x(a,e);return c&&(c._pushed=!0,c._completed=!1),B.value=j(e),ue(a,r.items,u,S.value),he(!0),b.value=u,{success:!0,retryable:!1}}else{const c=n?.error||"未知错误";if(u=`推送到 Python 队列失败:${c}`,b.value=u,ue(a,r.items,u,S.value),s?.auto&&es(c))return{success:!1,retryable:!0}}return b.value=u,{success:!1,retryable:!1}}async function ts(){const e=Be();if(!e){p.warning("当前没有可推送的文件");return}Y.value=!0,R.value=!0,pe();const s=await Ue(e);if(Y.value=!1,!s.success){R.value=!1,B.value="";return}p.success("已开始按顺序推送到 Python 队列")}async function Le(){if(!R.value||Z.value){R.value,Z.value;return}if(De())return;const e=B.value;if(e){const t=N.value.find(a=>j(a)===e);if(t){const a=t.taskId,r=P(a);r&&(we(a),E(t),void 0);const l=E(t);if(l==="已入队"||l==="处理中"){t.sourceFilename;return}if(r){const n=x(a,t);if(n&&!n._completed){t.sourceFilename,n._pushed,n._completed;return}}}}const s=Be();if(!s){B.value="",R.value=!1;return}Z.value=!0;try{s.taskId,s.sourceFilename,j(s);const t=await Ue(s,{auto:!0});if(!t.success){if(t.retryable){s.taskId,s.sourceFilename,Ze();return}s.taskId,s.sourceFilename,R.value=!1}}finally{Z.value=!1}}return ls(()=>{Ke();const e=H();e.length>0?fe(e).then(async()=>{let s=!1,t=!1;for(const a of e)Re(a)&&(me(a),s=!0,t=!0);t?await J():s&&$(),he(!0)}):$(),J().catch(()=>{})}),rs(()=>{U=!0,Ee(),L.clearScope()}),(e,s)=>(d(),f("div",Is,[os(us,{active:"delete-brand"}),o("div",bs,[o("aside",Ss,[s[2]||(s[2]=o("div",{class:"section-title"},"选择文件",-1)),o("div",Ts,[s[0]||(s[0]=o("div",{class:"hint"},"上传删除品牌 Excel;无论是直接上传文件还是上传文件夹批量导入,都会按每个 Excel 文件名作为店铺名。",-1)),o("div",{class:"btns"},[o("button",{type:"button",class:"opt-btn",onClick:Xe},"选择 Excel 文件"),o("button",{type:"button",class:"opt-btn",onClick:We},"选择文件夹")]),o("div",Cs,[M.value.length?(d(),f(z,{key:0},[(d(!0),f(z,null,ye(oe.value,t=>(d(),f("span",{key:t},v(t),1))),128)),M.value.length>oe.value.length?(d(),f("span",Rs," 还有 "+v(M.value.length-oe.value.length)+" 个文件未展开显示 ",1)):h("",!0)],64)):(d(),f("span",Ns,"暂未选择删除品牌文件"))])]),s[3]||(s[3]=is('