@cluesmith/codev 3.0.0-rc.12 → 3.0.0-rc.13

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.
@@ -127,7 +127,7 @@ void main() {
127
127
  `),!0}return!1}async function $R(e){var t;if(!await HR(e))try{const r=await((t=navigator.clipboard)==null?void 0:t.readText());r&&e.paste(r)}catch{}}function UR(e,t){var i;const r=(i=e.clipboardData)==null?void 0:i.items;if(r){for(const o of Array.from(r))if(S2.includes(o.type)){const f=o.getAsFile();if(!f)continue;e.preventDefault(),t.write(`\r
128
128
  \x1B[90m[Uploading image...]\x1B[0m`),c2(f).then(({path:g})=>{t.write("\r\x1B[2K"),t.paste(g)}).catch(()=>{t.write(`\r\x1B[2K\x1B[31m[Image upload failed]\x1B[0m\r
129
129
  `)});return}}}function Vv({wsPath:e,onFileOpen:t,persistent:r,toolbarExtra:i}){const o=N.useRef(null),f=N.useRef(null),g=N.useRef(null),a=N.useRef(null),c=N.useRef({ctrl:!1,cmd:!1,clearCallback:null}),h=v2(`(max-width: ${o2}px)`),[v,u]=N.useState("connected"),m=N.useRef(null);return N.useEffect(()=>{var W,ee;if(!o.current)return;const w=new mR.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:(V,ue)=>{window.open(ue,"_blank","noopener")}}});f.current=w;const C=new bR.FitAddon;a.current=C,w.loadAddon(C),w.open(o.current);const _=()=>{try{w.loadAddon(new xR.CanvasAddon)}catch{}};try{const V=new wR.WebglAddon;V.onContextLoss(()=>{var ce,xe,Te,be;const ue=((xe=(ce=w.buffer)==null?void 0:ce.active)==null?void 0:xe.viewportY)??0,re=((be=(Te=w.buffer)==null?void 0:Te.active)==null?void 0:be.baseY)??0,ye=!re||ue>=re;V.dispose(),_(),ye?w.scrollToBottom():ue>0&&w.scrollToLine(ue)}),w.loadAddon(V)}catch{_()}const d=new TR((V,ue)=>{V.preventDefault(),window.open(ue,"_blank")});w.loadAddon(d);const y=e.split("/").pop();let b=null,S=null;if(t){S=new kR(w);const V=new RR(w,(ue,re,ye,ce)=>{t(ue,re,ye,ce)},y,S);b=w.registerLinkProvider(V)}const E=navigator.platform.toUpperCase().includes("MAC");w.attachCustomKeyEventHandler(V=>{if(V.type!=="keydown")return!0;if(V.key==="Enter"&&V.shiftKey)return V.preventDefault(),w.paste(`\\
130
- `),!1;if(!(E?V.metaKey:V.ctrlKey&&V.shiftKey))return!0;if(V.key==="c"||V.key==="C"){const re=w.getSelection();return re?(V.preventDefault(),navigator.clipboard.writeText(re).catch(()=>{}),!1):!0}return V.key==="v"||V.key==="V"?(V.preventDefault(),$R(w),!1):!0});const L=V=>UR(V,w);o.current.addEventListener("paste",L);try{const V=w._core,ue=V==null?void 0:V._inputHandler;if(ue&&typeof ue.eraseInDisplay=="function"){const re=ue.eraseInDisplay.bind(ue);ue.eraseInDisplay=(ye,ce)=>ye.params[0]===3?!0:re(ye,ce)}}catch{}const x=new jR({term:w,fitAddon:C,debug:!1,getContainer:()=>o.current});let T=null;const M=()=>{T&&clearTimeout(T),T=setTimeout(()=>{T=null,x.safeFit()},150)};x.safeFit();const D=setTimeout(M,300),P=`${window.location.protocol==="https:"?"wss:":"ws:"}//${window.location.host}${e}`,R={lastSeq:0,attempts:0,timer:null,disposed:!1,initialPhase:!0,initialBuffer:"",flushTimer:null,skipReplay:!1},B=50,H=3e4,X=V=>(V=V.replace(/\x1b\[[\?>][\d;]*c/g,""),V=V.replace(/\[[\?>][\d;]*c/g,""),V),q=new IR,K=V=>{const ue=V!==void 0?`${P}?resume=${V}`:P,re=new WebSocket(ue);re.binaryType="arraybuffer",g.current=re,R.initialPhase=!0,R.initialBuffer="",R.flushTimer&&(clearTimeout(R.flushTimer),R.flushTimer=null),q.flush(),x.reset();const ye=()=>{R.initialPhase=!1,R.flushTimer=null;const ce=()=>{var xe;((xe=g.current)==null?void 0:xe.readyState)===WebSocket.OPEN&&mu(g.current,"resize",{cols:w.cols,rows:w.rows})};if(R.initialBuffer){const xe=X(R.initialBuffer);R.initialBuffer="",xe?(x.beginReplay(),w.write(xe,()=>{x.endReplay(),ce()})):(x.enterInteractive(),M(),ce())}else x.enterInteractive(),M(),ce()};re.onopen=()=>{R.attempts=0,u("connected"),mu(re,"resize",{cols:w.cols,rows:w.rows})},re.onmessage=ce=>{var nt;const xe=new Uint8Array(ce.data);if(xe.length===0)return;const Te=xe[0],be=xe.subarray(1);if(Te===b2){const _t=new TextDecoder().decode(be);if(R.initialPhase)R.initialBuffer+=_t,R.flushTimer||(R.flushTimer=setTimeout(ye,500));else{const Ce=q.write(_t);if(Ce){const me=X(Ce);me&&w.write(me)}}}else if(Te===y2)try{const _t=JSON.parse(new TextDecoder().decode(be));_t.type==="seq"&&typeof((nt=_t.payload)==null?void 0:nt.seq)=="number"&&(R.lastSeq=_t.payload.seq)}catch{}},re.onclose=()=>{if(R.disposed)return;if(R.attempts>=B){u("disconnected");return}u("reconnecting");const ce=Math.min(1e3*Math.pow(2,R.attempts),H);R.attempts++,R.timer=setTimeout(()=>{R.disposed||K(R.lastSeq||void 0)},ce)},re.onerror=()=>{}},Y=((ee=(W=window.matchMedia)==null?void 0:W.call(window,"(pointer: coarse)"))==null?void 0:ee.matches)??!1,j=w.textarea;let $=!1,z=0,F="",Q=0;const te=()=>{$=!0},fe=()=>{$=!1,z=Date.now()};j&&(j.addEventListener("compositionstart",te),j.addEventListener("compositionend",fe)),w.onData(V=>{var xe,Te,be,nt,_t,Ce;const ue=g.current;if(!ue||ue.readyState!==WebSocket.OPEN)return;const re=Date.now();if(($||re-z<150||Y)&&V===F&&re-Q<150)return;if(F=V,Q=re,R.initialPhase){const me=V.replace(/\x1b\[[\?>][\d;]*c/g,"").replace(/\x1b\[\d+;\d+R/g,"").replace(/\x1b\[\?[\d;]*\$y/g,"");if(!me)return;V=me}const ce=c.current;if((ce.ctrl||ce.cmd)&&V.length===1){const me=V.charCodeAt(0);if(ce.ctrl)me>=97&&me<=122?V=String.fromCharCode(me-96):me>=65&&me<=90&&(V=String.fromCharCode(me-64)),ce.ctrl=!1,ce.cmd=!1,(xe=ce.clearCallback)==null||xe.call(ce);else if(ce.cmd){const we=V.toLowerCase();if(we==="v"){(Te=navigator.clipboard)==null||Te.readText().then(ve=>{ve&&w.paste(ve)}).catch(()=>{}),ce.ctrl=!1,ce.cmd=!1,(be=ce.clearCallback)==null||be.call(ce);return}if(we==="c"){const ve=w.getSelection();ve&&((nt=navigator.clipboard)==null||nt.writeText(ve).catch(()=>{})),ce.ctrl=!1,ce.cmd=!1,(_t=ce.clearCallback)==null||_t.call(ce);return}ce.ctrl=!1,ce.cmd=!1,(Ce=ce.clearCallback)==null||Ce.call(ce)}}FR(ue,V)}),w.onResize(({cols:V,rows:ue})=>{const re=g.current;(re==null?void 0:re.readyState)===WebSocket.OPEN&&mu(re,"resize",{cols:V,rows:ue})}),m.current=()=>{a.current&&a.current.fit();const V=g.current;(V==null?void 0:V.readyState)===WebSocket.OPEN&&mu(V,"resize",{cols:w.cols,rows:w.rows})},K();const ge=new ResizeObserver(()=>M());ge.observe(o.current);const Z=()=>{document.hidden||M()};return document.addEventListener("visibilitychange",Z),()=>{var V,ue;R.disposed=!0,R.timer&&clearTimeout(R.timer),R.flushTimer&&clearTimeout(R.flushTimer),clearTimeout(D),T&&clearTimeout(T),j&&(j.removeEventListener("compositionstart",te),j.removeEventListener("compositionend",fe)),x.dispose(),S==null||S.dispose(),b==null||b.dispose(),(V=o.current)==null||V.removeEventListener("paste",L),ge.disconnect(),document.removeEventListener("visibilitychange",Z),(ue=g.current)==null||ue.close(),w.dispose(),f.current=null,g.current=null,a.current=null}},[e]),U.jsxs("div",{style:{width:"100%",height:"100%",display:"flex",flexDirection:"column",position:"relative"},children:[r===!1&&U.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"}),U.jsx("div",{ref:o,className:"terminal-container",style:{width:"100%",flex:1,minHeight:0,overflow:"hidden",backgroundColor:"#1a1a1a"}}),U.jsx(zR,{fitRef:a,wsRef:g,xtermRef:f,connStatus:v,toolbarExtra:i,onReconnect:()=>{var w;return(w=m.current)==null?void 0:w.call(m)}}),h&&U.jsx(BR,{wsRef:g,modifierRef:c})]})}function FR(e,t){const r=new TextEncoder().encode(t),i=new Uint8Array(1+r.length);i[0]=b2,i.set(r,1),e.send(i.buffer)}function mu(e,t,r){const i=JSON.stringify({type:t,payload:r}),o=new TextEncoder().encode(i),f=new Uint8Array(1+o.length);f[0]=y2,f.set(o,1),e.send(f.buffer)}const qR=2500;function WR(){const[e,t]=N.useState(null),[r,i]=N.useState(null),o=N.useCallback(async()=>{try{const g=await rR();t(a=>a!==null&&JSON.stringify(a)===JSON.stringify(g)?a:g),i(null)}catch(g){i(g instanceof Error?g.message:"Failed to fetch overview")}},[]);N.useEffect(()=>{o();const g=setInterval(o,qR);return()=>clearInterval(g)},[o]),d2(o);const f=N.useCallback(async()=>{await iR(),await o()},[o]);return{data:e,error:r,refresh:f}}function GR(e){if(e.blocked)return`Blocked: ${e.blocked}`;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 Xv(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 KR(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?Xv(r):`${Xv(r)} wc / ${Xv(i)} ag`}function YR({builder:e,onOpen:t}){const r=e.issueId?`#${e.issueId}`:e.id,i=e.issueTitle||e.id,o=e.blocked!==null&&e.blocked!=="",f=Math.min(100,Math.max(0,Math.round(e.progress??0)));return U.jsxs("tr",{className:`builder-row${o?" builder-row--blocked":""}`,children:[U.jsx("td",{className:"builder-col-id",children:r}),U.jsx("td",{className:"builder-col-title",children:i}),U.jsx("td",{className:"builder-col-state",children:U.jsx("span",{className:o?"builder-state-blocked":"builder-state-active",children:GR(e)})}),U.jsxs("td",{className:"builder-col-progress",children:[U.jsx("div",{className:"progress-bar",children:U.jsx("div",{className:`progress-fill${o?" progress-fill--blocked":""}`,style:{width:`${f}%`}})}),U.jsxs("span",{className:"progress-pct",children:[f,"%"]})]}),U.jsx("td",{className:"builder-col-elapsed",children:KR(e.startedAt,e.idleMs??0)}),U.jsx("td",{className:"builder-col-actions",children:t&&U.jsx("button",{className:"builder-row-open",onClick:()=>t(e),children:"Open"})})]})}function VR(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 XR(e,t){const r=[];for(const i of e)r.push({key:`pr-${i.id}`,issueOrPR:`#${i.id}`,title:i.title,kind:"PR review",kindClass:"attention-kind--pr",waitingSince:i.createdAt,url:i.url});for(const i of t){if(!i.blocked||!i.blockedSince||i.blocked==="PR review")continue;const o=i.issueId?`#${i.issueId}`:i.id;r.push({key:`gate-${i.id}`,issueOrPR:o,title:i.issueTitle||i.id,kind:i.blocked,kindClass:i.blocked==="spec review"?"attention-kind--spec":"attention-kind--plan",waitingSince:i.blockedSince})}return r.sort((i,o)=>new Date(i.waitingSince).getTime()-new Date(o.waitingSince).getTime()),r}function ZR({prs:e,builders:t}){const r=XR(e,t);return r.length===0?U.jsx("p",{className:"work-empty",children:"Nothing needs attention"}):U.jsx("div",{className:"attention-rows",children:r.map(i=>{const o=U.jsxs(U.Fragment,{children:[U.jsx("span",{className:"attention-row-id",children:i.issueOrPR}),U.jsx("span",{className:"attention-row-title",children:i.title}),U.jsx("span",{className:`attention-row-kind ${i.kindClass}`,children:i.kind}),U.jsx("span",{className:"attention-row-age",children:VR(i.waitingSince)})]});return i.url?U.jsx("a",{className:"attention-row",href:i.url,target:"_blank",rel:"noopener noreferrer",children:o},i.key):U.jsx("div",{className:"attention-row",children:o},i.key)})})}function QR(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 JR={high:"priority-dot--high",medium:"priority-dot--med",low:"priority-dot--low"},e3={bug:"type-tag--bug",project:"type-tag--project",spike:"type-tag--spike"};function Zv({label:e,filePath:t,onRefresh:r}){return U.jsx("button",{className:"backlog-artifact-link",onClick:async i=>{i.preventDefault(),i.stopPropagation(),await Ih(t),r==null||r()},children:e})}function t3({items:e,onRefresh:t}){const r=e.filter(i=>!i.hasBuilder);return r.length===0?U.jsx("p",{className:"work-empty",children:"No open issues"}):U.jsx("div",{className:"backlog-rows",children:r.map(i=>U.jsxs("div",{className:"backlog-row",children:[U.jsxs("a",{className:"backlog-row-main",href:i.url,target:"_blank",rel:"noopener noreferrer",children:[U.jsx("span",{className:`backlog-priority-dot ${JR[i.priority]??"priority-dot--low"}`}),U.jsxs("span",{className:"backlog-row-number",children:["#",i.id]}),U.jsx("span",{className:`backlog-type-tag ${e3[i.type]??""}`,children:i.type}),U.jsx("span",{className:"backlog-row-title",children:i.title}),i.author&&U.jsxs("span",{className:"backlog-row-author",children:["@",i.author]}),U.jsx("span",{className:"backlog-row-age",children:QR(i.createdAt)})]}),(i.specPath||i.planPath||i.reviewPath)&&U.jsxs("span",{className:"backlog-artifacts",children:[i.specPath&&U.jsx(Zv,{label:"spec",filePath:i.specPath,onRefresh:t}),i.planPath&&U.jsx(Zv,{label:"plan",filePath:i.planPath,onRefresh:t}),i.reviewPath&&U.jsx(Zv,{label:"review",filePath:i.reviewPath,onRefresh:t})]})]},i.id))})}function r3(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 i3={bug:"type-tag--bug",project:"type-tag--project",spike:"type-tag--spike"};function Qv({label:e,filePath:t,onRefresh:r}){return U.jsx("button",{className:"backlog-artifact-link",onClick:async i=>{i.preventDefault(),i.stopPropagation(),await Ih(t),r==null||r()},children:e})}function n3({items:e,onRefresh:t}){return e.length===0?null:U.jsx("div",{className:"recently-closed-rows",children:e.map(r=>{const i=r.prUrl||r.specPath||r.planPath||r.reviewPath;return U.jsxs("div",{className:"recently-closed-row",children:[U.jsxs("a",{className:"recently-closed-row-main",href:r.url,target:"_blank",rel:"noopener noreferrer",children:[U.jsx("span",{className:"recently-closed-check",children:"✓"}),U.jsxs("span",{className:"backlog-row-number",children:["#",r.id]}),U.jsx("span",{className:`backlog-type-tag ${i3[r.type]??""}`,children:r.type}),U.jsx("span",{className:"backlog-row-title",children:r.title}),U.jsx("span",{className:"backlog-row-age",children:r3(r.closedAt)})]}),i&&U.jsxs("span",{className:"backlog-artifacts",children:[r.specPath&&U.jsx(Qv,{label:"spec",filePath:r.specPath,onRefresh:t}),r.planPath&&U.jsx(Qv,{label:"plan",filePath:r.planPath,onRefresh:t}),r.reviewPath&&U.jsx(Qv,{label:"review",filePath:r.reviewPath,onRefresh:t}),r.prUrl&&U.jsx("a",{className:"backlog-artifact-link",href:r.prUrl,target:"_blank",rel:"noopener noreferrer",onClick:o=>o.stopPropagation(),children:"PR"})]})]},r.id)})})}function s3(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 w2({entry:e,expanded:t,gitStatus:r,onToggle:i,onOpen:o,depth:f=0}){var h;const g=e.type==="directory",a=t.has(e.path),c=g?null:s3(e.path,r);return U.jsxs(U.Fragment,{children:[U.jsxs("div",{className:`file-node ${g?"directory":"file"}`,style:{paddingLeft:`${f*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:[U.jsx("span",{className:"file-icon",children:g?a?"📂":"📁":"📄"}),U.jsx("span",{className:"file-name",children:e.name}),c&&U.jsx("span",{className:`git-indicator ${c.className}`,children:c.indicator})]}),g&&a&&((h=e.children)==null?void 0:h.map(v=>U.jsx(w2,{entry:v,expanded:t,gitStatus:r,onToggle:i,onOpen:o,depth:f+1},v.path)))]})}function C2(e,t=[]){for(const r of e)r.type==="file"&&t.push(r),r.children&&C2(r.children,t);return t}function a3({onRefresh:e}){const[t,r]=N.useState([]),[i,o]=N.useState(new Set),[f,g]=N.useState(null),[a,c]=N.useState(!1),[h,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 aR();r(R),g(null),c(!0)}catch(R){g(R.message)}},[]),S=N.useCallback(async()=>{try{const R=await lR();v(R)}catch(R){console.error("Failed to load git status:",R)}},[]),E=N.useCallback(async()=>{try{const R=await cR();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 H=new Set(B);return H.has(R)?H.delete(R):H.add(R),H})},x=async R=>{try{await Ih(R),e(),E()}catch(B){console.error("Failed to open file:",B)}},T=N.useMemo(()=>C2(t),[t]),M=N.useMemo(()=>{if(!w.trim())return[];const R=w.toLowerCase();return T.filter(B=>B.name.toLowerCase().includes(R)||B.path.toLowerCase().includes(R)).slice(0,10)},[T,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 f?U.jsxs("div",{className:"file-tree-error",children:["Error: ",f]}):a?U.jsxs("div",{className:"file-tree-container",children:[U.jsxs("div",{className:"file-search",children:[U.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&&U.jsx("div",{className:"file-search-suggestions",children:M.map(R=>U.jsxs("div",{className:"file-search-suggestion",onMouseDown:()=>P(R.path),children:[U.jsx("span",{className:"suggestion-name",children:R.name}),U.jsx("span",{className:"suggestion-path",children:R.path})]},R.path))})]}),u.length>0&&U.jsxs("div",{className:"file-tree-section",children:[U.jsx("div",{className:"file-tree-section-header",children:"Recent"}),u.map(R=>U.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:[U.jsx("span",{className:"file-icon",children:"🕐"}),U.jsx("span",{className:"file-name",children:R.name}),U.jsx("span",{className:"file-path-hint",children:R.relativePath})]},R.id))]}),U.jsxs("div",{className:"file-tree-section",children:[U.jsx("div",{className:"file-tree-section-header",children:"Files"}),U.jsx("div",{className:"file-tree",role:"tree","aria-label":"Project files",children:t.map(R=>U.jsx(w2,{entry:R,expanded:i,gitStatus:h,onToggle:L,onOpen:x},R.path))})]})]}):U.jsx("div",{className:"file-tree-loading",children:"Loading files..."})}function o3(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 l3(e){const t=e.split("/").filter(Boolean);return t.length<=1?e:t.slice(-2).join("/")}const c3=3e4;function u3({utils:e,annotations:t,onSelectTab:r}){if(e.length===0&&t.length===0)return null;const i=Date.now();return U.jsxs("section",{className:"work-section",children:[U.jsx("h3",{className:"work-section-title",children:"Open Files & Shells"}),U.jsxs("div",{className:"ofs-rows",children:[e.length>0&&U.jsxs(U.Fragment,{children:[U.jsx("div",{className:"ofs-subgroup-label",children:"Shells"}),e.map(o=>{const f=!o.lastDataAt||i-o.lastDataAt>c3,g=o.lastDataAt?o3(i-o.lastDataAt):"";return U.jsxs("div",{className:"ofs-row",onClick:()=>r(o.id),children:[U.jsx("span",{className:`ofs-dot ${f?"ofs-dot--idle":"ofs-dot--running"}`}),U.jsx("span",{className:"ofs-name",children:o.name||`Shell ${o.id}`}),f&&g&&U.jsx("span",{className:"ofs-idle",children:g})]},o.id)})]}),t.length>0&&U.jsxs(U.Fragment,{children:[U.jsx("div",{className:"ofs-subgroup-label",children:"Files"}),t.map(o=>{const f=o.file.split("/").pop()??o.file;return U.jsxs("div",{className:"ofs-row",onClick:()=>r(o.id),title:o.file,children:[U.jsx("span",{className:"ofs-file-icon",children:"📄"}),U.jsx("span",{className:"ofs-name",children:f}),U.jsx("span",{className:"ofs-path",children:l3(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 h3(e){const t=new Date(e.getFullYear(),0,0);return Math.floor((e.getTime()-t.getTime())/864e5)}function x2(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 f3(){try{return localStorage.getItem(x2(new Date))==="1"}catch{return!1}}function d3(){try{localStorage.setItem(x2(new Date),"1")}catch{}}function v3(e){return e.split("`").map((r,i)=>i%2===1?U.jsx("code",{children:r},i):U.jsx("span",{children:r},i))}function g3(){const e=h3(new Date)%Ra.length,[t,r]=N.useState(e),[i,o]=N.useState(f3);if(i||Ra.length===0)return null;const f=()=>{r((t-1+Ra.length)%Ra.length)},g=()=>{r((t+1)%Ra.length)},a=()=>{d3(),o(!0)};return U.jsxs("div",{className:"tip-banner",children:[U.jsx("button",{className:"tip-banner-nav",onClick:f,"aria-label":"Previous tip",children:"‹"}),U.jsx("span",{className:"tip-banner-label",children:"Tip:"}),U.jsx("span",{className:"tip-banner-text",children:v3(Ra[t])}),U.jsx("button",{className:"tip-banner-nav",onClick:g,"aria-label":"Next tip",children:"›"}),U.jsx("button",{className:"tip-banner-dismiss",onClick:a,"aria-label":"Dismiss tip",children:"×"})]})}function p3({state:e,onRefresh:t,onSelectTab:r}){var v,u;const{data:i,error:o,refresh:f}=WR(),[g,a]=N.useState(!1),c=N.useCallback(async()=>{try{await nR(),t()}catch(m){console.error("Failed to create shell:",m)}},[t]),h=N.useCallback(m=>{var C;const w=(C=e==null?void 0:e.builders)==null?void 0:C.find(_=>{var d,y,b,S;return m.issueId?((d=_.name)==null?void 0:d.includes(m.issueId))||((y=_.id)==null?void 0:y.includes(m.issueId)):((b=_.id)==null?void 0:b.includes(m.id))||((S=_.name)==null?void 0:S.includes(m.id))});w&&(r==null||r(w.id))},[e==null?void 0:e.builders,r]);return e?U.jsxs("div",{className:`work-view ${g?"file-panel-open":""}`,children:[U.jsxs("div",{className:"work-content",children:[U.jsxs("div",{className:"work-header",children:[U.jsx("h2",{className:"work-title",children:"Work"}),U.jsxs("div",{className:"work-actions",children:[U.jsx("button",{className:"work-btn",onClick:c,children:"+ Shell"}),U.jsx("button",{className:"work-btn work-btn-secondary",onClick:f,children:"Refresh"})]})]}),o&&U.jsxs("div",{className:"work-error",children:["Failed to load overview: ",o]}),U.jsx(g3,{}),U.jsxs("section",{className:"work-section",children:[U.jsx("h3",{className:"work-section-title",children:"Builders"}),i!=null&&i.builders&&i.builders.length>0?U.jsxs("table",{className:"builder-table",children:[U.jsx("thead",{children:U.jsxs("tr",{children:[U.jsx("th",{children:"Issue"}),U.jsx("th",{children:"Title"}),U.jsx("th",{children:"State"}),U.jsx("th",{children:"Progress"}),U.jsx("th",{children:"Elapsed"}),U.jsx("th",{})]})}),U.jsx("tbody",{children:i.builders.map(m=>U.jsx(YR,{builder:m,onOpen:h},m.id))})]}):U.jsx("p",{className:"work-empty",children:"No active builders"})]}),U.jsx(u3,{utils:(e==null?void 0:e.utils)??[],annotations:(e==null?void 0:e.annotations)??[],onSelectTab:m=>r==null?void 0:r(m)}),U.jsxs("section",{className:"work-section",children:[U.jsx("h3",{className:"work-section-title",children:"Needs Attention"}),(v=i==null?void 0:i.errors)!=null&&v.prs?U.jsx("p",{className:"work-unavailable",children:i.errors.prs}):U.jsx(ZR,{prs:(i==null?void 0:i.pendingPRs)??[],builders:(i==null?void 0:i.builders)??[]})]}),U.jsxs("section",{className:"work-section",children:[U.jsx("h3",{className:"work-section-title",children:"Backlog"}),(u=i==null?void 0:i.errors)!=null&&u.issues?U.jsx("p",{className:"work-unavailable",children:i.errors.issues}):U.jsx(t3,{items:(i==null?void 0:i.backlog)??[],onRefresh:t})]}),(i==null?void 0:i.recentlyClosed)&&i.recentlyClosed.length>0&&U.jsxs("section",{className:"work-section",children:[U.jsx("h3",{className:"work-section-title",children:"Recently Closed"}),U.jsx(n3,{items:i.recentlyClosed,onRefresh:t})]})]}),U.jsxs("div",{className:`work-file-panel ${g?"expanded":"collapsed"}`,children:[U.jsxs("div",{className:"work-file-panel-header",children:[U.jsx("span",{className:"work-file-panel-toggle",onClick:()=>a(!g),children:g?"▼":"▲"}),U.jsx("span",{className:"work-file-panel-label",onClick:()=>a(!g),children:"Files"}),!g&&U.jsx("input",{className:"work-file-panel-search",type:"text",placeholder:"Search files...",onFocus:()=>a(!0)})]}),g&&U.jsx("div",{className:"work-file-panel-content",children:U.jsx(a3,{onRefresh:t})})]})]}):U.jsx("div",{className:"work-view",children:U.jsx("p",{className:"work-loading",children:"Loading..."})})}function _3({tabs:e,activeTabId:t,onSelectTab:r,onRefresh:i,children:o}){return U.jsxs("div",{className:"mobile-layout",children:[U.jsx(g2,{tabs:e,activeTabId:t,onSelectTab:r,onRefresh:i}),U.jsx("div",{className:"mobile-content",children:o})]})}function m3({tabId:e,initialLine:t}){let i=`${l2()}api/annotate/${e}/`;return t&&(i+=`?line=${t}`),U.jsx("div",{className:"file-viewer",style:{width:"100%",height:"100%"},children:U.jsx("iframe",{src:i,style:{width:"100%",height:"100%",border:"none"},title:"File Annotator"})})}function y3(e){return e==="24h"?"1":e==="7d"?"7":e==="30d"?"30":"all"}function b3(e){const[t,r]=N.useState(null),[i,o]=N.useState(null),[f,g]=N.useState(!1),[a,c]=N.useState("7d"),h=N.useCallback(async(u,m=!1)=>{g(!0),o(null);try{const w=await eR(y3(u),m);r(w)}catch(w){o(w instanceof Error?w.message:"Failed to fetch analytics")}finally{g(!1)}},[]);N.useEffect(()=>{e&&h(a)},[a,e,h]);const v=N.useCallback(()=>{h(a,!0)},[h,a]);return{data:t,error:i,loading:f,range:a,setRange:c,refresh:v}}function E2(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=E2(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=E2(e))&&(i&&(i+=" "),i+=t);return i}var S3=["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 M_(e){if(typeof e!="string")return!1;var t=S3;return t.includes(e)}var w3=["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"],C3=new Set(w3);function A2(e){return typeof e!="string"?!1:C3.has(e)}function M2(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)&&(A2(r)||M2(r))&&(t[r]=e[r]);return t}function L_(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 ti(e){var t={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&(A2(r)||M2(r)||M_(r))&&(t[r]=e[r]);return t}var x3=["children","width","height","viewBox","className","style","title","desc"];function Dp(){return Dp=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},Dp.apply(null,arguments)}function E3(e,t){if(e==null)return{};var r,i,o=A3(e,t);if(Object.getOwnPropertySymbols){var f=Object.getOwnPropertySymbols(e);for(i=0;i<f.length;i++)r=f[i],t.indexOf(r)===-1&&{}.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}function A3(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 L2=N.forwardRef((e,t)=>{var{children:r,width:i,height:o,viewBox:f,className:g,style:a,title:c,desc:h}=e,v=E3(e,x3),u=f||{width:i,height:o,x:0,y:0},m=vt("recharts-surface",g);return N.createElement("svg",Dp({},ti(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,h),r)}),M3=["children","className"];function Rp(){return Rp=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},Rp.apply(null,arguments)}function L3(e,t){if(e==null)return{};var r,i,o=O3(e,t);if(Object.getOwnPropertySymbols){var f=Object.getOwnPropertySymbols(e);for(i=0;i<f.length;i++)r=f[i],t.indexOf(r)===-1&&{}.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}function O3(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=L3(e,M3),f=vt("recharts-layer",i);return N.createElement("g",Rp({className:f},ti(o),{ref:t}),r)}),O2=a2(),T3=N.createContext(null);function lt(e){return function(){return e}}const T2=Math.cos,qu=Math.sin,pi=Math.sqrt,Wu=Math.PI,Nh=2*Wu,kp=Math.PI,Pp=2*kp,xs=1e-6,D3=Pp-xs;function D2(e){this._+=e[0];for(let t=1,r=e.length;t<r;++t)this._+=arguments[t]+e[t]}function R3(e){let t=Math.floor(e);if(!(t>=0))throw new Error(`invalid digits: ${e}`);if(t>15)return D2;const r=10**t;return function(i){this._+=i[0];for(let o=1,f=i.length;o<f;++o)this._+=Math.round(arguments[o]*r)/r+i[o]}}class k3{constructor(t){this._x0=this._y0=this._x1=this._y1=null,this._="",this._append=t==null?D2:R3(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,f,g){this._append`C${+t},${+r},${+i},${+o},${this._x1=+f},${this._y1=+g}`}arcTo(t,r,i,o,f){if(t=+t,r=+r,i=+i,o=+o,f=+f,f<0)throw new Error(`negative radius: ${f}`);let g=this._x1,a=this._y1,c=i-t,h=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-h*v)>xs)||!f)this._append`L${this._x1=t},${this._y1=r}`;else{let w=i-g,C=o-a,_=c*c+h*h,d=w*w+C*C,y=Math.sqrt(_),b=Math.sqrt(m),S=f*Math.tan((kp-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${f},${f},0,0,${+(u*w>v*C)},${this._x1=t+L*c},${this._y1=r+L*h}`}}arc(t,r,i,o,f,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),h=t+a,v=r+c,u=1^g,m=g?o-f:f-o;this._x1===null?this._append`M${h},${v}`:(Math.abs(this._x1-h)>xs||Math.abs(this._y1-v)>xs)&&this._append`L${h},${v}`,i&&(m<0&&(m=m%Pp+Pp),m>D3?this._append`A${i},${i},0,1,${u},${t-a},${r-c}A${i},${i},0,1,${u},${this._x1=h},${this._y1=v}`:m>xs&&this._append`A${i},${i},0,${+(m>=kp)},${u},${this._x1=t+i*Math.cos(f)},${this._y1=r+i*Math.sin(f)}`)}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 O_(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 k3(t)}function T_(e){return typeof e=="object"&&"length"in e?e:Array.from(e)}function R2(e){this._context=e}R2.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 zh(e){return new R2(e)}function k2(e){return e[0]}function P2(e){return e[1]}function B2(e,t){var r=lt(!0),i=null,o=zh,f=null,g=O_(a);e=typeof e=="function"?e:e===void 0?k2:lt(e),t=typeof t=="function"?t:t===void 0?P2:lt(t);function a(c){var h,v=(c=T_(c)).length,u,m=!1,w;for(i==null&&(f=o(w=g())),h=0;h<=v;++h)!(h<v&&r(u=c[h],h,c))===m&&((m=!m)?f.lineStart():f.lineEnd()),m&&f.point(+e(u,h,c),+t(u,h,c));if(w)return f=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&&(f=o(i)),a):o},a.context=function(c){return arguments.length?(c==null?i=f=null:f=o(i=c),a):i},a}function yu(e,t,r){var i=null,o=lt(!0),f=null,g=zh,a=null,c=O_(h);e=typeof e=="function"?e:e===void 0?k2:lt(+e),t=typeof t=="function"?t:lt(t===void 0?0:+t),r=typeof r=="function"?r:r===void 0?P2:lt(+r);function h(u){var m,w,C,_=(u=T_(u)).length,d,y=!1,b,S=new Array(_),E=new Array(_);for(f==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 B2().defined(o).curve(g).context(f)}return h.x=function(u){return arguments.length?(e=typeof u=="function"?u:lt(+u),i=null,h):e},h.x0=function(u){return arguments.length?(e=typeof u=="function"?u:lt(+u),h):e},h.x1=function(u){return arguments.length?(i=u==null?null:typeof u=="function"?u:lt(+u),h):i},h.y=function(u){return arguments.length?(t=typeof u=="function"?u:lt(+u),r=null,h):t},h.y0=function(u){return arguments.length?(t=typeof u=="function"?u:lt(+u),h):t},h.y1=function(u){return arguments.length?(r=u==null?null:typeof u=="function"?u:lt(+u),h):r},h.lineX0=h.lineY0=function(){return v().x(e).y(t)},h.lineY1=function(){return v().x(e).y(r)},h.lineX1=function(){return v().x(i).y(t)},h.defined=function(u){return arguments.length?(o=typeof u=="function"?u:lt(!!u),h):o},h.curve=function(u){return arguments.length?(g=u,f!=null&&(a=g(f)),h):g},h.context=function(u){return arguments.length?(u==null?f=a=null:a=g(f=u),h):f},h}class j2{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 P3(e){return new j2(e,!0)}function B3(e){return new j2(e,!1)}const D_={draw(e,t){const r=pi(t/Wu);e.moveTo(r,0),e.arc(0,0,r,0,Nh)}},j3={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()}},I2=pi(1/3),I3=I2*2,N3={draw(e,t){const r=pi(t/I3),i=r*I2;e.moveTo(0,-r),e.lineTo(i,0),e.lineTo(0,r),e.lineTo(-i,0),e.closePath()}},z3={draw(e,t){const r=pi(t),i=-r/2;e.rect(i,i,r,r)}},H3=.8908130915292852,N2=qu(Wu/10)/qu(7*Wu/10),$3=qu(Nh/10)*N2,U3=-T2(Nh/10)*N2,F3={draw(e,t){const r=pi(t*H3),i=$3*r,o=U3*r;e.moveTo(0,-r),e.lineTo(i,o);for(let f=1;f<5;++f){const g=Nh*f/5,a=T2(g),c=qu(g);e.lineTo(c*r,-a*r),e.lineTo(a*i-c*o,c*i+a*o)}e.closePath()}},Jv=pi(3),q3={draw(e,t){const r=-pi(t/(Jv*3));e.moveTo(0,r*2),e.lineTo(-Jv*r,-r),e.lineTo(Jv*r,-r),e.closePath()}},Xr=-.5,Zr=pi(3)/2,Bp=1/pi(12),W3=(Bp/2+1)*3,G3={draw(e,t){const r=pi(t/W3),i=r/2,o=r*Bp,f=i,g=r*Bp+r,a=-f,c=g;e.moveTo(i,o),e.lineTo(f,g),e.lineTo(a,c),e.lineTo(Xr*i-Zr*o,Zr*i+Xr*o),e.lineTo(Xr*f-Zr*g,Zr*f+Xr*g),e.lineTo(Xr*a-Zr*c,Zr*a+Xr*c),e.lineTo(Xr*i+Zr*o,Xr*o-Zr*i),e.lineTo(Xr*f+Zr*g,Xr*g-Zr*f),e.lineTo(Xr*a+Zr*c,Xr*c-Zr*a),e.closePath()}};function K3(e,t){let r=null,i=O_(o);e=typeof e=="function"?e:lt(e||D_),t=typeof t=="function"?t:lt(t===void 0?64:+t);function o(){let f;if(r||(r=f=i()),e.apply(this,arguments).draw(r,+t.apply(this,arguments)),f)return r=null,f+""||null}return o.type=function(f){return arguments.length?(e=typeof f=="function"?f:lt(f),o):e},o.size=function(f){return arguments.length?(t=typeof f=="function"?f:lt(+f),o):t},o.context=function(f){return arguments.length?(r=f??null,o):r},o}function Gu(){}function Ku(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:Ku(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:Ku(this,e,t);break}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=t}};function Y3(e){return new z2(e)}function H2(e){this._context=e}H2.prototype={areaStart:Gu,areaEnd:Gu,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:Ku(this,e,t);break}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=t}};function V3(e){return new H2(e)}function $2(e){this._context=e}$2.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:Ku(this,e,t);break}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=t}};function X3(e){return new $2(e)}function U2(e){this._context=e}U2.prototype={areaStart:Gu,areaEnd:Gu,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 Z3(e){return new U2(e)}function pS(e){return e<0?-1:1}function _S(e,t,r){var i=e._x1-e._x0,o=t-e._x1,f=(e._y1-e._y0)/(i||o<0&&-0),g=(r-e._y1)/(o||i<0&&-0),a=(f*o+g*i)/(i+o);return(pS(f)+pS(g))*Math.min(Math.abs(f),Math.abs(g),.5*Math.abs(a))||0}function mS(e,t){var r=e._x1-e._x0;return r?(3*(e._y1-e._y0)/r-t)/2:t}function eg(e,t,r){var i=e._x0,o=e._y0,f=e._x1,g=e._y1,a=(f-i)/3;e._context.bezierCurveTo(i+a,o+a*t,f-a,g-a*r,f,g)}function Yu(e){this._context=e}Yu.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:eg(this,this._t0,mS(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,eg(this,mS(this,r=_S(this,e,t)),r);break;default:eg(this,this._t0,r=_S(this,e,t));break}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=t,this._t0=r}}};function F2(e){this._context=new q2(e)}(F2.prototype=Object.create(Yu.prototype)).point=function(e,t){Yu.prototype.point.call(this,t,e)};function q2(e){this._context=e}q2.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,f){this._context.bezierCurveTo(t,e,i,r,f,o)}};function Q3(e){return new Yu(e)}function J3(e){return new F2(e)}function W2(e){this._context=e}W2.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=yS(e),o=yS(t),f=0,g=1;g<r;++f,++g)this._context.bezierCurveTo(i[0][f],o[0][f],i[1][f],o[1][f],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 yS(e){var t,r=e.length-1,i,o=new Array(r),f=new Array(r),g=new Array(r);for(o[0]=0,f[0]=2,g[0]=e[0]+2*e[1],t=1;t<r-1;++t)o[t]=1,f[t]=4,g[t]=4*e[t]+2*e[t+1];for(o[r-1]=2,f[r-1]=7,g[r-1]=8*e[r-1]+e[r],t=1;t<r;++t)i=o[t]/f[t-1],f[t]-=i,g[t]-=i*g[t-1];for(o[r-1]=g[r-1]/f[r-1],t=r-2;t>=0;--t)o[t]=(g[t]-o[t+1])/f[t];for(f[r-1]=(e[r]+o[r-1])/2,t=0;t<r-1;++t)f[t]=2*e[t+1]-o[t+1];return[o,f]}function ek(e){return new W2(e)}function Hh(e,t){this._context=e,this._t=t}Hh.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 tk(e){return new Hh(e,.5)}function rk(e){return new Hh(e,0)}function ik(e){return new Hh(e,1)}function Bs(e,t){if((g=e.length)>1)for(var r=1,i,o,f=e[t[0]],g,a=f.length;r<g;++r)for(o=f,f=e[t[r]],i=0;i<a;++i)f[i][1]+=f[i][0]=isNaN(o[i][1])?o[i][0]:o[i][1]}function jp(e){for(var t=e.length,r=new Array(t);--t>=0;)r[t]=t;return r}function nk(e,t){return e[t]}function sk(e){const t=[];return t.key=e,t}function ak(){var e=lt([]),t=jp,r=Bs,i=nk;function o(f){var g=Array.from(e.apply(this,arguments),sk),a,c=g.length,h=-1,v;for(const u of f)for(a=0,++h;a<c;++a)(g[a][h]=[0,+i(u,g[a].key,h,f)]).data=u;for(a=0,v=T_(t(g));a<c;++a)g[v[a]].index=a;return r(g,v),g}return o.keys=function(f){return arguments.length?(e=typeof f=="function"?f:lt(Array.from(f)),o):e},o.value=function(f){return arguments.length?(i=typeof f=="function"?f:lt(+f),o):i},o.order=function(f){return arguments.length?(t=f==null?jp:typeof f=="function"?f:lt(Array.from(f)),o):t},o.offset=function(f){return arguments.length?(r=f??Bs,o):r},o}function ok(e,t){if((i=e.length)>0){for(var r,i,o=0,f=e[0].length,g;o<f;++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 lk(e,t){if((o=e.length)>0){for(var r=0,i=e[t[0]],o,f=i.length;r<f;++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 ck(e,t){if(!(!((g=e.length)>0)||!((f=(o=e[t[0]]).length)>0))){for(var r=0,i=1,o,f,g;i<f;++i){for(var a=0,c=0,h=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,h+=w*u}o[i-1][1]+=o[i-1][0]=r,c&&(r-=h/c)}o[i-1][1]+=o[i-1][0]=r,Bs(e,t)}}var tg={},rg={},bS;function uk(){return bS||(bS=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(r){return r==="__proto__"}e.isUnsafeProperty=t})(rg)),rg}var ig={},SS;function G2(){return SS||(SS=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})(ig)),ig}var ng={},wS;function R_(){return wS||(wS=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})(ng)),ng}var sg={},ag={},CS;function hk(){return CS||(CS=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})(ag)),ag}var xS;function k_(){return xS||(xS=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=hk(),r=R_();function i(o){if(Array.isArray(o))return o.map(r.toKey);if(typeof o=="symbol")return[o];o=t.toString(o);const f=[],g=o.length;if(g===0)return f;let a=0,c="",h="",v=!1;for(o.charCodeAt(0)===46&&(f.push(""),a++);a<g;){const u=o[a];h?u==="\\"&&a+1<g?(a++,c+=o[a]):u===h?h="":c+=u:v?u==='"'||u==="'"?h=u:u==="]"?(v=!1,f.push(c),c=""):c+=u:u==="["?(v=!0,c&&(f.push(c),c="")):u==="."?c&&(f.push(c),c=""):c+=u,a++}return c&&f.push(c),f}e.toPath=i})(sg)),sg}var ES;function P_(){return ES||(ES=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=uk(),r=G2(),i=R_(),o=k_();function f(a,c,h){if(a==null)return h;switch(typeof c){case"string":{if(t.isUnsafeProperty(c))return h;const v=a[c];return v===void 0?r.isDeepKey(c)?f(a,o.toPath(c),h):h:v}case"number":case"symbol":{typeof c=="number"&&(c=i.toKey(c));const v=a[c];return v===void 0?h:v}default:{if(Array.isArray(c))return g(a,c,h);if(Object.is(c==null?void 0:c.valueOf(),-0)?c="-0":c=String(c),t.isUnsafeProperty(c))return h;const v=a[c];return v===void 0?h:v}}}function g(a,c,h){if(c.length===0)return h;let v=a;for(let u=0;u<c.length;u++){if(v==null||t.isUnsafeProperty(c[u]))return h;v=v[c[u]]}return v===void 0?h:v}e.get=f})(tg)),tg}var og,AS;function fk(){return AS||(AS=1,og=P_().get),og}var dk=fk();const Ga=Qn(dk);var vk=4;function Gn(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:vk,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,f,g)=>{var a=r[g-1];return typeof a=="string"?o+a+f:a!==void 0?o+Gn(a)+f:o+f},"")}var Rr=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,Oe=e=>(typeof e=="number"||e instanceof Number)&&!ki(e),Pi=e=>Oe(e)||typeof e=="string",gk=0,Ml=e=>{var t=++gk;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(!Oe(t)&&typeof t!="string")return i;var f;if(js(t)){if(r==null)return i;var g=t.indexOf("%");f=r*parseFloat(t.slice(0,g))/100}else f=+t;return ki(f)&&(f=i),o&&r!=null&&f>r&&(f=r),f},K2=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 Oe(e)&&Oe(t)?Gn(e+r*(t-e)):t}function pk(e,t,r){if(!(!e||!e.length))return e.find(i=>i&&(typeof t=="function"?t(i):Ga(i,t))===r)}var It=e=>e===null||typeof e>"u",Ul=e=>It(e)?e:"".concat(e.charAt(0).toUpperCase()).concat(e.slice(1));function Mi(e){return e!=null}function no(){}var _k=["type","size","sizeType"];function Ip(){return Ip=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},Ip.apply(null,arguments)}function MS(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 LS(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?MS(Object(r),!0).forEach(function(i){mk(e,i,r[i])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):MS(Object(r)).forEach(function(i){Object.defineProperty(e,i,Object.getOwnPropertyDescriptor(r,i))})}return e}function mk(e,t,r){return(t=yk(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function yk(e){var t=bk(e,"string");return typeof t=="symbol"?t:t+""}function bk(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 Sk(e,t){if(e==null)return{};var r,i,o=wk(e,t);if(Object.getOwnPropertySymbols){var f=Object.getOwnPropertySymbols(e);for(i=0;i<f.length;i++)r=f[i],t.indexOf(r)===-1&&{}.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}function wk(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 Y2={symbolCircle:D_,symbolCross:j3,symbolDiamond:N3,symbolSquare:z3,symbolStar:F3,symbolTriangle:q3,symbolWye:G3},Ck=Math.PI/180,xk=e=>{var t="symbol".concat(Ul(e));return Y2[t]||D_},Ek=(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*Ck;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}},Ak=(e,t)=>{Y2["symbol".concat(Ul(e))]=t},V2=e=>{var{type:t="circle",size:r=64,sizeType:i="area"}=e,o=Sk(e,_k),f=LS(LS({},o),{},{type:t,size:r,sizeType:i}),g="circle";typeof t=="string"&&(g=t);var a=()=>{var m=xk(g),w=K3().type(m).size(Ek(r,i,g)),C=w();if(C!==null)return C},{className:c,cx:h,cy:v}=f,u=ti(f);return Oe(h)&&Oe(v)&&Oe(r)?N.createElement("path",Ip({},u,{className:vt("recharts-symbols",c),transform:"translate(".concat(h,", ").concat(v,")"),d:a()})):null};V2.registerSymbol=Ak;var X2=e=>"radius"in e&&"startAngle"in e&&"endAngle"in e,Mk=(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=>{M_(o)&&typeof r[o]=="function"&&(i[o]=(f=>r[o](r,f)))}),i},Lk=(e,t,r)=>i=>(e(t,r,i),null),B_=(e,t,r)=>{if(e===null||typeof e!="object"&&typeof e!="function")return null;var i=null;return Object.keys(e).forEach(o=>{var f=e[o];M_(o)&&typeof f=="function"&&(i||(i={}),i[o]=Lk(f,t,r))}),i};function OS(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 Ok(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?OS(Object(r),!0).forEach(function(i){Tk(e,i,r[i])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):OS(Object(r)).forEach(function(i){Object.defineProperty(e,i,Object.getOwnPropertyDescriptor(r,i))})}return e}function Tk(e,t,r){return(t=Dk(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function Dk(e){var t=Rk(e,"string");return typeof t=="symbol"?t:t+""}function Rk(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=Ok({},e),i=t,o=Object.keys(t),f=o.reduce((g,a)=>(g[a]===void 0&&i[a]!==void 0&&(g[a]=i[a]),g),r);return f}var lg={},cg={},TS;function kk(){return TS||(TS=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(r,i){const o=new Map;for(let f=0;f<r.length;f++){const g=r[f],a=i(g,f,r);o.has(a)||o.set(a,g)}return Array.from(o.values())}e.uniqBy=t})(cg)),cg}var ug={},DS;function Pk(){return DS||(DS=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})(ug)),ug}var hg={},RS;function Z2(){return RS||(RS=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(r){return r}e.identity=t})(hg)),hg}var fg={},dg={},vg={},kS;function Bk(){return kS||(kS=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(r){return Number.isSafeInteger(r)&&r>=0}e.isLength=t})(vg)),vg}var PS;function Q2(){return PS||(PS=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=Bk();function r(i){return i!=null&&typeof i!="function"&&t.isLength(i.length)}e.isArrayLike=r})(dg)),dg}var gg={},BS;function jk(){return BS||(BS=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(r){return typeof r=="object"&&r!==null}e.isObjectLike=t})(gg)),gg}var jS;function Ik(){return jS||(jS=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=Q2(),r=jk();function i(o){return r.isObjectLike(o)&&t.isArrayLike(o)}e.isArrayLikeObject=i})(fg)),fg}var pg={},_g={},IS;function Nk(){return IS||(IS=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=P_();function r(i){return function(o){return t.get(o,i)}}e.property=r})(_g)),_g}var mg={},yg={},bg={},Sg={},NS;function J2(){return NS||(NS=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})(Sg)),Sg}var wg={},zS;function eE(){return zS||(zS=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})(wg)),wg}var Cg={},HS;function tE(){return HS||(HS=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})(Cg)),Cg}var $S;function zk(){return $S||($S=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=J2(),r=eE(),i=tE();function o(v,u,m){return typeof m!="function"?o(v,u,()=>{}):f(v,u,function w(C,_,d,y,b,S){const E=m(C,_,d,y,b,S);return E!==void 0?!!E:f(C,_,w,S)},new Map)}function f(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?f(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 h(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 h(v,u,m,w){return u.size===0?!0:v instanceof Set?c([...v],[...u],m,w):!1}e.isMatchWith=o,e.isSetMatch=h})(bg)),bg}var US;function rE(){return US||(US=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=zk();function r(i,o){return t.isMatchWith(i,o,()=>{})}e.isMatch=r})(yg)),yg}var xg={},Eg={},Ag={},FS;function Hk(){return FS||(FS=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})(Ag)),Ag}var Mg={},qS;function j_(){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})(Mg)),Mg}var Lg={},WS;function iE(){return WS||(WS=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t="[object RegExp]",r="[object String]",i="[object Number]",o="[object Boolean]",f="[object Arguments]",g="[object Symbol]",a="[object Date]",c="[object Map]",h="[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]",T="[object Int32Array]",M="[object BigInt64Array]",D="[object Float32Array]",k="[object Float64Array]";e.argumentsTag=f,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=T,e.int8ArrayTag=L,e.mapTag=c,e.numberTag=i,e.objectTag=w,e.regexpTag=t,e.setTag=h,e.stringTag=r,e.symbolTag=g,e.uint16ArrayTag=b,e.uint32ArrayTag=S,e.uint8ArrayTag=d,e.uint8ClampedArrayTag=y})(Lg)),Lg}var Og={},GS;function $k(){return GS||(GS=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(r){return ArrayBuffer.isView(r)&&!(r instanceof DataView)}e.isTypedArray=t})(Og)),Og}var KS;function nE(){return KS||(KS=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=Hk(),r=j_(),i=iE(),o=eE(),f=$k();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(f.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"&&h(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 h(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})(Eg)),Eg}var YS;function Uk(){return YS||(YS=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=nE();function r(i){return t.cloneDeepWithImpl(i,void 0,i,new Map,void 0)}e.cloneDeep=r})(xg)),xg}var VS;function Fk(){return VS||(VS=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=rE(),r=Uk();function i(o){return o=r.cloneDeep(o),f=>t.isMatch(f,o)}e.matches=i})(mg)),mg}var Tg={},Dg={},Rg={},XS;function qk(){return XS||(XS=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=nE(),r=j_(),i=iE();function o(f,g){return t.cloneDeepWith(f,(a,c,h,v)=>{const u=g==null?void 0:g(a,c,h,v);if(u!==void 0)return u;if(typeof f=="object"){if(r.getTag(f)===i.objectTag&&typeof f.constructor!="function"){const m={};return v.set(f,m),t.copyProperties(m,f,h,v),m}switch(Object.prototype.toString.call(f)){case i.numberTag:case i.stringTag:case i.booleanTag:{const m=new f.constructor(f==null?void 0:f.valueOf());return t.copyProperties(m,f),m}case i.argumentsTag:{const m={};return t.copyProperties(m,f),m.length=f.length,m[Symbol.iterator]=f[Symbol.iterator],m}default:return}}})}e.cloneDeepWith=o})(Rg)),Rg}var ZS;function Wk(){return ZS||(ZS=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=qk();function r(i){return t.cloneDeepWith(i)}e.cloneDeep=r})(Dg)),Dg}var kg={},Pg={},QS;function sE(){return QS||(QS=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})(Pg)),Pg}var Bg={},JS;function Gk(){return JS||(JS=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=j_();function r(i){return i!==null&&typeof i=="object"&&t.getTag(i)==="[object Arguments]"}e.isArguments=r})(Bg)),Bg}var ew;function Kk(){return ew||(ew=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=G2(),r=sE(),i=Gk(),o=k_();function f(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 h=g;for(let v=0;v<c.length;v++){const u=c[v];if((h==null||!Object.hasOwn(h,u))&&!((Array.isArray(h)||i.isArguments(h))&&r.isIndex(u)&&u<h.length))return!1;h=h[u]}return!0}e.has=f})(kg)),kg}var tw;function Yk(){return tw||(tw=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=rE(),r=R_(),i=Wk(),o=P_(),f=Kk();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(h){const v=o.get(h,a);return v===void 0?f.has(h,a):c===void 0?v===void 0:t.isMatch(v,c)}}e.matchesProperty=g})(Tg)),Tg}var rw;function Vk(){return rw||(rw=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=Z2(),r=Nk(),i=Fk(),o=Yk();function f(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=f})(pg)),pg}var iw;function Xk(){return iw||(iw=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=kk(),r=Pk(),i=Z2(),o=Ik(),f=Vk();function g(a,c=i.identity){return o.isArrayLikeObject(a)?t.uniqBy(Array.from(a),r.ary(f.iteratee(c),1)):[]}e.uniqBy=g})(lg)),lg}var jg,nw;function Zk(){return nw||(nw=1,jg=Xk().uniqBy),jg}var Qk=Zk();const sw=Qn(Qk);function Jk(e,t,r){return t===!0?sw(e,r):typeof t=="function"?sw(e,t):e}var Ig={exports:{}},Ng={},zg={exports:{}},Hg={};/**
130
+ `),!1;if(!(E?V.metaKey:V.ctrlKey&&V.shiftKey))return!0;if(V.key==="c"||V.key==="C"){const re=w.getSelection();return re?(V.preventDefault(),navigator.clipboard.writeText(re).catch(()=>{}),!1):!0}return V.key==="v"||V.key==="V"?(V.preventDefault(),$R(w),!1):!0});const L=V=>UR(V,w);o.current.addEventListener("paste",L);try{const V=w._core,ue=V==null?void 0:V._inputHandler;if(ue&&typeof ue.eraseInDisplay=="function"){const re=ue.eraseInDisplay.bind(ue);ue.eraseInDisplay=(ye,ce)=>ye.params[0]===3?!0:re(ye,ce)}}catch{}const x=new jR({term:w,fitAddon:C,debug:!1,getContainer:()=>o.current});let T=null;const M=()=>{T&&clearTimeout(T),T=setTimeout(()=>{T=null,x.safeFit()},150)};x.safeFit();const D=setTimeout(M,300),P=`${window.location.protocol==="https:"?"wss:":"ws:"}//${window.location.host}${e}`,R={lastSeq:0,attempts:0,timer:null,disposed:!1,initialPhase:!0,initialBuffer:"",flushTimer:null,skipReplay:!1},B=50,H=3e4,X=V=>(V=V.replace(/\x1b\[[\?>][\d;]*c/g,""),V=V.replace(/\[[\?>][\d;]*c/g,""),V),q=new IR,K=V=>{const ue=V!==void 0?`${P}?resume=${V}`:P,re=new WebSocket(ue);re.binaryType="arraybuffer",g.current=re,R.initialPhase=!0,R.initialBuffer="",R.flushTimer&&(clearTimeout(R.flushTimer),R.flushTimer=null),q.flush(),x.reset();const ye=()=>{R.initialPhase=!1,R.flushTimer=null;const ce=()=>{var xe;((xe=g.current)==null?void 0:xe.readyState)===WebSocket.OPEN&&mu(g.current,"resize",{cols:w.cols,rows:w.rows})};if(R.initialBuffer){const xe=X(R.initialBuffer);R.initialBuffer="",xe?(x.beginReplay(),w.write(xe,()=>{x.endReplay(),ce()})):(x.enterInteractive(),M(),ce())}else x.enterInteractive(),M(),ce()};re.onopen=()=>{R.attempts=0,u("connected"),mu(re,"resize",{cols:w.cols,rows:w.rows})},re.onmessage=ce=>{var nt;const xe=new Uint8Array(ce.data);if(xe.length===0)return;const Te=xe[0],be=xe.subarray(1);if(Te===b2){const _t=new TextDecoder().decode(be);if(R.initialPhase)R.initialBuffer+=_t,R.flushTimer||(R.flushTimer=setTimeout(ye,500));else{const Ce=q.write(_t);if(Ce){const me=X(Ce);me&&w.write(me)}}}else if(Te===y2)try{const _t=JSON.parse(new TextDecoder().decode(be));_t.type==="seq"&&typeof((nt=_t.payload)==null?void 0:nt.seq)=="number"&&(R.lastSeq=_t.payload.seq)}catch{}},re.onclose=()=>{if(R.disposed)return;if(R.attempts>=B){u("disconnected");return}u("reconnecting");const ce=Math.min(1e3*Math.pow(2,R.attempts),H);R.attempts++,R.timer=setTimeout(()=>{R.disposed||K(R.lastSeq||void 0)},ce)},re.onerror=()=>{}},Y=((ee=(W=window.matchMedia)==null?void 0:W.call(window,"(pointer: coarse)"))==null?void 0:ee.matches)??!1,j=w.textarea;let $=!1,z=0,F="",Q=0;const te=()=>{$=!0},fe=()=>{$=!1,z=Date.now()};j&&(j.addEventListener("compositionstart",te),j.addEventListener("compositionend",fe)),w.onData(V=>{var xe,Te,be,nt,_t,Ce;const ue=g.current;if(!ue||ue.readyState!==WebSocket.OPEN)return;const re=Date.now();if(($||re-z<150||Y)&&V===F&&re-Q<150)return;if(F=V,Q=re,R.initialPhase){const me=V.replace(/\x1b\[[\?>][\d;]*c/g,"").replace(/\x1b\[\d+;\d+R/g,"").replace(/\x1b\[\?[\d;]*\$y/g,"");if(!me)return;V=me}const ce=c.current;if((ce.ctrl||ce.cmd)&&V.length===1){const me=V.charCodeAt(0);if(ce.ctrl)me>=97&&me<=122?V=String.fromCharCode(me-96):me>=65&&me<=90&&(V=String.fromCharCode(me-64)),ce.ctrl=!1,ce.cmd=!1,(xe=ce.clearCallback)==null||xe.call(ce);else if(ce.cmd){const we=V.toLowerCase();if(we==="v"){(Te=navigator.clipboard)==null||Te.readText().then(ve=>{ve&&w.paste(ve)}).catch(()=>{}),ce.ctrl=!1,ce.cmd=!1,(be=ce.clearCallback)==null||be.call(ce);return}if(we==="c"){const ve=w.getSelection();ve&&((nt=navigator.clipboard)==null||nt.writeText(ve).catch(()=>{})),ce.ctrl=!1,ce.cmd=!1,(_t=ce.clearCallback)==null||_t.call(ce);return}ce.ctrl=!1,ce.cmd=!1,(Ce=ce.clearCallback)==null||Ce.call(ce)}}FR(ue,V)}),w.onResize(({cols:V,rows:ue})=>{const re=g.current;(re==null?void 0:re.readyState)===WebSocket.OPEN&&mu(re,"resize",{cols:V,rows:ue})}),m.current=()=>{a.current&&a.current.fit();const V=g.current;(V==null?void 0:V.readyState)===WebSocket.OPEN&&mu(V,"resize",{cols:w.cols,rows:w.rows})},K();const ge=new ResizeObserver(()=>M());ge.observe(o.current);const Z=()=>{document.hidden||M()};return document.addEventListener("visibilitychange",Z),()=>{var V,ue;R.disposed=!0,R.timer&&clearTimeout(R.timer),R.flushTimer&&clearTimeout(R.flushTimer),clearTimeout(D),T&&clearTimeout(T),j&&(j.removeEventListener("compositionstart",te),j.removeEventListener("compositionend",fe)),x.dispose(),S==null||S.dispose(),b==null||b.dispose(),(V=o.current)==null||V.removeEventListener("paste",L),ge.disconnect(),document.removeEventListener("visibilitychange",Z),(ue=g.current)==null||ue.close(),w.dispose(),f.current=null,g.current=null,a.current=null}},[e]),U.jsxs("div",{style:{width:"100%",height:"100%",display:"flex",flexDirection:"column",position:"relative"},children:[r===!1&&U.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"}),U.jsx("div",{ref:o,className:"terminal-container",style:{width:"100%",flex:1,minHeight:0,overflow:"hidden",backgroundColor:"#1a1a1a"}}),U.jsx(zR,{fitRef:a,wsRef:g,xtermRef:f,connStatus:v,toolbarExtra:i,onReconnect:()=>{var w;return(w=m.current)==null?void 0:w.call(m)}}),h&&U.jsx(BR,{wsRef:g,modifierRef:c})]})}function FR(e,t){const r=new TextEncoder().encode(t),i=new Uint8Array(1+r.length);i[0]=b2,i.set(r,1),e.send(i.buffer)}function mu(e,t,r){const i=JSON.stringify({type:t,payload:r}),o=new TextEncoder().encode(i),f=new Uint8Array(1+o.length);f[0]=y2,f.set(o,1),e.send(f.buffer)}const qR=2500;function WR(){const[e,t]=N.useState(null),[r,i]=N.useState(null),o=N.useCallback(async()=>{try{const g=await rR();t(a=>a!==null&&JSON.stringify(a)===JSON.stringify(g)?a:g),i(null)}catch(g){i(g instanceof Error?g.message:"Failed to fetch overview")}},[]);N.useEffect(()=>{o();const g=setInterval(o,qR);return()=>clearInterval(g)},[o]),d2(o);const f=N.useCallback(async()=>{await iR(),await o()},[o]);return{data:e,error:r,refresh:f}}function GR(e){if(e.blocked)return`Blocked: ${e.blocked}`;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 Xv(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 KR(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?Xv(r):`${Xv(r)} wc / ${Xv(i)} ag`}function YR({builder:e,onOpen:t}){const r=e.issueId?`#${e.issueId}`:e.id,i=e.issueTitle||e.id,o=e.blocked!==null&&e.blocked!=="",f=Math.min(100,Math.max(0,Math.round(e.progress??0)));return U.jsxs("tr",{className:`builder-row${o?" builder-row--blocked":""}`,children:[U.jsx("td",{className:"builder-col-id",children:r}),U.jsx("td",{className:"builder-col-title",children:i}),U.jsx("td",{className:"builder-col-state",children:U.jsx("span",{className:o?"builder-state-blocked":"builder-state-active",children:GR(e)})}),U.jsxs("td",{className:"builder-col-progress",children:[U.jsx("div",{className:"progress-bar",children:U.jsx("div",{className:`progress-fill${o?" progress-fill--blocked":""}`,style:{width:`${f}%`}})}),U.jsxs("span",{className:"progress-pct",children:[f,"%"]})]}),U.jsx("td",{className:"builder-col-elapsed",children:KR(e.startedAt,e.idleMs??0)}),U.jsx("td",{className:"builder-col-actions",children:t&&U.jsx("button",{className:"builder-row-open",onClick:()=>t(e),children:"Open"})})]})}function VR(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 XR(e,t){const r=[];for(const i of e)r.push({key:`pr-${i.id}`,issueOrPR:`#${i.id}`,title:i.title,kind:"PR review",kindClass:"attention-kind--pr",waitingSince:i.createdAt,url:i.url});for(const i of t){if(!i.blocked||!i.blockedSince||i.blocked==="PR review")continue;const o=i.issueId?`#${i.issueId}`:i.id;r.push({key:`gate-${i.id}`,issueOrPR:o,title:i.issueTitle||i.id,kind:i.blocked,kindClass:i.blocked==="spec review"?"attention-kind--spec":"attention-kind--plan",waitingSince:i.blockedSince})}return r.sort((i,o)=>new Date(i.waitingSince).getTime()-new Date(o.waitingSince).getTime()),r}function ZR({prs:e,builders:t}){const r=XR(e,t);return r.length===0?U.jsx("p",{className:"work-empty",children:"Nothing needs attention"}):U.jsx("div",{className:"attention-rows",children:r.map(i=>{const o=U.jsxs(U.Fragment,{children:[U.jsx("span",{className:"attention-row-id",children:i.issueOrPR}),U.jsx("span",{className:"attention-row-title",children:i.title}),U.jsx("span",{className:`attention-row-kind ${i.kindClass}`,children:i.kind}),U.jsx("span",{className:"attention-row-age",children:VR(i.waitingSince)})]});return i.url?U.jsx("a",{className:"attention-row",href:i.url,target:"_blank",rel:"noopener noreferrer",children:o},i.key):U.jsx("div",{className:"attention-row",children:o},i.key)})})}function QR(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 JR={high:"priority-dot--high",medium:"priority-dot--med",low:"priority-dot--low"},e3={bug:"type-tag--bug",project:"type-tag--project",spike:"type-tag--spike"};function Zv({label:e,filePath:t,onRefresh:r}){return U.jsx("button",{className:"backlog-artifact-link",onClick:async i=>{i.preventDefault(),i.stopPropagation(),await Ih(t),r==null||r()},children:e})}function t3({items:e,onRefresh:t}){const r=e.filter(i=>!i.hasBuilder);return r.length===0?U.jsx("p",{className:"work-empty",children:"No open issues"}):U.jsx("div",{className:"backlog-rows",children:r.map(i=>U.jsxs("div",{className:"backlog-row",children:[U.jsxs("a",{className:"backlog-row-main",href:i.url,target:"_blank",rel:"noopener noreferrer",children:[U.jsx("span",{className:`backlog-priority-dot ${JR[i.priority]??"priority-dot--low"}`}),U.jsxs("span",{className:"backlog-row-number",children:["#",i.id]}),U.jsx("span",{className:`backlog-type-tag ${e3[i.type]??""}`,children:i.type}),U.jsx("span",{className:"backlog-row-title",children:i.title}),i.author&&U.jsxs("span",{className:"backlog-row-author",children:["r: @",i.author]}),U.jsxs("span",{className:"backlog-row-assignees",children:["a: ",i.assignees&&i.assignees.length>0?i.assignees.map(o=>`@${o}`).join(", "):"none"]}),U.jsx("span",{className:"backlog-row-age",children:QR(i.createdAt)})]}),(i.specPath||i.planPath||i.reviewPath)&&U.jsxs("span",{className:"backlog-artifacts",children:[i.specPath&&U.jsx(Zv,{label:"spec",filePath:i.specPath,onRefresh:t}),i.planPath&&U.jsx(Zv,{label:"plan",filePath:i.planPath,onRefresh:t}),i.reviewPath&&U.jsx(Zv,{label:"review",filePath:i.reviewPath,onRefresh:t})]})]},i.id))})}function r3(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 i3={bug:"type-tag--bug",project:"type-tag--project",spike:"type-tag--spike"};function Qv({label:e,filePath:t,onRefresh:r}){return U.jsx("button",{className:"backlog-artifact-link",onClick:async i=>{i.preventDefault(),i.stopPropagation(),await Ih(t),r==null||r()},children:e})}function n3({items:e,onRefresh:t}){return e.length===0?null:U.jsx("div",{className:"recently-closed-rows",children:e.map(r=>{const i=r.prUrl||r.specPath||r.planPath||r.reviewPath;return U.jsxs("div",{className:"recently-closed-row",children:[U.jsxs("a",{className:"recently-closed-row-main",href:r.url,target:"_blank",rel:"noopener noreferrer",children:[U.jsx("span",{className:"recently-closed-check",children:"✓"}),U.jsxs("span",{className:"backlog-row-number",children:["#",r.id]}),U.jsx("span",{className:`backlog-type-tag ${i3[r.type]??""}`,children:r.type}),U.jsx("span",{className:"backlog-row-title",children:r.title}),U.jsx("span",{className:"backlog-row-age",children:r3(r.closedAt)})]}),i&&U.jsxs("span",{className:"backlog-artifacts",children:[r.specPath&&U.jsx(Qv,{label:"spec",filePath:r.specPath,onRefresh:t}),r.planPath&&U.jsx(Qv,{label:"plan",filePath:r.planPath,onRefresh:t}),r.reviewPath&&U.jsx(Qv,{label:"review",filePath:r.reviewPath,onRefresh:t}),r.prUrl&&U.jsx("a",{className:"backlog-artifact-link",href:r.prUrl,target:"_blank",rel:"noopener noreferrer",onClick:o=>o.stopPropagation(),children:"PR"})]})]},r.id)})})}function s3(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 w2({entry:e,expanded:t,gitStatus:r,onToggle:i,onOpen:o,depth:f=0}){var h;const g=e.type==="directory",a=t.has(e.path),c=g?null:s3(e.path,r);return U.jsxs(U.Fragment,{children:[U.jsxs("div",{className:`file-node ${g?"directory":"file"}`,style:{paddingLeft:`${f*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:[U.jsx("span",{className:"file-icon",children:g?a?"📂":"📁":"📄"}),U.jsx("span",{className:"file-name",children:e.name}),c&&U.jsx("span",{className:`git-indicator ${c.className}`,children:c.indicator})]}),g&&a&&((h=e.children)==null?void 0:h.map(v=>U.jsx(w2,{entry:v,expanded:t,gitStatus:r,onToggle:i,onOpen:o,depth:f+1},v.path)))]})}function C2(e,t=[]){for(const r of e)r.type==="file"&&t.push(r),r.children&&C2(r.children,t);return t}function a3({onRefresh:e}){const[t,r]=N.useState([]),[i,o]=N.useState(new Set),[f,g]=N.useState(null),[a,c]=N.useState(!1),[h,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 aR();r(R),g(null),c(!0)}catch(R){g(R.message)}},[]),S=N.useCallback(async()=>{try{const R=await lR();v(R)}catch(R){console.error("Failed to load git status:",R)}},[]),E=N.useCallback(async()=>{try{const R=await cR();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 H=new Set(B);return H.has(R)?H.delete(R):H.add(R),H})},x=async R=>{try{await Ih(R),e(),E()}catch(B){console.error("Failed to open file:",B)}},T=N.useMemo(()=>C2(t),[t]),M=N.useMemo(()=>{if(!w.trim())return[];const R=w.toLowerCase();return T.filter(B=>B.name.toLowerCase().includes(R)||B.path.toLowerCase().includes(R)).slice(0,10)},[T,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 f?U.jsxs("div",{className:"file-tree-error",children:["Error: ",f]}):a?U.jsxs("div",{className:"file-tree-container",children:[U.jsxs("div",{className:"file-search",children:[U.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&&U.jsx("div",{className:"file-search-suggestions",children:M.map(R=>U.jsxs("div",{className:"file-search-suggestion",onMouseDown:()=>P(R.path),children:[U.jsx("span",{className:"suggestion-name",children:R.name}),U.jsx("span",{className:"suggestion-path",children:R.path})]},R.path))})]}),u.length>0&&U.jsxs("div",{className:"file-tree-section",children:[U.jsx("div",{className:"file-tree-section-header",children:"Recent"}),u.map(R=>U.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:[U.jsx("span",{className:"file-icon",children:"🕐"}),U.jsx("span",{className:"file-name",children:R.name}),U.jsx("span",{className:"file-path-hint",children:R.relativePath})]},R.id))]}),U.jsxs("div",{className:"file-tree-section",children:[U.jsx("div",{className:"file-tree-section-header",children:"Files"}),U.jsx("div",{className:"file-tree",role:"tree","aria-label":"Project files",children:t.map(R=>U.jsx(w2,{entry:R,expanded:i,gitStatus:h,onToggle:L,onOpen:x},R.path))})]})]}):U.jsx("div",{className:"file-tree-loading",children:"Loading files..."})}function o3(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 l3(e){const t=e.split("/").filter(Boolean);return t.length<=1?e:t.slice(-2).join("/")}const c3=3e4;function u3({utils:e,annotations:t,onSelectTab:r}){if(e.length===0&&t.length===0)return null;const i=Date.now();return U.jsxs("section",{className:"work-section",children:[U.jsx("h3",{className:"work-section-title",children:"Open Files & Shells"}),U.jsxs("div",{className:"ofs-rows",children:[e.length>0&&U.jsxs(U.Fragment,{children:[U.jsx("div",{className:"ofs-subgroup-label",children:"Shells"}),e.map(o=>{const f=!o.lastDataAt||i-o.lastDataAt>c3,g=o.lastDataAt?o3(i-o.lastDataAt):"";return U.jsxs("div",{className:"ofs-row",onClick:()=>r(o.id),children:[U.jsx("span",{className:`ofs-dot ${f?"ofs-dot--idle":"ofs-dot--running"}`}),U.jsx("span",{className:"ofs-name",children:o.name||`Shell ${o.id}`}),f&&g&&U.jsx("span",{className:"ofs-idle",children:g})]},o.id)})]}),t.length>0&&U.jsxs(U.Fragment,{children:[U.jsx("div",{className:"ofs-subgroup-label",children:"Files"}),t.map(o=>{const f=o.file.split("/").pop()??o.file;return U.jsxs("div",{className:"ofs-row",onClick:()=>r(o.id),title:o.file,children:[U.jsx("span",{className:"ofs-file-icon",children:"📄"}),U.jsx("span",{className:"ofs-name",children:f}),U.jsx("span",{className:"ofs-path",children:l3(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 h3(e){const t=new Date(e.getFullYear(),0,0);return Math.floor((e.getTime()-t.getTime())/864e5)}function x2(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 f3(){try{return localStorage.getItem(x2(new Date))==="1"}catch{return!1}}function d3(){try{localStorage.setItem(x2(new Date),"1")}catch{}}function v3(e){return e.split("`").map((r,i)=>i%2===1?U.jsx("code",{children:r},i):U.jsx("span",{children:r},i))}function g3(){const e=h3(new Date)%Ra.length,[t,r]=N.useState(e),[i,o]=N.useState(f3);if(i||Ra.length===0)return null;const f=()=>{r((t-1+Ra.length)%Ra.length)},g=()=>{r((t+1)%Ra.length)},a=()=>{d3(),o(!0)};return U.jsxs("div",{className:"tip-banner",children:[U.jsx("button",{className:"tip-banner-nav",onClick:f,"aria-label":"Previous tip",children:"‹"}),U.jsx("span",{className:"tip-banner-label",children:"Tip:"}),U.jsx("span",{className:"tip-banner-text",children:v3(Ra[t])}),U.jsx("button",{className:"tip-banner-nav",onClick:g,"aria-label":"Next tip",children:"›"}),U.jsx("button",{className:"tip-banner-dismiss",onClick:a,"aria-label":"Dismiss tip",children:"×"})]})}function p3({state:e,onRefresh:t,onSelectTab:r}){var v,u;const{data:i,error:o,refresh:f}=WR(),[g,a]=N.useState(!1),c=N.useCallback(async()=>{try{await nR(),t()}catch(m){console.error("Failed to create shell:",m)}},[t]),h=N.useCallback(m=>{var C;const w=(C=e==null?void 0:e.builders)==null?void 0:C.find(_=>{var d,y,b,S;return m.issueId?((d=_.name)==null?void 0:d.includes(m.issueId))||((y=_.id)==null?void 0:y.includes(m.issueId)):((b=_.id)==null?void 0:b.includes(m.id))||((S=_.name)==null?void 0:S.includes(m.id))});w&&(r==null||r(w.id))},[e==null?void 0:e.builders,r]);return e?U.jsxs("div",{className:`work-view ${g?"file-panel-open":""}`,children:[U.jsxs("div",{className:"work-content",children:[U.jsxs("div",{className:"work-header",children:[U.jsx("h2",{className:"work-title",children:"Work"}),U.jsxs("div",{className:"work-actions",children:[U.jsx("button",{className:"work-btn",onClick:c,children:"+ Shell"}),U.jsx("button",{className:"work-btn work-btn-secondary",onClick:f,children:"Refresh"})]})]}),o&&U.jsxs("div",{className:"work-error",children:["Failed to load overview: ",o]}),U.jsx(g3,{}),U.jsxs("section",{className:"work-section",children:[U.jsx("h3",{className:"work-section-title",children:"Builders"}),i!=null&&i.builders&&i.builders.length>0?U.jsxs("table",{className:"builder-table",children:[U.jsx("thead",{children:U.jsxs("tr",{children:[U.jsx("th",{children:"Issue"}),U.jsx("th",{children:"Title"}),U.jsx("th",{children:"State"}),U.jsx("th",{children:"Progress"}),U.jsx("th",{children:"Elapsed"}),U.jsx("th",{})]})}),U.jsx("tbody",{children:i.builders.map(m=>U.jsx(YR,{builder:m,onOpen:h},m.id))})]}):U.jsx("p",{className:"work-empty",children:"No active builders"})]}),U.jsx(u3,{utils:(e==null?void 0:e.utils)??[],annotations:(e==null?void 0:e.annotations)??[],onSelectTab:m=>r==null?void 0:r(m)}),U.jsxs("section",{className:"work-section",children:[U.jsx("h3",{className:"work-section-title",children:"Needs Attention"}),(v=i==null?void 0:i.errors)!=null&&v.prs?U.jsx("p",{className:"work-unavailable",children:i.errors.prs}):U.jsx(ZR,{prs:(i==null?void 0:i.pendingPRs)??[],builders:(i==null?void 0:i.builders)??[]})]}),U.jsxs("section",{className:"work-section",children:[U.jsx("h3",{className:"work-section-title",children:"Backlog"}),(u=i==null?void 0:i.errors)!=null&&u.issues?U.jsx("p",{className:"work-unavailable",children:i.errors.issues}):U.jsx(t3,{items:(i==null?void 0:i.backlog)??[],onRefresh:t})]}),(i==null?void 0:i.recentlyClosed)&&i.recentlyClosed.length>0&&U.jsxs("section",{className:"work-section",children:[U.jsx("h3",{className:"work-section-title",children:"Recently Closed"}),U.jsx(n3,{items:i.recentlyClosed,onRefresh:t})]})]}),U.jsxs("div",{className:`work-file-panel ${g?"expanded":"collapsed"}`,children:[U.jsxs("div",{className:"work-file-panel-header",children:[U.jsx("span",{className:"work-file-panel-toggle",onClick:()=>a(!g),children:g?"▼":"▲"}),U.jsx("span",{className:"work-file-panel-label",onClick:()=>a(!g),children:"Files"}),!g&&U.jsx("input",{className:"work-file-panel-search",type:"text",placeholder:"Search files...",onFocus:()=>a(!0)})]}),g&&U.jsx("div",{className:"work-file-panel-content",children:U.jsx(a3,{onRefresh:t})})]})]}):U.jsx("div",{className:"work-view",children:U.jsx("p",{className:"work-loading",children:"Loading..."})})}function _3({tabs:e,activeTabId:t,onSelectTab:r,onRefresh:i,children:o}){return U.jsxs("div",{className:"mobile-layout",children:[U.jsx(g2,{tabs:e,activeTabId:t,onSelectTab:r,onRefresh:i}),U.jsx("div",{className:"mobile-content",children:o})]})}function m3({tabId:e,initialLine:t}){let i=`${l2()}api/annotate/${e}/`;return t&&(i+=`?line=${t}`),U.jsx("div",{className:"file-viewer",style:{width:"100%",height:"100%"},children:U.jsx("iframe",{src:i,style:{width:"100%",height:"100%",border:"none"},title:"File Annotator"})})}function y3(e){return e==="24h"?"1":e==="7d"?"7":e==="30d"?"30":"all"}function b3(e){const[t,r]=N.useState(null),[i,o]=N.useState(null),[f,g]=N.useState(!1),[a,c]=N.useState("7d"),h=N.useCallback(async(u,m=!1)=>{g(!0),o(null);try{const w=await eR(y3(u),m);r(w)}catch(w){o(w instanceof Error?w.message:"Failed to fetch analytics")}finally{g(!1)}},[]);N.useEffect(()=>{e&&h(a)},[a,e,h]);const v=N.useCallback(()=>{h(a,!0)},[h,a]);return{data:t,error:i,loading:f,range:a,setRange:c,refresh:v}}function E2(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=E2(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=E2(e))&&(i&&(i+=" "),i+=t);return i}var S3=["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 M_(e){if(typeof e!="string")return!1;var t=S3;return t.includes(e)}var w3=["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"],C3=new Set(w3);function A2(e){return typeof e!="string"?!1:C3.has(e)}function M2(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)&&(A2(r)||M2(r))&&(t[r]=e[r]);return t}function L_(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 ti(e){var t={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&(A2(r)||M2(r)||M_(r))&&(t[r]=e[r]);return t}var x3=["children","width","height","viewBox","className","style","title","desc"];function Dp(){return Dp=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},Dp.apply(null,arguments)}function E3(e,t){if(e==null)return{};var r,i,o=A3(e,t);if(Object.getOwnPropertySymbols){var f=Object.getOwnPropertySymbols(e);for(i=0;i<f.length;i++)r=f[i],t.indexOf(r)===-1&&{}.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}function A3(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 L2=N.forwardRef((e,t)=>{var{children:r,width:i,height:o,viewBox:f,className:g,style:a,title:c,desc:h}=e,v=E3(e,x3),u=f||{width:i,height:o,x:0,y:0},m=vt("recharts-surface",g);return N.createElement("svg",Dp({},ti(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,h),r)}),M3=["children","className"];function Rp(){return Rp=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},Rp.apply(null,arguments)}function L3(e,t){if(e==null)return{};var r,i,o=O3(e,t);if(Object.getOwnPropertySymbols){var f=Object.getOwnPropertySymbols(e);for(i=0;i<f.length;i++)r=f[i],t.indexOf(r)===-1&&{}.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}function O3(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=L3(e,M3),f=vt("recharts-layer",i);return N.createElement("g",Rp({className:f},ti(o),{ref:t}),r)}),O2=a2(),T3=N.createContext(null);function lt(e){return function(){return e}}const T2=Math.cos,qu=Math.sin,pi=Math.sqrt,Wu=Math.PI,Nh=2*Wu,kp=Math.PI,Pp=2*kp,xs=1e-6,D3=Pp-xs;function D2(e){this._+=e[0];for(let t=1,r=e.length;t<r;++t)this._+=arguments[t]+e[t]}function R3(e){let t=Math.floor(e);if(!(t>=0))throw new Error(`invalid digits: ${e}`);if(t>15)return D2;const r=10**t;return function(i){this._+=i[0];for(let o=1,f=i.length;o<f;++o)this._+=Math.round(arguments[o]*r)/r+i[o]}}class k3{constructor(t){this._x0=this._y0=this._x1=this._y1=null,this._="",this._append=t==null?D2:R3(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,f,g){this._append`C${+t},${+r},${+i},${+o},${this._x1=+f},${this._y1=+g}`}arcTo(t,r,i,o,f){if(t=+t,r=+r,i=+i,o=+o,f=+f,f<0)throw new Error(`negative radius: ${f}`);let g=this._x1,a=this._y1,c=i-t,h=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-h*v)>xs)||!f)this._append`L${this._x1=t},${this._y1=r}`;else{let w=i-g,C=o-a,_=c*c+h*h,d=w*w+C*C,y=Math.sqrt(_),b=Math.sqrt(m),S=f*Math.tan((kp-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${f},${f},0,0,${+(u*w>v*C)},${this._x1=t+L*c},${this._y1=r+L*h}`}}arc(t,r,i,o,f,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),h=t+a,v=r+c,u=1^g,m=g?o-f:f-o;this._x1===null?this._append`M${h},${v}`:(Math.abs(this._x1-h)>xs||Math.abs(this._y1-v)>xs)&&this._append`L${h},${v}`,i&&(m<0&&(m=m%Pp+Pp),m>D3?this._append`A${i},${i},0,1,${u},${t-a},${r-c}A${i},${i},0,1,${u},${this._x1=h},${this._y1=v}`:m>xs&&this._append`A${i},${i},0,${+(m>=kp)},${u},${this._x1=t+i*Math.cos(f)},${this._y1=r+i*Math.sin(f)}`)}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 O_(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 k3(t)}function T_(e){return typeof e=="object"&&"length"in e?e:Array.from(e)}function R2(e){this._context=e}R2.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 zh(e){return new R2(e)}function k2(e){return e[0]}function P2(e){return e[1]}function B2(e,t){var r=lt(!0),i=null,o=zh,f=null,g=O_(a);e=typeof e=="function"?e:e===void 0?k2:lt(e),t=typeof t=="function"?t:t===void 0?P2:lt(t);function a(c){var h,v=(c=T_(c)).length,u,m=!1,w;for(i==null&&(f=o(w=g())),h=0;h<=v;++h)!(h<v&&r(u=c[h],h,c))===m&&((m=!m)?f.lineStart():f.lineEnd()),m&&f.point(+e(u,h,c),+t(u,h,c));if(w)return f=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&&(f=o(i)),a):o},a.context=function(c){return arguments.length?(c==null?i=f=null:f=o(i=c),a):i},a}function yu(e,t,r){var i=null,o=lt(!0),f=null,g=zh,a=null,c=O_(h);e=typeof e=="function"?e:e===void 0?k2:lt(+e),t=typeof t=="function"?t:lt(t===void 0?0:+t),r=typeof r=="function"?r:r===void 0?P2:lt(+r);function h(u){var m,w,C,_=(u=T_(u)).length,d,y=!1,b,S=new Array(_),E=new Array(_);for(f==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 B2().defined(o).curve(g).context(f)}return h.x=function(u){return arguments.length?(e=typeof u=="function"?u:lt(+u),i=null,h):e},h.x0=function(u){return arguments.length?(e=typeof u=="function"?u:lt(+u),h):e},h.x1=function(u){return arguments.length?(i=u==null?null:typeof u=="function"?u:lt(+u),h):i},h.y=function(u){return arguments.length?(t=typeof u=="function"?u:lt(+u),r=null,h):t},h.y0=function(u){return arguments.length?(t=typeof u=="function"?u:lt(+u),h):t},h.y1=function(u){return arguments.length?(r=u==null?null:typeof u=="function"?u:lt(+u),h):r},h.lineX0=h.lineY0=function(){return v().x(e).y(t)},h.lineY1=function(){return v().x(e).y(r)},h.lineX1=function(){return v().x(i).y(t)},h.defined=function(u){return arguments.length?(o=typeof u=="function"?u:lt(!!u),h):o},h.curve=function(u){return arguments.length?(g=u,f!=null&&(a=g(f)),h):g},h.context=function(u){return arguments.length?(u==null?f=a=null:a=g(f=u),h):f},h}class j2{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 P3(e){return new j2(e,!0)}function B3(e){return new j2(e,!1)}const D_={draw(e,t){const r=pi(t/Wu);e.moveTo(r,0),e.arc(0,0,r,0,Nh)}},j3={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()}},I2=pi(1/3),I3=I2*2,N3={draw(e,t){const r=pi(t/I3),i=r*I2;e.moveTo(0,-r),e.lineTo(i,0),e.lineTo(0,r),e.lineTo(-i,0),e.closePath()}},z3={draw(e,t){const r=pi(t),i=-r/2;e.rect(i,i,r,r)}},H3=.8908130915292852,N2=qu(Wu/10)/qu(7*Wu/10),$3=qu(Nh/10)*N2,U3=-T2(Nh/10)*N2,F3={draw(e,t){const r=pi(t*H3),i=$3*r,o=U3*r;e.moveTo(0,-r),e.lineTo(i,o);for(let f=1;f<5;++f){const g=Nh*f/5,a=T2(g),c=qu(g);e.lineTo(c*r,-a*r),e.lineTo(a*i-c*o,c*i+a*o)}e.closePath()}},Jv=pi(3),q3={draw(e,t){const r=-pi(t/(Jv*3));e.moveTo(0,r*2),e.lineTo(-Jv*r,-r),e.lineTo(Jv*r,-r),e.closePath()}},Xr=-.5,Zr=pi(3)/2,Bp=1/pi(12),W3=(Bp/2+1)*3,G3={draw(e,t){const r=pi(t/W3),i=r/2,o=r*Bp,f=i,g=r*Bp+r,a=-f,c=g;e.moveTo(i,o),e.lineTo(f,g),e.lineTo(a,c),e.lineTo(Xr*i-Zr*o,Zr*i+Xr*o),e.lineTo(Xr*f-Zr*g,Zr*f+Xr*g),e.lineTo(Xr*a-Zr*c,Zr*a+Xr*c),e.lineTo(Xr*i+Zr*o,Xr*o-Zr*i),e.lineTo(Xr*f+Zr*g,Xr*g-Zr*f),e.lineTo(Xr*a+Zr*c,Xr*c-Zr*a),e.closePath()}};function K3(e,t){let r=null,i=O_(o);e=typeof e=="function"?e:lt(e||D_),t=typeof t=="function"?t:lt(t===void 0?64:+t);function o(){let f;if(r||(r=f=i()),e.apply(this,arguments).draw(r,+t.apply(this,arguments)),f)return r=null,f+""||null}return o.type=function(f){return arguments.length?(e=typeof f=="function"?f:lt(f),o):e},o.size=function(f){return arguments.length?(t=typeof f=="function"?f:lt(+f),o):t},o.context=function(f){return arguments.length?(r=f??null,o):r},o}function Gu(){}function Ku(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:Ku(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:Ku(this,e,t);break}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=t}};function Y3(e){return new z2(e)}function H2(e){this._context=e}H2.prototype={areaStart:Gu,areaEnd:Gu,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:Ku(this,e,t);break}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=t}};function V3(e){return new H2(e)}function $2(e){this._context=e}$2.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:Ku(this,e,t);break}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=t}};function X3(e){return new $2(e)}function U2(e){this._context=e}U2.prototype={areaStart:Gu,areaEnd:Gu,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 Z3(e){return new U2(e)}function pS(e){return e<0?-1:1}function _S(e,t,r){var i=e._x1-e._x0,o=t-e._x1,f=(e._y1-e._y0)/(i||o<0&&-0),g=(r-e._y1)/(o||i<0&&-0),a=(f*o+g*i)/(i+o);return(pS(f)+pS(g))*Math.min(Math.abs(f),Math.abs(g),.5*Math.abs(a))||0}function mS(e,t){var r=e._x1-e._x0;return r?(3*(e._y1-e._y0)/r-t)/2:t}function eg(e,t,r){var i=e._x0,o=e._y0,f=e._x1,g=e._y1,a=(f-i)/3;e._context.bezierCurveTo(i+a,o+a*t,f-a,g-a*r,f,g)}function Yu(e){this._context=e}Yu.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:eg(this,this._t0,mS(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,eg(this,mS(this,r=_S(this,e,t)),r);break;default:eg(this,this._t0,r=_S(this,e,t));break}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=t,this._t0=r}}};function F2(e){this._context=new q2(e)}(F2.prototype=Object.create(Yu.prototype)).point=function(e,t){Yu.prototype.point.call(this,t,e)};function q2(e){this._context=e}q2.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,f){this._context.bezierCurveTo(t,e,i,r,f,o)}};function Q3(e){return new Yu(e)}function J3(e){return new F2(e)}function W2(e){this._context=e}W2.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=yS(e),o=yS(t),f=0,g=1;g<r;++f,++g)this._context.bezierCurveTo(i[0][f],o[0][f],i[1][f],o[1][f],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 yS(e){var t,r=e.length-1,i,o=new Array(r),f=new Array(r),g=new Array(r);for(o[0]=0,f[0]=2,g[0]=e[0]+2*e[1],t=1;t<r-1;++t)o[t]=1,f[t]=4,g[t]=4*e[t]+2*e[t+1];for(o[r-1]=2,f[r-1]=7,g[r-1]=8*e[r-1]+e[r],t=1;t<r;++t)i=o[t]/f[t-1],f[t]-=i,g[t]-=i*g[t-1];for(o[r-1]=g[r-1]/f[r-1],t=r-2;t>=0;--t)o[t]=(g[t]-o[t+1])/f[t];for(f[r-1]=(e[r]+o[r-1])/2,t=0;t<r-1;++t)f[t]=2*e[t+1]-o[t+1];return[o,f]}function ek(e){return new W2(e)}function Hh(e,t){this._context=e,this._t=t}Hh.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 tk(e){return new Hh(e,.5)}function rk(e){return new Hh(e,0)}function ik(e){return new Hh(e,1)}function Bs(e,t){if((g=e.length)>1)for(var r=1,i,o,f=e[t[0]],g,a=f.length;r<g;++r)for(o=f,f=e[t[r]],i=0;i<a;++i)f[i][1]+=f[i][0]=isNaN(o[i][1])?o[i][0]:o[i][1]}function jp(e){for(var t=e.length,r=new Array(t);--t>=0;)r[t]=t;return r}function nk(e,t){return e[t]}function sk(e){const t=[];return t.key=e,t}function ak(){var e=lt([]),t=jp,r=Bs,i=nk;function o(f){var g=Array.from(e.apply(this,arguments),sk),a,c=g.length,h=-1,v;for(const u of f)for(a=0,++h;a<c;++a)(g[a][h]=[0,+i(u,g[a].key,h,f)]).data=u;for(a=0,v=T_(t(g));a<c;++a)g[v[a]].index=a;return r(g,v),g}return o.keys=function(f){return arguments.length?(e=typeof f=="function"?f:lt(Array.from(f)),o):e},o.value=function(f){return arguments.length?(i=typeof f=="function"?f:lt(+f),o):i},o.order=function(f){return arguments.length?(t=f==null?jp:typeof f=="function"?f:lt(Array.from(f)),o):t},o.offset=function(f){return arguments.length?(r=f??Bs,o):r},o}function ok(e,t){if((i=e.length)>0){for(var r,i,o=0,f=e[0].length,g;o<f;++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 lk(e,t){if((o=e.length)>0){for(var r=0,i=e[t[0]],o,f=i.length;r<f;++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 ck(e,t){if(!(!((g=e.length)>0)||!((f=(o=e[t[0]]).length)>0))){for(var r=0,i=1,o,f,g;i<f;++i){for(var a=0,c=0,h=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,h+=w*u}o[i-1][1]+=o[i-1][0]=r,c&&(r-=h/c)}o[i-1][1]+=o[i-1][0]=r,Bs(e,t)}}var tg={},rg={},bS;function uk(){return bS||(bS=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(r){return r==="__proto__"}e.isUnsafeProperty=t})(rg)),rg}var ig={},SS;function G2(){return SS||(SS=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})(ig)),ig}var ng={},wS;function R_(){return wS||(wS=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})(ng)),ng}var sg={},ag={},CS;function hk(){return CS||(CS=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})(ag)),ag}var xS;function k_(){return xS||(xS=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=hk(),r=R_();function i(o){if(Array.isArray(o))return o.map(r.toKey);if(typeof o=="symbol")return[o];o=t.toString(o);const f=[],g=o.length;if(g===0)return f;let a=0,c="",h="",v=!1;for(o.charCodeAt(0)===46&&(f.push(""),a++);a<g;){const u=o[a];h?u==="\\"&&a+1<g?(a++,c+=o[a]):u===h?h="":c+=u:v?u==='"'||u==="'"?h=u:u==="]"?(v=!1,f.push(c),c=""):c+=u:u==="["?(v=!0,c&&(f.push(c),c="")):u==="."?c&&(f.push(c),c=""):c+=u,a++}return c&&f.push(c),f}e.toPath=i})(sg)),sg}var ES;function P_(){return ES||(ES=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=uk(),r=G2(),i=R_(),o=k_();function f(a,c,h){if(a==null)return h;switch(typeof c){case"string":{if(t.isUnsafeProperty(c))return h;const v=a[c];return v===void 0?r.isDeepKey(c)?f(a,o.toPath(c),h):h:v}case"number":case"symbol":{typeof c=="number"&&(c=i.toKey(c));const v=a[c];return v===void 0?h:v}default:{if(Array.isArray(c))return g(a,c,h);if(Object.is(c==null?void 0:c.valueOf(),-0)?c="-0":c=String(c),t.isUnsafeProperty(c))return h;const v=a[c];return v===void 0?h:v}}}function g(a,c,h){if(c.length===0)return h;let v=a;for(let u=0;u<c.length;u++){if(v==null||t.isUnsafeProperty(c[u]))return h;v=v[c[u]]}return v===void 0?h:v}e.get=f})(tg)),tg}var og,AS;function fk(){return AS||(AS=1,og=P_().get),og}var dk=fk();const Ga=Qn(dk);var vk=4;function Gn(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:vk,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,f,g)=>{var a=r[g-1];return typeof a=="string"?o+a+f:a!==void 0?o+Gn(a)+f:o+f},"")}var Rr=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,Oe=e=>(typeof e=="number"||e instanceof Number)&&!ki(e),Pi=e=>Oe(e)||typeof e=="string",gk=0,Ml=e=>{var t=++gk;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(!Oe(t)&&typeof t!="string")return i;var f;if(js(t)){if(r==null)return i;var g=t.indexOf("%");f=r*parseFloat(t.slice(0,g))/100}else f=+t;return ki(f)&&(f=i),o&&r!=null&&f>r&&(f=r),f},K2=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 Oe(e)&&Oe(t)?Gn(e+r*(t-e)):t}function pk(e,t,r){if(!(!e||!e.length))return e.find(i=>i&&(typeof t=="function"?t(i):Ga(i,t))===r)}var It=e=>e===null||typeof e>"u",Ul=e=>It(e)?e:"".concat(e.charAt(0).toUpperCase()).concat(e.slice(1));function Mi(e){return e!=null}function no(){}var _k=["type","size","sizeType"];function Ip(){return Ip=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},Ip.apply(null,arguments)}function MS(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 LS(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?MS(Object(r),!0).forEach(function(i){mk(e,i,r[i])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):MS(Object(r)).forEach(function(i){Object.defineProperty(e,i,Object.getOwnPropertyDescriptor(r,i))})}return e}function mk(e,t,r){return(t=yk(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function yk(e){var t=bk(e,"string");return typeof t=="symbol"?t:t+""}function bk(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 Sk(e,t){if(e==null)return{};var r,i,o=wk(e,t);if(Object.getOwnPropertySymbols){var f=Object.getOwnPropertySymbols(e);for(i=0;i<f.length;i++)r=f[i],t.indexOf(r)===-1&&{}.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}function wk(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 Y2={symbolCircle:D_,symbolCross:j3,symbolDiamond:N3,symbolSquare:z3,symbolStar:F3,symbolTriangle:q3,symbolWye:G3},Ck=Math.PI/180,xk=e=>{var t="symbol".concat(Ul(e));return Y2[t]||D_},Ek=(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*Ck;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}},Ak=(e,t)=>{Y2["symbol".concat(Ul(e))]=t},V2=e=>{var{type:t="circle",size:r=64,sizeType:i="area"}=e,o=Sk(e,_k),f=LS(LS({},o),{},{type:t,size:r,sizeType:i}),g="circle";typeof t=="string"&&(g=t);var a=()=>{var m=xk(g),w=K3().type(m).size(Ek(r,i,g)),C=w();if(C!==null)return C},{className:c,cx:h,cy:v}=f,u=ti(f);return Oe(h)&&Oe(v)&&Oe(r)?N.createElement("path",Ip({},u,{className:vt("recharts-symbols",c),transform:"translate(".concat(h,", ").concat(v,")"),d:a()})):null};V2.registerSymbol=Ak;var X2=e=>"radius"in e&&"startAngle"in e&&"endAngle"in e,Mk=(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=>{M_(o)&&typeof r[o]=="function"&&(i[o]=(f=>r[o](r,f)))}),i},Lk=(e,t,r)=>i=>(e(t,r,i),null),B_=(e,t,r)=>{if(e===null||typeof e!="object"&&typeof e!="function")return null;var i=null;return Object.keys(e).forEach(o=>{var f=e[o];M_(o)&&typeof f=="function"&&(i||(i={}),i[o]=Lk(f,t,r))}),i};function OS(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 Ok(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?OS(Object(r),!0).forEach(function(i){Tk(e,i,r[i])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):OS(Object(r)).forEach(function(i){Object.defineProperty(e,i,Object.getOwnPropertyDescriptor(r,i))})}return e}function Tk(e,t,r){return(t=Dk(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function Dk(e){var t=Rk(e,"string");return typeof t=="symbol"?t:t+""}function Rk(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=Ok({},e),i=t,o=Object.keys(t),f=o.reduce((g,a)=>(g[a]===void 0&&i[a]!==void 0&&(g[a]=i[a]),g),r);return f}var lg={},cg={},TS;function kk(){return TS||(TS=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(r,i){const o=new Map;for(let f=0;f<r.length;f++){const g=r[f],a=i(g,f,r);o.has(a)||o.set(a,g)}return Array.from(o.values())}e.uniqBy=t})(cg)),cg}var ug={},DS;function Pk(){return DS||(DS=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})(ug)),ug}var hg={},RS;function Z2(){return RS||(RS=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(r){return r}e.identity=t})(hg)),hg}var fg={},dg={},vg={},kS;function Bk(){return kS||(kS=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(r){return Number.isSafeInteger(r)&&r>=0}e.isLength=t})(vg)),vg}var PS;function Q2(){return PS||(PS=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=Bk();function r(i){return i!=null&&typeof i!="function"&&t.isLength(i.length)}e.isArrayLike=r})(dg)),dg}var gg={},BS;function jk(){return BS||(BS=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(r){return typeof r=="object"&&r!==null}e.isObjectLike=t})(gg)),gg}var jS;function Ik(){return jS||(jS=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=Q2(),r=jk();function i(o){return r.isObjectLike(o)&&t.isArrayLike(o)}e.isArrayLikeObject=i})(fg)),fg}var pg={},_g={},IS;function Nk(){return IS||(IS=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=P_();function r(i){return function(o){return t.get(o,i)}}e.property=r})(_g)),_g}var mg={},yg={},bg={},Sg={},NS;function J2(){return NS||(NS=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})(Sg)),Sg}var wg={},zS;function eE(){return zS||(zS=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})(wg)),wg}var Cg={},HS;function tE(){return HS||(HS=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})(Cg)),Cg}var $S;function zk(){return $S||($S=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=J2(),r=eE(),i=tE();function o(v,u,m){return typeof m!="function"?o(v,u,()=>{}):f(v,u,function w(C,_,d,y,b,S){const E=m(C,_,d,y,b,S);return E!==void 0?!!E:f(C,_,w,S)},new Map)}function f(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?f(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 h(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 h(v,u,m,w){return u.size===0?!0:v instanceof Set?c([...v],[...u],m,w):!1}e.isMatchWith=o,e.isSetMatch=h})(bg)),bg}var US;function rE(){return US||(US=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=zk();function r(i,o){return t.isMatchWith(i,o,()=>{})}e.isMatch=r})(yg)),yg}var xg={},Eg={},Ag={},FS;function Hk(){return FS||(FS=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})(Ag)),Ag}var Mg={},qS;function j_(){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})(Mg)),Mg}var Lg={},WS;function iE(){return WS||(WS=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t="[object RegExp]",r="[object String]",i="[object Number]",o="[object Boolean]",f="[object Arguments]",g="[object Symbol]",a="[object Date]",c="[object Map]",h="[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]",T="[object Int32Array]",M="[object BigInt64Array]",D="[object Float32Array]",k="[object Float64Array]";e.argumentsTag=f,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=T,e.int8ArrayTag=L,e.mapTag=c,e.numberTag=i,e.objectTag=w,e.regexpTag=t,e.setTag=h,e.stringTag=r,e.symbolTag=g,e.uint16ArrayTag=b,e.uint32ArrayTag=S,e.uint8ArrayTag=d,e.uint8ClampedArrayTag=y})(Lg)),Lg}var Og={},GS;function $k(){return GS||(GS=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(r){return ArrayBuffer.isView(r)&&!(r instanceof DataView)}e.isTypedArray=t})(Og)),Og}var KS;function nE(){return KS||(KS=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=Hk(),r=j_(),i=iE(),o=eE(),f=$k();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(f.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"&&h(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 h(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})(Eg)),Eg}var YS;function Uk(){return YS||(YS=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=nE();function r(i){return t.cloneDeepWithImpl(i,void 0,i,new Map,void 0)}e.cloneDeep=r})(xg)),xg}var VS;function Fk(){return VS||(VS=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=rE(),r=Uk();function i(o){return o=r.cloneDeep(o),f=>t.isMatch(f,o)}e.matches=i})(mg)),mg}var Tg={},Dg={},Rg={},XS;function qk(){return XS||(XS=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=nE(),r=j_(),i=iE();function o(f,g){return t.cloneDeepWith(f,(a,c,h,v)=>{const u=g==null?void 0:g(a,c,h,v);if(u!==void 0)return u;if(typeof f=="object"){if(r.getTag(f)===i.objectTag&&typeof f.constructor!="function"){const m={};return v.set(f,m),t.copyProperties(m,f,h,v),m}switch(Object.prototype.toString.call(f)){case i.numberTag:case i.stringTag:case i.booleanTag:{const m=new f.constructor(f==null?void 0:f.valueOf());return t.copyProperties(m,f),m}case i.argumentsTag:{const m={};return t.copyProperties(m,f),m.length=f.length,m[Symbol.iterator]=f[Symbol.iterator],m}default:return}}})}e.cloneDeepWith=o})(Rg)),Rg}var ZS;function Wk(){return ZS||(ZS=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=qk();function r(i){return t.cloneDeepWith(i)}e.cloneDeep=r})(Dg)),Dg}var kg={},Pg={},QS;function sE(){return QS||(QS=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})(Pg)),Pg}var Bg={},JS;function Gk(){return JS||(JS=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=j_();function r(i){return i!==null&&typeof i=="object"&&t.getTag(i)==="[object Arguments]"}e.isArguments=r})(Bg)),Bg}var ew;function Kk(){return ew||(ew=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=G2(),r=sE(),i=Gk(),o=k_();function f(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 h=g;for(let v=0;v<c.length;v++){const u=c[v];if((h==null||!Object.hasOwn(h,u))&&!((Array.isArray(h)||i.isArguments(h))&&r.isIndex(u)&&u<h.length))return!1;h=h[u]}return!0}e.has=f})(kg)),kg}var tw;function Yk(){return tw||(tw=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=rE(),r=R_(),i=Wk(),o=P_(),f=Kk();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(h){const v=o.get(h,a);return v===void 0?f.has(h,a):c===void 0?v===void 0:t.isMatch(v,c)}}e.matchesProperty=g})(Tg)),Tg}var rw;function Vk(){return rw||(rw=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=Z2(),r=Nk(),i=Fk(),o=Yk();function f(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=f})(pg)),pg}var iw;function Xk(){return iw||(iw=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=kk(),r=Pk(),i=Z2(),o=Ik(),f=Vk();function g(a,c=i.identity){return o.isArrayLikeObject(a)?t.uniqBy(Array.from(a),r.ary(f.iteratee(c),1)):[]}e.uniqBy=g})(lg)),lg}var jg,nw;function Zk(){return nw||(nw=1,jg=Xk().uniqBy),jg}var Qk=Zk();const sw=Qn(Qk);function Jk(e,t,r){return t===!0?sw(e,r):typeof t=="function"?sw(e,t):e}var Ig={exports:{}},Ng={},zg={exports:{}},Hg={};/**
131
131
  * @license React
132
132
  * use-sync-external-store-shim.production.js
133
133
  *
@@ -192,4 +192,4 @@ void main() {
192
192
  * This source code is licensed under the MIT license found in the
193
193
  * LICENSE file in the root directory of this source tree.
194
194
  */var y5;function iU(){if(y5)return it;y5=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"),f=Symbol.for("react.consumer"),g=Symbol.for("react.context"),a=Symbol.for("react.forward_ref"),c=Symbol.for("react.suspense"),h=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 h:case m:return _;default:switch(_=_&&_.$$typeof,_){case g:case a:case u:case v:return _;case f:return _;default:return d}}case t:return d}}}return it.ContextConsumer=f,it.ContextProvider=g,it.Element=e,it.ForwardRef=a,it.Fragment=r,it.Lazy=u,it.Memo=v,it.Portal=t,it.Profiler=o,it.StrictMode=i,it.Suspense=c,it.SuspenseList=h,it.isContextConsumer=function(_){return C(_)===f},it.isContextProvider=function(_){return C(_)===g},it.isElement=function(_){return typeof _=="object"&&_!==null&&_.$$typeof===e},it.isForwardRef=function(_){return C(_)===a},it.isFragment=function(_){return C(_)===r},it.isLazy=function(_){return C(_)===u},it.isMemo=function(_){return C(_)===v},it.isPortal=function(_){return C(_)===t},it.isProfiler=function(_){return C(_)===o},it.isStrictMode=function(_){return C(_)===i},it.isSuspense=function(_){return C(_)===c},it.isSuspenseList=function(_){return C(_)===h},it.isValidElementType=function(_){return typeof _=="string"||typeof _=="function"||_===r||_===o||_===i||_===c||_===h||typeof _=="object"&&_!==null&&(_.$$typeof===u||_.$$typeof===v||_.$$typeof===g||_.$$typeof===f||_.$$typeof===a||_.$$typeof===w||_.getModuleId!==void 0)},it.typeOf=C,it}var b5;function nU(){return b5||(b5=1,xp.exports=iU()),xp.exports}var sU=nU(),S5=e=>typeof e=="string"?e:e?e.displayName||e.name||"Component":"",w5=null,Ep=null,UL=e=>{if(e===w5&&Array.isArray(Ep))return Ep;var t=[];return N.Children.forEach(e,r=>{It(r)||(sU.isFragment(r)?t=t.concat(UL(r.props.children)):t.push(r))}),Ep=t,w5=e,t};function aU(e,t){var r=[],i=[];return Array.isArray(t)?i=t.map(o=>S5(o)):i=[S5(t)],UL(e).forEach(o=>{var f=Ga(o,"type.displayName")||Ga(o,"type.name");f&&i.indexOf(f)!==-1&&r.push(o)}),r}var Ap={},C5;function oU(){return C5||(C5=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 f=r[Symbol.toStringTag];return f==null||!((o=Object.getOwnPropertyDescriptor(r,Symbol.toStringTag))!=null&&o.writable)?!1:r.toString()===`[object ${f}]`}let i=r;for(;Object.getPrototypeOf(i)!==null;)i=Object.getPrototypeOf(i);return Object.getPrototypeOf(r)===i}e.isPlainObject=t})(Ap)),Ap}var Mp,x5;function lU(){return x5||(x5=1,Mp=oU().isPlainObject),Mp}var cU=lU();const uU=Qn(cU);var E5,A5,M5,L5,O5;function T5(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 D5(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?T5(Object(r),!0).forEach(function(i){hU(e,i,r[i])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):T5(Object(r)).forEach(function(i){Object.defineProperty(e,i,Object.getOwnPropertyDescriptor(r,i))})}return e}function hU(e,t,r){return(t=fU(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function fU(e){var t=dU(e,"string");return typeof t=="symbol"?t:t+""}function dU(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 Dh(){return Dh=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},Dh.apply(null,arguments)}function ml(e,t){return t||(t=e.slice(0)),Object.freeze(Object.defineProperties(e,{raw:{value:Object.freeze(t)}}))}var R5=(e,t,r,i,o)=>{var f=r-i,g;return g=xt(E5||(E5=ml(["M ",",",""])),e,t),g+=xt(A5||(A5=ml(["L ",",",""])),e+r,t),g+=xt(M5||(M5=ml(["L ",",",""])),e+r-f/2,t+o),g+=xt(L5||(L5=ml(["L ",",",""])),e+r-f/2-i,t+o),g+=xt(O5||(O5=ml(["L ",","," Z"])),e,t),g},vU={x:0,y:0,upperWidth:0,lowerWidth:0,height:0,isUpdateAnimationActive:!1,animationBegin:0,animationDuration:1500,animationEasing:"ease"},gU=e=>{var t=ni(e,vU),{x:r,y:i,upperWidth:o,lowerWidth:f,height:g,className:a}=t,{animationEasing:c,animationDuration:h,animationBegin:v,isUpdateAnimationActive:u}=t,m=N.useRef(null),[w,C]=N.useState(-1),_=N.useRef(o),d=N.useRef(f),y=N.useRef(g),b=N.useRef(r),S=N.useRef(i),E=X_(e,"trapezoid-");if(N.useEffect(()=>{if(m.current&&m.current.getTotalLength)try{var H=m.current.getTotalLength();H&&C(H)}catch{}},[]),r!==+r||i!==+i||o!==+o||f!==+f||g!==+g||o===0&&f===0||g===0)return null;var L=vt("recharts-trapezoid",a);if(!u)return N.createElement("g",null,N.createElement("path",Dh({},ti(t),{className:L,d:R5(r,i,o,f,g)})));var x=_.current,T=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=iA(["strokeDasharray"],h,c);return N.createElement(V_,{animationId:E,key:E,canBegin:w>0,duration:h,easing:c,isActive:u,begin:v},H=>{var X=nr(x,o,H),q=nr(T,f,H),K=nr(M,g,H),Y=nr(D,r,H),j=nr(k,i,H);m.current&&(_.current=X,d.current=q,y.current=K,b.current=Y,S.current=j);var $=H>0?{transition:B,strokeDasharray:R}:{strokeDasharray:P};return N.createElement("path",Dh({},ti(t),{className:L,d:R5(Y,j,X,q,K),ref:m,style:D5(D5({},$),t.style)}))})},pU=["option","shapeType","activeClassName","inActiveClassName"];function _U(e,t){if(e==null)return{};var r,i,o=mU(e,t);if(Object.getOwnPropertySymbols){var f=Object.getOwnPropertySymbols(e);for(i=0;i<f.length;i++)r=f[i],t.indexOf(r)===-1&&{}.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}function mU(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 k5(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 Rh(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?k5(Object(r),!0).forEach(function(i){yU(e,i,r[i])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):k5(Object(r)).forEach(function(i){Object.defineProperty(e,i,Object.getOwnPropertyDescriptor(r,i))})}return e}function yU(e,t,r){return(t=bU(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function bU(e){var t=SU(e,"string");return typeof t=="symbol"?t:t+""}function SU(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 wU(e,t){return Rh(Rh({},t),e)}function CU(e,t){return e==="symbols"}function P5(e){var{shapeType:t,elementProps:r}=e;switch(t){case"rectangle":return N.createElement(oA,r);case"trapezoid":return N.createElement(gU,r);case"sector":return N.createElement(uA,r);case"symbols":if(CU(t))return N.createElement(V2,r);break;case"curve":return N.createElement(rA,r);default:return null}}function xU(e){return N.isValidElement(e)?e.props:e}function EU(e){var{option:t,shapeType:r,activeClassName:i="recharts-active-shape",inActiveClassName:o="recharts-shape"}=e,f=_U(e,pU),g;if(N.isValidElement(t))g=N.cloneElement(t,Rh(Rh({},f),xU(t)));else if(typeof t=="function")g=t(f,f.index);else if(uU(t)&&typeof t!="boolean"){var a=wU(t,f);g=N.createElement(P5,{shapeType:r,elementProps:a})}else{var c=f;g=N.createElement(P5,{shapeType:r,elementProps:c})}return f.isActive?N.createElement(Ri,{className:i},g):N.createElement(Ri,{className:o},g)}var FL=(e,t,r)=>{var i=yt();return(o,f)=>g=>{e==null||e(o,f,g),i(rL({activeIndex:String(f),activeDataKey:t,activeCoordinate:o.tooltipPosition,activeGraphicalItemId:r}))}},qL=e=>{var t=yt();return(r,i)=>o=>{e==null||e(r,i,o),t(N7())}},WL=(e,t,r)=>{var i=yt();return(o,f)=>g=>{e==null||e(o,f,g),i(z7({activeIndex:String(f),activeDataKey:t,activeCoordinate:o.tooltipPosition,activeGraphicalItemId:r}))}};function AU(e){var{tooltipEntrySettings:t}=e,r=yt(),i=Nr(),o=N.useRef(null);return N.useLayoutEffect(()=>{i||(o.current===null?r(P7(t)):o.current!==t&&r(B7({prev:o.current,next:t})),o.current=t)},[t,r,i]),N.useLayoutEffect(()=>()=>{o.current&&(r(j7(o.current)),o.current=null)},[r]),null}function MU(e){var{legendPayload:t}=e,r=yt(),i=Nr(),o=N.useRef(null);return N.useLayoutEffect(()=>{i||(o.current===null?r(N6(t)):o.current!==t&&r(z6({prev:o.current,next:t})),o.current=t)},[r,i,t]),N.useLayoutEffect(()=>()=>{o.current&&(r(H6(o.current)),o.current=null)},[r]),null}var Lp,LU=()=>{var[e]=N.useState(()=>Ml("uid-"));return e},OU=(Lp=WD.useId)!==null&&Lp!==void 0?Lp:LU;function TU(e,t){var r=OU();return t||(e?"".concat(e,"-").concat(r):r)}var DU=N.createContext(void 0),RU=e=>{var{id:t,type:r,children:i}=e,o=TU("recharts-".concat(r),t);return N.createElement(DU.Provider,{value:o},i(o))},kU={cartesianItems:[],polarItems:[]},GL=lr({name:"graphicalItems",initialState:kU,reducers:{addCartesianGraphicalItem:{reducer(e,t){e.cartesianItems.push(t.payload)},prepare:ft()},replaceCartesianGraphicalItem:{reducer(e,t){var{prev:r,next:i}=t.payload,o=Jr(e).cartesianItems.indexOf(r);o>-1&&(e.cartesianItems[o]=i)},prepare:ft()},removeCartesianGraphicalItem:{reducer(e,t){var r=Jr(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=Jr(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=Jr(e).polarItems.indexOf(r);o>-1&&(e.polarItems[o]=i)},prepare:ft()}}}),{addCartesianGraphicalItem:PU,replaceCartesianGraphicalItem:BU,removeCartesianGraphicalItem:jU,addPolarGraphicalItem:UW,removePolarGraphicalItem:FW,replacePolarGraphicalItem:qW}=GL.actions,IU=GL.reducer,NU=e=>{var t=yt(),r=N.useRef(null);return N.useLayoutEffect(()=>{r.current===null?t(PU(e)):r.current!==e&&t(BU({prev:r.current,next:e})),r.current=e},[t,e]),N.useLayoutEffect(()=>()=>{r.current&&(t(jU(r.current)),r.current=null)},[t]),null},zU=N.memo(NU);function B5(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 j5(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?B5(Object(r),!0).forEach(function(i){HU(e,i,r[i])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):B5(Object(r)).forEach(function(i){Object.defineProperty(e,i,Object.getOwnPropertyDescriptor(r,i))})}return e}function HU(e,t,r){return(t=$U(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function $U(e){var t=UU(e,"string");return typeof t=="symbol"?t:t+""}function UU(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 KL=0,FU={xAxis:{},yAxis:{},zAxis:{}},YL=lr({name:"cartesianAxis",initialState:FU,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 f,g=o.widthHistory||[];if(g.length===3&&g[0]===g[2]&&i===g[1]&&i!==o.width&&Math.abs(i-((f=g[0])!==null&&f!==void 0?f:0))<=1)return;var a=[...g,i].slice(-3);e.yAxis[r]=j5(j5({},o),{},{width:i,widthHistory:a})}}}}),{addXAxis:qU,replaceXAxis:WU,removeXAxis:GU,addYAxis:KU,replaceYAxis:YU,removeYAxis:VU,addZAxis:WW,replaceZAxis:GW,removeZAxis:KW,updateYAxisWidth:XU}=YL.actions,ZU=YL.reducer,QU=oe([Kt],e=>({top:e.top,bottom:e.bottom,left:e.left,right:e.right})),JU=oe([QU,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)}}),VL=()=>Re(JU),I5=(e,t,r)=>{var i=r??e;if(!It(i))return vi(i,t,0)},e9=(e,t,r)=>{var i={},o=e.filter(df),f=e.filter(h=>h.stackId==null),g=o.reduce((h,v)=>{var u=h[v.stackId];return u==null&&(u=[]),u.push(v),h[v.stackId]=u,h},i),a=Object.entries(g).map(h=>{var v,[u,m]=h,w=m.map(_=>_.dataKey),C=I5(t,r,(v=m[0])===null||v===void 0?void 0:v.barSize);return{stackId:u,dataKeys:w,barSize:C}}),c=f.map(h=>{var v=[h.dataKey].filter(m=>m!=null),u=I5(t,r,h.barSize);return{stackId:void 0,dataKeys:v,barSize:u}});return[...a,...c]};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 ku(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){t9(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 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,r,i,o){var f,g=i.length;if(!(g<1)){var a=vi(e,r,0,!0),c,h=[];if(Ze((f=i[0])===null||f===void 0?void 0:f.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},h)}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}}],h)}return c}}var s9=(e,t,r,i,o,f,g)=>{var a=It(g)?t:g,c=n9(r,i,o!==f?o:f,e,a);return o!==f&&c!=null&&(c=c.map(h=>ku(ku({},h),{},{position:ku(ku({},h.position),{},{offset:h.position.offset-o/2})}))),c},a9=(e,t)=>{var r=om(t);if(!(!e||r==null||t==null)){var{stackId:i}=t;if(i!=null){var o=e[i];if(o){var{stackedData:f}=o;if(f)return f.find(g=>g.key===r)}}}},o9=(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 l9(e,t){return e&&typeof e=="object"&&"zIndex"in e&&typeof e.zIndex=="number"&&Ze(e.zIndex)?e.zIndex:t}var c9=e=>{var{chartData:t}=e,r=yt(),i=Nr();return N.useEffect(()=>i?()=>{}:(r(e5(t)),()=>{r(e5(void 0))}),[t,r,i]),null},z5={x:0,y:0,width:0,height:0,padding:{top:0,right:0,bottom:0,left:0}},XL=lr({name:"brush",initialState:z5,reducers:{setBrushSettings(e,t){return t.payload==null?z5:t.payload}}}),{setBrushSettings:YW}=XL.actions,u9=XL.reducer;function h9(e){return(e%180+180)%180}var f9=function(t){var{width:r,height:i}=t,o=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,f=h9(o),g=f*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)},d9={dots:[],areas:[],lines:[]},ZL=lr({name:"referenceElements",initialState:d9,reducers:{addDot:(e,t)=>{e.dots.push(t.payload)},removeDot:(e,t)=>{var r=Jr(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=Jr(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=Jr(e).lines.findIndex(i=>i===t.payload);r!==-1&&e.lines.splice(r,1)}}}),{addDot:VW,removeDot:XW,addArea:ZW,removeArea:QW,addLine:JW,removeLine:eG}=ZL.actions,v9=ZL.reducer,g9=N.createContext(void 0),p9=e=>{var{children:t}=e,[r]=N.useState("".concat(Ml("recharts"),"-clip")),i=VL();if(i==null)return null;var{x:o,y:f,width:g,height:a}=i;return N.createElement(g9.Provider,{value:r},N.createElement("defs",null,N.createElement("clipPath",{id:r},N.createElement("rect",{x:o,y:f,height:a,width:g}))),t)};function QL(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 _9(e,t,r){var i={width:e.width+t.width,height:e.height+t.height};return f9(i,r)}function m9(e,t,r){var i=r==="width",{x:o,y:f,width:g,height:a}=e;return t===1?{start:i?o:f,end:i?o+g:f+a}:{start:i?o+g:f+a,end:i?o:f}}function $l(e,t,r,i,o){if(e*t<e*i||e*t>e*o)return!1;var f=r();return e*(t-e*f/2-i)>=0&&e*(t+e*f/2-o)<=0}function y9(e,t){return QL(e,t+1)}function b9(e,t,r,i,o){for(var f=(i||[]).slice(),{start:g,end:a}=t,c=0,h=1,v=g,u=function(){var C=i==null?void 0:i[c];if(C===void 0)return{v:QL(i,h)};var _=c,d,y=()=>(d===void 0&&(d=r(C,_)),d),b=C.coordinate,S=c===0||$l(e,b,y,v,a);S||(c=0,v=g,h+=1),S&&(v=b+e*(y()/2+o),c+=h)},m;h<=f.length;)if(m=u(),m)return m.v;return[]}function S9(e,t,r,i,o){var f=(i||[]).slice(),g=f.length;if(g===0)return[];for(var{start:a,end:c}=t,h=1;h<=g;h++){for(var v=(g-1)%h,u=a,m=!0,w=function(){var E=i[_];if(E==null)return 0;var L=_,x,T=()=>(x===void 0&&(x=r(E,L)),x),M=E.coordinate,D=_===v||$l(e,M,T,u,c);if(!D)return m=!1,1;D&&(u=M+e*(T()/2+o))},C,_=v;_<g&&(C=w(),!(C!==0&&C===1));_+=h);if(m){for(var d=[],y=v;y<g;y+=h){var b=i[y];b!=null&&d.push(b)}return d}}return[]}function H5(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?H5(Object(r),!0).forEach(function(i){w9(e,i,r[i])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):H5(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)}function E9(e,t,r,i,o){for(var f=(i||[]).slice(),g=f.length,{start:a}=t,{end:c}=t,h=function(m){var w=f[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);f[m]=C=or(or({},C),{},{tickCoord:y>0?C.coordinate-y*e:C.coordinate})}else f[m]=C=or(or({},C),{},{tickCoord:C.coordinate});if(C.tickCoord!=null){var b=$l(e,C.tickCoord,d,a,c);b&&(c=C.tickCoord-e*(d()/2+o),f[m]=or(or({},C),{},{isShow:!0}))}},v=g-1;v>=0;v--)h(v);return f}function A9(e,t,r,i,o,f){var g=(i||[]).slice(),a=g.length,{start:c,end:h}=t;if(f){var v=i[a-1];if(v!=null){var u=r(v,a-1),m=e*(v.coordinate+e*u/2-h);if(g[a-1]=v=or(or({},v),{},{tickCoord:m>0?v.coordinate-m*e:v.coordinate}),v.tickCoord!=null){var w=$l(e,v.tickCoord,()=>u,c,h);w&&(h=v.tickCoord-e*(u/2+o),g[a-1]=or(or({},v),{},{isShow:!0}))}}}for(var C=f?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 T=e*(E.coordinate-e*x()/2-c);g[b]=E=or(or({},E),{},{tickCoord:T<0?E.coordinate-T*e:E.coordinate})}else g[b]=E=or(or({},E),{},{tickCoord:E.coordinate});if(E.tickCoord!=null){var M=$l(e,E.tickCoord,x,c,h);M&&(c=E.tickCoord+e*(x()/2+o),g[b]=or(or({},E),{},{isShow:!0}))}},d=0;d<C;d++)_(d);return g}function M9(e,t,r){var{tick:i,ticks:o,viewBox:f,minTickGap:g,orientation:a,interval:c,tickFormatter:h,unit:v,angle:u}=e;if(!o||!o.length||!i)return[];if(Oe(c)||Yl.isSsr){var m;return(m=y9(o,Oe(c)?c:0))!==null&&m!==void 0?m:[]}var w=[],C=a==="top"||a==="bottom"?"width":"height",_=v&&C==="width"?Al(v,{fontSize:t,letterSpacing:r}):{width:0,height:0},d=(L,x)=>{var T=typeof h=="function"?h(L.value,x):L.value;return C==="width"?_9(Al(T,{fontSize:t,letterSpacing:r}),_,u):Al(T,{fontSize:t,letterSpacing:r})[C]},y=o[0],b=o[1],S=o.length>=2&&y!=null&&b!=null?Rr(b.coordinate-y.coordinate):1,E=m9(f,S,C);return c==="equidistantPreserveStart"?b9(S,E,d,o,g):c==="equidistantPreserveEnd"?S9(S,E,d,o,g):(c==="preserveStart"||c==="preserveStartEnd"?w=A9(S,E,d,o,g,c==="preserveStartEnd"):w=E9(S,E,d,o,g),w.filter(L=>L.isShow))}var L9=e=>{var{ticks:t,label:r,labelGapWithTick:i=5,tickSize:o=0,tickMargin:f=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+f,h=g+c+a+(r?i:0);return Math.round(h)}return 0},O9={xAxis:{},yAxis:{}},JL=lr({name:"renderedTicks",initialState:O9,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:T9,removeRenderedTicks:D9}=JL.actions,R9=JL.reducer,k9=["axisLine","width","height","className","hide","ticks","axisType","axisId"];function P9(e,t){if(e==null)return{};var r,i,o=B9(e,t);if(Object.getOwnPropertySymbols){var f=Object.getOwnPropertySymbols(e);for(i=0;i<f.length;i++)r=f[i],t.indexOf(r)===-1&&{}.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}function B9(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 $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 Ct(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){j9(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 j9(e,t,r){return(t=I9(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function I9(e){var t=N9(e,"string");return typeof t=="symbol"?t:t+""}function N9(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:wr.axis};function z9(e){var{x:t,y:r,width:i,height:o,orientation:f,mirror:g,axisLine:a,otherSvgProps:c}=e;if(!a)return null;var h=Ct(Ct(Ct({},c),Vn(a)),{},{fill:"none"});if(f==="top"||f==="bottom"){var v=+(f==="top"&&!g||f==="bottom"&&g);h=Ct(Ct({},h),{},{x1:t,y1:r+v*o,x2:t+i,y2:r+v*o})}else{var u=+(f==="left"&&!g||f==="right"&&g);h=Ct(Ct({},h),{},{x1:t+u*i,y1:r,x2:t+u*i,y2:r+o})}return N.createElement("line",Us({},h,{className:vt("recharts-cartesian-axis-line",Ga(a,"className"))}))}function H9(e,t,r,i,o,f,g,a,c){var h,v,u,m,w,C,_=a?-1:1,d=e.tickSize||g,y=Oe(e.tickCoord)?e.tickCoord:e.coordinate;switch(f){case"top":h=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,h=v-_*d,w=h-_*c,C=y;break;case"right":u=m=e.coordinate,v=t+ +a*i,h=v+_*d,w=h+_*c,C=y;break;default:h=v=e.coordinate,m=r+ +a*o,u=m+_*d,C=u+_*c,w=y;break}return{line:{x1:h,y1:u,x2:v,y2:m},tick:{x:w,y:C}}}function $9(e,t){switch(e){case"left":return t?"start":"end";case"right":return t?"end":"start";default:return"middle"}}function U9(e,t){switch(e){case"left":case"right":return"middle";case"top":return t?"start":"end";default:return t?"end":"start"}}function F9(e){var{option:t,tickProps:r,value:i}=e,o,f=vt(r.className,"recharts-cartesian-axis-tick-value");if(N.isValidElement(t))o=N.cloneElement(t,Ct(Ct({},r),{},{className:f}));else if(typeof t=="function")o=t(Ct(Ct({},r),{},{className:f}));else{var g="recharts-cartesian-axis-tick-value";typeof t!="boolean"&&(g=vt(g,rU(t))),o=N.createElement(Qm,Us({},r,{className:g}),i)}return o}function q9(e){var{ticks:t,axisType:r,axisId:i}=e,o=yt();return N.useEffect(()=>{if(i==null||r==null)return no;var f=t.map(g=>({value:g.value,coordinate:g.coordinate,offset:g.offset,index:g.index}));return o(T9({ticks:f,axisId:i,axisType:r})),()=>{o(D9({axisId:i,axisType:r}))}},[o,t,i,r]),null}var W9=N.forwardRef((e,t)=>{var{ticks:r=[],tick:i,tickLine:o,stroke:f,tickFormatter:g,unit:a,padding:c,tickTextProps:h,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:T}=e,M=M9(Ct(Ct({},E),{},{ticks:r}),b,S),D=Vn(E),k=L_(i),P=kL(D.textAnchor)?D.textAnchor:$9(v,u),R=U9(v,u),B={};typeof o=="object"&&(B=o);var H=Ct(Ct({},D),{},{fill:"none"},B),X=M.map(Y=>Ct({entry:Y},H9(Y,m,w,C,_,v,d,u,y))),q=X.map(Y=>{var{entry:j,line:$}=Y;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({},H,$,{className:vt("recharts-cartesian-axis-tick-line",Ga(o,"className"))})))}),K=X.map((Y,j)=>{var $,z,{entry:F,tick:Q}=Y,te=Ct(Ct(Ct(Ct({verticalAnchor:R},D),{},{textAnchor:P,stroke:"none",fill:f},Q),{},{index:j,payload:F,visibleTicksCount:M.length,tickFormatter:g,padding:c},h),{},{angle:($=(z=h==null?void 0:h.angle)!==null&&z!==void 0?z:D.angle)!==null&&$!==void 0?$:0}),fe=Ct(Ct({},te),k);return N.createElement(Ri,Us({className:"recharts-cartesian-axis-tick-label",key:"tick-label-".concat(F.value,"-").concat(F.coordinate,"-").concat(F.tickCoord)},B_(L,F,j)),i&&N.createElement(F9,{option:i,tickProps:fe,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(q9,{ticks:M,axisId:T,axisType:x}),K.length>0&&N.createElement(rs,{zIndex:wr.label},N.createElement("g",{className:"recharts-cartesian-axis-tick-labels recharts-".concat(x,"-tick-labels"),ref:t},K)),q.length>0&&N.createElement("g",{className:"recharts-cartesian-axis-tick-lines recharts-".concat(x,"-tick-lines")},q))}),G9=N.forwardRef((e,t)=>{var{axisLine:r,width:i,height:o,className:f,hide:g,ticks:a,axisType:c,axisId:h}=e,v=P9(e,k9),[u,m]=N.useState(""),[w,C]=N.useState(""),_=N.useRef(null);N.useImperativeHandle(t,()=>({getCalculatedWidth:()=>{var y;return L9({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",f)},N.createElement(z9,{x:e.x,y:e.y,width:i,height:o,orientation:e.orientation,mirror:e.mirror,axisLine:r,otherSvgProps:Vn(e)}),N.createElement(W9,{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:h}),N.createElement(B$,{x:e.x,y:e.y,width:e.width,height:e.height,lowerWidth:e.width,upperWidth:e.width},N.createElement(W$,{label:e.label,labelRef:e.labelRef}),e.children)))}),e0=N.forwardRef((e,t)=>{var r=ni(e,Ps);return N.createElement(G9,Us({},r,{ref:t}))});e0.displayName="CartesianAxis";var K9={},eO=lr({name:"errorBars",initialState:K9,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(f=>f.dataKey===i.dataKey&&f.direction===i.direction?o:f))},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:tG,replaceErrorBar:rG,removeErrorBar:iG}=eO.actions,Y9=eO.reducer,V9=["children"];function X9(e,t){if(e==null)return{};var r,i,o=Z9(e,t);if(Object.getOwnPropertySymbols){var f=Object.getOwnPropertySymbols(e);for(i=0;i<f.length;i++)r=f[i],t.indexOf(r)===-1&&{}.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}function Z9(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 Q9={data:[],xAxisId:"xAxis-0",yAxisId:"yAxis-0",dataPointFormatter:()=>({x:0,y:0,value:0}),errorBarOffset:0},J9=N.createContext(Q9);function eF(e){var{children:t}=e,r=X9(e,V9);return N.createElement(J9.Provider,{value:r},t)}function tO(e,t){var r,i,o=Re(h=>gn(h,e)),f=Re(h=>pn(h,t)),g=(r=o==null?void 0:o.allowDataOverflow)!==null&&r!==void 0?r:Pt.allowDataOverflow,a=(i=f==null?void 0:f.allowDataOverflow)!==null&&i!==void 0?i:Bt.allowDataOverflow,c=g||a;return{needClip:c,needClipX:g,needClipY:a}}function tF(e){var{xAxisId:t,yAxisId:r,clipPathId:i}=e,o=VL(),{needClipX:f,needClipY:g,needClip:a}=tO(t,r);if(!a||!o)return null;var{x:c,y:h,width:v,height:u}=o;return N.createElement("clipPath",{id:"clipPath-".concat(i)},N.createElement("rect",{x:f?c:c-v/2,y:g?h:h-u/2,width:f?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:KL}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:KL}var rF="Invariant failed";function iF(e,t){throw new Error(rF)}function m_(){return m_=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},m_.apply(null,arguments)}function t0(e){return N.createElement(EU,m_({shapeType:"rectangle",activeClassName:"recharts-active-bar",inActiveClassName:"recharts-inactive-bar"},e))}var nF=function(t){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;return(i,o)=>{if(Oe(t))return t;var f=Oe(i)||It(i);return f?t(i,o):(f||iF(),r)}},sF=(e,t,r)=>r,aF=(e,t)=>t,nc=oe([Pm,aF],(e,t)=>e.filter(r=>r.type==="bar").find(r=>r.id===t)),oF=oe([nc],e=>e==null?void 0:e.maxBarSize),lF=(e,t,r,i)=>i,cF=oe([ot,Pm,Gs,Ks,sF],(e,t,r,i,o)=>t.filter(f=>e==="horizontal"?f.xAxisId===r:f.yAxisId===i).filter(f=>f.isPanorama===o).filter(f=>f.hide===!1).filter(f=>f.type==="bar")),uF=(e,t,r)=>{var i=ot(e),o=Gs(e,t),f=Ks(e,t);if(!(o==null||f==null))return i==="horizontal"?v_(e,"yAxis",f,r):v_(e,"xAxis",o,r)},hF=(e,t)=>{var r=ot(e),i=Gs(e,t),o=Ks(e,t);if(!(i==null||o==null))return r==="horizontal"?$x(e,"xAxis",i):$x(e,"yAxis",o)},fF=oe([cF,$8,hF],e9),dF=(e,t,r)=>{var i,o,f=nc(e,t);if(f==null)return 0;var g=Gs(e,t),a=Ks(e,t);if(g==null||a==null)return 0;var c=ot(e),h=CA(e),{maxBarSize:v}=f,u=It(v)?h:v,m,w;return c==="horizontal"?(m=eo(e,"xAxis",g,r),w=Ja(e,"xAxis",g,r)):(m=eo(e,"yAxis",a,r),w=Ja(e,"yAxis",a,r)),(i=(o=sh(m,w,!0))!==null&&o!==void 0?o:u)!==null&&i!==void 0?i:0},rO=(e,t,r)=>{var i=ot(e),o=Gs(e,t),f=Ks(e,t);if(!(o==null||f==null)){var g,a;return i==="horizontal"?(g=eo(e,"xAxis",o,r),a=Ja(e,"xAxis",o,r)):(g=eo(e,"yAxis",f,r),a=Ja(e,"yAxis",f,r)),sh(g,a)}},vF=oe([fF,CA,H8,xA,dF,rO,oF],s9),gF=(e,t,r)=>{var i=Gs(e,t);if(i!=null)return eo(e,"xAxis",i,r)},pF=(e,t,r)=>{var i=Ks(e,t);if(i!=null)return eo(e,"yAxis",i,r)},_F=(e,t,r)=>{var i=Gs(e,t);if(i!=null)return Ja(e,"xAxis",i,r)},mF=(e,t,r)=>{var i=Ks(e,t);if(i!=null)return Ja(e,"yAxis",i,r)},yF=oe([vF,nc],o9),bF=oe([uF,nc],a9),SF=oe([Kt,q_,gF,pF,_F,mF,yF,ot,R8,rO,bF,nc,lF],(e,t,r,i,o,f,g,a,c,h,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||f==null||h==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 VF({layout:a,barSettings:u,pos:g,parentViewBox:t,bandSize:h,xAxis:r,yAxis:i,xAxisTicks:o,yAxisTicks:f,stackedData:v,displayedData:y,offset:e,cells:m,dataStartIndex:C})}}),wF=["index"];function y_(){return y_=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},y_.apply(null,arguments)}function CF(e,t){if(e==null)return{};var r,i,o=xF(e,t);if(Object.getOwnPropertySymbols){var f=Object.getOwnPropertySymbols(e);for(i=0;i<f.length;i++)r=f[i],t.indexOf(r)===-1&&{}.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}function xF(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 iO=N.createContext(void 0),EF=e=>{var t=N.useContext(iO);if(t!=null)return t.stackId;if(e!=null)return I4(e)},AF=(e,t)=>"recharts-bar-stack-clip-path-".concat(e,"-").concat(t),MF=e=>{var t=N.useContext(iO);if(t!=null){var{stackId:r}=t;return"url(#".concat(AF(r,e),")")}},nO=e=>{var{index:t}=e,r=CF(e,wF),i=MF(t);return N.createElement(Ri,y_({className:"recharts-bar-stack-layer",clipPath:i},r))},LF=["onMouseEnter","onMouseLeave","onClick"],OF=["value","background","tooltipPosition"],TF=["id"],DF=["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 U5(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?U5(Object(r),!0).forEach(function(i){RF(e,i,r[i])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):U5(Object(r)).forEach(function(i){Object.defineProperty(e,i,Object.getOwnPropertyDescriptor(r,i))})}return e}function RF(e,t,r){return(t=kF(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function kF(e){var t=PF(e,"string");return typeof t=="symbol"?t:t+""}function PF(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(e,t){if(e==null)return{};var r,i,o=BF(e,t);if(Object.getOwnPropertySymbols){var f=Object.getOwnPropertySymbols(e);for(i=0;i<f.length;i++)r=f[i],t.indexOf(r)===-1&&{}.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}function BF(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 jF=e=>{var{dataKey:t,name:r,fill:i,legendType:o,hide:f}=e;return[{inactive:f,dataKey:t,type:o,color:i,value:HE(r,t),payload:e}]},IF=N.memo(e=>{var{dataKey:t,stroke:r,strokeWidth:i,fill:o,name:f,hide:g,unit:a,tooltipType:c,id:h}=e,v={dataDefinedOnItem:void 0,getPosition:no,settings:{stroke:r,strokeWidth:i,fill:o,dataKey:t,nameKey:void 0,name:HE(f,t),hide:g,type:c,color:o,unit:a,graphicalItemId:h}};return N.createElement(AU,{tooltipEntrySettings:v})});function NF(e){var t=Re(ro),{data:r,dataKey:i,background:o,allOtherBarProps:f}=e,{onMouseEnter:g,onMouseLeave:a,onClick:c}=f,h=kh(f,LF),v=FL(g,i,f.id),u=qL(a),m=WL(c,i,f.id);if(!o||r==null)return null;var w=L_(o);return N.createElement(rs,{zIndex:l9(o,wr.barBackground)},r.map((C,_)=>{var{value:d,background:y,tooltipPosition:b}=C,S=kh(C,OF);if(!y)return null;var E=v(C,_),L=u(C,_),x=m(C,_),T=hr(hr(hr(hr(hr({option:o,isActive:String(_)===t},S),{},{fill:"#eee"},y),w),B_(h,C,_)),{},{onMouseEnter:E,onMouseLeave:L,onClick:x,dataKey:i,index:_,className:"recharts-bar-background-rectangle"});return N.createElement(t0,Zn({key:"background-bar-".concat(_)},T))}))}function zF(e){var{showLabels:t,children:r,rects:i}=e,o=i==null?void 0:i.map(f=>{var g={x:f.x,y:f.y,width:f.width,lowerWidth:f.width,upperWidth:f.width,height:f.height};return hr(hr({},g),{},{value:f.value,payload:f.payload,parentViewBox:f.parentViewBox,viewBox:g,fill:f.fill})});return N.createElement(X$,{value:t?o:void 0},r)}function HF(e){var{shape:t,activeBar:r,baseProps:i,entry:o,index:f,dataKey:g}=e,a=Re(ro),c=Re(mL),h=r&&String(o.originalDataIndex)===a&&(c==null||g===c),[v,u]=N.useState(!1),[m,w]=N.useState(!1);N.useEffect(()=>{var S;return h?(u(!0),S=requestAnimationFrame(()=>{w(!0)})):w(!1),()=>{cancelAnimationFrame(S)}},[h]);var C=N.useCallback(()=>{h||u(!1)},[h]),_=h&&m,d=h||v,y;h?r===!0?y=t:y=r:y=t;var b=N.createElement(t0,Zn({},i,{name:String(i.name)},o,{isActive:_,option:y,index:f,dataKey:g,onTransitionEnd:C}));return d?N.createElement(rs,{zIndex:wr.activeBar},N.createElement(nO,{index:o.originalDataIndex},b)):b}function $F(e){var{shape:t,baseProps:r,entry:i,index:o,dataKey:f}=e;return N.createElement(t0,Zn({},r,{name:String(r.name)},i,{isActive:!1,option:t,index:o,dataKey:f}))}function UF(e){var t,{data:r,props:i}=e,o=(t=Vn(i))!==null&&t!==void 0?t:{},{id:f}=o,g=kh(o,TF),{shape:a,dataKey:c,activeBar:h}=i,{onMouseEnter:v,onClick:u,onMouseLeave:m}=i,w=kh(i,DF),C=FL(v,c,f),_=qL(m),d=WL(u,c,f);return r?N.createElement(N.Fragment,null,r.map((y,b)=>N.createElement(nO,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"},B_(w,y,b),{onMouseEnter:C(y,b),onMouseLeave:_(y,b),onClick:d(y,b)}),h?N.createElement(HF,{shape:a,activeBar:h,baseProps:g,entry:y,index:b,dataKey:c}):N.createElement($F,{shape:a,baseProps:g,entry:y,index:b,dataKey:c})))):null}function FF(e){var{props:t,previousRectanglesRef:r}=e,{data:i,layout:o,isAnimationActive:f,animationBegin:g,animationDuration:a,animationEasing:c,onAnimationEnd:h,onAnimationStart:v}=t,u=r.current,m=X_(t,"recharts-bar-"),[w,C]=N.useState(!1),_=!w,d=N.useCallback(()=>{typeof h=="function"&&h(),C(!1)},[h]),y=N.useCallback(()=>{typeof v=="function"&&v(),C(!0)},[v]);return N.createElement(zF,{showLabels:_,rects:i},N.createElement(V_,{animationId:m,begin:g,duration:a,isActive:f,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 T=nr(0,E.height,b),M=nr(E.stackedBarStart,E.y,b);return hr(hr({},E),{},{y:M,height:T})}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(UF,{props:t,data:S}))}),N.createElement(J$,{label:t.label}),t.children)}function qF(e){var t=N.useRef(null);return N.createElement(FF,{previousRectanglesRef:t,props:e})}var sO=0,WF=(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 GF extends N.PureComponent{render(){var{hide:t,data:r,dataKey:i,className:o,xAxisId:f,yAxisId:g,needClip:a,background:c,id:h}=this.props;if(t||r==null)return null;var v=vt("recharts-bar",o),u=h;return N.createElement(Ri,{className:v,id:h},a&&N.createElement("defs",null,N.createElement(tF,{clipPathId:u,xAxisId:f,yAxisId:g})),N.createElement(Ri,{className:"recharts-bar-rectangles",clipPath:a?"url(#clipPath-".concat(u,")"):void 0},N.createElement(NF,{data:r,dataKey:i,background:c,allOtherBarProps:this.props}),N.createElement(qF,this.props)))}}var KF={activeBar:!1,animationBegin:0,animationDuration:400,animationEasing:"ease",background:!1,hide:!1,isAnimationActive:"auto",label:!1,legendType:"rect",minPointSize:sO,xAxisId:0,yAxisId:0,zIndex:wr.bar};function YF(e){var{xAxisId:t,yAxisId:r,hide:i,legendType:o,minPointSize:f,activeBar:g,animationBegin:a,animationDuration:c,animationEasing:h,isAnimationActive:v}=e,{needClip:u}=tO(t,r),m=so(),w=Nr(),C=aU(e.children,Zm),_=Re(b=>SF(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(eF,{xAxisId:t,yAxisId:r,data:_,dataPointFormatter:WF,errorBarOffset:d},N.createElement(GF,Zn({},e,{layout:m,needClip:u,data:_,xAxisId:t,yAxisId:r,hide:i,legendType:o,minPointSize:f,activeBar:g,animationBegin:a,animationDuration:c,animationEasing:h,isAnimationActive:v})))}function VF(e){var{layout:t,barSettings:{dataKey:r,minPointSize:i,hasCustomShape:o},pos:f,bandSize:g,xAxis:a,yAxis:c,xAxisTicks:h,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=N4({numericAxis:y}),E=y.scale.map(S);return m.map((L,x)=>{var T,M,D,k,P,R;if(u){var B=u[x+d];if(B==null)return null;T=R4(B,b)}else T=Gt(L,r),Array.isArray(T)||(T=[S,T]);var H=nF(i,sO)(T[1],x);if(t==="horizontal"){var X,q=c.scale.map(T[0]),K=c.scale.map(T[1]);if(q==null||K==null)return null;M=jw({axis:a,ticks:h,bandSize:g,offset:f.offset,entry:L,index:x}),D=(X=K??q)!==null&&X!==void 0?X:void 0,k=f.size;var Y=q-K;if(P=ki(Y)?0:Y,R={x:M,y:w.top,width:k,height:w.height},Math.abs(H)>0&&Math.abs(P)<Math.abs(H)){var j=Rr(P||H)*(Math.abs(H)-Math.abs(P));D-=j,P+=j}}else{var $=a.scale.map(T[0]),z=a.scale.map(T[1]);if($==null||z==null)return null;if(M=$,D=jw({axis:c,ticks:v,bandSize:g,offset:f.offset,entry:L,index:x}),k=z-$,P=f.size,R={x:w.left,y:D,width:w.width,height:P},Math.abs(H)>0&&Math.abs(k)<Math.abs(H)){var F=Rr(k||H)*(Math.abs(H)-Math.abs(k));k+=F}}if(M==null||D==null||k==null||P==null||!o&&(k===0||P===0))return null;var Q=hr(hr({},L),{},{stackedBarStart:E,x:M,y:D,width:k,height:P,value:u?T:T[1],payload:L,background:R,tooltipPosition:{x:M+k/2,y:D+P/2},parentViewBox:_,originalDataIndex:x},C&&C[x]&&C[x].props);return Q}).filter(Boolean)}function XF(e){var t=ni(e,KF),r=EF(t.stackId),i=Nr();return N.createElement(RU,{id:t.id,type:"bar"},o=>N.createElement(N.Fragment,null,N.createElement(MU,{legendPayload:jF(t)}),N.createElement(IF,{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(zU,{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(YF,Zn({},t,{id:o})))))}var aO=N.memo(XF,af);aO.displayName="Bar";var ZF=["domain","range"],QF=["domain","range"];function F5(e,t){if(e==null)return{};var r,i,o=JF(e,t);if(Object.getOwnPropertySymbols){var f=Object.getOwnPropertySymbols(e);for(i=0;i<f.length;i++)r=f[i],t.indexOf(r)===-1&&{}.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}function JF(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 oO(e,t){if(e===t)return!0;var{domain:r,range:i}=e,o=F5(e,ZF),{domain:f,range:g}=t,a=F5(t,QF);return!q5(r,f)||!q5(i,g)?!1:af(o,a)}var eq=["type"],tq=["dangerouslySetInnerHTML","ticks","scale"],rq=["id","scale"];function b_(){return b_=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},b_.apply(null,arguments)}function W5(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 G5(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?W5(Object(r),!0).forEach(function(i){iq(e,i,r[i])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):W5(Object(r)).forEach(function(i){Object.defineProperty(e,i,Object.getOwnPropertyDescriptor(r,i))})}return e}function iq(e,t,r){return(t=nq(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function nq(e){var t=sq(e,"string");return typeof t=="symbol"?t:t+""}function sq(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 S_(e,t){if(e==null)return{};var r,i,o=aq(e,t);if(Object.getOwnPropertySymbols){var f=Object.getOwnPropertySymbols(e);for(i=0;i<f.length;i++)r=f[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 oq(e){var t=yt(),r=N.useRef(null),i=WE(),{type:o}=e,f=S_(e,eq),g=uf(i,"xAxis",o),a=N.useMemo(()=>{if(g!=null)return G5(G5({},f),{},{type:g})},[f,g]);return N.useLayoutEffect(()=>{a!=null&&(r.current===null?t(qU(a)):r.current!==a&&t(WU({prev:r.current,next:a})),r.current=a)},[a,t]),N.useLayoutEffect(()=>()=>{r.current&&(t(GU(r.current)),r.current=null)},[t]),null}var lq=e=>{var{xAxisId:t,className:r}=e,i=Re(q_),o=Nr(),f="xAxis",g=Re(y=>XM(y,f,t,o)),a=Re(y=>KM(y,t)),c=Re(y=>w7(y,t)),h=Re(y=>gM(y,t));if(a==null||c==null||h==null)return null;var{dangerouslySetInnerHTML:v,ticks:u,scale:m}=e,w=S_(e,tq),{id:C,scale:_}=h,d=S_(h,rq);return N.createElement(e0,b_({},w,d,{x:c.x,y:c.y,width:a.width,height:a.height,className:vt("recharts-".concat(f," ").concat(f),r),viewBox:i,ticks:g,axisType:f,axisId:t}))},cq={allowDataOverflow:Pt.allowDataOverflow,allowDecimals:Pt.allowDecimals,allowDuplicatedCategory:Pt.allowDuplicatedCategory,angle:Pt.angle,axisLine:Ps.axisLine,height:Pt.height,hide:!1,includeHidden:Pt.includeHidden,interval:Pt.interval,label:!1,minTickGap:Pt.minTickGap,mirror:Pt.mirror,orientation:Pt.orientation,padding:Pt.padding,reversed:Pt.reversed,scale:Pt.scale,tick:Pt.tick,tickCount:Pt.tickCount,tickLine:Ps.tickLine,tickSize:Ps.tickSize,type:Pt.type,niceTicks:Pt.niceTicks,xAxisId:0},uq=e=>{var t=ni(e,cq);return N.createElement(N.Fragment,null,N.createElement(oq,{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(lq,t))},lO=N.memo(uq,oO);lO.displayName="XAxis";var hq=["type"],fq=["dangerouslySetInnerHTML","ticks","scale"],dq=["id","scale"];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 K5(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 Y5(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?K5(Object(r),!0).forEach(function(i){vq(e,i,r[i])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):K5(Object(r)).forEach(function(i){Object.defineProperty(e,i,Object.getOwnPropertyDescriptor(r,i))})}return e}function vq(e,t,r){return(t=gq(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function gq(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 C_(e,t){if(e==null)return{};var r,i,o=_q(e,t);if(Object.getOwnPropertySymbols){var f=Object.getOwnPropertySymbols(e);for(i=0;i<f.length;i++)r=f[i],t.indexOf(r)===-1&&{}.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}function _q(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 mq(e){var t=yt(),r=N.useRef(null),i=WE(),{type:o}=e,f=C_(e,hq),g=uf(i,"yAxis",o),a=N.useMemo(()=>{if(g!=null)return Y5(Y5({},f),{},{type:g})},[g,f]);return N.useLayoutEffect(()=>{a!=null&&(r.current===null?t(KU(a)):r.current!==a&&t(YU({prev:r.current,next:a})),r.current=a)},[a,t]),N.useLayoutEffect(()=>()=>{r.current&&(t(VU(r.current)),r.current=null)},[t]),null}function yq(e){var{yAxisId:t,className:r,width:i,label:o}=e,f=N.useRef(null),g=N.useRef(null),a=Re(q_),c=Nr(),h=yt(),v="yAxis",u=Re(x=>YM(x,t)),m=Re(x=>x7(x,t)),w=Re(x=>XM(x,v,t,c)),C=Re(x=>pM(x,t));if(N.useLayoutEffect(()=>{if(!(i!=="auto"||!u||Jm(o)||N.isValidElement(o)||C==null)){var x=f.current;if(x){var T=x.getCalculatedWidth();Math.round(u.width)!==Math.round(T)&&h(XU({id:t,width:T}))}}},[w,u,h,o,t,i,C]),u==null||m==null||C==null)return null;var{dangerouslySetInnerHTML:_,ticks:d,scale:y}=e,b=C_(e,fq),{id:S,scale:E}=C,L=C_(C,dq);return N.createElement(e0,w_({},b,L,{ref:f,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 bq={allowDataOverflow:Bt.allowDataOverflow,allowDecimals:Bt.allowDecimals,allowDuplicatedCategory:Bt.allowDuplicatedCategory,angle:Bt.angle,axisLine:Ps.axisLine,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,width:Bt.width,yAxisId:0},Sq=e=>{var t=ni(e,bq);return N.createElement(N.Fragment,null,N.createElement(mq,{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(yq,t))},cO=N.memo(Sq,oO);cO.displayName="YAxis";var wq=(e,t)=>t,r0=oe([wq,ot,DA,Vt,vL,_n,Gz,Kt],Jz);function Cq(e){return"getBBox"in e.currentTarget&&typeof e.currentTarget.getBBox=="function"}function i0(e){var t=e.currentTarget.getBoundingClientRect(),r,i;if(Cq(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 f=e.currentTarget;r=f.offsetWidth>0?t.width/f.offsetWidth:1,i=f.offsetHeight>0?t.height/f.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 uO=Br("mouseClick"),hO=ql();hO.startListening({actionCreator:uO,effect:(e,t)=>{var r=e.payload,i=r0(t.getState(),i0(r));(i==null?void 0:i.activeIndex)!=null&&t.dispatch(H7({activeIndex:i.activeIndex,activeDataKey:void 0,activeCoordinate:i.activeCoordinate}))}});var x_=Br("mouseMove"),fO=ql(),Na=null,Ss=null,Op=null;fO.startListening({actionCreator:x_,effect:(e,t)=>{var r=e.payload,i=t.getState(),{throttleDelay:o,throttledEvents:f}=i.eventSettings,g=f==="all"||(f==null?void 0:f.includes("mousemove"));Na!==null&&(cancelAnimationFrame(Na),Na=null),Ss!==null&&(typeof o!="number"||!g)&&(clearTimeout(Ss),Ss=null),Op=i0(r);var a=()=>{var c=t.getState(),h=rc(c,c.tooltip.settings.shared);if(!Op){Na=null,Ss=null;return}if(h==="axis"){var v=r0(c,Op);(v==null?void 0:v.activeIndex)!=null?t.dispatch(nL({activeIndex:v.activeIndex,activeDataKey:void 0,activeCoordinate:v.activeCoordinate})):t.dispatch(iL())}Na=null,Ss=null};if(!g){a();return}o==="raf"?Na=requestAnimationFrame(a):typeof o=="number"&&Ss===null&&(Ss=setTimeout(a,o))}});function xq(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 V5={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},dO=lr({name:"rootProps",initialState:V5,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:V5.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}}}),Eq=dO.reducer,{updateOptions:Aq}=dO.actions,Mq=null,Lq={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)},vO=lr({name:"polarOptions",initialState:Mq,reducers:Lq}),{updatePolarOptions:nG}=vO.actions,Oq=vO.reducer,gO=Br("keyDown"),pO=Br("focus"),_O=Br("blur"),Ef=ql(),za=null,ws=null,Pu=null;Ef.startListening({actionCreator:gO,effect:(e,t)=>{Pu=e.payload,za!==null&&(cancelAnimationFrame(za),za=null);var r=t.getState(),{throttleDelay:i,throttledEvents:o}=r.eventSettings,f=o==="all"||o.includes("keydown");ws!==null&&(typeof i!="number"||!f)&&(clearTimeout(ws),ws=null);var g=()=>{try{var a=t.getState(),c=a.rootProps.accessibilityLayer!==!1;if(!c)return;var{keyboardInteraction:h}=a.tooltip,v=Pu;if(v!=="ArrowRight"&&v!=="ArrowLeft"&&v!=="Enter")return;var u=El(h,$s(a),Qa(a),to(a)),m=u==null?-1:Number(u),w=!Number.isFinite(m)||m<0,C=_n(a),_=$s(a),d=rc(a,a.tooltip.settings.shared);if(v==="Enter"){if(w)return;var y=Oh(a,d,"hover",String(h.index));t.dispatch(Lh({active:!h.active,activeIndex:h.index,activeCoordinate:y}));return}var b=O7(a),S=b==="left-to-right"?1:-1,E=v==="ArrowRight"?1:-1,L;if(w){var x=Qa(a),T=to(a),M=E*S,D=H=>({active:!1,index:String(H),dataKey:void 0,graphicalItemId:void 0,coordinate:void 0});if(L=-1,M>0){for(var k=0;k<_.length;k++)if(El(D(k),_,x,T)!=null){L=k;break}}else for(var P=_.length-1;P>=0;P--)if(El(D(P),_,x,T)!=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=Oh(a,d,"hover",String(L));t.dispatch(Lh({active:!0,activeIndex:L.toString(),activeCoordinate:B}))}finally{za=null,ws=null}};if(!f){g();return}i==="raf"?za=requestAnimationFrame(g):typeof i=="number"&&ws===null&&(g(),Pu=null,ws=setTimeout(()=>{Pu?g():(ws=null,za=null)},i))}});Ef.startListening({actionCreator:pO,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 f="0",g=rc(r,r.tooltip.settings.shared),a=Oh(r,g,"hover",String(f));t.dispatch(Lh({active:!0,activeIndex:f,activeCoordinate:a}))}}}});Ef.startListening({actionCreator:_O,effect:(e,t)=>{var r=t.getState(),i=r.rootProps.accessibilityLayer!==!1;if(i){var{keyboardInteraction:o}=r.tooltip;o.active&&t.dispatch(Lh({active:!1,activeIndex:o.index,activeCoordinate:o.coordinate}))}}});function mO(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 Qr=Br("externalEvent"),yO=ql(),Bu=new Map,yl=new Map,Tp=new Map;yO.startListening({actionCreator:Qr,effect:(e,t)=>{var{handler:r,reactEvent:i}=e.payload;if(r!=null){var o=i.type,f=mO(i);Tp.set(o,{handler:r,reactEvent:f});var g=Bu.get(o);g!==void 0&&(cancelAnimationFrame(g),Bu.delete(o));var a=t.getState(),{throttleDelay:c,throttledEvents:h}=a.eventSettings,v=h,u=v==="all"||(v==null?void 0:v.includes(o)),m=yl.get(o);m!==void 0&&(typeof c!="number"||!u)&&(clearTimeout(m),yl.delete(o));var w=()=>{var d=Tp.get(o);try{if(!d)return;var{handler:y,reactEvent:b}=d,S=t.getState(),E={activeCoordinate:Dz(S),activeDataKey:mL(S),activeIndex:ro(S),activeLabel:_L(S),activeTooltipIndex:ro(S),isTooltipActive:Rz(S)};y&&y(E,b)}finally{Bu.delete(o),yl.delete(o),Tp.delete(o)}};if(!u){w();return}if(c==="raf"){var C=requestAnimationFrame(w);Bu.set(o,C)}else if(typeof c=="number"){if(!yl.has(o)){w();var _=setTimeout(w,c);yl.set(o,_)}}else w()}}});var Tq=oe([vo],e=>e.tooltipItemPayloads),Dq=oe([Tq,(e,t)=>t,(e,t,r)=>r],(e,t,r)=>{if(t!=null){var i=e.find(f=>f.settings.graphicalItemId===r);if(i!=null){var{getPosition:o}=i;if(o!=null)return o(t)}}}),bO=Br("touchMove"),SO=ql(),Cs=null,Un=null,X5=null,bl=null;SO.startListening({actionCreator:bO,effect:(e,t)=>{var r=e.payload;if(!(r.touches==null||r.touches.length===0)){bl=mO(r);var i=t.getState(),{throttleDelay:o,throttledEvents:f}=i.eventSettings,g=f==="all"||f.includes("touchmove");Cs!==null&&(cancelAnimationFrame(Cs),Cs=null),Un!==null&&(typeof o!="number"||!g)&&(clearTimeout(Un),Un=null),X5=Array.from(r.touches).map(c=>i0({clientX:c.clientX,clientY:c.clientY,currentTarget:r.currentTarget}));var a=()=>{if(bl!=null){var c=t.getState(),h=rc(c,c.tooltip.settings.shared);if(h==="axis"){var v,u=(v=X5)===null||v===void 0?void 0:v[0];if(u==null){Cs=null,Un=null;return}var m=r0(c,u);(m==null?void 0:m.activeIndex)!=null&&t.dispatch(nL({activeIndex:m.activeIndex,activeDataKey:void 0,activeCoordinate:m.activeCoordinate}))}else if(h==="item"){var w,C=bl.touches[0];if(document.elementFromPoint==null||C==null)return;var _=document.elementFromPoint(C.clientX,C.clientY);if(!_||!_.getAttribute)return;var d=_.getAttribute(W4),y=(w=_.getAttribute(G4))!==null&&w!==void 0?w:void 0,b=Ws(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(rL({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(),bl=null,Un=setTimeout(()=>{bl?a():(Un=null,Cs=null)},o))}}});var wO={throttleDelay:"raf",throttledEvents:["mousemove","touchmove","pointermove","scroll","wheel"]},CO=lr({name:"eventSettings",initialState:wO,reducers:{setEventSettings:(e,t)=>{t.payload.throttleDelay!=null&&(e.throttleDelay=t.payload.throttleDelay),t.payload.throttledEvents!=null&&(e.throttledEvents=t.payload.throttledEvents)}}}),{setEventSettings:Rq}=CO.actions,kq=CO.reducer,Pq=hE({brush:u9,cartesianAxis:ZU,chartData:TH,errorBars:Y9,eventSettings:kq,graphicalItems:IU,layout:M4,legend:$6,options:EH,polarAxis:tU,polarOptions:Oq,referenceElements:v9,renderedTicks:R9,rootProps:Eq,tooltip:$7,zIndex:fH}),Bq=function(t){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"Chart";return QP({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([hO.middleware,fO.middleware,Ef.middleware,yO.middleware,SO.middleware])},enhancers:i=>{var o=i;return typeof i=="function"&&(o=i()),o.concat(AE({type:"raf"}))},devTools:{serialize:{replacer:xq},name:"recharts-".concat(r)}})};function jq(e){var{preloadedState:t,children:r,reduxStoreName:i}=e,o=Nr(),f=N.useRef(null);if(o)return r;f.current==null&&(f.current=Bq(t,i));var g=I_;return N.createElement(iB,{context:g,store:f.current},r)}function Iq(e){var{layout:t,margin:r}=e,i=yt(),o=Nr();return N.useEffect(()=>{o||(i(x4(t)),i(C4(r)))},[i,o,t,r]),null}var Nq=N.memo(Iq,af);function zq(e){var t=yt();return N.useEffect(()=>{t(Aq(e))},[t,e]),null}var Hq=e=>{var t=yt();return N.useEffect(()=>{t(Rq(e))},[t,e]),null},$q=N.memo(Hq,af);function Z5(e){var{zIndex:t,isPanorama:r}=e,i=N.useRef(null),o=yt();return N.useLayoutEffect(()=>(i.current&&o(uH({zIndex:t,element:i.current,isPanorama:r})),()=>{o(hH({zIndex:t,isPanorama:r}))}),[o,t,r]),N.createElement("g",{tabIndex:-1,ref:i,className:"recharts-zIndex-layer_".concat(t)})}function Q5(e){var{children:t,isPanorama:r}=e,i=Re(tH);if(!i||i.length===0)return t;var o=i.filter(g=>g<0),f=i.filter(g=>g>0);return N.createElement(N.Fragment,null,o.map(g=>N.createElement(Z5,{key:g,zIndex:g,isPanorama:r})),t,f.map(g=>N.createElement(Z5,{key:g,zIndex:g,isPanorama:r})))}var Uq=["children"];function Fq(e,t){if(e==null)return{};var r,i,o=qq(e,t);if(Object.getOwnPropertySymbols){var f=Object.getOwnPropertySymbols(e);for(i=0;i<f.length;i++)r=f[i],t.indexOf(r)===-1&&{}.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}function qq(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 Ph(){return Ph=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},Ph.apply(null,arguments)}var Wq={width:"100%",height:"100%",display:"block"},Gq=N.forwardRef((e,t)=>{var r=C6(),i=x6(),o=tA();if(!Xn(r)||!Xn(i))return null;var{children:f,otherAttributes:g,title:a,desc:c}=e,h,v;return g!=null&&(typeof g.tabIndex=="number"?h=g.tabIndex:h=o?0:void 0,typeof g.role=="string"?v=g.role:v=o?"application":void 0),N.createElement(L2,Ph({},g,{title:a,desc:c,role:v,tabIndex:h,width:r,height:i,style:Wq,ref:t}),f)}),Kq=e=>{var{children:t}=e,r=Re(ef);if(!r)return null;var{width:i,height:o,y:f,x:g}=r;return N.createElement(L2,{width:i,height:o,x:g,y:f},t)},J5=N.forwardRef((e,t)=>{var{children:r}=e,i=Fq(e,Uq),o=Nr();return o?N.createElement(Kq,null,N.createElement(Q5,{isPanorama:!0},r)):N.createElement(Gq,Ph({ref:t},i),N.createElement(Q5,{isPanorama:!1},r))});function Yq(){var e=yt(),[t,r]=N.useState(null),i=Re(q4);return N.useEffect(()=>{if(t!=null){var o=t.getBoundingClientRect(),f=o.width/t.offsetWidth;Ze(f)&&f!==i&&e(A4(f))}},[t,e,i]),r}function e2(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 Vq(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?e2(Object(r),!0).forEach(function(i){Xq(e,i,r[i])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):e2(Object(r)).forEach(function(i){Object.defineProperty(e,i,Object.getOwnPropertyDescriptor(r,i))})}return e}function Xq(e,t,r){return(t=Zq(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function Zq(e){var t=Qq(e,"string");return typeof t=="symbol"?t:t+""}function Qq(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 Jq=()=>(zH(),null);function Bh(e){if(typeof e=="number")return e;if(typeof e=="string"){var t=parseFloat(e);if(!Number.isNaN(t))return t}return 0}var eW=N.forwardRef((e,t)=>{var r,i,o=N.useRef(null),[f,g]=N.useState({containerWidth:Bh((r=e.style)===null||r===void 0?void 0:r.width),containerHeight:Bh((i=e.style)===null||i===void 0?void 0:i.height)}),a=N.useCallback((h,v)=>{g(u=>{var m=Math.round(h),w=Math.round(v);return u.containerWidth===m&&u.containerHeight===w?u:{containerWidth:m,containerHeight:w}})},[]),c=N.useCallback(h=>{if(typeof t=="function"&&t(h),o.current!=null&&(o.current.disconnect(),o.current=null),h!=null&&typeof ResizeObserver<"u"){var{width:v,height:u}=h.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(h),o.current=w}},[t,a]);return N.useEffect(()=>()=>{var h=o.current;h!=null&&h.disconnect()},[a]),N.createElement(N.Fragment,null,N.createElement(Gl,{width:f.containerWidth,height:f.containerHeight}),N.createElement("div",Yn({ref:c},e)))}),tW=N.forwardRef((e,t)=>{var{width:r,height:i}=e,[o,f]=N.useState({containerWidth:Bh(r),containerHeight:Bh(i)}),g=N.useCallback((c,h)=>{f(v=>{var u=Math.round(c),m=Math.round(h);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:h,height:v}=c.getBoundingClientRect();g(h,v)}},[t,g]);return N.createElement(N.Fragment,null,N.createElement(Gl,{width:o.containerWidth,height:o.containerHeight}),N.createElement("div",Yn({ref:a},e)))}),rW=N.forwardRef((e,t)=>{var{width:r,height:i}=e;return N.createElement(N.Fragment,null,N.createElement(Gl,{width:r,height:i}),N.createElement("div",Yn({ref:t},e)))}),iW=N.forwardRef((e,t)=>{var{width:r,height:i}=e;return typeof r=="string"||typeof i=="string"?N.createElement(tW,Yn({},e,{ref:t})):typeof r=="number"&&typeof i=="number"?N.createElement(rW,Yn({},e,{width:r,height:i,ref:t})):N.createElement(N.Fragment,null,N.createElement(Gl,{width:r,height:i}),N.createElement("div",Yn({ref:t},e)))});function nW(e){return e?eW:iW}var sW=N.forwardRef((e,t)=>{var{children:r,className:i,height:o,onClick:f,onContextMenu:g,onDoubleClick:a,onMouseDown:c,onMouseEnter:h,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=yt(),[x,T]=N.useState(null),[M,D]=N.useState(null),k=Yq(),P=W_(),R=(P==null?void 0:P.width)>0?P.width:y,B=(P==null?void 0:P.height)>0?P.height:o,H=N.useCallback(V=>{k(V),typeof t=="function"&&t(V),T(V),D(V),V!=null&&(E.current=V)},[k,t,T,D]),X=N.useCallback(V=>{L(uO(V)),L(Qr({handler:f,reactEvent:V}))},[L,f]),q=N.useCallback(V=>{L(x_(V)),L(Qr({handler:h,reactEvent:V}))},[L,h]),K=N.useCallback(V=>{L(iL()),L(Qr({handler:v,reactEvent:V}))},[L,v]),Y=N.useCallback(V=>{L(x_(V)),L(Qr({handler:u,reactEvent:V}))},[L,u]),j=N.useCallback(()=>{L(pO())},[L]),$=N.useCallback(()=>{L(_O())},[L]),z=N.useCallback(V=>{L(gO(V.key))},[L]),F=N.useCallback(V=>{L(Qr({handler:g,reactEvent:V}))},[L,g]),Q=N.useCallback(V=>{L(Qr({handler:a,reactEvent:V}))},[L,a]),te=N.useCallback(V=>{L(Qr({handler:c,reactEvent:V}))},[L,c]),fe=N.useCallback(V=>{L(Qr({handler:m,reactEvent:V}))},[L,m]),ge=N.useCallback(V=>{L(Qr({handler:_,reactEvent:V}))},[L,_]),Z=N.useCallback(V=>{S&&L(bO(V)),L(Qr({handler:C,reactEvent:V}))},[L,S,C]),W=N.useCallback(V=>{L(Qr({handler:w,reactEvent:V}))},[L,w]),ee=nW(b);return N.createElement(EL.Provider,{value:x},N.createElement(T3.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:Vq({position:"relative",cursor:"default",width:R,height:B},d),onClick:X,onContextMenu:F,onDoubleClick:Q,onFocus:j,onBlur:$,onKeyDown:z,onMouseDown:te,onMouseEnter:q,onMouseLeave:K,onMouseMove:Y,onMouseUp:fe,onTouchEnd:W,onTouchMove:Z,onTouchStart:ge,ref:H},N.createElement(Jq,null),r)))}),aW=["width","height","responsive","children","className","style","compact","title","desc"];function oW(e,t){if(e==null)return{};var r,i,o=lW(e,t);if(Object.getOwnPropertySymbols){var f=Object.getOwnPropertySymbols(e);for(i=0;i<f.length;i++)r=f[i],t.indexOf(r)===-1&&{}.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}function lW(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 cW=N.forwardRef((e,t)=>{var{width:r,height:i,responsive:o,children:f,className:g,style:a,compact:c,title:h,desc:v}=e,u=oW(e,aW),m=Vn(u);return c?N.createElement(N.Fragment,null,N.createElement(Gl,{width:r,height:i}),N.createElement(J5,{otherAttributes:m,title:h,desc:v},f)):N.createElement(sW,{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(J5,{otherAttributes:m,title:h,desc:v,ref:t},N.createElement(p9,null,f)))});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 uW(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){hW(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 hW(e,t,r){return(t=fW(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function fW(e){var t=dW(e,"string");return typeof t=="symbol"?t:t+""}function dW(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 vW={top:5,right:5,bottom:5,left:5},gW=uW({accessibilityLayer:!0,barCategoryGap:"10%",barGap:4,layout:"horizontal",margin:vW,responsive:!1,reverseStackOrder:!1,stackOffset:"none",syncMethod:"index"},wO),pW=N.forwardRef(function(t,r){var i,o=ni(t.categoricalChartProps,gW),{chartName:f,defaultTooltipEventType:g,validateTooltipEventTypes:a,tooltipPayloadSearcher:c,categoricalChartProps:h}=t,v={chartName:f,defaultTooltipEventType:g,validateTooltipEventTypes:a,tooltipPayloadSearcher:c,eventEmitter:void 0};return N.createElement(jq,{preloadedState:{options:v},reduxStoreName:(i=h.id)!==null&&i!==void 0?i:f},N.createElement(c9,{chartData:h.data}),N.createElement(Nq,{layout:o.layout,margin:o.margin}),N.createElement($q,{throttleDelay:o.throttleDelay,throttledEvents:o.throttledEvents}),N.createElement(zq,{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(cW,E_({},o,{ref:r})))}),_W=["axis","item"],mW=N.forwardRef((e,t)=>N.createElement(pW,{chartName:"BarChart",defaultTooltipEventType:"axis",validateTooltipEventTypes:_W,tooltipPayloadSearcher:CH,categoricalChartProps:e,ref:t}));const r2=["#6366f1","#8b5cf6","#a78bfa","#c4b5fd","#ddd6fe","#818cf8","#4f46e5","#7c3aed","#5b21b6","#3730a3"];function jh(e,t=1,r=""){return e===null?"—":`${Number(e.toFixed(t))}${r}`}function i2(e){return e===null?"—":`$${e.toFixed(2)}`}function n2(e){return e===null?"—":`${e.toFixed(1)}%`}function xO({title:e,error:t,defaultOpen:r=!0,children:i}){const[o,f]=N.useState(r);return U.jsxs("section",{className:"analytics-section",children:[U.jsxs("h3",{className:"analytics-section-title",onClick:()=>f(!o),style:{cursor:"pointer",userSelect:"none"},children:[U.jsx("span",{className:"analytics-collapse-icon",children:o?"▾":"▸"}),e]}),t&&U.jsx("div",{className:"analytics-error",children:t}),o&&i]})}function A_({children:e}){return U.jsx("div",{className:"analytics-metric-grid",children:e})}function nn({label:e,value:t}){return U.jsxs("div",{className:"analytics-metric",children:[U.jsx("span",{className:"analytics-metric-value",children:t}),U.jsx("span",{className:"analytics-metric-label",children:e})]})}function Uu({data:e,dataKey:t,nameKey:r,color:i,formatter:o}){if(e.length===0)return null;const f=Math.max(120,e.length*28+30);return U.jsx(b6,{width:"100%",height:f,children:U.jsxs(mW,{data:e,layout:"vertical",margin:{top:4,right:40,bottom:4,left:0},children:[U.jsx(lO,{type:"number",hide:!0}),U.jsx(cO,{type:"category",dataKey:r,width:80,tick:{fontSize:10,fill:"var(--text-secondary)"}}),U.jsx(KH,{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)"}}),U.jsx(aO,{dataKey:t,radius:[0,3,3,0],children:e.map((g,a)=>U.jsx(Zm,{fill:i??r2[a%r2.length]},a))})]})})}function s2(e){return e===null?"—":e<1?`${Math.round(e*60)}m`:`${Number(e.toFixed(1))}h`}function yW({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 U.jsxs(xO,{title:"Activity",error:t==null?void 0:t.github,children:[r.length>0&&U.jsxs("div",{className:"analytics-sub-section",children:[U.jsx("h4",{className:"analytics-sub-title",children:"Projects by Protocol"}),U.jsx(A_,{children:r.map(i=>U.jsx(nn,{label:i.name,value:`${i.count} (wall ${s2(i.avgWallClock)}${i.avgAgentTime!=null?`, agent ${s2(i.avgAgentTime)}`:""})`},i.name))}),U.jsx(Uu,{data:r,dataKey:"count",nameKey:"name"})]}),U.jsxs(A_,{children:[U.jsx(nn,{label:"PRs Merged",value:String(e.prsMerged)}),U.jsx(nn,{label:"Issues Closed",value:String(e.issuesClosed)}),U.jsx(nn,{label:"Median Time to Merge",value:jh(e.medianTimeToMergeHours,1,"h")}),U.jsx(nn,{label:"Median Time to Close Bugs",value:jh(e.medianTimeToCloseBugsHours,1,"h")})]})]})}function bW({consultation:e,errors:t}){const r=e.byModel.map(f=>({name:f.model,count:f.count,cost:f.totalCost??0,latency:f.avgLatency,success:f.successRate})),i=Object.entries(e.byReviewType).map(([f,g])=>({name:f,value:g})),o=Object.entries(e.byProtocol).map(([f,g])=>({name:f,value:g}));return U.jsxs(xO,{title:"Consultation",error:t==null?void 0:t.consultation,children:[U.jsxs(A_,{children:[U.jsx(nn,{label:"Total Consultations",value:String(e.totalCount)}),U.jsx(nn,{label:"Total Cost",value:i2(e.totalCostUsd)}),U.jsx(nn,{label:"Avg Latency",value:jh(e.avgLatencySeconds,1,"s")}),U.jsx(nn,{label:"Success Rate",value:n2(e.successRate)})]}),r.length>0&&U.jsxs("div",{className:"analytics-sub-section",children:[U.jsx("h4",{className:"analytics-sub-title",children:"Cost by Model"}),U.jsx(Uu,{data:r,dataKey:"cost",nameKey:"name",formatter:f=>`$${f.toFixed(2)}`})]}),r.length>0&&U.jsxs("div",{className:"analytics-sub-section",children:[U.jsx("h4",{className:"analytics-sub-title",children:"Per Model"}),U.jsxs("table",{className:"analytics-table",children:[U.jsx("thead",{children:U.jsxs("tr",{children:[U.jsx("th",{children:"Model"}),U.jsx("th",{children:"Count"}),U.jsx("th",{children:"Cost"}),U.jsx("th",{children:"Latency"}),U.jsx("th",{children:"Success"})]})}),U.jsx("tbody",{children:e.byModel.map(f=>U.jsxs("tr",{children:[U.jsx("td",{children:f.model}),U.jsx("td",{children:f.count}),U.jsx("td",{children:i2(f.totalCost)}),U.jsx("td",{children:jh(f.avgLatency,1,"s")}),U.jsx("td",{children:n2(f.successRate)})]},f.model))})]})]}),(i.length>0||o.length>0)&&U.jsxs("div",{className:"analytics-charts-row",children:[i.length>0&&U.jsxs("div",{className:"analytics-sub-section analytics-chart-half",children:[U.jsx("h4",{className:"analytics-sub-title",children:"By Review Type"}),U.jsx(Uu,{data:i,dataKey:"value",nameKey:"name"})]}),o.length>0&&U.jsxs("div",{className:"analytics-sub-section analytics-chart-half",children:[U.jsx("h4",{className:"analytics-sub-title",children:"By Protocol"}),U.jsx(Uu,{data:o,dataKey:"value",nameKey:"name"})]})]})]})}function SW({isActive:e}){const{data:t,error:r,loading:i,range:o,setRange:f,refresh:g}=b3(e),a=["24h","7d","30d","all"];return U.jsx("div",{className:"analytics-view",children:U.jsxs("div",{className:"analytics-content",children:[U.jsxs("div",{className:"analytics-header",children:[U.jsx("h2",{className:"analytics-title",children:"Analytics"}),U.jsxs("div",{className:"analytics-actions",children:[U.jsx("div",{className:"analytics-range-selector",children:a.map(c=>U.jsx("button",{className:`analytics-range-btn ${o===c?"active":""}`,onClick:()=>f(c),children:c==="all"?"All":c},c))}),U.jsx("button",{className:"work-btn work-btn-secondary",onClick:g,disabled:i,children:i?"Loading...":"Refresh"})]})]}),r&&!t&&U.jsx("div",{className:"analytics-error",children:r}),i&&!t&&U.jsx("div",{className:"analytics-loading",children:"Loading analytics..."}),t&&U.jsxs(U.Fragment,{children:[U.jsx(yW,{activity:t.activity,errors:t.errors}),U.jsx(bW,{consultation:t.consultation,errors:t.errors})]})]})})}function wW(e){const[t,r]=N.useState(null),[i,o]=N.useState(null),[f,g]=N.useState(!1),a=N.useCallback(async()=>{g(!0),o(null);try{const h=await tR();r(h)}catch(h){o(h instanceof Error?h.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:f,refresh:c}}function CW(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 xW({entries:e}){return e.length===0?null:U.jsxs("div",{className:"team-member-section team-review-blocking",children:[U.jsx("span",{className:"team-section-label",children:"Review blocking"}),U.jsx("ul",{className:"team-review-blocking-list",children:e.map((t,r)=>U.jsxs("li",{className:"team-review-blocking-item",children:[U.jsxs("span",{className:"team-review-blocking-sentence",children:[t.direction==="authored"?U.jsxs(U.Fragment,{children:["You're waiting for ",U.jsx("strong",{children:t.otherName})," to review"," "]}):U.jsxs(U.Fragment,{children:[U.jsx("strong",{children:t.otherName})," is waiting for you to review"," "]}),U.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]})]}),U.jsx("span",{className:"team-review-blocking-age",children:CW(t.pr.createdAt)})]},`${t.direction}-${t.pr.number}-${t.otherGithub}-${r}`))})]})}function EW({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 U.jsxs("div",{className:"team-member-card",children:[U.jsxs("div",{className:"team-member-header",children:[U.jsx("span",{className:"team-member-name",children:e.name}),U.jsx("span",{className:"team-member-role",children:e.role})]}),U.jsxs("a",{className:"team-member-github",href:`https://github.com/${e.github}`,target:"_blank",rel:"noopener noreferrer",children:["@",e.github]}),t&&U.jsxs(U.Fragment,{children:[U.jsxs("div",{className:"team-member-section",children:[U.jsx("span",{className:"team-section-label",children:"Working on"}),t.assignedIssues.length>0?U.jsx("div",{className:"team-item-list",children:t.assignedIssues.map(o=>U.jsxs("a",{className:"team-item-link",href:o.url,target:"_blank",rel:"noopener noreferrer",children:["#",o.number," ",o.title]},o.number))}):U.jsx("span",{className:"team-item-empty",children:"No assigned issues"})]}),U.jsxs("div",{className:"team-member-section",children:[U.jsx("span",{className:"team-section-label",children:"Open PRs"}),t.openPRs.length>0?U.jsx("div",{className:"team-item-list",children:t.openPRs.map(o=>U.jsxs("a",{className:"team-item-link",href:o.url,target:"_blank",rel:"noopener noreferrer",children:["#",o.number," ",o.title]},o.number))}):U.jsx("span",{className:"team-item-empty",children:"No open PRs"})]}),U.jsx(xW,{entries:t.reviewBlocking??[]})]}),(r>0||i>0)&&U.jsxs("div",{className:"team-member-activity",children:[r>0&&U.jsxs("span",{children:[r," merged"]}),i>0&&U.jsxs("span",{children:[i," closed"]}),U.jsx("span",{className:"team-activity-label",children:"last 7d"})]})]})}function AW({message:e}){return U.jsxs("div",{className:"team-message",children:[U.jsxs("div",{className:"team-message-header",children:[U.jsx("span",{className:"team-message-author",children:e.author}),U.jsx("span",{className:"team-message-time",children:e.timestamp})]}),U.jsx("div",{className:"team-message-body",children:e.body})]})}function MW(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 LW(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 OW({members:e}){const t=LW(e);return t.length===0?U.jsx("div",{className:"team-no-messages",children:"No recent activity"}):U.jsx("div",{className:"team-activity-feed",children:t.map((r,i)=>U.jsxs("a",{className:"team-activity-entry",href:r.url,target:"_blank",rel:"noopener noreferrer",children:[U.jsx("span",{className:"team-activity-date",children:MW(r.timestamp)}),U.jsxs("span",{className:"team-activity-author",children:["@",r.author]}),U.jsx("span",{className:"team-activity-action",children:r.type}),U.jsxs("span",{className:"team-activity-ref",children:["#",r.number]}),U.jsx("span",{className:"team-activity-title",children:r.title})]},`${r.type}-${r.number}-${i}`))})}function TW({isActive:e}){const{data:t,error:r,loading:i,refresh:o}=wW(e);if(i&&!t)return U.jsx("div",{className:"team-view",children:U.jsx("div",{className:"team-loading",children:"Loading team data..."})});if(r&&!t)return U.jsx("div",{className:"team-view",children:U.jsx("div",{className:"team-error",children:r})});if(!t||!t.enabled)return null;const f=t.members??[],a=[...t.messages??[]].reverse();return U.jsx("div",{className:"team-view",children:U.jsxs("div",{className:"team-content",children:[U.jsxs("div",{className:"team-header",children:[U.jsx("h2",{className:"team-title",children:"Team"}),U.jsx("button",{className:"team-refresh-btn",onClick:o,disabled:i,children:i?"Refreshing...":"Refresh"})]}),t.githubError&&U.jsx("div",{className:"team-error",children:t.githubError}),U.jsxs("div",{className:"team-section",children:[U.jsxs("h3",{className:"team-section-title",children:["Members (",f.length,")"]}),U.jsx("div",{className:"team-member-grid",children:f.map(c=>U.jsx(EW,{member:c},c.github))})]}),U.jsxs("div",{className:"team-section",children:[U.jsx("h3",{className:"team-section-title",children:"Messages"}),a.length===0?U.jsx("div",{className:"team-no-messages",children:"No messages yet"}):U.jsx("div",{className:"team-messages",children:a.map((c,h)=>U.jsx(AW,{message:c},h))})]}),U.jsxs("div",{className:"team-section",children:[U.jsx("h3",{className:"team-section-title",children:"Recent Activity"}),U.jsx(OW,{members:f})]})]})})}function DW(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 RW(){const{state:e,refresh:t}=fR(),{tabs:r,activeTab:i,activeTabId:o,selectTab:f}=vR(e),g=v2(`(max-width: ${o2}px)`),[a,c]=N.useState(null),[h,v]=N.useState(new Set),u=N.useRef(new Map),m=N.useCallback(async(M,D,k,P)=>{try{const R=await Ih(M,D,P);D&&D>0&&u.current.set(R.id,D),t()}catch(R){console.error("Failed to open file:",R)}},[t]),w=DW(e==null?void 0:e.hostname,e==null?void 0:e.workspaceName);N.useEffect(()=>{document.title=w},[w]);const[C]=N.useState(()=>new URLSearchParams(window.location.search).get("fullscreen")==="1");N.useEffect(()=>{if(!i)return;(i.type==="architect"||i.type==="builder"||i.type==="shell")&&v(D=>{if(D.has(i.id))return D;const k=new Set(D);return k.add(i.id),k})},[i==null?void 0:i.id,i==null?void 0:i.type]);const _=M=>{const D=qv(M);return D?U.jsx(Vv,{wsPath:D,onFileOpen:m,persistent:M.persistent}):U.jsx("div",{className:"no-terminal",children:"No terminal session"})},d=M=>{if(!M.annotationId||!e)return U.jsx("div",{className:"no-terminal",children:"No file viewer"});if(!e.annotations.find(P=>P.id===M.annotationId))return U.jsx("div",{className:"no-terminal",children:"Annotation not found"});const k=u.current.get(M.annotationId);return k!==void 0&&u.current.delete(M.annotationId),U.jsx(m3,{tabId:M.annotationId,initialLine:k??M.initialLine})},y=M=>{const D=r.filter(k=>M.includes(k.type)&&h.has(k.id));return U.jsxs(U.Fragment,{children:[D.map(k=>{const P=qv(k);return U.jsx("div",{className:"terminal-tab-pane",style:{display:o===k.id?void 0:"none"},children:P?U.jsx(Vv,{wsPath:P,onFileOpen:m,persistent:k.persistent}):U.jsx("div",{className:"no-terminal",children:"No terminal session"})},k.id)}),U.jsx("div",{style:{display:(i==null?void 0:i.type)==="work"?void 0:"none",height:"100%"},children:U.jsx(p3,{state:e,onRefresh:t,onSelectTab:f})}),U.jsx("div",{style:{display:(i==null?void 0:i.type)==="analytics"?void 0:"none",height:"100%"},children:U.jsx(SW,{isActive:(i==null?void 0:i.type)==="analytics"})}),(e==null?void 0:e.teamEnabled)&&U.jsx("div",{style:{display:(i==null?void 0:i.type)==="team"?void 0:"none",height:"100%"},children:U.jsx(TW,{isActive:(i==null?void 0:i.type)==="team"})}),(i==null?void 0:i.type)==="file"&&d(i)]})};if(C)return i&&(i.type==="architect"||i.type==="builder"||i.type==="shell")?U.jsx("div",{className:"fullscreen-terminal",children:_(i)}):U.jsx("div",{className:"fullscreen-terminal"});if(g)return U.jsx("div",{className:"mobile-wrapper",children:U.jsx(_3,{tabs:r,activeTabId:o,onSelectTab:f,onRefresh:t,children:y(["architect","builder","shell"])})});const b=r.find(M=>M.type==="architect"),S=()=>{c(a==="right"?null:"left")},E=()=>{c(a==="left"?null:"right")},L=U.jsxs(U.Fragment,{children:[a!=="left"&&U.jsx("button",{className:"terminal-control-btn",onPointerDown:M=>M.preventDefault(),onClick:S,title:a==="right"?"Restore split layout":"Collapse architect panel","aria-label":a==="right"?"Restore split layout":"Collapse architect panel",children:U.jsxs("svg",{width:"16",height:"16",viewBox:"0 0 16 16",fill:"none",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round",children:[U.jsx("line",{x1:"3",y1:"2",x2:"3",y2:"14"}),U.jsx("path",{d:"M12 5l-4 3 4 3"})]})}),a!=="right"&&U.jsx("button",{className:"terminal-control-btn",onPointerDown:M=>M.preventDefault(),onClick:E,title:"Collapse work panel","aria-label":"Collapse work panel",children:U.jsxs("svg",{width:"16",height:"16",viewBox:"0 0 16 16",fill:"none",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round",children:[U.jsx("line",{x1:"13",y1:"2",x2:"13",y2:"14"}),U.jsx("path",{d:"M4 5l4 3-4 3"})]})})]}),x=b?qv(b):null,T=x?U.jsx(Vv,{wsPath:x,onFileOpen:m,persistent:b.persistent,toolbarExtra:L}):U.jsx("div",{className:"no-architect",children:"No architect terminal"});return U.jsxs("div",{className:"app",children:[U.jsxs("header",{className:"app-header",children:[U.jsx("h1",{className:"app-title",children:w}),U.jsx("div",{className:"header-controls",children:(e==null?void 0:e.version)&&U.jsxs("span",{className:"header-version",children:["v",e.version]})})]}),U.jsx("div",{className:"app-body",children:U.jsx(gR,{left:T,right:U.jsxs("div",{className:"right-panel",children:[U.jsx(g2,{tabs:r.filter(M=>M.type!=="architect"),activeTabId:o,onSelectTab:f,onRefresh:t}),U.jsx("div",{className:"tab-content",role:"tabpanel",children:y(["builder","shell"])})]}),collapsedPane:a,onExpandLeft:()=>c(null),onExpandRight:()=>c(null)})})]})}ZD.createRoot(document.getElementById("root")).render(U.jsx(N.StrictMode,{children:U.jsx(RW,{})}));
195
- //# sourceMappingURL=index-JRKA6Mfr.js.map
195
+ //# sourceMappingURL=index-Dn9zmcKp.js.map