@cluesmith/codev 3.3.3 → 3.3.4
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/dashboard-dist/assets/{index-CUIjS_Vb.js → index-DZf6pNPE.js} +2 -2
- package/dashboard-dist/assets/{index-CUIjS_Vb.js.map → index-DZf6pNPE.js.map} +1 -1
- package/dashboard-dist/index.html +1 -1
- package/dist/agent-farm/cli.d.ts.map +1 -1
- package/dist/agent-farm/cli.js +48 -0
- package/dist/agent-farm/cli.js.map +1 -1
- package/dist/agent-farm/commands/ide.d.ts +20 -0
- package/dist/agent-farm/commands/ide.d.ts.map +1 -0
- package/dist/agent-farm/commands/ide.js +138 -0
- package/dist/agent-farm/commands/ide.js.map +1 -0
- package/dist/agent-farm/commands/inbox.d.ts.map +1 -1
- package/dist/agent-farm/commands/inbox.js +15 -3
- package/dist/agent-farm/commands/inbox.js.map +1 -1
- package/dist/agent-farm/commands/send.d.ts.map +1 -1
- package/dist/agent-farm/commands/send.js +16 -1
- package/dist/agent-farm/commands/send.js.map +1 -1
- package/dist/agent-farm/commands/spawn-worktree.d.ts.map +1 -1
- package/dist/agent-farm/commands/spawn-worktree.js +16 -7
- package/dist/agent-farm/commands/spawn-worktree.js.map +1 -1
- package/dist/agent-farm/commands/tower.d.ts +21 -9
- package/dist/agent-farm/commands/tower.d.ts.map +1 -1
- package/dist/agent-farm/commands/tower.js +90 -30
- package/dist/agent-farm/commands/tower.js.map +1 -1
- package/dist/agent-farm/db/tower-owner.d.ts +168 -0
- package/dist/agent-farm/db/tower-owner.d.ts.map +1 -0
- package/dist/agent-farm/db/tower-owner.js +369 -0
- package/dist/agent-farm/db/tower-owner.js.map +1 -0
- package/dist/agent-farm/db/types.d.ts +30 -5
- package/dist/agent-farm/db/types.d.ts.map +1 -1
- package/dist/agent-farm/db/types.js.map +1 -1
- package/dist/agent-farm/lib/ide-record.d.ts +65 -0
- package/dist/agent-farm/lib/ide-record.d.ts.map +1 -0
- package/dist/agent-farm/lib/ide-record.js +118 -0
- package/dist/agent-farm/lib/ide-record.js.map +1 -0
- package/dist/agent-farm/lib/tunnel-client.d.ts +22 -0
- package/dist/agent-farm/lib/tunnel-client.d.ts.map +1 -1
- package/dist/agent-farm/lib/tunnel-client.js +53 -5
- package/dist/agent-farm/lib/tunnel-client.js.map +1 -1
- package/dist/agent-farm/servers/gate-profiles.d.ts +23 -2
- package/dist/agent-farm/servers/gate-profiles.d.ts.map +1 -1
- package/dist/agent-farm/servers/gate-profiles.js +43 -2
- package/dist/agent-farm/servers/gate-profiles.js.map +1 -1
- package/dist/agent-farm/servers/ide-forward.d.ts +62 -0
- package/dist/agent-farm/servers/ide-forward.d.ts.map +1 -0
- package/dist/agent-farm/servers/ide-forward.js +274 -0
- package/dist/agent-farm/servers/ide-forward.js.map +1 -0
- package/dist/agent-farm/servers/ide-server.d.ts +68 -0
- package/dist/agent-farm/servers/ide-server.d.ts.map +1 -0
- package/dist/agent-farm/servers/ide-server.js +281 -0
- package/dist/agent-farm/servers/ide-server.js.map +1 -0
- package/dist/agent-farm/servers/mailbox-delivery.d.ts +213 -4
- package/dist/agent-farm/servers/mailbox-delivery.d.ts.map +1 -1
- package/dist/agent-farm/servers/mailbox-delivery.js +489 -68
- package/dist/agent-farm/servers/mailbox-delivery.js.map +1 -1
- package/dist/agent-farm/servers/mailbox-wiring.d.ts +18 -4
- package/dist/agent-farm/servers/mailbox-wiring.d.ts.map +1 -1
- package/dist/agent-farm/servers/mailbox-wiring.js +94 -21
- package/dist/agent-farm/servers/mailbox-wiring.js.map +1 -1
- package/dist/agent-farm/servers/message-write.d.ts +138 -11
- package/dist/agent-farm/servers/message-write.d.ts.map +1 -1
- package/dist/agent-farm/servers/message-write.js +144 -35
- package/dist/agent-farm/servers/message-write.js.map +1 -1
- package/dist/agent-farm/servers/overview.d.ts +28 -12
- package/dist/agent-farm/servers/overview.d.ts.map +1 -1
- package/dist/agent-farm/servers/overview.js +130 -79
- package/dist/agent-farm/servers/overview.js.map +1 -1
- package/dist/agent-farm/servers/render-gate.d.ts +53 -0
- package/dist/agent-farm/servers/render-gate.d.ts.map +1 -1
- package/dist/agent-farm/servers/render-gate.js +135 -24
- package/dist/agent-farm/servers/render-gate.js.map +1 -1
- package/dist/agent-farm/servers/session-submit.d.ts +7 -4
- package/dist/agent-farm/servers/session-submit.d.ts.map +1 -1
- package/dist/agent-farm/servers/session-submit.js +7 -4
- package/dist/agent-farm/servers/session-submit.js.map +1 -1
- package/dist/agent-farm/servers/tower-cron.d.ts.map +1 -1
- package/dist/agent-farm/servers/tower-cron.js +4 -1
- package/dist/agent-farm/servers/tower-cron.js.map +1 -1
- package/dist/agent-farm/servers/tower-instances.d.ts.map +1 -1
- package/dist/agent-farm/servers/tower-instances.js +6 -7
- package/dist/agent-farm/servers/tower-instances.js.map +1 -1
- package/dist/agent-farm/servers/tower-routes.d.ts.map +1 -1
- package/dist/agent-farm/servers/tower-routes.js +53 -13
- package/dist/agent-farm/servers/tower-routes.js.map +1 -1
- package/dist/agent-farm/servers/tower-server.js +64 -7
- package/dist/agent-farm/servers/tower-server.js.map +1 -1
- package/dist/agent-farm/servers/tower-terminals.d.ts.map +1 -1
- package/dist/agent-farm/servers/tower-terminals.js +53 -8
- package/dist/agent-farm/servers/tower-terminals.js.map +1 -1
- package/dist/agent-farm/servers/tower-websocket.d.ts.map +1 -1
- package/dist/agent-farm/servers/tower-websocket.js +18 -1
- package/dist/agent-farm/servers/tower-websocket.js.map +1 -1
- package/dist/agent-farm/utils/message-format.d.ts.map +1 -1
- package/dist/agent-farm/utils/message-format.js +5 -6
- package/dist/agent-farm/utils/message-format.js.map +1 -1
- package/dist/agent-farm/utils/port.d.ts +22 -0
- package/dist/agent-farm/utils/port.d.ts.map +1 -0
- package/dist/agent-farm/utils/port.js +35 -0
- package/dist/agent-farm/utils/port.js.map +1 -0
- package/dist/agent-farm/utils/server-utils.d.ts +26 -0
- package/dist/agent-farm/utils/server-utils.d.ts.map +1 -1
- package/dist/agent-farm/utils/server-utils.js +36 -0
- package/dist/agent-farm/utils/server-utils.js.map +1 -1
- package/dist/cli.js +2 -2
- package/dist/cli.js.map +1 -1
- package/dist/commands/consult/index.d.ts.map +1 -1
- package/dist/commands/consult/index.js +61 -1
- package/dist/commands/consult/index.js.map +1 -1
- package/dist/commands/consult/tree-tripwire.d.ts +177 -0
- package/dist/commands/consult/tree-tripwire.d.ts.map +1 -0
- package/dist/commands/consult/tree-tripwire.js +356 -0
- package/dist/commands/consult/tree-tripwire.js.map +1 -0
- package/dist/commands/doctor.d.ts +69 -0
- package/dist/commands/doctor.d.ts.map +1 -1
- package/dist/commands/doctor.js +163 -0
- package/dist/commands/doctor.js.map +1 -1
- package/dist/commands/generate-image.d.ts +5 -0
- package/dist/commands/generate-image.d.ts.map +1 -1
- package/dist/commands/generate-image.js +225 -4
- package/dist/commands/generate-image.js.map +1 -1
- package/dist/lib/agent-env.d.ts +86 -0
- package/dist/lib/agent-env.d.ts.map +1 -0
- package/dist/lib/agent-env.js +126 -0
- package/dist/lib/agent-env.js.map +1 -0
- package/dist/lib/forge-contracts.d.ts +10 -0
- package/dist/lib/forge-contracts.d.ts.map +1 -1
- package/dist/lib/forge-contracts.js.map +1 -1
- package/dist/lib/forge-rate-limit.d.ts +45 -0
- package/dist/lib/forge-rate-limit.d.ts.map +1 -0
- package/dist/lib/forge-rate-limit.js +89 -0
- package/dist/lib/forge-rate-limit.js.map +1 -0
- package/dist/lib/forge.d.ts +28 -0
- package/dist/lib/forge.d.ts.map +1 -1
- package/dist/lib/forge.js +63 -10
- package/dist/lib/forge.js.map +1 -1
- package/dist/lib/github.d.ts +13 -1
- package/dist/lib/github.d.ts.map +1 -1
- package/dist/lib/github.js +58 -15
- package/dist/lib/github.js.map +1 -1
- package/dist/lib/test-env.d.ts +17 -0
- package/dist/lib/test-env.d.ts.map +1 -1
- package/dist/lib/test-env.js +20 -0
- package/dist/lib/test-env.js.map +1 -1
- package/dist/terminal/pty-session.d.ts +122 -4
- package/dist/terminal/pty-session.d.ts.map +1 -1
- package/dist/terminal/pty-session.js +142 -7
- package/dist/terminal/pty-session.js.map +1 -1
- package/dist/terminal/session-manager.d.ts +23 -2
- package/dist/terminal/session-manager.d.ts.map +1 -1
- package/dist/terminal/session-manager.js +115 -36
- package/dist/terminal/session-manager.js.map +1 -1
- package/dist/terminal/session-screen.d.ts +34 -5
- package/dist/terminal/session-screen.d.ts.map +1 -1
- package/dist/terminal/session-screen.js +52 -6
- package/dist/terminal/session-screen.js.map +1 -1
- package/dist/terminal/terminal-replies.d.ts +102 -0
- package/dist/terminal/terminal-replies.d.ts.map +1 -0
- package/dist/terminal/terminal-replies.js +181 -0
- package/dist/terminal/terminal-replies.js.map +1 -0
- package/package.json +4 -4
- package/scripts/forge/github/pr-list.sh +6 -2
- package/scripts/forge/github/pr-search.sh +4 -2
- package/scripts/forge/gitlab/issue-search.sh +1 -0
- package/scripts/forge/gitlab/pr-search.sh +35 -2
- package/scripts/forge/linear/auth-status.sh +1 -0
- package/scripts/forge/linear/issue-comment.sh +1 -0
- package/scripts/forge/linear/issue-list.sh +1 -0
- package/scripts/forge/linear/issue-search.sh +1 -0
- package/scripts/forge/linear/issue-view.sh +1 -0
- package/scripts/forge/linear/recently-closed.sh +1 -0
- package/scripts/forge/linear/user-identity.sh +1 -0
- package/skeleton/.claude/skills/generate-image/SKILL.md +19 -2
- package/skeleton/.codex/skills/generate-image/SKILL.md +19 -2
- package/skeleton/resources/commands/agent-farm.md +27 -2
- package/skeleton/roles/consultant.md +32 -0
- package/skeleton/templates/AGENTS.md +1 -1
- package/skeleton/templates/CLAUDE.md +1 -1
|
@@ -131,7 +131,7 @@ void main() {
|
|
|
131
131
|
`)});return}}}function Zv({wsPath:e,onFileOpen:t,persistent:r,toolbarExtra:i,onPermanentClose:o}){const h=N.useRef(null),g=N.useRef(null),a=N.useRef(null),c=N.useRef(null),f=N.useRef({ctrl:!1,cmd:!1,clearCallback:null}),v=S2(`(max-width: ${p2}px)`),[u,m]=N.useState("connected"),w=N.useRef(null);return N.useEffect(()=>{var ee,Q;if(!h.current)return;const C=new UR.Terminal({cursorBlink:!0,fontSize:13,lineHeight:1,fontFamily:'Menlo, Monaco, "Courier New", monospace',customGlyphs:!0,scrollback:5e4,theme:{background:"#1a1a1a",foreground:"#e0e0e0",cursor:"#ffffff"},allowProposedApi:!0,linkHandler:{activate:(se,te)=>{window.open(te,"_blank","noopener")}}});g.current=C;const _=new WR.FitAddon;c.current=_,C.loadAddon(_),C.open(h.current);const d=()=>{try{C.loadAddon(new YR.CanvasAddon)}catch{}};try{const se=new GR.WebglAddon;se.onContextLoss(()=>{var ye,Le,be,Qe;const te=((Le=(ye=C.buffer)==null?void 0:ye.active)==null?void 0:Le.viewportY)??0,me=((Qe=(be=C.buffer)==null?void 0:be.active)==null?void 0:Qe.baseY)??0,fe=!me||te>=me;se.dispose(),d(),fe?C.scrollToBottom():te>0&&C.scrollToLine(te)}),C.loadAddon(se)}catch{d()}const y=new e3((se,te)=>{se.preventDefault(),window.open(te,"_blank")});C.loadAddon(y);const b=e.split("/").pop();let S=null,E=null;if(t){E=new i3(C);const se=new r3(C,(te,me,fe,ye)=>{t(te,me,fe,ye)},b,E);S=C.registerLinkProvider(se)}const L=navigator.platform.toUpperCase().includes("MAC");C.attachCustomKeyEventHandler(se=>{if(se.type!=="keydown")return!0;if(se.key==="Enter"&&se.shiftKey)return se.preventDefault(),C.paste(`\\
|
|
132
132
|
`),!1;if(!(L?se.metaKey:se.ctrlKey&&se.shiftKey))return!0;if(se.key==="c"||se.key==="C"){const me=C.getSelection();return me?(se.preventDefault(),navigator.clipboard.writeText(me).catch(()=>{}),!1):!0}return se.key==="v"||se.key==="V"?(se.preventDefault(),b3(C),!1):!0});const x=se=>S3(se,C);h.current.addEventListener("paste",x);try{const se=C._core,te=se==null?void 0:se._inputHandler;if(te&&typeof te.eraseInDisplay=="function"){const me=te.eraseInDisplay.bind(te);te.eraseInDisplay=(fe,ye)=>fe.params[0]===3?!0:me(fe,ye)}}catch{}const O=new a3({term:C,fitAddon:_,debug:!1,getContainer:()=>h.current});let M=null;const D=()=>{M&&clearTimeout(M),M=setTimeout(()=>{M=null,O.safeFit()},150)};O.safeFit();const k=setTimeout(D,300),R=`${window.location.protocol==="https:"?"wss:":"ws:"}//${window.location.host}${e}`,B={lastSeq:0,timer:null,disposed:!1,initialPhase:!0,initialBuffer:"",flushTimer:null,skipReplay:!1,recoveryTimer:null},U=6,V=new d3({maxAttempts:U}),q=se=>(se=se.replace(/\x1b\[[\?>][\d;]*c/g,""),se=se.replace(/\[[\?>][\d;]*c/g,""),se),Y=new o3,W=se=>{const te=se!==void 0?`${R}?resume=${se}`:R,me=fR(T_()),fe=me?new WebSocket(te,me):new WebSocket(te);fe.binaryType="arraybuffer",a.current=fe,B.initialPhase=!0,B.initialBuffer="",B.flushTimer&&(clearTimeout(B.flushTimer),B.flushTimer=null),Y.flush(),O.reset();const ye=()=>{B.initialPhase=!1,B.flushTimer=null;const Le=()=>{var be;((be=a.current)==null?void 0:be.readyState)===WebSocket.OPEN&&yu(a.current,"resize",{cols:C.cols,rows:C.rows})};if(B.initialBuffer){const be=q(B.initialBuffer);B.initialBuffer="",be?(O.beginReplay(),C.write(be,()=>{O.endReplay(),Le()})):(O.enterInteractive(),D(),Le())}else O.enterInteractive(),D(),Le()};fe.onopen=()=>{V.recordSuccess(),m("connected"),yu(fe,"resize",{cols:C.cols,rows:C.rows})},fe.onmessage=Le=>{var xe;const be=new Uint8Array(Le.data);if(be.length===0)return;const Qe=be[0],Rt=be.subarray(1);if(Qe===T2){const Se=new TextDecoder().decode(Rt);if(B.initialPhase)B.initialBuffer+=Se,B.flushTimer||(B.flushTimer=setTimeout(ye,500));else{const we=Y.write(Se);if(we){const ve=q(we);ve&&C.write(ve)}}}else if(Qe===O2)try{const Se=JSON.parse(new TextDecoder().decode(Rt));Se.type==="seq"&&typeof((xe=Se.payload)==null?void 0:xe.seq)=="number"&&(B.lastSeq=Se.payload.seq)}catch{}},fe.onclose=Le=>{if(B.disposed)return;if(g3({code:Le.code})==="permanent"){m("reconnecting"),o==null||o(),B.recoveryTimer||(B.recoveryTimer=setTimeout(()=>{B.recoveryTimer=null,!B.disposed&&(m("disconnected"),C.write(`\r
|
|
133
133
|
\x1B[31m[Codev: This terminal session no longer exists. Press the refresh button to reconnect.]\x1B[0m\r
|
|
134
|
-
`))},m3));return}if(V.recordFailure()==="give-up"){m("disconnected");return}m("reconnecting");const be=V.nextDelayMs();B.timer=setTimeout(()=>{B.disposed||W(B.lastSeq||void 0)},be)},fe.onerror=()=>{}},j=((Q=(ee=window.matchMedia)==null?void 0:ee.call(window,"(pointer: coarse)"))==null?void 0:Q.matches)??!1,H=C.textarea;let z=!1,F=0,Z="",re=0;const he=()=>{z=!0},ge=()=>{z=!1,F=Date.now()};H&&(H.addEventListener("compositionstart",he),H.addEventListener("compositionend",ge)),C.onData(se=>{var Le,be,Qe,Rt,xe,Se;const te=a.current;if(!te||te.readyState!==WebSocket.OPEN)return;const me=Date.now();if((z||me-F<150||j)&&se===Z&&me-re<150)return;if(Z=se,re=me,B.initialPhase){const we=se.replace(/\x1b\[[\?>][\d;]*c/g,"").replace(/\x1b\[\d+;\d+R/g,"").replace(/\x1b\[\?[\d;]*\$y/g,"");if(!we)return;se=we}const ye=f.current;if((ye.ctrl||ye.cmd)&&se.length===1){const we=se.charCodeAt(0);if(ye.ctrl)we>=97&&we<=122?se=String.fromCharCode(we-96):we>=65&&we<=90&&(se=String.fromCharCode(we-64)),ye.ctrl=!1,ye.cmd=!1,(Le=ye.clearCallback)==null||Le.call(ye);else if(ye.cmd){const ve=se.toLowerCase();if(ve==="v"){(be=navigator.clipboard)==null||be.readText().then(Ce=>{Ce&&C.paste(Ce)}).catch(()=>{}),ye.ctrl=!1,ye.cmd=!1,(Qe=ye.clearCallback)==null||Qe.call(ye);return}if(ve==="c"){const Ce=C.getSelection();Ce&&((Rt=navigator.clipboard)==null||Rt.writeText(Ce).catch(()=>{})),ye.ctrl=!1,ye.cmd=!1,(xe=ye.clearCallback)==null||xe.call(ye);return}ye.ctrl=!1,ye.cmd=!1,(Se=ye.clearCallback)==null||Se.call(ye)}}w3(te,se)}),C.onResize(({cols:se,rows:te})=>{const me=a.current;(me==null?void 0:me.readyState)===WebSocket.OPEN&&yu(me,"resize",{cols:se,rows:te})}),w.current=()=>{const se=a.current;if((se==null?void 0:se.readyState)===WebSocket.OPEN){c.current&&c.current.fit(),yu(se,"resize",{cols:C.cols,rows:C.rows});return}B.disposed||(B.timer&&(clearTimeout(B.timer),B.timer=null),V.reset(),W(B.lastSeq||void 0))},W();const X=new ResizeObserver(()=>D());X.observe(h.current);const G=()=>{document.hidden||D()};return document.addEventListener("visibilitychange",G),()=>{var se,te;B.disposed=!0,B.timer&&clearTimeout(B.timer),B.flushTimer&&clearTimeout(B.flushTimer),B.recoveryTimer&&clearTimeout(B.recoveryTimer),clearTimeout(k),M&&clearTimeout(M),H&&(H.removeEventListener("compositionstart",he),H.removeEventListener("compositionend",ge)),O.dispose(),E==null||E.dispose(),S==null||S.dispose(),(se=h.current)==null||se.removeEventListener("paste",x),X.disconnect(),document.removeEventListener("visibilitychange",G),(te=a.current)==null||te.close(),C.dispose(),g.current=null,a.current=null,c.current=null}},[e]),$.jsxs("div",{style:{width:"100%",height:"100%",display:"flex",flexDirection:"column",position:"relative"},children:[r===!1&&$.jsx("div",{style:{backgroundColor:"#3a2a00",color:"#ffcc00",padding:"4px 12px",fontSize:"12px",flexShrink:0},children:"Session persistence unavailable — this terminal will not survive a restart"}),$.jsx("div",{ref:h,className:"terminal-container",style:{width:"100%",flex:1,minHeight:0,overflow:"hidden",backgroundColor:"#1a1a1a"}}),$.jsx(_3,{fitRef:c,wsRef:a,xtermRef:g,connStatus:u,toolbarExtra:i,onReconnect:()=>{var C;return(C=w.current)==null?void 0:C.call(w)}}),v&&$.jsx(s3,{wsRef:a,modifierRef:f})]})}function w3(e,t){const r=new TextEncoder().encode(t),i=new Uint8Array(1+r.length);i[0]=T2,i.set(r,1),e.send(i.buffer)}function yu(e,t,r){const i=JSON.stringify({type:t,payload:r}),o=new TextEncoder().encode(i),h=new Uint8Array(1+o.length);h[0]=O2,h.set(o,1),e.send(h.buffer)}const C3=300*1e3;function R2(e,t=Date.now()){return e.blocked||e.phase==="complete"||e.phase==="verified"||!e.lastDataAt?!1:t-new Date(e.lastDataAt).getTime()>C3}function x3(e){if(e.blocked)return`Blocked: ${e.blocked}`;if(R2(e))return"Waiting on input";if(e.mode==="soft")return"running";if(!e.phase)return"starting";const t=e.planPhases;if(t.length===0)return e.phase;const r=t.findIndex(i=>i.id===e.phase);return r===-1?e.phase:`${e.phase} (${r+1}/${t.length})`}function Qv(e){if(e<0)return"-";const t=Math.floor(e/6e4);if(t<60)return`${t}m`;const r=Math.floor(t/60),i=t%60;return r<24?`${r}h ${i}m`:`${Math.floor(r/24)}d ${r%24}h`}function E3(e,t){if(!e)return"-";const r=Date.now()-new Date(e).getTime();if(r<0)return"-";const i=Math.max(0,r-t);return t===0?Qv(r):`${Qv(r)} wc / ${Qv(i)} ag`}function A3({builder:e,onOpen:t,architectCount:r=0}){const i=e.issueId?`#${e.issueId}`:e.id,o=e.issueTitle||e.id,h=e.blocked!==null&&e.blocked!=="",g=!h&&R2(e),a=Math.min(100,Math.max(0,Math.round(e.progress??0))),c=r>1&&!!e.spawnedByArchitect,f=h?" builder-row--blocked":g?" builder-row--waiting":"",v=h?" progress-fill--blocked":g?" progress-fill--waiting":"";return $.jsxs("tr",{className:`builder-row${f}`,children:[$.jsxs("td",{className:"builder-col-id",children:[i,c&&$.jsxs("span",{className:"builder-attribution",title:`spawned by ${e.spawnedByArchitect}`,children:[" · ",e.spawnedByArchitect]})]}),$.jsx("td",{className:"builder-col-title",children:o}),$.jsx("td",{className:"builder-col-state",children:$.jsx("span",{className:h||g?"builder-state-blocked":"builder-state-active",children:x3(e)})}),$.jsxs("td",{className:"builder-col-progress",children:[$.jsx("div",{className:"progress-bar",children:$.jsx("div",{className:`progress-fill${v}`,style:{width:`${a}%`}})}),$.jsxs("span",{className:"progress-pct",children:[a,"%"]})]}),$.jsx("td",{className:"builder-col-elapsed",children:E3(e.startedAt,e.idleMs??0)}),$.jsx("td",{className:"builder-col-actions",children:t&&$.jsx("button",{className:"builder-row-open",onClick:()=>t(e),children:"Open"})})]})}function M3(e){switch(e){case"spec review":return"attention-kind--spec";case"plan review":return"attention-kind--plan";case"dev review":return"attention-kind--dev";case"PR review":return"attention-kind--pr";case"verify review":return"attention-kind--verify";default:return"attention-kind--plan"}}function L3(e){const t=Date.now()-new Date(e).getTime(),r=Math.floor(t/6e4);if(r<60)return`${Math.max(1,r)}m`;const i=Math.floor(r/60);return i<24?`${i}h`:`${Math.floor(i/24)}d`}function O3(e,t){const r=[],i=new Map,o=new Set,h=new Set;for(const g of t)g.issueId&&(h.add(g.issueId),g.prReady&&(o.add(g.issueId),g.blockedSince&&i.set(g.issueId,g.blockedSince)));for(const g of e){const a=g.linkedIssue!==null&&h.has(g.linkedIssue),c=g.linkedIssue!==null&&o.has(g.linkedIssue),f=c&&g.linkedIssue!==null?i.get(g.linkedIssue):void 0,v=!a&&g.reviewStatus==="REVIEW_REQUIRED";if(!c&&!v)continue;const u=c?f??g.createdAt:g.createdAt;r.push({key:`pr-${g.id}`,issueOrPR:`#${g.id}`,title:g.title,kind:"PR review",kindClass:"attention-kind--pr",waitingSince:u,url:g.url})}for(const g of t){if(g.prReady||!g.blocked||!g.blockedSince)continue;const a=g.issueId?`#${g.issueId}`:g.id;r.push({key:`gate-${g.id}`,issueOrPR:a,title:g.issueTitle||g.id,kind:g.blocked,kindClass:M3(g.blocked),waitingSince:g.blockedSince})}return r.sort((g,a)=>new Date(g.waitingSince).getTime()-new Date(a.waitingSince).getTime()),r}function T3({prs:e,builders:t}){const r=O3(e,t);return r.length===0?$.jsx("p",{className:"work-empty",children:"Nothing needs attention"}):$.jsx("div",{className:"attention-rows",children:r.map(i=>{const o=$.jsxs($.Fragment,{children:[$.jsx("span",{className:"attention-row-id",children:i.issueOrPR}),$.jsx("span",{className:"attention-row-title",children:i.title}),$.jsx("span",{className:`attention-row-kind ${i.kindClass}`,children:i.kind}),$.jsx("span",{className:"attention-row-age",children:L3(i.waitingSince)})]});return i.url?$.jsx("a",{className:"attention-row",href:i.url,target:"_blank",rel:"noopener noreferrer",children:o},i.key):$.jsx("div",{className:"attention-row",children:o},i.key)})})}function D3(e){const t=Date.now()-new Date(e).getTime(),r=Math.floor(t/6e4);if(r<60)return`${Math.max(1,r)}m`;const i=Math.floor(r/60);return i<24?`${i}h`:`${Math.floor(i/24)}d`}const R3={high:"priority-dot--high",medium:"priority-dot--med",low:"priority-dot--low"},k3={bug:"type-tag--bug",project:"type-tag--project",spike:"type-tag--spike"};function Jv({label:e,filePath:t,onRefresh:r}){return $.jsx("button",{className:"backlog-artifact-link",onClick:async i=>{i.preventDefault(),i.stopPropagation(),await zh(t),r==null||r()},children:e})}function P3({items:e,onRefresh:t}){const r=e.filter(i=>!i.hasBuilder);return r.length===0?$.jsx("p",{className:"work-empty",children:"No open issues"}):$.jsx("div",{className:"backlog-rows",children:r.map(i=>$.jsxs("div",{className:"backlog-row",children:[$.jsxs("a",{className:"backlog-row-main",href:i.url,target:"_blank",rel:"noopener noreferrer",children:[$.jsx("span",{className:`backlog-priority-dot ${R3[i.priority]??"priority-dot--low"}`}),$.jsxs("span",{className:"backlog-row-number",children:["#",i.id]}),$.jsx("span",{className:`backlog-type-tag ${k3[i.type]??""}`,children:i.type}),$.jsx("span",{className:"backlog-row-title",children:i.title}),i.author&&$.jsxs("span",{className:"backlog-row-author",children:["r: @",i.author]}),$.jsxs("span",{className:"backlog-row-assignees",children:["a: ",i.assignees&&i.assignees.length>0?i.assignees.map(o=>`@${o}`).join(", "):"none"]}),$.jsx("span",{className:"backlog-row-age",children:D3(i.createdAt)})]}),(i.specPath||i.planPath||i.reviewPath)&&$.jsxs("span",{className:"backlog-artifacts",children:[i.specPath&&$.jsx(Jv,{label:"spec",filePath:i.specPath,onRefresh:t}),i.planPath&&$.jsx(Jv,{label:"plan",filePath:i.planPath,onRefresh:t}),i.reviewPath&&$.jsx(Jv,{label:"review",filePath:i.reviewPath,onRefresh:t})]})]},i.id))})}function B3(e){const t=Date.now()-new Date(e).getTime(),r=Math.floor(t/6e4);if(r<60)return`${Math.max(1,r)}m ago`;const i=Math.floor(r/60);return i<24?`${i}h ago`:`${Math.floor(i/24)}d ago`}const j3={bug:"type-tag--bug",project:"type-tag--project",spike:"type-tag--spike"};function eg({label:e,filePath:t,onRefresh:r}){return $.jsx("button",{className:"backlog-artifact-link",onClick:async i=>{i.preventDefault(),i.stopPropagation(),await zh(t),r==null||r()},children:e})}function I3({items:e,onRefresh:t}){return e.length===0?null:$.jsx("div",{className:"recently-closed-rows",children:e.map(r=>{const i=r.prUrl||r.specPath||r.planPath||r.reviewPath;return $.jsxs("div",{className:"recently-closed-row",children:[$.jsxs("a",{className:"recently-closed-row-main",href:r.url,target:"_blank",rel:"noopener noreferrer",children:[$.jsx("span",{className:"recently-closed-check",children:"✓"}),$.jsxs("span",{className:"backlog-row-number",children:["#",r.id]}),$.jsx("span",{className:`backlog-type-tag ${j3[r.type]??""}`,children:r.type}),$.jsx("span",{className:"backlog-row-title",children:r.title}),$.jsx("span",{className:"backlog-row-age",children:B3(r.closedAt)})]}),i&&$.jsxs("span",{className:"backlog-artifacts",children:[r.specPath&&$.jsx(eg,{label:"spec",filePath:r.specPath,onRefresh:t}),r.planPath&&$.jsx(eg,{label:"plan",filePath:r.planPath,onRefresh:t}),r.reviewPath&&$.jsx(eg,{label:"review",filePath:r.reviewPath,onRefresh:t}),r.prUrl&&$.jsx("a",{className:"backlog-artifact-link",href:r.prUrl,target:"_blank",rel:"noopener noreferrer",onClick:o=>o.stopPropagation(),children:"PR"})]})]},r.id)})})}function N3(e,t){const r=e.replace(/^\//,"");return t.staged.some(i=>r.endsWith(i)||i.endsWith(r))?{indicator:"A",className:"git-staged"}:t.modified.some(i=>r.endsWith(i)||i.endsWith(r))?{indicator:"M",className:"git-modified"}:t.untracked.some(i=>r.endsWith(i)||i.endsWith(r))?{indicator:"?",className:"git-untracked"}:null}function k2({entry:e,expanded:t,gitStatus:r,onToggle:i,onOpen:o,depth:h=0}){var f;const g=e.type==="directory",a=t.has(e.path),c=g?null:N3(e.path,r);return $.jsxs($.Fragment,{children:[$.jsxs("div",{className:`file-node ${g?"directory":"file"}`,style:{paddingLeft:`${h*16+8}px`},onClick:()=>g?i(e.path):o(e.path),role:"treeitem","aria-expanded":g?a:void 0,tabIndex:0,onKeyDown:v=>{(v.key==="Enter"||v.key===" ")&&(v.preventDefault(),g?i(e.path):o(e.path))},children:[$.jsx("span",{className:"file-icon",children:g?a?"📂":"📁":"📄"}),$.jsx("span",{className:"file-name",children:e.name}),c&&$.jsx("span",{className:`git-indicator ${c.className}`,children:c.indicator})]}),g&&a&&((f=e.children)==null?void 0:f.map(v=>$.jsx(k2,{entry:v,expanded:t,gitStatus:r,onToggle:i,onOpen:o,depth:h+1},v.path)))]})}function P2(e,t=[]){for(const r of e)r.type==="file"&&t.push(r),r.children&&P2(r.children,t);return t}function z3({onRefresh:e}){const[t,r]=N.useState([]),[i,o]=N.useState(new Set),[h,g]=N.useState(null),[a,c]=N.useState(!1),[f,v]=N.useState({modified:[],staged:[],untracked:[]}),[u,m]=N.useState([]),[w,C]=N.useState(""),[_,d]=N.useState(!1),y=N.useRef(null),b=N.useCallback(async()=>{try{const R=await CR();r(R),g(null),c(!0)}catch(R){g(R.message)}},[]),S=N.useCallback(async()=>{try{const R=await ER();v(R)}catch(R){console.error("Failed to load git status:",R)}},[]),E=N.useCallback(async()=>{try{const R=await AR();m(R)}catch(R){console.error("Failed to load recent files:",R)}},[]);N.useEffect(()=>{a||(b(),S(),E())},[a,b,S,E]),N.useEffect(()=>{const R=setInterval(()=>{b(),S()},5e3);return()=>clearInterval(R)},[b,S]);const L=R=>{o(B=>{const U=new Set(B);return U.has(R)?U.delete(R):U.add(R),U})},x=async R=>{try{await zh(R),e(),E()}catch(B){console.error("Failed to open file:",B)}},O=N.useMemo(()=>P2(t),[t]),M=N.useMemo(()=>{if(!w.trim())return[];const R=w.toLowerCase();return O.filter(B=>B.name.toLowerCase().includes(R)||B.path.toLowerCase().includes(R)).slice(0,10)},[O,w]),D=R=>{C(R.target.value),d(!0)},k=R=>{R.key==="Escape"?(d(!1),C("")):R.key==="Enter"&&M.length>0&&(x(M[0].path),C(""),d(!1))},P=R=>{x(R),C(""),d(!1)};return h?$.jsxs("div",{className:"file-tree-error",children:["Error: ",h]}):a?$.jsxs("div",{className:"file-tree-container",children:[$.jsxs("div",{className:"file-search",children:[$.jsx("input",{ref:y,type:"text",className:"file-search-input",placeholder:"Search files...",value:w,onChange:D,onKeyDown:k,onFocus:()=>d(!0),onBlur:()=>setTimeout(()=>d(!1),200)}),_&&M.length>0&&$.jsx("div",{className:"file-search-suggestions",children:M.map(R=>$.jsxs("div",{className:"file-search-suggestion",onMouseDown:()=>P(R.path),children:[$.jsx("span",{className:"suggestion-name",children:R.name}),$.jsx("span",{className:"suggestion-path",children:R.path})]},R.path))})]}),u.length>0&&$.jsxs("div",{className:"file-tree-section",children:[$.jsx("div",{className:"file-tree-section-header",children:"Recent"}),u.map(R=>$.jsxs("div",{className:"file-node file recent-file",style:{paddingLeft:"8px"},onClick:()=>x(R.path),role:"treeitem",tabIndex:0,onKeyDown:B=>{(B.key==="Enter"||B.key===" ")&&(B.preventDefault(),x(R.path))},children:[$.jsx("span",{className:"file-icon",children:"🕐"}),$.jsx("span",{className:"file-name",children:R.name}),$.jsx("span",{className:"file-path-hint",children:R.relativePath})]},R.id))]}),$.jsxs("div",{className:"file-tree-section",children:[$.jsx("div",{className:"file-tree-section-header",children:"Files"}),$.jsx("div",{className:"file-tree",role:"tree","aria-label":"Project files",children:t.map(R=>$.jsx(k2,{entry:R,expanded:i,gitStatus:f,onToggle:L,onOpen:x},R.path))})]})]}):$.jsx("div",{className:"file-tree-loading",children:"Loading files..."})}function H3(e){const t=Math.floor(e/6e4);if(t<1)return"<1m";if(t<60)return`${t}m`;const r=Math.floor(t/60);return r<24?`${r}h`:`${Math.floor(r/24)}d`}function $3(e){const t=e.split("/").filter(Boolean);return t.length<=1?e:t.slice(-2).join("/")}const U3=3e4;function F3({utils:e,annotations:t,onSelectTab:r}){if(e.length===0&&t.length===0)return null;const i=Date.now();return $.jsxs("section",{className:"work-section",children:[$.jsx("h3",{className:"work-section-title",children:"Open Files & Shells"}),$.jsxs("div",{className:"ofs-rows",children:[e.length>0&&$.jsxs($.Fragment,{children:[$.jsx("div",{className:"ofs-subgroup-label",children:"Shells"}),e.map(o=>{const h=!o.lastDataAt||i-o.lastDataAt>U3,g=o.lastDataAt?H3(i-o.lastDataAt):"";return $.jsxs("div",{className:"ofs-row",onClick:()=>r(o.id),children:[$.jsx("span",{className:`ofs-dot ${h?"ofs-dot--idle":"ofs-dot--running"}`}),$.jsx("span",{className:"ofs-name",children:o.name||`Shell ${o.id}`}),h&&g&&$.jsx("span",{className:"ofs-idle",children:g})]},o.id)})]}),t.length>0&&$.jsxs($.Fragment,{children:[$.jsx("div",{className:"ofs-subgroup-label",children:"Files"}),t.map(o=>{const h=o.file.split("/").pop()??o.file;return $.jsxs("div",{className:"ofs-row",onClick:()=>r(o.id),title:o.file,children:[$.jsx("span",{className:"ofs-file-icon",children:"📄"}),$.jsx("span",{className:"ofs-name",children:h}),$.jsx("span",{className:"ofs-path",children:$3(o.file)})]},o.id)})]})]})]})}const Ra=['Use `afx spawn --task "description"` for quick one-off tasks that don\'t need a spec',"Run `afx status` to see all active builders and their current phase",'Use `afx send architect "message"` to notify the architect when you need guidance',"Run `afx cleanup --project 0042` after merging a PR to clean up the worktree","Use `afx spawn --soft -p 42` for flexible, protocol-guided work without strict porch orchestration","Run `afx workspace start` to launch the architect dashboard","Use `afx spawn 42 --resume` to resume an existing builder worktree instead of recreating it","Use `afx open file.ts` to open a file in the dashboard annotation viewer","Run `afx tower start` to start the Tower server — there is no `restart` command, use stop then start","Check `.codev/config.json` at your project root to customize builder and architect commands","Run `porch pending` to see all gates waiting for your approval across all projects","Use `porch status 42` to see detailed phase status for a specific project","Run `porch next 42` to get the next tasks for a project","Use `porch done 42` to signal that the current phase work is complete","Gates like `spec-approval` and `plan-approval` require explicit human approval before advancing","Porch tracks state in `codev/projects/<id>/status.yaml` — never edit this file directly","Use `porch approve 42 spec-approval` to approve a gate (human only)","Porch drives SPIR, TICK, and BUGFIX protocols via a state machine with automatic consultations","Use `consult -m gemini --type integration` for integration reviews with Gemini","Run `consult -m gemini --protocol spir --type spec` to get a Gemini review of your specification","Use `consult -m codex --protocol spir --type spec` for a focused specification review","Run `consult -m claude --protocol spir --type plan` to get feedback on your implementation plan","The `consult` CLI supports three models: `gemini`, `codex`, and `claude`",'Use `consult -m gemini --prompt "your question"` to ask Gemini a general question with codebase context','Say "cmap the PR" to run all three consultations in parallel in the background','Consultations are enabled by default in SPIR — say "without consultation" to skip them',"Commit specs and plans to `main` before spawning — builders branch from HEAD","Always add files explicitly with `git add file1 file2` — never use `git add .` or `git add -A`","Use SPIR for new features, TICK for amendments to existing specs, and BUGFIX for issue fixes","Each SPIR feature produces exactly three documents: spec, plan, and review","Specs define WHAT to build, plans define HOW — keep them as separate documents","Add YAML frontmatter with `approved` and `validated` fields to skip phases in porch","Run `codev doctor` to check that your environment is set up correctly","Use `--merge` (not squash) when merging PRs — individual commits document the development process","The TICK protocol modifies spec and plan in-place and creates a new review file","BUGFIX protocol uses GitHub Issues as source of truth — no spec/plan artifacts needed",'Run `tokei -e "node_modules" -e ".git" -e "dist" .` to measure codebase size',"Use `codev adopt` to set up Codev in an existing project","Click a builder card in the Work view to jump to its terminal tab","The file panel in Work view lets you browse project files without leaving the dashboard","Use the Refresh button to update builder status, PRs, and backlog data","The dashboard shows active builders, pending PRs, and backlog items in one view","Click the file panel toggle arrow to expand or collapse the file browser","The dashboard supports both desktop split-pane and mobile single-pane layouts","Tab indicators show builder status at a glance — active, waiting, or implementing","Use the `+ Shell` button to quickly open a new shell terminal tab","The SPIR protocol has four phases: Specify, Plan, Implement (IDE loop), and Review","Each implementation phase follows the IDE cycle: Implement, Defend (test), Evaluate","The EXPERIMENT protocol is for testing new approaches — use it for proof-of-concept work","The MAINTAIN protocol handles code hygiene and documentation sync","Run 3-way consultations at each SPIR checkpoint for spec, plan, and implementation reviews"];function W3(e){const t=new Date(e.getFullYear(),0,0);return Math.floor((e.getTime()-t.getTime())/864e5)}function B2(e){const t=e.getFullYear(),r=String(e.getMonth()+1).padStart(2,"0"),i=String(e.getDate()).padStart(2,"0");return`tip-dismissed-${t}-${r}-${i}`}function q3(){try{return localStorage.getItem(B2(new Date))==="1"}catch{return!1}}function G3(){try{localStorage.setItem(B2(new Date),"1")}catch{}}function K3(e){return e.split("`").map((r,i)=>i%2===1?$.jsx("code",{children:r},i):$.jsx("span",{children:r},i))}function Y3(){const e=W3(new Date)%Ra.length,[t,r]=N.useState(e),[i,o]=N.useState(q3);if(i||Ra.length===0)return null;const h=()=>{r((t-1+Ra.length)%Ra.length)},g=()=>{r((t+1)%Ra.length)},a=()=>{G3(),o(!0)};return $.jsxs("div",{className:"tip-banner",children:[$.jsx("button",{className:"tip-banner-nav",onClick:h,"aria-label":"Previous tip",children:"‹"}),$.jsx("span",{className:"tip-banner-label",children:"Tip:"}),$.jsx("span",{className:"tip-banner-text",children:K3(Ra[t])}),$.jsx("button",{className:"tip-banner-nav",onClick:g,"aria-label":"Next tip",children:"›"}),$.jsx("button",{className:"tip-banner-dismiss",onClick:a,"aria-label":"Dismiss tip",children:"×"})]})}function V3({state:e,onRefresh:t,onSelectTab:r}){var u,m,w;const{data:i,error:o,refresh:h}=w2(),[g,a]=N.useState(!1),c=N.useCallback(async()=>{try{await SR(),t()}catch(C){console.error("Failed to create shell:",C)}},[t]),f=N.useCallback(C=>{var d;const _=(d=e==null?void 0:e.builders)==null?void 0:d.find(y=>{var b,S,E,L;return C.issueId?((b=y.name)==null?void 0:b.includes(C.issueId))||((S=y.id)==null?void 0:S.includes(C.issueId)):((E=y.id)==null?void 0:E.includes(C.id))||((L=y.name)==null?void 0:L.includes(C.id))});_&&(r==null||r(_.id))},[e==null?void 0:e.builders,r]);if(!e)return $.jsx("div",{className:"work-view",children:$.jsx("p",{className:"work-loading",children:"Loading..."})});const v=((u=e.architects)==null?void 0:u.length)??0;return $.jsxs("div",{className:`work-view ${g?"file-panel-open":""}`,children:[$.jsxs("div",{className:"work-content",children:[$.jsxs("div",{className:"work-header",children:[$.jsx("h2",{className:"work-title",children:"Work"}),$.jsxs("div",{className:"work-actions",children:[$.jsx("button",{className:"work-btn",onClick:c,children:"+ Shell"}),$.jsx("button",{className:"work-btn work-btn-secondary",onClick:h,children:"Refresh"})]})]}),o&&$.jsxs("div",{className:"work-error",children:["Failed to load overview: ",o]}),$.jsx(Y3,{}),$.jsxs("section",{className:"work-section",children:[$.jsx("h3",{className:"work-section-title",children:"Builders"}),i!=null&&i.builders&&i.builders.length>0?$.jsxs("table",{className:"builder-table",children:[$.jsx("thead",{children:$.jsxs("tr",{children:[$.jsx("th",{children:"Issue"}),$.jsx("th",{children:"Title"}),$.jsx("th",{children:"State"}),$.jsx("th",{children:"Progress"}),$.jsx("th",{children:"Elapsed"}),$.jsx("th",{})]})}),$.jsx("tbody",{children:i.builders.map(C=>$.jsx(A3,{builder:C,onOpen:f,architectCount:v},C.id))})]}):$.jsx("p",{className:"work-empty",children:"No active builders"})]}),$.jsx(F3,{utils:(e==null?void 0:e.utils)??[],annotations:(e==null?void 0:e.annotations)??[],onSelectTab:C=>r==null?void 0:r(C)}),$.jsxs("section",{className:"work-section",children:[$.jsx("h3",{className:"work-section-title",children:"Needs Attention"}),(m=i==null?void 0:i.errors)!=null&&m.prs?$.jsx("p",{className:"work-unavailable",children:i.errors.prs}):$.jsx(T3,{prs:(i==null?void 0:i.pendingPRs)??[],builders:(i==null?void 0:i.builders)??[]})]}),$.jsxs("section",{className:"work-section",children:[$.jsx("h3",{className:"work-section-title",children:"Backlog"}),(w=i==null?void 0:i.errors)!=null&&w.issues?$.jsx("p",{className:"work-unavailable",children:i.errors.issues}):$.jsx(P3,{items:(i==null?void 0:i.backlog)??[],onRefresh:t})]}),(i==null?void 0:i.recentlyClosed)&&i.recentlyClosed.length>0&&$.jsxs("section",{className:"work-section",children:[$.jsx("h3",{className:"work-section-title",children:"Recently Closed"}),$.jsx(I3,{items:i.recentlyClosed,onRefresh:t})]})]}),$.jsxs("div",{className:`work-file-panel ${g?"expanded":"collapsed"}`,children:[$.jsxs("div",{className:"work-file-panel-header",children:[$.jsx("span",{className:"work-file-panel-toggle",onClick:()=>a(!g),children:g?"▼":"▲"}),$.jsx("span",{className:"work-file-panel-label",onClick:()=>a(!g),children:"Files"}),!g&&$.jsx("input",{className:"work-file-panel-search",type:"text",placeholder:"Search files...",onFocus:()=>a(!0)})]}),g&&$.jsx("div",{className:"work-file-panel-content",children:$.jsx(z3,{onRefresh:t})})]})]})}function X3(e,t,r="held"){const i=e??r;return t?`${i}:${t}`:i}function j2(e){const t=Math.max(0,Math.floor(e/1e3));if(t<60)return`${t}s`;const r=Math.floor(t/60);if(r<60)return`${r}m`;const i=Math.floor(r/60);return i<24?`${i}h`:`${Math.floor(i/24)}d`}function Z3(e,t){return j2(t-e)}function kp(e,t){return e!=null&&e>t}function CS({message:e,now:t}){const r=kp(e.notBefore,t),i=`${e.fromAgent??"?"} → ${e.toAgent}`,o=r?`→${j2(e.notBefore-t)}`:Z3(e.createdAt,t),h=r?"scheduled":X3(e.reason,e.detail);return $.jsxs("li",{className:`held-row${e.escalated?" held-row--attention":""}`,"data-testid":"held-row",children:[$.jsx("span",{className:"held-row-addresses",children:i}),$.jsxs("span",{className:"held-row-meta",children:[o," · ",h,e.escalated&&!r?"!":""]})]})}function Q3({count:e,escalated:t,loadMessages:r}){const[i,o]=N.useState(!1),[h,g]=N.useState({kind:"loading"}),[a,c]=N.useState(!1),f=N.useRef(null),v=N.useRef(null),u=N.useId(),m=N.useRef(0),w=N.useRef(r);N.useEffect(()=>{w.current=r},[r]);const C=N.useCallback(()=>{const L=++m.current;c(!0),g(x=>x.kind==="ready"?x:{kind:"loading"}),w.current().then(x=>{m.current===L&&(c(!1),g({kind:"ready",messages:x}))},x=>{m.current===L&&(c(!1),g({kind:"error",message:x instanceof Error?x.message:String(x)}))})},[]);if(N.useEffect(()=>{i&&C()},[i,e,C]),N.useEffect(()=>{if(!i)return;const L=O=>{var M;O.key==="Escape"&&(o(!1),(M=f.current)==null||M.focus())},x=O=>{var M;(M=v.current)!=null&&M.contains(O.target)||o(!1)};return document.addEventListener("keydown",L),document.addEventListener("mousedown",x),()=>{document.removeEventListener("keydown",L),document.removeEventListener("mousedown",x)}},[i]),e<=0&&!i)return null;const _=`${e} held`,d=t?`${e} held message${e===1?"":"s"} — at least one past the escalation age. Click to list them.`:`${e} held message${e===1?"":"s"} awaiting a clear prompt. Click to list them.`,y=Date.now(),b=h.kind==="ready"?h.messages:[],S=b.filter(L=>!kp(L.notBefore,y)),E=b.filter(L=>kp(L.notBefore,y));return $.jsxs("div",{className:"held-badge-wrapper",ref:v,children:[$.jsxs("button",{type:"button",ref:f,className:`held-badge${t?" held-badge--attention":""}`,"data-testid":"held-badge",title:d,"aria-expanded":i,"aria-controls":u,onClick:()=>o(L=>!L),children:[$.jsx("span",{className:`held-dot${t?" held-dot--attention":""}`}),_]}),i&&$.jsxs("div",{className:"held-popover",id:u,"data-testid":"held-popover","aria-live":"polite","aria-busy":a,children:[h.kind==="loading"&&$.jsx("p",{className:"held-popover-note",children:"Loading…"}),h.kind==="error"&&$.jsxs("p",{className:"held-popover-note held-popover-note--error","data-testid":"held-error",children:["Could not load held messages: ",h.message]}),h.kind==="ready"&&S.length===0&&$.jsx("p",{className:"held-popover-note","data-testid":"held-empty",children:e<=0&&b.length>0?"No held messages — the rows below are scheduled.":e<=0?"Held mail cleared.":"No held messages."}),S.length>0&&$.jsxs("section",{className:"held-group",children:[$.jsxs("h2",{className:"held-group-title",children:["Held (",S.length,")"]}),$.jsx("ul",{className:"held-list","data-testid":"held-group-held",children:S.map(L=>$.jsx(CS,{message:L,now:y},L.id))})]}),E.length>0&&$.jsxs("section",{className:"held-group held-group--scheduled",children:[$.jsxs("h2",{className:"held-group-title",children:["Scheduled (",E.length,")"]}),$.jsx("p",{className:"held-group-note",children:"Waiting for their due time — not counted above."}),$.jsx("ul",{className:"held-list","data-testid":"held-group-scheduled",children:E.map(L=>$.jsx(CS,{message:L,now:y},L.id))})]}),$.jsxs("p",{className:"held-popover-foot",children:["Ids and dismissal: ",$.jsx("code",{children:"afx inbox"})]})]})]})}function J3({tabs:e,activeTabId:t,onSelectTab:r,onRefresh:i,children:o}){return $.jsxs("div",{className:"mobile-layout",children:[$.jsx(E2,{tabs:e,activeTabId:t,onSelectTab:r,onRefresh:i}),$.jsx("div",{className:"mobile-content",children:o})]})}function ek({tabId:e,initialLine:t}){let i=`${_2()}api/annotate/${e}/`;return t&&(i+=`?line=${t}`),$.jsx("div",{className:"file-viewer",style:{width:"100%",height:"100%"},children:$.jsx("iframe",{src:i,style:{width:"100%",height:"100%",border:"none"},title:"File Annotator"})})}function tk(e){return e==="24h"?"1":e==="7d"?"7":e==="30d"?"30":"all"}function rk(e){const[t,r]=N.useState(null),[i,o]=N.useState(null),[h,g]=N.useState(!1),[a,c]=N.useState("7d"),f=N.useCallback(async(u,m=!1)=>{g(!0),o(null);try{const w=await pR(tk(u),m);r(w)}catch(w){o(w instanceof Error?w.message:"Failed to fetch analytics")}finally{g(!1)}},[]);N.useEffect(()=>{e&&f(a)},[a,e,f]);const v=N.useCallback(()=>{f(a,!0)},[f,a]);return{data:t,error:i,loading:h,range:a,setRange:c,refresh:v}}function I2(e){var t,r,i="";if(typeof e=="string"||typeof e=="number")i+=e;else if(typeof e=="object")if(Array.isArray(e)){var o=e.length;for(t=0;t<o;t++)e[t]&&(r=I2(e[t]))&&(i&&(i+=" "),i+=r)}else for(r in e)e[r]&&(i&&(i+=" "),i+=r);return i}function vt(){for(var e,t,r=0,i="",o=arguments.length;r<o;r++)(e=arguments[r])&&(t=I2(e))&&(i&&(i+=" "),i+=t);return i}var ik=["dangerouslySetInnerHTML","onCopy","onCopyCapture","onCut","onCutCapture","onPaste","onPasteCapture","onCompositionEnd","onCompositionEndCapture","onCompositionStart","onCompositionStartCapture","onCompositionUpdate","onCompositionUpdateCapture","onFocus","onFocusCapture","onBlur","onBlurCapture","onChange","onChangeCapture","onBeforeInput","onBeforeInputCapture","onInput","onInputCapture","onReset","onResetCapture","onSubmit","onSubmitCapture","onInvalid","onInvalidCapture","onLoad","onLoadCapture","onError","onErrorCapture","onKeyDown","onKeyDownCapture","onKeyPress","onKeyPressCapture","onKeyUp","onKeyUpCapture","onAbort","onAbortCapture","onCanPlay","onCanPlayCapture","onCanPlayThrough","onCanPlayThroughCapture","onDurationChange","onDurationChangeCapture","onEmptied","onEmptiedCapture","onEncrypted","onEncryptedCapture","onEnded","onEndedCapture","onLoadedData","onLoadedDataCapture","onLoadedMetadata","onLoadedMetadataCapture","onLoadStart","onLoadStartCapture","onPause","onPauseCapture","onPlay","onPlayCapture","onPlaying","onPlayingCapture","onProgress","onProgressCapture","onRateChange","onRateChangeCapture","onSeeked","onSeekedCapture","onSeeking","onSeekingCapture","onStalled","onStalledCapture","onSuspend","onSuspendCapture","onTimeUpdate","onTimeUpdateCapture","onVolumeChange","onVolumeChangeCapture","onWaiting","onWaitingCapture","onAuxClick","onAuxClickCapture","onClick","onClickCapture","onContextMenu","onContextMenuCapture","onDoubleClick","onDoubleClickCapture","onDrag","onDragCapture","onDragEnd","onDragEndCapture","onDragEnter","onDragEnterCapture","onDragExit","onDragExitCapture","onDragLeave","onDragLeaveCapture","onDragOver","onDragOverCapture","onDragStart","onDragStartCapture","onDrop","onDropCapture","onMouseDown","onMouseDownCapture","onMouseEnter","onMouseLeave","onMouseMove","onMouseMoveCapture","onMouseOut","onMouseOutCapture","onMouseOver","onMouseOverCapture","onMouseUp","onMouseUpCapture","onSelect","onSelectCapture","onTouchCancel","onTouchCancelCapture","onTouchEnd","onTouchEndCapture","onTouchMove","onTouchMoveCapture","onTouchStart","onTouchStartCapture","onPointerDown","onPointerDownCapture","onPointerMove","onPointerMoveCapture","onPointerUp","onPointerUpCapture","onPointerCancel","onPointerCancelCapture","onPointerEnter","onPointerEnterCapture","onPointerLeave","onPointerLeaveCapture","onPointerOver","onPointerOverCapture","onPointerOut","onPointerOutCapture","onGotPointerCapture","onGotPointerCaptureCapture","onLostPointerCapture","onLostPointerCaptureCapture","onScroll","onScrollCapture","onWheel","onWheelCapture","onAnimationStart","onAnimationStartCapture","onAnimationEnd","onAnimationEndCapture","onAnimationIteration","onAnimationIterationCapture","onTransitionEnd","onTransitionEndCapture"];function R_(e){if(typeof e!="string")return!1;var t=ik;return t.includes(e)}var nk=["aria-activedescendant","aria-atomic","aria-autocomplete","aria-busy","aria-checked","aria-colcount","aria-colindex","aria-colspan","aria-controls","aria-current","aria-describedby","aria-details","aria-disabled","aria-errormessage","aria-expanded","aria-flowto","aria-haspopup","aria-hidden","aria-invalid","aria-keyshortcuts","aria-label","aria-labelledby","aria-level","aria-live","aria-modal","aria-multiline","aria-multiselectable","aria-orientation","aria-owns","aria-placeholder","aria-posinset","aria-pressed","aria-readonly","aria-relevant","aria-required","aria-roledescription","aria-rowcount","aria-rowindex","aria-rowspan","aria-selected","aria-setsize","aria-sort","aria-valuemax","aria-valuemin","aria-valuenow","aria-valuetext","className","color","height","id","lang","max","media","method","min","name","style","target","width","role","tabIndex","accentHeight","accumulate","additive","alignmentBaseline","allowReorder","alphabetic","amplitude","arabicForm","ascent","attributeName","attributeType","autoReverse","azimuth","baseFrequency","baselineShift","baseProfile","bbox","begin","bias","by","calcMode","capHeight","clip","clipPath","clipPathUnits","clipRule","colorInterpolation","colorInterpolationFilters","colorProfile","colorRendering","contentScriptType","contentStyleType","cursor","cx","cy","d","decelerate","descent","diffuseConstant","direction","display","divisor","dominantBaseline","dur","dx","dy","edgeMode","elevation","enableBackground","end","exponent","externalResourcesRequired","fill","fillOpacity","fillRule","filter","filterRes","filterUnits","floodColor","floodOpacity","focusable","fontFamily","fontSize","fontSizeAdjust","fontStretch","fontStyle","fontVariant","fontWeight","format","from","fx","fy","g1","g2","glyphName","glyphOrientationHorizontal","glyphOrientationVertical","glyphRef","gradientTransform","gradientUnits","hanging","horizAdvX","horizOriginX","href","ideographic","imageRendering","in2","in","intercept","k1","k2","k3","k4","k","kernelMatrix","kernelUnitLength","kerning","keyPoints","keySplines","keyTimes","lengthAdjust","letterSpacing","lightingColor","limitingConeAngle","local","markerEnd","markerHeight","markerMid","markerStart","markerUnits","markerWidth","mask","maskContentUnits","maskUnits","mathematical","mode","numOctaves","offset","opacity","operator","order","orient","orientation","origin","overflow","overlinePosition","overlineThickness","paintOrder","panose1","pathLength","patternContentUnits","patternTransform","patternUnits","pointerEvents","pointsAtX","pointsAtY","pointsAtZ","preserveAlpha","preserveAspectRatio","primitiveUnits","r","radius","refX","refY","renderingIntent","repeatCount","repeatDur","requiredExtensions","requiredFeatures","restart","result","rotate","rx","ry","seed","shapeRendering","slope","spacing","specularConstant","specularExponent","speed","spreadMethod","startOffset","stdDeviation","stemh","stemv","stitchTiles","stopColor","stopOpacity","strikethroughPosition","strikethroughThickness","string","stroke","strokeDasharray","strokeDashoffset","strokeLinecap","strokeLinejoin","strokeMiterlimit","strokeOpacity","strokeWidth","surfaceScale","systemLanguage","tableValues","targetX","targetY","textAnchor","textDecoration","textLength","textRendering","to","transform","u1","u2","underlinePosition","underlineThickness","unicode","unicodeBidi","unicodeRange","unitsPerEm","vAlphabetic","values","vectorEffect","version","vertAdvY","vertOriginX","vertOriginY","vHanging","vIdeographic","viewTarget","visibility","vMathematical","widths","wordSpacing","writingMode","x1","x2","x","xChannelSelector","xHeight","xlinkActuate","xlinkArcrole","xlinkHref","xlinkRole","xlinkShow","xlinkTitle","xlinkType","xmlBase","xmlLang","xmlns","xmlnsXlink","xmlSpace","y1","y2","y","yChannelSelector","z","zoomAndPan","ref","key","angle"],sk=new Set(nk);function N2(e){return typeof e!="string"?!1:sk.has(e)}function z2(e){return typeof e=="string"&&e.startsWith("data-")}function Vn(e){if(typeof e!="object"||e===null)return{};var t={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&(N2(r)||z2(r))&&(t[r]=e[r]);return t}function k_(e){if(e==null)return null;if(N.isValidElement(e)&&typeof e.props=="object"&&e.props!==null){var t=e.props;return Vn(t)}return typeof e=="object"&&!Array.isArray(e)?Vn(e):null}function ri(e){var t={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&(N2(r)||z2(r)||R_(r))&&(t[r]=e[r]);return t}var ak=["children","width","height","viewBox","className","style","title","desc"];function Pp(){return Pp=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var i in r)({}).hasOwnProperty.call(r,i)&&(e[i]=r[i])}return e},Pp.apply(null,arguments)}function ok(e,t){if(e==null)return{};var r,i,o=lk(e,t);if(Object.getOwnPropertySymbols){var h=Object.getOwnPropertySymbols(e);for(i=0;i<h.length;i++)r=h[i],t.indexOf(r)===-1&&{}.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}function lk(e,t){if(e==null)return{};var r={};for(var i in e)if({}.hasOwnProperty.call(e,i)){if(t.indexOf(i)!==-1)continue;r[i]=e[i]}return r}var H2=N.forwardRef((e,t)=>{var{children:r,width:i,height:o,viewBox:h,className:g,style:a,title:c,desc:f}=e,v=ok(e,ak),u=h||{width:i,height:o,x:0,y:0},m=vt("recharts-surface",g);return N.createElement("svg",Pp({},ri(v),{className:m,width:i,height:o,style:a,viewBox:"".concat(u.x," ").concat(u.y," ").concat(u.width," ").concat(u.height),ref:t}),N.createElement("title",null,c),N.createElement("desc",null,f),r)}),ck=["children","className"];function Bp(){return Bp=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var i in r)({}).hasOwnProperty.call(r,i)&&(e[i]=r[i])}return e},Bp.apply(null,arguments)}function uk(e,t){if(e==null)return{};var r,i,o=hk(e,t);if(Object.getOwnPropertySymbols){var h=Object.getOwnPropertySymbols(e);for(i=0;i<h.length;i++)r=h[i],t.indexOf(r)===-1&&{}.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}function hk(e,t){if(e==null)return{};var r={};for(var i in e)if({}.hasOwnProperty.call(e,i)){if(t.indexOf(i)!==-1)continue;r[i]=e[i]}return r}var Ri=N.forwardRef((e,t)=>{var{children:r,className:i}=e,o=uk(e,ck),h=vt("recharts-layer",i);return N.createElement("g",Bp({className:h},ri(o),{ref:t}),r)}),$2=v2(),fk=N.createContext(null);function lt(e){return function(){return e}}const U2=Math.cos,Gu=Math.sin,pi=Math.sqrt,Ku=Math.PI,Hh=2*Ku,jp=Math.PI,Ip=2*jp,xs=1e-6,dk=Ip-xs;function F2(e){this._+=e[0];for(let t=1,r=e.length;t<r;++t)this._+=arguments[t]+e[t]}function vk(e){let t=Math.floor(e);if(!(t>=0))throw new Error(`invalid digits: ${e}`);if(t>15)return F2;const r=10**t;return function(i){this._+=i[0];for(let o=1,h=i.length;o<h;++o)this._+=Math.round(arguments[o]*r)/r+i[o]}}class gk{constructor(t){this._x0=this._y0=this._x1=this._y1=null,this._="",this._append=t==null?F2:vk(t)}moveTo(t,r){this._append`M${this._x0=this._x1=+t},${this._y0=this._y1=+r}`}closePath(){this._x1!==null&&(this._x1=this._x0,this._y1=this._y0,this._append`Z`)}lineTo(t,r){this._append`L${this._x1=+t},${this._y1=+r}`}quadraticCurveTo(t,r,i,o){this._append`Q${+t},${+r},${this._x1=+i},${this._y1=+o}`}bezierCurveTo(t,r,i,o,h,g){this._append`C${+t},${+r},${+i},${+o},${this._x1=+h},${this._y1=+g}`}arcTo(t,r,i,o,h){if(t=+t,r=+r,i=+i,o=+o,h=+h,h<0)throw new Error(`negative radius: ${h}`);let g=this._x1,a=this._y1,c=i-t,f=o-r,v=g-t,u=a-r,m=v*v+u*u;if(this._x1===null)this._append`M${this._x1=t},${this._y1=r}`;else if(m>xs)if(!(Math.abs(u*c-f*v)>xs)||!h)this._append`L${this._x1=t},${this._y1=r}`;else{let w=i-g,C=o-a,_=c*c+f*f,d=w*w+C*C,y=Math.sqrt(_),b=Math.sqrt(m),S=h*Math.tan((jp-Math.acos((_+m-d)/(2*y*b)))/2),E=S/b,L=S/y;Math.abs(E-1)>xs&&this._append`L${t+E*v},${r+E*u}`,this._append`A${h},${h},0,0,${+(u*w>v*C)},${this._x1=t+L*c},${this._y1=r+L*f}`}}arc(t,r,i,o,h,g){if(t=+t,r=+r,i=+i,g=!!g,i<0)throw new Error(`negative radius: ${i}`);let a=i*Math.cos(o),c=i*Math.sin(o),f=t+a,v=r+c,u=1^g,m=g?o-h:h-o;this._x1===null?this._append`M${f},${v}`:(Math.abs(this._x1-f)>xs||Math.abs(this._y1-v)>xs)&&this._append`L${f},${v}`,i&&(m<0&&(m=m%Ip+Ip),m>dk?this._append`A${i},${i},0,1,${u},${t-a},${r-c}A${i},${i},0,1,${u},${this._x1=f},${this._y1=v}`:m>xs&&this._append`A${i},${i},0,${+(m>=jp)},${u},${this._x1=t+i*Math.cos(h)},${this._y1=r+i*Math.sin(h)}`)}rect(t,r,i,o){this._append`M${this._x0=this._x1=+t},${this._y0=this._y1=+r}h${i=+i}v${+o}h${-i}Z`}toString(){return this._}}function P_(e){let t=3;return e.digits=function(r){if(!arguments.length)return t;if(r==null)t=null;else{const i=Math.floor(r);if(!(i>=0))throw new RangeError(`invalid digits: ${r}`);t=i}return e},()=>new gk(t)}function B_(e){return typeof e=="object"&&"length"in e?e:Array.from(e)}function W2(e){this._context=e}W2.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._line?this._context.lineTo(e,t):this._context.moveTo(e,t);break;case 1:this._point=2;default:this._context.lineTo(e,t);break}}};function $h(e){return new W2(e)}function q2(e){return e[0]}function G2(e){return e[1]}function K2(e,t){var r=lt(!0),i=null,o=$h,h=null,g=P_(a);e=typeof e=="function"?e:e===void 0?q2:lt(e),t=typeof t=="function"?t:t===void 0?G2:lt(t);function a(c){var f,v=(c=B_(c)).length,u,m=!1,w;for(i==null&&(h=o(w=g())),f=0;f<=v;++f)!(f<v&&r(u=c[f],f,c))===m&&((m=!m)?h.lineStart():h.lineEnd()),m&&h.point(+e(u,f,c),+t(u,f,c));if(w)return h=null,w+""||null}return a.x=function(c){return arguments.length?(e=typeof c=="function"?c:lt(+c),a):e},a.y=function(c){return arguments.length?(t=typeof c=="function"?c:lt(+c),a):t},a.defined=function(c){return arguments.length?(r=typeof c=="function"?c:lt(!!c),a):r},a.curve=function(c){return arguments.length?(o=c,i!=null&&(h=o(i)),a):o},a.context=function(c){return arguments.length?(c==null?i=h=null:h=o(i=c),a):i},a}function bu(e,t,r){var i=null,o=lt(!0),h=null,g=$h,a=null,c=P_(f);e=typeof e=="function"?e:e===void 0?q2:lt(+e),t=typeof t=="function"?t:lt(t===void 0?0:+t),r=typeof r=="function"?r:r===void 0?G2:lt(+r);function f(u){var m,w,C,_=(u=B_(u)).length,d,y=!1,b,S=new Array(_),E=new Array(_);for(h==null&&(a=g(b=c())),m=0;m<=_;++m){if(!(m<_&&o(d=u[m],m,u))===y)if(y=!y)w=m,a.areaStart(),a.lineStart();else{for(a.lineEnd(),a.lineStart(),C=m-1;C>=w;--C)a.point(S[C],E[C]);a.lineEnd(),a.areaEnd()}y&&(S[m]=+e(d,m,u),E[m]=+t(d,m,u),a.point(i?+i(d,m,u):S[m],r?+r(d,m,u):E[m]))}if(b)return a=null,b+""||null}function v(){return K2().defined(o).curve(g).context(h)}return f.x=function(u){return arguments.length?(e=typeof u=="function"?u:lt(+u),i=null,f):e},f.x0=function(u){return arguments.length?(e=typeof u=="function"?u:lt(+u),f):e},f.x1=function(u){return arguments.length?(i=u==null?null:typeof u=="function"?u:lt(+u),f):i},f.y=function(u){return arguments.length?(t=typeof u=="function"?u:lt(+u),r=null,f):t},f.y0=function(u){return arguments.length?(t=typeof u=="function"?u:lt(+u),f):t},f.y1=function(u){return arguments.length?(r=u==null?null:typeof u=="function"?u:lt(+u),f):r},f.lineX0=f.lineY0=function(){return v().x(e).y(t)},f.lineY1=function(){return v().x(e).y(r)},f.lineX1=function(){return v().x(i).y(t)},f.defined=function(u){return arguments.length?(o=typeof u=="function"?u:lt(!!u),f):o},f.curve=function(u){return arguments.length?(g=u,h!=null&&(a=g(h)),f):g},f.context=function(u){return arguments.length?(u==null?h=a=null:a=g(h=u),f):h},f}class Y2{constructor(t,r){this._context=t,this._x=r}areaStart(){this._line=0}areaEnd(){this._line=NaN}lineStart(){this._point=0}lineEnd(){(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line}point(t,r){switch(t=+t,r=+r,this._point){case 0:{this._point=1,this._line?this._context.lineTo(t,r):this._context.moveTo(t,r);break}case 1:this._point=2;default:{this._x?this._context.bezierCurveTo(this._x0=(this._x0+t)/2,this._y0,this._x0,r,t,r):this._context.bezierCurveTo(this._x0,this._y0=(this._y0+r)/2,t,this._y0,t,r);break}}this._x0=t,this._y0=r}}function pk(e){return new Y2(e,!0)}function _k(e){return new Y2(e,!1)}const j_={draw(e,t){const r=pi(t/Ku);e.moveTo(r,0),e.arc(0,0,r,0,Hh)}},mk={draw(e,t){const r=pi(t/5)/2;e.moveTo(-3*r,-r),e.lineTo(-r,-r),e.lineTo(-r,-3*r),e.lineTo(r,-3*r),e.lineTo(r,-r),e.lineTo(3*r,-r),e.lineTo(3*r,r),e.lineTo(r,r),e.lineTo(r,3*r),e.lineTo(-r,3*r),e.lineTo(-r,r),e.lineTo(-3*r,r),e.closePath()}},V2=pi(1/3),yk=V2*2,bk={draw(e,t){const r=pi(t/yk),i=r*V2;e.moveTo(0,-r),e.lineTo(i,0),e.lineTo(0,r),e.lineTo(-i,0),e.closePath()}},Sk={draw(e,t){const r=pi(t),i=-r/2;e.rect(i,i,r,r)}},wk=.8908130915292852,X2=Gu(Ku/10)/Gu(7*Ku/10),Ck=Gu(Hh/10)*X2,xk=-U2(Hh/10)*X2,Ek={draw(e,t){const r=pi(t*wk),i=Ck*r,o=xk*r;e.moveTo(0,-r),e.lineTo(i,o);for(let h=1;h<5;++h){const g=Hh*h/5,a=U2(g),c=Gu(g);e.lineTo(c*r,-a*r),e.lineTo(a*i-c*o,c*i+a*o)}e.closePath()}},tg=pi(3),Ak={draw(e,t){const r=-pi(t/(tg*3));e.moveTo(0,r*2),e.lineTo(-tg*r,-r),e.lineTo(tg*r,-r),e.closePath()}},Zr=-.5,Qr=pi(3)/2,Np=1/pi(12),Mk=(Np/2+1)*3,Lk={draw(e,t){const r=pi(t/Mk),i=r/2,o=r*Np,h=i,g=r*Np+r,a=-h,c=g;e.moveTo(i,o),e.lineTo(h,g),e.lineTo(a,c),e.lineTo(Zr*i-Qr*o,Qr*i+Zr*o),e.lineTo(Zr*h-Qr*g,Qr*h+Zr*g),e.lineTo(Zr*a-Qr*c,Qr*a+Zr*c),e.lineTo(Zr*i+Qr*o,Zr*o-Qr*i),e.lineTo(Zr*h+Qr*g,Zr*g-Qr*h),e.lineTo(Zr*a+Qr*c,Zr*c-Qr*a),e.closePath()}};function Ok(e,t){let r=null,i=P_(o);e=typeof e=="function"?e:lt(e||j_),t=typeof t=="function"?t:lt(t===void 0?64:+t);function o(){let h;if(r||(r=h=i()),e.apply(this,arguments).draw(r,+t.apply(this,arguments)),h)return r=null,h+""||null}return o.type=function(h){return arguments.length?(e=typeof h=="function"?h:lt(h),o):e},o.size=function(h){return arguments.length?(t=typeof h=="function"?h:lt(+h),o):t},o.context=function(h){return arguments.length?(r=h??null,o):r},o}function Yu(){}function Vu(e,t,r){e._context.bezierCurveTo((2*e._x0+e._x1)/3,(2*e._y0+e._y1)/3,(e._x0+2*e._x1)/3,(e._y0+2*e._y1)/3,(e._x0+4*e._x1+t)/6,(e._y0+4*e._y1+r)/6)}function Z2(e){this._context=e}Z2.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},lineEnd:function(){switch(this._point){case 3:Vu(this,this._x1,this._y1);case 2:this._context.lineTo(this._x1,this._y1);break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._line?this._context.lineTo(e,t):this._context.moveTo(e,t);break;case 1:this._point=2;break;case 2:this._point=3,this._context.lineTo((5*this._x0+this._x1)/6,(5*this._y0+this._y1)/6);default:Vu(this,e,t);break}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=t}};function Tk(e){return new Z2(e)}function Q2(e){this._context=e}Q2.prototype={areaStart:Yu,areaEnd:Yu,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._y0=this._y1=this._y2=this._y3=this._y4=NaN,this._point=0},lineEnd:function(){switch(this._point){case 1:{this._context.moveTo(this._x2,this._y2),this._context.closePath();break}case 2:{this._context.moveTo((this._x2+2*this._x3)/3,(this._y2+2*this._y3)/3),this._context.lineTo((this._x3+2*this._x2)/3,(this._y3+2*this._y2)/3),this._context.closePath();break}case 3:{this.point(this._x2,this._y2),this.point(this._x3,this._y3),this.point(this._x4,this._y4);break}}},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._x2=e,this._y2=t;break;case 1:this._point=2,this._x3=e,this._y3=t;break;case 2:this._point=3,this._x4=e,this._y4=t,this._context.moveTo((this._x0+4*this._x1+e)/6,(this._y0+4*this._y1+t)/6);break;default:Vu(this,e,t);break}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=t}};function Dk(e){return new Q2(e)}function J2(e){this._context=e}J2.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===3)&&this._context.closePath(),this._line=1-this._line},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3;var r=(this._x0+4*this._x1+e)/6,i=(this._y0+4*this._y1+t)/6;this._line?this._context.lineTo(r,i):this._context.moveTo(r,i);break;case 3:this._point=4;default:Vu(this,e,t);break}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=t}};function Rk(e){return new J2(e)}function eE(e){this._context=e}eE.prototype={areaStart:Yu,areaEnd:Yu,lineStart:function(){this._point=0},lineEnd:function(){this._point&&this._context.closePath()},point:function(e,t){e=+e,t=+t,this._point?this._context.lineTo(e,t):(this._point=1,this._context.moveTo(e,t))}};function kk(e){return new eE(e)}function xS(e){return e<0?-1:1}function ES(e,t,r){var i=e._x1-e._x0,o=t-e._x1,h=(e._y1-e._y0)/(i||o<0&&-0),g=(r-e._y1)/(o||i<0&&-0),a=(h*o+g*i)/(i+o);return(xS(h)+xS(g))*Math.min(Math.abs(h),Math.abs(g),.5*Math.abs(a))||0}function AS(e,t){var r=e._x1-e._x0;return r?(3*(e._y1-e._y0)/r-t)/2:t}function rg(e,t,r){var i=e._x0,o=e._y0,h=e._x1,g=e._y1,a=(h-i)/3;e._context.bezierCurveTo(i+a,o+a*t,h-a,g-a*r,h,g)}function Xu(e){this._context=e}Xu.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=this._t0=NaN,this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x1,this._y1);break;case 3:rg(this,this._t0,AS(this,this._t0));break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(e,t){var r=NaN;if(e=+e,t=+t,!(e===this._x1&&t===this._y1)){switch(this._point){case 0:this._point=1,this._line?this._context.lineTo(e,t):this._context.moveTo(e,t);break;case 1:this._point=2;break;case 2:this._point=3,rg(this,AS(this,r=ES(this,e,t)),r);break;default:rg(this,this._t0,r=ES(this,e,t));break}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=t,this._t0=r}}};function tE(e){this._context=new rE(e)}(tE.prototype=Object.create(Xu.prototype)).point=function(e,t){Xu.prototype.point.call(this,t,e)};function rE(e){this._context=e}rE.prototype={moveTo:function(e,t){this._context.moveTo(t,e)},closePath:function(){this._context.closePath()},lineTo:function(e,t){this._context.lineTo(t,e)},bezierCurveTo:function(e,t,r,i,o,h){this._context.bezierCurveTo(t,e,i,r,h,o)}};function Pk(e){return new Xu(e)}function Bk(e){return new tE(e)}function iE(e){this._context=e}iE.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x=[],this._y=[]},lineEnd:function(){var e=this._x,t=this._y,r=e.length;if(r)if(this._line?this._context.lineTo(e[0],t[0]):this._context.moveTo(e[0],t[0]),r===2)this._context.lineTo(e[1],t[1]);else for(var i=MS(e),o=MS(t),h=0,g=1;g<r;++h,++g)this._context.bezierCurveTo(i[0][h],o[0][h],i[1][h],o[1][h],e[g],t[g]);(this._line||this._line!==0&&r===1)&&this._context.closePath(),this._line=1-this._line,this._x=this._y=null},point:function(e,t){this._x.push(+e),this._y.push(+t)}};function MS(e){var t,r=e.length-1,i,o=new Array(r),h=new Array(r),g=new Array(r);for(o[0]=0,h[0]=2,g[0]=e[0]+2*e[1],t=1;t<r-1;++t)o[t]=1,h[t]=4,g[t]=4*e[t]+2*e[t+1];for(o[r-1]=2,h[r-1]=7,g[r-1]=8*e[r-1]+e[r],t=1;t<r;++t)i=o[t]/h[t-1],h[t]-=i,g[t]-=i*g[t-1];for(o[r-1]=g[r-1]/h[r-1],t=r-2;t>=0;--t)o[t]=(g[t]-o[t+1])/h[t];for(h[r-1]=(e[r]+o[r-1])/2,t=0;t<r-1;++t)h[t]=2*e[t+1]-o[t+1];return[o,h]}function jk(e){return new iE(e)}function Uh(e,t){this._context=e,this._t=t}Uh.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x=this._y=NaN,this._point=0},lineEnd:function(){0<this._t&&this._t<1&&this._point===2&&this._context.lineTo(this._x,this._y),(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line>=0&&(this._t=1-this._t,this._line=1-this._line)},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._line?this._context.lineTo(e,t):this._context.moveTo(e,t);break;case 1:this._point=2;default:{if(this._t<=0)this._context.lineTo(this._x,t),this._context.lineTo(e,t);else{var r=this._x*(1-this._t)+e*this._t;this._context.lineTo(r,this._y),this._context.lineTo(r,t)}break}}this._x=e,this._y=t}};function Ik(e){return new Uh(e,.5)}function Nk(e){return new Uh(e,0)}function zk(e){return new Uh(e,1)}function Bs(e,t){if((g=e.length)>1)for(var r=1,i,o,h=e[t[0]],g,a=h.length;r<g;++r)for(o=h,h=e[t[r]],i=0;i<a;++i)h[i][1]+=h[i][0]=isNaN(o[i][1])?o[i][0]:o[i][1]}function zp(e){for(var t=e.length,r=new Array(t);--t>=0;)r[t]=t;return r}function Hk(e,t){return e[t]}function $k(e){const t=[];return t.key=e,t}function Uk(){var e=lt([]),t=zp,r=Bs,i=Hk;function o(h){var g=Array.from(e.apply(this,arguments),$k),a,c=g.length,f=-1,v;for(const u of h)for(a=0,++f;a<c;++a)(g[a][f]=[0,+i(u,g[a].key,f,h)]).data=u;for(a=0,v=B_(t(g));a<c;++a)g[v[a]].index=a;return r(g,v),g}return o.keys=function(h){return arguments.length?(e=typeof h=="function"?h:lt(Array.from(h)),o):e},o.value=function(h){return arguments.length?(i=typeof h=="function"?h:lt(+h),o):i},o.order=function(h){return arguments.length?(t=h==null?zp:typeof h=="function"?h:lt(Array.from(h)),o):t},o.offset=function(h){return arguments.length?(r=h??Bs,o):r},o}function Fk(e,t){if((i=e.length)>0){for(var r,i,o=0,h=e[0].length,g;o<h;++o){for(g=r=0;r<i;++r)g+=e[r][o][1]||0;if(g)for(r=0;r<i;++r)e[r][o][1]/=g}Bs(e,t)}}function Wk(e,t){if((o=e.length)>0){for(var r=0,i=e[t[0]],o,h=i.length;r<h;++r){for(var g=0,a=0;g<o;++g)a+=e[g][r][1]||0;i[r][1]+=i[r][0]=-a/2}Bs(e,t)}}function qk(e,t){if(!(!((g=e.length)>0)||!((h=(o=e[t[0]]).length)>0))){for(var r=0,i=1,o,h,g;i<h;++i){for(var a=0,c=0,f=0;a<g;++a){for(var v=e[t[a]],u=v[i][1]||0,m=v[i-1][1]||0,w=(u-m)/2,C=0;C<a;++C){var _=e[t[C]],d=_[i][1]||0,y=_[i-1][1]||0;w+=d-y}c+=u,f+=w*u}o[i-1][1]+=o[i-1][0]=r,c&&(r-=f/c)}o[i-1][1]+=o[i-1][0]=r,Bs(e,t)}}var ig={},ng={},LS;function Gk(){return LS||(LS=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(r){return r==="__proto__"}e.isUnsafeProperty=t})(ng)),ng}var sg={},OS;function nE(){return OS||(OS=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(r){switch(typeof r){case"number":case"symbol":return!1;case"string":return r.includes(".")||r.includes("[")||r.includes("]")}}e.isDeepKey=t})(sg)),sg}var ag={},TS;function I_(){return TS||(TS=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(r){var i;return typeof r=="string"||typeof r=="symbol"?r:Object.is((i=r==null?void 0:r.valueOf)==null?void 0:i.call(r),-0)?"-0":String(r)}e.toKey=t})(ag)),ag}var og={},lg={},DS;function Kk(){return DS||(DS=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(r){if(r==null)return"";if(typeof r=="string")return r;if(Array.isArray(r))return r.map(t).join(",");const i=String(r);return i==="0"&&Object.is(Number(r),-0)?"-0":i}e.toString=t})(lg)),lg}var RS;function N_(){return RS||(RS=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=Kk(),r=I_();function i(o){if(Array.isArray(o))return o.map(r.toKey);if(typeof o=="symbol")return[o];o=t.toString(o);const h=[],g=o.length;if(g===0)return h;let a=0,c="",f="",v=!1;for(o.charCodeAt(0)===46&&(h.push(""),a++);a<g;){const u=o[a];f?u==="\\"&&a+1<g?(a++,c+=o[a]):u===f?f="":c+=u:v?u==='"'||u==="'"?f=u:u==="]"?(v=!1,h.push(c),c=""):c+=u:u==="["?(v=!0,c&&(h.push(c),c="")):u==="."?c&&(h.push(c),c=""):c+=u,a++}return c&&h.push(c),h}e.toPath=i})(og)),og}var kS;function z_(){return kS||(kS=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=Gk(),r=nE(),i=I_(),o=N_();function h(a,c,f){if(a==null)return f;switch(typeof c){case"string":{if(t.isUnsafeProperty(c))return f;const v=a[c];return v===void 0?r.isDeepKey(c)?h(a,o.toPath(c),f):f:v}case"number":case"symbol":{typeof c=="number"&&(c=i.toKey(c));const v=a[c];return v===void 0?f:v}default:{if(Array.isArray(c))return g(a,c,f);if(Object.is(c==null?void 0:c.valueOf(),-0)?c="-0":c=String(c),t.isUnsafeProperty(c))return f;const v=a[c];return v===void 0?f:v}}}function g(a,c,f){if(c.length===0)return f;let v=a;for(let u=0;u<c.length;u++){if(v==null||t.isUnsafeProperty(c[u]))return f;v=v[c[u]]}return v===void 0?f:v}e.get=h})(ig)),ig}var cg,PS;function Yk(){return PS||(PS=1,cg=z_().get),cg}var Vk=Yk();const Ya=Qn(Vk);var Xk=4;function Gn(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:Xk,r=10**t,i=Math.round(e*r)/r;return Object.is(i,-0)?0:i}function xt(e){for(var t=arguments.length,r=new Array(t>1?t-1:0),i=1;i<t;i++)r[i-1]=arguments[i];return e.reduce((o,h,g)=>{var a=r[g-1];return typeof a=="string"?o+a+h:a!==void 0?o+Gn(a)+h:o+h},"")}var Pr=e=>e===0?0:e>0?1:-1,ki=e=>typeof e=="number"&&e!=+e,js=e=>typeof e=="string"&&e.indexOf("%")===e.length-1,Te=e=>(typeof e=="number"||e instanceof Number)&&!ki(e),Pi=e=>Te(e)||typeof e=="string",Zk=0,Ll=e=>{var t=++Zk;return"".concat(e||"").concat(t)},vi=function(t,r){var i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0,o=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1;if(!Te(t)&&typeof t!="string")return i;var h;if(js(t)){if(r==null)return i;var g=t.indexOf("%");h=r*parseFloat(t.slice(0,g))/100}else h=+t;return ki(h)&&(h=i),o&&r!=null&&h>r&&(h=r),h},sE=e=>{if(!Array.isArray(e))return!1;for(var t=e.length,r={},i=0;i<t;i++)if(!r[String(e[i])])r[String(e[i])]=!0;else return!0;return!1};function nr(e,t,r){return Te(e)&&Te(t)?Gn(e+r*(t-e)):t}function Qk(e,t,r){if(!(!e||!e.length))return e.find(i=>i&&(typeof t=="function"?t(i):Ya(i,t))===r)}var Nt=e=>e===null||typeof e>"u",Fl=e=>Nt(e)?e:"".concat(e.charAt(0).toUpperCase()).concat(e.slice(1));function Mi(e){return e!=null}function ao(){}var Jk=["type","size","sizeType"];function Hp(){return Hp=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var i in r)({}).hasOwnProperty.call(r,i)&&(e[i]=r[i])}return e},Hp.apply(null,arguments)}function BS(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter(function(o){return Object.getOwnPropertyDescriptor(e,o).enumerable})),r.push.apply(r,i)}return r}function jS(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?BS(Object(r),!0).forEach(function(i){eP(e,i,r[i])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):BS(Object(r)).forEach(function(i){Object.defineProperty(e,i,Object.getOwnPropertyDescriptor(r,i))})}return e}function eP(e,t,r){return(t=tP(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function tP(e){var t=rP(e,"string");return typeof t=="symbol"?t:t+""}function rP(e,t){if(typeof e!="object"||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var i=r.call(e,t);if(typeof i!="object")return i;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function iP(e,t){if(e==null)return{};var r,i,o=nP(e,t);if(Object.getOwnPropertySymbols){var h=Object.getOwnPropertySymbols(e);for(i=0;i<h.length;i++)r=h[i],t.indexOf(r)===-1&&{}.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}function nP(e,t){if(e==null)return{};var r={};for(var i in e)if({}.hasOwnProperty.call(e,i)){if(t.indexOf(i)!==-1)continue;r[i]=e[i]}return r}var aE={symbolCircle:j_,symbolCross:mk,symbolDiamond:bk,symbolSquare:Sk,symbolStar:Ek,symbolTriangle:Ak,symbolWye:Lk},sP=Math.PI/180,aP=e=>{var t="symbol".concat(Fl(e));return aE[t]||j_},oP=(e,t,r)=>{if(t==="area")return e;switch(r){case"cross":return 5*e*e/9;case"diamond":return .5*e*e/Math.sqrt(3);case"square":return e*e;case"star":{var i=18*sP;return 1.25*e*e*(Math.tan(i)-Math.tan(i*2)*Math.tan(i)**2)}case"triangle":return Math.sqrt(3)*e*e/4;case"wye":return(21-10*Math.sqrt(3))*e*e/8;default:return Math.PI*e*e/4}},lP=(e,t)=>{aE["symbol".concat(Fl(e))]=t},oE=e=>{var{type:t="circle",size:r=64,sizeType:i="area"}=e,o=iP(e,Jk),h=jS(jS({},o),{},{type:t,size:r,sizeType:i}),g="circle";typeof t=="string"&&(g=t);var a=()=>{var m=aP(g),w=Ok().type(m).size(oP(r,i,g)),C=w();if(C!==null)return C},{className:c,cx:f,cy:v}=h,u=ri(h);return Te(f)&&Te(v)&&Te(r)?N.createElement("path",Hp({},u,{className:vt("recharts-symbols",c),transform:"translate(".concat(f,", ").concat(v,")"),d:a()})):null};oE.registerSymbol=lP;var lE=e=>"radius"in e&&"startAngle"in e&&"endAngle"in e,cP=(e,t)=>{if(!e||typeof e=="function"||typeof e=="boolean")return null;var r=e;if(N.isValidElement(e)&&(r=e.props),typeof r!="object"&&typeof r!="function")return null;var i={};return Object.keys(r).forEach(o=>{R_(o)&&typeof r[o]=="function"&&(i[o]=(h=>r[o](r,h)))}),i},uP=(e,t,r)=>i=>(e(t,r,i),null),H_=(e,t,r)=>{if(e===null||typeof e!="object"&&typeof e!="function")return null;var i=null;return Object.keys(e).forEach(o=>{var h=e[o];R_(o)&&typeof h=="function"&&(i||(i={}),i[o]=uP(h,t,r))}),i};function IS(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter(function(o){return Object.getOwnPropertyDescriptor(e,o).enumerable})),r.push.apply(r,i)}return r}function hP(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?IS(Object(r),!0).forEach(function(i){fP(e,i,r[i])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):IS(Object(r)).forEach(function(i){Object.defineProperty(e,i,Object.getOwnPropertyDescriptor(r,i))})}return e}function fP(e,t,r){return(t=dP(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function dP(e){var t=vP(e,"string");return typeof t=="symbol"?t:t+""}function vP(e,t){if(typeof e!="object"||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var i=r.call(e,t);if(typeof i!="object")return i;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function ni(e,t){var r=hP({},e),i=t,o=Object.keys(t),h=o.reduce((g,a)=>(g[a]===void 0&&i[a]!==void 0&&(g[a]=i[a]),g),r);return h}var ug={},hg={},NS;function gP(){return NS||(NS=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(r,i){const o=new Map;for(let h=0;h<r.length;h++){const g=r[h],a=i(g,h,r);o.has(a)||o.set(a,g)}return Array.from(o.values())}e.uniqBy=t})(hg)),hg}var fg={},zS;function pP(){return zS||(zS=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(r,i){return function(...o){return r.apply(this,o.slice(0,i))}}e.ary=t})(fg)),fg}var dg={},HS;function cE(){return HS||(HS=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(r){return r}e.identity=t})(dg)),dg}var vg={},gg={},pg={},$S;function _P(){return $S||($S=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(r){return Number.isSafeInteger(r)&&r>=0}e.isLength=t})(pg)),pg}var US;function uE(){return US||(US=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=_P();function r(i){return i!=null&&typeof i!="function"&&t.isLength(i.length)}e.isArrayLike=r})(gg)),gg}var _g={},FS;function mP(){return FS||(FS=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(r){return typeof r=="object"&&r!==null}e.isObjectLike=t})(_g)),_g}var WS;function yP(){return WS||(WS=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=uE(),r=mP();function i(o){return r.isObjectLike(o)&&t.isArrayLike(o)}e.isArrayLikeObject=i})(vg)),vg}var mg={},yg={},qS;function bP(){return qS||(qS=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=z_();function r(i){return function(o){return t.get(o,i)}}e.property=r})(yg)),yg}var bg={},Sg={},wg={},Cg={},GS;function hE(){return GS||(GS=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(r){return r!==null&&(typeof r=="object"||typeof r=="function")}e.isObject=t})(Cg)),Cg}var xg={},KS;function fE(){return KS||(KS=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(r){return r==null||typeof r!="object"&&typeof r!="function"}e.isPrimitive=t})(xg)),xg}var Eg={},YS;function dE(){return YS||(YS=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(r,i){return r===i||Number.isNaN(r)&&Number.isNaN(i)}e.isEqualsSameValueZero=t})(Eg)),Eg}var VS;function SP(){return VS||(VS=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=hE(),r=fE(),i=dE();function o(v,u,m){return typeof m!="function"?o(v,u,()=>{}):h(v,u,function w(C,_,d,y,b,S){const E=m(C,_,d,y,b,S);return E!==void 0?!!E:h(C,_,w,S)},new Map)}function h(v,u,m,w){if(u===v)return!0;switch(typeof u){case"object":return g(v,u,m,w);case"function":return Object.keys(u).length>0?h(v,{...u},m,w):i.isEqualsSameValueZero(v,u);default:return t.isObject(v)?typeof u=="string"?u==="":!0:i.isEqualsSameValueZero(v,u)}}function g(v,u,m,w){if(u==null)return!0;if(Array.isArray(u))return c(v,u,m,w);if(u instanceof Map)return a(v,u,m,w);if(u instanceof Set)return f(v,u,m,w);const C=Object.keys(u);if(v==null||r.isPrimitive(v))return C.length===0;if(C.length===0)return!0;if(w!=null&&w.has(u))return w.get(u)===v;w==null||w.set(u,v);try{for(let _=0;_<C.length;_++){const d=C[_];if(!r.isPrimitive(v)&&!(d in v)||u[d]===void 0&&v[d]!==void 0||u[d]===null&&v[d]!==null||!m(v[d],u[d],d,v,u,w))return!1}return!0}finally{w==null||w.delete(u)}}function a(v,u,m,w){if(u.size===0)return!0;if(!(v instanceof Map))return!1;for(const[C,_]of u.entries()){const d=v.get(C);if(m(d,_,C,v,u,w)===!1)return!1}return!0}function c(v,u,m,w){if(u.length===0)return!0;if(!Array.isArray(v))return!1;const C=new Set;for(let _=0;_<u.length;_++){const d=u[_];let y=!1;for(let b=0;b<v.length;b++){if(C.has(b))continue;const S=v[b];let E=!1;if(m(S,d,_,v,u,w)&&(E=!0),E){C.add(b),y=!0;break}}if(!y)return!1}return!0}function f(v,u,m,w){return u.size===0?!0:v instanceof Set?c([...v],[...u],m,w):!1}e.isMatchWith=o,e.isSetMatch=f})(wg)),wg}var XS;function vE(){return XS||(XS=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=SP();function r(i,o){return t.isMatchWith(i,o,()=>{})}e.isMatch=r})(Sg)),Sg}var Ag={},Mg={},Lg={},ZS;function wP(){return ZS||(ZS=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(r){return Object.getOwnPropertySymbols(r).filter(i=>Object.prototype.propertyIsEnumerable.call(r,i))}e.getSymbols=t})(Lg)),Lg}var Og={},QS;function $_(){return QS||(QS=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(r){return r==null?r===void 0?"[object Undefined]":"[object Null]":Object.prototype.toString.call(r)}e.getTag=t})(Og)),Og}var Tg={},JS;function gE(){return JS||(JS=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t="[object RegExp]",r="[object String]",i="[object Number]",o="[object Boolean]",h="[object Arguments]",g="[object Symbol]",a="[object Date]",c="[object Map]",f="[object Set]",v="[object Array]",u="[object Function]",m="[object ArrayBuffer]",w="[object Object]",C="[object Error]",_="[object DataView]",d="[object Uint8Array]",y="[object Uint8ClampedArray]",b="[object Uint16Array]",S="[object Uint32Array]",E="[object BigUint64Array]",L="[object Int8Array]",x="[object Int16Array]",O="[object Int32Array]",M="[object BigInt64Array]",D="[object Float32Array]",k="[object Float64Array]";e.argumentsTag=h,e.arrayBufferTag=m,e.arrayTag=v,e.bigInt64ArrayTag=M,e.bigUint64ArrayTag=E,e.booleanTag=o,e.dataViewTag=_,e.dateTag=a,e.errorTag=C,e.float32ArrayTag=D,e.float64ArrayTag=k,e.functionTag=u,e.int16ArrayTag=x,e.int32ArrayTag=O,e.int8ArrayTag=L,e.mapTag=c,e.numberTag=i,e.objectTag=w,e.regexpTag=t,e.setTag=f,e.stringTag=r,e.symbolTag=g,e.uint16ArrayTag=b,e.uint32ArrayTag=S,e.uint8ArrayTag=d,e.uint8ClampedArrayTag=y})(Tg)),Tg}var Dg={},ew;function CP(){return ew||(ew=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(r){return ArrayBuffer.isView(r)&&!(r instanceof DataView)}e.isTypedArray=t})(Dg)),Dg}var tw;function pE(){return tw||(tw=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=wP(),r=$_(),i=gE(),o=fE(),h=CP();function g(v,u){return a(v,void 0,v,new Map,u)}function a(v,u,m,w=new Map,C=void 0){const _=C==null?void 0:C(v,u,m,w);if(_!==void 0)return _;if(o.isPrimitive(v))return v;if(w.has(v))return w.get(v);if(Array.isArray(v)){const d=new Array(v.length);w.set(v,d);for(let y=0;y<v.length;y++)d[y]=a(v[y],y,m,w,C);return Object.hasOwn(v,"index")&&(d.index=v.index),Object.hasOwn(v,"input")&&(d.input=v.input),d}if(v instanceof Date)return new Date(v.getTime());if(v instanceof RegExp){const d=new RegExp(v.source,v.flags);return d.lastIndex=v.lastIndex,d}if(v instanceof Map){const d=new Map;w.set(v,d);for(const[y,b]of v)d.set(y,a(b,y,m,w,C));return d}if(v instanceof Set){const d=new Set;w.set(v,d);for(const y of v)d.add(a(y,void 0,m,w,C));return d}if(typeof Buffer<"u"&&Buffer.isBuffer(v))return v.subarray();if(h.isTypedArray(v)){const d=new(Object.getPrototypeOf(v)).constructor(v.length);w.set(v,d);for(let y=0;y<v.length;y++)d[y]=a(v[y],y,m,w,C);return d}if(v instanceof ArrayBuffer||typeof SharedArrayBuffer<"u"&&v instanceof SharedArrayBuffer)return v.slice(0);if(v instanceof DataView){const d=new DataView(v.buffer.slice(0),v.byteOffset,v.byteLength);return w.set(v,d),c(d,v,m,w,C),d}if(typeof File<"u"&&v instanceof File){const d=new File([v],v.name,{type:v.type});return w.set(v,d),c(d,v,m,w,C),d}if(typeof Blob<"u"&&v instanceof Blob){const d=new Blob([v],{type:v.type});return w.set(v,d),c(d,v,m,w,C),d}if(v instanceof Error){const d=structuredClone(v);return w.set(v,d),d.message=v.message,d.name=v.name,d.stack=v.stack,d.cause=v.cause,d.constructor=v.constructor,c(d,v,m,w,C),d}if(v instanceof Boolean){const d=new Boolean(v.valueOf());return w.set(v,d),c(d,v,m,w,C),d}if(v instanceof Number){const d=new Number(v.valueOf());return w.set(v,d),c(d,v,m,w,C),d}if(v instanceof String){const d=new String(v.valueOf());return w.set(v,d),c(d,v,m,w,C),d}if(typeof v=="object"&&f(v)){const d=Object.create(Object.getPrototypeOf(v));return w.set(v,d),c(d,v,m,w,C),d}return v}function c(v,u,m=v,w,C){const _=[...Object.keys(u),...t.getSymbols(u)];for(let d=0;d<_.length;d++){const y=_[d],b=Object.getOwnPropertyDescriptor(v,y);(b==null||b.writable)&&(v[y]=a(u[y],y,m,w,C))}}function f(v){switch(r.getTag(v)){case i.argumentsTag:case i.arrayTag:case i.arrayBufferTag:case i.dataViewTag:case i.booleanTag:case i.dateTag:case i.float32ArrayTag:case i.float64ArrayTag:case i.int8ArrayTag:case i.int16ArrayTag:case i.int32ArrayTag:case i.mapTag:case i.numberTag:case i.objectTag:case i.regexpTag:case i.setTag:case i.stringTag:case i.symbolTag:case i.uint8ArrayTag:case i.uint8ClampedArrayTag:case i.uint16ArrayTag:case i.uint32ArrayTag:return!0;default:return!1}}e.cloneDeepWith=g,e.cloneDeepWithImpl=a,e.copyProperties=c})(Mg)),Mg}var rw;function xP(){return rw||(rw=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=pE();function r(i){return t.cloneDeepWithImpl(i,void 0,i,new Map,void 0)}e.cloneDeep=r})(Ag)),Ag}var iw;function EP(){return iw||(iw=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=vE(),r=xP();function i(o){return o=r.cloneDeep(o),h=>t.isMatch(h,o)}e.matches=i})(bg)),bg}var Rg={},kg={},Pg={},nw;function AP(){return nw||(nw=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=pE(),r=$_(),i=gE();function o(h,g){return t.cloneDeepWith(h,(a,c,f,v)=>{const u=g==null?void 0:g(a,c,f,v);if(u!==void 0)return u;if(typeof h=="object"){if(r.getTag(h)===i.objectTag&&typeof h.constructor!="function"){const m={};return v.set(h,m),t.copyProperties(m,h,f,v),m}switch(Object.prototype.toString.call(h)){case i.numberTag:case i.stringTag:case i.booleanTag:{const m=new h.constructor(h==null?void 0:h.valueOf());return t.copyProperties(m,h),m}case i.argumentsTag:{const m={};return t.copyProperties(m,h),m.length=h.length,m[Symbol.iterator]=h[Symbol.iterator],m}default:return}}})}e.cloneDeepWith=o})(Pg)),Pg}var sw;function MP(){return sw||(sw=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=AP();function r(i){return t.cloneDeepWith(i)}e.cloneDeep=r})(kg)),kg}var Bg={},jg={},aw;function _E(){return aw||(aw=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=/^(?:0|[1-9]\d*)$/;function r(i,o=Number.MAX_SAFE_INTEGER){switch(typeof i){case"number":return Number.isInteger(i)&&i>=0&&i<o;case"symbol":return!1;case"string":return t.test(i)}}e.isIndex=r})(jg)),jg}var Ig={},ow;function LP(){return ow||(ow=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=$_();function r(i){return i!==null&&typeof i=="object"&&t.getTag(i)==="[object Arguments]"}e.isArguments=r})(Ig)),Ig}var lw;function OP(){return lw||(lw=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=nE(),r=_E(),i=LP(),o=N_();function h(g,a){let c;if(Array.isArray(a)?c=a:typeof a=="string"&&t.isDeepKey(a)&&(g==null?void 0:g[a])==null?c=o.toPath(a):c=[a],c.length===0)return!1;let f=g;for(let v=0;v<c.length;v++){const u=c[v];if((f==null||!Object.hasOwn(f,u))&&!((Array.isArray(f)||i.isArguments(f))&&r.isIndex(u)&&u<f.length))return!1;f=f[u]}return!0}e.has=h})(Bg)),Bg}var cw;function TP(){return cw||(cw=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=vE(),r=I_(),i=MP(),o=z_(),h=OP();function g(a,c){switch(typeof a){case"object":{Object.is(a==null?void 0:a.valueOf(),-0)&&(a="-0");break}case"number":{a=r.toKey(a);break}}return c=i.cloneDeep(c),function(f){const v=o.get(f,a);return v===void 0?h.has(f,a):c===void 0?v===void 0:t.isMatch(v,c)}}e.matchesProperty=g})(Rg)),Rg}var uw;function DP(){return uw||(uw=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=cE(),r=bP(),i=EP(),o=TP();function h(g){if(g==null)return t.identity;switch(typeof g){case"function":return g;case"object":return Array.isArray(g)&&g.length===2?o.matchesProperty(g[0],g[1]):i.matches(g);case"string":case"symbol":case"number":return r.property(g)}}e.iteratee=h})(mg)),mg}var hw;function RP(){return hw||(hw=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=gP(),r=pP(),i=cE(),o=yP(),h=DP();function g(a,c=i.identity){return o.isArrayLikeObject(a)?t.uniqBy(Array.from(a),r.ary(h.iteratee(c),1)):[]}e.uniqBy=g})(ug)),ug}var Ng,fw;function kP(){return fw||(fw=1,Ng=RP().uniqBy),Ng}var PP=kP();const dw=Qn(PP);function BP(e,t,r){return t===!0?dw(e,r):typeof t=="function"?dw(e,t):e}var zg={exports:{}},Hg={},$g={exports:{}},Ug={};/**
|
|
134
|
+
`))},m3));return}if(V.recordFailure()==="give-up"){m("disconnected");return}m("reconnecting");const be=V.nextDelayMs();B.timer=setTimeout(()=>{B.disposed||W(B.lastSeq||void 0)},be)},fe.onerror=()=>{}},j=((Q=(ee=window.matchMedia)==null?void 0:ee.call(window,"(pointer: coarse)"))==null?void 0:Q.matches)??!1,H=C.textarea;let z=!1,F=0,Z="",re=0;const he=()=>{z=!0},ge=()=>{z=!1,F=Date.now()};H&&(H.addEventListener("compositionstart",he),H.addEventListener("compositionend",ge)),C.onData(se=>{var Le,be,Qe,Rt,xe,Se;const te=a.current;if(!te||te.readyState!==WebSocket.OPEN)return;const me=Date.now();if((z||me-F<150||j)&&se===Z&&me-re<150)return;if(Z=se,re=me,B.initialPhase){const we=se.replace(/\x1b\[[\?>][\d;]*c/g,"").replace(/\x1b\[\d+;\d+R/g,"").replace(/\x1b\[\?[\d;]*\$y/g,"");if(!we)return;se=we}const ye=f.current;if((ye.ctrl||ye.cmd)&&se.length===1){const we=se.charCodeAt(0);if(ye.ctrl)we>=97&&we<=122?se=String.fromCharCode(we-96):we>=65&&we<=90&&(se=String.fromCharCode(we-64)),ye.ctrl=!1,ye.cmd=!1,(Le=ye.clearCallback)==null||Le.call(ye);else if(ye.cmd){const ve=se.toLowerCase();if(ve==="v"){(be=navigator.clipboard)==null||be.readText().then(Ce=>{Ce&&C.paste(Ce)}).catch(()=>{}),ye.ctrl=!1,ye.cmd=!1,(Qe=ye.clearCallback)==null||Qe.call(ye);return}if(ve==="c"){const Ce=C.getSelection();Ce&&((Rt=navigator.clipboard)==null||Rt.writeText(Ce).catch(()=>{})),ye.ctrl=!1,ye.cmd=!1,(xe=ye.clearCallback)==null||xe.call(ye);return}ye.ctrl=!1,ye.cmd=!1,(Se=ye.clearCallback)==null||Se.call(ye)}}w3(te,se)}),C.onResize(({cols:se,rows:te})=>{const me=a.current;(me==null?void 0:me.readyState)===WebSocket.OPEN&&yu(me,"resize",{cols:se,rows:te})}),w.current=()=>{const se=a.current;if((se==null?void 0:se.readyState)===WebSocket.OPEN){c.current&&c.current.fit(),yu(se,"resize",{cols:C.cols,rows:C.rows});return}B.disposed||(B.timer&&(clearTimeout(B.timer),B.timer=null),V.reset(),W(B.lastSeq||void 0))},W();const X=new ResizeObserver(()=>D());X.observe(h.current);const G=()=>{document.hidden||D()};return document.addEventListener("visibilitychange",G),()=>{var se,te;B.disposed=!0,B.timer&&clearTimeout(B.timer),B.flushTimer&&clearTimeout(B.flushTimer),B.recoveryTimer&&clearTimeout(B.recoveryTimer),clearTimeout(k),M&&clearTimeout(M),H&&(H.removeEventListener("compositionstart",he),H.removeEventListener("compositionend",ge)),O.dispose(),E==null||E.dispose(),S==null||S.dispose(),(se=h.current)==null||se.removeEventListener("paste",x),X.disconnect(),document.removeEventListener("visibilitychange",G),(te=a.current)==null||te.close(),C.dispose(),g.current=null,a.current=null,c.current=null}},[e]),$.jsxs("div",{style:{width:"100%",height:"100%",display:"flex",flexDirection:"column",position:"relative"},children:[r===!1&&$.jsx("div",{style:{backgroundColor:"#3a2a00",color:"#ffcc00",padding:"4px 12px",fontSize:"12px",flexShrink:0},children:"Session persistence unavailable — this terminal will not survive a restart"}),$.jsx("div",{ref:h,className:"terminal-container",style:{width:"100%",flex:1,minHeight:0,overflow:"hidden",backgroundColor:"#1a1a1a"}}),$.jsx(_3,{fitRef:c,wsRef:a,xtermRef:g,connStatus:u,toolbarExtra:i,onReconnect:()=>{var C;return(C=w.current)==null?void 0:C.call(w)}}),v&&$.jsx(s3,{wsRef:a,modifierRef:f})]})}function w3(e,t){const r=new TextEncoder().encode(t),i=new Uint8Array(1+r.length);i[0]=T2,i.set(r,1),e.send(i.buffer)}function yu(e,t,r){const i=JSON.stringify({type:t,payload:r}),o=new TextEncoder().encode(i),h=new Uint8Array(1+o.length);h[0]=O2,h.set(o,1),e.send(h.buffer)}const C3=300*1e3;function R2(e,t=Date.now()){return e.blocked||e.phase==="complete"||e.phase==="verified"||!e.lastDataAt?!1:t-new Date(e.lastDataAt).getTime()>C3}function x3(e){if(e.blocked)return`Blocked: ${e.blocked}`;if(R2(e))return"Waiting on input";if(e.mode==="soft")return"running";if(!e.phase)return"starting";const t=e.planPhases;if(t.length===0)return e.phase;const r=t.findIndex(i=>i.id===e.phase);return r===-1?e.phase:`${e.phase} (${r+1}/${t.length})`}function Qv(e){if(e<0)return"-";const t=Math.floor(e/6e4);if(t<60)return`${t}m`;const r=Math.floor(t/60),i=t%60;return r<24?`${r}h ${i}m`:`${Math.floor(r/24)}d ${r%24}h`}function E3(e,t){if(!e)return"-";const r=Date.now()-new Date(e).getTime();if(r<0)return"-";const i=Math.max(0,r-t);return t===0?Qv(r):`${Qv(r)} wc / ${Qv(i)} ag`}function A3({builder:e,onOpen:t,architectCount:r=0}){const i=e.issueId?`#${e.issueId}`:e.id,o=e.issueTitle||e.id,h=e.blocked!==null&&e.blocked!=="",g=!h&&R2(e),a=Math.min(100,Math.max(0,Math.round(e.progress??0))),c=r>1&&!!e.spawnedByArchitect,f=h?" builder-row--blocked":g?" builder-row--waiting":"",v=h?" progress-fill--blocked":g?" progress-fill--waiting":"";return $.jsxs("tr",{className:`builder-row${f}`,children:[$.jsxs("td",{className:"builder-col-id",children:[i,c&&$.jsxs("span",{className:"builder-attribution",title:`spawned by ${e.spawnedByArchitect}`,children:[" · ",e.spawnedByArchitect]})]}),$.jsx("td",{className:"builder-col-title",children:o}),$.jsx("td",{className:"builder-col-state",children:$.jsx("span",{className:h||g?"builder-state-blocked":"builder-state-active",children:x3(e)})}),$.jsxs("td",{className:"builder-col-progress",children:[$.jsx("div",{className:"progress-bar",children:$.jsx("div",{className:`progress-fill${v}`,style:{width:`${a}%`}})}),$.jsxs("span",{className:"progress-pct",children:[a,"%"]})]}),$.jsx("td",{className:"builder-col-elapsed",children:E3(e.startedAt,e.idleMs??0)}),$.jsx("td",{className:"builder-col-actions",children:t&&$.jsx("button",{className:"builder-row-open",onClick:()=>t(e),children:"Open"})})]})}function M3(e){switch(e){case"spec review":return"attention-kind--spec";case"plan review":return"attention-kind--plan";case"dev review":return"attention-kind--dev";case"PR review":return"attention-kind--pr";case"verify review":return"attention-kind--verify";default:return"attention-kind--plan"}}function L3(e){const t=Date.now()-new Date(e).getTime(),r=Math.floor(t/6e4);if(r<60)return`${Math.max(1,r)}m`;const i=Math.floor(r/60);return i<24?`${i}h`:`${Math.floor(i/24)}d`}function O3(e,t){const r=[],i=new Map,o=new Set,h=new Set;for(const g of t)g.issueId&&(h.add(g.issueId),g.prReady&&(o.add(g.issueId),g.blockedSince&&i.set(g.issueId,g.blockedSince)));for(const g of e){const a=g.linkedIssue!==null&&h.has(g.linkedIssue),c=g.linkedIssue!==null&&o.has(g.linkedIssue),f=c&&g.linkedIssue!==null?i.get(g.linkedIssue):void 0,v=!a&&g.reviewStatus==="REVIEW_REQUIRED";if(!c&&!v)continue;const u=c?f??g.createdAt:g.createdAt;r.push({key:`pr-${g.id}`,issueOrPR:`#${g.id}`,title:g.title,kind:"PR review",kindClass:"attention-kind--pr",waitingSince:u,url:g.url})}for(const g of t){if(g.prReady||!g.blocked||!g.blockedSince)continue;const a=g.issueId?`#${g.issueId}`:g.id;r.push({key:`gate-${g.id}`,issueOrPR:a,title:g.issueTitle||g.id,kind:g.blocked,kindClass:M3(g.blocked),waitingSince:g.blockedSince})}return r.sort((g,a)=>new Date(g.waitingSince).getTime()-new Date(a.waitingSince).getTime()),r}function T3({prs:e,builders:t}){const r=O3(e,t);return r.length===0?$.jsx("p",{className:"work-empty",children:"Nothing needs attention"}):$.jsx("div",{className:"attention-rows",children:r.map(i=>{const o=$.jsxs($.Fragment,{children:[$.jsx("span",{className:"attention-row-id",children:i.issueOrPR}),$.jsx("span",{className:"attention-row-title",children:i.title}),$.jsx("span",{className:`attention-row-kind ${i.kindClass}`,children:i.kind}),$.jsx("span",{className:"attention-row-age",children:L3(i.waitingSince)})]});return i.url?$.jsx("a",{className:"attention-row",href:i.url,target:"_blank",rel:"noopener noreferrer",children:o},i.key):$.jsx("div",{className:"attention-row",children:o},i.key)})})}function D3(e){const t=Date.now()-new Date(e).getTime(),r=Math.floor(t/6e4);if(r<60)return`${Math.max(1,r)}m`;const i=Math.floor(r/60);return i<24?`${i}h`:`${Math.floor(i/24)}d`}const R3={high:"priority-dot--high",medium:"priority-dot--med",low:"priority-dot--low"},k3={bug:"type-tag--bug",project:"type-tag--project",spike:"type-tag--spike"};function Jv({label:e,filePath:t,onRefresh:r}){return $.jsx("button",{className:"backlog-artifact-link",onClick:async i=>{i.preventDefault(),i.stopPropagation(),await zh(t),r==null||r()},children:e})}function P3({items:e,onRefresh:t}){const r=e.filter(i=>!i.hasBuilder);return r.length===0?$.jsx("p",{className:"work-empty",children:"No open issues"}):$.jsx("div",{className:"backlog-rows",children:r.map(i=>$.jsxs("div",{className:"backlog-row",children:[$.jsxs("a",{className:"backlog-row-main",href:i.url,target:"_blank",rel:"noopener noreferrer",children:[$.jsx("span",{className:`backlog-priority-dot ${R3[i.priority]??"priority-dot--low"}`}),$.jsxs("span",{className:"backlog-row-number",children:["#",i.id]}),$.jsx("span",{className:`backlog-type-tag ${k3[i.type]??""}`,children:i.type}),$.jsx("span",{className:"backlog-row-title",children:i.title}),i.author&&$.jsxs("span",{className:"backlog-row-author",children:["r: @",i.author]}),$.jsxs("span",{className:"backlog-row-assignees",children:["a: ",i.assignees&&i.assignees.length>0?i.assignees.map(o=>`@${o}`).join(", "):"none"]}),$.jsx("span",{className:"backlog-row-age",children:D3(i.createdAt)})]}),(i.specPath||i.planPath||i.reviewPath)&&$.jsxs("span",{className:"backlog-artifacts",children:[i.specPath&&$.jsx(Jv,{label:"spec",filePath:i.specPath,onRefresh:t}),i.planPath&&$.jsx(Jv,{label:"plan",filePath:i.planPath,onRefresh:t}),i.reviewPath&&$.jsx(Jv,{label:"review",filePath:i.reviewPath,onRefresh:t})]})]},i.id))})}function B3(e){const t=Date.now()-new Date(e).getTime(),r=Math.floor(t/6e4);if(r<60)return`${Math.max(1,r)}m ago`;const i=Math.floor(r/60);return i<24?`${i}h ago`:`${Math.floor(i/24)}d ago`}const j3={bug:"type-tag--bug",project:"type-tag--project",spike:"type-tag--spike"};function eg({label:e,filePath:t,onRefresh:r}){return $.jsx("button",{className:"backlog-artifact-link",onClick:async i=>{i.preventDefault(),i.stopPropagation(),await zh(t),r==null||r()},children:e})}function I3({items:e,onRefresh:t}){return e.length===0?null:$.jsx("div",{className:"recently-closed-rows",children:e.map(r=>{const i=r.prUrl||r.specPath||r.planPath||r.reviewPath;return $.jsxs("div",{className:"recently-closed-row",children:[$.jsxs("a",{className:"recently-closed-row-main",href:r.url,target:"_blank",rel:"noopener noreferrer",children:[$.jsx("span",{className:"recently-closed-check",children:"✓"}),$.jsxs("span",{className:"backlog-row-number",children:["#",r.id]}),$.jsx("span",{className:`backlog-type-tag ${j3[r.type]??""}`,children:r.type}),$.jsx("span",{className:"backlog-row-title",children:r.title}),$.jsx("span",{className:"backlog-row-age",children:B3(r.closedAt)})]}),i&&$.jsxs("span",{className:"backlog-artifacts",children:[r.specPath&&$.jsx(eg,{label:"spec",filePath:r.specPath,onRefresh:t}),r.planPath&&$.jsx(eg,{label:"plan",filePath:r.planPath,onRefresh:t}),r.reviewPath&&$.jsx(eg,{label:"review",filePath:r.reviewPath,onRefresh:t}),r.prUrl&&$.jsx("a",{className:"backlog-artifact-link",href:r.prUrl,target:"_blank",rel:"noopener noreferrer",onClick:o=>o.stopPropagation(),children:"PR"})]})]},r.id)})})}function N3(e,t){const r=e.replace(/^\//,"");return t.staged.some(i=>r.endsWith(i)||i.endsWith(r))?{indicator:"A",className:"git-staged"}:t.modified.some(i=>r.endsWith(i)||i.endsWith(r))?{indicator:"M",className:"git-modified"}:t.untracked.some(i=>r.endsWith(i)||i.endsWith(r))?{indicator:"?",className:"git-untracked"}:null}function k2({entry:e,expanded:t,gitStatus:r,onToggle:i,onOpen:o,depth:h=0}){var f;const g=e.type==="directory",a=t.has(e.path),c=g?null:N3(e.path,r);return $.jsxs($.Fragment,{children:[$.jsxs("div",{className:`file-node ${g?"directory":"file"}`,style:{paddingLeft:`${h*16+8}px`},onClick:()=>g?i(e.path):o(e.path),role:"treeitem","aria-expanded":g?a:void 0,tabIndex:0,onKeyDown:v=>{(v.key==="Enter"||v.key===" ")&&(v.preventDefault(),g?i(e.path):o(e.path))},children:[$.jsx("span",{className:"file-icon",children:g?a?"📂":"📁":"📄"}),$.jsx("span",{className:"file-name",children:e.name}),c&&$.jsx("span",{className:`git-indicator ${c.className}`,children:c.indicator})]}),g&&a&&((f=e.children)==null?void 0:f.map(v=>$.jsx(k2,{entry:v,expanded:t,gitStatus:r,onToggle:i,onOpen:o,depth:h+1},v.path)))]})}function P2(e,t=[]){for(const r of e)r.type==="file"&&t.push(r),r.children&&P2(r.children,t);return t}function z3({onRefresh:e}){const[t,r]=N.useState([]),[i,o]=N.useState(new Set),[h,g]=N.useState(null),[a,c]=N.useState(!1),[f,v]=N.useState({modified:[],staged:[],untracked:[]}),[u,m]=N.useState([]),[w,C]=N.useState(""),[_,d]=N.useState(!1),y=N.useRef(null),b=N.useCallback(async()=>{try{const R=await CR();r(R),g(null),c(!0)}catch(R){g(R.message)}},[]),S=N.useCallback(async()=>{try{const R=await ER();v(R)}catch(R){console.error("Failed to load git status:",R)}},[]),E=N.useCallback(async()=>{try{const R=await AR();m(R)}catch(R){console.error("Failed to load recent files:",R)}},[]);N.useEffect(()=>{a||(b(),S(),E())},[a,b,S,E]),N.useEffect(()=>{const R=setInterval(()=>{b(),S()},5e3);return()=>clearInterval(R)},[b,S]);const L=R=>{o(B=>{const U=new Set(B);return U.has(R)?U.delete(R):U.add(R),U})},x=async R=>{try{await zh(R),e(),E()}catch(B){console.error("Failed to open file:",B)}},O=N.useMemo(()=>P2(t),[t]),M=N.useMemo(()=>{if(!w.trim())return[];const R=w.toLowerCase();return O.filter(B=>B.name.toLowerCase().includes(R)||B.path.toLowerCase().includes(R)).slice(0,10)},[O,w]),D=R=>{C(R.target.value),d(!0)},k=R=>{R.key==="Escape"?(d(!1),C("")):R.key==="Enter"&&M.length>0&&(x(M[0].path),C(""),d(!1))},P=R=>{x(R),C(""),d(!1)};return h?$.jsxs("div",{className:"file-tree-error",children:["Error: ",h]}):a?$.jsxs("div",{className:"file-tree-container",children:[$.jsxs("div",{className:"file-search",children:[$.jsx("input",{ref:y,type:"text",className:"file-search-input",placeholder:"Search files...",value:w,onChange:D,onKeyDown:k,onFocus:()=>d(!0),onBlur:()=>setTimeout(()=>d(!1),200)}),_&&M.length>0&&$.jsx("div",{className:"file-search-suggestions",children:M.map(R=>$.jsxs("div",{className:"file-search-suggestion",onMouseDown:()=>P(R.path),children:[$.jsx("span",{className:"suggestion-name",children:R.name}),$.jsx("span",{className:"suggestion-path",children:R.path})]},R.path))})]}),u.length>0&&$.jsxs("div",{className:"file-tree-section",children:[$.jsx("div",{className:"file-tree-section-header",children:"Recent"}),u.map(R=>$.jsxs("div",{className:"file-node file recent-file",style:{paddingLeft:"8px"},onClick:()=>x(R.path),role:"treeitem",tabIndex:0,onKeyDown:B=>{(B.key==="Enter"||B.key===" ")&&(B.preventDefault(),x(R.path))},children:[$.jsx("span",{className:"file-icon",children:"🕐"}),$.jsx("span",{className:"file-name",children:R.name}),$.jsx("span",{className:"file-path-hint",children:R.relativePath})]},R.id))]}),$.jsxs("div",{className:"file-tree-section",children:[$.jsx("div",{className:"file-tree-section-header",children:"Files"}),$.jsx("div",{className:"file-tree",role:"tree","aria-label":"Project files",children:t.map(R=>$.jsx(k2,{entry:R,expanded:i,gitStatus:f,onToggle:L,onOpen:x},R.path))})]})]}):$.jsx("div",{className:"file-tree-loading",children:"Loading files..."})}function H3(e){const t=Math.floor(e/6e4);if(t<1)return"<1m";if(t<60)return`${t}m`;const r=Math.floor(t/60);return r<24?`${r}h`:`${Math.floor(r/24)}d`}function $3(e){const t=e.split("/").filter(Boolean);return t.length<=1?e:t.slice(-2).join("/")}const U3=3e4;function F3({utils:e,annotations:t,onSelectTab:r}){if(e.length===0&&t.length===0)return null;const i=Date.now();return $.jsxs("section",{className:"work-section",children:[$.jsx("h3",{className:"work-section-title",children:"Open Files & Shells"}),$.jsxs("div",{className:"ofs-rows",children:[e.length>0&&$.jsxs($.Fragment,{children:[$.jsx("div",{className:"ofs-subgroup-label",children:"Shells"}),e.map(o=>{const h=!o.lastDataAt||i-o.lastDataAt>U3,g=o.lastDataAt?H3(i-o.lastDataAt):"";return $.jsxs("div",{className:"ofs-row",onClick:()=>r(o.id),children:[$.jsx("span",{className:`ofs-dot ${h?"ofs-dot--idle":"ofs-dot--running"}`}),$.jsx("span",{className:"ofs-name",children:o.name||`Shell ${o.id}`}),h&&g&&$.jsx("span",{className:"ofs-idle",children:g})]},o.id)})]}),t.length>0&&$.jsxs($.Fragment,{children:[$.jsx("div",{className:"ofs-subgroup-label",children:"Files"}),t.map(o=>{const h=o.file.split("/").pop()??o.file;return $.jsxs("div",{className:"ofs-row",onClick:()=>r(o.id),title:o.file,children:[$.jsx("span",{className:"ofs-file-icon",children:"📄"}),$.jsx("span",{className:"ofs-name",children:h}),$.jsx("span",{className:"ofs-path",children:$3(o.file)})]},o.id)})]})]})]})}const Ra=['Use `afx spawn --task "description"` for quick one-off tasks that don\'t need a spec',"Run `afx status` to see all active builders and their current phase",'Use `afx send architect "message"` to notify the architect when you need guidance',"Run `afx cleanup --project 0042` after merging a PR to clean up the worktree","Use `afx spawn --soft -p 42` for flexible, protocol-guided work without strict porch orchestration","Run `afx workspace start` to launch the architect dashboard","Use `afx spawn 42 --resume` to resume an existing builder worktree instead of recreating it","Use `afx open file.ts` to open a file in the dashboard annotation viewer","Run `afx tower start` to start the Tower server — there is no `restart` command, use stop then start","Check `.codev/config.json` at your project root to customize builder and architect commands","Run `porch pending` to see all gates waiting for your approval across all projects","Use `porch status 42` to see detailed phase status for a specific project","Run `porch next 42` to get the next tasks for a project","Use `porch done 42` to signal that the current phase work is complete","Gates like `spec-approval` and `plan-approval` require explicit human approval before advancing","Porch tracks state in `codev/projects/<id>/status.yaml` — never edit this file directly","Use `porch approve 42 spec-approval` to approve a gate (human only)","Porch drives SPIR, TICK, and BUGFIX protocols via a state machine with automatic consultations","Use `consult -m gemini --type integration` for integration reviews with Gemini","Run `consult -m gemini --protocol spir --type spec` to get a Gemini review of your specification","Use `consult -m codex --protocol spir --type spec` for a focused specification review","Run `consult -m claude --protocol spir --type plan` to get feedback on your implementation plan","The `consult` CLI supports three models: `gemini`, `codex`, and `claude`",'Use `consult -m gemini --prompt "your question"` to ask Gemini a general question with codebase context','Say "cmap the PR" to run all three consultations in parallel in the background','Consultations are enabled by default in SPIR — say "without consultation" to skip them',"Commit specs and plans to `main` before spawning — builders branch from HEAD","Always add files explicitly with `git add file1 file2` — never use `git add .` or `git add -A`","Use SPIR for new features, TICK for amendments to existing specs, and BUGFIX for issue fixes","Each SPIR feature produces exactly three documents: spec, plan, and review","Specs define WHAT to build, plans define HOW — keep them as separate documents","Add YAML frontmatter with `approved` and `validated` fields to skip phases in porch","Run `codev doctor` to check that your environment is set up correctly","Use `--merge` (not squash) when merging PRs — individual commits document the development process","The TICK protocol modifies spec and plan in-place and creates a new review file","BUGFIX protocol uses GitHub Issues as source of truth — no spec/plan artifacts needed",'Run `tokei -e "node_modules" -e ".git" -e "dist" .` to measure codebase size',"Use `codev adopt` to set up Codev in an existing project","Click a builder card in the Work view to jump to its terminal tab","The file panel in Work view lets you browse project files without leaving the dashboard","Use the Refresh button to update builder status, PRs, and backlog data","The dashboard shows active builders, pending PRs, and backlog items in one view","Click the file panel toggle arrow to expand or collapse the file browser","The dashboard supports both desktop split-pane and mobile single-pane layouts","Tab indicators show builder status at a glance — active, waiting, or implementing","Use the `+ Shell` button to quickly open a new shell terminal tab","The SPIR protocol has four phases: Specify, Plan, Implement (IDE loop), and Review","Each implementation phase follows the IDE cycle: Implement, Defend (test), Evaluate","The EXPERIMENT protocol is for testing new approaches — use it for proof-of-concept work","The MAINTAIN protocol handles code hygiene and documentation sync","Run 3-way consultations at each SPIR checkpoint for spec, plan, and implementation reviews"];function W3(e){const t=new Date(e.getFullYear(),0,0);return Math.floor((e.getTime()-t.getTime())/864e5)}function B2(e){const t=e.getFullYear(),r=String(e.getMonth()+1).padStart(2,"0"),i=String(e.getDate()).padStart(2,"0");return`tip-dismissed-${t}-${r}-${i}`}function q3(){try{return localStorage.getItem(B2(new Date))==="1"}catch{return!1}}function G3(){try{localStorage.setItem(B2(new Date),"1")}catch{}}function K3(e){return e.split("`").map((r,i)=>i%2===1?$.jsx("code",{children:r},i):$.jsx("span",{children:r},i))}function Y3(){const e=W3(new Date)%Ra.length,[t,r]=N.useState(e),[i,o]=N.useState(q3);if(i||Ra.length===0)return null;const h=()=>{r((t-1+Ra.length)%Ra.length)},g=()=>{r((t+1)%Ra.length)},a=()=>{G3(),o(!0)};return $.jsxs("div",{className:"tip-banner",children:[$.jsx("button",{className:"tip-banner-nav",onClick:h,"aria-label":"Previous tip",children:"‹"}),$.jsx("span",{className:"tip-banner-label",children:"Tip:"}),$.jsx("span",{className:"tip-banner-text",children:K3(Ra[t])}),$.jsx("button",{className:"tip-banner-nav",onClick:g,"aria-label":"Next tip",children:"›"}),$.jsx("button",{className:"tip-banner-dismiss",onClick:a,"aria-label":"Dismiss tip",children:"×"})]})}function V3({state:e,onRefresh:t,onSelectTab:r}){var u,m,w;const{data:i,error:o,refresh:h}=w2(),[g,a]=N.useState(!1),c=N.useCallback(async()=>{try{await SR(),t()}catch(C){console.error("Failed to create shell:",C)}},[t]),f=N.useCallback(C=>{var d;const _=(d=e==null?void 0:e.builders)==null?void 0:d.find(y=>{var b,S,E,L;return C.issueId?((b=y.name)==null?void 0:b.includes(C.issueId))||((S=y.id)==null?void 0:S.includes(C.issueId)):((E=y.id)==null?void 0:E.includes(C.id))||((L=y.name)==null?void 0:L.includes(C.id))});_&&(r==null||r(_.id))},[e==null?void 0:e.builders,r]);if(!e)return $.jsx("div",{className:"work-view",children:$.jsx("p",{className:"work-loading",children:"Loading..."})});const v=((u=e.architects)==null?void 0:u.length)??0;return $.jsxs("div",{className:`work-view ${g?"file-panel-open":""}`,children:[$.jsxs("div",{className:"work-content",children:[$.jsxs("div",{className:"work-header",children:[$.jsx("h2",{className:"work-title",children:"Work"}),$.jsxs("div",{className:"work-actions",children:[$.jsx("button",{className:"work-btn",onClick:c,children:"+ Shell"}),$.jsx("button",{className:"work-btn work-btn-secondary",onClick:h,children:"Refresh"})]})]}),o&&$.jsxs("div",{className:"work-error",children:["Failed to load overview: ",o]}),$.jsx(Y3,{}),$.jsxs("section",{className:"work-section",children:[$.jsx("h3",{className:"work-section-title",children:"Builders"}),i!=null&&i.builders&&i.builders.length>0?$.jsxs("table",{className:"builder-table",children:[$.jsx("thead",{children:$.jsxs("tr",{children:[$.jsx("th",{children:"Issue"}),$.jsx("th",{children:"Title"}),$.jsx("th",{children:"State"}),$.jsx("th",{children:"Progress"}),$.jsx("th",{children:"Elapsed"}),$.jsx("th",{})]})}),$.jsx("tbody",{children:i.builders.map(C=>$.jsx(A3,{builder:C,onOpen:f,architectCount:v},C.id))})]}):$.jsx("p",{className:"work-empty",children:"No active builders"})]}),$.jsx(F3,{utils:(e==null?void 0:e.utils)??[],annotations:(e==null?void 0:e.annotations)??[],onSelectTab:C=>r==null?void 0:r(C)}),(i==null?void 0:i.forgeStatus)==="rate-limited"&&$.jsxs("p",{className:"work-unavailable",children:["Forge rate limited — PRs, backlog and recently closed may be stale until"," ",i.forgeResetAt?new Date(i.forgeResetAt).toLocaleTimeString():"the budget resets"]}),$.jsxs("section",{className:"work-section",children:[$.jsx("h3",{className:"work-section-title",children:"Needs Attention"}),(m=i==null?void 0:i.errors)!=null&&m.prs?$.jsx("p",{className:"work-unavailable",children:i.errors.prs}):$.jsx(T3,{prs:(i==null?void 0:i.pendingPRs)??[],builders:(i==null?void 0:i.builders)??[]})]}),$.jsxs("section",{className:"work-section",children:[$.jsx("h3",{className:"work-section-title",children:"Backlog"}),(w=i==null?void 0:i.errors)!=null&&w.issues?$.jsx("p",{className:"work-unavailable",children:i.errors.issues}):$.jsx(P3,{items:(i==null?void 0:i.backlog)??[],onRefresh:t})]}),(i==null?void 0:i.recentlyClosed)&&i.recentlyClosed.length>0&&$.jsxs("section",{className:"work-section",children:[$.jsx("h3",{className:"work-section-title",children:"Recently Closed"}),$.jsx(I3,{items:i.recentlyClosed,onRefresh:t})]})]}),$.jsxs("div",{className:`work-file-panel ${g?"expanded":"collapsed"}`,children:[$.jsxs("div",{className:"work-file-panel-header",children:[$.jsx("span",{className:"work-file-panel-toggle",onClick:()=>a(!g),children:g?"▼":"▲"}),$.jsx("span",{className:"work-file-panel-label",onClick:()=>a(!g),children:"Files"}),!g&&$.jsx("input",{className:"work-file-panel-search",type:"text",placeholder:"Search files...",onFocus:()=>a(!0)})]}),g&&$.jsx("div",{className:"work-file-panel-content",children:$.jsx(z3,{onRefresh:t})})]})]})}function X3(e,t,r="held"){const i=e??r;return t?`${i}:${t}`:i}function j2(e){const t=Math.max(0,Math.floor(e/1e3));if(t<60)return`${t}s`;const r=Math.floor(t/60);if(r<60)return`${r}m`;const i=Math.floor(r/60);return i<24?`${i}h`:`${Math.floor(i/24)}d`}function Z3(e,t){return j2(t-e)}function kp(e,t){return e!=null&&e>t}function CS({message:e,now:t}){const r=kp(e.notBefore,t),i=`${e.fromAgent??"?"} → ${e.toAgent}`,o=r?`→${j2(e.notBefore-t)}`:Z3(e.createdAt,t),h=r?"scheduled":X3(e.reason,e.detail);return $.jsxs("li",{className:`held-row${e.escalated?" held-row--attention":""}`,"data-testid":"held-row",children:[$.jsx("span",{className:"held-row-addresses",children:i}),$.jsxs("span",{className:"held-row-meta",children:[o," · ",h,e.escalated&&!r?"!":""]})]})}function Q3({count:e,escalated:t,loadMessages:r}){const[i,o]=N.useState(!1),[h,g]=N.useState({kind:"loading"}),[a,c]=N.useState(!1),f=N.useRef(null),v=N.useRef(null),u=N.useId(),m=N.useRef(0),w=N.useRef(r);N.useEffect(()=>{w.current=r},[r]);const C=N.useCallback(()=>{const L=++m.current;c(!0),g(x=>x.kind==="ready"?x:{kind:"loading"}),w.current().then(x=>{m.current===L&&(c(!1),g({kind:"ready",messages:x}))},x=>{m.current===L&&(c(!1),g({kind:"error",message:x instanceof Error?x.message:String(x)}))})},[]);if(N.useEffect(()=>{i&&C()},[i,e,C]),N.useEffect(()=>{if(!i)return;const L=O=>{var M;O.key==="Escape"&&(o(!1),(M=f.current)==null||M.focus())},x=O=>{var M;(M=v.current)!=null&&M.contains(O.target)||o(!1)};return document.addEventListener("keydown",L),document.addEventListener("mousedown",x),()=>{document.removeEventListener("keydown",L),document.removeEventListener("mousedown",x)}},[i]),e<=0&&!i)return null;const _=`${e} held`,d=t?`${e} held message${e===1?"":"s"} — at least one past the escalation age. Click to list them.`:`${e} held message${e===1?"":"s"} awaiting a clear prompt. Click to list them.`,y=Date.now(),b=h.kind==="ready"?h.messages:[],S=b.filter(L=>!kp(L.notBefore,y)),E=b.filter(L=>kp(L.notBefore,y));return $.jsxs("div",{className:"held-badge-wrapper",ref:v,children:[$.jsxs("button",{type:"button",ref:f,className:`held-badge${t?" held-badge--attention":""}`,"data-testid":"held-badge",title:d,"aria-expanded":i,"aria-controls":u,onClick:()=>o(L=>!L),children:[$.jsx("span",{className:`held-dot${t?" held-dot--attention":""}`}),_]}),i&&$.jsxs("div",{className:"held-popover",id:u,"data-testid":"held-popover","aria-live":"polite","aria-busy":a,children:[h.kind==="loading"&&$.jsx("p",{className:"held-popover-note",children:"Loading…"}),h.kind==="error"&&$.jsxs("p",{className:"held-popover-note held-popover-note--error","data-testid":"held-error",children:["Could not load held messages: ",h.message]}),h.kind==="ready"&&S.length===0&&$.jsx("p",{className:"held-popover-note","data-testid":"held-empty",children:e<=0&&b.length>0?"No held messages — the rows below are scheduled.":e<=0?"Held mail cleared.":"No held messages."}),S.length>0&&$.jsxs("section",{className:"held-group",children:[$.jsxs("h2",{className:"held-group-title",children:["Held (",S.length,")"]}),$.jsx("ul",{className:"held-list","data-testid":"held-group-held",children:S.map(L=>$.jsx(CS,{message:L,now:y},L.id))})]}),E.length>0&&$.jsxs("section",{className:"held-group held-group--scheduled",children:[$.jsxs("h2",{className:"held-group-title",children:["Scheduled (",E.length,")"]}),$.jsx("p",{className:"held-group-note",children:"Waiting for their due time — not counted above."}),$.jsx("ul",{className:"held-list","data-testid":"held-group-scheduled",children:E.map(L=>$.jsx(CS,{message:L,now:y},L.id))})]}),$.jsxs("p",{className:"held-popover-foot",children:["Ids and dismissal: ",$.jsx("code",{children:"afx inbox"})]})]})]})}function J3({tabs:e,activeTabId:t,onSelectTab:r,onRefresh:i,children:o}){return $.jsxs("div",{className:"mobile-layout",children:[$.jsx(E2,{tabs:e,activeTabId:t,onSelectTab:r,onRefresh:i}),$.jsx("div",{className:"mobile-content",children:o})]})}function ek({tabId:e,initialLine:t}){let i=`${_2()}api/annotate/${e}/`;return t&&(i+=`?line=${t}`),$.jsx("div",{className:"file-viewer",style:{width:"100%",height:"100%"},children:$.jsx("iframe",{src:i,style:{width:"100%",height:"100%",border:"none"},title:"File Annotator"})})}function tk(e){return e==="24h"?"1":e==="7d"?"7":e==="30d"?"30":"all"}function rk(e){const[t,r]=N.useState(null),[i,o]=N.useState(null),[h,g]=N.useState(!1),[a,c]=N.useState("7d"),f=N.useCallback(async(u,m=!1)=>{g(!0),o(null);try{const w=await pR(tk(u),m);r(w)}catch(w){o(w instanceof Error?w.message:"Failed to fetch analytics")}finally{g(!1)}},[]);N.useEffect(()=>{e&&f(a)},[a,e,f]);const v=N.useCallback(()=>{f(a,!0)},[f,a]);return{data:t,error:i,loading:h,range:a,setRange:c,refresh:v}}function I2(e){var t,r,i="";if(typeof e=="string"||typeof e=="number")i+=e;else if(typeof e=="object")if(Array.isArray(e)){var o=e.length;for(t=0;t<o;t++)e[t]&&(r=I2(e[t]))&&(i&&(i+=" "),i+=r)}else for(r in e)e[r]&&(i&&(i+=" "),i+=r);return i}function vt(){for(var e,t,r=0,i="",o=arguments.length;r<o;r++)(e=arguments[r])&&(t=I2(e))&&(i&&(i+=" "),i+=t);return i}var ik=["dangerouslySetInnerHTML","onCopy","onCopyCapture","onCut","onCutCapture","onPaste","onPasteCapture","onCompositionEnd","onCompositionEndCapture","onCompositionStart","onCompositionStartCapture","onCompositionUpdate","onCompositionUpdateCapture","onFocus","onFocusCapture","onBlur","onBlurCapture","onChange","onChangeCapture","onBeforeInput","onBeforeInputCapture","onInput","onInputCapture","onReset","onResetCapture","onSubmit","onSubmitCapture","onInvalid","onInvalidCapture","onLoad","onLoadCapture","onError","onErrorCapture","onKeyDown","onKeyDownCapture","onKeyPress","onKeyPressCapture","onKeyUp","onKeyUpCapture","onAbort","onAbortCapture","onCanPlay","onCanPlayCapture","onCanPlayThrough","onCanPlayThroughCapture","onDurationChange","onDurationChangeCapture","onEmptied","onEmptiedCapture","onEncrypted","onEncryptedCapture","onEnded","onEndedCapture","onLoadedData","onLoadedDataCapture","onLoadedMetadata","onLoadedMetadataCapture","onLoadStart","onLoadStartCapture","onPause","onPauseCapture","onPlay","onPlayCapture","onPlaying","onPlayingCapture","onProgress","onProgressCapture","onRateChange","onRateChangeCapture","onSeeked","onSeekedCapture","onSeeking","onSeekingCapture","onStalled","onStalledCapture","onSuspend","onSuspendCapture","onTimeUpdate","onTimeUpdateCapture","onVolumeChange","onVolumeChangeCapture","onWaiting","onWaitingCapture","onAuxClick","onAuxClickCapture","onClick","onClickCapture","onContextMenu","onContextMenuCapture","onDoubleClick","onDoubleClickCapture","onDrag","onDragCapture","onDragEnd","onDragEndCapture","onDragEnter","onDragEnterCapture","onDragExit","onDragExitCapture","onDragLeave","onDragLeaveCapture","onDragOver","onDragOverCapture","onDragStart","onDragStartCapture","onDrop","onDropCapture","onMouseDown","onMouseDownCapture","onMouseEnter","onMouseLeave","onMouseMove","onMouseMoveCapture","onMouseOut","onMouseOutCapture","onMouseOver","onMouseOverCapture","onMouseUp","onMouseUpCapture","onSelect","onSelectCapture","onTouchCancel","onTouchCancelCapture","onTouchEnd","onTouchEndCapture","onTouchMove","onTouchMoveCapture","onTouchStart","onTouchStartCapture","onPointerDown","onPointerDownCapture","onPointerMove","onPointerMoveCapture","onPointerUp","onPointerUpCapture","onPointerCancel","onPointerCancelCapture","onPointerEnter","onPointerEnterCapture","onPointerLeave","onPointerLeaveCapture","onPointerOver","onPointerOverCapture","onPointerOut","onPointerOutCapture","onGotPointerCapture","onGotPointerCaptureCapture","onLostPointerCapture","onLostPointerCaptureCapture","onScroll","onScrollCapture","onWheel","onWheelCapture","onAnimationStart","onAnimationStartCapture","onAnimationEnd","onAnimationEndCapture","onAnimationIteration","onAnimationIterationCapture","onTransitionEnd","onTransitionEndCapture"];function R_(e){if(typeof e!="string")return!1;var t=ik;return t.includes(e)}var nk=["aria-activedescendant","aria-atomic","aria-autocomplete","aria-busy","aria-checked","aria-colcount","aria-colindex","aria-colspan","aria-controls","aria-current","aria-describedby","aria-details","aria-disabled","aria-errormessage","aria-expanded","aria-flowto","aria-haspopup","aria-hidden","aria-invalid","aria-keyshortcuts","aria-label","aria-labelledby","aria-level","aria-live","aria-modal","aria-multiline","aria-multiselectable","aria-orientation","aria-owns","aria-placeholder","aria-posinset","aria-pressed","aria-readonly","aria-relevant","aria-required","aria-roledescription","aria-rowcount","aria-rowindex","aria-rowspan","aria-selected","aria-setsize","aria-sort","aria-valuemax","aria-valuemin","aria-valuenow","aria-valuetext","className","color","height","id","lang","max","media","method","min","name","style","target","width","role","tabIndex","accentHeight","accumulate","additive","alignmentBaseline","allowReorder","alphabetic","amplitude","arabicForm","ascent","attributeName","attributeType","autoReverse","azimuth","baseFrequency","baselineShift","baseProfile","bbox","begin","bias","by","calcMode","capHeight","clip","clipPath","clipPathUnits","clipRule","colorInterpolation","colorInterpolationFilters","colorProfile","colorRendering","contentScriptType","contentStyleType","cursor","cx","cy","d","decelerate","descent","diffuseConstant","direction","display","divisor","dominantBaseline","dur","dx","dy","edgeMode","elevation","enableBackground","end","exponent","externalResourcesRequired","fill","fillOpacity","fillRule","filter","filterRes","filterUnits","floodColor","floodOpacity","focusable","fontFamily","fontSize","fontSizeAdjust","fontStretch","fontStyle","fontVariant","fontWeight","format","from","fx","fy","g1","g2","glyphName","glyphOrientationHorizontal","glyphOrientationVertical","glyphRef","gradientTransform","gradientUnits","hanging","horizAdvX","horizOriginX","href","ideographic","imageRendering","in2","in","intercept","k1","k2","k3","k4","k","kernelMatrix","kernelUnitLength","kerning","keyPoints","keySplines","keyTimes","lengthAdjust","letterSpacing","lightingColor","limitingConeAngle","local","markerEnd","markerHeight","markerMid","markerStart","markerUnits","markerWidth","mask","maskContentUnits","maskUnits","mathematical","mode","numOctaves","offset","opacity","operator","order","orient","orientation","origin","overflow","overlinePosition","overlineThickness","paintOrder","panose1","pathLength","patternContentUnits","patternTransform","patternUnits","pointerEvents","pointsAtX","pointsAtY","pointsAtZ","preserveAlpha","preserveAspectRatio","primitiveUnits","r","radius","refX","refY","renderingIntent","repeatCount","repeatDur","requiredExtensions","requiredFeatures","restart","result","rotate","rx","ry","seed","shapeRendering","slope","spacing","specularConstant","specularExponent","speed","spreadMethod","startOffset","stdDeviation","stemh","stemv","stitchTiles","stopColor","stopOpacity","strikethroughPosition","strikethroughThickness","string","stroke","strokeDasharray","strokeDashoffset","strokeLinecap","strokeLinejoin","strokeMiterlimit","strokeOpacity","strokeWidth","surfaceScale","systemLanguage","tableValues","targetX","targetY","textAnchor","textDecoration","textLength","textRendering","to","transform","u1","u2","underlinePosition","underlineThickness","unicode","unicodeBidi","unicodeRange","unitsPerEm","vAlphabetic","values","vectorEffect","version","vertAdvY","vertOriginX","vertOriginY","vHanging","vIdeographic","viewTarget","visibility","vMathematical","widths","wordSpacing","writingMode","x1","x2","x","xChannelSelector","xHeight","xlinkActuate","xlinkArcrole","xlinkHref","xlinkRole","xlinkShow","xlinkTitle","xlinkType","xmlBase","xmlLang","xmlns","xmlnsXlink","xmlSpace","y1","y2","y","yChannelSelector","z","zoomAndPan","ref","key","angle"],sk=new Set(nk);function N2(e){return typeof e!="string"?!1:sk.has(e)}function z2(e){return typeof e=="string"&&e.startsWith("data-")}function Vn(e){if(typeof e!="object"||e===null)return{};var t={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&(N2(r)||z2(r))&&(t[r]=e[r]);return t}function k_(e){if(e==null)return null;if(N.isValidElement(e)&&typeof e.props=="object"&&e.props!==null){var t=e.props;return Vn(t)}return typeof e=="object"&&!Array.isArray(e)?Vn(e):null}function ri(e){var t={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&(N2(r)||z2(r)||R_(r))&&(t[r]=e[r]);return t}var ak=["children","width","height","viewBox","className","style","title","desc"];function Pp(){return Pp=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var i in r)({}).hasOwnProperty.call(r,i)&&(e[i]=r[i])}return e},Pp.apply(null,arguments)}function ok(e,t){if(e==null)return{};var r,i,o=lk(e,t);if(Object.getOwnPropertySymbols){var h=Object.getOwnPropertySymbols(e);for(i=0;i<h.length;i++)r=h[i],t.indexOf(r)===-1&&{}.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}function lk(e,t){if(e==null)return{};var r={};for(var i in e)if({}.hasOwnProperty.call(e,i)){if(t.indexOf(i)!==-1)continue;r[i]=e[i]}return r}var H2=N.forwardRef((e,t)=>{var{children:r,width:i,height:o,viewBox:h,className:g,style:a,title:c,desc:f}=e,v=ok(e,ak),u=h||{width:i,height:o,x:0,y:0},m=vt("recharts-surface",g);return N.createElement("svg",Pp({},ri(v),{className:m,width:i,height:o,style:a,viewBox:"".concat(u.x," ").concat(u.y," ").concat(u.width," ").concat(u.height),ref:t}),N.createElement("title",null,c),N.createElement("desc",null,f),r)}),ck=["children","className"];function Bp(){return Bp=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var i in r)({}).hasOwnProperty.call(r,i)&&(e[i]=r[i])}return e},Bp.apply(null,arguments)}function uk(e,t){if(e==null)return{};var r,i,o=hk(e,t);if(Object.getOwnPropertySymbols){var h=Object.getOwnPropertySymbols(e);for(i=0;i<h.length;i++)r=h[i],t.indexOf(r)===-1&&{}.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}function hk(e,t){if(e==null)return{};var r={};for(var i in e)if({}.hasOwnProperty.call(e,i)){if(t.indexOf(i)!==-1)continue;r[i]=e[i]}return r}var Ri=N.forwardRef((e,t)=>{var{children:r,className:i}=e,o=uk(e,ck),h=vt("recharts-layer",i);return N.createElement("g",Bp({className:h},ri(o),{ref:t}),r)}),$2=v2(),fk=N.createContext(null);function lt(e){return function(){return e}}const U2=Math.cos,Gu=Math.sin,pi=Math.sqrt,Ku=Math.PI,Hh=2*Ku,jp=Math.PI,Ip=2*jp,xs=1e-6,dk=Ip-xs;function F2(e){this._+=e[0];for(let t=1,r=e.length;t<r;++t)this._+=arguments[t]+e[t]}function vk(e){let t=Math.floor(e);if(!(t>=0))throw new Error(`invalid digits: ${e}`);if(t>15)return F2;const r=10**t;return function(i){this._+=i[0];for(let o=1,h=i.length;o<h;++o)this._+=Math.round(arguments[o]*r)/r+i[o]}}class gk{constructor(t){this._x0=this._y0=this._x1=this._y1=null,this._="",this._append=t==null?F2:vk(t)}moveTo(t,r){this._append`M${this._x0=this._x1=+t},${this._y0=this._y1=+r}`}closePath(){this._x1!==null&&(this._x1=this._x0,this._y1=this._y0,this._append`Z`)}lineTo(t,r){this._append`L${this._x1=+t},${this._y1=+r}`}quadraticCurveTo(t,r,i,o){this._append`Q${+t},${+r},${this._x1=+i},${this._y1=+o}`}bezierCurveTo(t,r,i,o,h,g){this._append`C${+t},${+r},${+i},${+o},${this._x1=+h},${this._y1=+g}`}arcTo(t,r,i,o,h){if(t=+t,r=+r,i=+i,o=+o,h=+h,h<0)throw new Error(`negative radius: ${h}`);let g=this._x1,a=this._y1,c=i-t,f=o-r,v=g-t,u=a-r,m=v*v+u*u;if(this._x1===null)this._append`M${this._x1=t},${this._y1=r}`;else if(m>xs)if(!(Math.abs(u*c-f*v)>xs)||!h)this._append`L${this._x1=t},${this._y1=r}`;else{let w=i-g,C=o-a,_=c*c+f*f,d=w*w+C*C,y=Math.sqrt(_),b=Math.sqrt(m),S=h*Math.tan((jp-Math.acos((_+m-d)/(2*y*b)))/2),E=S/b,L=S/y;Math.abs(E-1)>xs&&this._append`L${t+E*v},${r+E*u}`,this._append`A${h},${h},0,0,${+(u*w>v*C)},${this._x1=t+L*c},${this._y1=r+L*f}`}}arc(t,r,i,o,h,g){if(t=+t,r=+r,i=+i,g=!!g,i<0)throw new Error(`negative radius: ${i}`);let a=i*Math.cos(o),c=i*Math.sin(o),f=t+a,v=r+c,u=1^g,m=g?o-h:h-o;this._x1===null?this._append`M${f},${v}`:(Math.abs(this._x1-f)>xs||Math.abs(this._y1-v)>xs)&&this._append`L${f},${v}`,i&&(m<0&&(m=m%Ip+Ip),m>dk?this._append`A${i},${i},0,1,${u},${t-a},${r-c}A${i},${i},0,1,${u},${this._x1=f},${this._y1=v}`:m>xs&&this._append`A${i},${i},0,${+(m>=jp)},${u},${this._x1=t+i*Math.cos(h)},${this._y1=r+i*Math.sin(h)}`)}rect(t,r,i,o){this._append`M${this._x0=this._x1=+t},${this._y0=this._y1=+r}h${i=+i}v${+o}h${-i}Z`}toString(){return this._}}function P_(e){let t=3;return e.digits=function(r){if(!arguments.length)return t;if(r==null)t=null;else{const i=Math.floor(r);if(!(i>=0))throw new RangeError(`invalid digits: ${r}`);t=i}return e},()=>new gk(t)}function B_(e){return typeof e=="object"&&"length"in e?e:Array.from(e)}function W2(e){this._context=e}W2.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._line?this._context.lineTo(e,t):this._context.moveTo(e,t);break;case 1:this._point=2;default:this._context.lineTo(e,t);break}}};function $h(e){return new W2(e)}function q2(e){return e[0]}function G2(e){return e[1]}function K2(e,t){var r=lt(!0),i=null,o=$h,h=null,g=P_(a);e=typeof e=="function"?e:e===void 0?q2:lt(e),t=typeof t=="function"?t:t===void 0?G2:lt(t);function a(c){var f,v=(c=B_(c)).length,u,m=!1,w;for(i==null&&(h=o(w=g())),f=0;f<=v;++f)!(f<v&&r(u=c[f],f,c))===m&&((m=!m)?h.lineStart():h.lineEnd()),m&&h.point(+e(u,f,c),+t(u,f,c));if(w)return h=null,w+""||null}return a.x=function(c){return arguments.length?(e=typeof c=="function"?c:lt(+c),a):e},a.y=function(c){return arguments.length?(t=typeof c=="function"?c:lt(+c),a):t},a.defined=function(c){return arguments.length?(r=typeof c=="function"?c:lt(!!c),a):r},a.curve=function(c){return arguments.length?(o=c,i!=null&&(h=o(i)),a):o},a.context=function(c){return arguments.length?(c==null?i=h=null:h=o(i=c),a):i},a}function bu(e,t,r){var i=null,o=lt(!0),h=null,g=$h,a=null,c=P_(f);e=typeof e=="function"?e:e===void 0?q2:lt(+e),t=typeof t=="function"?t:lt(t===void 0?0:+t),r=typeof r=="function"?r:r===void 0?G2:lt(+r);function f(u){var m,w,C,_=(u=B_(u)).length,d,y=!1,b,S=new Array(_),E=new Array(_);for(h==null&&(a=g(b=c())),m=0;m<=_;++m){if(!(m<_&&o(d=u[m],m,u))===y)if(y=!y)w=m,a.areaStart(),a.lineStart();else{for(a.lineEnd(),a.lineStart(),C=m-1;C>=w;--C)a.point(S[C],E[C]);a.lineEnd(),a.areaEnd()}y&&(S[m]=+e(d,m,u),E[m]=+t(d,m,u),a.point(i?+i(d,m,u):S[m],r?+r(d,m,u):E[m]))}if(b)return a=null,b+""||null}function v(){return K2().defined(o).curve(g).context(h)}return f.x=function(u){return arguments.length?(e=typeof u=="function"?u:lt(+u),i=null,f):e},f.x0=function(u){return arguments.length?(e=typeof u=="function"?u:lt(+u),f):e},f.x1=function(u){return arguments.length?(i=u==null?null:typeof u=="function"?u:lt(+u),f):i},f.y=function(u){return arguments.length?(t=typeof u=="function"?u:lt(+u),r=null,f):t},f.y0=function(u){return arguments.length?(t=typeof u=="function"?u:lt(+u),f):t},f.y1=function(u){return arguments.length?(r=u==null?null:typeof u=="function"?u:lt(+u),f):r},f.lineX0=f.lineY0=function(){return v().x(e).y(t)},f.lineY1=function(){return v().x(e).y(r)},f.lineX1=function(){return v().x(i).y(t)},f.defined=function(u){return arguments.length?(o=typeof u=="function"?u:lt(!!u),f):o},f.curve=function(u){return arguments.length?(g=u,h!=null&&(a=g(h)),f):g},f.context=function(u){return arguments.length?(u==null?h=a=null:a=g(h=u),f):h},f}class Y2{constructor(t,r){this._context=t,this._x=r}areaStart(){this._line=0}areaEnd(){this._line=NaN}lineStart(){this._point=0}lineEnd(){(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line}point(t,r){switch(t=+t,r=+r,this._point){case 0:{this._point=1,this._line?this._context.lineTo(t,r):this._context.moveTo(t,r);break}case 1:this._point=2;default:{this._x?this._context.bezierCurveTo(this._x0=(this._x0+t)/2,this._y0,this._x0,r,t,r):this._context.bezierCurveTo(this._x0,this._y0=(this._y0+r)/2,t,this._y0,t,r);break}}this._x0=t,this._y0=r}}function pk(e){return new Y2(e,!0)}function _k(e){return new Y2(e,!1)}const j_={draw(e,t){const r=pi(t/Ku);e.moveTo(r,0),e.arc(0,0,r,0,Hh)}},mk={draw(e,t){const r=pi(t/5)/2;e.moveTo(-3*r,-r),e.lineTo(-r,-r),e.lineTo(-r,-3*r),e.lineTo(r,-3*r),e.lineTo(r,-r),e.lineTo(3*r,-r),e.lineTo(3*r,r),e.lineTo(r,r),e.lineTo(r,3*r),e.lineTo(-r,3*r),e.lineTo(-r,r),e.lineTo(-3*r,r),e.closePath()}},V2=pi(1/3),yk=V2*2,bk={draw(e,t){const r=pi(t/yk),i=r*V2;e.moveTo(0,-r),e.lineTo(i,0),e.lineTo(0,r),e.lineTo(-i,0),e.closePath()}},Sk={draw(e,t){const r=pi(t),i=-r/2;e.rect(i,i,r,r)}},wk=.8908130915292852,X2=Gu(Ku/10)/Gu(7*Ku/10),Ck=Gu(Hh/10)*X2,xk=-U2(Hh/10)*X2,Ek={draw(e,t){const r=pi(t*wk),i=Ck*r,o=xk*r;e.moveTo(0,-r),e.lineTo(i,o);for(let h=1;h<5;++h){const g=Hh*h/5,a=U2(g),c=Gu(g);e.lineTo(c*r,-a*r),e.lineTo(a*i-c*o,c*i+a*o)}e.closePath()}},tg=pi(3),Ak={draw(e,t){const r=-pi(t/(tg*3));e.moveTo(0,r*2),e.lineTo(-tg*r,-r),e.lineTo(tg*r,-r),e.closePath()}},Zr=-.5,Qr=pi(3)/2,Np=1/pi(12),Mk=(Np/2+1)*3,Lk={draw(e,t){const r=pi(t/Mk),i=r/2,o=r*Np,h=i,g=r*Np+r,a=-h,c=g;e.moveTo(i,o),e.lineTo(h,g),e.lineTo(a,c),e.lineTo(Zr*i-Qr*o,Qr*i+Zr*o),e.lineTo(Zr*h-Qr*g,Qr*h+Zr*g),e.lineTo(Zr*a-Qr*c,Qr*a+Zr*c),e.lineTo(Zr*i+Qr*o,Zr*o-Qr*i),e.lineTo(Zr*h+Qr*g,Zr*g-Qr*h),e.lineTo(Zr*a+Qr*c,Zr*c-Qr*a),e.closePath()}};function Ok(e,t){let r=null,i=P_(o);e=typeof e=="function"?e:lt(e||j_),t=typeof t=="function"?t:lt(t===void 0?64:+t);function o(){let h;if(r||(r=h=i()),e.apply(this,arguments).draw(r,+t.apply(this,arguments)),h)return r=null,h+""||null}return o.type=function(h){return arguments.length?(e=typeof h=="function"?h:lt(h),o):e},o.size=function(h){return arguments.length?(t=typeof h=="function"?h:lt(+h),o):t},o.context=function(h){return arguments.length?(r=h??null,o):r},o}function Yu(){}function Vu(e,t,r){e._context.bezierCurveTo((2*e._x0+e._x1)/3,(2*e._y0+e._y1)/3,(e._x0+2*e._x1)/3,(e._y0+2*e._y1)/3,(e._x0+4*e._x1+t)/6,(e._y0+4*e._y1+r)/6)}function Z2(e){this._context=e}Z2.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},lineEnd:function(){switch(this._point){case 3:Vu(this,this._x1,this._y1);case 2:this._context.lineTo(this._x1,this._y1);break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._line?this._context.lineTo(e,t):this._context.moveTo(e,t);break;case 1:this._point=2;break;case 2:this._point=3,this._context.lineTo((5*this._x0+this._x1)/6,(5*this._y0+this._y1)/6);default:Vu(this,e,t);break}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=t}};function Tk(e){return new Z2(e)}function Q2(e){this._context=e}Q2.prototype={areaStart:Yu,areaEnd:Yu,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._y0=this._y1=this._y2=this._y3=this._y4=NaN,this._point=0},lineEnd:function(){switch(this._point){case 1:{this._context.moveTo(this._x2,this._y2),this._context.closePath();break}case 2:{this._context.moveTo((this._x2+2*this._x3)/3,(this._y2+2*this._y3)/3),this._context.lineTo((this._x3+2*this._x2)/3,(this._y3+2*this._y2)/3),this._context.closePath();break}case 3:{this.point(this._x2,this._y2),this.point(this._x3,this._y3),this.point(this._x4,this._y4);break}}},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._x2=e,this._y2=t;break;case 1:this._point=2,this._x3=e,this._y3=t;break;case 2:this._point=3,this._x4=e,this._y4=t,this._context.moveTo((this._x0+4*this._x1+e)/6,(this._y0+4*this._y1+t)/6);break;default:Vu(this,e,t);break}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=t}};function Dk(e){return new Q2(e)}function J2(e){this._context=e}J2.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===3)&&this._context.closePath(),this._line=1-this._line},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3;var r=(this._x0+4*this._x1+e)/6,i=(this._y0+4*this._y1+t)/6;this._line?this._context.lineTo(r,i):this._context.moveTo(r,i);break;case 3:this._point=4;default:Vu(this,e,t);break}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=t}};function Rk(e){return new J2(e)}function eE(e){this._context=e}eE.prototype={areaStart:Yu,areaEnd:Yu,lineStart:function(){this._point=0},lineEnd:function(){this._point&&this._context.closePath()},point:function(e,t){e=+e,t=+t,this._point?this._context.lineTo(e,t):(this._point=1,this._context.moveTo(e,t))}};function kk(e){return new eE(e)}function xS(e){return e<0?-1:1}function ES(e,t,r){var i=e._x1-e._x0,o=t-e._x1,h=(e._y1-e._y0)/(i||o<0&&-0),g=(r-e._y1)/(o||i<0&&-0),a=(h*o+g*i)/(i+o);return(xS(h)+xS(g))*Math.min(Math.abs(h),Math.abs(g),.5*Math.abs(a))||0}function AS(e,t){var r=e._x1-e._x0;return r?(3*(e._y1-e._y0)/r-t)/2:t}function rg(e,t,r){var i=e._x0,o=e._y0,h=e._x1,g=e._y1,a=(h-i)/3;e._context.bezierCurveTo(i+a,o+a*t,h-a,g-a*r,h,g)}function Xu(e){this._context=e}Xu.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=this._t0=NaN,this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x1,this._y1);break;case 3:rg(this,this._t0,AS(this,this._t0));break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(e,t){var r=NaN;if(e=+e,t=+t,!(e===this._x1&&t===this._y1)){switch(this._point){case 0:this._point=1,this._line?this._context.lineTo(e,t):this._context.moveTo(e,t);break;case 1:this._point=2;break;case 2:this._point=3,rg(this,AS(this,r=ES(this,e,t)),r);break;default:rg(this,this._t0,r=ES(this,e,t));break}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=t,this._t0=r}}};function tE(e){this._context=new rE(e)}(tE.prototype=Object.create(Xu.prototype)).point=function(e,t){Xu.prototype.point.call(this,t,e)};function rE(e){this._context=e}rE.prototype={moveTo:function(e,t){this._context.moveTo(t,e)},closePath:function(){this._context.closePath()},lineTo:function(e,t){this._context.lineTo(t,e)},bezierCurveTo:function(e,t,r,i,o,h){this._context.bezierCurveTo(t,e,i,r,h,o)}};function Pk(e){return new Xu(e)}function Bk(e){return new tE(e)}function iE(e){this._context=e}iE.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x=[],this._y=[]},lineEnd:function(){var e=this._x,t=this._y,r=e.length;if(r)if(this._line?this._context.lineTo(e[0],t[0]):this._context.moveTo(e[0],t[0]),r===2)this._context.lineTo(e[1],t[1]);else for(var i=MS(e),o=MS(t),h=0,g=1;g<r;++h,++g)this._context.bezierCurveTo(i[0][h],o[0][h],i[1][h],o[1][h],e[g],t[g]);(this._line||this._line!==0&&r===1)&&this._context.closePath(),this._line=1-this._line,this._x=this._y=null},point:function(e,t){this._x.push(+e),this._y.push(+t)}};function MS(e){var t,r=e.length-1,i,o=new Array(r),h=new Array(r),g=new Array(r);for(o[0]=0,h[0]=2,g[0]=e[0]+2*e[1],t=1;t<r-1;++t)o[t]=1,h[t]=4,g[t]=4*e[t]+2*e[t+1];for(o[r-1]=2,h[r-1]=7,g[r-1]=8*e[r-1]+e[r],t=1;t<r;++t)i=o[t]/h[t-1],h[t]-=i,g[t]-=i*g[t-1];for(o[r-1]=g[r-1]/h[r-1],t=r-2;t>=0;--t)o[t]=(g[t]-o[t+1])/h[t];for(h[r-1]=(e[r]+o[r-1])/2,t=0;t<r-1;++t)h[t]=2*e[t+1]-o[t+1];return[o,h]}function jk(e){return new iE(e)}function Uh(e,t){this._context=e,this._t=t}Uh.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x=this._y=NaN,this._point=0},lineEnd:function(){0<this._t&&this._t<1&&this._point===2&&this._context.lineTo(this._x,this._y),(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line>=0&&(this._t=1-this._t,this._line=1-this._line)},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._line?this._context.lineTo(e,t):this._context.moveTo(e,t);break;case 1:this._point=2;default:{if(this._t<=0)this._context.lineTo(this._x,t),this._context.lineTo(e,t);else{var r=this._x*(1-this._t)+e*this._t;this._context.lineTo(r,this._y),this._context.lineTo(r,t)}break}}this._x=e,this._y=t}};function Ik(e){return new Uh(e,.5)}function Nk(e){return new Uh(e,0)}function zk(e){return new Uh(e,1)}function Bs(e,t){if((g=e.length)>1)for(var r=1,i,o,h=e[t[0]],g,a=h.length;r<g;++r)for(o=h,h=e[t[r]],i=0;i<a;++i)h[i][1]+=h[i][0]=isNaN(o[i][1])?o[i][0]:o[i][1]}function zp(e){for(var t=e.length,r=new Array(t);--t>=0;)r[t]=t;return r}function Hk(e,t){return e[t]}function $k(e){const t=[];return t.key=e,t}function Uk(){var e=lt([]),t=zp,r=Bs,i=Hk;function o(h){var g=Array.from(e.apply(this,arguments),$k),a,c=g.length,f=-1,v;for(const u of h)for(a=0,++f;a<c;++a)(g[a][f]=[0,+i(u,g[a].key,f,h)]).data=u;for(a=0,v=B_(t(g));a<c;++a)g[v[a]].index=a;return r(g,v),g}return o.keys=function(h){return arguments.length?(e=typeof h=="function"?h:lt(Array.from(h)),o):e},o.value=function(h){return arguments.length?(i=typeof h=="function"?h:lt(+h),o):i},o.order=function(h){return arguments.length?(t=h==null?zp:typeof h=="function"?h:lt(Array.from(h)),o):t},o.offset=function(h){return arguments.length?(r=h??Bs,o):r},o}function Fk(e,t){if((i=e.length)>0){for(var r,i,o=0,h=e[0].length,g;o<h;++o){for(g=r=0;r<i;++r)g+=e[r][o][1]||0;if(g)for(r=0;r<i;++r)e[r][o][1]/=g}Bs(e,t)}}function Wk(e,t){if((o=e.length)>0){for(var r=0,i=e[t[0]],o,h=i.length;r<h;++r){for(var g=0,a=0;g<o;++g)a+=e[g][r][1]||0;i[r][1]+=i[r][0]=-a/2}Bs(e,t)}}function qk(e,t){if(!(!((g=e.length)>0)||!((h=(o=e[t[0]]).length)>0))){for(var r=0,i=1,o,h,g;i<h;++i){for(var a=0,c=0,f=0;a<g;++a){for(var v=e[t[a]],u=v[i][1]||0,m=v[i-1][1]||0,w=(u-m)/2,C=0;C<a;++C){var _=e[t[C]],d=_[i][1]||0,y=_[i-1][1]||0;w+=d-y}c+=u,f+=w*u}o[i-1][1]+=o[i-1][0]=r,c&&(r-=f/c)}o[i-1][1]+=o[i-1][0]=r,Bs(e,t)}}var ig={},ng={},LS;function Gk(){return LS||(LS=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(r){return r==="__proto__"}e.isUnsafeProperty=t})(ng)),ng}var sg={},OS;function nE(){return OS||(OS=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(r){switch(typeof r){case"number":case"symbol":return!1;case"string":return r.includes(".")||r.includes("[")||r.includes("]")}}e.isDeepKey=t})(sg)),sg}var ag={},TS;function I_(){return TS||(TS=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(r){var i;return typeof r=="string"||typeof r=="symbol"?r:Object.is((i=r==null?void 0:r.valueOf)==null?void 0:i.call(r),-0)?"-0":String(r)}e.toKey=t})(ag)),ag}var og={},lg={},DS;function Kk(){return DS||(DS=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(r){if(r==null)return"";if(typeof r=="string")return r;if(Array.isArray(r))return r.map(t).join(",");const i=String(r);return i==="0"&&Object.is(Number(r),-0)?"-0":i}e.toString=t})(lg)),lg}var RS;function N_(){return RS||(RS=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=Kk(),r=I_();function i(o){if(Array.isArray(o))return o.map(r.toKey);if(typeof o=="symbol")return[o];o=t.toString(o);const h=[],g=o.length;if(g===0)return h;let a=0,c="",f="",v=!1;for(o.charCodeAt(0)===46&&(h.push(""),a++);a<g;){const u=o[a];f?u==="\\"&&a+1<g?(a++,c+=o[a]):u===f?f="":c+=u:v?u==='"'||u==="'"?f=u:u==="]"?(v=!1,h.push(c),c=""):c+=u:u==="["?(v=!0,c&&(h.push(c),c="")):u==="."?c&&(h.push(c),c=""):c+=u,a++}return c&&h.push(c),h}e.toPath=i})(og)),og}var kS;function z_(){return kS||(kS=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=Gk(),r=nE(),i=I_(),o=N_();function h(a,c,f){if(a==null)return f;switch(typeof c){case"string":{if(t.isUnsafeProperty(c))return f;const v=a[c];return v===void 0?r.isDeepKey(c)?h(a,o.toPath(c),f):f:v}case"number":case"symbol":{typeof c=="number"&&(c=i.toKey(c));const v=a[c];return v===void 0?f:v}default:{if(Array.isArray(c))return g(a,c,f);if(Object.is(c==null?void 0:c.valueOf(),-0)?c="-0":c=String(c),t.isUnsafeProperty(c))return f;const v=a[c];return v===void 0?f:v}}}function g(a,c,f){if(c.length===0)return f;let v=a;for(let u=0;u<c.length;u++){if(v==null||t.isUnsafeProperty(c[u]))return f;v=v[c[u]]}return v===void 0?f:v}e.get=h})(ig)),ig}var cg,PS;function Yk(){return PS||(PS=1,cg=z_().get),cg}var Vk=Yk();const Ya=Qn(Vk);var Xk=4;function Gn(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:Xk,r=10**t,i=Math.round(e*r)/r;return Object.is(i,-0)?0:i}function xt(e){for(var t=arguments.length,r=new Array(t>1?t-1:0),i=1;i<t;i++)r[i-1]=arguments[i];return e.reduce((o,h,g)=>{var a=r[g-1];return typeof a=="string"?o+a+h:a!==void 0?o+Gn(a)+h:o+h},"")}var Pr=e=>e===0?0:e>0?1:-1,ki=e=>typeof e=="number"&&e!=+e,js=e=>typeof e=="string"&&e.indexOf("%")===e.length-1,Te=e=>(typeof e=="number"||e instanceof Number)&&!ki(e),Pi=e=>Te(e)||typeof e=="string",Zk=0,Ll=e=>{var t=++Zk;return"".concat(e||"").concat(t)},vi=function(t,r){var i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0,o=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1;if(!Te(t)&&typeof t!="string")return i;var h;if(js(t)){if(r==null)return i;var g=t.indexOf("%");h=r*parseFloat(t.slice(0,g))/100}else h=+t;return ki(h)&&(h=i),o&&r!=null&&h>r&&(h=r),h},sE=e=>{if(!Array.isArray(e))return!1;for(var t=e.length,r={},i=0;i<t;i++)if(!r[String(e[i])])r[String(e[i])]=!0;else return!0;return!1};function nr(e,t,r){return Te(e)&&Te(t)?Gn(e+r*(t-e)):t}function Qk(e,t,r){if(!(!e||!e.length))return e.find(i=>i&&(typeof t=="function"?t(i):Ya(i,t))===r)}var Nt=e=>e===null||typeof e>"u",Fl=e=>Nt(e)?e:"".concat(e.charAt(0).toUpperCase()).concat(e.slice(1));function Mi(e){return e!=null}function ao(){}var Jk=["type","size","sizeType"];function Hp(){return Hp=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var i in r)({}).hasOwnProperty.call(r,i)&&(e[i]=r[i])}return e},Hp.apply(null,arguments)}function BS(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter(function(o){return Object.getOwnPropertyDescriptor(e,o).enumerable})),r.push.apply(r,i)}return r}function jS(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?BS(Object(r),!0).forEach(function(i){eP(e,i,r[i])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):BS(Object(r)).forEach(function(i){Object.defineProperty(e,i,Object.getOwnPropertyDescriptor(r,i))})}return e}function eP(e,t,r){return(t=tP(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function tP(e){var t=rP(e,"string");return typeof t=="symbol"?t:t+""}function rP(e,t){if(typeof e!="object"||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var i=r.call(e,t);if(typeof i!="object")return i;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function iP(e,t){if(e==null)return{};var r,i,o=nP(e,t);if(Object.getOwnPropertySymbols){var h=Object.getOwnPropertySymbols(e);for(i=0;i<h.length;i++)r=h[i],t.indexOf(r)===-1&&{}.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}function nP(e,t){if(e==null)return{};var r={};for(var i in e)if({}.hasOwnProperty.call(e,i)){if(t.indexOf(i)!==-1)continue;r[i]=e[i]}return r}var aE={symbolCircle:j_,symbolCross:mk,symbolDiamond:bk,symbolSquare:Sk,symbolStar:Ek,symbolTriangle:Ak,symbolWye:Lk},sP=Math.PI/180,aP=e=>{var t="symbol".concat(Fl(e));return aE[t]||j_},oP=(e,t,r)=>{if(t==="area")return e;switch(r){case"cross":return 5*e*e/9;case"diamond":return .5*e*e/Math.sqrt(3);case"square":return e*e;case"star":{var i=18*sP;return 1.25*e*e*(Math.tan(i)-Math.tan(i*2)*Math.tan(i)**2)}case"triangle":return Math.sqrt(3)*e*e/4;case"wye":return(21-10*Math.sqrt(3))*e*e/8;default:return Math.PI*e*e/4}},lP=(e,t)=>{aE["symbol".concat(Fl(e))]=t},oE=e=>{var{type:t="circle",size:r=64,sizeType:i="area"}=e,o=iP(e,Jk),h=jS(jS({},o),{},{type:t,size:r,sizeType:i}),g="circle";typeof t=="string"&&(g=t);var a=()=>{var m=aP(g),w=Ok().type(m).size(oP(r,i,g)),C=w();if(C!==null)return C},{className:c,cx:f,cy:v}=h,u=ri(h);return Te(f)&&Te(v)&&Te(r)?N.createElement("path",Hp({},u,{className:vt("recharts-symbols",c),transform:"translate(".concat(f,", ").concat(v,")"),d:a()})):null};oE.registerSymbol=lP;var lE=e=>"radius"in e&&"startAngle"in e&&"endAngle"in e,cP=(e,t)=>{if(!e||typeof e=="function"||typeof e=="boolean")return null;var r=e;if(N.isValidElement(e)&&(r=e.props),typeof r!="object"&&typeof r!="function")return null;var i={};return Object.keys(r).forEach(o=>{R_(o)&&typeof r[o]=="function"&&(i[o]=(h=>r[o](r,h)))}),i},uP=(e,t,r)=>i=>(e(t,r,i),null),H_=(e,t,r)=>{if(e===null||typeof e!="object"&&typeof e!="function")return null;var i=null;return Object.keys(e).forEach(o=>{var h=e[o];R_(o)&&typeof h=="function"&&(i||(i={}),i[o]=uP(h,t,r))}),i};function IS(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter(function(o){return Object.getOwnPropertyDescriptor(e,o).enumerable})),r.push.apply(r,i)}return r}function hP(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?IS(Object(r),!0).forEach(function(i){fP(e,i,r[i])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):IS(Object(r)).forEach(function(i){Object.defineProperty(e,i,Object.getOwnPropertyDescriptor(r,i))})}return e}function fP(e,t,r){return(t=dP(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function dP(e){var t=vP(e,"string");return typeof t=="symbol"?t:t+""}function vP(e,t){if(typeof e!="object"||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var i=r.call(e,t);if(typeof i!="object")return i;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function ni(e,t){var r=hP({},e),i=t,o=Object.keys(t),h=o.reduce((g,a)=>(g[a]===void 0&&i[a]!==void 0&&(g[a]=i[a]),g),r);return h}var ug={},hg={},NS;function gP(){return NS||(NS=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(r,i){const o=new Map;for(let h=0;h<r.length;h++){const g=r[h],a=i(g,h,r);o.has(a)||o.set(a,g)}return Array.from(o.values())}e.uniqBy=t})(hg)),hg}var fg={},zS;function pP(){return zS||(zS=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(r,i){return function(...o){return r.apply(this,o.slice(0,i))}}e.ary=t})(fg)),fg}var dg={},HS;function cE(){return HS||(HS=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(r){return r}e.identity=t})(dg)),dg}var vg={},gg={},pg={},$S;function _P(){return $S||($S=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(r){return Number.isSafeInteger(r)&&r>=0}e.isLength=t})(pg)),pg}var US;function uE(){return US||(US=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=_P();function r(i){return i!=null&&typeof i!="function"&&t.isLength(i.length)}e.isArrayLike=r})(gg)),gg}var _g={},FS;function mP(){return FS||(FS=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(r){return typeof r=="object"&&r!==null}e.isObjectLike=t})(_g)),_g}var WS;function yP(){return WS||(WS=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=uE(),r=mP();function i(o){return r.isObjectLike(o)&&t.isArrayLike(o)}e.isArrayLikeObject=i})(vg)),vg}var mg={},yg={},qS;function bP(){return qS||(qS=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=z_();function r(i){return function(o){return t.get(o,i)}}e.property=r})(yg)),yg}var bg={},Sg={},wg={},Cg={},GS;function hE(){return GS||(GS=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(r){return r!==null&&(typeof r=="object"||typeof r=="function")}e.isObject=t})(Cg)),Cg}var xg={},KS;function fE(){return KS||(KS=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(r){return r==null||typeof r!="object"&&typeof r!="function"}e.isPrimitive=t})(xg)),xg}var Eg={},YS;function dE(){return YS||(YS=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(r,i){return r===i||Number.isNaN(r)&&Number.isNaN(i)}e.isEqualsSameValueZero=t})(Eg)),Eg}var VS;function SP(){return VS||(VS=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=hE(),r=fE(),i=dE();function o(v,u,m){return typeof m!="function"?o(v,u,()=>{}):h(v,u,function w(C,_,d,y,b,S){const E=m(C,_,d,y,b,S);return E!==void 0?!!E:h(C,_,w,S)},new Map)}function h(v,u,m,w){if(u===v)return!0;switch(typeof u){case"object":return g(v,u,m,w);case"function":return Object.keys(u).length>0?h(v,{...u},m,w):i.isEqualsSameValueZero(v,u);default:return t.isObject(v)?typeof u=="string"?u==="":!0:i.isEqualsSameValueZero(v,u)}}function g(v,u,m,w){if(u==null)return!0;if(Array.isArray(u))return c(v,u,m,w);if(u instanceof Map)return a(v,u,m,w);if(u instanceof Set)return f(v,u,m,w);const C=Object.keys(u);if(v==null||r.isPrimitive(v))return C.length===0;if(C.length===0)return!0;if(w!=null&&w.has(u))return w.get(u)===v;w==null||w.set(u,v);try{for(let _=0;_<C.length;_++){const d=C[_];if(!r.isPrimitive(v)&&!(d in v)||u[d]===void 0&&v[d]!==void 0||u[d]===null&&v[d]!==null||!m(v[d],u[d],d,v,u,w))return!1}return!0}finally{w==null||w.delete(u)}}function a(v,u,m,w){if(u.size===0)return!0;if(!(v instanceof Map))return!1;for(const[C,_]of u.entries()){const d=v.get(C);if(m(d,_,C,v,u,w)===!1)return!1}return!0}function c(v,u,m,w){if(u.length===0)return!0;if(!Array.isArray(v))return!1;const C=new Set;for(let _=0;_<u.length;_++){const d=u[_];let y=!1;for(let b=0;b<v.length;b++){if(C.has(b))continue;const S=v[b];let E=!1;if(m(S,d,_,v,u,w)&&(E=!0),E){C.add(b),y=!0;break}}if(!y)return!1}return!0}function f(v,u,m,w){return u.size===0?!0:v instanceof Set?c([...v],[...u],m,w):!1}e.isMatchWith=o,e.isSetMatch=f})(wg)),wg}var XS;function vE(){return XS||(XS=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=SP();function r(i,o){return t.isMatchWith(i,o,()=>{})}e.isMatch=r})(Sg)),Sg}var Ag={},Mg={},Lg={},ZS;function wP(){return ZS||(ZS=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(r){return Object.getOwnPropertySymbols(r).filter(i=>Object.prototype.propertyIsEnumerable.call(r,i))}e.getSymbols=t})(Lg)),Lg}var Og={},QS;function $_(){return QS||(QS=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(r){return r==null?r===void 0?"[object Undefined]":"[object Null]":Object.prototype.toString.call(r)}e.getTag=t})(Og)),Og}var Tg={},JS;function gE(){return JS||(JS=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t="[object RegExp]",r="[object String]",i="[object Number]",o="[object Boolean]",h="[object Arguments]",g="[object Symbol]",a="[object Date]",c="[object Map]",f="[object Set]",v="[object Array]",u="[object Function]",m="[object ArrayBuffer]",w="[object Object]",C="[object Error]",_="[object DataView]",d="[object Uint8Array]",y="[object Uint8ClampedArray]",b="[object Uint16Array]",S="[object Uint32Array]",E="[object BigUint64Array]",L="[object Int8Array]",x="[object Int16Array]",O="[object Int32Array]",M="[object BigInt64Array]",D="[object Float32Array]",k="[object Float64Array]";e.argumentsTag=h,e.arrayBufferTag=m,e.arrayTag=v,e.bigInt64ArrayTag=M,e.bigUint64ArrayTag=E,e.booleanTag=o,e.dataViewTag=_,e.dateTag=a,e.errorTag=C,e.float32ArrayTag=D,e.float64ArrayTag=k,e.functionTag=u,e.int16ArrayTag=x,e.int32ArrayTag=O,e.int8ArrayTag=L,e.mapTag=c,e.numberTag=i,e.objectTag=w,e.regexpTag=t,e.setTag=f,e.stringTag=r,e.symbolTag=g,e.uint16ArrayTag=b,e.uint32ArrayTag=S,e.uint8ArrayTag=d,e.uint8ClampedArrayTag=y})(Tg)),Tg}var Dg={},ew;function CP(){return ew||(ew=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(r){return ArrayBuffer.isView(r)&&!(r instanceof DataView)}e.isTypedArray=t})(Dg)),Dg}var tw;function pE(){return tw||(tw=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=wP(),r=$_(),i=gE(),o=fE(),h=CP();function g(v,u){return a(v,void 0,v,new Map,u)}function a(v,u,m,w=new Map,C=void 0){const _=C==null?void 0:C(v,u,m,w);if(_!==void 0)return _;if(o.isPrimitive(v))return v;if(w.has(v))return w.get(v);if(Array.isArray(v)){const d=new Array(v.length);w.set(v,d);for(let y=0;y<v.length;y++)d[y]=a(v[y],y,m,w,C);return Object.hasOwn(v,"index")&&(d.index=v.index),Object.hasOwn(v,"input")&&(d.input=v.input),d}if(v instanceof Date)return new Date(v.getTime());if(v instanceof RegExp){const d=new RegExp(v.source,v.flags);return d.lastIndex=v.lastIndex,d}if(v instanceof Map){const d=new Map;w.set(v,d);for(const[y,b]of v)d.set(y,a(b,y,m,w,C));return d}if(v instanceof Set){const d=new Set;w.set(v,d);for(const y of v)d.add(a(y,void 0,m,w,C));return d}if(typeof Buffer<"u"&&Buffer.isBuffer(v))return v.subarray();if(h.isTypedArray(v)){const d=new(Object.getPrototypeOf(v)).constructor(v.length);w.set(v,d);for(let y=0;y<v.length;y++)d[y]=a(v[y],y,m,w,C);return d}if(v instanceof ArrayBuffer||typeof SharedArrayBuffer<"u"&&v instanceof SharedArrayBuffer)return v.slice(0);if(v instanceof DataView){const d=new DataView(v.buffer.slice(0),v.byteOffset,v.byteLength);return w.set(v,d),c(d,v,m,w,C),d}if(typeof File<"u"&&v instanceof File){const d=new File([v],v.name,{type:v.type});return w.set(v,d),c(d,v,m,w,C),d}if(typeof Blob<"u"&&v instanceof Blob){const d=new Blob([v],{type:v.type});return w.set(v,d),c(d,v,m,w,C),d}if(v instanceof Error){const d=structuredClone(v);return w.set(v,d),d.message=v.message,d.name=v.name,d.stack=v.stack,d.cause=v.cause,d.constructor=v.constructor,c(d,v,m,w,C),d}if(v instanceof Boolean){const d=new Boolean(v.valueOf());return w.set(v,d),c(d,v,m,w,C),d}if(v instanceof Number){const d=new Number(v.valueOf());return w.set(v,d),c(d,v,m,w,C),d}if(v instanceof String){const d=new String(v.valueOf());return w.set(v,d),c(d,v,m,w,C),d}if(typeof v=="object"&&f(v)){const d=Object.create(Object.getPrototypeOf(v));return w.set(v,d),c(d,v,m,w,C),d}return v}function c(v,u,m=v,w,C){const _=[...Object.keys(u),...t.getSymbols(u)];for(let d=0;d<_.length;d++){const y=_[d],b=Object.getOwnPropertyDescriptor(v,y);(b==null||b.writable)&&(v[y]=a(u[y],y,m,w,C))}}function f(v){switch(r.getTag(v)){case i.argumentsTag:case i.arrayTag:case i.arrayBufferTag:case i.dataViewTag:case i.booleanTag:case i.dateTag:case i.float32ArrayTag:case i.float64ArrayTag:case i.int8ArrayTag:case i.int16ArrayTag:case i.int32ArrayTag:case i.mapTag:case i.numberTag:case i.objectTag:case i.regexpTag:case i.setTag:case i.stringTag:case i.symbolTag:case i.uint8ArrayTag:case i.uint8ClampedArrayTag:case i.uint16ArrayTag:case i.uint32ArrayTag:return!0;default:return!1}}e.cloneDeepWith=g,e.cloneDeepWithImpl=a,e.copyProperties=c})(Mg)),Mg}var rw;function xP(){return rw||(rw=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=pE();function r(i){return t.cloneDeepWithImpl(i,void 0,i,new Map,void 0)}e.cloneDeep=r})(Ag)),Ag}var iw;function EP(){return iw||(iw=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=vE(),r=xP();function i(o){return o=r.cloneDeep(o),h=>t.isMatch(h,o)}e.matches=i})(bg)),bg}var Rg={},kg={},Pg={},nw;function AP(){return nw||(nw=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=pE(),r=$_(),i=gE();function o(h,g){return t.cloneDeepWith(h,(a,c,f,v)=>{const u=g==null?void 0:g(a,c,f,v);if(u!==void 0)return u;if(typeof h=="object"){if(r.getTag(h)===i.objectTag&&typeof h.constructor!="function"){const m={};return v.set(h,m),t.copyProperties(m,h,f,v),m}switch(Object.prototype.toString.call(h)){case i.numberTag:case i.stringTag:case i.booleanTag:{const m=new h.constructor(h==null?void 0:h.valueOf());return t.copyProperties(m,h),m}case i.argumentsTag:{const m={};return t.copyProperties(m,h),m.length=h.length,m[Symbol.iterator]=h[Symbol.iterator],m}default:return}}})}e.cloneDeepWith=o})(Pg)),Pg}var sw;function MP(){return sw||(sw=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=AP();function r(i){return t.cloneDeepWith(i)}e.cloneDeep=r})(kg)),kg}var Bg={},jg={},aw;function _E(){return aw||(aw=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=/^(?:0|[1-9]\d*)$/;function r(i,o=Number.MAX_SAFE_INTEGER){switch(typeof i){case"number":return Number.isInteger(i)&&i>=0&&i<o;case"symbol":return!1;case"string":return t.test(i)}}e.isIndex=r})(jg)),jg}var Ig={},ow;function LP(){return ow||(ow=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=$_();function r(i){return i!==null&&typeof i=="object"&&t.getTag(i)==="[object Arguments]"}e.isArguments=r})(Ig)),Ig}var lw;function OP(){return lw||(lw=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=nE(),r=_E(),i=LP(),o=N_();function h(g,a){let c;if(Array.isArray(a)?c=a:typeof a=="string"&&t.isDeepKey(a)&&(g==null?void 0:g[a])==null?c=o.toPath(a):c=[a],c.length===0)return!1;let f=g;for(let v=0;v<c.length;v++){const u=c[v];if((f==null||!Object.hasOwn(f,u))&&!((Array.isArray(f)||i.isArguments(f))&&r.isIndex(u)&&u<f.length))return!1;f=f[u]}return!0}e.has=h})(Bg)),Bg}var cw;function TP(){return cw||(cw=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=vE(),r=I_(),i=MP(),o=z_(),h=OP();function g(a,c){switch(typeof a){case"object":{Object.is(a==null?void 0:a.valueOf(),-0)&&(a="-0");break}case"number":{a=r.toKey(a);break}}return c=i.cloneDeep(c),function(f){const v=o.get(f,a);return v===void 0?h.has(f,a):c===void 0?v===void 0:t.isMatch(v,c)}}e.matchesProperty=g})(Rg)),Rg}var uw;function DP(){return uw||(uw=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=cE(),r=bP(),i=EP(),o=TP();function h(g){if(g==null)return t.identity;switch(typeof g){case"function":return g;case"object":return Array.isArray(g)&&g.length===2?o.matchesProperty(g[0],g[1]):i.matches(g);case"string":case"symbol":case"number":return r.property(g)}}e.iteratee=h})(mg)),mg}var hw;function RP(){return hw||(hw=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=gP(),r=pP(),i=cE(),o=yP(),h=DP();function g(a,c=i.identity){return o.isArrayLikeObject(a)?t.uniqBy(Array.from(a),r.ary(h.iteratee(c),1)):[]}e.uniqBy=g})(ug)),ug}var Ng,fw;function kP(){return fw||(fw=1,Ng=RP().uniqBy),Ng}var PP=kP();const dw=Qn(PP);function BP(e,t,r){return t===!0?dw(e,r):typeof t=="function"?dw(e,t):e}var zg={exports:{}},Hg={},$g={exports:{}},Ug={};/**
|
|
135
135
|
* @license React
|
|
136
136
|
* use-sync-external-store-shim.production.js
|
|
137
137
|
*
|
|
@@ -196,4 +196,4 @@ void main() {
|
|
|
196
196
|
* This source code is licensed under the MIT license found in the
|
|
197
197
|
* LICENSE file in the root directory of this source tree.
|
|
198
198
|
*/var M5;function zU(){if(M5)return nt;M5=1;var e=Symbol.for("react.transitional.element"),t=Symbol.for("react.portal"),r=Symbol.for("react.fragment"),i=Symbol.for("react.strict_mode"),o=Symbol.for("react.profiler"),h=Symbol.for("react.consumer"),g=Symbol.for("react.context"),a=Symbol.for("react.forward_ref"),c=Symbol.for("react.suspense"),f=Symbol.for("react.suspense_list"),v=Symbol.for("react.memo"),u=Symbol.for("react.lazy"),m=Symbol.for("react.view_transition"),w=Symbol.for("react.client.reference");function C(_){if(typeof _=="object"&&_!==null){var d=_.$$typeof;switch(d){case e:switch(_=_.type,_){case r:case o:case i:case c:case f:case m:return _;default:switch(_=_&&_.$$typeof,_){case g:case a:case u:case v:return _;case h:return _;default:return d}}case t:return d}}}return nt.ContextConsumer=h,nt.ContextProvider=g,nt.Element=e,nt.ForwardRef=a,nt.Fragment=r,nt.Lazy=u,nt.Memo=v,nt.Portal=t,nt.Profiler=o,nt.StrictMode=i,nt.Suspense=c,nt.SuspenseList=f,nt.isContextConsumer=function(_){return C(_)===h},nt.isContextProvider=function(_){return C(_)===g},nt.isElement=function(_){return typeof _=="object"&&_!==null&&_.$$typeof===e},nt.isForwardRef=function(_){return C(_)===a},nt.isFragment=function(_){return C(_)===r},nt.isLazy=function(_){return C(_)===u},nt.isMemo=function(_){return C(_)===v},nt.isPortal=function(_){return C(_)===t},nt.isProfiler=function(_){return C(_)===o},nt.isStrictMode=function(_){return C(_)===i},nt.isSuspense=function(_){return C(_)===c},nt.isSuspenseList=function(_){return C(_)===f},nt.isValidElementType=function(_){return typeof _=="string"||typeof _=="function"||_===r||_===o||_===i||_===c||_===f||typeof _=="object"&&_!==null&&(_.$$typeof===u||_.$$typeof===v||_.$$typeof===g||_.$$typeof===h||_.$$typeof===a||_.$$typeof===w||_.getModuleId!==void 0)},nt.typeOf=C,nt}var L5;function HU(){return L5||(L5=1,Ap.exports=zU()),Ap.exports}var $U=HU(),O5=e=>typeof e=="string"?e:e?e.displayName||e.name||"Component":"",T5=null,Mp=null,eO=e=>{if(e===T5&&Array.isArray(Mp))return Mp;var t=[];return N.Children.forEach(e,r=>{Nt(r)||($U.isFragment(r)?t=t.concat(eO(r.props.children)):t.push(r))}),Mp=t,T5=e,t};function UU(e,t){var r=[],i=[];return Array.isArray(t)?i=t.map(o=>O5(o)):i=[O5(t)],eO(e).forEach(o=>{var h=Ya(o,"type.displayName")||Ya(o,"type.name");h&&i.indexOf(h)!==-1&&r.push(o)}),r}var Lp={},D5;function FU(){return D5||(D5=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(r){var o;if(typeof r!="object"||r==null)return!1;if(Object.getPrototypeOf(r)===null)return!0;if(Object.prototype.toString.call(r)!=="[object Object]"){const h=r[Symbol.toStringTag];return h==null||!((o=Object.getOwnPropertyDescriptor(r,Symbol.toStringTag))!=null&&o.writable)?!1:r.toString()===`[object ${h}]`}let i=r;for(;Object.getPrototypeOf(i)!==null;)i=Object.getPrototypeOf(i);return Object.getPrototypeOf(r)===i}e.isPlainObject=t})(Lp)),Lp}var Op,R5;function WU(){return R5||(R5=1,Op=FU().isPlainObject),Op}var qU=WU();const GU=Qn(qU);var k5,P5,B5,j5,I5;function N5(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter(function(o){return Object.getOwnPropertyDescriptor(e,o).enumerable})),r.push.apply(r,i)}return r}function z5(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?N5(Object(r),!0).forEach(function(i){KU(e,i,r[i])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):N5(Object(r)).forEach(function(i){Object.defineProperty(e,i,Object.getOwnPropertyDescriptor(r,i))})}return e}function KU(e,t,r){return(t=YU(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function YU(e){var t=VU(e,"string");return typeof t=="symbol"?t:t+""}function VU(e,t){if(typeof e!="object"||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var i=r.call(e,t);if(typeof i!="object")return i;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function kh(){return kh=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var i in r)({}).hasOwnProperty.call(r,i)&&(e[i]=r[i])}return e},kh.apply(null,arguments)}function bl(e,t){return t||(t=e.slice(0)),Object.freeze(Object.defineProperties(e,{raw:{value:Object.freeze(t)}}))}var H5=(e,t,r,i,o)=>{var h=r-i,g;return g=xt(k5||(k5=bl(["M ",",",""])),e,t),g+=xt(P5||(P5=bl(["L ",",",""])),e+r,t),g+=xt(B5||(B5=bl(["L ",",",""])),e+r-h/2,t+o),g+=xt(j5||(j5=bl(["L ",",",""])),e+r-h/2-i,t+o),g+=xt(I5||(I5=bl(["L ",","," Z"])),e,t),g},XU={x:0,y:0,upperWidth:0,lowerWidth:0,height:0,isUpdateAnimationActive:!1,animationBegin:0,animationDuration:1500,animationEasing:"ease"},ZU=e=>{var t=ni(e,XU),{x:r,y:i,upperWidth:o,lowerWidth:h,height:g,className:a}=t,{animationEasing:c,animationDuration:f,animationBegin:v,isUpdateAnimationActive:u}=t,m=N.useRef(null),[w,C]=N.useState(-1),_=N.useRef(o),d=N.useRef(h),y=N.useRef(g),b=N.useRef(r),S=N.useRef(i),E=tm(e,"trapezoid-");if(N.useEffect(()=>{if(m.current&&m.current.getTotalLength)try{var U=m.current.getTotalLength();U&&C(U)}catch{}},[]),r!==+r||i!==+i||o!==+o||h!==+h||g!==+g||o===0&&h===0||g===0)return null;var L=vt("recharts-trapezoid",a);if(!u)return N.createElement("g",null,N.createElement("path",kh({},ri(t),{className:L,d:H5(r,i,o,h,g)})));var x=_.current,O=d.current,M=y.current,D=b.current,k=S.current,P="0px ".concat(w===-1?1:w,"px"),R="".concat(w,"px ").concat(w,"px"),B=gA(["strokeDasharray"],f,c);return N.createElement(em,{animationId:E,key:E,canBegin:w>0,duration:f,easing:c,isActive:u,begin:v},U=>{var V=nr(x,o,U),q=nr(O,h,U),Y=nr(M,g,U),W=nr(D,r,U),j=nr(k,i,U);m.current&&(_.current=V,d.current=q,y.current=Y,b.current=W,S.current=j);var H=U>0?{transition:B,strokeDasharray:R}:{strokeDasharray:P};return N.createElement("path",kh({},ri(t),{className:L,d:H5(W,j,V,q,Y),ref:m,style:z5(z5({},H),t.style)}))})},QU=["option","shapeType","activeClassName","inActiveClassName"];function JU(e,t){if(e==null)return{};var r,i,o=e9(e,t);if(Object.getOwnPropertySymbols){var h=Object.getOwnPropertySymbols(e);for(i=0;i<h.length;i++)r=h[i],t.indexOf(r)===-1&&{}.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}function e9(e,t){if(e==null)return{};var r={};for(var i in e)if({}.hasOwnProperty.call(e,i)){if(t.indexOf(i)!==-1)continue;r[i]=e[i]}return r}function $5(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter(function(o){return Object.getOwnPropertyDescriptor(e,o).enumerable})),r.push.apply(r,i)}return r}function Ph(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?$5(Object(r),!0).forEach(function(i){t9(e,i,r[i])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):$5(Object(r)).forEach(function(i){Object.defineProperty(e,i,Object.getOwnPropertyDescriptor(r,i))})}return e}function t9(e,t,r){return(t=r9(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function r9(e){var t=i9(e,"string");return typeof t=="symbol"?t:t+""}function i9(e,t){if(typeof e!="object"||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var i=r.call(e,t);if(typeof i!="object")return i;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function n9(e,t){return Ph(Ph({},t),e)}function s9(e,t){return e==="symbols"}function U5(e){var{shapeType:t,elementProps:r}=e;switch(t){case"rectangle":return N.createElement(yA,r);case"trapezoid":return N.createElement(ZU,r);case"sector":return N.createElement(wA,r);case"symbols":if(s9(t))return N.createElement(oE,r);break;case"curve":return N.createElement(vA,r);default:return null}}function a9(e){return N.isValidElement(e)?e.props:e}function o9(e){var{option:t,shapeType:r,activeClassName:i="recharts-active-shape",inActiveClassName:o="recharts-shape"}=e,h=JU(e,QU),g;if(N.isValidElement(t))g=N.cloneElement(t,Ph(Ph({},h),a9(t)));else if(typeof t=="function")g=t(h,h.index);else if(GU(t)&&typeof t!="boolean"){var a=n9(t,h);g=N.createElement(U5,{shapeType:r,elementProps:a})}else{var c=h;g=N.createElement(U5,{shapeType:r,elementProps:c})}return h.isActive?N.createElement(Ri,{className:i},g):N.createElement(Ri,{className:o},g)}var tO=(e,t,r)=>{var i=mt();return(o,h)=>g=>{e==null||e(o,h,g),i(vL({activeIndex:String(h),activeDataKey:t,activeCoordinate:o.tooltipPosition,activeGraphicalItemId:r}))}},rO=e=>{var t=mt();return(r,i)=>o=>{e==null||e(r,i,o),t(bz())}},iO=(e,t,r)=>{var i=mt();return(o,h)=>g=>{e==null||e(o,h,g),i(Sz({activeIndex:String(h),activeDataKey:t,activeCoordinate:o.tooltipPosition,activeGraphicalItemId:r}))}};function l9(e){var{tooltipEntrySettings:t}=e,r=mt(),i=zr(),o=N.useRef(null);return N.useLayoutEffect(()=>{i||(o.current===null?r(pz(t)):o.current!==t&&r(_z({prev:o.current,next:t})),o.current=t)},[t,r,i]),N.useLayoutEffect(()=>()=>{o.current&&(r(mz(o.current)),o.current=null)},[r]),null}function c9(e){var{legendPayload:t}=e,r=mt(),i=zr(),o=N.useRef(null);return N.useLayoutEffect(()=>{i||(o.current===null?r(bB(t)):o.current!==t&&r(SB({prev:o.current,next:t})),o.current=t)},[r,i,t]),N.useLayoutEffect(()=>()=>{o.current&&(r(wB(o.current)),o.current=null)},[r]),null}var Tp,u9=()=>{var[e]=N.useState(()=>Ll("uid-"));return e},h9=(Tp=iR.useId)!==null&&Tp!==void 0?Tp:u9;function f9(e,t){var r=h9();return t||(e?"".concat(e,"-").concat(r):r)}var d9=N.createContext(void 0),v9=e=>{var{id:t,type:r,children:i}=e,o=f9("recharts-".concat(r),t);return N.createElement(d9.Provider,{value:o},i(o))},g9={cartesianItems:[],polarItems:[]},nO=lr({name:"graphicalItems",initialState:g9,reducers:{addCartesianGraphicalItem:{reducer(e,t){e.cartesianItems.push(t.payload)},prepare:ft()},replaceCartesianGraphicalItem:{reducer(e,t){var{prev:r,next:i}=t.payload,o=ei(e).cartesianItems.indexOf(r);o>-1&&(e.cartesianItems[o]=i)},prepare:ft()},removeCartesianGraphicalItem:{reducer(e,t){var r=ei(e).cartesianItems.indexOf(t.payload);r>-1&&e.cartesianItems.splice(r,1)},prepare:ft()},addPolarGraphicalItem:{reducer(e,t){e.polarItems.push(t.payload)},prepare:ft()},removePolarGraphicalItem:{reducer(e,t){var r=ei(e).polarItems.indexOf(t.payload);r>-1&&e.polarItems.splice(r,1)},prepare:ft()},replacePolarGraphicalItem:{reducer(e,t){var{prev:r,next:i}=t.payload,o=ei(e).polarItems.indexOf(r);o>-1&&(e.polarItems[o]=i)},prepare:ft()}}}),{addCartesianGraphicalItem:p9,replaceCartesianGraphicalItem:_9,removeCartesianGraphicalItem:m9,addPolarGraphicalItem:EG,removePolarGraphicalItem:AG,replacePolarGraphicalItem:MG}=nO.actions,y9=nO.reducer,b9=e=>{var t=mt(),r=N.useRef(null);return N.useLayoutEffect(()=>{r.current===null?t(p9(e)):r.current!==e&&t(_9({prev:r.current,next:e})),r.current=e},[t,e]),N.useLayoutEffect(()=>()=>{r.current&&(t(m9(r.current)),r.current=null)},[t]),null},S9=N.memo(b9);function F5(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter(function(o){return Object.getOwnPropertyDescriptor(e,o).enumerable})),r.push.apply(r,i)}return r}function W5(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?F5(Object(r),!0).forEach(function(i){w9(e,i,r[i])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):F5(Object(r)).forEach(function(i){Object.defineProperty(e,i,Object.getOwnPropertyDescriptor(r,i))})}return e}function w9(e,t,r){return(t=C9(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function C9(e){var t=x9(e,"string");return typeof t=="symbol"?t:t+""}function x9(e,t){if(typeof e!="object"||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var i=r.call(e,t);if(typeof i!="object")return i;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}var sO=0,E9={xAxis:{},yAxis:{},zAxis:{}},aO=lr({name:"cartesianAxis",initialState:E9,reducers:{addXAxis:{reducer(e,t){e.xAxis[t.payload.id]=t.payload},prepare:ft()},replaceXAxis:{reducer(e,t){var{prev:r,next:i}=t.payload;e.xAxis[r.id]!==void 0&&(r.id!==i.id&&delete e.xAxis[r.id],e.xAxis[i.id]=i)},prepare:ft()},removeXAxis:{reducer(e,t){delete e.xAxis[t.payload.id]},prepare:ft()},addYAxis:{reducer(e,t){e.yAxis[t.payload.id]=t.payload},prepare:ft()},replaceYAxis:{reducer(e,t){var{prev:r,next:i}=t.payload;e.yAxis[r.id]!==void 0&&(r.id!==i.id&&delete e.yAxis[r.id],e.yAxis[i.id]=i)},prepare:ft()},removeYAxis:{reducer(e,t){delete e.yAxis[t.payload.id]},prepare:ft()},addZAxis:{reducer(e,t){e.zAxis[t.payload.id]=t.payload},prepare:ft()},replaceZAxis:{reducer(e,t){var{prev:r,next:i}=t.payload;e.zAxis[r.id]!==void 0&&(r.id!==i.id&&delete e.zAxis[r.id],e.zAxis[i.id]=i)},prepare:ft()},removeZAxis:{reducer(e,t){delete e.zAxis[t.payload.id]},prepare:ft()},updateYAxisWidth(e,t){var{id:r,width:i}=t.payload,o=e.yAxis[r];if(o){var h,g=o.widthHistory||[];if(g.length===3&&g[0]===g[2]&&i===g[1]&&i!==o.width&&Math.abs(i-((h=g[0])!==null&&h!==void 0?h:0))<=1)return;var a=[...g,i].slice(-3);e.yAxis[r]=W5(W5({},o),{},{width:i,widthHistory:a})}}}}),{addXAxis:A9,replaceXAxis:M9,removeXAxis:L9,addYAxis:O9,replaceYAxis:T9,removeYAxis:D9,addZAxis:LG,replaceZAxis:OG,removeZAxis:TG,updateYAxisWidth:R9}=aO.actions,k9=aO.reducer,P9=le([Kt],e=>({top:e.top,bottom:e.bottom,left:e.left,right:e.right})),B9=le([P9,fn,dn],(e,t,r)=>{if(!(!e||t==null||r==null))return{x:e.left,y:e.top,width:Math.max(0,t-e.left-e.right),height:Math.max(0,r-e.top-e.bottom)}}),oO=()=>Re(B9),q5=(e,t,r)=>{var i=r??e;if(!Nt(i))return vi(i,t,0)},j9=(e,t,r)=>{var i={},o=e.filter(gf),h=e.filter(f=>f.stackId==null),g=o.reduce((f,v)=>{var u=f[v.stackId];return u==null&&(u=[]),u.push(v),f[v.stackId]=u,f},i),a=Object.entries(g).map(f=>{var v,[u,m]=f,w=m.map(_=>_.dataKey),C=q5(t,r,(v=m[0])===null||v===void 0?void 0:v.barSize);return{stackId:u,dataKeys:w,barSize:C}}),c=h.map(f=>{var v=[f.dataKey].filter(m=>m!=null),u=q5(t,r,f.barSize);return{stackId:void 0,dataKeys:v,barSize:u}});return[...a,...c]};function G5(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter(function(o){return Object.getOwnPropertyDescriptor(e,o).enumerable})),r.push.apply(r,i)}return r}function Pu(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?G5(Object(r),!0).forEach(function(i){I9(e,i,r[i])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):G5(Object(r)).forEach(function(i){Object.defineProperty(e,i,Object.getOwnPropertyDescriptor(r,i))})}return e}function I9(e,t,r){return(t=N9(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function N9(e){var t=z9(e,"string");return typeof t=="symbol"?t:t+""}function z9(e,t){if(typeof e!="object"||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var i=r.call(e,t);if(typeof i!="object")return i;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function H9(e,t,r,i,o){var h,g=i.length;if(!(g<1)){var a=vi(e,r,0,!0),c,f=[];if(Ze((h=i[0])===null||h===void 0?void 0:h.barSize)){var v=!1,u=r/g,m=i.reduce((b,S)=>b+(S.barSize||0),0);m+=(g-1)*a,m>=r&&(m-=(g-1)*a,a=0),m>=r&&u>0&&(v=!0,u*=.9,m=g*u);var w=(r-m)/2>>0,C={offset:w-a,size:0};c=i.reduce((b,S)=>{var E,L={stackId:S.stackId,dataKeys:S.dataKeys,position:{offset:C.offset+C.size+a,size:v?u:(E=S.barSize)!==null&&E!==void 0?E:0}},x=[...b,L];return C=L.position,x},f)}else{var _=vi(t,r,0,!0);r-2*_-(g-1)*a<=0&&(a=0);var d=(r-2*_-(g-1)*a)/g;d>1&&(d>>=0);var y=Ze(o)?Math.min(d,o):d;c=i.reduce((b,S,E)=>[...b,{stackId:S.stackId,dataKeys:S.dataKeys,position:{offset:_+(d+a)*E+(d-y)/2,size:y}}],f)}return c}}var $9=(e,t,r,i,o,h,g)=>{var a=Nt(g)?t:g,c=H9(r,i,o!==h?o:h,e,a);return o!==h&&c!=null&&(c=c.map(f=>Pu(Pu({},f),{},{position:Pu(Pu({},f.position),{},{offset:f.position.offset-o/2})}))),c},U9=(e,t)=>{var r=fm(t);if(!(!e||r==null||t==null)){var{stackId:i}=t;if(i!=null){var o=e[i];if(o){var{stackedData:h}=o;if(h)return h.find(g=>g.key===r)}}}},F9=(e,t)=>{if(!(e==null||t==null)){var r=e.find(i=>i.stackId===t.stackId&&t.dataKey!=null&&i.dataKeys.includes(t.dataKey));if(r!=null)return r.position}};function W9(e,t){return e&&typeof e=="object"&&"zIndex"in e&&typeof e.zIndex=="number"&&Ze(e.zIndex)?e.zIndex:t}var q9=e=>{var{chartData:t}=e,r=mt(),i=zr();return N.useEffect(()=>i?()=>{}:(r(l5(t)),()=>{r(l5(void 0))}),[t,r,i]),null},K5={x:0,y:0,width:0,height:0,padding:{top:0,right:0,bottom:0,left:0}},lO=lr({name:"brush",initialState:K5,reducers:{setBrushSettings(e,t){return t.payload==null?K5:t.payload}}}),{setBrushSettings:DG}=lO.actions,G9=lO.reducer;function K9(e){return(e%180+180)%180}var Y9=function(t){var{width:r,height:i}=t,o=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,h=K9(o),g=h*Math.PI/180,a=Math.atan(i/r),c=g>a&&g<Math.PI-a?i/Math.sin(g):r/Math.cos(g);return Math.abs(c)},V9={dots:[],areas:[],lines:[]},cO=lr({name:"referenceElements",initialState:V9,reducers:{addDot:(e,t)=>{e.dots.push(t.payload)},removeDot:(e,t)=>{var r=ei(e).dots.findIndex(i=>i===t.payload);r!==-1&&e.dots.splice(r,1)},addArea:(e,t)=>{e.areas.push(t.payload)},removeArea:(e,t)=>{var r=ei(e).areas.findIndex(i=>i===t.payload);r!==-1&&e.areas.splice(r,1)},addLine:(e,t)=>{e.lines.push(t.payload)},removeLine:(e,t)=>{var r=ei(e).lines.findIndex(i=>i===t.payload);r!==-1&&e.lines.splice(r,1)}}}),{addDot:RG,removeDot:kG,addArea:PG,removeArea:BG,addLine:jG,removeLine:IG}=cO.actions,X9=cO.reducer,Z9=N.createContext(void 0),Q9=e=>{var{children:t}=e,[r]=N.useState("".concat(Ll("recharts"),"-clip")),i=oO();if(i==null)return null;var{x:o,y:h,width:g,height:a}=i;return N.createElement(Z9.Provider,{value:r},N.createElement("defs",null,N.createElement("clipPath",{id:r},N.createElement("rect",{x:o,y:h,height:a,width:g}))),t)};function uO(e,t){if(t<1)return[];if(t===1)return e;for(var r=[],i=0;i<e.length;i+=t){var o=e[i];o!==void 0&&r.push(o)}return r}function J9(e,t,r){var i={width:e.width+t.width,height:e.height+t.height};return Y9(i,r)}function eF(e,t,r){var i=r==="width",{x:o,y:h,width:g,height:a}=e;return t===1?{start:i?o:h,end:i?o+g:h+a}:{start:i?o+g:h+a,end:i?o:h}}function Ul(e,t,r,i,o){if(e*t<e*i||e*t>e*o)return!1;var h=r();return e*(t-e*h/2-i)>=0&&e*(t+e*h/2-o)<=0}function tF(e,t){return uO(e,t+1)}function rF(e,t,r,i,o){for(var h=(i||[]).slice(),{start:g,end:a}=t,c=0,f=1,v=g,u=function(){var C=i==null?void 0:i[c];if(C===void 0)return{v:uO(i,f)};var _=c,d,y=()=>(d===void 0&&(d=r(C,_)),d),b=C.coordinate,S=c===0||Ul(e,b,y,v,a);S||(c=0,v=g,f+=1),S&&(v=b+e*(y()/2+o),c+=f)},m;f<=h.length;)if(m=u(),m)return m.v;return[]}function iF(e,t,r,i,o){var h=(i||[]).slice(),g=h.length;if(g===0)return[];for(var{start:a,end:c}=t,f=1;f<=g;f++){for(var v=(g-1)%f,u=a,m=!0,w=function(){var E=i[_];if(E==null)return 0;var L=_,x,O=()=>(x===void 0&&(x=r(E,L)),x),M=E.coordinate,D=_===v||Ul(e,M,O,u,c);if(!D)return m=!1,1;D&&(u=M+e*(O()/2+o))},C,_=v;_<g&&(C=w(),!(C!==0&&C===1));_+=f);if(m){for(var d=[],y=v;y<g;y+=f){var b=i[y];b!=null&&d.push(b)}return d}}return[]}function Y5(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter(function(o){return Object.getOwnPropertyDescriptor(e,o).enumerable})),r.push.apply(r,i)}return r}function or(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?Y5(Object(r),!0).forEach(function(i){nF(e,i,r[i])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):Y5(Object(r)).forEach(function(i){Object.defineProperty(e,i,Object.getOwnPropertyDescriptor(r,i))})}return e}function nF(e,t,r){return(t=sF(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function sF(e){var t=aF(e,"string");return typeof t=="symbol"?t:t+""}function aF(e,t){if(typeof e!="object"||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var i=r.call(e,t);if(typeof i!="object")return i;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function oF(e,t,r,i,o){for(var h=(i||[]).slice(),g=h.length,{start:a}=t,{end:c}=t,f=function(m){var w=h[m];if(w==null)return 1;var C=w,_,d=()=>(_===void 0&&(_=r(w,m)),_);if(m===g-1){var y=e*(C.coordinate+e*d()/2-c);h[m]=C=or(or({},C),{},{tickCoord:y>0?C.coordinate-y*e:C.coordinate})}else h[m]=C=or(or({},C),{},{tickCoord:C.coordinate});if(C.tickCoord!=null){var b=Ul(e,C.tickCoord,d,a,c);b&&(c=C.tickCoord-e*(d()/2+o),h[m]=or(or({},C),{},{isShow:!0}))}},v=g-1;v>=0;v--)f(v);return h}function lF(e,t,r,i,o,h){var g=(i||[]).slice(),a=g.length,{start:c,end:f}=t;if(h){var v=i[a-1];if(v!=null){var u=r(v,a-1),m=e*(v.coordinate+e*u/2-f);if(g[a-1]=v=or(or({},v),{},{tickCoord:m>0?v.coordinate-m*e:v.coordinate}),v.tickCoord!=null){var w=Ul(e,v.tickCoord,()=>u,c,f);w&&(f=v.tickCoord-e*(u/2+o),g[a-1]=or(or({},v),{},{isShow:!0}))}}}for(var C=h?a-1:a,_=function(b){var S=g[b];if(S==null)return 1;var E=S,L,x=()=>(L===void 0&&(L=r(S,b)),L);if(b===0){var O=e*(E.coordinate-e*x()/2-c);g[b]=E=or(or({},E),{},{tickCoord:O<0?E.coordinate-O*e:E.coordinate})}else g[b]=E=or(or({},E),{},{tickCoord:E.coordinate});if(E.tickCoord!=null){var M=Ul(e,E.tickCoord,x,c,f);M&&(c=E.tickCoord+e*(x()/2+o),g[b]=or(or({},E),{},{isShow:!0}))}},d=0;d<C;d++)_(d);return g}function cF(e,t,r){var{tick:i,ticks:o,viewBox:h,minTickGap:g,orientation:a,interval:c,tickFormatter:f,unit:v,angle:u}=e;if(!o||!o.length||!i)return[];if(Te(c)||Vl.isSsr){var m;return(m=tF(o,Te(c)?c:0))!==null&&m!==void 0?m:[]}var w=[],C=a==="top"||a==="bottom"?"width":"height",_=v&&C==="width"?Ml(v,{fontSize:t,letterSpacing:r}):{width:0,height:0},d=(L,x)=>{var O=typeof f=="function"?f(L.value,x):L.value;return C==="width"?J9(Ml(O,{fontSize:t,letterSpacing:r}),_,u):Ml(O,{fontSize:t,letterSpacing:r})[C]},y=o[0],b=o[1],S=o.length>=2&&y!=null&&b!=null?Pr(b.coordinate-y.coordinate):1,E=eF(h,S,C);return c==="equidistantPreserveStart"?rF(S,E,d,o,g):c==="equidistantPreserveEnd"?iF(S,E,d,o,g):(c==="preserveStart"||c==="preserveStartEnd"?w=lF(S,E,d,o,g,c==="preserveStartEnd"):w=oF(S,E,d,o,g),w.filter(L=>L.isShow))}var uF=e=>{var{ticks:t,label:r,labelGapWithTick:i=5,tickSize:o=0,tickMargin:h=0}=e,g=0;if(t){Array.from(t).forEach(v=>{if(v){var u=v.getBoundingClientRect();u.width>g&&(g=u.width)}});var a=r?r.getBoundingClientRect().width:0,c=o+h,f=g+c+a+(r?i:0);return Math.round(f)}return 0},hF={xAxis:{},yAxis:{}},hO=lr({name:"renderedTicks",initialState:hF,reducers:{setRenderedTicks:(e,t)=>{var{axisType:r,axisId:i,ticks:o}=t.payload;e[r][i]=o},removeRenderedTicks:(e,t)=>{var{axisType:r,axisId:i}=t.payload;delete e[r][i]}}}),{setRenderedTicks:fF,removeRenderedTicks:dF}=hO.actions,vF=hO.reducer,gF=["axisLine","width","height","className","hide","ticks","axisType","axisId"];function pF(e,t){if(e==null)return{};var r,i,o=_F(e,t);if(Object.getOwnPropertySymbols){var h=Object.getOwnPropertySymbols(e);for(i=0;i<h.length;i++)r=h[i],t.indexOf(r)===-1&&{}.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}function _F(e,t){if(e==null)return{};var r={};for(var i in e)if({}.hasOwnProperty.call(e,i)){if(t.indexOf(i)!==-1)continue;r[i]=e[i]}return r}function Us(){return Us=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var i in r)({}).hasOwnProperty.call(r,i)&&(e[i]=r[i])}return e},Us.apply(null,arguments)}function V5(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter(function(o){return Object.getOwnPropertyDescriptor(e,o).enumerable})),r.push.apply(r,i)}return r}function Ct(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?V5(Object(r),!0).forEach(function(i){mF(e,i,r[i])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):V5(Object(r)).forEach(function(i){Object.defineProperty(e,i,Object.getOwnPropertyDescriptor(r,i))})}return e}function mF(e,t,r){return(t=yF(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function yF(e){var t=bF(e,"string");return typeof t=="symbol"?t:t+""}function bF(e,t){if(typeof e!="object"||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var i=r.call(e,t);if(typeof i!="object")return i;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}var Ps={x:0,y:0,width:0,height:0,viewBox:{x:0,y:0,width:0,height:0},orientation:"bottom",ticks:[],stroke:"#666",tickLine:!0,axisLine:!0,tick:!0,mirror:!1,minTickGap:5,tickSize:6,tickMargin:2,interval:"preserveEnd",zIndex:Cr.axis};function SF(e){var{x:t,y:r,width:i,height:o,orientation:h,mirror:g,axisLine:a,otherSvgProps:c}=e;if(!a)return null;var f=Ct(Ct(Ct({},c),Vn(a)),{},{fill:"none"});if(h==="top"||h==="bottom"){var v=+(h==="top"&&!g||h==="bottom"&&g);f=Ct(Ct({},f),{},{x1:t,y1:r+v*o,x2:t+i,y2:r+v*o})}else{var u=+(h==="left"&&!g||h==="right"&&g);f=Ct(Ct({},f),{},{x1:t+u*i,y1:r,x2:t+u*i,y2:r+o})}return N.createElement("line",Us({},f,{className:vt("recharts-cartesian-axis-line",Ya(a,"className"))}))}function wF(e,t,r,i,o,h,g,a,c){var f,v,u,m,w,C,_=a?-1:1,d=e.tickSize||g,y=Te(e.tickCoord)?e.tickCoord:e.coordinate;switch(h){case"top":f=v=e.coordinate,m=r+ +!a*o,u=m-_*d,C=u-_*c,w=y;break;case"left":u=m=e.coordinate,v=t+ +!a*i,f=v-_*d,w=f-_*c,C=y;break;case"right":u=m=e.coordinate,v=t+ +a*i,f=v+_*d,w=f+_*c,C=y;break;default:f=v=e.coordinate,m=r+ +a*o,u=m+_*d,C=u+_*c,w=y;break}return{line:{x1:f,y1:u,x2:v,y2:m},tick:{x:w,y:C}}}function CF(e,t){switch(e){case"left":return t?"start":"end";case"right":return t?"end":"start";default:return"middle"}}function xF(e,t){switch(e){case"left":case"right":return"middle";case"top":return t?"start":"end";default:return t?"end":"start"}}function EF(e){var{option:t,tickProps:r,value:i}=e,o,h=vt(r.className,"recharts-cartesian-axis-tick-value");if(N.isValidElement(t))o=N.cloneElement(t,Ct(Ct({},r),{},{className:h}));else if(typeof t=="function")o=t(Ct(Ct({},r),{},{className:h}));else{var g="recharts-cartesian-axis-tick-value";typeof t!="boolean"&&(g=vt(g,NU(t))),o=N.createElement(i0,Us({},r,{className:g}),i)}return o}function AF(e){var{ticks:t,axisType:r,axisId:i}=e,o=mt();return N.useEffect(()=>{if(i==null||r==null)return ao;var h=t.map(g=>({value:g.value,coordinate:g.coordinate,offset:g.offset,index:g.index}));return o(fF({ticks:h,axisId:i,axisType:r})),()=>{o(dF({axisId:i,axisType:r}))}},[o,t,i,r]),null}var MF=N.forwardRef((e,t)=>{var{ticks:r=[],tick:i,tickLine:o,stroke:h,tickFormatter:g,unit:a,padding:c,tickTextProps:f,orientation:v,mirror:u,x:m,y:w,width:C,height:_,tickSize:d,tickMargin:y,fontSize:b,letterSpacing:S,getTicksConfig:E,events:L,axisType:x,axisId:O}=e,M=cF(Ct(Ct({},E),{},{ticks:r}),b,S),D=Vn(E),k=k_(i),P=qL(D.textAnchor)?D.textAnchor:CF(v,u),R=xF(v,u),B={};typeof o=="object"&&(B=o);var U=Ct(Ct({},D),{},{fill:"none"},B),V=M.map(W=>Ct({entry:W},wF(W,m,w,C,_,v,d,u,y))),q=V.map(W=>{var{entry:j,line:H}=W;return N.createElement(Ri,{className:"recharts-cartesian-axis-tick",key:"tick-".concat(j.value,"-").concat(j.coordinate,"-").concat(j.tickCoord)},o&&N.createElement("line",Us({},U,H,{className:vt("recharts-cartesian-axis-tick-line",Ya(o,"className"))})))}),Y=V.map((W,j)=>{var H,z,{entry:F,tick:Z}=W,re=Ct(Ct(Ct(Ct({verticalAnchor:R},D),{},{textAnchor:P,stroke:"none",fill:h},Z),{},{index:j,payload:F,visibleTicksCount:M.length,tickFormatter:g,padding:c},f),{},{angle:(H=(z=f==null?void 0:f.angle)!==null&&z!==void 0?z:D.angle)!==null&&H!==void 0?H:0}),he=Ct(Ct({},re),k);return N.createElement(Ri,Us({className:"recharts-cartesian-axis-tick-label",key:"tick-label-".concat(F.value,"-").concat(F.coordinate,"-").concat(F.tickCoord)},H_(L,F,j)),i&&N.createElement(EF,{option:i,tickProps:he,value:"".concat(typeof g=="function"?g(F.value,j):F.value).concat(a||"")}))});return N.createElement("g",{className:"recharts-cartesian-axis-ticks recharts-".concat(x,"-ticks")},N.createElement(AF,{ticks:M,axisId:O,axisType:x}),Y.length>0&&N.createElement(rs,{zIndex:Cr.label},N.createElement("g",{className:"recharts-cartesian-axis-tick-labels recharts-".concat(x,"-tick-labels"),ref:t},Y)),q.length>0&&N.createElement("g",{className:"recharts-cartesian-axis-tick-lines recharts-".concat(x,"-tick-lines")},q))}),LF=N.forwardRef((e,t)=>{var{axisLine:r,width:i,height:o,className:h,hide:g,ticks:a,axisType:c,axisId:f}=e,v=pF(e,gF),[u,m]=N.useState(""),[w,C]=N.useState(""),_=N.useRef(null);N.useImperativeHandle(t,()=>({getCalculatedWidth:()=>{var y;return uF({ticks:_.current,label:(y=e.labelRef)===null||y===void 0?void 0:y.current,labelGapWithTick:5,tickSize:e.tickSize,tickMargin:e.tickMargin})}}));var d=N.useCallback(y=>{if(y){var b=y.getElementsByClassName("recharts-cartesian-axis-tick-value");_.current=b;var S=b[0];if(S){var E=window.getComputedStyle(S),L=E.fontSize,x=E.letterSpacing;(L!==u||x!==w)&&(m(L),C(x))}}},[u,w]);return g||i!=null&&i<=0||o!=null&&o<=0?null:N.createElement(rs,{zIndex:e.zIndex},N.createElement(Ri,{className:vt("recharts-cartesian-axis",h)},N.createElement(SF,{x:e.x,y:e.y,width:i,height:o,orientation:e.orientation,mirror:e.mirror,axisLine:r,otherSvgProps:Vn(e)}),N.createElement(MF,{ref:d,axisType:c,events:v,fontSize:u,getTicksConfig:e,height:e.height,letterSpacing:w,mirror:e.mirror,orientation:e.orientation,padding:e.padding,stroke:e.stroke,tick:e.tick,tickFormatter:e.tickFormatter,tickLine:e.tickLine,tickMargin:e.tickMargin,tickSize:e.tickSize,tickTextProps:e.tickTextProps,ticks:a,unit:e.unit,width:e.width,x:e.x,y:e.y,axisId:f}),N.createElement(_U,{x:e.x,y:e.y,width:e.width,height:e.height,lowerWidth:e.width,upperWidth:e.width},N.createElement(MU,{label:e.label,labelRef:e.labelRef}),e.children)))}),s0=N.forwardRef((e,t)=>{var r=ni(e,Ps);return N.createElement(LF,Us({},r,{ref:t}))});s0.displayName="CartesianAxis";var OF={},fO=lr({name:"errorBars",initialState:OF,reducers:{addErrorBar:(e,t)=>{var{itemId:r,errorBar:i}=t.payload;e[r]||(e[r]=[]),e[r].push(i)},replaceErrorBar:(e,t)=>{var{itemId:r,prev:i,next:o}=t.payload;e[r]&&(e[r]=e[r].map(h=>h.dataKey===i.dataKey&&h.direction===i.direction?o:h))},removeErrorBar:(e,t)=>{var{itemId:r,errorBar:i}=t.payload;e[r]&&(e[r]=e[r].filter(o=>o.dataKey!==i.dataKey||o.direction!==i.direction))}}}),{addErrorBar:NG,replaceErrorBar:zG,removeErrorBar:HG}=fO.actions,TF=fO.reducer,DF=["children"];function RF(e,t){if(e==null)return{};var r,i,o=kF(e,t);if(Object.getOwnPropertySymbols){var h=Object.getOwnPropertySymbols(e);for(i=0;i<h.length;i++)r=h[i],t.indexOf(r)===-1&&{}.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}function kF(e,t){if(e==null)return{};var r={};for(var i in e)if({}.hasOwnProperty.call(e,i)){if(t.indexOf(i)!==-1)continue;r[i]=e[i]}return r}var PF={data:[],xAxisId:"xAxis-0",yAxisId:"yAxis-0",dataPointFormatter:()=>({x:0,y:0,value:0}),errorBarOffset:0},BF=N.createContext(PF);function jF(e){var{children:t}=e,r=RF(e,DF);return N.createElement(BF.Provider,{value:r},t)}function dO(e,t){var r,i,o=Re(f=>gn(f,e)),h=Re(f=>pn(f,t)),g=(r=o==null?void 0:o.allowDataOverflow)!==null&&r!==void 0?r:Bt.allowDataOverflow,a=(i=h==null?void 0:h.allowDataOverflow)!==null&&i!==void 0?i:jt.allowDataOverflow,c=g||a;return{needClip:c,needClipX:g,needClipY:a}}function IF(e){var{xAxisId:t,yAxisId:r,clipPathId:i}=e,o=oO(),{needClipX:h,needClipY:g,needClip:a}=dO(t,r);if(!a||!o)return null;var{x:c,y:f,width:v,height:u}=o;return N.createElement("clipPath",{id:"clipPath-".concat(i)},N.createElement("rect",{x:h?c:c-v/2,y:g?f:f-u/2,width:h?v:v*2,height:g?u:u*2}))}function Gs(e,t){var r,i;return(r=(i=e.graphicalItems.cartesianItems.find(o=>o.id===t))===null||i===void 0?void 0:i.xAxisId)!==null&&r!==void 0?r:sO}function Ks(e,t){var r,i;return(r=(i=e.graphicalItems.cartesianItems.find(o=>o.id===t))===null||i===void 0?void 0:i.yAxisId)!==null&&r!==void 0?r:sO}var NF="Invariant failed";function zF(e,t){throw new Error(NF)}function S_(){return S_=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var i in r)({}).hasOwnProperty.call(r,i)&&(e[i]=r[i])}return e},S_.apply(null,arguments)}function a0(e){return N.createElement(o9,S_({shapeType:"rectangle",activeClassName:"recharts-active-bar",inActiveClassName:"recharts-inactive-bar"},e))}var HF=function(t){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;return(i,o)=>{if(Te(t))return t;var h=Te(i)||Nt(i);return h?t(i,o):(h||zF(),r)}},$F=(e,t,r)=>r,UF=(e,t)=>t,sc=le([zm,UF],(e,t)=>e.filter(r=>r.type==="bar").find(r=>r.id===t)),FF=le([sc],e=>e==null?void 0:e.maxBarSize),WF=(e,t,r,i)=>i,qF=le([ot,zm,Gs,Ks,$F],(e,t,r,i,o)=>t.filter(h=>e==="horizontal"?h.xAxisId===r:h.yAxisId===i).filter(h=>h.isPanorama===o).filter(h=>h.hide===!1).filter(h=>h.type==="bar")),GF=(e,t,r)=>{var i=ot(e),o=Gs(e,t),h=Ks(e,t);if(!(o==null||h==null))return i==="horizontal"?__(e,"yAxis",h,r):__(e,"xAxis",o,r)},KF=(e,t)=>{var r=ot(e),i=Gs(e,t),o=Ks(e,t);if(!(i==null||o==null))return r==="horizontal"?Vx(e,"xAxis",i):Vx(e,"yAxis",o)},YF=le([qF,Cj,KF],j9),VF=(e,t,r)=>{var i,o,h=sc(e,t);if(h==null)return 0;var g=Gs(e,t),a=Ks(e,t);if(g==null||a==null)return 0;var c=ot(e),f=BA(e),{maxBarSize:v}=h,u=Nt(v)?f:v,m,w;return c==="horizontal"?(m=ro(e,"xAxis",g,r),w=to(e,"xAxis",g,r)):(m=ro(e,"yAxis",a,r),w=to(e,"yAxis",a,r)),(i=(o=oh(m,w,!0))!==null&&o!==void 0?o:u)!==null&&i!==void 0?i:0},vO=(e,t,r)=>{var i=ot(e),o=Gs(e,t),h=Ks(e,t);if(!(o==null||h==null)){var g,a;return i==="horizontal"?(g=ro(e,"xAxis",o,r),a=to(e,"xAxis",o,r)):(g=ro(e,"yAxis",h,r),a=to(e,"yAxis",h,r)),oh(g,a)}},XF=le([YF,BA,wj,jA,VF,vO,FF],$9),ZF=(e,t,r)=>{var i=Gs(e,t);if(i!=null)return ro(e,"xAxis",i,r)},QF=(e,t,r)=>{var i=Ks(e,t);if(i!=null)return ro(e,"yAxis",i,r)},JF=(e,t,r)=>{var i=Gs(e,t);if(i!=null)return to(e,"xAxis",i,r)},eW=(e,t,r)=>{var i=Ks(e,t);if(i!=null)return to(e,"yAxis",i,r)},tW=le([XF,sc],F9),rW=le([GF,sc],U9),iW=le([Kt,V_,ZF,QF,JF,eW,tW,ot,vj,vO,rW,sc,WF],(e,t,r,i,o,h,g,a,c,f,v,u,m)=>{var{chartData:w,dataStartIndex:C,dataEndIndex:_}=c;if(!(u==null||g==null||t==null||a!=="horizontal"&&a!=="vertical"||r==null||i==null||o==null||h==null||f==null)){var{data:d}=u,y;if(d!=null&&d.length>0?y=d:y=w==null?void 0:w.slice(C,_+1),y!=null)return DW({layout:a,barSettings:u,pos:g,parentViewBox:t,bandSize:f,xAxis:r,yAxis:i,xAxisTicks:o,yAxisTicks:h,stackedData:v,displayedData:y,offset:e,cells:m,dataStartIndex:C})}}),nW=["index"];function w_(){return w_=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var i in r)({}).hasOwnProperty.call(r,i)&&(e[i]=r[i])}return e},w_.apply(null,arguments)}function sW(e,t){if(e==null)return{};var r,i,o=aW(e,t);if(Object.getOwnPropertySymbols){var h=Object.getOwnPropertySymbols(e);for(i=0;i<h.length;i++)r=h[i],t.indexOf(r)===-1&&{}.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}function aW(e,t){if(e==null)return{};var r={};for(var i in e)if({}.hasOwnProperty.call(e,i)){if(t.indexOf(i)!==-1)continue;r[i]=e[i]}return r}var gO=N.createContext(void 0),oW=e=>{var t=N.useContext(gO);if(t!=null)return t.stackId;if(e!=null)return y6(e)},lW=(e,t)=>"recharts-bar-stack-clip-path-".concat(e,"-").concat(t),cW=e=>{var t=N.useContext(gO);if(t!=null){var{stackId:r}=t;return"url(#".concat(lW(r,e),")")}},pO=e=>{var{index:t}=e,r=sW(e,nW),i=cW(t);return N.createElement(Ri,w_({className:"recharts-bar-stack-layer",clipPath:i},r))},uW=["onMouseEnter","onMouseLeave","onClick"],hW=["value","background","tooltipPosition"],fW=["id"],dW=["onMouseEnter","onClick","onMouseLeave"];function Zn(){return Zn=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var i in r)({}).hasOwnProperty.call(r,i)&&(e[i]=r[i])}return e},Zn.apply(null,arguments)}function X5(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter(function(o){return Object.getOwnPropertyDescriptor(e,o).enumerable})),r.push.apply(r,i)}return r}function hr(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?X5(Object(r),!0).forEach(function(i){vW(e,i,r[i])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):X5(Object(r)).forEach(function(i){Object.defineProperty(e,i,Object.getOwnPropertyDescriptor(r,i))})}return e}function vW(e,t,r){return(t=gW(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function gW(e){var t=pW(e,"string");return typeof t=="symbol"?t:t+""}function pW(e,t){if(typeof e!="object"||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var i=r.call(e,t);if(typeof i!="object")return i;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function Bh(e,t){if(e==null)return{};var r,i,o=_W(e,t);if(Object.getOwnPropertySymbols){var h=Object.getOwnPropertySymbols(e);for(i=0;i<h.length;i++)r=h[i],t.indexOf(r)===-1&&{}.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}function _W(e,t){if(e==null)return{};var r={};for(var i in e)if({}.hasOwnProperty.call(e,i)){if(t.indexOf(i)!==-1)continue;r[i]=e[i]}return r}var mW=e=>{var{dataKey:t,name:r,fill:i,legendType:o,hide:h}=e;return[{inactive:h,dataKey:t,type:o,color:i,value:QE(r,t),payload:e}]},yW=N.memo(e=>{var{dataKey:t,stroke:r,strokeWidth:i,fill:o,name:h,hide:g,unit:a,tooltipType:c,id:f}=e,v={dataDefinedOnItem:void 0,getPosition:ao,settings:{stroke:r,strokeWidth:i,fill:o,dataKey:t,nameKey:void 0,name:QE(h,t),hide:g,type:c,color:o,unit:a,graphicalItemId:f}};return N.createElement(l9,{tooltipEntrySettings:v})});function bW(e){var t=Re(no),{data:r,dataKey:i,background:o,allOtherBarProps:h}=e,{onMouseEnter:g,onMouseLeave:a,onClick:c}=h,f=Bh(h,uW),v=tO(g,i,h.id),u=rO(a),m=iO(c,i,h.id);if(!o||r==null)return null;var w=k_(o);return N.createElement(rs,{zIndex:W9(o,Cr.barBackground)},r.map((C,_)=>{var{value:d,background:y,tooltipPosition:b}=C,S=Bh(C,hW);if(!y)return null;var E=v(C,_),L=u(C,_),x=m(C,_),O=hr(hr(hr(hr(hr({option:o,isActive:String(_)===t},S),{},{fill:"#eee"},y),w),H_(f,C,_)),{},{onMouseEnter:E,onMouseLeave:L,onClick:x,dataKey:i,index:_,className:"recharts-bar-background-rectangle"});return N.createElement(a0,Zn({key:"background-bar-".concat(_)},O))}))}function SW(e){var{showLabels:t,children:r,rects:i}=e,o=i==null?void 0:i.map(h=>{var g={x:h.x,y:h.y,width:h.width,lowerWidth:h.width,upperWidth:h.width,height:h.height};return hr(hr({},g),{},{value:h.value,payload:h.payload,parentViewBox:h.parentViewBox,viewBox:g,fill:h.fill})});return N.createElement(RU,{value:t?o:void 0},r)}function wW(e){var{shape:t,activeBar:r,baseProps:i,entry:o,index:h,dataKey:g}=e,a=Re(no),c=Re(TL),f=r&&String(o.originalDataIndex)===a&&(c==null||g===c),[v,u]=N.useState(!1),[m,w]=N.useState(!1);N.useEffect(()=>{var S;return f?(u(!0),S=requestAnimationFrame(()=>{w(!0)})):w(!1),()=>{cancelAnimationFrame(S)}},[f]);var C=N.useCallback(()=>{f||u(!1)},[f]),_=f&&m,d=f||v,y;f?r===!0?y=t:y=r:y=t;var b=N.createElement(a0,Zn({},i,{name:String(i.name)},o,{isActive:_,option:y,index:h,dataKey:g,onTransitionEnd:C}));return d?N.createElement(rs,{zIndex:Cr.activeBar},N.createElement(pO,{index:o.originalDataIndex},b)):b}function CW(e){var{shape:t,baseProps:r,entry:i,index:o,dataKey:h}=e;return N.createElement(a0,Zn({},r,{name:String(r.name)},i,{isActive:!1,option:t,index:o,dataKey:h}))}function xW(e){var t,{data:r,props:i}=e,o=(t=Vn(i))!==null&&t!==void 0?t:{},{id:h}=o,g=Bh(o,fW),{shape:a,dataKey:c,activeBar:f}=i,{onMouseEnter:v,onClick:u,onMouseLeave:m}=i,w=Bh(i,dW),C=tO(v,c,h),_=rO(m),d=iO(u,c,h);return r?N.createElement(N.Fragment,null,r.map((y,b)=>N.createElement(pO,Zn({index:y.originalDataIndex,key:"rectangle-".concat(y==null?void 0:y.x,"-").concat(y==null?void 0:y.y,"-").concat(y==null?void 0:y.value,"-").concat(b),className:"recharts-bar-rectangle"},H_(w,y,b),{onMouseEnter:C(y,b),onMouseLeave:_(y,b),onClick:d(y,b)}),f?N.createElement(wW,{shape:a,activeBar:f,baseProps:g,entry:y,index:b,dataKey:c}):N.createElement(CW,{shape:a,baseProps:g,entry:y,index:b,dataKey:c})))):null}function EW(e){var{props:t,previousRectanglesRef:r}=e,{data:i,layout:o,isAnimationActive:h,animationBegin:g,animationDuration:a,animationEasing:c,onAnimationEnd:f,onAnimationStart:v}=t,u=r.current,m=tm(t,"recharts-bar-"),[w,C]=N.useState(!1),_=!w,d=N.useCallback(()=>{typeof f=="function"&&f(),C(!1)},[f]),y=N.useCallback(()=>{typeof v=="function"&&v(),C(!0)},[v]);return N.createElement(SW,{showLabels:_,rects:i},N.createElement(em,{animationId:m,begin:g,duration:a,isActive:h,easing:c,onAnimationEnd:d,onAnimationStart:y,key:m},b=>{var S=b===1?i:i==null?void 0:i.map((E,L)=>{var x=u&&u[L];if(x)return hr(hr({},E),{},{x:nr(x.x,E.x,b),y:nr(x.y,E.y,b),width:nr(x.width,E.width,b),height:nr(x.height,E.height,b)});if(o==="horizontal"){var O=nr(0,E.height,b),M=nr(E.stackedBarStart,E.y,b);return hr(hr({},E),{},{y:M,height:O})}var D=nr(0,E.width,b),k=nr(E.stackedBarStart,E.x,b);return hr(hr({},E),{},{width:D,x:k})});return b>0&&(r.current=S??null),S==null?null:N.createElement(Ri,null,N.createElement(xW,{props:t,data:S}))}),N.createElement(BU,{label:t.label}),t.children)}function AW(e){var t=N.useRef(null);return N.createElement(EW,{previousRectanglesRef:t,props:e})}var _O=0,MW=(e,t)=>{var r=Array.isArray(e.value)?e.value[1]:e.value;return{x:e.x,y:e.y,value:r,errorVal:Gt(e,t)}};class LW extends N.PureComponent{render(){var{hide:t,data:r,dataKey:i,className:o,xAxisId:h,yAxisId:g,needClip:a,background:c,id:f}=this.props;if(t||r==null)return null;var v=vt("recharts-bar",o),u=f;return N.createElement(Ri,{className:v,id:f},a&&N.createElement("defs",null,N.createElement(IF,{clipPathId:u,xAxisId:h,yAxisId:g})),N.createElement(Ri,{className:"recharts-bar-rectangles",clipPath:a?"url(#clipPath-".concat(u,")"):void 0},N.createElement(bW,{data:r,dataKey:i,background:c,allOtherBarProps:this.props}),N.createElement(AW,this.props)))}}var OW={activeBar:!1,animationBegin:0,animationDuration:400,animationEasing:"ease",background:!1,hide:!1,isAnimationActive:"auto",label:!1,legendType:"rect",minPointSize:_O,xAxisId:0,yAxisId:0,zIndex:Cr.bar};function TW(e){var{xAxisId:t,yAxisId:r,hide:i,legendType:o,minPointSize:h,activeBar:g,animationBegin:a,animationDuration:c,animationEasing:f,isAnimationActive:v}=e,{needClip:u}=dO(t,r),m=oo(),w=zr(),C=UU(e.children,r0),_=Re(b=>iW(b,e.id,w,C));if(m!=="vertical"&&m!=="horizontal")return null;var d,y=_==null?void 0:_[0];return y==null||y.height==null||y.width==null?d=0:d=m==="vertical"?y.height/2:y.width/2,N.createElement(jF,{xAxisId:t,yAxisId:r,data:_,dataPointFormatter:MW,errorBarOffset:d},N.createElement(LW,Zn({},e,{layout:m,needClip:u,data:_,xAxisId:t,yAxisId:r,hide:i,legendType:o,minPointSize:h,activeBar:g,animationBegin:a,animationDuration:c,animationEasing:f,isAnimationActive:v})))}function DW(e){var{layout:t,barSettings:{dataKey:r,minPointSize:i,hasCustomShape:o},pos:h,bandSize:g,xAxis:a,yAxis:c,xAxisTicks:f,yAxisTicks:v,stackedData:u,displayedData:m,offset:w,cells:C,parentViewBox:_,dataStartIndex:d}=e,y=t==="horizontal"?c:a,b=u?y.scale.domain():null,S=b6({numericAxis:y}),E=y.scale.map(S);return m.map((L,x)=>{var O,M,D,k,P,R;if(u){var B=u[x+d];if(B==null)return null;O=v6(B,b)}else O=Gt(L,r),Array.isArray(O)||(O=[S,O]);var U=HF(i,_O)(O[1],x);if(t==="horizontal"){var V,q=c.scale.map(O[0]),Y=c.scale.map(O[1]);if(q==null||Y==null)return null;M=Ww({axis:a,ticks:f,bandSize:g,offset:h.offset,entry:L,index:x}),D=(V=Y??q)!==null&&V!==void 0?V:void 0,k=h.size;var W=q-Y;if(P=ki(W)?0:W,R={x:M,y:w.top,width:k,height:w.height},Math.abs(U)>0&&Math.abs(P)<Math.abs(U)){var j=Pr(P||U)*(Math.abs(U)-Math.abs(P));D-=j,P+=j}}else{var H=a.scale.map(O[0]),z=a.scale.map(O[1]);if(H==null||z==null)return null;if(M=H,D=Ww({axis:c,ticks:v,bandSize:g,offset:h.offset,entry:L,index:x}),k=z-H,P=h.size,R={x:w.left,y:D,width:w.width,height:P},Math.abs(U)>0&&Math.abs(k)<Math.abs(U)){var F=Pr(k||U)*(Math.abs(U)-Math.abs(k));k+=F}}if(M==null||D==null||k==null||P==null||!o&&(k===0||P===0))return null;var Z=hr(hr({},L),{},{stackedBarStart:E,x:M,y:D,width:k,height:P,value:u?O:O[1],payload:L,background:R,tooltipPosition:{x:M+k/2,y:D+P/2},parentViewBox:_,originalDataIndex:x},C&&C[x]&&C[x].props);return Z}).filter(Boolean)}function RW(e){var t=ni(e,OW),r=oW(t.stackId),i=zr();return N.createElement(v9,{id:t.id,type:"bar"},o=>N.createElement(N.Fragment,null,N.createElement(c9,{legendPayload:mW(t)}),N.createElement(yW,{dataKey:t.dataKey,stroke:t.stroke,strokeWidth:t.strokeWidth,fill:t.fill,name:t.name,hide:t.hide,unit:t.unit,tooltipType:t.tooltipType,id:o}),N.createElement(S9,{type:"bar",id:o,data:void 0,xAxisId:t.xAxisId,yAxisId:t.yAxisId,zAxisId:0,dataKey:t.dataKey,stackId:r,hide:t.hide,barSize:t.barSize,minPointSize:t.minPointSize,maxBarSize:t.maxBarSize,isPanorama:i,hasCustomShape:t.shape!=null}),N.createElement(rs,{zIndex:t.zIndex},N.createElement(TW,Zn({},t,{id:o})))))}var mO=N.memo(RW,lf);mO.displayName="Bar";var kW=["domain","range"],PW=["domain","range"];function Z5(e,t){if(e==null)return{};var r,i,o=BW(e,t);if(Object.getOwnPropertySymbols){var h=Object.getOwnPropertySymbols(e);for(i=0;i<h.length;i++)r=h[i],t.indexOf(r)===-1&&{}.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}function BW(e,t){if(e==null)return{};var r={};for(var i in e)if({}.hasOwnProperty.call(e,i)){if(t.indexOf(i)!==-1)continue;r[i]=e[i]}return r}function Q5(e,t){return e===t?!0:Array.isArray(e)&&e.length===2&&Array.isArray(t)&&t.length===2?e[0]===t[0]&&e[1]===t[1]:!1}function yO(e,t){if(e===t)return!0;var{domain:r,range:i}=e,o=Z5(e,kW),{domain:h,range:g}=t,a=Z5(t,PW);return!Q5(r,h)||!Q5(i,g)?!1:lf(o,a)}var jW=["type"],IW=["dangerouslySetInnerHTML","ticks","scale"],NW=["id","scale"];function C_(){return C_=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var i in r)({}).hasOwnProperty.call(r,i)&&(e[i]=r[i])}return e},C_.apply(null,arguments)}function J5(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter(function(o){return Object.getOwnPropertyDescriptor(e,o).enumerable})),r.push.apply(r,i)}return r}function e2(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?J5(Object(r),!0).forEach(function(i){zW(e,i,r[i])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):J5(Object(r)).forEach(function(i){Object.defineProperty(e,i,Object.getOwnPropertyDescriptor(r,i))})}return e}function zW(e,t,r){return(t=HW(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function HW(e){var t=$W(e,"string");return typeof t=="symbol"?t:t+""}function $W(e,t){if(typeof e!="object"||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var i=r.call(e,t);if(typeof i!="object")return i;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function x_(e,t){if(e==null)return{};var r,i,o=UW(e,t);if(Object.getOwnPropertySymbols){var h=Object.getOwnPropertySymbols(e);for(i=0;i<h.length;i++)r=h[i],t.indexOf(r)===-1&&{}.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}function UW(e,t){if(e==null)return{};var r={};for(var i in e)if({}.hasOwnProperty.call(e,i)){if(t.indexOf(i)!==-1)continue;r[i]=e[i]}return r}function FW(e){var t=mt(),r=N.useRef(null),i=iA(),{type:o}=e,h=x_(e,jW),g=ff(i,"xAxis",o),a=N.useMemo(()=>{if(g!=null)return e2(e2({},h),{},{type:g})},[h,g]);return N.useLayoutEffect(()=>{a!=null&&(r.current===null?t(A9(a)):r.current!==a&&t(M9({prev:r.current,next:a})),r.current=a)},[a,t]),N.useLayoutEffect(()=>()=>{r.current&&(t(L9(r.current)),r.current=null)},[t]),null}var WW=e=>{var{xAxisId:t,className:r}=e,i=Re(V_),o=zr(),h="xAxis",g=Re(y=>lL(y,h,t,o)),a=Re(y=>sL(y,t)),c=Re(y=>nz(y,t)),f=Re(y=>MM(y,t));if(a==null||c==null||f==null)return null;var{dangerouslySetInnerHTML:v,ticks:u,scale:m}=e,w=x_(e,IW),{id:C,scale:_}=f,d=x_(f,NW);return N.createElement(s0,C_({},w,d,{x:c.x,y:c.y,width:a.width,height:a.height,className:vt("recharts-".concat(h," ").concat(h),r),viewBox:i,ticks:g,axisType:h,axisId:t}))},qW={allowDataOverflow:Bt.allowDataOverflow,allowDecimals:Bt.allowDecimals,allowDuplicatedCategory:Bt.allowDuplicatedCategory,angle:Bt.angle,axisLine:Ps.axisLine,height:Bt.height,hide:!1,includeHidden:Bt.includeHidden,interval:Bt.interval,label:!1,minTickGap:Bt.minTickGap,mirror:Bt.mirror,orientation:Bt.orientation,padding:Bt.padding,reversed:Bt.reversed,scale:Bt.scale,tick:Bt.tick,tickCount:Bt.tickCount,tickLine:Ps.tickLine,tickSize:Ps.tickSize,type:Bt.type,niceTicks:Bt.niceTicks,xAxisId:0},GW=e=>{var t=ni(e,qW);return N.createElement(N.Fragment,null,N.createElement(FW,{allowDataOverflow:t.allowDataOverflow,allowDecimals:t.allowDecimals,allowDuplicatedCategory:t.allowDuplicatedCategory,angle:t.angle,dataKey:t.dataKey,domain:t.domain,height:t.height,hide:t.hide,id:t.xAxisId,includeHidden:t.includeHidden,interval:t.interval,minTickGap:t.minTickGap,mirror:t.mirror,name:t.name,orientation:t.orientation,padding:t.padding,reversed:t.reversed,scale:t.scale,tick:t.tick,tickCount:t.tickCount,tickFormatter:t.tickFormatter,ticks:t.ticks,type:t.type,unit:t.unit,niceTicks:t.niceTicks}),N.createElement(WW,t))},bO=N.memo(GW,yO);bO.displayName="XAxis";var KW=["type"],YW=["dangerouslySetInnerHTML","ticks","scale"],VW=["id","scale"];function E_(){return E_=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var i in r)({}).hasOwnProperty.call(r,i)&&(e[i]=r[i])}return e},E_.apply(null,arguments)}function t2(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter(function(o){return Object.getOwnPropertyDescriptor(e,o).enumerable})),r.push.apply(r,i)}return r}function r2(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?t2(Object(r),!0).forEach(function(i){XW(e,i,r[i])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):t2(Object(r)).forEach(function(i){Object.defineProperty(e,i,Object.getOwnPropertyDescriptor(r,i))})}return e}function XW(e,t,r){return(t=ZW(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function ZW(e){var t=QW(e,"string");return typeof t=="symbol"?t:t+""}function QW(e,t){if(typeof e!="object"||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var i=r.call(e,t);if(typeof i!="object")return i;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function A_(e,t){if(e==null)return{};var r,i,o=JW(e,t);if(Object.getOwnPropertySymbols){var h=Object.getOwnPropertySymbols(e);for(i=0;i<h.length;i++)r=h[i],t.indexOf(r)===-1&&{}.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}function JW(e,t){if(e==null)return{};var r={};for(var i in e)if({}.hasOwnProperty.call(e,i)){if(t.indexOf(i)!==-1)continue;r[i]=e[i]}return r}function eq(e){var t=mt(),r=N.useRef(null),i=iA(),{type:o}=e,h=A_(e,KW),g=ff(i,"yAxis",o),a=N.useMemo(()=>{if(g!=null)return r2(r2({},h),{},{type:g})},[g,h]);return N.useLayoutEffect(()=>{a!=null&&(r.current===null?t(O9(a)):r.current!==a&&t(T9({prev:r.current,next:a})),r.current=a)},[a,t]),N.useLayoutEffect(()=>()=>{r.current&&(t(D9(r.current)),r.current=null)},[t]),null}function tq(e){var{yAxisId:t,className:r,width:i,label:o}=e,h=N.useRef(null),g=N.useRef(null),a=Re(V_),c=zr(),f=mt(),v="yAxis",u=Re(x=>aL(x,t)),m=Re(x=>az(x,t)),w=Re(x=>lL(x,v,t,c)),C=Re(x=>LM(x,t));if(N.useLayoutEffect(()=>{if(!(i!=="auto"||!u||n0(o)||N.isValidElement(o)||C==null)){var x=h.current;if(x){var O=x.getCalculatedWidth();Math.round(u.width)!==Math.round(O)&&f(R9({id:t,width:O}))}}},[w,u,f,o,t,i,C]),u==null||m==null||C==null)return null;var{dangerouslySetInnerHTML:_,ticks:d,scale:y}=e,b=A_(e,YW),{id:S,scale:E}=C,L=A_(C,VW);return N.createElement(s0,E_({},b,L,{ref:h,labelRef:g,x:m.x,y:m.y,tickTextProps:i==="auto"?{width:void 0}:{width:i},width:u.width,height:u.height,className:vt("recharts-".concat(v," ").concat(v),r),viewBox:a,ticks:w,axisType:v,axisId:t}))}var rq={allowDataOverflow:jt.allowDataOverflow,allowDecimals:jt.allowDecimals,allowDuplicatedCategory:jt.allowDuplicatedCategory,angle:jt.angle,axisLine:Ps.axisLine,hide:!1,includeHidden:jt.includeHidden,interval:jt.interval,label:!1,minTickGap:jt.minTickGap,mirror:jt.mirror,orientation:jt.orientation,padding:jt.padding,reversed:jt.reversed,scale:jt.scale,tick:jt.tick,tickCount:jt.tickCount,tickLine:Ps.tickLine,tickSize:Ps.tickSize,type:jt.type,niceTicks:jt.niceTicks,width:jt.width,yAxisId:0},iq=e=>{var t=ni(e,rq);return N.createElement(N.Fragment,null,N.createElement(eq,{interval:t.interval,id:t.yAxisId,scale:t.scale,type:t.type,domain:t.domain,allowDataOverflow:t.allowDataOverflow,dataKey:t.dataKey,allowDuplicatedCategory:t.allowDuplicatedCategory,allowDecimals:t.allowDecimals,tickCount:t.tickCount,padding:t.padding,includeHidden:t.includeHidden,reversed:t.reversed,ticks:t.ticks,width:t.width,orientation:t.orientation,mirror:t.mirror,hide:t.hide,unit:t.unit,name:t.name,angle:t.angle,minTickGap:t.minTickGap,tick:t.tick,tickFormatter:t.tickFormatter,niceTicks:t.niceTicks}),N.createElement(tq,t))},SO=N.memo(iq,yO);SO.displayName="YAxis";var nq=(e,t)=>t,o0=le([nq,ot,FA,Vt,AL,_n,LH,Kt],BH);function sq(e){return"getBBox"in e.currentTarget&&typeof e.currentTarget.getBBox=="function"}function l0(e){var t=e.currentTarget.getBoundingClientRect(),r,i;if(sq(e)){var o=e.currentTarget.getBBox();r=o.width>0?t.width/o.width:1,i=o.height>0?t.height/o.height:1}else{var h=e.currentTarget;r=h.offsetWidth>0?t.width/h.offsetWidth:1,i=h.offsetHeight>0?t.height/h.offsetHeight:1}var g=(a,c)=>({relativeX:Math.round((a-t.left)/r),relativeY:Math.round((c-t.top)/i)});return"touches"in e?Array.from(e.touches).map(a=>g(a.clientX,a.clientY)):g(e.clientX,e.clientY)}var wO=Ir("mouseClick"),CO=ql();CO.startListening({actionCreator:wO,effect:(e,t)=>{var r=e.payload,i=o0(t.getState(),l0(r));(i==null?void 0:i.activeIndex)!=null&&t.dispatch(wz({activeIndex:i.activeIndex,activeDataKey:void 0,activeCoordinate:i.activeCoordinate}))}});var M_=Ir("mouseMove"),xO=ql(),Na=null,Ss=null,Dp=null;xO.startListening({actionCreator:M_,effect:(e,t)=>{var r=e.payload,i=t.getState(),{throttleDelay:o,throttledEvents:h}=i.eventSettings,g=h==="all"||(h==null?void 0:h.includes("mousemove"));Na!==null&&(cancelAnimationFrame(Na),Na=null),Ss!==null&&(typeof o!="number"||!g)&&(clearTimeout(Ss),Ss=null),Dp=l0(r);var a=()=>{var c=t.getState(),f=ic(c,c.tooltip.settings.shared);if(!Dp){Na=null,Ss=null;return}if(f==="axis"){var v=o0(c,Dp);(v==null?void 0:v.activeIndex)!=null?t.dispatch(pL({activeIndex:v.activeIndex,activeDataKey:void 0,activeCoordinate:v.activeCoordinate})):t.dispatch(gL())}Na=null,Ss=null};if(!g){a();return}o==="raf"?Na=requestAnimationFrame(a):typeof o=="number"&&Ss===null&&(Ss=setTimeout(a,o))}});function aq(e,t){return t instanceof HTMLElement?"HTMLElement <".concat(t.tagName,' class="').concat(t.className,'">'):t===window?"global.window":e==="children"&&typeof t=="object"&&t!==null?"<<CHILDREN>>":t}var i2={accessibilityLayer:!0,barCategoryGap:"10%",barGap:4,barSize:void 0,className:void 0,maxBarSize:void 0,stackOffset:"none",syncId:void 0,syncMethod:"index",baseValue:void 0,reverseStackOrder:!1},EO=lr({name:"rootProps",initialState:i2,reducers:{updateOptions:(e,t)=>{var r;e.accessibilityLayer=t.payload.accessibilityLayer,e.barCategoryGap=t.payload.barCategoryGap,e.barGap=(r=t.payload.barGap)!==null&&r!==void 0?r:i2.barGap,e.barSize=t.payload.barSize,e.maxBarSize=t.payload.maxBarSize,e.stackOffset=t.payload.stackOffset,e.syncId=t.payload.syncId,e.syncMethod=t.payload.syncMethod,e.className=t.payload.className,e.baseValue=t.payload.baseValue,e.reverseStackOrder=t.payload.reverseStackOrder}}}),oq=EO.reducer,{updateOptions:lq}=EO.actions,cq=null,uq={updatePolarOptions:(e,t)=>e===null?t.payload:(e.startAngle=t.payload.startAngle,e.endAngle=t.payload.endAngle,e.cx=t.payload.cx,e.cy=t.payload.cy,e.innerRadius=t.payload.innerRadius,e.outerRadius=t.payload.outerRadius,e)},AO=lr({name:"polarOptions",initialState:cq,reducers:uq}),{updatePolarOptions:$G}=AO.actions,hq=AO.reducer,MO=Ir("keyDown"),LO=Ir("focus"),OO=Ir("blur"),Mf=ql(),za=null,ws=null,Bu=null;Mf.startListening({actionCreator:MO,effect:(e,t)=>{Bu=e.payload,za!==null&&(cancelAnimationFrame(za),za=null);var r=t.getState(),{throttleDelay:i,throttledEvents:o}=r.eventSettings,h=o==="all"||o.includes("keydown");ws!==null&&(typeof i!="number"||!h)&&(clearTimeout(ws),ws=null);var g=()=>{try{var a=t.getState(),c=a.rootProps.accessibilityLayer!==!1;if(!c)return;var{keyboardInteraction:f}=a.tooltip,v=Bu;if(v!=="ArrowRight"&&v!=="ArrowLeft"&&v!=="Enter")return;var u=Al(f,$s(a),eo(a),io(a)),m=u==null?-1:Number(u),w=!Number.isFinite(m)||m<0,C=_n(a),_=$s(a),d=ic(a,a.tooltip.settings.shared);if(v==="Enter"){if(w)return;var y=Dh(a,d,"hover",String(f.index));t.dispatch(Th({active:!f.active,activeIndex:f.index,activeCoordinate:y}));return}var b=hz(a),S=b==="left-to-right"?1:-1,E=v==="ArrowRight"?1:-1,L;if(w){var x=eo(a),O=io(a),M=E*S,D=U=>({active:!1,index:String(U),dataKey:void 0,graphicalItemId:void 0,coordinate:void 0});if(L=-1,M>0){for(var k=0;k<_.length;k++)if(Al(D(k),_,x,O)!=null){L=k;break}}else for(var P=_.length-1;P>=0;P--)if(Al(D(P),_,x,O)!=null){L=P;break}if(L<0)return}else{L=m+E*S;var R=(C==null?void 0:C.length)||_.length;if(R===0||L>=R||L<0)return}var B=Dh(a,d,"hover",String(L));t.dispatch(Th({active:!0,activeIndex:L.toString(),activeCoordinate:B}))}finally{za=null,ws=null}};if(!h){g();return}i==="raf"?za=requestAnimationFrame(g):typeof i=="number"&&ws===null&&(g(),Bu=null,ws=setTimeout(()=>{Bu?g():(ws=null,za=null)},i))}});Mf.startListening({actionCreator:LO,effect:(e,t)=>{var r=t.getState(),i=r.rootProps.accessibilityLayer!==!1;if(i){var{keyboardInteraction:o}=r.tooltip;if(!o.active&&o.index==null){var h="0",g=ic(r,r.tooltip.settings.shared),a=Dh(r,g,"hover",String(h));t.dispatch(Th({active:!0,activeIndex:h,activeCoordinate:a}))}}}});Mf.startListening({actionCreator:OO,effect:(e,t)=>{var r=t.getState(),i=r.rootProps.accessibilityLayer!==!1;if(i){var{keyboardInteraction:o}=r.tooltip;o.active&&t.dispatch(Th({active:!1,activeIndex:o.index,activeCoordinate:o.coordinate}))}}});function TO(e){e.persist();var{currentTarget:t}=e;return new Proxy(e,{get:(r,i)=>{if(i==="currentTarget")return t;var o=Reflect.get(r,i);return typeof o=="function"?o.bind(r):o}})}var Jr=Ir("externalEvent"),DO=ql(),ju=new Map,Sl=new Map,Rp=new Map;DO.startListening({actionCreator:Jr,effect:(e,t)=>{var{handler:r,reactEvent:i}=e.payload;if(r!=null){var o=i.type,h=TO(i);Rp.set(o,{handler:r,reactEvent:h});var g=ju.get(o);g!==void 0&&(cancelAnimationFrame(g),ju.delete(o));var a=t.getState(),{throttleDelay:c,throttledEvents:f}=a.eventSettings,v=f,u=v==="all"||(v==null?void 0:v.includes(o)),m=Sl.get(o);m!==void 0&&(typeof c!="number"||!u)&&(clearTimeout(m),Sl.delete(o));var w=()=>{var d=Rp.get(o);try{if(!d)return;var{handler:y,reactEvent:b}=d,S=t.getState(),E={activeCoordinate:dH(S),activeDataKey:TL(S),activeIndex:no(S),activeLabel:OL(S),activeTooltipIndex:no(S),isTooltipActive:vH(S)};y&&y(E,b)}finally{ju.delete(o),Sl.delete(o),Rp.delete(o)}};if(!u){w();return}if(c==="raf"){var C=requestAnimationFrame(w);ju.set(o,C)}else if(typeof c=="number"){if(!Sl.has(o)){w();var _=setTimeout(w,c);Sl.set(o,_)}}else w()}}});var fq=le([po],e=>e.tooltipItemPayloads),dq=le([fq,(e,t)=>t,(e,t,r)=>r],(e,t,r)=>{if(t!=null){var i=e.find(h=>h.settings.graphicalItemId===r);if(i!=null){var{getPosition:o}=i;if(o!=null)return o(t)}}}),RO=Ir("touchMove"),kO=ql(),Cs=null,Un=null,n2=null,wl=null;kO.startListening({actionCreator:RO,effect:(e,t)=>{var r=e.payload;if(!(r.touches==null||r.touches.length===0)){wl=TO(r);var i=t.getState(),{throttleDelay:o,throttledEvents:h}=i.eventSettings,g=h==="all"||h.includes("touchmove");Cs!==null&&(cancelAnimationFrame(Cs),Cs=null),Un!==null&&(typeof o!="number"||!g)&&(clearTimeout(Un),Un=null),n2=Array.from(r.touches).map(c=>l0({clientX:c.clientX,clientY:c.clientY,currentTarget:r.currentTarget}));var a=()=>{if(wl!=null){var c=t.getState(),f=ic(c,c.tooltip.settings.shared);if(f==="axis"){var v,u=(v=n2)===null||v===void 0?void 0:v[0];if(u==null){Cs=null,Un=null;return}var m=o0(c,u);(m==null?void 0:m.activeIndex)!=null&&t.dispatch(pL({activeIndex:m.activeIndex,activeDataKey:void 0,activeCoordinate:m.activeCoordinate}))}else if(f==="item"){var w,C=wl.touches[0];if(document.elementFromPoint==null||C==null)return;var _=document.elementFromPoint(C.clientX,C.clientY);if(!_||!_.getAttribute)return;var d=_.getAttribute(M6),y=(w=_.getAttribute(L6))!==null&&w!==void 0?w:void 0,b=qs(c).find(L=>L.id===y);if(d==null||b==null||y==null)return;var{dataKey:S}=b,E=dq(c,d,y);t.dispatch(vL({activeDataKey:S,activeIndex:d,activeCoordinate:E,activeGraphicalItemId:y}))}Cs=null,Un=null}};if(!g){a();return}o==="raf"?Cs=requestAnimationFrame(a):typeof o=="number"&&Un===null&&(a(),wl=null,Un=setTimeout(()=>{wl?a():(Un=null,Cs=null)},o))}}});var PO={throttleDelay:"raf",throttledEvents:["mousemove","touchmove","pointermove","scroll","wheel"]},BO=lr({name:"eventSettings",initialState:PO,reducers:{setEventSettings:(e,t)=>{t.payload.throttleDelay!=null&&(e.throttleDelay=t.payload.throttleDelay),t.payload.throttledEvents!=null&&(e.throttledEvents=t.payload.throttledEvents)}}}),{setEventSettings:vq}=BO.actions,gq=BO.reducer,pq=CE({brush:G9,cartesianAxis:k9,chartData:f$,errorBars:TF,eventSettings:gq,graphicalItems:y9,layout:c6,legend:CB,options:o$,polarAxis:IU,polarOptions:hq,referenceElements:X9,renderedTicks:vF,rootProps:oq,tooltip:Cz,zIndex:YH}),_q=function(t){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"Chart";return P4({reducer:pq,preloadedState:t,middleware:i=>{var o;return i({serializableCheck:!1,immutableCheck:!["commonjs","es6","production"].includes((o="es6")!==null&&o!==void 0?o:"")}).concat([CO.middleware,xO.middleware,Mf.middleware,DO.middleware,kO.middleware])},enhancers:i=>{var o=i;return typeof i=="function"&&(o=i()),o.concat(NE({type:"raf"}))},devTools:{serialize:{replacer:aq},name:"recharts-".concat(r)}})};function mq(e){var{preloadedState:t,children:r,reduxStoreName:i}=e,o=zr(),h=N.useRef(null);if(o)return r;h.current==null&&(h.current=_q(t,i));var g=U_;return N.createElement(zB,{context:g,store:h.current},r)}function yq(e){var{layout:t,margin:r}=e,i=mt(),o=zr();return N.useEffect(()=>{o||(i(a6(t)),i(s6(r)))},[i,o,t,r]),null}var bq=N.memo(yq,lf);function Sq(e){var t=mt();return N.useEffect(()=>{t(lq(e))},[t,e]),null}var wq=e=>{var t=mt();return N.useEffect(()=>{t(vq(e))},[t,e]),null},Cq=N.memo(wq,lf);function s2(e){var{zIndex:t,isPanorama:r}=e,i=N.useRef(null),o=mt();return N.useLayoutEffect(()=>(i.current&&o(GH({zIndex:t,element:i.current,isPanorama:r})),()=>{o(KH({zIndex:t,isPanorama:r}))}),[o,t,r]),N.createElement("g",{tabIndex:-1,ref:i,className:"recharts-zIndex-layer_".concat(t)})}function a2(e){var{children:t,isPanorama:r}=e,i=Re(IH);if(!i||i.length===0)return t;var o=i.filter(g=>g<0),h=i.filter(g=>g>0);return N.createElement(N.Fragment,null,o.map(g=>N.createElement(s2,{key:g,zIndex:g,isPanorama:r})),t,h.map(g=>N.createElement(s2,{key:g,zIndex:g,isPanorama:r})))}var xq=["children"];function Eq(e,t){if(e==null)return{};var r,i,o=Aq(e,t);if(Object.getOwnPropertySymbols){var h=Object.getOwnPropertySymbols(e);for(i=0;i<h.length;i++)r=h[i],t.indexOf(r)===-1&&{}.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}function Aq(e,t){if(e==null)return{};var r={};for(var i in e)if({}.hasOwnProperty.call(e,i)){if(t.indexOf(i)!==-1)continue;r[i]=e[i]}return r}function jh(){return jh=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var i in r)({}).hasOwnProperty.call(r,i)&&(e[i]=r[i])}return e},jh.apply(null,arguments)}var Mq={width:"100%",height:"100%",display:"block"},Lq=N.forwardRef((e,t)=>{var r=sB(),i=aB(),o=dA();if(!Xn(r)||!Xn(i))return null;var{children:h,otherAttributes:g,title:a,desc:c}=e,f,v;return g!=null&&(typeof g.tabIndex=="number"?f=g.tabIndex:f=o?0:void 0,typeof g.role=="string"?v=g.role:v=o?"application":void 0),N.createElement(H2,jh({},g,{title:a,desc:c,role:v,tabIndex:f,width:r,height:i,style:Mq,ref:t}),h)}),Oq=e=>{var{children:t}=e,r=Re(rf);if(!r)return null;var{width:i,height:o,y:h,x:g}=r;return N.createElement(H2,{width:i,height:o,x:g,y:h},t)},o2=N.forwardRef((e,t)=>{var{children:r}=e,i=Eq(e,xq),o=zr();return o?N.createElement(Oq,null,N.createElement(a2,{isPanorama:!0},r)):N.createElement(Lq,jh({ref:t},i),N.createElement(a2,{isPanorama:!1},r))});function Tq(){var e=mt(),[t,r]=N.useState(null),i=Re(A6);return N.useEffect(()=>{if(t!=null){var o=t.getBoundingClientRect(),h=o.width/t.offsetWidth;Ze(h)&&h!==i&&e(l6(h))}},[t,e,i]),r}function l2(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter(function(o){return Object.getOwnPropertyDescriptor(e,o).enumerable})),r.push.apply(r,i)}return r}function Dq(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?l2(Object(r),!0).forEach(function(i){Rq(e,i,r[i])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):l2(Object(r)).forEach(function(i){Object.defineProperty(e,i,Object.getOwnPropertyDescriptor(r,i))})}return e}function Rq(e,t,r){return(t=kq(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function kq(e){var t=Pq(e,"string");return typeof t=="symbol"?t:t+""}function Pq(e,t){if(typeof e!="object"||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var i=r.call(e,t);if(typeof i!="object")return i;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function Yn(){return Yn=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var i in r)({}).hasOwnProperty.call(r,i)&&(e[i]=r[i])}return e},Yn.apply(null,arguments)}var Bq=()=>(S$(),null);function Ih(e){if(typeof e=="number")return e;if(typeof e=="string"){var t=parseFloat(e);if(!Number.isNaN(t))return t}return 0}var jq=N.forwardRef((e,t)=>{var r,i,o=N.useRef(null),[h,g]=N.useState({containerWidth:Ih((r=e.style)===null||r===void 0?void 0:r.width),containerHeight:Ih((i=e.style)===null||i===void 0?void 0:i.height)}),a=N.useCallback((f,v)=>{g(u=>{var m=Math.round(f),w=Math.round(v);return u.containerWidth===m&&u.containerHeight===w?u:{containerWidth:m,containerHeight:w}})},[]),c=N.useCallback(f=>{if(typeof t=="function"&&t(f),o.current!=null&&(o.current.disconnect(),o.current=null),f!=null&&typeof ResizeObserver<"u"){var{width:v,height:u}=f.getBoundingClientRect();a(v,u);var m=C=>{var _=C[0];if(_!=null){var{width:d,height:y}=_.contentRect;a(d,y)}},w=new ResizeObserver(m);w.observe(f),o.current=w}},[t,a]);return N.useEffect(()=>()=>{var f=o.current;f!=null&&f.disconnect()},[a]),N.createElement(N.Fragment,null,N.createElement(Kl,{width:h.containerWidth,height:h.containerHeight}),N.createElement("div",Yn({ref:c},e)))}),Iq=N.forwardRef((e,t)=>{var{width:r,height:i}=e,[o,h]=N.useState({containerWidth:Ih(r),containerHeight:Ih(i)}),g=N.useCallback((c,f)=>{h(v=>{var u=Math.round(c),m=Math.round(f);return v.containerWidth===u&&v.containerHeight===m?v:{containerWidth:u,containerHeight:m}})},[]),a=N.useCallback(c=>{if(typeof t=="function"&&t(c),c!=null){var{width:f,height:v}=c.getBoundingClientRect();g(f,v)}},[t,g]);return N.createElement(N.Fragment,null,N.createElement(Kl,{width:o.containerWidth,height:o.containerHeight}),N.createElement("div",Yn({ref:a},e)))}),Nq=N.forwardRef((e,t)=>{var{width:r,height:i}=e;return N.createElement(N.Fragment,null,N.createElement(Kl,{width:r,height:i}),N.createElement("div",Yn({ref:t},e)))}),zq=N.forwardRef((e,t)=>{var{width:r,height:i}=e;return typeof r=="string"||typeof i=="string"?N.createElement(Iq,Yn({},e,{ref:t})):typeof r=="number"&&typeof i=="number"?N.createElement(Nq,Yn({},e,{width:r,height:i,ref:t})):N.createElement(N.Fragment,null,N.createElement(Kl,{width:r,height:i}),N.createElement("div",Yn({ref:t},e)))});function Hq(e){return e?jq:zq}var $q=N.forwardRef((e,t)=>{var{children:r,className:i,height:o,onClick:h,onContextMenu:g,onDoubleClick:a,onMouseDown:c,onMouseEnter:f,onMouseLeave:v,onMouseMove:u,onMouseUp:m,onTouchEnd:w,onTouchMove:C,onTouchStart:_,style:d,width:y,responsive:b,dispatchTouchEvents:S=!0}=e,E=N.useRef(null),L=mt(),[x,O]=N.useState(null),[M,D]=N.useState(null),k=Tq(),P=X_(),R=(P==null?void 0:P.width)>0?P.width:y,B=(P==null?void 0:P.height)>0?P.height:o,U=N.useCallback(Q=>{k(Q),typeof t=="function"&&t(Q),O(Q),D(Q),Q!=null&&(E.current=Q)},[k,t,O,D]),V=N.useCallback(Q=>{L(wO(Q)),L(Jr({handler:h,reactEvent:Q}))},[L,h]),q=N.useCallback(Q=>{L(M_(Q)),L(Jr({handler:f,reactEvent:Q}))},[L,f]),Y=N.useCallback(Q=>{L(gL()),L(Jr({handler:v,reactEvent:Q}))},[L,v]),W=N.useCallback(Q=>{L(M_(Q)),L(Jr({handler:u,reactEvent:Q}))},[L,u]),j=N.useCallback(()=>{L(LO())},[L]),H=N.useCallback(()=>{L(OO())},[L]),z=N.useCallback(Q=>{L(MO(Q.key))},[L]),F=N.useCallback(Q=>{L(Jr({handler:g,reactEvent:Q}))},[L,g]),Z=N.useCallback(Q=>{L(Jr({handler:a,reactEvent:Q}))},[L,a]),re=N.useCallback(Q=>{L(Jr({handler:c,reactEvent:Q}))},[L,c]),he=N.useCallback(Q=>{L(Jr({handler:m,reactEvent:Q}))},[L,m]),ge=N.useCallback(Q=>{L(Jr({handler:_,reactEvent:Q}))},[L,_]),X=N.useCallback(Q=>{S&&L(RO(Q)),L(Jr({handler:C,reactEvent:Q}))},[L,S,C]),G=N.useCallback(Q=>{L(Jr({handler:w,reactEvent:Q}))},[L,w]),ee=Hq(b);return N.createElement(IL.Provider,{value:x},N.createElement(fk.Provider,{value:M},N.createElement(ee,{width:R??(d==null?void 0:d.width),height:B??(d==null?void 0:d.height),className:vt("recharts-wrapper",i),style:Dq({position:"relative",cursor:"default",width:R,height:B},d),onClick:V,onContextMenu:F,onDoubleClick:Z,onFocus:j,onBlur:H,onKeyDown:z,onMouseDown:re,onMouseEnter:q,onMouseLeave:Y,onMouseMove:W,onMouseUp:he,onTouchEnd:G,onTouchMove:X,onTouchStart:ge,ref:U},N.createElement(Bq,null),r)))}),Uq=["width","height","responsive","children","className","style","compact","title","desc"];function Fq(e,t){if(e==null)return{};var r,i,o=Wq(e,t);if(Object.getOwnPropertySymbols){var h=Object.getOwnPropertySymbols(e);for(i=0;i<h.length;i++)r=h[i],t.indexOf(r)===-1&&{}.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}function Wq(e,t){if(e==null)return{};var r={};for(var i in e)if({}.hasOwnProperty.call(e,i)){if(t.indexOf(i)!==-1)continue;r[i]=e[i]}return r}var qq=N.forwardRef((e,t)=>{var{width:r,height:i,responsive:o,children:h,className:g,style:a,compact:c,title:f,desc:v}=e,u=Fq(e,Uq),m=Vn(u);return c?N.createElement(N.Fragment,null,N.createElement(Kl,{width:r,height:i}),N.createElement(o2,{otherAttributes:m,title:f,desc:v},h)):N.createElement($q,{className:g,style:a,width:r,height:i,responsive:o??!1,onClick:e.onClick,onMouseLeave:e.onMouseLeave,onMouseEnter:e.onMouseEnter,onMouseMove:e.onMouseMove,onMouseDown:e.onMouseDown,onMouseUp:e.onMouseUp,onContextMenu:e.onContextMenu,onDoubleClick:e.onDoubleClick,onTouchStart:e.onTouchStart,onTouchMove:e.onTouchMove,onTouchEnd:e.onTouchEnd},N.createElement(o2,{otherAttributes:m,title:f,desc:v,ref:t},N.createElement(Q9,null,h)))});function L_(){return L_=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var i in r)({}).hasOwnProperty.call(r,i)&&(e[i]=r[i])}return e},L_.apply(null,arguments)}function c2(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter(function(o){return Object.getOwnPropertyDescriptor(e,o).enumerable})),r.push.apply(r,i)}return r}function Gq(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?c2(Object(r),!0).forEach(function(i){Kq(e,i,r[i])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):c2(Object(r)).forEach(function(i){Object.defineProperty(e,i,Object.getOwnPropertyDescriptor(r,i))})}return e}function Kq(e,t,r){return(t=Yq(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function Yq(e){var t=Vq(e,"string");return typeof t=="symbol"?t:t+""}function Vq(e,t){if(typeof e!="object"||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var i=r.call(e,t);if(typeof i!="object")return i;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}var Xq={top:5,right:5,bottom:5,left:5},Zq=Gq({accessibilityLayer:!0,barCategoryGap:"10%",barGap:4,layout:"horizontal",margin:Xq,responsive:!1,reverseStackOrder:!1,stackOffset:"none",syncMethod:"index"},PO),Qq=N.forwardRef(function(t,r){var i,o=ni(t.categoricalChartProps,Zq),{chartName:h,defaultTooltipEventType:g,validateTooltipEventTypes:a,tooltipPayloadSearcher:c,categoricalChartProps:f}=t,v={chartName:h,defaultTooltipEventType:g,validateTooltipEventTypes:a,tooltipPayloadSearcher:c,eventEmitter:void 0};return N.createElement(mq,{preloadedState:{options:v},reduxStoreName:(i=f.id)!==null&&i!==void 0?i:h},N.createElement(q9,{chartData:f.data}),N.createElement(bq,{layout:o.layout,margin:o.margin}),N.createElement(Cq,{throttleDelay:o.throttleDelay,throttledEvents:o.throttledEvents}),N.createElement(Sq,{baseValue:o.baseValue,accessibilityLayer:o.accessibilityLayer,barCategoryGap:o.barCategoryGap,maxBarSize:o.maxBarSize,stackOffset:o.stackOffset,barGap:o.barGap,barSize:o.barSize,syncId:o.syncId,syncMethod:o.syncMethod,className:o.className,reverseStackOrder:o.reverseStackOrder}),N.createElement(qq,L_({},o,{ref:r})))}),Jq=["axis","item"],eG=N.forwardRef((e,t)=>N.createElement(Qq,{chartName:"BarChart",defaultTooltipEventType:"axis",validateTooltipEventTypes:Jq,tooltipPayloadSearcher:s$,categoricalChartProps:e,ref:t}));const u2=["#6366f1","#8b5cf6","#a78bfa","#c4b5fd","#ddd6fe","#818cf8","#4f46e5","#7c3aed","#5b21b6","#3730a3"];function Nh(e,t=1,r=""){return e===null?"—":`${Number(e.toFixed(t))}${r}`}function h2(e){return e===null?"—":`$${e.toFixed(2)}`}function f2(e){return e===null?"—":`${e.toFixed(1)}%`}function jO({title:e,error:t,defaultOpen:r=!0,children:i}){const[o,h]=N.useState(r);return $.jsxs("section",{className:"analytics-section",children:[$.jsxs("h3",{className:"analytics-section-title",onClick:()=>h(!o),style:{cursor:"pointer",userSelect:"none"},children:[$.jsx("span",{className:"analytics-collapse-icon",children:o?"▾":"▸"}),e]}),t&&$.jsx("div",{className:"analytics-error",children:t}),o&&i]})}function O_({children:e}){return $.jsx("div",{className:"analytics-metric-grid",children:e})}function nn({label:e,value:t}){return $.jsxs("div",{className:"analytics-metric",children:[$.jsx("span",{className:"analytics-metric-value",children:t}),$.jsx("span",{className:"analytics-metric-label",children:e})]})}function Fu({data:e,dataKey:t,nameKey:r,color:i,formatter:o}){if(e.length===0)return null;const h=Math.max(120,e.length*28+30);return $.jsx(rB,{width:"100%",height:h,children:$.jsxs(eG,{data:e,layout:"vertical",margin:{top:4,right:40,bottom:4,left:0},children:[$.jsx(bO,{type:"number",hide:!0}),$.jsx(SO,{type:"category",dataKey:r,width:80,tick:{fontSize:10,fill:"var(--text-secondary)"}}),$.jsx(O$,{formatter:o?(g=>typeof g=="number"?o(g):""):void 0,contentStyle:{background:"var(--bg-primary)",border:"1px solid var(--border-color)",fontSize:11,borderRadius:4},labelStyle:{color:"var(--text-primary)"},itemStyle:{color:"var(--text-secondary)"}}),$.jsx(mO,{dataKey:t,radius:[0,3,3,0],children:e.map((g,a)=>$.jsx(r0,{fill:i??u2[a%u2.length]},a))})]})})}function d2(e){return e===null?"—":e<1?`${Math.round(e*60)}m`:`${Number(e.toFixed(1))}h`}function tG({activity:e,errors:t}){const r=Object.entries(e.projectsByProtocol).map(([i,o])=>({name:i.toUpperCase(),count:o.count,avgWallClock:o.avgWallClockHours,avgAgentTime:o.avgAgentTimeHours})).sort((i,o)=>o.count-i.count);return $.jsxs(jO,{title:"Activity",error:t==null?void 0:t.github,children:[r.length>0&&$.jsxs("div",{className:"analytics-sub-section",children:[$.jsx("h4",{className:"analytics-sub-title",children:"Projects by Protocol"}),$.jsx(O_,{children:r.map(i=>$.jsx(nn,{label:i.name,value:`${i.count} (wall ${d2(i.avgWallClock)}${i.avgAgentTime!=null?`, agent ${d2(i.avgAgentTime)}`:""})`},i.name))}),$.jsx(Fu,{data:r,dataKey:"count",nameKey:"name"})]}),$.jsxs(O_,{children:[$.jsx(nn,{label:"PRs Merged",value:String(e.prsMerged)}),$.jsx(nn,{label:"Issues Closed",value:String(e.issuesClosed)}),$.jsx(nn,{label:"Median Time to Merge",value:Nh(e.medianTimeToMergeHours,1,"h")}),$.jsx(nn,{label:"Median Time to Close Bugs",value:Nh(e.medianTimeToCloseBugsHours,1,"h")})]})]})}function rG({consultation:e,errors:t}){const r=e.byModel.map(h=>({name:h.model,count:h.count,cost:h.totalCost??0,latency:h.avgLatency,success:h.successRate})),i=Object.entries(e.byReviewType).map(([h,g])=>({name:h,value:g})),o=Object.entries(e.byProtocol).map(([h,g])=>({name:h,value:g}));return $.jsxs(jO,{title:"Consultation",error:t==null?void 0:t.consultation,children:[$.jsxs(O_,{children:[$.jsx(nn,{label:"Total Consultations",value:String(e.totalCount)}),$.jsx(nn,{label:"Total Cost",value:h2(e.totalCostUsd)}),$.jsx(nn,{label:"Avg Latency",value:Nh(e.avgLatencySeconds,1,"s")}),$.jsx(nn,{label:"Success Rate",value:f2(e.successRate)})]}),r.length>0&&$.jsxs("div",{className:"analytics-sub-section",children:[$.jsx("h4",{className:"analytics-sub-title",children:"Cost by Model"}),$.jsx(Fu,{data:r,dataKey:"cost",nameKey:"name",formatter:h=>`$${h.toFixed(2)}`})]}),r.length>0&&$.jsxs("div",{className:"analytics-sub-section",children:[$.jsx("h4",{className:"analytics-sub-title",children:"Per Model"}),$.jsxs("table",{className:"analytics-table",children:[$.jsx("thead",{children:$.jsxs("tr",{children:[$.jsx("th",{children:"Model"}),$.jsx("th",{children:"Count"}),$.jsx("th",{children:"Cost"}),$.jsx("th",{children:"Latency"}),$.jsx("th",{children:"Success"})]})}),$.jsx("tbody",{children:e.byModel.map(h=>$.jsxs("tr",{children:[$.jsx("td",{children:h.model}),$.jsx("td",{children:h.count}),$.jsx("td",{children:h2(h.totalCost)}),$.jsx("td",{children:Nh(h.avgLatency,1,"s")}),$.jsx("td",{children:f2(h.successRate)})]},h.model))})]})]}),(i.length>0||o.length>0)&&$.jsxs("div",{className:"analytics-charts-row",children:[i.length>0&&$.jsxs("div",{className:"analytics-sub-section analytics-chart-half",children:[$.jsx("h4",{className:"analytics-sub-title",children:"By Review Type"}),$.jsx(Fu,{data:i,dataKey:"value",nameKey:"name"})]}),o.length>0&&$.jsxs("div",{className:"analytics-sub-section analytics-chart-half",children:[$.jsx("h4",{className:"analytics-sub-title",children:"By Protocol"}),$.jsx(Fu,{data:o,dataKey:"value",nameKey:"name"})]})]})]})}function iG({isActive:e}){const{data:t,error:r,loading:i,range:o,setRange:h,refresh:g}=rk(e),a=["24h","7d","30d","all"];return $.jsx("div",{className:"analytics-view",children:$.jsxs("div",{className:"analytics-content",children:[$.jsxs("div",{className:"analytics-header",children:[$.jsx("h2",{className:"analytics-title",children:"Analytics"}),$.jsxs("div",{className:"analytics-actions",children:[$.jsx("div",{className:"analytics-range-selector",children:a.map(c=>$.jsx("button",{className:`analytics-range-btn ${o===c?"active":""}`,onClick:()=>h(c),children:c==="all"?"All":c},c))}),$.jsx("button",{className:"work-btn work-btn-secondary",onClick:g,disabled:i,children:i?"Loading...":"Refresh"})]})]}),r&&!t&&$.jsx("div",{className:"analytics-error",children:r}),i&&!t&&$.jsx("div",{className:"analytics-loading",children:"Loading analytics..."}),t&&$.jsxs($.Fragment,{children:[$.jsx(tG,{activity:t.activity,errors:t.errors}),$.jsx(rG,{consultation:t.consultation,errors:t.errors})]})]})})}function nG(e){const[t,r]=N.useState(null),[i,o]=N.useState(null),[h,g]=N.useState(!1),a=N.useCallback(async()=>{g(!0),o(null);try{const f=await _R();r(f)}catch(f){o(f instanceof Error?f.message:"Failed to fetch team data")}finally{g(!1)}},[]);N.useEffect(()=>{e&&a()},[e,a]);const c=N.useCallback(()=>{a()},[a]);return{data:t,error:i,loading:h,refresh:c}}function sG(e){if(!e)return"";const t=Date.now()-new Date(e).getTime();if(!isFinite(t)||t<0)return"";const r=Math.floor(t/(1e3*60*60));return r<1?"<1h waiting":r<24?`${r}h waiting`:`${Math.floor(r/24)}d waiting`}function aG({entries:e}){return e.length===0?null:$.jsxs("div",{className:"team-member-section team-review-blocking",children:[$.jsx("span",{className:"team-section-label",children:"Review blocking"}),$.jsx("ul",{className:"team-review-blocking-list",children:e.map((t,r)=>$.jsxs("li",{className:"team-review-blocking-item",children:[$.jsxs("span",{className:"team-review-blocking-sentence",children:[t.direction==="authored"?$.jsxs($.Fragment,{children:["You're waiting for ",$.jsx("strong",{children:t.otherName})," to review"," "]}):$.jsxs($.Fragment,{children:[$.jsx("strong",{children:t.otherName})," is waiting for you to review"," "]}),$.jsxs("a",{className:"team-item-link team-review-blocking-link",href:t.pr.url,target:"_blank",rel:"noopener noreferrer",children:["#",t.pr.number," ",t.pr.title]})]}),$.jsx("span",{className:"team-review-blocking-age",children:sG(t.pr.createdAt)})]},`${t.direction}-${t.pr.number}-${t.otherGithub}-${r}`))})]})}function oG({member:e}){const t=e.github_data,r=(t==null?void 0:t.recentActivity.mergedPRs.length)??0,i=(t==null?void 0:t.recentActivity.closedIssues.length)??0;return $.jsxs("div",{className:"team-member-card",children:[$.jsxs("div",{className:"team-member-header",children:[$.jsx("span",{className:"team-member-name",children:e.name}),$.jsx("span",{className:"team-member-role",children:e.role})]}),$.jsxs("a",{className:"team-member-github",href:`https://github.com/${e.github}`,target:"_blank",rel:"noopener noreferrer",children:["@",e.github]}),t&&$.jsxs($.Fragment,{children:[$.jsxs("div",{className:"team-member-section",children:[$.jsx("span",{className:"team-section-label",children:"Working on"}),t.assignedIssues.length>0?$.jsx("div",{className:"team-item-list",children:t.assignedIssues.map(o=>$.jsxs("a",{className:"team-item-link",href:o.url,target:"_blank",rel:"noopener noreferrer",children:["#",o.number," ",o.title]},o.number))}):$.jsx("span",{className:"team-item-empty",children:"No assigned issues"})]}),$.jsxs("div",{className:"team-member-section",children:[$.jsx("span",{className:"team-section-label",children:"Open PRs"}),t.openPRs.length>0?$.jsx("div",{className:"team-item-list",children:t.openPRs.map(o=>$.jsxs("a",{className:"team-item-link",href:o.url,target:"_blank",rel:"noopener noreferrer",children:["#",o.number," ",o.title]},o.number))}):$.jsx("span",{className:"team-item-empty",children:"No open PRs"})]}),$.jsx(aG,{entries:t.reviewBlocking??[]})]}),(r>0||i>0)&&$.jsxs("div",{className:"team-member-activity",children:[r>0&&$.jsxs("span",{children:[r," merged"]}),i>0&&$.jsxs("span",{children:[i," closed"]}),$.jsx("span",{className:"team-activity-label",children:"last 7d"})]})]})}function lG({message:e}){return $.jsxs("div",{className:"team-message",children:[$.jsxs("div",{className:"team-message-header",children:[$.jsx("span",{className:"team-message-author",children:e.author}),$.jsx("span",{className:"team-message-time",children:e.timestamp})]}),$.jsx("div",{className:"team-message-body",children:e.body})]})}function cG(e){const t=Date.now()-new Date(e).getTime(),r=Math.floor(t/(1e3*60*60));return r<1?"just now":r<24?`${r}h ago`:`${Math.floor(r/24)}d ago`}function uG(e){const t=[];for(const r of e){const i=r.github_data;if(i){for(const o of i.recentActivity.mergedPRs)t.push({type:"merged",number:o.number,title:o.title,url:o.url,timestamp:o.mergedAt,author:r.github});for(const o of i.recentActivity.closedIssues)t.push({type:"closed",number:o.number,title:o.title,url:o.url,timestamp:o.closedAt,author:r.github})}}return t.sort((r,i)=>new Date(i.timestamp).getTime()-new Date(r.timestamp).getTime()),t}function hG({members:e}){const t=uG(e);return t.length===0?$.jsx("div",{className:"team-no-messages",children:"No recent activity"}):$.jsx("div",{className:"team-activity-feed",children:t.map((r,i)=>$.jsxs("a",{className:"team-activity-entry",href:r.url,target:"_blank",rel:"noopener noreferrer",children:[$.jsx("span",{className:"team-activity-date",children:cG(r.timestamp)}),$.jsxs("span",{className:"team-activity-author",children:["@",r.author]}),$.jsx("span",{className:"team-activity-action",children:r.type}),$.jsxs("span",{className:"team-activity-ref",children:["#",r.number]}),$.jsx("span",{className:"team-activity-title",children:r.title})]},`${r.type}-${r.number}-${i}`))})}function fG({isActive:e}){const{data:t,error:r,loading:i,refresh:o}=nG(e);if(i&&!t)return $.jsx("div",{className:"team-view",children:$.jsx("div",{className:"team-loading",children:"Loading team data..."})});if(r&&!t)return $.jsx("div",{className:"team-view",children:$.jsx("div",{className:"team-error",children:r})});if(!t||!t.enabled)return null;const h=t.members??[],a=[...t.messages??[]].reverse();return $.jsx("div",{className:"team-view",children:$.jsxs("div",{className:"team-content",children:[$.jsxs("div",{className:"team-header",children:[$.jsx("h2",{className:"team-title",children:"Team"}),$.jsx("button",{className:"team-refresh-btn",onClick:o,disabled:i,children:i?"Refreshing...":"Refresh"})]}),t.githubError&&$.jsx("div",{className:"team-error",children:t.githubError}),$.jsxs("div",{className:"team-section",children:[$.jsxs("h3",{className:"team-section-title",children:["Members (",h.length,")"]}),$.jsx("div",{className:"team-member-grid",children:h.map(c=>$.jsx(oG,{member:c},c.github))})]}),$.jsxs("div",{className:"team-section",children:[$.jsx("h3",{className:"team-section-title",children:"Messages"}),a.length===0?$.jsx("div",{className:"team-no-messages",children:"No messages yet"}):$.jsx("div",{className:"team-messages",children:a.map((c,f)=>$.jsx(lG,{message:c},f))})]}),$.jsxs("div",{className:"team-section",children:[$.jsx("h3",{className:"team-section-title",children:"Recent Activity"}),$.jsx(hG,{members:h})]})]})})}function dG(e,t){const r=e==null?void 0:e.trim(),i=t==null?void 0:t.trim();return r&&i&&r.toLowerCase()!==i.toLowerCase()?`${i} on ${r} overview`:i?`${i} overview`:"overview"}function vG(){const{state:e,refresh:t}=TR(),{data:r}=w2(),{tabs:i,activeTab:o,activeTabId:h,selectTab:g}=PR(e),a=S2(`(max-width: ${p2}px)`),[c,f]=N.useState(null),[v,u]=N.useState(()=>jR()),[m,w]=N.useState(null),[C,_]=N.useState(!1),[d,y]=N.useState(null);N.useEffect(()=>{(o==null?void 0:o.type)==="architect"&&o.architectName&&u(o.architectName)},[o==null?void 0:o.id,o==null?void 0:o.type,o==null?void 0:o.architectName]);const[b,S]=N.useState(new Set),E=N.useRef(new Map),L=N.useCallback(async(W,j,H,z)=>{try{const F=await zh(W,j,z);j&&j>0&&E.current.set(F.id,j),t()}catch(F){console.error("Failed to open file:",F)}},[t]),x=dG(e==null?void 0:e.hostname,e==null?void 0:e.workspaceName);N.useEffect(()=>{document.title=x},[x]);const[O]=N.useState(()=>new URLSearchParams(window.location.search).get("fullscreen")==="1");N.useEffect(()=>{if(!o)return;(o.type==="architect"||o.type==="builder"||o.type==="shell")&&S(j=>{if(j.has(o.id))return j;const H=new Set(j);return H.add(o.id),H})},[o==null?void 0:o.id,o==null?void 0:o.type]);const M=W=>{const j=Gv(W);return j?$.jsx(Zv,{wsPath:j,onFileOpen:L,persistent:W.persistent,onPermanentClose:t}):$.jsx("div",{className:"no-terminal",children:"No terminal session"})},D=W=>{if(!W.annotationId||!e)return $.jsx("div",{className:"no-terminal",children:"No file viewer"});if(!e.annotations.find(z=>z.id===W.annotationId))return $.jsx("div",{className:"no-terminal",children:"Annotation not found"});const H=E.current.get(W.annotationId);return H!==void 0&&E.current.delete(W.annotationId),$.jsx(ek,{tabId:W.annotationId,initialLine:H??W.initialLine})},k=N.useCallback((W,j,H)=>W.map(z=>{const F=Gv(z),Z=j===z.id;return $.jsx("div",{className:"terminal-tab-pane",style:{display:Z?void 0:"none"},children:F?$.jsx(Zv,{wsPath:F,onFileOpen:L,persistent:z.persistent,toolbarExtra:Z?H:void 0,onPermanentClose:t}):$.jsx("div",{className:"no-terminal",children:"No terminal session"})},z.id)}),[L,t]),P=W=>{const j=i.filter(H=>W.includes(H.type)&&b.has(H.id));return $.jsxs($.Fragment,{children:[k(j,h),$.jsx("div",{style:{display:(o==null?void 0:o.type)==="work"?void 0:"none",height:"100%"},children:$.jsx(V3,{state:e,onRefresh:t,onSelectTab:g})}),$.jsx("div",{style:{display:(o==null?void 0:o.type)==="analytics"?void 0:"none",height:"100%"},children:$.jsx(iG,{isActive:(o==null?void 0:o.type)==="analytics"})}),(e==null?void 0:e.teamEnabled)&&$.jsx("div",{style:{display:(o==null?void 0:o.type)==="team"?void 0:"none",height:"100%"},children:$.jsx(fG,{isActive:(o==null?void 0:o.type)==="team"})}),(o==null?void 0:o.type)==="file"&&D(o)]})};if(O)return o&&(o.type==="architect"||o.type==="builder"||o.type==="shell")?$.jsx("div",{className:"fullscreen-terminal",children:M(o)}):$.jsx("div",{className:"fullscreen-terminal"});if(a)return $.jsx("div",{className:"mobile-wrapper",children:$.jsx(J3,{tabs:i,activeTabId:h,onSelectTab:g,onRefresh:t,children:P(["architect","builder","shell"])})});const R=i.filter(W=>W.type==="architect"),B=R[0],U=()=>{f(c==="right"?null:"left")},V=()=>{f(c==="left"?null:"right")},q=$.jsxs($.Fragment,{children:[c!=="left"&&$.jsx("button",{className:"terminal-control-btn",onPointerDown:W=>W.preventDefault(),onClick:U,title:c==="right"?"Restore split layout":"Collapse architect panel","aria-label":c==="right"?"Restore split layout":"Collapse architect panel",children:$.jsxs("svg",{width:"16",height:"16",viewBox:"0 0 16 16",fill:"none",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round",children:[$.jsx("line",{x1:"3",y1:"2",x2:"3",y2:"14"}),$.jsx("path",{d:"M12 5l-4 3 4 3"})]})}),c!=="right"&&$.jsx("button",{className:"terminal-control-btn",onPointerDown:W=>W.preventDefault(),onClick:V,title:"Collapse work panel","aria-label":"Collapse work panel",children:$.jsxs("svg",{width:"16",height:"16",viewBox:"0 0 16 16",fill:"none",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round",children:[$.jsx("line",{x1:"13",y1:"2",x2:"13",y2:"14"}),$.jsx("path",{d:"M4 5l4 3-4 3"})]})})]});let Y;if(R.length===0)Y=$.jsx("div",{className:"no-architect",children:"No architect terminal"});else if(R.length===1){const W=Gv(B);Y=W?$.jsx(Zv,{wsPath:W,onFileOpen:L,persistent:B.persistent,toolbarExtra:q,onPermanentClose:t}):$.jsx("div",{className:"no-architect",children:"No architect terminal"})}else{const W=R.find(H=>H.architectName===v)??R[0],j=(W==null?void 0:W.id)??"";Y=$.jsxs("div",{className:"architect-pane",children:[$.jsx(HR,{tabs:R,activeTabId:j,onSelectTab:H=>{const z=R.find(F=>F.id===H);z!=null&&z.architectName&&(u(z.architectName),IR(z.architectName))},onRequestRemove:H=>{w(H),y(null)}}),$.jsx("div",{className:"architect-pane-body",children:k(R,j,q)})]})}return $.jsxs("div",{className:"app",children:[$.jsxs("header",{className:"app-header",children:[$.jsx("h1",{className:"app-title",children:x}),$.jsxs("div",{className:"header-controls",children:[$.jsx(Q3,{count:(r==null?void 0:r.heldCount)??0,escalated:(r==null?void 0:r.mailboxEscalated)??!1,loadMessages:yR}),(e==null?void 0:e.version)&&$.jsxs("span",{className:"header-version",children:["v",e.version]})]})]}),$.jsx("div",{className:"app-body",children:$.jsx(NR,{left:Y,right:$.jsxs("div",{className:"right-panel",children:[$.jsx(E2,{tabs:i.filter(W=>W.type!=="architect"),activeTabId:h,onSelectTab:g,onRefresh:t}),$.jsx("div",{className:"tab-content",role:"tabpanel",children:P(["builder","shell"])})]}),collapsedPane:c,onExpandLeft:()=>f(null),onExpandRight:()=>f(null)})}),m&&$.jsx(gG,{name:m,inFlightBuilders:((e==null?void 0:e.builders)??[]).filter(W=>W.spawnedByArchitect===m),submitting:C,error:d,onCancel:()=>{C||(w(null),y(null))},onConfirm:async()=>{if(!C){_(!0),y(null);try{const W=await gR(m);W.success?(w(null),t()):y(W.error??"Failed to remove architect.")}catch(W){y(W instanceof Error?W.message:String(W))}finally{_(!1)}}}})]})}function gG({name:e,inFlightBuilders:t,submitting:r,error:i,onCancel:o,onConfirm:h}){return $.jsx("div",{className:"remove-architect-modal-backdrop",role:"dialog","aria-modal":"true","aria-labelledby":"remove-arch-title",children:$.jsxs("div",{className:"remove-architect-modal",children:[$.jsxs("h2",{id:"remove-arch-title",children:["Remove architect ",$.jsx("code",{children:e}),"?"]}),t.length>0?$.jsxs("p",{children:[$.jsxs("strong",{children:[t.length," in-flight builder",t.length===1?"":"s"]})," ","spawned by ",$.jsx("code",{children:e}),":"," ",t.map(g=>g.name||g.id).filter(Boolean).join(", "),"."," ","They’ll continue running and fall back to ",$.jsx("code",{children:"main"})," for routing."]}):$.jsx("p",{children:"This architect has no in-flight builders."}),i&&$.jsx("p",{className:"remove-architect-error",role:"alert",children:i}),$.jsxs("div",{className:"remove-architect-modal-actions",children:[$.jsx("button",{type:"button",onClick:o,disabled:r,children:"Cancel"}),$.jsx("button",{type:"button",onClick:h,disabled:r,className:"primary",children:r?"Removing…":"Remove"})]})]})})}cR.createRoot(document.getElementById("root")).render($.jsx(N.StrictMode,{children:$.jsx(vG,{})}));
|
|
199
|
-
//# sourceMappingURL=index-
|
|
199
|
+
//# sourceMappingURL=index-DZf6pNPE.js.map
|