@ttmg/cli 0.4.5 → 0.4.6-agent-beta.1

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.
Files changed (82) hide show
  1. package/README.md +644 -2
  2. package/dist/index.js +22502 -6070
  3. package/dist/index.js.map +1 -1
  4. package/dist/package.json +36 -4
  5. package/dist/public/assets/{Card-BAsimNoh.js → Card-CN2lxY0Y.js} +1 -1
  6. package/dist/public/assets/{Detail-rVxbEDgh.js → Detail-CELZZ-4h.js} +1 -1
  7. package/dist/public/assets/Detail-CELZZ-4h.js.br +0 -0
  8. package/dist/public/assets/{MonetizationMode-B20TAE9o.js → MonetizationMode-C7DNqium.js} +1 -1
  9. package/dist/public/assets/{MonetizationModeSummary-CnHqXyco.js → MonetizationModeSummary-DYE7XUq1.js} +1 -1
  10. package/dist/public/assets/{SectionHeader-Cn3FnOqh.js → SectionHeader-BKc3BWXP.js} +1 -1
  11. package/dist/public/assets/{baseForm-kBTxn8h8.js → baseForm-I9suIiQn.js} +1 -1
  12. package/dist/public/assets/baseForm-I9suIiQn.js.br +0 -0
  13. package/dist/public/assets/{col-VN3Ivd-x.js → col-w9Q-2mgM.js} +1 -1
  14. package/dist/public/assets/{compass-BabZVjAl.js → compass-D6waJ52O.js} +1 -1
  15. package/dist/public/assets/{index-DHdJsD10.js → index-8sDAOAcS.js} +1 -1
  16. package/dist/public/assets/index-8sDAOAcS.js.br +0 -0
  17. package/dist/public/assets/{index-DK4IvdRl.js → index-B6hY5GdS.js} +1 -1
  18. package/dist/public/assets/{index-Cl0_vMWE.js → index-BIrFkB6r.js} +1 -1
  19. package/dist/public/assets/index-BIrFkB6r.js.br +0 -0
  20. package/dist/public/assets/{index-BjQlJrX7.js → index-BLWgpW64.js} +1 -1
  21. package/dist/public/assets/{index-odEI7YQF.js → index-BY3eQmfP.js} +1 -1
  22. package/dist/public/assets/index-BY3eQmfP.js.br +0 -0
  23. package/dist/public/assets/{index-Bjn0ctEd.js → index-BegU9LBT.js} +2 -2
  24. package/dist/public/assets/index-BegU9LBT.js.br +0 -0
  25. package/dist/public/assets/{index-1WjGwqIV.js → index-BqwflQml.js} +1 -1
  26. package/dist/public/assets/{index-DXDZCuG4.js → index-BrOFdVbv.js} +1 -1
  27. package/dist/public/assets/{index-BxsB5E3u.js → index-BvPolBSn.js} +1 -1
  28. package/dist/public/assets/{index-BnOeYQAd.js → index-BwrZjkCc.js} +1 -1
  29. package/dist/public/assets/{index-CUuX90R9.js → index-CLKKui8G.js} +1 -1
  30. package/dist/public/assets/{index-Dohibgdp.js → index-Cb4Ja0tZ.js} +1 -1
  31. package/dist/public/assets/{index-C83QHLmD.js → index-CcUgN29Y.js} +1 -1
  32. package/dist/public/assets/{index-aSl6Wdrp.js → index-CgXOkYrX.js} +1 -1
  33. package/dist/public/assets/index-CgXOkYrX.js.br +0 -0
  34. package/dist/public/assets/{index-DulANwbq.js → index-CsiIrLKY.js} +1 -1
  35. package/dist/public/assets/{index-Ba-JWe4X.js → index-Csmg5oyu.js} +1 -1
  36. package/dist/public/assets/{index-DnnfZ7H_.js → index-DDecPuod.js} +1 -1
  37. package/dist/public/assets/{index-Clq0hTDI.js → index-DDy4PkWT.js} +1 -1
  38. package/dist/public/assets/{index-DIcz5ciL.js → index-DEQ2hVPA.js} +1 -1
  39. package/dist/public/assets/index-DEQ2hVPA.js.br +0 -0
  40. package/dist/public/assets/{index-CpM8t743.js → index-DGkgqtgJ.js} +1 -1
  41. package/dist/public/assets/{index-QNLvejKK.js → index-FVHabbDB.js} +1 -1
  42. package/dist/public/assets/{index-CzXMNZL3.js → index-M8jf-YAZ.js} +1 -1
  43. package/dist/public/assets/{index-BxokHznc.js → index-Q0GC8Irj.js} +1 -1
  44. package/dist/public/assets/index-Q0GC8Irj.js.br +0 -0
  45. package/dist/public/assets/{index--6iHQzho.js → index-YVB9ZW00.js} +1 -1
  46. package/dist/public/assets/{index-O_L1tU2b.js → index-mjEeEQcC.js} +1 -1
  47. package/dist/public/assets/index-mjEeEQcC.js.br +0 -0
  48. package/dist/public/assets/{index-BFFsJ47B.js → index-rLkONFpx.js} +1 -1
  49. package/dist/public/assets/{layers-B4zhx14P.js → layers-Dbwq9AyL.js} +1 -1
  50. package/dist/public/assets/{list-checks-Br6imjXC.js → list-checks-og1usOZf.js} +1 -1
  51. package/dist/public/assets/{sparkles-BjIkcbAi.js → sparkles-p-dZbjGb.js} +1 -1
  52. package/dist/public/assets/{triangle-alert-CgKAc3w5.js → triangle-alert-BZVAEUiL.js} +1 -1
  53. package/dist/public/assets/{zap-DFHw5liD.js → zap-BAhZUPPa.js} +1 -1
  54. package/dist/public/index.html +1 -1
  55. package/dist/scripts/acceptance-fixture.test.js +33 -0
  56. package/dist/scripts/dev-capture-smoke.js +76 -0
  57. package/dist/scripts/dev-client-preview-control-smoke.js +606 -0
  58. package/dist/scripts/dev-default-smoke.js +67 -0
  59. package/dist/scripts/dev-game-ready-smoke.js +155 -0
  60. package/dist/scripts/dev-workflow-smoke.js +260 -0
  61. package/dist/scripts/prepare-client-preview-acceptance.js +65 -0
  62. package/dist/scripts/preview-page-server-smoke.js +63 -0
  63. package/dist/scripts/run-ts-test.js +41 -0
  64. package/dist/scripts/verify-agent-contract.js +410 -0
  65. package/dist/scripts/vibe-ppe-test-preload.cjs +23 -0
  66. package/dist/scripts/vibe-upload-demo.js +72 -0
  67. package/dist/scripts/vibe-upload-smoke.js +412 -0
  68. package/dist/scripts/wasm-smoke.js +53 -0
  69. package/dist/scripts/wasm-worker.js +63 -0
  70. package/dist/scripts/worker.js +28 -22
  71. package/package.json +36 -4
  72. package/CHANGELOG.md +0 -277
  73. package/dist/public/assets/Detail-rVxbEDgh.js.br +0 -0
  74. package/dist/public/assets/baseForm-kBTxn8h8.js.br +0 -0
  75. package/dist/public/assets/index-Bjn0ctEd.js.br +0 -0
  76. package/dist/public/assets/index-BxokHznc.js.br +0 -0
  77. package/dist/public/assets/index-Cl0_vMWE.js.br +0 -0
  78. package/dist/public/assets/index-DHdJsD10.js.br +0 -0
  79. package/dist/public/assets/index-DIcz5ciL.js.br +0 -0
  80. package/dist/public/assets/index-O_L1tU2b.js.br +0 -0
  81. package/dist/public/assets/index-aSl6Wdrp.js.br +0 -0
  82. package/dist/public/assets/index-odEI7YQF.js.br +0 -0
@@ -1 +1 @@
1
- import{j as e,i as a,D as _,r as o,h as Oe,u as Be,k as qe,g as Ke,f as He,P as Ve,T as r,e as z,I as V,l as Qe,B as w,m as Je,Q as pe,n as Ze,d as C}from"./index-Bjn0ctEd.js";import{B as We}from"./index-C83QHLmD.js";import{C as he,F as me}from"./baseForm-kBTxn8h8.js";import{A as Xe}from"./index-DHdJsD10.js";import"./col-VN3Ivd-x.js";import"./index-DIcz5ciL.js";const Ye="https://bytedance.larkoffice.com/wiki/LkihwQCMfiBpr3khwNuceCBkn3e";function es(m){return String(m).replace(/^\s*\d+\s*[\.、]\s*/,"")}const ss=({engine:m})=>e.jsx("div",{className:"check-code-banner-list",children:[{show:!0,titleKey:"pkgSizeCheckDesc",desc:e.jsxs("div",{children:[e.jsx("span",{children:m==="unity"?a("unityPkgSizeCheckDescTip",{projectSize:"60MB"}):a("commonPkgSizeCheckDescTip",{projectSize:"30MB",mainPackageSize:"4MB",independentPackageSize:"4MB"})}),e.jsx(_,{className:"check-code-banner-doc-link",href:Ye,children:a("uploadGame.packageSizeDoc")})]})},{show:m!=="unity",titleKey:"mandatoryApiCheck",desc:a("mandatoryApiCheckDesc")},{show:!0,titleKey:"configFileCheck",desc:e.jsxs("div",{children:[e.jsx("code",{children:"game.json"}),":",a("gameJsonCheckDesc")]})}].filter(i=>i.show).map((i,h)=>e.jsxs("div",{className:"check-code-banner-section",children:[e.jsxs("div",{className:"check-code-banner-section-title",children:[e.jsx("span",{className:"check-code-banner-section-index",children:h+1}),e.jsx("strong",{children:es(a(i.titleKey))})]}),e.jsx("div",{className:"check-code-banner-section-desc",children:i.desc})]},i.titleKey))}),as=({engine:m})=>e.jsx("div",{className:"check-code-banner",role:"note",children:e.jsx(ss,{engine:m})}),rs=m=>{const{result:i}=m,h=i.every(d=>d?.passed),[l,n]=o.useState(!1);return e.jsxs("section",{className:`check-result-group ${h?"check-result-group-passed":"check-result-group-failed"}`,children:[e.jsxs("div",{className:"check-result-title",children:[e.jsx("span",{className:"check-result-status-dot"}),e.jsx("span",{className:"check-result-title-text",children:h?a("checkConfigPassed"):a("checkConfigFailed")})]}),e.jsxs("div",{className:`check-result-collapse ${l?"check-result-collapse-open":"check-result-collapse-closed"}`,children:[e.jsx(he,{collapseHeight:150,isOpen:l,children:e.jsx("div",{className:"check-result-list",children:i.map((d,k)=>e.jsxs("div",{className:`check-result-item ${d?.passed?"check-result-item-passed":"check-result-item-failed"}`,children:[e.jsx("span",{className:"check-result-tag",children:d?.file}),e.jsx("span",{className:"check-result-message",children:d?.msg}),d?.detail?.link?e.jsx(_,{className:"check-result-link",href:d.detail.link,children:d.detail.text||a("viewDoc")}):null]},k))})}),l?e.jsx("button",{className:"check-result-toggle",type:"button",onClick:()=>n(!1),children:a("closeCheckDetail")}):e.jsx("button",{className:"show-more-text-btn",type:"button",onClick:()=>n(!0),children:a("expandCheckDetail")})]})]})},ls={project:a("gameProject"),main_package:a("gameMainPackage"),independent_package:a("independentPackage")},ts=m=>{const{result:i}=m,h=i.every(l=>l?.passed);return e.jsxs("section",{className:`check-result-group ${h?"check-result-group-passed":"check-result-group-failed"}`,children:[e.jsxs("div",{className:"check-result-title",children:[e.jsx("span",{className:"check-result-status-dot"}),e.jsx("span",{className:"check-result-title-text",children:h?a("checkPkgSizePassed"):a("checkPkgSizeFailed")})]}),e.jsx("div",{className:"check-result-list",children:i.map((l,n)=>e.jsxs("div",{className:`check-result-item ${l?.passed?"check-result-item-passed":"check-result-item-failed"}`,children:[e.jsxs("span",{className:"check-result-tag",children:[ls[l.dimension],l.dimension==="independent_package"?`: ${l.name}`:""]}),e.jsx("span",{className:"check-result-message",children:l?.msg}),l?.detail?.link?e.jsx(_,{className:"check-result-link",href:l.detail.link,children:l.detail.text||a("viewDoc")}):null]},n))})]})},cs=m=>{const{result:i}=m;if(!Array.isArray(i)||i.length===0)return null;const h=i.every(d=>d?.passed),[l,n]=o.useState(!1);return e.jsxs("section",{className:`check-result-group ${h?"check-result-group-passed":"check-result-group-failed"}`,children:[e.jsxs("div",{className:"check-result-title",children:[e.jsx("span",{className:"check-result-status-dot"}),e.jsx("span",{className:"check-result-title-text",children:h?a("checkApiSuccess"):a("checkApiFailed")})]}),e.jsxs("div",{className:`check-result-collapse ${l?"check-result-collapse-open":"check-result-collapse-closed"}`,children:[e.jsx(he,{collapseHeight:150,isOpen:l,children:e.jsx("div",{className:"check-result-list",children:i.map((d,k)=>e.jsxs("div",{className:`check-result-item ${d?.passed?"check-result-item-passed":"check-result-item-failed"}`,children:[e.jsx("span",{className:"check-result-tag",children:d?.name}),e.jsxs("span",{className:"check-result-message",children:[a(d?.name),d?.passed?a("integrated"):a("notIntegrated")]}),d?.detail?.link?e.jsx(_,{className:"check-result-link",href:d.detail.link,children:d.detail.text||a("viewDoc")}):null]},k))})}),l?e.jsx("button",{className:"check-result-toggle",type:"button",onClick:()=>n(!1),children:a("closeCheckDetail")}):e.jsx("button",{className:"show-more-text-btn",type:"button",onClick:()=>n(!0),children:a("expandCheckDetail")})]})]})},ds=m=>{const{result:i}=m;if(!Array.isArray(i)||i.length===0)return null;const h=i.every(l=>l?.passed);return e.jsxs("section",{className:`check-result-group ${h?"check-result-group-passed":"check-result-group-failed"}`,children:[e.jsxs("div",{className:"check-result-title",children:[e.jsx("span",{className:"check-result-status-dot"}),e.jsx("span",{className:"check-result-title-text",children:h?a("checkPerformancePassed"):a("checkPerformanceFailed")})]}),e.jsx("div",{className:"check-result-list",children:i.map((l,n)=>e.jsxs("div",{className:`check-result-item ${l?.passed?"check-result-item-passed":"check-result-item-failed"}`,children:[e.jsx("span",{className:"check-result-tag",children:a("performanceCheck")}),e.jsx("span",{className:"check-result-message",children:l?.msg}),l?.detail?.link?e.jsx(_,{className:"check-result-link",href:l.detail.link,children:l.detail.text||a("viewDoc")}):null]},n))})]})},gs=()=>{const m=Oe(),i=3e3,h=600*1e3,[l,n]=o.useState("idle"),[d,k]=o.useState(""),[A,F]=o.useState(""),[ge,R]=o.useState(""),[G,M]=o.useState([]),[v,b]=o.useState(""),[xe,Q]=o.useState({}),[J,U]=o.useState(!1),[Z,L]=o.useState(""),[je,E]=o.useState(!1),[fe,ke]=o.useState(""),[T,ve]=o.useState([]),[O,W]=o.useState(!1),[P,X]=o.useState(!0),[x,ye]=o.useState(!1),[Y,ee]=o.useState(""),[se,ae]=o.useState(!1),[B,j]=o.useState(""),re=o.useRef(null),{state:{engine:Ne,user:q,gameDetail:y}}=Be(),N=qe(q),K=Ke({errorCode:y?.has_error?y.error_code:void 0,user:q}),I=K==="noPermission",we=I||K==="networkProxy",H=s=>new Promise(t=>setTimeout(t,s)),Se=s=>s?String(s.status??s.cdn_deploy_status??s.live_status??"").toLowerCase():"",le=s=>s?String(s.status??s.cdn_deploy_status??s.live_status??""):"",D=s=>{if(Number(s?.cdn_deploy_status)===2)return"ready";const t=Se(s);return t?["ready","success","succeeded","available"].includes(t)?"ready":t.includes("fail")||t.includes("error")||t.includes("reject")?"failed":"pending":"pending"},te=s=>s==="preview"?4:s==="review"?3:s==="live"?2:1,Ge=s=>{if(!s)return[];const t=[...(s.preview_assets||[]).map(c=>({...c,source:"preview",state:D(c)})),...(s.in_review_assets||[]).map(c=>({...c,source:"review",state:D(c)})),...(s.live_assets||[]).map(c=>({...c,source:"live",state:D(c)})),...(s.assets||[]).map(c=>({...c,source:"other",state:D(c)}))].sort((c,p)=>{const f=Number(p.uploaded_at||0)-Number(c.uploaded_at||0);return f!==0?f:te(p.source)-te(c.source)}),u=new Map;return t.forEach(c=>{const p=String(c.asset_id||"");p&&!u.has(p)&&u.set(p,c)}),Array.from(u.values())},be=s=>s==="ready"?a("uploadGame.record.state.ready"):s==="failed"?a("uploadGame.record.state.failed"):a("uploadGame.record.state.pending"),Te=s=>s==="preview"?a("uploadGame.record.source.preview"):s==="review"?a("uploadGame.record.source.review"):s==="live"?a("uploadGame.record.source.live"):a("uploadGame.record.source.other"),ce=s=>s?new Date(s*1e3).toLocaleString():a("uploadGame.record.metaUnknown"),Pe=s=>{if(!s)return a("uploadGame.record.metaUnknown");const t=s/1024/1024;return`${t>=10?t.toFixed(0):t.toFixed(1)} MB`},de=s=>{if(s.version)return`v${s.version}`;const t=String(s.asset_id||"");return t?`${t.slice(0,6)}...${t.slice(-4)}`:a("uploadGame.record.metaUnknown")},De=s=>`${de(s)} · ${be(s.state)} · ${ce(s.uploaded_at)}`,Ce=s=>s?[s.preview_assets||[],s.in_review_assets||[],s.live_assets||[],s.assets||[]].flat().filter(Boolean):[],ie=async()=>{if(!N||I){M([]),b(""),L(""),U(!1);return}U(!0),L("");try{const s=await C({method:"POST",url:"/game/assets"});if(s?.code!==0||!s?.data)throw new Error(a("uploadGame.record.loadFailed"));const t=Ge(s.data);M(t);const u=(v&&t.some(c=>String(c.asset_id)===String(v))?v:"")||"";b(String(u||""))}catch(s){L(s instanceof Error?s.message:a("uploadGame.record.loadFailed"))}finally{U(!1)}},_e=async(s,t)=>{for(;Date.now()<t;){const u=await C({method:"POST",url:"/game/assets",data:{assetId:s,includePending:!0}}),p=Ce(u?.data).find(f=>String(f.asset_id)===String(s))||null;if(p){const f=le(p);f&&R(f);const ue=D(p);if(ue==="ready")return{ok:!0,asset:p};if(ue==="failed")return{ok:!1,asset:p}}await H(i)}return{ok:!1,asset:null}},oe=async(s,t)=>{for(;Date.now()<t;){const u=await C({method:"POST",url:"/game/asset/preview-url",data:{assetId:s}});if(u?.code===0&&u?.data?.preview_url)return u.data.preview_url;await H(i)}return""},Ae=()=>{X(!0),W(!1),C({url:"/game/check",method:"GET"}).then(s=>{ve(s?.data||[])}).catch(()=>{W(!0)}).finally(()=>{X(!1)})};o.useEffect(()=>{Ae()},[]),o.useEffect(()=>{if(!N||I){M([]),b(""),L(""),U(!1);return}ie()},[N,I]);const Re=T.filter(s=>s?.type==="config"),Ue=T.filter(s=>s?.type==="size"),Le=T.filter(s=>s?.type==="api"),Ee=T.filter(s=>s?.type==="performance"),ne=T.some(s=>!s?.passed),Ie=s=>l==="uploading"?s===0?"current":"pending":l==="checkingAsset"?s===0?"done":s===1?"current":"pending":l==="resolvingPreview"?s<=1?"done":s===2?"current":"pending":"pending",$e=[a("uploadGame.progress.step1"),a("uploadGame.progress.step2"),a("uploadGame.progress.step3")],ze=[a("uploadGame.guide.precheck.title"),a("uploadGame.guide.version.title"),a("uploadGame.guide.preview.title")],S=()=>{ye(s=>!s)},g=G.find(s=>String(s.asset_id)===String(v))||null,$=v&&xe[String(v)]||"";o.useEffect(()=>{if(!g||g.state!=="ready"){E(!1);return}const s=String(g.asset_id);if($){E(!1);return}let t=!1;return(async()=>{E(!0);const c=await oe(s,Date.now()+h);t||(c&&Q(p=>({...p,[s]:c})),E(!1))})(),()=>{t=!0}},[g,$]);const Fe=()=>{if(!Y.trim()){j(a("needDesc"));return}ae(!0),n("uploading"),j(""),k(""),R(""),F(""),C({method:"POST",url:"/game/upload",headers:{"ttmg-game-desc":encodeURIComponent(Y||"--")}}).then(async s=>{if(s?.code===0){await H(500),k(s?.data?.detail||"");const t=s?.data?.asset_id?String(s.data.asset_id):"",u=Date.now()+h;if(!t){n("failure"),j(a("uploadGame.failure.missingAssetId"));return}n("checkingAsset");const c=await _e(t,u);if(!c.ok){n("failure"),j(c.asset?a("uploadGame.failure.assetStatus",{status:le(c.asset)||"-"}):a("uploadGame.failure.assetTimeout"));return}n("resolvingPreview");const p=await oe(t,u);if(!p){n("failure"),j(a("uploadGame.failure.previewTimeout"));return}Q(f=>({...f,[t]:p})),ke(t),b(""),F(p),await ie(),n("success")}else n("idle"),j(s?.error?.StatusMessage||s?.detail||a("uploadPlatformFailed"))}).catch(s=>{n("idle"),j(s?.error?.StatusMessage||s?.response?.detail||s?.message||a("uploadPlatformFailed"))}).finally(()=>{ae(!1)})},Me=()=>{n("idle"),j(""),k(""),R(""),F(""),ee(""),re.current?.formApi?.reset?.()};if(we){const s=y?.has_error?y.error_code:void 0,t=y?.has_error?y.error_msg:"",u=y?.client_key||"";return e.jsx(Xe,{errorMsg:He({errorCode:s,errorMsg:t,clientKey:u,user:q}),errorState:K})}return e.jsxs("div",{className:"upload-game-page",children:[e.jsx(Ve,{title:a("uploadGame.guide.title"),subtitle:a("uploadGame.guide.desc")}),e.jsxs("section",{className:"upload-game-hero",children:[P?e.jsxs("div",{className:"upload-game-summary-panel upload-game-summary-panel-neutral",children:[e.jsxs("div",{className:"upload-game-summary-copy",children:[e.jsx(r.Text,{strong:!0,children:a("uploadGame.summary.checkingTitle")}),e.jsx(r.Text,{style:{color:"var(--tt-text-dim)"},children:a("uploadGame.summary.checkingDesc")})]}),e.jsx(z,{size:"small"})]}):null,!P&&O?e.jsxs("div",{className:`upload-game-summary-panel upload-game-summary-panel-warn ${x?"upload-game-summary-panel-expanded":""}`,children:[e.jsxs("div",{className:"upload-game-summary-copy",children:[e.jsx(r.Text,{strong:!0,children:a("uploadGame.summary.failedTitle")}),e.jsx(r.Text,{style:{color:"var(--tt-text-dim)"},children:a("uploadGame.checkFetchFailed")})]}),e.jsxs("span",{className:"upload-game-summary-action",role:"button",tabIndex:0,onClick:S,onKeyDown:s=>{(s.key==="Enter"||s.key===" ")&&(s.preventDefault(),S())},children:[e.jsx(V,{style:{transform:x?"rotate(180deg)":"rotate(0deg)",transition:"transform 0.2s ease"}}),e.jsx(r.Text,{children:a(x?"uploadGame.hideDetails":"uploadGame.showDetails")})]})]}):null,N?null:e.jsxs("div",{className:"upload-game-inline-notice",children:[e.jsx("div",{className:"upload-game-inline-notice-icon",children:e.jsx(Qe,{})}),e.jsxs("div",{className:"upload-game-inline-notice-copy",children:[e.jsx(r.Text,{strong:!0,children:a("uploadGame.loginNoticeTitle")}),e.jsx(r.Text,{children:a("loginToUpload")}),e.jsx("div",{className:"upload-game-inline-notice-action",children:e.jsx(w,{theme:"light",onClick:()=>m("/basic_debug_guide"),children:a("basicDebugGuide.entryAction")})})]})]}),!P&&!O&&ne?e.jsxs("div",{className:`upload-game-summary-panel upload-game-summary-panel-warn ${x?"upload-game-summary-panel-expanded":""}`,children:[e.jsxs("div",{className:"upload-game-summary-copy",children:[e.jsx(r.Text,{strong:!0,children:a("uploadGame.issueTitle")}),e.jsx(r.Text,{style:{color:"var(--tt-text-dim)"},children:a("uploadGame.issueDesc")})]}),e.jsxs("span",{className:"upload-game-summary-action",role:"button",tabIndex:0,onClick:S,onKeyDown:s=>{(s.key==="Enter"||s.key===" ")&&(s.preventDefault(),S())},children:[e.jsx(V,{style:{transform:x?"rotate(180deg)":"rotate(0deg)",transition:"transform 0.2s ease"}}),e.jsx(r.Text,{children:a(x?"uploadGame.hideDetails":"uploadGame.showDetails")})]})]}):null,!P&&!O&&!ne?e.jsxs("div",{className:`upload-game-summary-panel upload-game-summary-panel-ok ${x?"upload-game-summary-panel-expanded":""}`,children:[e.jsxs("div",{className:"upload-game-summary-copy",children:[e.jsx(r.Text,{strong:!0,children:a("uploadGame.readyTitle")}),e.jsx(r.Text,{style:{color:"var(--tt-text-dim)"},children:a("uploadGame.readyDesc")})]}),e.jsxs("span",{className:"upload-game-summary-action",role:"button",tabIndex:0,onClick:S,onKeyDown:s=>{(s.key==="Enter"||s.key===" ")&&(s.preventDefault(),S())},children:[e.jsx(V,{style:{transform:x?"rotate(180deg)":"rotate(0deg)",transition:"transform 0.2s ease"}}),e.jsx(r.Text,{children:a(x?"uploadGame.hideDetails":"uploadGame.showDetails")})]})]}):null,x?e.jsx("div",{className:"upload-game-inline-detail",children:e.jsx("div",{className:"upload-game-check-body upload-game-detail-card",children:P?e.jsx("div",{className:"upload-game-loading",children:e.jsx(z,{})}):e.jsxs(e.Fragment,{children:[e.jsx(as,{engine:Ne}),e.jsx(ds,{result:Ee}),e.jsx(ts,{result:Ue}),e.jsx(cs,{result:Le}),e.jsx(rs,{result:Re})]})})}):null,e.jsx("div",{className:"upload-game-flow","aria-label":a("uploadGame.guide.title"),children:ze.map((s,t)=>e.jsxs("div",{className:"upload-game-flow-item",children:[e.jsx("span",{className:"upload-game-flow-index",children:t+1}),e.jsx(r.Text,{children:s})]},s))}),e.jsxs("div",{className:`upload-game-module-card upload-game-form-wrapper upload-game-form-wrapper-main ${l==="idle"?"":"upload-game-form-wrapper-stage"}`,children:[l==="idle"?e.jsxs(e.Fragment,{children:[e.jsxs("div",{className:"upload-game-form-head",children:[e.jsx(r.Text,{strong:!0,children:a("gameAssetDescription")}),e.jsx(r.Text,{className:"upload-game-form-head-desc",children:a("uploadGame.uploadDescHint")})]}),e.jsx(me,{ref:re,onChange:({values:s})=>{ee(s?.gameDescription||""),j("")},children:e.jsx(me.TextArea,{noLabel:!0,placeholder:a("gameAssetDescription"),field:"gameDescription",disabled:!N})}),B&&e.jsx(r.Text,{type:"danger",style:{display:"block",marginBottom:8},children:B}),e.jsx(w,{className:"upload-game-upload-action",theme:"solid",type:"primary",disabled:!N||se,loading:se,onClick:Fe,children:a("uploadToPlatform")})]}):null,l==="uploading"||l==="checkingAsset"||l==="resolvingPreview"?e.jsxs("div",{className:"upload-game-progress-card",children:[e.jsxs("div",{className:"upload-game-progress-head",children:[e.jsxs("div",{className:"upload-game-progress-badge",children:[e.jsx("span",{className:"upload-game-progress-badge-dot"}),e.jsx(r.Text,{children:l==="uploading"?a("uploadGame.progress.badgeUploading"):l==="checkingAsset"?a("uploadGame.progress.badgeChecking"):a("uploadGame.progress.badgePreview")})]}),e.jsx("div",{className:"upload-game-progress-bar"})]}),e.jsxs("div",{className:"upload-game-progress-copy",children:[e.jsx(r.Text,{strong:!0,className:"upload-game-stage-title",children:l==="uploading"?a("uploadGame.progress.title"):l==="checkingAsset"?a("uploadGame.progress.assetTitle"):a("uploadGame.progress.previewTitle")}),e.jsx(r.Paragraph,{className:"upload-game-form-head-desc",children:l==="uploading"?a("uploadGame.progress.desc"):l==="checkingAsset"?a("uploadGame.progress.assetDesc",{status:ge||a("uploadGame.progress.statusPending")}):a("uploadGame.progress.previewDesc")}),e.jsx("div",{className:"upload-game-progress-steps",children:$e.map((s,t)=>{const u=Ie(t);return e.jsxs("div",{className:`upload-game-progress-step upload-game-progress-step-${u}`,children:[e.jsx("span",{className:"upload-game-progress-step-dot",children:t+1}),e.jsx("span",{className:"upload-game-progress-step-label",children:s})]},s)})})]})]}):null,l==="success"?e.jsx("div",{className:"upload-game-success-card",children:e.jsxs("div",{className:"upload-game-success-body",children:[e.jsxs("div",{className:"upload-game-success-content",children:[e.jsxs("div",{className:"upload-game-success-heading",children:[e.jsx("span",{className:"upload-game-success-icon","aria-hidden":"true",children:e.jsx(Je,{})}),e.jsx(r.Text,{strong:!0,className:"upload-game-stage-title",children:A?a("uploadGame.success.readyTitle"):a("uploadGame.success.title")})]}),e.jsx(r.Paragraph,{className:"upload-game-form-head-desc",children:A?a("uploadGame.success.desc"):a("uploadGame.success.pendingDesc")}),e.jsxs("div",{className:"upload-game-success-actions",children:[d?e.jsx(w,{theme:"light",onClick:()=>window.open(d,"_blank"),children:a("viewOnPlatform")}):null,e.jsx(w,{theme:"solid",type:"primary",onClick:Me,children:a("uploadGame.success.uploadAnother")})]})]}),e.jsx("div",{className:"upload-game-success-qr",children:A?e.jsxs(e.Fragment,{children:[e.jsx("div",{className:"upload-game-success-qr-box",children:e.jsx(pe,{value:A,size:156})}),e.jsx(r.Text,{className:"upload-game-success-qr-caption",children:a("uploadGame.success.qrHint")})]}):e.jsx("div",{className:"upload-game-success-qr-placeholder",children:e.jsx(r.Text,{type:"tertiary",children:a("uploadGame.success.noQr")})})})]})}):null,l==="failure"?e.jsxs("div",{className:"upload-game-failure-card",children:[e.jsx(r.Text,{strong:!0,className:"upload-game-stage-title",children:a("uploadGame.failure.title")}),e.jsx(r.Paragraph,{className:"upload-game-form-head-desc",children:B||a("uploadPlatformFailed")}),e.jsxs("div",{className:"upload-game-success-actions",children:[d?e.jsx(w,{theme:"light",onClick:()=>window.open(d,"_blank"),children:a("viewOnPlatform")}):null,e.jsx(w,{theme:"solid",type:"primary",onClick:()=>{n("idle"),j(""),k(""),R("")},children:a("uploadGame.failure.retry")})]})]}):null]}),N?e.jsxs("div",{className:"upload-game-module-card upload-game-records",children:[e.jsx("div",{className:"upload-game-records-head",children:e.jsxs("div",{className:"upload-game-records-copy",children:[e.jsx(r.Text,{children:a("uploadGame.record.title")}),e.jsx(r.Text,{className:"upload-game-form-head-desc",children:a("uploadGame.record.desc")})]})}),Z?e.jsx(We,{type:"warning",description:Z,style:{marginTop:12}}):null,J&&!G.length?e.jsxs("div",{className:"upload-game-records-empty",children:[e.jsx(z,{size:"small"}),e.jsx(r.Text,{children:a("uploadGame.record.loading")})]}):null,!J&&!G.length?e.jsx("div",{className:"upload-game-records-empty",children:e.jsx(r.Text,{children:a("uploadGame.record.empty")})}):null,G.length?e.jsxs("div",{className:"upload-game-records-layout",children:[e.jsx("div",{className:"upload-game-records-toolbar",children:e.jsx(Ze,{value:v,className:"upload-game-record-select",placeholder:a("uploadGame.record.selectPlaceholder"),allowClear:!0,optionList:G.slice(0,12).map(s=>({value:String(s.asset_id),label:De(s)})),onChange:s=>b(String(s||""))})}),g?e.jsxs("div",{className:"upload-game-record-detail",children:[e.jsx("div",{className:"upload-game-record-detail-head",children:e.jsx("div",{className:"upload-game-record-detail-copy",children:e.jsx(r.Text,{strong:!0,children:a("uploadGame.record.detailTitle",{version:de(g)})})})}),e.jsxs("div",{className:"upload-game-record-detail-body",children:[e.jsxs("div",{className:"upload-game-record-detail-main",children:[e.jsxs("div",{className:"upload-game-record-detail-meta",children:[e.jsxs("div",{className:"upload-game-record-detail-row",children:[e.jsx(r.Text,{type:"tertiary",children:a("uploadGame.record.metaUploadedAt")}),e.jsx(r.Text,{children:ce(g.uploaded_at)})]}),e.jsxs("div",{className:"upload-game-record-detail-row",children:[e.jsx(r.Text,{type:"tertiary",children:a("uploadGame.record.metaAssetId")}),e.jsx(r.Text,{children:g.asset_id||a("uploadGame.record.metaUnknown")})]}),e.jsxs("div",{className:"upload-game-record-detail-row",children:[e.jsx(r.Text,{type:"tertiary",children:a("uploadGame.record.metaSource")}),e.jsx(r.Text,{children:Te(g.source)})]}),e.jsxs("div",{className:"upload-game-record-detail-row",children:[e.jsx(r.Text,{type:"tertiary",children:a("uploadGame.record.metaSize")}),e.jsx(r.Text,{children:Pe(g.size)})]})]}),e.jsxs("div",{className:"upload-game-record-detail-note",children:[e.jsx(r.Text,{type:"tertiary",children:a("gameAssetDescription")}),e.jsx(r.Paragraph,{children:g.desc||a("uploadGame.record.noDesc")})]})]}),e.jsx("div",{className:"upload-game-record-preview",children:g.state==="ready"?$?e.jsxs(e.Fragment,{children:[e.jsx("div",{className:"upload-game-record-qr-box",children:e.jsx(pe,{value:$,size:132})}),e.jsx(r.Text,{className:"upload-game-success-qr-caption",children:a("uploadGame.record.previewHint")})]}):e.jsx("div",{className:"upload-game-record-qr-box upload-game-record-qr-box-muted",children:je?e.jsxs("div",{className:"upload-game-record-preview-loading",children:[e.jsx(z,{size:"small"}),e.jsx(r.Text,{children:a("uploadGame.record.previewLoading")})]}):e.jsx(r.Text,{type:"tertiary",children:a("uploadGame.record.previewUnavailable")})}):e.jsx("div",{className:"upload-game-record-qr-box upload-game-record-qr-box-muted",children:e.jsx(r.Text,{type:"tertiary",children:g.state==="failed"?a("uploadGame.record.failedDesc"):a("uploadGame.record.pendingDesc")})})})]}),String(g.asset_id)===String(fe)&&d?e.jsx("div",{className:"upload-game-success-actions",children:e.jsx(w,{theme:"light",onClick:()=>window.open(d,"_blank"),children:a("viewOnPlatform")})}):null]}):null]}):null]}):null]})]})};export{gs as CheckCode};
1
+ import{j as e,i as a,D as _,r as o,h as Oe,u as Be,k as qe,g as Ke,f as He,P as Ve,T as r,e as z,I as V,l as Qe,B as w,m as Je,Q as pe,n as Ze,d as C}from"./index-BegU9LBT.js";import{B as We}from"./index-CcUgN29Y.js";import{C as he,F as me}from"./baseForm-I9suIiQn.js";import{A as Xe}from"./index-8sDAOAcS.js";import"./col-w9Q-2mgM.js";import"./index-DEQ2hVPA.js";const Ye="https://bytedance.larkoffice.com/wiki/LkihwQCMfiBpr3khwNuceCBkn3e";function es(m){return String(m).replace(/^\s*\d+\s*[\.、]\s*/,"")}const ss=({engine:m})=>e.jsx("div",{className:"check-code-banner-list",children:[{show:!0,titleKey:"pkgSizeCheckDesc",desc:e.jsxs("div",{children:[e.jsx("span",{children:m==="unity"?a("unityPkgSizeCheckDescTip",{projectSize:"60MB"}):a("commonPkgSizeCheckDescTip",{projectSize:"30MB",mainPackageSize:"4MB",independentPackageSize:"4MB"})}),e.jsx(_,{className:"check-code-banner-doc-link",href:Ye,children:a("uploadGame.packageSizeDoc")})]})},{show:m!=="unity",titleKey:"mandatoryApiCheck",desc:a("mandatoryApiCheckDesc")},{show:!0,titleKey:"configFileCheck",desc:e.jsxs("div",{children:[e.jsx("code",{children:"game.json"}),":",a("gameJsonCheckDesc")]})}].filter(i=>i.show).map((i,h)=>e.jsxs("div",{className:"check-code-banner-section",children:[e.jsxs("div",{className:"check-code-banner-section-title",children:[e.jsx("span",{className:"check-code-banner-section-index",children:h+1}),e.jsx("strong",{children:es(a(i.titleKey))})]}),e.jsx("div",{className:"check-code-banner-section-desc",children:i.desc})]},i.titleKey))}),as=({engine:m})=>e.jsx("div",{className:"check-code-banner",role:"note",children:e.jsx(ss,{engine:m})}),rs=m=>{const{result:i}=m,h=i.every(d=>d?.passed),[l,n]=o.useState(!1);return e.jsxs("section",{className:`check-result-group ${h?"check-result-group-passed":"check-result-group-failed"}`,children:[e.jsxs("div",{className:"check-result-title",children:[e.jsx("span",{className:"check-result-status-dot"}),e.jsx("span",{className:"check-result-title-text",children:h?a("checkConfigPassed"):a("checkConfigFailed")})]}),e.jsxs("div",{className:`check-result-collapse ${l?"check-result-collapse-open":"check-result-collapse-closed"}`,children:[e.jsx(he,{collapseHeight:150,isOpen:l,children:e.jsx("div",{className:"check-result-list",children:i.map((d,k)=>e.jsxs("div",{className:`check-result-item ${d?.passed?"check-result-item-passed":"check-result-item-failed"}`,children:[e.jsx("span",{className:"check-result-tag",children:d?.file}),e.jsx("span",{className:"check-result-message",children:d?.msg}),d?.detail?.link?e.jsx(_,{className:"check-result-link",href:d.detail.link,children:d.detail.text||a("viewDoc")}):null]},k))})}),l?e.jsx("button",{className:"check-result-toggle",type:"button",onClick:()=>n(!1),children:a("closeCheckDetail")}):e.jsx("button",{className:"show-more-text-btn",type:"button",onClick:()=>n(!0),children:a("expandCheckDetail")})]})]})},ls={project:a("gameProject"),main_package:a("gameMainPackage"),independent_package:a("independentPackage")},ts=m=>{const{result:i}=m,h=i.every(l=>l?.passed);return e.jsxs("section",{className:`check-result-group ${h?"check-result-group-passed":"check-result-group-failed"}`,children:[e.jsxs("div",{className:"check-result-title",children:[e.jsx("span",{className:"check-result-status-dot"}),e.jsx("span",{className:"check-result-title-text",children:h?a("checkPkgSizePassed"):a("checkPkgSizeFailed")})]}),e.jsx("div",{className:"check-result-list",children:i.map((l,n)=>e.jsxs("div",{className:`check-result-item ${l?.passed?"check-result-item-passed":"check-result-item-failed"}`,children:[e.jsxs("span",{className:"check-result-tag",children:[ls[l.dimension],l.dimension==="independent_package"?`: ${l.name}`:""]}),e.jsx("span",{className:"check-result-message",children:l?.msg}),l?.detail?.link?e.jsx(_,{className:"check-result-link",href:l.detail.link,children:l.detail.text||a("viewDoc")}):null]},n))})]})},cs=m=>{const{result:i}=m;if(!Array.isArray(i)||i.length===0)return null;const h=i.every(d=>d?.passed),[l,n]=o.useState(!1);return e.jsxs("section",{className:`check-result-group ${h?"check-result-group-passed":"check-result-group-failed"}`,children:[e.jsxs("div",{className:"check-result-title",children:[e.jsx("span",{className:"check-result-status-dot"}),e.jsx("span",{className:"check-result-title-text",children:h?a("checkApiSuccess"):a("checkApiFailed")})]}),e.jsxs("div",{className:`check-result-collapse ${l?"check-result-collapse-open":"check-result-collapse-closed"}`,children:[e.jsx(he,{collapseHeight:150,isOpen:l,children:e.jsx("div",{className:"check-result-list",children:i.map((d,k)=>e.jsxs("div",{className:`check-result-item ${d?.passed?"check-result-item-passed":"check-result-item-failed"}`,children:[e.jsx("span",{className:"check-result-tag",children:d?.name}),e.jsxs("span",{className:"check-result-message",children:[a(d?.name),d?.passed?a("integrated"):a("notIntegrated")]}),d?.detail?.link?e.jsx(_,{className:"check-result-link",href:d.detail.link,children:d.detail.text||a("viewDoc")}):null]},k))})}),l?e.jsx("button",{className:"check-result-toggle",type:"button",onClick:()=>n(!1),children:a("closeCheckDetail")}):e.jsx("button",{className:"show-more-text-btn",type:"button",onClick:()=>n(!0),children:a("expandCheckDetail")})]})]})},ds=m=>{const{result:i}=m;if(!Array.isArray(i)||i.length===0)return null;const h=i.every(l=>l?.passed);return e.jsxs("section",{className:`check-result-group ${h?"check-result-group-passed":"check-result-group-failed"}`,children:[e.jsxs("div",{className:"check-result-title",children:[e.jsx("span",{className:"check-result-status-dot"}),e.jsx("span",{className:"check-result-title-text",children:h?a("checkPerformancePassed"):a("checkPerformanceFailed")})]}),e.jsx("div",{className:"check-result-list",children:i.map((l,n)=>e.jsxs("div",{className:`check-result-item ${l?.passed?"check-result-item-passed":"check-result-item-failed"}`,children:[e.jsx("span",{className:"check-result-tag",children:a("performanceCheck")}),e.jsx("span",{className:"check-result-message",children:l?.msg}),l?.detail?.link?e.jsx(_,{className:"check-result-link",href:l.detail.link,children:l.detail.text||a("viewDoc")}):null]},n))})]})},gs=()=>{const m=Oe(),i=3e3,h=600*1e3,[l,n]=o.useState("idle"),[d,k]=o.useState(""),[A,F]=o.useState(""),[ge,R]=o.useState(""),[G,M]=o.useState([]),[v,b]=o.useState(""),[xe,Q]=o.useState({}),[J,U]=o.useState(!1),[Z,L]=o.useState(""),[je,E]=o.useState(!1),[fe,ke]=o.useState(""),[T,ve]=o.useState([]),[O,W]=o.useState(!1),[P,X]=o.useState(!0),[x,ye]=o.useState(!1),[Y,ee]=o.useState(""),[se,ae]=o.useState(!1),[B,j]=o.useState(""),re=o.useRef(null),{state:{engine:Ne,user:q,gameDetail:y}}=Be(),N=qe(q),K=Ke({errorCode:y?.has_error?y.error_code:void 0,user:q}),I=K==="noPermission",we=I||K==="networkProxy",H=s=>new Promise(t=>setTimeout(t,s)),Se=s=>s?String(s.status??s.cdn_deploy_status??s.live_status??"").toLowerCase():"",le=s=>s?String(s.status??s.cdn_deploy_status??s.live_status??""):"",D=s=>{if(Number(s?.cdn_deploy_status)===2)return"ready";const t=Se(s);return t?["ready","success","succeeded","available"].includes(t)?"ready":t.includes("fail")||t.includes("error")||t.includes("reject")?"failed":"pending":"pending"},te=s=>s==="preview"?4:s==="review"?3:s==="live"?2:1,Ge=s=>{if(!s)return[];const t=[...(s.preview_assets||[]).map(c=>({...c,source:"preview",state:D(c)})),...(s.in_review_assets||[]).map(c=>({...c,source:"review",state:D(c)})),...(s.live_assets||[]).map(c=>({...c,source:"live",state:D(c)})),...(s.assets||[]).map(c=>({...c,source:"other",state:D(c)}))].sort((c,p)=>{const f=Number(p.uploaded_at||0)-Number(c.uploaded_at||0);return f!==0?f:te(p.source)-te(c.source)}),u=new Map;return t.forEach(c=>{const p=String(c.asset_id||"");p&&!u.has(p)&&u.set(p,c)}),Array.from(u.values())},be=s=>s==="ready"?a("uploadGame.record.state.ready"):s==="failed"?a("uploadGame.record.state.failed"):a("uploadGame.record.state.pending"),Te=s=>s==="preview"?a("uploadGame.record.source.preview"):s==="review"?a("uploadGame.record.source.review"):s==="live"?a("uploadGame.record.source.live"):a("uploadGame.record.source.other"),ce=s=>s?new Date(s*1e3).toLocaleString():a("uploadGame.record.metaUnknown"),Pe=s=>{if(!s)return a("uploadGame.record.metaUnknown");const t=s/1024/1024;return`${t>=10?t.toFixed(0):t.toFixed(1)} MB`},de=s=>{if(s.version)return`v${s.version}`;const t=String(s.asset_id||"");return t?`${t.slice(0,6)}...${t.slice(-4)}`:a("uploadGame.record.metaUnknown")},De=s=>`${de(s)} · ${be(s.state)} · ${ce(s.uploaded_at)}`,Ce=s=>s?[s.preview_assets||[],s.in_review_assets||[],s.live_assets||[],s.assets||[]].flat().filter(Boolean):[],ie=async()=>{if(!N||I){M([]),b(""),L(""),U(!1);return}U(!0),L("");try{const s=await C({method:"POST",url:"/game/assets"});if(s?.code!==0||!s?.data)throw new Error(a("uploadGame.record.loadFailed"));const t=Ge(s.data);M(t);const u=(v&&t.some(c=>String(c.asset_id)===String(v))?v:"")||"";b(String(u||""))}catch(s){L(s instanceof Error?s.message:a("uploadGame.record.loadFailed"))}finally{U(!1)}},_e=async(s,t)=>{for(;Date.now()<t;){const u=await C({method:"POST",url:"/game/assets",data:{assetId:s,includePending:!0}}),p=Ce(u?.data).find(f=>String(f.asset_id)===String(s))||null;if(p){const f=le(p);f&&R(f);const ue=D(p);if(ue==="ready")return{ok:!0,asset:p};if(ue==="failed")return{ok:!1,asset:p}}await H(i)}return{ok:!1,asset:null}},oe=async(s,t)=>{for(;Date.now()<t;){const u=await C({method:"POST",url:"/game/asset/preview-url",data:{assetId:s}});if(u?.code===0&&u?.data?.preview_url)return u.data.preview_url;await H(i)}return""},Ae=()=>{X(!0),W(!1),C({url:"/game/check",method:"GET"}).then(s=>{ve(s?.data||[])}).catch(()=>{W(!0)}).finally(()=>{X(!1)})};o.useEffect(()=>{Ae()},[]),o.useEffect(()=>{if(!N||I){M([]),b(""),L(""),U(!1);return}ie()},[N,I]);const Re=T.filter(s=>s?.type==="config"),Ue=T.filter(s=>s?.type==="size"),Le=T.filter(s=>s?.type==="api"),Ee=T.filter(s=>s?.type==="performance"),ne=T.some(s=>!s?.passed),Ie=s=>l==="uploading"?s===0?"current":"pending":l==="checkingAsset"?s===0?"done":s===1?"current":"pending":l==="resolvingPreview"?s<=1?"done":s===2?"current":"pending":"pending",$e=[a("uploadGame.progress.step1"),a("uploadGame.progress.step2"),a("uploadGame.progress.step3")],ze=[a("uploadGame.guide.precheck.title"),a("uploadGame.guide.version.title"),a("uploadGame.guide.preview.title")],S=()=>{ye(s=>!s)},g=G.find(s=>String(s.asset_id)===String(v))||null,$=v&&xe[String(v)]||"";o.useEffect(()=>{if(!g||g.state!=="ready"){E(!1);return}const s=String(g.asset_id);if($){E(!1);return}let t=!1;return(async()=>{E(!0);const c=await oe(s,Date.now()+h);t||(c&&Q(p=>({...p,[s]:c})),E(!1))})(),()=>{t=!0}},[g,$]);const Fe=()=>{if(!Y.trim()){j(a("needDesc"));return}ae(!0),n("uploading"),j(""),k(""),R(""),F(""),C({method:"POST",url:"/game/upload",headers:{"ttmg-game-desc":encodeURIComponent(Y||"--")}}).then(async s=>{if(s?.code===0){await H(500),k(s?.data?.detail||"");const t=s?.data?.asset_id?String(s.data.asset_id):"",u=Date.now()+h;if(!t){n("failure"),j(a("uploadGame.failure.missingAssetId"));return}n("checkingAsset");const c=await _e(t,u);if(!c.ok){n("failure"),j(c.asset?a("uploadGame.failure.assetStatus",{status:le(c.asset)||"-"}):a("uploadGame.failure.assetTimeout"));return}n("resolvingPreview");const p=await oe(t,u);if(!p){n("failure"),j(a("uploadGame.failure.previewTimeout"));return}Q(f=>({...f,[t]:p})),ke(t),b(""),F(p),await ie(),n("success")}else n("idle"),j(s?.error?.StatusMessage||s?.detail||a("uploadPlatformFailed"))}).catch(s=>{n("idle"),j(s?.error?.StatusMessage||s?.response?.detail||s?.message||a("uploadPlatformFailed"))}).finally(()=>{ae(!1)})},Me=()=>{n("idle"),j(""),k(""),R(""),F(""),ee(""),re.current?.formApi?.reset?.()};if(we){const s=y?.has_error?y.error_code:void 0,t=y?.has_error?y.error_msg:"",u=y?.client_key||"";return e.jsx(Xe,{errorMsg:He({errorCode:s,errorMsg:t,clientKey:u,user:q}),errorState:K})}return e.jsxs("div",{className:"upload-game-page",children:[e.jsx(Ve,{title:a("uploadGame.guide.title"),subtitle:a("uploadGame.guide.desc")}),e.jsxs("section",{className:"upload-game-hero",children:[P?e.jsxs("div",{className:"upload-game-summary-panel upload-game-summary-panel-neutral",children:[e.jsxs("div",{className:"upload-game-summary-copy",children:[e.jsx(r.Text,{strong:!0,children:a("uploadGame.summary.checkingTitle")}),e.jsx(r.Text,{style:{color:"var(--tt-text-dim)"},children:a("uploadGame.summary.checkingDesc")})]}),e.jsx(z,{size:"small"})]}):null,!P&&O?e.jsxs("div",{className:`upload-game-summary-panel upload-game-summary-panel-warn ${x?"upload-game-summary-panel-expanded":""}`,children:[e.jsxs("div",{className:"upload-game-summary-copy",children:[e.jsx(r.Text,{strong:!0,children:a("uploadGame.summary.failedTitle")}),e.jsx(r.Text,{style:{color:"var(--tt-text-dim)"},children:a("uploadGame.checkFetchFailed")})]}),e.jsxs("span",{className:"upload-game-summary-action",role:"button",tabIndex:0,onClick:S,onKeyDown:s=>{(s.key==="Enter"||s.key===" ")&&(s.preventDefault(),S())},children:[e.jsx(V,{style:{transform:x?"rotate(180deg)":"rotate(0deg)",transition:"transform 0.2s ease"}}),e.jsx(r.Text,{children:a(x?"uploadGame.hideDetails":"uploadGame.showDetails")})]})]}):null,N?null:e.jsxs("div",{className:"upload-game-inline-notice",children:[e.jsx("div",{className:"upload-game-inline-notice-icon",children:e.jsx(Qe,{})}),e.jsxs("div",{className:"upload-game-inline-notice-copy",children:[e.jsx(r.Text,{strong:!0,children:a("uploadGame.loginNoticeTitle")}),e.jsx(r.Text,{children:a("loginToUpload")}),e.jsx("div",{className:"upload-game-inline-notice-action",children:e.jsx(w,{theme:"light",onClick:()=>m("/basic_debug_guide"),children:a("basicDebugGuide.entryAction")})})]})]}),!P&&!O&&ne?e.jsxs("div",{className:`upload-game-summary-panel upload-game-summary-panel-warn ${x?"upload-game-summary-panel-expanded":""}`,children:[e.jsxs("div",{className:"upload-game-summary-copy",children:[e.jsx(r.Text,{strong:!0,children:a("uploadGame.issueTitle")}),e.jsx(r.Text,{style:{color:"var(--tt-text-dim)"},children:a("uploadGame.issueDesc")})]}),e.jsxs("span",{className:"upload-game-summary-action",role:"button",tabIndex:0,onClick:S,onKeyDown:s=>{(s.key==="Enter"||s.key===" ")&&(s.preventDefault(),S())},children:[e.jsx(V,{style:{transform:x?"rotate(180deg)":"rotate(0deg)",transition:"transform 0.2s ease"}}),e.jsx(r.Text,{children:a(x?"uploadGame.hideDetails":"uploadGame.showDetails")})]})]}):null,!P&&!O&&!ne?e.jsxs("div",{className:`upload-game-summary-panel upload-game-summary-panel-ok ${x?"upload-game-summary-panel-expanded":""}`,children:[e.jsxs("div",{className:"upload-game-summary-copy",children:[e.jsx(r.Text,{strong:!0,children:a("uploadGame.readyTitle")}),e.jsx(r.Text,{style:{color:"var(--tt-text-dim)"},children:a("uploadGame.readyDesc")})]}),e.jsxs("span",{className:"upload-game-summary-action",role:"button",tabIndex:0,onClick:S,onKeyDown:s=>{(s.key==="Enter"||s.key===" ")&&(s.preventDefault(),S())},children:[e.jsx(V,{style:{transform:x?"rotate(180deg)":"rotate(0deg)",transition:"transform 0.2s ease"}}),e.jsx(r.Text,{children:a(x?"uploadGame.hideDetails":"uploadGame.showDetails")})]})]}):null,x?e.jsx("div",{className:"upload-game-inline-detail",children:e.jsx("div",{className:"upload-game-check-body upload-game-detail-card",children:P?e.jsx("div",{className:"upload-game-loading",children:e.jsx(z,{})}):e.jsxs(e.Fragment,{children:[e.jsx(as,{engine:Ne}),e.jsx(ds,{result:Ee}),e.jsx(ts,{result:Ue}),e.jsx(cs,{result:Le}),e.jsx(rs,{result:Re})]})})}):null,e.jsx("div",{className:"upload-game-flow","aria-label":a("uploadGame.guide.title"),children:ze.map((s,t)=>e.jsxs("div",{className:"upload-game-flow-item",children:[e.jsx("span",{className:"upload-game-flow-index",children:t+1}),e.jsx(r.Text,{children:s})]},s))}),e.jsxs("div",{className:`upload-game-module-card upload-game-form-wrapper upload-game-form-wrapper-main ${l==="idle"?"":"upload-game-form-wrapper-stage"}`,children:[l==="idle"?e.jsxs(e.Fragment,{children:[e.jsxs("div",{className:"upload-game-form-head",children:[e.jsx(r.Text,{strong:!0,children:a("gameAssetDescription")}),e.jsx(r.Text,{className:"upload-game-form-head-desc",children:a("uploadGame.uploadDescHint")})]}),e.jsx(me,{ref:re,onChange:({values:s})=>{ee(s?.gameDescription||""),j("")},children:e.jsx(me.TextArea,{noLabel:!0,placeholder:a("gameAssetDescription"),field:"gameDescription",disabled:!N})}),B&&e.jsx(r.Text,{type:"danger",style:{display:"block",marginBottom:8},children:B}),e.jsx(w,{className:"upload-game-upload-action",theme:"solid",type:"primary",disabled:!N||se,loading:se,onClick:Fe,children:a("uploadToPlatform")})]}):null,l==="uploading"||l==="checkingAsset"||l==="resolvingPreview"?e.jsxs("div",{className:"upload-game-progress-card",children:[e.jsxs("div",{className:"upload-game-progress-head",children:[e.jsxs("div",{className:"upload-game-progress-badge",children:[e.jsx("span",{className:"upload-game-progress-badge-dot"}),e.jsx(r.Text,{children:l==="uploading"?a("uploadGame.progress.badgeUploading"):l==="checkingAsset"?a("uploadGame.progress.badgeChecking"):a("uploadGame.progress.badgePreview")})]}),e.jsx("div",{className:"upload-game-progress-bar"})]}),e.jsxs("div",{className:"upload-game-progress-copy",children:[e.jsx(r.Text,{strong:!0,className:"upload-game-stage-title",children:l==="uploading"?a("uploadGame.progress.title"):l==="checkingAsset"?a("uploadGame.progress.assetTitle"):a("uploadGame.progress.previewTitle")}),e.jsx(r.Paragraph,{className:"upload-game-form-head-desc",children:l==="uploading"?a("uploadGame.progress.desc"):l==="checkingAsset"?a("uploadGame.progress.assetDesc",{status:ge||a("uploadGame.progress.statusPending")}):a("uploadGame.progress.previewDesc")}),e.jsx("div",{className:"upload-game-progress-steps",children:$e.map((s,t)=>{const u=Ie(t);return e.jsxs("div",{className:`upload-game-progress-step upload-game-progress-step-${u}`,children:[e.jsx("span",{className:"upload-game-progress-step-dot",children:t+1}),e.jsx("span",{className:"upload-game-progress-step-label",children:s})]},s)})})]})]}):null,l==="success"?e.jsx("div",{className:"upload-game-success-card",children:e.jsxs("div",{className:"upload-game-success-body",children:[e.jsxs("div",{className:"upload-game-success-content",children:[e.jsxs("div",{className:"upload-game-success-heading",children:[e.jsx("span",{className:"upload-game-success-icon","aria-hidden":"true",children:e.jsx(Je,{})}),e.jsx(r.Text,{strong:!0,className:"upload-game-stage-title",children:A?a("uploadGame.success.readyTitle"):a("uploadGame.success.title")})]}),e.jsx(r.Paragraph,{className:"upload-game-form-head-desc",children:A?a("uploadGame.success.desc"):a("uploadGame.success.pendingDesc")}),e.jsxs("div",{className:"upload-game-success-actions",children:[d?e.jsx(w,{theme:"light",onClick:()=>window.open(d,"_blank"),children:a("viewOnPlatform")}):null,e.jsx(w,{theme:"solid",type:"primary",onClick:Me,children:a("uploadGame.success.uploadAnother")})]})]}),e.jsx("div",{className:"upload-game-success-qr",children:A?e.jsxs(e.Fragment,{children:[e.jsx("div",{className:"upload-game-success-qr-box",children:e.jsx(pe,{value:A,size:156})}),e.jsx(r.Text,{className:"upload-game-success-qr-caption",children:a("uploadGame.success.qrHint")})]}):e.jsx("div",{className:"upload-game-success-qr-placeholder",children:e.jsx(r.Text,{type:"tertiary",children:a("uploadGame.success.noQr")})})})]})}):null,l==="failure"?e.jsxs("div",{className:"upload-game-failure-card",children:[e.jsx(r.Text,{strong:!0,className:"upload-game-stage-title",children:a("uploadGame.failure.title")}),e.jsx(r.Paragraph,{className:"upload-game-form-head-desc",children:B||a("uploadPlatformFailed")}),e.jsxs("div",{className:"upload-game-success-actions",children:[d?e.jsx(w,{theme:"light",onClick:()=>window.open(d,"_blank"),children:a("viewOnPlatform")}):null,e.jsx(w,{theme:"solid",type:"primary",onClick:()=>{n("idle"),j(""),k(""),R("")},children:a("uploadGame.failure.retry")})]})]}):null]}),N?e.jsxs("div",{className:"upload-game-module-card upload-game-records",children:[e.jsx("div",{className:"upload-game-records-head",children:e.jsxs("div",{className:"upload-game-records-copy",children:[e.jsx(r.Text,{children:a("uploadGame.record.title")}),e.jsx(r.Text,{className:"upload-game-form-head-desc",children:a("uploadGame.record.desc")})]})}),Z?e.jsx(We,{type:"warning",description:Z,style:{marginTop:12}}):null,J&&!G.length?e.jsxs("div",{className:"upload-game-records-empty",children:[e.jsx(z,{size:"small"}),e.jsx(r.Text,{children:a("uploadGame.record.loading")})]}):null,!J&&!G.length?e.jsx("div",{className:"upload-game-records-empty",children:e.jsx(r.Text,{children:a("uploadGame.record.empty")})}):null,G.length?e.jsxs("div",{className:"upload-game-records-layout",children:[e.jsx("div",{className:"upload-game-records-toolbar",children:e.jsx(Ze,{value:v,className:"upload-game-record-select",placeholder:a("uploadGame.record.selectPlaceholder"),allowClear:!0,optionList:G.slice(0,12).map(s=>({value:String(s.asset_id),label:De(s)})),onChange:s=>b(String(s||""))})}),g?e.jsxs("div",{className:"upload-game-record-detail",children:[e.jsx("div",{className:"upload-game-record-detail-head",children:e.jsx("div",{className:"upload-game-record-detail-copy",children:e.jsx(r.Text,{strong:!0,children:a("uploadGame.record.detailTitle",{version:de(g)})})})}),e.jsxs("div",{className:"upload-game-record-detail-body",children:[e.jsxs("div",{className:"upload-game-record-detail-main",children:[e.jsxs("div",{className:"upload-game-record-detail-meta",children:[e.jsxs("div",{className:"upload-game-record-detail-row",children:[e.jsx(r.Text,{type:"tertiary",children:a("uploadGame.record.metaUploadedAt")}),e.jsx(r.Text,{children:ce(g.uploaded_at)})]}),e.jsxs("div",{className:"upload-game-record-detail-row",children:[e.jsx(r.Text,{type:"tertiary",children:a("uploadGame.record.metaAssetId")}),e.jsx(r.Text,{children:g.asset_id||a("uploadGame.record.metaUnknown")})]}),e.jsxs("div",{className:"upload-game-record-detail-row",children:[e.jsx(r.Text,{type:"tertiary",children:a("uploadGame.record.metaSource")}),e.jsx(r.Text,{children:Te(g.source)})]}),e.jsxs("div",{className:"upload-game-record-detail-row",children:[e.jsx(r.Text,{type:"tertiary",children:a("uploadGame.record.metaSize")}),e.jsx(r.Text,{children:Pe(g.size)})]})]}),e.jsxs("div",{className:"upload-game-record-detail-note",children:[e.jsx(r.Text,{type:"tertiary",children:a("gameAssetDescription")}),e.jsx(r.Paragraph,{children:g.desc||a("uploadGame.record.noDesc")})]})]}),e.jsx("div",{className:"upload-game-record-preview",children:g.state==="ready"?$?e.jsxs(e.Fragment,{children:[e.jsx("div",{className:"upload-game-record-qr-box",children:e.jsx(pe,{value:$,size:132})}),e.jsx(r.Text,{className:"upload-game-success-qr-caption",children:a("uploadGame.record.previewHint")})]}):e.jsx("div",{className:"upload-game-record-qr-box upload-game-record-qr-box-muted",children:je?e.jsxs("div",{className:"upload-game-record-preview-loading",children:[e.jsx(z,{size:"small"}),e.jsx(r.Text,{children:a("uploadGame.record.previewLoading")})]}):e.jsx(r.Text,{type:"tertiary",children:a("uploadGame.record.previewUnavailable")})}):e.jsx("div",{className:"upload-game-record-qr-box upload-game-record-qr-box-muted",children:e.jsx(r.Text,{type:"tertiary",children:g.state==="failed"?a("uploadGame.record.failedDesc"):a("uploadGame.record.pendingDesc")})})})]}),String(g.asset_id)===String(fe)&&d?e.jsx("div",{className:"upload-game-success-actions",children:e.jsx(w,{theme:"light",onClick:()=>window.open(d,"_blank"),children:a("viewOnPlatform")})}):null]}):null]}):null]}):null]})]})};export{gs as CheckCode};