@runfusion/fusion 0.54.0 → 0.56.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (146) hide show
  1. package/dist/bin.js +9137 -2087
  2. package/dist/client/.vite/manifest.json +364 -332
  3. package/dist/client/assets/AgentDetailView-BPzzEIn1.js +18 -0
  4. package/dist/client/assets/{AgentDetailView-BzSyldiW.css → AgentDetailView-D7UY2Tup.css} +1 -1
  5. package/dist/client/assets/{AgentPermissionPolicyEditor-D2AQ6swg.js → AgentPermissionPolicyEditor-CqlLF0pf.js} +1 -1
  6. package/dist/client/assets/{AgentsView-DwEFPKuN.js → AgentsView-C4uCWzdt.js} +3 -3
  7. package/dist/client/assets/ChatView-BGV9F2K0.js +6 -0
  8. package/dist/client/assets/{CommandCenter-BABqoSkg.js → CommandCenter-BhIfVVjz.js} +16 -16
  9. package/dist/client/assets/{DevServerView-DlgOzRdC.js → DevServerView-Bd86MWUa.js} +1 -1
  10. package/dist/client/assets/DirectoryPicker-BDe9G84f.js +1 -0
  11. package/dist/client/assets/DocumentsView-BkAHMt19.js +1 -0
  12. package/dist/client/assets/{EvalsView-CQBNrO5n.js → EvalsView-BxxCVaJ8.js} +1 -1
  13. package/dist/client/assets/{ExperimentalAgentOnboardingModal-2SDqP2lc.js → ExperimentalAgentOnboardingModal-7-BD6W1v.js} +1 -1
  14. package/dist/client/assets/{GoalsView-BgkX-_SB.js → GoalsView-B3KICwNu.js} +1 -1
  15. package/dist/client/assets/{InsightsView-CJY4eZcO.js → InsightsView-DO8qefU1.js} +2 -2
  16. package/dist/client/assets/{MemoryView-5Crtfanz.js → MemoryView-urkPdqTn.js} +1 -1
  17. package/dist/client/assets/{PiExtensionsManager-COmzskVa.js → PiExtensionsManager-BwVKjJIo.js} +2 -2
  18. package/dist/client/assets/PluginManager-C-OuqDLa.js +1 -0
  19. package/dist/client/assets/{PullRequestView-DAHh0FVM.js → PullRequestView-B4q4X5WV.js} +2 -2
  20. package/dist/client/assets/{ResearchView-cSUka3sd.js → ResearchView-DlW6z3sm.js} +1 -1
  21. package/dist/client/assets/{SecretsView-ChFAfFRY.js → SecretsView-C-3eC0KB.js} +1 -1
  22. package/dist/client/assets/{SessionTerminal-D4R3ScvQ.css → SessionTerminal-BvK8A98c.css} +1 -1
  23. package/dist/client/assets/SessionTerminal-DVfyVeS2.js +2 -0
  24. package/dist/client/assets/SettingsModal-BC_2Y56_.css +1 -0
  25. package/dist/client/assets/{SettingsModal-pAz_hOoN.js → SettingsModal-BzXctrhu.js} +1 -1
  26. package/dist/client/assets/SettingsModal-qs8w3rov.js +21 -0
  27. package/dist/client/assets/SetupWizardModal-DDJ8PCkH.js +2 -0
  28. package/dist/client/assets/{ShadcnColorPicker-CsfgWpf6.js → ShadcnColorPicker-BcD5fZ_P.js} +1 -1
  29. package/dist/client/assets/{SkillsView-BSUplEYb.js → SkillsView-DojlvxFh.js} +1 -1
  30. package/dist/client/assets/TodoView-BKZ07WxZ.js +6 -0
  31. package/dist/client/assets/WorkflowNodeEditor-BJNbi4_V.js +8 -0
  32. package/dist/client/assets/{agentSkills-qVb0x_G3.js → agentSkills-NbIIJy87.js} +1 -1
  33. package/dist/client/assets/app-0jcSCRQr.js +13 -0
  34. package/dist/client/assets/app-BPzPEE6G.js +13 -0
  35. package/dist/client/assets/app-BSZU5Uns.js +13 -0
  36. package/dist/client/assets/app-CEtD1B9K.js +13 -0
  37. package/dist/client/assets/app-CVyRSEUX.js +13 -0
  38. package/dist/client/assets/app-DoLz_4Dg.js +13 -0
  39. package/dist/client/assets/{architectureDiagram-3BPJPVTR-DEt4eIEQ.js → architectureDiagram-3BPJPVTR-CJu9RVXs.js} +1 -1
  40. package/dist/client/assets/{blockDiagram-GPEHLZMM-CJuX0UM_.js → blockDiagram-GPEHLZMM-crZsLLTq.js} +1 -1
  41. package/dist/client/assets/{c4Diagram-AAUBKEIU-a46Lm113.js → c4Diagram-AAUBKEIU-D5mmJKvW.js} +1 -1
  42. package/dist/client/assets/channel-Zfk0yRN2.js +1 -0
  43. package/dist/client/assets/{chunk-2J33WTMH-iBhwyS0c.js → chunk-2J33WTMH-BZIDltTX.js} +1 -1
  44. package/dist/client/assets/{chunk-4BX2VUAB-C7lS5wER.js → chunk-4BX2VUAB-ND_SzhUa.js} +1 -1
  45. package/dist/client/assets/{chunk-55IACEB6-CQ6YOncn.js → chunk-55IACEB6-C3n-Nisk.js} +1 -1
  46. package/dist/client/assets/{chunk-727SXJPM-CveMaMKK.js → chunk-727SXJPM-DfiPA7wv.js} +1 -1
  47. package/dist/client/assets/{chunk-AQP2D5EJ-DErjGUEk.js → chunk-AQP2D5EJ-CDE0u57Z.js} +1 -1
  48. package/dist/client/assets/{chunk-FMBD7UC4-DXUvEFfJ.js → chunk-FMBD7UC4-COR53PTE.js} +1 -1
  49. package/dist/client/assets/{chunk-ND2GUHAM-w5RqSj1J.js → chunk-ND2GUHAM-CbcTdl7C.js} +1 -1
  50. package/dist/client/assets/{chunk-QZHKN3VN-CAi0lJ7V.js → chunk-QZHKN3VN-DiB3PReK.js} +1 -1
  51. package/dist/client/assets/classDiagram-4FO5ZUOK-BehQ-wnv.js +1 -0
  52. package/dist/client/assets/classDiagram-v2-Q7XG4LA2-BehQ-wnv.js +1 -0
  53. package/dist/client/assets/{cose-bilkent-S5V4N54A-Ck2h4uV5.js → cose-bilkent-S5V4N54A-Dg3YVyLX.js} +1 -1
  54. package/dist/client/assets/createLucideIcon-CshVyKO4.js +21 -0
  55. package/dist/client/assets/{dagre-BM42HDAG-BCRTXNj6.js → dagre-BM42HDAG-D2bK3gNb.js} +1 -1
  56. package/dist/client/assets/dashboard-view-BcbTWSCe.js +1 -0
  57. package/dist/client/assets/dashboard-view-Bsdq3OM4.css +1 -0
  58. package/dist/client/assets/dashboard-view-DafOfnxI.js +1 -0
  59. package/dist/client/assets/{dashboard-view-D9rF_PCq.js → dashboard-view-t2UfQxck.js} +1320 -1335
  60. package/dist/client/assets/{diagram-2AECGRRQ-DTTk-DYO.js → diagram-2AECGRRQ-BWT8KaEl.js} +1 -1
  61. package/dist/client/assets/{diagram-5GNKFQAL-jDc9kMi2.js → diagram-5GNKFQAL-DWfJlASD.js} +1 -1
  62. package/dist/client/assets/{diagram-KO2AKTUF-CcLmzlGr.js → diagram-KO2AKTUF-DE3hFbLT.js} +1 -1
  63. package/dist/client/assets/{diagram-LMA3HP47-DCW8XKQj.js → diagram-LMA3HP47-CYCFeD4B.js} +1 -1
  64. package/dist/client/assets/{diagram-OG6HWLK6-wbbKquPs.js → diagram-OG6HWLK6-C0C8lEGv.js} +1 -1
  65. package/dist/client/assets/{erDiagram-TEJ5UH35-Fo933Mo7.js → erDiagram-TEJ5UH35-kSo7RjKA.js} +1 -1
  66. package/dist/client/assets/{flowDiagram-I6XJVG4X-Dfum7HZP.js → flowDiagram-I6XJVG4X-DxRf1SVH.js} +1 -1
  67. package/dist/client/assets/{folder-open-B8vOwFeP.js → folder-open-DO1rnCxq.js} +1 -1
  68. package/dist/client/assets/{ganttDiagram-6RSMTGT7-BzEBCn01.js → ganttDiagram-6RSMTGT7-CGtxSeWq.js} +1 -1
  69. package/dist/client/assets/{gitGraphDiagram-PVQCEYII-CgovghHs.js → gitGraphDiagram-PVQCEYII-BNZv_DFY.js} +1 -1
  70. package/dist/client/assets/index-BCf32Sgx.css +1 -0
  71. package/dist/client/assets/index-D7eX7QJk.js +2511 -0
  72. package/dist/client/assets/{infoDiagram-5YYISTIA-BzpU4Wys.js → infoDiagram-5YYISTIA-DailohMo.js} +1 -1
  73. package/dist/client/assets/{ishikawaDiagram-YF4QCWOH-cpp5pozu.js → ishikawaDiagram-YF4QCWOH-Cy3shDZP.js} +1 -1
  74. package/dist/client/assets/{journeyDiagram-JHISSGLW-BVjcw6oo.js → journeyDiagram-JHISSGLW-B1rU18Qx.js} +1 -1
  75. package/dist/client/assets/{kanban-definition-UN3LZRKU-4unAhBzo.js → kanban-definition-UN3LZRKU-CRNUDgkO.js} +1 -1
  76. package/dist/client/assets/loader-circle-CMNcxXXr.js +16 -0
  77. package/dist/client/assets/{mermaid.core-DzIyUj9t.js → mermaid.core-Cg0po76i.js} +4 -4
  78. package/dist/client/assets/{mindmap-definition-RKZ34NQL-Be_yfVir.js → mindmap-definition-RKZ34NQL-CEjwlhOe.js} +1 -1
  79. package/dist/client/assets/{pieDiagram-4H26LBE5-Cfnw2aji.js → pieDiagram-4H26LBE5-70T-php2.js} +1 -1
  80. package/dist/client/assets/{quadrantDiagram-W4KKPZXB-BFlC-_Uo.js → quadrantDiagram-W4KKPZXB-ChcpRG7l.js} +1 -1
  81. package/dist/client/assets/{requirementDiagram-4Y6WPE33-DpVPzCOx.js → requirementDiagram-4Y6WPE33-9Pzb_Cot.js} +1 -1
  82. package/dist/client/assets/{sankeyDiagram-5OEKKPKP-DM-gKKP0.js → sankeyDiagram-5OEKKPKP-Bx6DkeKq.js} +1 -1
  83. package/dist/client/assets/{sequenceDiagram-3UESZ5HK-DjhZCZhd.js → sequenceDiagram-3UESZ5HK-emWPkPv7.js} +1 -1
  84. package/dist/client/assets/{shield-alert-DCfkjjYc.js → shield-alert-BdAjnDkU.js} +1 -1
  85. package/dist/client/assets/{stateDiagram-AJRCARHV-BCA96rdI.js → stateDiagram-AJRCARHV-B_X2-VQy.js} +1 -1
  86. package/dist/client/assets/stateDiagram-v2-BHNVJYJU-DvQssSEq.js +1 -0
  87. package/dist/client/assets/{timeline-definition-PNZ67QCA-CHW2OQRw.js → timeline-definition-PNZ67QCA-CkyhunuI.js} +1 -1
  88. package/dist/client/assets/{upload-EJc5PJPz.js → upload-D9-yuO2D.js} +1 -1
  89. package/dist/client/assets/{users-C-e-99Vp.js → users-B4aebngl.js} +1 -1
  90. package/dist/client/assets/{vennDiagram-CIIHVFJN-shGh4eBY.js → vennDiagram-CIIHVFJN-8OGD6Vb7.js} +1 -1
  91. package/dist/client/assets/{wardley-L42UT6IY-l0RGrVhn.js → wardley-L42UT6IY-MnRFGNPm.js} +1 -1
  92. package/dist/client/assets/{wardleyDiagram-YWT4CUSO-C-USmO8A.js → wardleyDiagram-YWT4CUSO-BAEzb08c.js} +1 -1
  93. package/dist/client/assets/{xychartDiagram-2RQKCTM6-CHX9Umta.js → xychartDiagram-2RQKCTM6-DUxideKC.js} +1 -1
  94. package/dist/client/assets/zoom-out-DzDzWQt1.js +21 -0
  95. package/dist/client/index.html +14 -5
  96. package/dist/client/version.json +1 -1
  97. package/dist/droid-cli/package.json +1 -1
  98. package/dist/extension.js +6720 -1170
  99. package/dist/pi-claude-cli/package.json +1 -1
  100. package/dist/plugin-sdk/index.d.ts +108 -4
  101. package/dist/plugins/fusion-plugin-acp-runtime/package.json +1 -1
  102. package/dist/plugins/fusion-plugin-cli-printing-press/package.json +1 -1
  103. package/dist/plugins/fusion-plugin-compound-engineering/package.json +1 -1
  104. package/dist/plugins/fusion-plugin-cursor-runtime/bundled.js +70 -25
  105. package/dist/plugins/fusion-plugin-cursor-runtime/package.json +1 -1
  106. package/dist/plugins/fusion-plugin-dependency-graph/package.json +1 -1
  107. package/dist/plugins/fusion-plugin-droid-runtime/package.json +1 -1
  108. package/dist/plugins/fusion-plugin-hermes-runtime/package.json +1 -1
  109. package/dist/plugins/fusion-plugin-linear-import/bundled.js +658 -0
  110. package/dist/plugins/fusion-plugin-linear-import/manifest.json +48 -0
  111. package/dist/plugins/fusion-plugin-linear-import/package.json +11 -0
  112. package/dist/plugins/fusion-plugin-openclaw-runtime/package.json +1 -1
  113. package/dist/plugins/fusion-plugin-paperclip-runtime/package.json +1 -1
  114. package/dist/plugins/fusion-plugin-reports/package.json +1 -1
  115. package/dist/plugins/fusion-plugin-roadmap/package.json +1 -1
  116. package/dist/plugins/fusion-plugin-whatsapp-chat/package.json +1 -1
  117. package/package.json +2 -1
  118. package/skill/fusion/SKILL.md +2 -2
  119. package/skill/fusion/references/engine-tools.md +1 -0
  120. package/skill/fusion/references/extension-tools.md +81 -0
  121. package/skill/fusion/references/fusion-capabilities.md +7 -0
  122. package/dist/client/assets/AgentDetailView-BJditQat.js +0 -18
  123. package/dist/client/assets/ChatView-B4bjPXFN.js +0 -6
  124. package/dist/client/assets/DirectoryPicker-BwMSmxYS.js +0 -1
  125. package/dist/client/assets/DocumentsView-BfaRXFg5.js +0 -1
  126. package/dist/client/assets/PluginManager-CGWXqZMa.js +0 -1
  127. package/dist/client/assets/SessionTerminal-CtQKDaqI.js +0 -2
  128. package/dist/client/assets/SettingsModal-BYaotQ2o.js +0 -21
  129. package/dist/client/assets/SettingsModal-BzZNPNIh.css +0 -1
  130. package/dist/client/assets/SetupWizardModal-eHZHi8VP.js +0 -2
  131. package/dist/client/assets/TodoView-DhBseLvM.js +0 -6
  132. package/dist/client/assets/WorkflowNodeEditor-Bi12CNif.js +0 -8
  133. package/dist/client/assets/app-5S4z84u5.js +0 -13
  134. package/dist/client/assets/app-B1VYocx2.js +0 -13
  135. package/dist/client/assets/app-BhtYYxin.js +0 -13
  136. package/dist/client/assets/app-Cts0__Vx.js +0 -13
  137. package/dist/client/assets/app-DczBmsP4.js +0 -13
  138. package/dist/client/assets/app-_GFUqcMK.js +0 -13
  139. package/dist/client/assets/channel-BGI9APMr.js +0 -1
  140. package/dist/client/assets/classDiagram-4FO5ZUOK-g6hCcufy.js +0 -1
  141. package/dist/client/assets/classDiagram-v2-Q7XG4LA2-g6hCcufy.js +0 -1
  142. package/dist/client/assets/dashboard-view-BfLJ60Kd.js +0 -1
  143. package/dist/client/assets/index-BjELA24x.js +0 -1336
  144. package/dist/client/assets/index-DwGW7OJh.css +0 -1
  145. package/dist/client/assets/stateDiagram-v2-BHNVJYJU-DHds08RS.js +0 -1
  146. package/dist/client/assets/zoom-out-NWbVkreR.js +0 -41
@@ -1,4 +1,4 @@
1
- import{r as f,j as s,g as nn,a as Dx,b as Al,c as Lx}from"./vendor-react-SZ_qB27O.js";import{c as yi,gK as Rx,ds as eh,L as El,q as gi,gL as bi,a7 as _l,gM as Ml,ae as th,gN as fu,R as Gr,gO as rh,dz as $x,aR as nh,aV as ah,bp as Bx,al as Tl,cl as Il,cm as Fx,gP as zx,f as Kx,f7 as Vx,gQ as Ux,u as ih,gR as qx,gS as Wx,bM as mu,gT as vu,fv as Hx,gU as Gx,ai as Xx,o as xi,G as Yx,gV as us,gW as Zx,gX as Jx,gY as Qx,gZ as ej,g_ as tj,g$ as rj,dW as sh,h0 as oh,h1 as hu,bU as Aa,h2 as To,h3 as lh,h4 as Io,ak as ch,bN as uh,a3 as nj,cn as dh,dl as aj,J as Do,b$ as ij,P as Ea,fi as fh,h5 as sj,h6 as oj,I as lj,er as pu,X as wa,D as cj,F as uj,am as yu,aJ as dj,h7 as gu,h8 as fj,h9 as mj,ha as vj,hb as hj,du as pj}from"./index-BjELA24x.js";import{u as le}from"./vendor-i18n-GF3RlKbq.js";import{a as mh,b as vh,p as yj,w as gj}from"./vendor-reactflow-CnI7NMXG.js";import{w as hh,n as ph,a as Ae,A as Dl,G as bj,H as xj,l as yh,t as ji,b as wt,p as Lo,s as _a,c as gh,q as jj,r as wj,u as Cj,v as kj,x as Pj,y as Sj,z as Nj,C as Oj,D as Aj,k as Ej,E as _j,F as Mj}from"./step-yuy0qJer.js";import{b as Tj,p as Ij}from"./band-CquvqAHh.js";import{d as Ma,n as Dj,e as Lj,f as Ro,g as Ir,h as Ll,a as Rl,i as bu,j as Bt,c as Rj,k as wi,l as $j,m as Bj}from"./linear-CwI45w2t.js";import{i as sr,a as qt}from"./init-Dmth1JHB.js";import{m as xu,a as ju,p as Fj,q as zj,u as Kj,s as Vj,r as Uj,v as qj,w as Wj,x as Hj,y as Gj,z as Xj,A as Yj,B as Zj,t as Jj}from"./time-Ckmi30gH.js";import{f as Qj,b as e0}from"./defaultLocale-DX6XiGOO.js";import{i as t0,o as r0}from"./ordinal-DILIJJjt.js";import{r as n0}from"./agentsOrgChartLayout-BMvyuaLA.js";import{S as a0}from"./shield-alert-DCfkjjYc.js";import{C as Lt,T as i0,a as s0}from"./ShadcnColorPicker-CsfgWpf6.js";import{v as o0}from"./projectDetection-G3XuxD2X.js";import{U as bh}from"./upload-EJc5PJPz.js";import"./vendor-xterm-BNq00GSj.js";import"./vendor-codemirror-jBKmHyH0.js";/**
1
+ import{r as f,j as s,g as nn,a as Dx,b as Al,c as Lx}from"./vendor-react-SZ_qB27O.js";import{c as yi,gX as Rx,dv as eh,L as El,q as gi,gY as bi,a8 as _l,gZ as Ml,af as th,g_ as fu,R as Gr,g$ as rh,dC as $x,aT as nh,aX as ah,br as Bx,am as Tl,cn as Il,co as Fx,h0 as zx,f as Kx,fa as Vx,h1 as qx,u as ih,h2 as Ux,h3 as Wx,bO as mu,h4 as vu,fA as Hx,h5 as Gx,aj as Xx,o as xi,G as Yx,h6 as us,h7 as Zx,h8 as Jx,h9 as Qx,ha as ej,hb as tj,hc as rj,dZ as sh,hd as oh,he as hu,bW as Aa,hf as To,hg as lh,hh as Io,al as ch,bP as uh,a4 as nj,cp as dh,dp as aj,J as Do,c1 as ij,P as Ea,fm as fh,hi as sj,hj as oj,I as lj,eu as pu,X as wa,D as cj,F as uj,an as yu,aK as dj,hk as gu,hl as fj,hm as mj,hn as vj,ho as hj,dx as pj}from"./index-D7eX7QJk.js";import{u as le}from"./vendor-i18n-GF3RlKbq.js";import{a as mh,b as vh,p as yj,w as gj}from"./vendor-reactflow-CnI7NMXG.js";import{w as hh,n as ph,a as Ae,A as Dl,G as bj,H as xj,l as yh,t as ji,b as kt,p as Lo,s as _a,c as gh,q as jj,r as wj,u as Cj,v as kj,x as Pj,y as Sj,z as Nj,C as Oj,D as Aj,k as Ej,E as _j,F as Mj}from"./step-yuy0qJer.js";import{b as Tj,p as Ij}from"./band-CquvqAHh.js";import{d as Ma,n as Dj,e as Lj,f as Ro,g as Ir,h as Ll,a as Rl,i as bu,j as Ft,c as Rj,k as wi,l as $j,m as Bj}from"./linear-CwI45w2t.js";import{i as sr,a as Ut}from"./init-Dmth1JHB.js";import{m as xu,a as ju,p as Fj,q as zj,u as Kj,s as Vj,r as qj,v as Uj,w as Wj,x as Hj,y as Gj,z as Xj,A as Yj,B as Zj,t as Jj}from"./time-Ckmi30gH.js";import{f as Qj,b as e0}from"./defaultLocale-DX6XiGOO.js";import{i as t0,o as r0}from"./ordinal-DILIJJjt.js";import{r as n0}from"./agentsOrgChartLayout-BMvyuaLA.js";import{S as a0}from"./shield-alert-BdAjnDkU.js";import{C as Rt,T as i0,a as s0}from"./ShadcnColorPicker-BcD5fZ_P.js";import{v as o0}from"./projectDetection-G3XuxD2X.js";import{U as bh}from"./upload-D9-yuO2D.js";import"./vendor-codemirror-jBKmHyH0.js";import"./vendor-xterm-BNq00GSj.js";/**
2
2
  * @license lucide-react v1.7.0 - ISC
3
3
  *
4
4
  * This source code is licensed under the ISC license.
@@ -18,10 +18,10 @@ import{r as f,j as s,g as nn,a as Dx,b as Al,c as Lx}from"./vendor-react-SZ_qB27
18
18
  *
19
19
  * This source code is licensed under the ISC license.
20
20
  * See the LICENSE file in the root directory of this source tree.
21
- */const v0=[["path",{d:"M12 20h.01",key:"zekei9"}],["path",{d:"M2 8.82a15 15 0 0 1 20 0",key:"dnpr2z"}],["path",{d:"M5 12.859a10 10 0 0 1 14 0",key:"1x1e6c"}],["path",{d:"M8.5 16.429a5 5 0 0 1 7 0",key:"1bycff"}]],h0=yi("wifi",v0);function p0(e=Ma){if(e===Ma)return xh;if(typeof e!="function")throw new TypeError("compare is not a function");return(t,r)=>{const n=e(t,r);return n||n===0?n:(e(r,r)===0)-(e(t,t)===0)}}function xh(e,t){return(e==null||!(e>=e))-(t==null||!(t>=t))||(e<t?-1:e>t?1:0)}function jh(e,t,r=0,n=1/0,a){if(t=Math.floor(t),r=Math.floor(Math.max(0,r)),n=Math.floor(Math.min(e.length-1,n)),!(r<=t&&t<=n))return e;for(a=a===void 0?xh:p0(a);n>r;){if(n-r>600){const c=n-r+1,d=t-r+1,u=Math.log(c),m=.5*Math.exp(2*u/3),h=.5*Math.sqrt(u*m*(c-m)/c)*(d-c/2<0?-1:1),v=Math.max(r,Math.floor(t-d*m/c+h)),y=Math.min(n,Math.floor(t+(c-d)*m/c+h));jh(e,t,v,y,a)}const i=e[t];let o=r,l=n;for(mn(e,r,t),a(e[n],i)>0&&mn(e,r,n);o<l;){for(mn(e,o,l),++o,--l;a(e[o],i)<0;)++o;for(;a(e[l],i)>0;)--l}a(e[r],i)===0?mn(e,r,l):(++l,mn(e,l,n)),l<=t&&(r=l+1),t<=l&&(n=l-1)}return e}function mn(e,t,r){const n=e[t];e[t]=e[r],e[r]=n}function y0(e,t,r){if(e=Float64Array.from(Dj(e)),!(!(n=e.length)||isNaN(t=+t))){if(t<=0||n<2)return xu(e);if(t>=1)return ju(e);var n,a=(n-1)*t,i=Math.floor(a),o=ju(jh(e,i).subarray(0,i+1)),l=xu(e.subarray(i+1));return o+(l-o)*(a-i)}}function g0(e,t,r=Lj){if(!(!(n=e.length)||isNaN(t=+t))){if(t<=0||n<2)return+r(e[0],0,e);if(t>=1)return+r(e[n-1],n-1,e);var n,a=(n-1)*t,i=Math.floor(a),o=+r(e[i],i,e),l=+r(e[i+1],i+1,e);return o+(l-o)*(a-i)}}function wh(e){var t;function r(n){return n==null||isNaN(n=+n)?t:n}return r.invert=r,r.domain=r.range=function(n){return arguments.length?(e=Array.from(n,Ro),r):e.slice()},r.unknown=function(n){return arguments.length?(t=n,r):t},r.copy=function(){return wh(e).unknown(t)},e=arguments.length?Array.from(e,Ro):[0,1],Ir(r)}function wu(e){return Math.log(e)}function Cu(e){return Math.exp(e)}function b0(e){return-Math.log(-e)}function x0(e){return-Math.exp(-e)}function j0(e){return isFinite(e)?+("1e"+e):e<0?0:e}function w0(e){return e===10?j0:e===Math.E?Math.exp:t=>Math.pow(e,t)}function C0(e){return e===Math.E?Math.log:e===10&&Math.log10||e===2&&Math.log2||(e=Math.log(e),t=>Math.log(t)/e)}function ku(e){return(t,r)=>-e(-t,r)}function $l(e){const t=e(wu,Cu),r=t.domain;let n=10,a,i;function o(){return a=C0(n),i=w0(n),r()[0]<0?(a=ku(a),i=ku(i),e(b0,x0)):e(wu,Cu),t}return t.base=function(l){return arguments.length?(n=+l,o()):n},t.domain=function(l){return arguments.length?(r(l),o()):r()},t.ticks=l=>{const c=r();let d=c[0],u=c[c.length-1];const m=u<d;m&&([d,u]=[u,d]);let h=a(d),v=a(u),y,g;const p=l==null?10:+l;let b=[];if(!(n%1)&&v-h<p){if(h=Math.floor(h),v=Math.ceil(v),d>0){for(;h<=v;++h)for(y=1;y<n;++y)if(g=h<0?y/i(-h):y*i(h),!(g<d)){if(g>u)break;b.push(g)}}else for(;h<=v;++h)for(y=n-1;y>=1;--y)if(g=h>0?y/i(-h):y*i(h),!(g<d)){if(g>u)break;b.push(g)}b.length*2<p&&(b=bu(d,u,p))}else b=bu(h,v,Math.min(v-h,p)).map(i);return m?b.reverse():b},t.tickFormat=(l,c)=>{if(l==null&&(l=10),c==null&&(c=n===10?"s":","),typeof c!="function"&&(!(n%1)&&(c=Qj(c)).precision==null&&(c.trim=!0),c=e0(c)),l===1/0)return c;const d=Math.max(1,n*l/t.ticks().length);return u=>{let m=u/i(Math.round(a(u)));return m*n<n-.5&&(m*=n),m<=d?c(u):""}},t.nice=()=>r(Fj(r(),{floor:l=>i(Math.floor(a(l))),ceil:l=>i(Math.ceil(a(l)))})),t}function Ch(){const e=$l(Ll()).domain([1,10]);return e.copy=()=>Rl(e,Ch()).base(e.base()),sr.apply(e,arguments),e}function Pu(e){return function(t){return Math.sign(t)*Math.log1p(Math.abs(t/e))}}function Su(e){return function(t){return Math.sign(t)*Math.expm1(Math.abs(t))*e}}function Bl(e){var t=1,r=e(Pu(t),Su(t));return r.constant=function(n){return arguments.length?e(Pu(t=+n),Su(t)):t},Ir(r)}function kh(){var e=Bl(Ll());return e.copy=function(){return Rl(e,kh()).constant(e.constant())},sr.apply(e,arguments)}function Nu(e){return function(t){return t<0?-Math.pow(-t,e):Math.pow(t,e)}}function k0(e){return e<0?-Math.sqrt(-e):Math.sqrt(e)}function P0(e){return e<0?-e*e:e*e}function Fl(e){var t=e(Bt,Bt),r=1;function n(){return r===1?e(Bt,Bt):r===.5?e(k0,P0):e(Nu(r),Nu(1/r))}return t.exponent=function(a){return arguments.length?(r=+a,n()):r},Ir(t)}function zl(){var e=Fl(Ll());return e.copy=function(){return Rl(e,zl()).exponent(e.exponent())},sr.apply(e,arguments),e}function S0(){return zl.apply(null,arguments).exponent(.5)}function Ou(e){return Math.sign(e)*e*e}function N0(e){return Math.sign(e)*Math.sqrt(Math.abs(e))}function Ph(){var e=Rj(),t=[0,1],r=!1,n;function a(i){var o=N0(e(i));return isNaN(o)?n:r?Math.round(o):o}return a.invert=function(i){return e.invert(Ou(i))},a.domain=function(i){return arguments.length?(e.domain(i),a):e.domain()},a.range=function(i){return arguments.length?(e.range((t=Array.from(i,Ro)).map(Ou)),a):t.slice()},a.rangeRound=function(i){return a.range(i).round(!0)},a.round=function(i){return arguments.length?(r=!!i,a):r},a.clamp=function(i){return arguments.length?(e.clamp(i),a):e.clamp()},a.unknown=function(i){return arguments.length?(n=i,a):n},a.copy=function(){return Ph(e.domain(),t).round(r).clamp(e.clamp()).unknown(n)},sr.apply(a,arguments),Ir(a)}function Sh(){var e=[],t=[],r=[],n;function a(){var o=0,l=Math.max(1,t.length);for(r=new Array(l-1);++o<l;)r[o-1]=g0(e,o/l);return i}function i(o){return o==null||isNaN(o=+o)?n:t[wi(r,o)]}return i.invertExtent=function(o){var l=t.indexOf(o);return l<0?[NaN,NaN]:[l>0?r[l-1]:e[0],l<r.length?r[l]:e[e.length-1]]},i.domain=function(o){if(!arguments.length)return e.slice();e=[];for(let l of o)l!=null&&!isNaN(l=+l)&&e.push(l);return e.sort(Ma),a()},i.range=function(o){return arguments.length?(t=Array.from(o),a()):t.slice()},i.unknown=function(o){return arguments.length?(n=o,i):n},i.quantiles=function(){return r.slice()},i.copy=function(){return Sh().domain(e).range(t).unknown(n)},sr.apply(i,arguments)}function Nh(){var e=0,t=1,r=1,n=[.5],a=[0,1],i;function o(c){return c!=null&&c<=c?a[wi(n,c,0,r)]:i}function l(){var c=-1;for(n=new Array(r);++c<r;)n[c]=((c+1)*t-(c-r)*e)/(r+1);return o}return o.domain=function(c){return arguments.length?([e,t]=c,e=+e,t=+t,l()):[e,t]},o.range=function(c){return arguments.length?(r=(a=Array.from(c)).length-1,l()):a.slice()},o.invertExtent=function(c){var d=a.indexOf(c);return d<0?[NaN,NaN]:d<1?[e,n[0]]:d>=r?[n[r-1],t]:[n[d-1],n[d]]},o.unknown=function(c){return arguments.length&&(i=c),o},o.thresholds=function(){return n.slice()},o.copy=function(){return Nh().domain([e,t]).range(a).unknown(i)},sr.apply(Ir(o),arguments)}function Oh(){var e=[.5],t=[0,1],r,n=1;function a(i){return i!=null&&i<=i?t[wi(e,i,0,n)]:r}return a.domain=function(i){return arguments.length?(e=Array.from(i),n=Math.min(e.length,t.length-1),a):e.slice()},a.range=function(i){return arguments.length?(t=Array.from(i),n=Math.min(e.length,t.length-1),a):t.slice()},a.invertExtent=function(i){var o=t.indexOf(i);return[e[o-1],e[o]]},a.unknown=function(i){return arguments.length?(r=i,a):r},a.copy=function(){return Oh().domain(e).range(t).unknown(r)},sr.apply(a,arguments)}function O0(){return sr.apply(zj(Zj,Yj,Xj,Gj,Hj,Wj,qj,Uj,Vj,Kj).domain([Date.UTC(2e3,0,1),Date.UTC(2e3,0,2)]),arguments)}function Ci(){var e=0,t=1,r,n,a,i,o=Bt,l=!1,c;function d(m){return m==null||isNaN(m=+m)?c:o(a===0?.5:(m=(i(m)-r)*a,l?Math.max(0,Math.min(1,m)):m))}d.domain=function(m){return arguments.length?([e,t]=m,r=i(e=+e),n=i(t=+t),a=r===n?0:1/(n-r),d):[e,t]},d.clamp=function(m){return arguments.length?(l=!!m,d):l},d.interpolator=function(m){return arguments.length?(o=m,d):o};function u(m){return function(h){var v,y;return arguments.length?([v,y]=h,o=m(v,y),d):[o(0),o(1)]}}return d.range=u(mh),d.rangeRound=u(vh),d.unknown=function(m){return arguments.length?(c=m,d):c},function(m){return i=m,r=m(e),n=m(t),a=r===n?0:1/(n-r),d}}function or(e,t){return t.domain(e.domain()).interpolator(e.interpolator()).clamp(e.clamp()).unknown(e.unknown())}function Ah(){var e=Ir(Ci()(Bt));return e.copy=function(){return or(e,Ah())},qt.apply(e,arguments)}function Eh(){var e=$l(Ci()).domain([1,10]);return e.copy=function(){return or(e,Eh()).base(e.base())},qt.apply(e,arguments)}function _h(){var e=Bl(Ci());return e.copy=function(){return or(e,_h()).constant(e.constant())},qt.apply(e,arguments)}function Kl(){var e=Fl(Ci());return e.copy=function(){return or(e,Kl()).exponent(e.exponent())},qt.apply(e,arguments)}function A0(){return Kl.apply(null,arguments).exponent(.5)}function Mh(){var e=[],t=Bt;function r(n){if(n!=null&&!isNaN(n=+n))return t((wi(e,n,1)-1)/(e.length-1))}return r.domain=function(n){if(!arguments.length)return e.slice();e=[];for(let a of n)a!=null&&!isNaN(a=+a)&&e.push(a);return e.sort(Ma),r},r.interpolator=function(n){return arguments.length?(t=n,r):t},r.range=function(){return e.map((n,a)=>t(a/(e.length-1)))},r.quantiles=function(n){return Array.from({length:n+1},(a,i)=>y0(e,i/n))},r.copy=function(){return Mh(t).domain(e)},qt.apply(r,arguments)}function ki(){var e=0,t=.5,r=1,n=1,a,i,o,l,c,d=Bt,u,m=!1,h;function v(g){return isNaN(g=+g)?h:(g=.5+((g=+u(g))-i)*(n*g<n*i?l:c),d(m?Math.max(0,Math.min(1,g)):g))}v.domain=function(g){return arguments.length?([e,t,r]=g,a=u(e=+e),i=u(t=+t),o=u(r=+r),l=a===i?0:.5/(i-a),c=i===o?0:.5/(o-i),n=i<a?-1:1,v):[e,t,r]},v.clamp=function(g){return arguments.length?(m=!!g,v):m},v.interpolator=function(g){return arguments.length?(d=g,v):d};function y(g){return function(p){var b,j,x;return arguments.length?([b,j,x]=p,d=yj(g,[b,j,x]),v):[d(0),d(.5),d(1)]}}return v.range=y(mh),v.rangeRound=y(vh),v.unknown=function(g){return arguments.length?(h=g,v):h},function(g){return u=g,a=g(e),i=g(t),o=g(r),l=a===i?0:.5/(i-a),c=i===o?0:.5/(o-i),n=i<a?-1:1,v}}function Th(){var e=Ir(ki()(Bt));return e.copy=function(){return or(e,Th())},qt.apply(e,arguments)}function Ih(){var e=$l(ki()).domain([.1,1,10]);return e.copy=function(){return or(e,Ih()).base(e.base())},qt.apply(e,arguments)}function Dh(){var e=Bl(ki());return e.copy=function(){return or(e,Dh()).constant(e.constant())},qt.apply(e,arguments)}function Vl(){var e=Fl(ki());return e.copy=function(){return or(e,Vl()).exponent(e.exponent())},qt.apply(e,arguments)}function E0(){return Vl.apply(null,arguments).exponent(.5)}function aa(e,t,r){var n=null,a=Ae(!0),i=null,o=Dl,l=null,c=hh(d);e=typeof e=="function"?e:e===void 0?bj:Ae(+e),t=typeof t=="function"?t:t===void 0?Ae(0):Ae(+t),r=typeof r=="function"?r:r===void 0?xj:Ae(+r);function d(m){var h,v,y,g=(m=ph(m)).length,p,b=!1,j,x=new Array(g),C=new Array(g);for(i==null&&(l=o(j=c())),h=0;h<=g;++h){if(!(h<g&&a(p=m[h],h,m))===b)if(b=!b)v=h,l.areaStart(),l.lineStart();else{for(l.lineEnd(),l.lineStart(),y=h-1;y>=v;--y)l.point(x[y],C[y]);l.lineEnd(),l.areaEnd()}b&&(x[h]=+e(p,h,m),C[h]=+t(p,h,m),l.point(n?+n(p,h,m):x[h],r?+r(p,h,m):C[h]))}if(j)return l=null,j+""||null}function u(){return yh().defined(a).curve(o).context(i)}return d.x=function(m){return arguments.length?(e=typeof m=="function"?m:Ae(+m),n=null,d):e},d.x0=function(m){return arguments.length?(e=typeof m=="function"?m:Ae(+m),d):e},d.x1=function(m){return arguments.length?(n=m==null?null:typeof m=="function"?m:Ae(+m),d):n},d.y=function(m){return arguments.length?(t=typeof m=="function"?m:Ae(+m),r=null,d):t},d.y0=function(m){return arguments.length?(t=typeof m=="function"?m:Ae(+m),d):t},d.y1=function(m){return arguments.length?(r=m==null?null:typeof m=="function"?m:Ae(+m),d):r},d.lineX0=d.lineY0=function(){return u().x(e).y(t)},d.lineY1=function(){return u().x(e).y(r)},d.lineX1=function(){return u().x(n).y(t)},d.defined=function(m){return arguments.length?(a=typeof m=="function"?m:Ae(!!m),d):a},d.curve=function(m){return arguments.length?(o=m,i!=null&&(l=o(i)),d):o},d.context=function(m){return arguments.length?(m==null?i=l=null:l=o(i=m),d):i},d}const Ul={draw(e,t){const r=wt(t/Lo);e.moveTo(r,0),e.arc(0,0,r,0,ji)}},_0={draw(e,t){const r=wt(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()}},Lh=wt(1/3),M0=Lh*2,T0={draw(e,t){const r=wt(t/M0),n=r*Lh;e.moveTo(0,-r),e.lineTo(n,0),e.lineTo(0,r),e.lineTo(-n,0),e.closePath()}},I0={draw(e,t){const r=wt(t),n=-r/2;e.rect(n,n,r,r)}},D0=.8908130915292852,Rh=_a(Lo/10)/_a(7*Lo/10),L0=_a(ji/10)*Rh,R0=-gh(ji/10)*Rh,$0={draw(e,t){const r=wt(t*D0),n=L0*r,a=R0*r;e.moveTo(0,-r),e.lineTo(n,a);for(let i=1;i<5;++i){const o=ji*i/5,l=gh(o),c=_a(o);e.lineTo(c*r,-l*r),e.lineTo(l*n-c*a,c*n+l*a)}e.closePath()}},ds=wt(3),B0={draw(e,t){const r=-wt(t/(ds*3));e.moveTo(0,r*2),e.lineTo(-ds*r,-r),e.lineTo(ds*r,-r),e.closePath()}},ft=-.5,mt=wt(3)/2,$o=1/wt(12),F0=($o/2+1)*3,z0={draw(e,t){const r=wt(t/F0),n=r/2,a=r*$o,i=n,o=r*$o+r,l=-i,c=o;e.moveTo(n,a),e.lineTo(i,o),e.lineTo(l,c),e.lineTo(ft*n-mt*a,mt*n+ft*a),e.lineTo(ft*i-mt*o,mt*i+ft*o),e.lineTo(ft*l-mt*c,mt*l+ft*c),e.lineTo(ft*n+mt*a,ft*a-mt*n),e.lineTo(ft*i+mt*o,ft*o-mt*i),e.lineTo(ft*l+mt*c,ft*c-mt*l),e.closePath()}};function K0(e,t){let r=null,n=hh(a);e=typeof e=="function"?e:Ae(e||Ul),t=typeof t=="function"?t:Ae(t===void 0?64:+t);function a(){let i;if(r||(r=i=n()),e.apply(this,arguments).draw(r,+t.apply(this,arguments)),i)return r=null,i+""||null}return a.type=function(i){return arguments.length?(e=typeof i=="function"?i:Ae(i),a):e},a.size=function(i){return arguments.length?(t=typeof i=="function"?i:Ae(+i),a):t},a.context=function(i){return arguments.length?(r=i??null,a):r},a}function Pr(e,t){if((o=e.length)>1)for(var r=1,n,a,i=e[t[0]],o,l=i.length;r<o;++r)for(a=i,i=e[t[r]],n=0;n<l;++n)i[n][1]+=i[n][0]=isNaN(a[n][1])?a[n][0]:a[n][1]}function Bo(e){for(var t=e.length,r=new Array(t);--t>=0;)r[t]=t;return r}function V0(e,t){return e[t]}function U0(e){const t=[];return t.key=e,t}function q0(){var e=Ae([]),t=Bo,r=Pr,n=V0;function a(i){var o=Array.from(e.apply(this,arguments),U0),l,c=o.length,d=-1,u;for(const m of i)for(l=0,++d;l<c;++l)(o[l][d]=[0,+n(m,o[l].key,d,i)]).data=m;for(l=0,u=ph(t(o));l<c;++l)o[u[l]].index=l;return r(o,u),o}return a.keys=function(i){return arguments.length?(e=typeof i=="function"?i:Ae(Array.from(i)),a):e},a.value=function(i){return arguments.length?(n=typeof i=="function"?i:Ae(+i),a):n},a.order=function(i){return arguments.length?(t=i==null?Bo:typeof i=="function"?i:Ae(Array.from(i)),a):t},a.offset=function(i){return arguments.length?(r=i??Pr,a):r},a}function W0(e,t){if((n=e.length)>0){for(var r,n,a=0,i=e[0].length,o;a<i;++a){for(o=r=0;r<n;++r)o+=e[r][a][1]||0;if(o)for(r=0;r<n;++r)e[r][a][1]/=o}Pr(e,t)}}function H0(e,t){if((a=e.length)>0){for(var r=0,n=e[t[0]],a,i=n.length;r<i;++r){for(var o=0,l=0;o<a;++o)l+=e[o][r][1]||0;n[r][1]+=n[r][0]=-l/2}Pr(e,t)}}function G0(e,t){if(!(!((o=e.length)>0)||!((i=(a=e[t[0]]).length)>0))){for(var r=0,n=1,a,i,o;n<i;++n){for(var l=0,c=0,d=0;l<o;++l){for(var u=e[t[l]],m=u[n][1]||0,h=u[n-1][1]||0,v=(m-h)/2,y=0;y<l;++y){var g=e[t[y]],p=g[n][1]||0,b=g[n-1][1]||0;v+=p-b}c+=m,d+=v*m}a[n-1][1]+=a[n-1][0]=r,c&&(r-=d/c)}a[n-1][1]+=a[n-1][0]=r,Pr(e,t)}}function $h(e){return[{id:"24h",label:e("commandCenter.range.last24h","Last 24h"),days:1},{id:"7d",label:e("commandCenter.range.last7d","Last 7 days"),days:7},{id:"30d",label:e("commandCenter.range.last30d","Last 30 days"),days:30},{id:"all",label:e("commandCenter.range.allTime","All time"),days:null}]}function Bh(e){return e.days===null?{from:null,to:new Date(Date.now()).toISOString(),preset:e.id}:{from:new Date(Date.now()-e.days*864e5).toISOString().slice(0,10),to:null,preset:e.id}}function X0({value:e,onChange:t,presets:r}){const{t:n}=le("app"),a=r??$h(n),[i,o]=f.useState(!1),[l,c]=f.useState(null),d=f.useRef(null),u=f.useRef(null),m=f.useCallback(()=>{o(!1),d.current?.focus()},[]);f.useEffect(()=>{if(!i)return;const y=p=>{p.key==="Escape"&&m()},g=p=>{u.current&&!u.current.contains(p.target)&&d.current&&!d.current.contains(p.target)&&o(!1)};return document.addEventListener("keydown",y),document.addEventListener("pointerdown",g),()=>{document.removeEventListener("keydown",y),document.removeEventListener("pointerdown",g)}},[i,m]);const h=a.find(y=>y.id===e.preset)?.label??n("commandCenter.range.custom","Custom range"),v=f.useCallback((y,g)=>{if(y&&g&&y>g){c(n("commandCenter.range.invalidRange","Start date must be on or before end date"));return}c(null),t({from:y,to:g,preset:"custom"})},[t,n]);return s.jsxs("div",{className:"cc-date-range",children:[s.jsxs("button",{ref:d,type:"button",className:"btn btn-sm cc-date-range-trigger",onClick:()=>o(y=>!y),"aria-haspopup":"dialog","aria-expanded":i,"data-testid":"cc-date-range-trigger",children:[s.jsx(Rx,{size:14}),s.jsx("span",{children:h})]}),i?s.jsxs("div",{ref:u,className:"cc-date-range-popover",role:"dialog","aria-label":n("commandCenter.range.dialogLabel","Select date range"),"data-testid":"cc-date-range-popover",children:[s.jsx("div",{className:"cc-date-range-presets",children:a.map(y=>s.jsx("button",{type:"button",className:`btn btn-sm${e.preset===y.id?" active":""}`,onClick:()=>{t(Bh(y)),m()},"data-testid":`cc-date-range-preset-${y.id}`,children:y.label},y.id))}),s.jsxs("div",{className:"cc-date-range-custom",children:[s.jsxs("label",{className:"cc-date-range-field",children:[s.jsx("span",{children:n("commandCenter.range.from","From")}),s.jsx("input",{type:"date",value:e.from??"",onChange:y=>v(y.target.value||null,e.to),"data-testid":"cc-date-range-from"})]}),s.jsxs("label",{className:"cc-date-range-field",children:[s.jsx("span",{children:n("commandCenter.range.to","To")}),s.jsx("input",{type:"date",value:e.to?.slice(0,10)??"",onChange:y=>v(e.from,y.target.value||null),"data-testid":"cc-date-range-to"})]}),l?s.jsx("div",{className:"form-error",role:"alert","data-testid":"cc-date-range-error",children:l}):null]})]}):null]})}function Au(e){return Object.prototype.hasOwnProperty.call(e,"iconProvider")}function Y0(e,t){if(!Number.isFinite(e)||e<=0)return 0;const r=Number.isFinite(t)&&t>0?t:1;return Math.max(0,Math.min(100,e/r*100))}function Ze({data:e,max:t,ariaLabel:r}){const n=t??e.reduce((a,i)=>i.value>a?i.value:a,0);return s.jsx("ul",{className:"cc-bar-chart",role:"list","aria-label":r,children:e.map((a,i)=>{const o=Y0(a.value,n),l=a.valueLabel??String(Number.isFinite(a.value)?a.value:0),c=a.label,d=a.iconProvider&&a.iconProvider!==c?`${a.iconProvider} ${c}`:c,u=Au(a)?d:c;return s.jsxs("li",{className:"cc-bar-row",children:[s.jsxs("span",{className:"cc-bar-label",children:[Au(a)?s.jsx(eh,{provider:a.iconProvider??"",size:"sm"}):null,s.jsx("span",{className:"cc-bar-label-text",children:a.label})]}),s.jsx("div",{className:"cc-bar-track",children:s.jsx("div",{className:"cc-bar-fill",style:{width:`${o}%`},role:"img","aria-label":`${u}: ${l}`})}),s.jsx("span",{className:"cc-bar-value",children:l})]},`${u}-${a.value}-${i}`)})})}function Z0(e){const t=new URLSearchParams;e.from&&t.set("from",e.from),e.to&&t.set("to",e.to);const r=t.toString();return r?`?${r}`:""}function K(e){return Number.isFinite(e)?Math.round(e).toLocaleString():"0"}function Eu(e){if(e===null||!Number.isFinite(e))return"";const t=Math.max(0,Math.round(e/1e3)),r=Math.floor(t/3600),n=Math.floor(t%3600/60),a=t%60;return r>0?n>0?`${r}h ${n}m`:`${r}h`:n>0?a>0?`${n}m ${a}s`:`${n}m`:`${a}s`}function Sr(e,t){return t||e===null||!Number.isFinite(e)?"—":`$${e.toLocaleString(void 0,{minimumFractionDigits:2,maximumFractionDigits:2})}`}function Fh(e){return!!(e.from&&e.to&&e.from>e.to)}function J0(e,t){if(!Number.isFinite(e)||e<=0)return 0;const r=Number.isFinite(t)&&t>0?t:1;return Math.max(0,Math.min(100,e/r*100))}function Q0({points:e,ariaLabel:t}){const r=e.reduce((n,a)=>a.totalTokens>n?a.totalTokens:n,0);return s.jsxs("div",{className:"cc-token-series",role:"img","aria-label":t,"data-testid":"cc-token-series-chart",children:[s.jsx("div",{className:"cc-token-series-plot",children:e.length===0?s.jsx("div",{className:"cc-token-series-empty","aria-hidden":"true","data-testid":"cc-token-series-empty"}):e.map((n,a)=>{const i=J0(n.totalTokens,r),o=`${n.bucket}: ${K(n.totalTokens)}`;return s.jsx("span",{className:"cc-token-series-bar",style:{height:`${i}%`},"aria-label":o,title:o},a)})}),s.jsxs("div",{className:"cc-token-series-axis","aria-hidden":"true",children:[s.jsx("span",{children:e[0]?.bucket??"—"}),s.jsx("span",{children:e.at(-1)?.bucket??"—"})]})]})}function zh(e){var t,r,n="";if(typeof e=="string"||typeof e=="number")n+=e;else if(typeof e=="object")if(Array.isArray(e)){var a=e.length;for(t=0;t<a;t++)e[t]&&(r=zh(e[t]))&&(n&&(n+=" "),n+=r)}else for(r in e)e[r]&&(n&&(n+=" "),n+=r);return n}function de(){for(var e,t,r=0,n="",a=arguments.length;r<a;r++)(e=arguments[r])&&(t=zh(e))&&(n&&(n+=" "),n+=t);return n}var ew=["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 ql(e){if(typeof e!="string")return!1;var t=ew;return t.includes(e)}var tw=["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"],rw=new Set(tw);function Kh(e){return typeof e!="string"?!1:rw.has(e)}function Vh(e){return typeof e=="string"&&e.startsWith("data-")}function yt(e){if(typeof e!="object"||e===null)return{};var t={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&(Kh(r)||Vh(r))&&(t[r]=e[r]);return t}function Xr(e){if(e==null)return null;if(f.isValidElement(e)&&typeof e.props=="object"&&e.props!==null){var t=e.props;return yt(t)}return typeof e=="object"&&!Array.isArray(e)?yt(e):null}function Je(e){var t={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&(Kh(r)||Vh(r)||ql(r))&&(t[r]=e[r]);return t}function nw(e){return e==null?null:f.isValidElement(e)?Je(e.props):typeof e=="object"&&!Array.isArray(e)?Je(e):null}var aw=["children","width","height","viewBox","className","style","title","desc"];function Fo(){return Fo=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)({}).hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},Fo.apply(null,arguments)}function iw(e,t){if(e==null)return{};var r,n,a=sw(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)===-1&&{}.propertyIsEnumerable.call(e,r)&&(a[r]=e[r])}return a}function sw(e,t){if(e==null)return{};var r={};for(var n in e)if({}.hasOwnProperty.call(e,n)){if(t.indexOf(n)!==-1)continue;r[n]=e[n]}return r}var Wl=f.forwardRef((e,t)=>{var{children:r,width:n,height:a,viewBox:i,className:o,style:l,title:c,desc:d}=e,u=iw(e,aw),m=i||{width:n,height:a,x:0,y:0},h=de("recharts-surface",o);return f.createElement("svg",Fo({},Je(u),{className:h,width:n,height:a,style:l,viewBox:"".concat(m.x," ").concat(m.y," ").concat(m.width," ").concat(m.height),ref:t}),f.createElement("title",null,c),f.createElement("desc",null,d),r)}),ow=["children","className"];function zo(){return zo=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)({}).hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},zo.apply(null,arguments)}function lw(e,t){if(e==null)return{};var r,n,a=cw(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)===-1&&{}.propertyIsEnumerable.call(e,r)&&(a[r]=e[r])}return a}function cw(e,t){if(e==null)return{};var r={};for(var n in e)if({}.hasOwnProperty.call(e,n)){if(t.indexOf(n)!==-1)continue;r[n]=e[n]}return r}var Qe=f.forwardRef((e,t)=>{var{children:r,className:n}=e,a=lw(e,ow),i=de("recharts-layer",n);return f.createElement("g",zo({className:i},Je(a),{ref:t}),r)}),Uh=f.createContext(null),uw=()=>f.useContext(Uh),fs={},ms={},_u;function dw(){return _u||(_u=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(r){return r==="__proto__"}e.isUnsafeProperty=t})(ms)),ms}var vs={},Mu;function qh(){return Mu||(Mu=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})(vs)),vs}var hs={},Tu;function Hl(){return Tu||(Tu=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(r){return typeof r=="string"||typeof r=="symbol"?r:Object.is(r?.valueOf?.(),-0)?"-0":String(r)}e.toKey=t})(hs)),hs}var ps={},ys={},Iu;function fw(){return Iu||(Iu=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 n=String(r);return n==="0"&&Object.is(Number(r),-0)?"-0":n}e.toString=t})(ys)),ys}var Du;function Gl(){return Du||(Du=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=fw(),r=Hl();function n(a){if(Array.isArray(a))return a.map(r.toKey);if(typeof a=="symbol")return[a];a=t.toString(a);const i=[],o=a.length;if(o===0)return i;let l=0,c="",d="",u=!1;for(a.charCodeAt(0)===46&&(i.push(""),l++);l<o;){const m=a[l];d?m==="\\"&&l+1<o?(l++,c+=a[l]):m===d?d="":c+=m:u?m==='"'||m==="'"?d=m:m==="]"?(u=!1,i.push(c),c=""):c+=m:m==="["?(u=!0,c&&(i.push(c),c="")):m==="."?c&&(i.push(c),c=""):c+=m,l++}return c&&i.push(c),i}e.toPath=n})(ps)),ps}var Lu;function Xl(){return Lu||(Lu=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=dw(),r=qh(),n=Hl(),a=Gl();function i(l,c,d){if(l==null)return d;switch(typeof c){case"string":{if(t.isUnsafeProperty(c))return d;const u=l[c];return u===void 0?r.isDeepKey(c)?i(l,a.toPath(c),d):d:u}case"number":case"symbol":{typeof c=="number"&&(c=n.toKey(c));const u=l[c];return u===void 0?d:u}default:{if(Array.isArray(c))return o(l,c,d);if(Object.is(c?.valueOf(),-0)?c="-0":c=String(c),t.isUnsafeProperty(c))return d;const u=l[c];return u===void 0?d:u}}}function o(l,c,d){if(c.length===0)return d;let u=l;for(let m=0;m<c.length;m++){if(u==null||t.isUnsafeProperty(c[m]))return d;u=u[c[m]]}return u===void 0?d:u}e.get=i})(fs)),fs}var gs,Ru;function mw(){return Ru||(Ru=1,gs=Xl().get),gs}var vw=mw();const Nr=nn(vw);var hw=4;function nr(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:hw,r=10**t,n=Math.round(e*r)/r;return Object.is(n,-0)?0:n}function Ne(e){for(var t=arguments.length,r=new Array(t>1?t-1:0),n=1;n<t;n++)r[n-1]=arguments[n];return e.reduce((a,i,o)=>{var l=r[o-1];return typeof l=="string"?a+l+i:l!==void 0?a+nr(l)+i:a+i},"")}var He=e=>e===0?0:e>0?1:-1,Vt=e=>typeof e=="number"&&e!=+e,Ko=e=>typeof e=="string"&&e.indexOf("%")===e.length-1,Z=e=>(typeof e=="number"||e instanceof Number)&&!Vt(e),Mt=e=>Z(e)||typeof e=="string",pw=0,An=e=>{var t=++pw;return"".concat(e||"").concat(t)},ot=function(t,r){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0,a=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1;if(!Z(t)&&typeof t!="string")return n;var i;if(Ko(t)){if(r==null)return n;var o=t.indexOf("%");i=r*parseFloat(t.slice(0,o))/100}else i=+t;return Vt(i)&&(i=n),a&&r!=null&&i>r&&(i=r),i},Wh=e=>{if(!Array.isArray(e))return!1;for(var t=e.length,r={},n=0;n<t;n++)if(!r[String(e[n])])r[String(e[n])]=!0;else return!0;return!1};function We(e,t,r){return Z(e)&&Z(t)?nr(e+r*(t-e)):t}function Hh(e,t,r){if(!(!e||!e.length))return e.find(n=>n&&(typeof t=="function"?t(n):Nr(n,t))===r)}var De=e=>e===null||typeof e>"u",zn=e=>De(e)?e:"".concat(e.charAt(0).toUpperCase()).concat(e.slice(1));function tt(e){return e!=null}function Kn(){}var yw=["type","size","sizeType"];function Vo(){return Vo=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)({}).hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},Vo.apply(null,arguments)}function $u(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),r.push.apply(r,n)}return r}function Bu(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?$u(Object(r),!0).forEach(function(n){gw(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):$u(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function gw(e,t,r){return(t=bw(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function bw(e){var t=xw(e,"string");return typeof t=="symbol"?t:t+""}function xw(e,t){if(typeof e!="object"||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var n=r.call(e,t);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function jw(e,t){if(e==null)return{};var r,n,a=ww(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)===-1&&{}.propertyIsEnumerable.call(e,r)&&(a[r]=e[r])}return a}function ww(e,t){if(e==null)return{};var r={};for(var n in e)if({}.hasOwnProperty.call(e,n)){if(t.indexOf(n)!==-1)continue;r[n]=e[n]}return r}var Gh={symbolCircle:Ul,symbolCross:_0,symbolDiamond:T0,symbolSquare:I0,symbolStar:$0,symbolTriangle:B0,symbolWye:z0},Cw=Math.PI/180,kw=e=>{var t="symbol".concat(zn(e));return Gh[t]||Ul},Pw=(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 n=18*Cw;return 1.25*e*e*(Math.tan(n)-Math.tan(n*2)*Math.tan(n)**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}},Sw=(e,t)=>{Gh["symbol".concat(zn(e))]=t},Yl=e=>{var{type:t="circle",size:r=64,sizeType:n="area"}=e,a=jw(e,yw),i=Bu(Bu({},a),{},{type:t,size:r,sizeType:n}),o="circle";typeof t=="string"&&(o=t);var l=()=>{var h=kw(o),v=K0().type(h).size(Pw(r,n,o)),y=v();if(y!==null)return y},{className:c,cx:d,cy:u}=i,m=Je(i);return Z(d)&&Z(u)&&Z(r)?f.createElement("path",Vo({},m,{className:de("recharts-symbols",c),transform:"translate(".concat(d,", ").concat(u,")"),d:l()})):null};Yl.registerSymbol=Sw;var Xh=e=>"radius"in e&&"startAngle"in e&&"endAngle"in e,Zl=(e,t)=>{if(!e||typeof e=="function"||typeof e=="boolean")return null;var r=e;if(f.isValidElement(e)&&(r=e.props),typeof r!="object"&&typeof r!="function")return null;var n={};return Object.keys(r).forEach(a=>{ql(a)&&typeof r[a]=="function"&&(n[a]=(i=>r[a](r,i)))}),n},Nw=(e,t,r)=>n=>(e(t,r,n),null),Jl=(e,t,r)=>{if(e===null||typeof e!="object"&&typeof e!="function")return null;var n=null;return Object.keys(e).forEach(a=>{var i=e[a];ql(a)&&typeof i=="function"&&(n||(n={}),n[a]=Nw(i,t,r))}),n};function Fu(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),r.push.apply(r,n)}return r}function Ow(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?Fu(Object(r),!0).forEach(function(n){Aw(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):Fu(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function Aw(e,t,r){return(t=Ew(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function Ew(e){var t=_w(e,"string");return typeof t=="symbol"?t:t+""}function _w(e,t){if(typeof e!="object"||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var n=r.call(e,t);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function Le(e,t){var r=Ow({},e),n=t,a=Object.keys(t),i=a.reduce((o,l)=>(o[l]===void 0&&n[l]!==void 0&&(o[l]=n[l]),o),r);return i}function Ta(){return Ta=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)({}).hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},Ta.apply(null,arguments)}function zu(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),r.push.apply(r,n)}return r}function Yh(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?zu(Object(r),!0).forEach(function(n){Mw(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):zu(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function Mw(e,t,r){return(t=Tw(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function Tw(e){var t=Iw(e,"string");return typeof t=="symbol"?t:t+""}function Iw(e,t){if(typeof e!="object"||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var n=r.call(e,t);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}var ht=32,Dw={align:"center",iconSize:14,inactiveColor:"#ccc",layout:"horizontal",verticalAlign:"middle",labelStyle:{}};function Lw(e){if(typeof e=="object"&&e!==null&&"strokeDasharray"in e)return String(e.strokeDasharray)}function Rw(e){var{data:t,iconType:r,inactiveColor:n}=e,a=ht/2,i=ht/6,o=ht/3,l=t.inactive?n:t.color,c=r??t.type;if(c==="none")return null;if(c==="plainline")return f.createElement("line",{strokeWidth:4,fill:"none",stroke:l,strokeDasharray:Lw(t.payload),x1:0,y1:a,x2:ht,y2:a,className:"recharts-legend-icon"});if(c==="line")return f.createElement("path",{strokeWidth:4,fill:"none",stroke:l,d:"M0,".concat(a,"h").concat(o,`
21
+ */const v0=[["path",{d:"M12 20h.01",key:"zekei9"}],["path",{d:"M2 8.82a15 15 0 0 1 20 0",key:"dnpr2z"}],["path",{d:"M5 12.859a10 10 0 0 1 14 0",key:"1x1e6c"}],["path",{d:"M8.5 16.429a5 5 0 0 1 7 0",key:"1bycff"}]],h0=yi("wifi",v0);function p0(e=Ma){if(e===Ma)return xh;if(typeof e!="function")throw new TypeError("compare is not a function");return(t,r)=>{const n=e(t,r);return n||n===0?n:(e(r,r)===0)-(e(t,t)===0)}}function xh(e,t){return(e==null||!(e>=e))-(t==null||!(t>=t))||(e<t?-1:e>t?1:0)}function jh(e,t,r=0,n=1/0,a){if(t=Math.floor(t),r=Math.floor(Math.max(0,r)),n=Math.floor(Math.min(e.length-1,n)),!(r<=t&&t<=n))return e;for(a=a===void 0?xh:p0(a);n>r;){if(n-r>600){const c=n-r+1,d=t-r+1,u=Math.log(c),m=.5*Math.exp(2*u/3),h=.5*Math.sqrt(u*m*(c-m)/c)*(d-c/2<0?-1:1),v=Math.max(r,Math.floor(t-d*m/c+h)),g=Math.min(n,Math.floor(t+(c-d)*m/c+h));jh(e,t,v,g,a)}const i=e[t];let o=r,l=n;for(mn(e,r,t),a(e[n],i)>0&&mn(e,r,n);o<l;){for(mn(e,o,l),++o,--l;a(e[o],i)<0;)++o;for(;a(e[l],i)>0;)--l}a(e[r],i)===0?mn(e,r,l):(++l,mn(e,l,n)),l<=t&&(r=l+1),t<=l&&(n=l-1)}return e}function mn(e,t,r){const n=e[t];e[t]=e[r],e[r]=n}function y0(e,t,r){if(e=Float64Array.from(Dj(e)),!(!(n=e.length)||isNaN(t=+t))){if(t<=0||n<2)return xu(e);if(t>=1)return ju(e);var n,a=(n-1)*t,i=Math.floor(a),o=ju(jh(e,i).subarray(0,i+1)),l=xu(e.subarray(i+1));return o+(l-o)*(a-i)}}function g0(e,t,r=Lj){if(!(!(n=e.length)||isNaN(t=+t))){if(t<=0||n<2)return+r(e[0],0,e);if(t>=1)return+r(e[n-1],n-1,e);var n,a=(n-1)*t,i=Math.floor(a),o=+r(e[i],i,e),l=+r(e[i+1],i+1,e);return o+(l-o)*(a-i)}}function wh(e){var t;function r(n){return n==null||isNaN(n=+n)?t:n}return r.invert=r,r.domain=r.range=function(n){return arguments.length?(e=Array.from(n,Ro),r):e.slice()},r.unknown=function(n){return arguments.length?(t=n,r):t},r.copy=function(){return wh(e).unknown(t)},e=arguments.length?Array.from(e,Ro):[0,1],Ir(r)}function wu(e){return Math.log(e)}function Cu(e){return Math.exp(e)}function b0(e){return-Math.log(-e)}function x0(e){return-Math.exp(-e)}function j0(e){return isFinite(e)?+("1e"+e):e<0?0:e}function w0(e){return e===10?j0:e===Math.E?Math.exp:t=>Math.pow(e,t)}function C0(e){return e===Math.E?Math.log:e===10&&Math.log10||e===2&&Math.log2||(e=Math.log(e),t=>Math.log(t)/e)}function ku(e){return(t,r)=>-e(-t,r)}function $l(e){const t=e(wu,Cu),r=t.domain;let n=10,a,i;function o(){return a=C0(n),i=w0(n),r()[0]<0?(a=ku(a),i=ku(i),e(b0,x0)):e(wu,Cu),t}return t.base=function(l){return arguments.length?(n=+l,o()):n},t.domain=function(l){return arguments.length?(r(l),o()):r()},t.ticks=l=>{const c=r();let d=c[0],u=c[c.length-1];const m=u<d;m&&([d,u]=[u,d]);let h=a(d),v=a(u),g,y;const p=l==null?10:+l;let b=[];if(!(n%1)&&v-h<p){if(h=Math.floor(h),v=Math.ceil(v),d>0){for(;h<=v;++h)for(g=1;g<n;++g)if(y=h<0?g/i(-h):g*i(h),!(y<d)){if(y>u)break;b.push(y)}}else for(;h<=v;++h)for(g=n-1;g>=1;--g)if(y=h>0?g/i(-h):g*i(h),!(y<d)){if(y>u)break;b.push(y)}b.length*2<p&&(b=bu(d,u,p))}else b=bu(h,v,Math.min(v-h,p)).map(i);return m?b.reverse():b},t.tickFormat=(l,c)=>{if(l==null&&(l=10),c==null&&(c=n===10?"s":","),typeof c!="function"&&(!(n%1)&&(c=Qj(c)).precision==null&&(c.trim=!0),c=e0(c)),l===1/0)return c;const d=Math.max(1,n*l/t.ticks().length);return u=>{let m=u/i(Math.round(a(u)));return m*n<n-.5&&(m*=n),m<=d?c(u):""}},t.nice=()=>r(Fj(r(),{floor:l=>i(Math.floor(a(l))),ceil:l=>i(Math.ceil(a(l)))})),t}function Ch(){const e=$l(Ll()).domain([1,10]);return e.copy=()=>Rl(e,Ch()).base(e.base()),sr.apply(e,arguments),e}function Pu(e){return function(t){return Math.sign(t)*Math.log1p(Math.abs(t/e))}}function Su(e){return function(t){return Math.sign(t)*Math.expm1(Math.abs(t))*e}}function Bl(e){var t=1,r=e(Pu(t),Su(t));return r.constant=function(n){return arguments.length?e(Pu(t=+n),Su(t)):t},Ir(r)}function kh(){var e=Bl(Ll());return e.copy=function(){return Rl(e,kh()).constant(e.constant())},sr.apply(e,arguments)}function Nu(e){return function(t){return t<0?-Math.pow(-t,e):Math.pow(t,e)}}function k0(e){return e<0?-Math.sqrt(-e):Math.sqrt(e)}function P0(e){return e<0?-e*e:e*e}function Fl(e){var t=e(Ft,Ft),r=1;function n(){return r===1?e(Ft,Ft):r===.5?e(k0,P0):e(Nu(r),Nu(1/r))}return t.exponent=function(a){return arguments.length?(r=+a,n()):r},Ir(t)}function zl(){var e=Fl(Ll());return e.copy=function(){return Rl(e,zl()).exponent(e.exponent())},sr.apply(e,arguments),e}function S0(){return zl.apply(null,arguments).exponent(.5)}function Ou(e){return Math.sign(e)*e*e}function N0(e){return Math.sign(e)*Math.sqrt(Math.abs(e))}function Ph(){var e=Rj(),t=[0,1],r=!1,n;function a(i){var o=N0(e(i));return isNaN(o)?n:r?Math.round(o):o}return a.invert=function(i){return e.invert(Ou(i))},a.domain=function(i){return arguments.length?(e.domain(i),a):e.domain()},a.range=function(i){return arguments.length?(e.range((t=Array.from(i,Ro)).map(Ou)),a):t.slice()},a.rangeRound=function(i){return a.range(i).round(!0)},a.round=function(i){return arguments.length?(r=!!i,a):r},a.clamp=function(i){return arguments.length?(e.clamp(i),a):e.clamp()},a.unknown=function(i){return arguments.length?(n=i,a):n},a.copy=function(){return Ph(e.domain(),t).round(r).clamp(e.clamp()).unknown(n)},sr.apply(a,arguments),Ir(a)}function Sh(){var e=[],t=[],r=[],n;function a(){var o=0,l=Math.max(1,t.length);for(r=new Array(l-1);++o<l;)r[o-1]=g0(e,o/l);return i}function i(o){return o==null||isNaN(o=+o)?n:t[wi(r,o)]}return i.invertExtent=function(o){var l=t.indexOf(o);return l<0?[NaN,NaN]:[l>0?r[l-1]:e[0],l<r.length?r[l]:e[e.length-1]]},i.domain=function(o){if(!arguments.length)return e.slice();e=[];for(let l of o)l!=null&&!isNaN(l=+l)&&e.push(l);return e.sort(Ma),a()},i.range=function(o){return arguments.length?(t=Array.from(o),a()):t.slice()},i.unknown=function(o){return arguments.length?(n=o,i):n},i.quantiles=function(){return r.slice()},i.copy=function(){return Sh().domain(e).range(t).unknown(n)},sr.apply(i,arguments)}function Nh(){var e=0,t=1,r=1,n=[.5],a=[0,1],i;function o(c){return c!=null&&c<=c?a[wi(n,c,0,r)]:i}function l(){var c=-1;for(n=new Array(r);++c<r;)n[c]=((c+1)*t-(c-r)*e)/(r+1);return o}return o.domain=function(c){return arguments.length?([e,t]=c,e=+e,t=+t,l()):[e,t]},o.range=function(c){return arguments.length?(r=(a=Array.from(c)).length-1,l()):a.slice()},o.invertExtent=function(c){var d=a.indexOf(c);return d<0?[NaN,NaN]:d<1?[e,n[0]]:d>=r?[n[r-1],t]:[n[d-1],n[d]]},o.unknown=function(c){return arguments.length&&(i=c),o},o.thresholds=function(){return n.slice()},o.copy=function(){return Nh().domain([e,t]).range(a).unknown(i)},sr.apply(Ir(o),arguments)}function Oh(){var e=[.5],t=[0,1],r,n=1;function a(i){return i!=null&&i<=i?t[wi(e,i,0,n)]:r}return a.domain=function(i){return arguments.length?(e=Array.from(i),n=Math.min(e.length,t.length-1),a):e.slice()},a.range=function(i){return arguments.length?(t=Array.from(i),n=Math.min(e.length,t.length-1),a):t.slice()},a.invertExtent=function(i){var o=t.indexOf(i);return[e[o-1],e[o]]},a.unknown=function(i){return arguments.length?(r=i,a):r},a.copy=function(){return Oh().domain(e).range(t).unknown(r)},sr.apply(a,arguments)}function O0(){return sr.apply(zj(Zj,Yj,Xj,Gj,Hj,Wj,Uj,qj,Vj,Kj).domain([Date.UTC(2e3,0,1),Date.UTC(2e3,0,2)]),arguments)}function Ci(){var e=0,t=1,r,n,a,i,o=Ft,l=!1,c;function d(m){return m==null||isNaN(m=+m)?c:o(a===0?.5:(m=(i(m)-r)*a,l?Math.max(0,Math.min(1,m)):m))}d.domain=function(m){return arguments.length?([e,t]=m,r=i(e=+e),n=i(t=+t),a=r===n?0:1/(n-r),d):[e,t]},d.clamp=function(m){return arguments.length?(l=!!m,d):l},d.interpolator=function(m){return arguments.length?(o=m,d):o};function u(m){return function(h){var v,g;return arguments.length?([v,g]=h,o=m(v,g),d):[o(0),o(1)]}}return d.range=u(mh),d.rangeRound=u(vh),d.unknown=function(m){return arguments.length?(c=m,d):c},function(m){return i=m,r=m(e),n=m(t),a=r===n?0:1/(n-r),d}}function or(e,t){return t.domain(e.domain()).interpolator(e.interpolator()).clamp(e.clamp()).unknown(e.unknown())}function Ah(){var e=Ir(Ci()(Ft));return e.copy=function(){return or(e,Ah())},Ut.apply(e,arguments)}function Eh(){var e=$l(Ci()).domain([1,10]);return e.copy=function(){return or(e,Eh()).base(e.base())},Ut.apply(e,arguments)}function _h(){var e=Bl(Ci());return e.copy=function(){return or(e,_h()).constant(e.constant())},Ut.apply(e,arguments)}function Kl(){var e=Fl(Ci());return e.copy=function(){return or(e,Kl()).exponent(e.exponent())},Ut.apply(e,arguments)}function A0(){return Kl.apply(null,arguments).exponent(.5)}function Mh(){var e=[],t=Ft;function r(n){if(n!=null&&!isNaN(n=+n))return t((wi(e,n,1)-1)/(e.length-1))}return r.domain=function(n){if(!arguments.length)return e.slice();e=[];for(let a of n)a!=null&&!isNaN(a=+a)&&e.push(a);return e.sort(Ma),r},r.interpolator=function(n){return arguments.length?(t=n,r):t},r.range=function(){return e.map((n,a)=>t(a/(e.length-1)))},r.quantiles=function(n){return Array.from({length:n+1},(a,i)=>y0(e,i/n))},r.copy=function(){return Mh(t).domain(e)},Ut.apply(r,arguments)}function ki(){var e=0,t=.5,r=1,n=1,a,i,o,l,c,d=Ft,u,m=!1,h;function v(y){return isNaN(y=+y)?h:(y=.5+((y=+u(y))-i)*(n*y<n*i?l:c),d(m?Math.max(0,Math.min(1,y)):y))}v.domain=function(y){return arguments.length?([e,t,r]=y,a=u(e=+e),i=u(t=+t),o=u(r=+r),l=a===i?0:.5/(i-a),c=i===o?0:.5/(o-i),n=i<a?-1:1,v):[e,t,r]},v.clamp=function(y){return arguments.length?(m=!!y,v):m},v.interpolator=function(y){return arguments.length?(d=y,v):d};function g(y){return function(p){var b,j,x;return arguments.length?([b,j,x]=p,d=yj(y,[b,j,x]),v):[d(0),d(.5),d(1)]}}return v.range=g(mh),v.rangeRound=g(vh),v.unknown=function(y){return arguments.length?(h=y,v):h},function(y){return u=y,a=y(e),i=y(t),o=y(r),l=a===i?0:.5/(i-a),c=i===o?0:.5/(o-i),n=i<a?-1:1,v}}function Th(){var e=Ir(ki()(Ft));return e.copy=function(){return or(e,Th())},Ut.apply(e,arguments)}function Ih(){var e=$l(ki()).domain([.1,1,10]);return e.copy=function(){return or(e,Ih()).base(e.base())},Ut.apply(e,arguments)}function Dh(){var e=Bl(ki());return e.copy=function(){return or(e,Dh()).constant(e.constant())},Ut.apply(e,arguments)}function Vl(){var e=Fl(ki());return e.copy=function(){return or(e,Vl()).exponent(e.exponent())},Ut.apply(e,arguments)}function E0(){return Vl.apply(null,arguments).exponent(.5)}function aa(e,t,r){var n=null,a=Ae(!0),i=null,o=Dl,l=null,c=hh(d);e=typeof e=="function"?e:e===void 0?bj:Ae(+e),t=typeof t=="function"?t:t===void 0?Ae(0):Ae(+t),r=typeof r=="function"?r:r===void 0?xj:Ae(+r);function d(m){var h,v,g,y=(m=ph(m)).length,p,b=!1,j,x=new Array(y),C=new Array(y);for(i==null&&(l=o(j=c())),h=0;h<=y;++h){if(!(h<y&&a(p=m[h],h,m))===b)if(b=!b)v=h,l.areaStart(),l.lineStart();else{for(l.lineEnd(),l.lineStart(),g=h-1;g>=v;--g)l.point(x[g],C[g]);l.lineEnd(),l.areaEnd()}b&&(x[h]=+e(p,h,m),C[h]=+t(p,h,m),l.point(n?+n(p,h,m):x[h],r?+r(p,h,m):C[h]))}if(j)return l=null,j+""||null}function u(){return yh().defined(a).curve(o).context(i)}return d.x=function(m){return arguments.length?(e=typeof m=="function"?m:Ae(+m),n=null,d):e},d.x0=function(m){return arguments.length?(e=typeof m=="function"?m:Ae(+m),d):e},d.x1=function(m){return arguments.length?(n=m==null?null:typeof m=="function"?m:Ae(+m),d):n},d.y=function(m){return arguments.length?(t=typeof m=="function"?m:Ae(+m),r=null,d):t},d.y0=function(m){return arguments.length?(t=typeof m=="function"?m:Ae(+m),d):t},d.y1=function(m){return arguments.length?(r=m==null?null:typeof m=="function"?m:Ae(+m),d):r},d.lineX0=d.lineY0=function(){return u().x(e).y(t)},d.lineY1=function(){return u().x(e).y(r)},d.lineX1=function(){return u().x(n).y(t)},d.defined=function(m){return arguments.length?(a=typeof m=="function"?m:Ae(!!m),d):a},d.curve=function(m){return arguments.length?(o=m,i!=null&&(l=o(i)),d):o},d.context=function(m){return arguments.length?(m==null?i=l=null:l=o(i=m),d):i},d}const ql={draw(e,t){const r=kt(t/Lo);e.moveTo(r,0),e.arc(0,0,r,0,ji)}},_0={draw(e,t){const r=kt(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()}},Lh=kt(1/3),M0=Lh*2,T0={draw(e,t){const r=kt(t/M0),n=r*Lh;e.moveTo(0,-r),e.lineTo(n,0),e.lineTo(0,r),e.lineTo(-n,0),e.closePath()}},I0={draw(e,t){const r=kt(t),n=-r/2;e.rect(n,n,r,r)}},D0=.8908130915292852,Rh=_a(Lo/10)/_a(7*Lo/10),L0=_a(ji/10)*Rh,R0=-gh(ji/10)*Rh,$0={draw(e,t){const r=kt(t*D0),n=L0*r,a=R0*r;e.moveTo(0,-r),e.lineTo(n,a);for(let i=1;i<5;++i){const o=ji*i/5,l=gh(o),c=_a(o);e.lineTo(c*r,-l*r),e.lineTo(l*n-c*a,c*n+l*a)}e.closePath()}},ds=kt(3),B0={draw(e,t){const r=-kt(t/(ds*3));e.moveTo(0,r*2),e.lineTo(-ds*r,-r),e.lineTo(ds*r,-r),e.closePath()}},ft=-.5,mt=kt(3)/2,$o=1/kt(12),F0=($o/2+1)*3,z0={draw(e,t){const r=kt(t/F0),n=r/2,a=r*$o,i=n,o=r*$o+r,l=-i,c=o;e.moveTo(n,a),e.lineTo(i,o),e.lineTo(l,c),e.lineTo(ft*n-mt*a,mt*n+ft*a),e.lineTo(ft*i-mt*o,mt*i+ft*o),e.lineTo(ft*l-mt*c,mt*l+ft*c),e.lineTo(ft*n+mt*a,ft*a-mt*n),e.lineTo(ft*i+mt*o,ft*o-mt*i),e.lineTo(ft*l+mt*c,ft*c-mt*l),e.closePath()}};function K0(e,t){let r=null,n=hh(a);e=typeof e=="function"?e:Ae(e||ql),t=typeof t=="function"?t:Ae(t===void 0?64:+t);function a(){let i;if(r||(r=i=n()),e.apply(this,arguments).draw(r,+t.apply(this,arguments)),i)return r=null,i+""||null}return a.type=function(i){return arguments.length?(e=typeof i=="function"?i:Ae(i),a):e},a.size=function(i){return arguments.length?(t=typeof i=="function"?i:Ae(+i),a):t},a.context=function(i){return arguments.length?(r=i??null,a):r},a}function Pr(e,t){if((o=e.length)>1)for(var r=1,n,a,i=e[t[0]],o,l=i.length;r<o;++r)for(a=i,i=e[t[r]],n=0;n<l;++n)i[n][1]+=i[n][0]=isNaN(a[n][1])?a[n][0]:a[n][1]}function Bo(e){for(var t=e.length,r=new Array(t);--t>=0;)r[t]=t;return r}function V0(e,t){return e[t]}function q0(e){const t=[];return t.key=e,t}function U0(){var e=Ae([]),t=Bo,r=Pr,n=V0;function a(i){var o=Array.from(e.apply(this,arguments),q0),l,c=o.length,d=-1,u;for(const m of i)for(l=0,++d;l<c;++l)(o[l][d]=[0,+n(m,o[l].key,d,i)]).data=m;for(l=0,u=ph(t(o));l<c;++l)o[u[l]].index=l;return r(o,u),o}return a.keys=function(i){return arguments.length?(e=typeof i=="function"?i:Ae(Array.from(i)),a):e},a.value=function(i){return arguments.length?(n=typeof i=="function"?i:Ae(+i),a):n},a.order=function(i){return arguments.length?(t=i==null?Bo:typeof i=="function"?i:Ae(Array.from(i)),a):t},a.offset=function(i){return arguments.length?(r=i??Pr,a):r},a}function W0(e,t){if((n=e.length)>0){for(var r,n,a=0,i=e[0].length,o;a<i;++a){for(o=r=0;r<n;++r)o+=e[r][a][1]||0;if(o)for(r=0;r<n;++r)e[r][a][1]/=o}Pr(e,t)}}function H0(e,t){if((a=e.length)>0){for(var r=0,n=e[t[0]],a,i=n.length;r<i;++r){for(var o=0,l=0;o<a;++o)l+=e[o][r][1]||0;n[r][1]+=n[r][0]=-l/2}Pr(e,t)}}function G0(e,t){if(!(!((o=e.length)>0)||!((i=(a=e[t[0]]).length)>0))){for(var r=0,n=1,a,i,o;n<i;++n){for(var l=0,c=0,d=0;l<o;++l){for(var u=e[t[l]],m=u[n][1]||0,h=u[n-1][1]||0,v=(m-h)/2,g=0;g<l;++g){var y=e[t[g]],p=y[n][1]||0,b=y[n-1][1]||0;v+=p-b}c+=m,d+=v*m}a[n-1][1]+=a[n-1][0]=r,c&&(r-=d/c)}a[n-1][1]+=a[n-1][0]=r,Pr(e,t)}}function $h(e){return[{id:"24h",label:e("commandCenter.range.last24h","Last 24h"),days:1},{id:"7d",label:e("commandCenter.range.last7d","Last 7 days"),days:7},{id:"30d",label:e("commandCenter.range.last30d","Last 30 days"),days:30},{id:"all",label:e("commandCenter.range.allTime","All time"),days:null}]}function Bh(e){return e.days===null?{from:null,to:new Date(Date.now()).toISOString(),preset:e.id}:{from:new Date(Date.now()-e.days*864e5).toISOString().slice(0,10),to:null,preset:e.id}}function X0({value:e,onChange:t,presets:r}){const{t:n}=le("app"),a=r??$h(n),[i,o]=f.useState(!1),[l,c]=f.useState(null),d=f.useRef(null),u=f.useRef(null),m=f.useCallback(()=>{o(!1),d.current?.focus()},[]);f.useEffect(()=>{if(!i)return;const g=p=>{p.key==="Escape"&&m()},y=p=>{u.current&&!u.current.contains(p.target)&&d.current&&!d.current.contains(p.target)&&o(!1)};return document.addEventListener("keydown",g),document.addEventListener("pointerdown",y),()=>{document.removeEventListener("keydown",g),document.removeEventListener("pointerdown",y)}},[i,m]);const h=a.find(g=>g.id===e.preset)?.label??n("commandCenter.range.custom","Custom range"),v=f.useCallback((g,y)=>{if(g&&y&&g>y){c(n("commandCenter.range.invalidRange","Start date must be on or before end date"));return}c(null),t({from:g,to:y,preset:"custom"})},[t,n]);return s.jsxs("div",{className:"cc-date-range",children:[s.jsxs("button",{ref:d,type:"button",className:"btn btn-sm cc-date-range-trigger",onClick:()=>o(g=>!g),"aria-haspopup":"dialog","aria-expanded":i,"data-testid":"cc-date-range-trigger",children:[s.jsx(Rx,{size:14}),s.jsx("span",{children:h})]}),i?s.jsxs("div",{ref:u,className:"cc-date-range-popover",role:"dialog","aria-label":n("commandCenter.range.dialogLabel","Select date range"),"data-testid":"cc-date-range-popover",children:[s.jsx("div",{className:"cc-date-range-presets",children:a.map(g=>s.jsx("button",{type:"button",className:`btn btn-sm${e.preset===g.id?" active":""}`,onClick:()=>{t(Bh(g)),m()},"data-testid":`cc-date-range-preset-${g.id}`,children:g.label},g.id))}),s.jsxs("div",{className:"cc-date-range-custom",children:[s.jsxs("label",{className:"cc-date-range-field",children:[s.jsx("span",{children:n("commandCenter.range.from","From")}),s.jsx("input",{type:"date",value:e.from??"",onChange:g=>v(g.target.value||null,e.to),"data-testid":"cc-date-range-from"})]}),s.jsxs("label",{className:"cc-date-range-field",children:[s.jsx("span",{children:n("commandCenter.range.to","To")}),s.jsx("input",{type:"date",value:e.to?.slice(0,10)??"",onChange:g=>v(e.from,g.target.value||null),"data-testid":"cc-date-range-to"})]}),l?s.jsx("div",{className:"form-error",role:"alert","data-testid":"cc-date-range-error",children:l}):null]})]}):null]})}function Au(e){return Object.prototype.hasOwnProperty.call(e,"iconProvider")}function Y0(e,t){if(!Number.isFinite(e)||e<=0)return 0;const r=Number.isFinite(t)&&t>0?t:1;return Math.max(0,Math.min(100,e/r*100))}function Xe({data:e,max:t,ariaLabel:r}){const n=t??e.reduce((a,i)=>i.value>a?i.value:a,0);return s.jsx("ul",{className:"cc-bar-chart",role:"list","aria-label":r,children:e.map((a,i)=>{const o=Y0(a.value,n),l=a.valueLabel??String(Number.isFinite(a.value)?a.value:0),c=a.label,d=a.iconProvider&&a.iconProvider!==c?`${a.iconProvider} ${c}`:c,u=Au(a)?d:c;return s.jsxs("li",{className:"cc-bar-row",children:[s.jsxs("span",{className:"cc-bar-label",children:[Au(a)?s.jsx(eh,{provider:a.iconProvider??"",size:"sm"}):null,s.jsx("span",{className:"cc-bar-label-text",children:a.label})]}),s.jsx("div",{className:"cc-bar-track",children:s.jsx("div",{className:"cc-bar-fill",style:{width:`${o}%`},role:"img","aria-label":`${u}: ${l}`})}),s.jsx("span",{className:"cc-bar-value",children:l})]},`${u}-${a.value}-${i}`)})})}function Z0(e){const t=new URLSearchParams;e.from&&t.set("from",e.from),e.to&&t.set("to",e.to);const r=t.toString();return r?`?${r}`:""}function K(e){return Number.isFinite(e)?Math.round(e).toLocaleString():"0"}function Eu(e){if(e===null||!Number.isFinite(e))return"";const t=Math.max(0,Math.round(e/1e3)),r=Math.floor(t/3600),n=Math.floor(t%3600/60),a=t%60;return r>0?n>0?`${r}h ${n}m`:`${r}h`:n>0?a>0?`${n}m ${a}s`:`${n}m`:`${a}s`}function Sr(e,t){return t||e===null||!Number.isFinite(e)?"—":`$${e.toLocaleString(void 0,{minimumFractionDigits:2,maximumFractionDigits:2})}`}function Fh(e){return!!(e.from&&e.to&&e.from>e.to)}function J0(e,t){if(!Number.isFinite(e)||e<=0)return 0;const r=Number.isFinite(t)&&t>0?t:1;return Math.max(0,Math.min(100,e/r*100))}function Q0({points:e,ariaLabel:t}){const r=e.reduce((n,a)=>a.totalTokens>n?a.totalTokens:n,0);return s.jsxs("div",{className:"cc-token-series",role:"img","aria-label":t,"data-testid":"cc-token-series-chart",children:[s.jsx("div",{className:"cc-token-series-plot",children:e.length===0?s.jsx("div",{className:"cc-token-series-empty","aria-hidden":"true","data-testid":"cc-token-series-empty"}):e.map((n,a)=>{const i=J0(n.totalTokens,r),o=`${n.bucket}: ${K(n.totalTokens)}`;return s.jsx("span",{className:"cc-token-series-bar",style:{height:`${i}%`},"aria-label":o,title:o},a)})}),s.jsxs("div",{className:"cc-token-series-axis","aria-hidden":"true",children:[s.jsx("span",{children:e[0]?.bucket??"—"}),s.jsx("span",{children:e.at(-1)?.bucket??"—"})]})]})}function zh(e){var t,r,n="";if(typeof e=="string"||typeof e=="number")n+=e;else if(typeof e=="object")if(Array.isArray(e)){var a=e.length;for(t=0;t<a;t++)e[t]&&(r=zh(e[t]))&&(n&&(n+=" "),n+=r)}else for(r in e)e[r]&&(n&&(n+=" "),n+=r);return n}function de(){for(var e,t,r=0,n="",a=arguments.length;r<a;r++)(e=arguments[r])&&(t=zh(e))&&(n&&(n+=" "),n+=t);return n}var ew=["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 Ul(e){if(typeof e!="string")return!1;var t=ew;return t.includes(e)}var tw=["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"],rw=new Set(tw);function Kh(e){return typeof e!="string"?!1:rw.has(e)}function Vh(e){return typeof e=="string"&&e.startsWith("data-")}function yt(e){if(typeof e!="object"||e===null)return{};var t={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&(Kh(r)||Vh(r))&&(t[r]=e[r]);return t}function Xr(e){if(e==null)return null;if(f.isValidElement(e)&&typeof e.props=="object"&&e.props!==null){var t=e.props;return yt(t)}return typeof e=="object"&&!Array.isArray(e)?yt(e):null}function Je(e){var t={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&(Kh(r)||Vh(r)||Ul(r))&&(t[r]=e[r]);return t}function nw(e){return e==null?null:f.isValidElement(e)?Je(e.props):typeof e=="object"&&!Array.isArray(e)?Je(e):null}var aw=["children","width","height","viewBox","className","style","title","desc"];function Fo(){return Fo=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)({}).hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},Fo.apply(null,arguments)}function iw(e,t){if(e==null)return{};var r,n,a=sw(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)===-1&&{}.propertyIsEnumerable.call(e,r)&&(a[r]=e[r])}return a}function sw(e,t){if(e==null)return{};var r={};for(var n in e)if({}.hasOwnProperty.call(e,n)){if(t.indexOf(n)!==-1)continue;r[n]=e[n]}return r}var Wl=f.forwardRef((e,t)=>{var{children:r,width:n,height:a,viewBox:i,className:o,style:l,title:c,desc:d}=e,u=iw(e,aw),m=i||{width:n,height:a,x:0,y:0},h=de("recharts-surface",o);return f.createElement("svg",Fo({},Je(u),{className:h,width:n,height:a,style:l,viewBox:"".concat(m.x," ").concat(m.y," ").concat(m.width," ").concat(m.height),ref:t}),f.createElement("title",null,c),f.createElement("desc",null,d),r)}),ow=["children","className"];function zo(){return zo=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)({}).hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},zo.apply(null,arguments)}function lw(e,t){if(e==null)return{};var r,n,a=cw(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)===-1&&{}.propertyIsEnumerable.call(e,r)&&(a[r]=e[r])}return a}function cw(e,t){if(e==null)return{};var r={};for(var n in e)if({}.hasOwnProperty.call(e,n)){if(t.indexOf(n)!==-1)continue;r[n]=e[n]}return r}var Qe=f.forwardRef((e,t)=>{var{children:r,className:n}=e,a=lw(e,ow),i=de("recharts-layer",n);return f.createElement("g",zo({className:i},Je(a),{ref:t}),r)}),qh=f.createContext(null),uw=()=>f.useContext(qh),fs={},ms={},_u;function dw(){return _u||(_u=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(r){return r==="__proto__"}e.isUnsafeProperty=t})(ms)),ms}var vs={},Mu;function Uh(){return Mu||(Mu=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})(vs)),vs}var hs={},Tu;function Hl(){return Tu||(Tu=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(r){return typeof r=="string"||typeof r=="symbol"?r:Object.is(r?.valueOf?.(),-0)?"-0":String(r)}e.toKey=t})(hs)),hs}var ps={},ys={},Iu;function fw(){return Iu||(Iu=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 n=String(r);return n==="0"&&Object.is(Number(r),-0)?"-0":n}e.toString=t})(ys)),ys}var Du;function Gl(){return Du||(Du=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=fw(),r=Hl();function n(a){if(Array.isArray(a))return a.map(r.toKey);if(typeof a=="symbol")return[a];a=t.toString(a);const i=[],o=a.length;if(o===0)return i;let l=0,c="",d="",u=!1;for(a.charCodeAt(0)===46&&(i.push(""),l++);l<o;){const m=a[l];d?m==="\\"&&l+1<o?(l++,c+=a[l]):m===d?d="":c+=m:u?m==='"'||m==="'"?d=m:m==="]"?(u=!1,i.push(c),c=""):c+=m:m==="["?(u=!0,c&&(i.push(c),c="")):m==="."?c&&(i.push(c),c=""):c+=m,l++}return c&&i.push(c),i}e.toPath=n})(ps)),ps}var Lu;function Xl(){return Lu||(Lu=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=dw(),r=Uh(),n=Hl(),a=Gl();function i(l,c,d){if(l==null)return d;switch(typeof c){case"string":{if(t.isUnsafeProperty(c))return d;const u=l[c];return u===void 0?r.isDeepKey(c)?i(l,a.toPath(c),d):d:u}case"number":case"symbol":{typeof c=="number"&&(c=n.toKey(c));const u=l[c];return u===void 0?d:u}default:{if(Array.isArray(c))return o(l,c,d);if(Object.is(c?.valueOf(),-0)?c="-0":c=String(c),t.isUnsafeProperty(c))return d;const u=l[c];return u===void 0?d:u}}}function o(l,c,d){if(c.length===0)return d;let u=l;for(let m=0;m<c.length;m++){if(u==null||t.isUnsafeProperty(c[m]))return d;u=u[c[m]]}return u===void 0?d:u}e.get=i})(fs)),fs}var gs,Ru;function mw(){return Ru||(Ru=1,gs=Xl().get),gs}var vw=mw();const Nr=nn(vw);var hw=4;function nr(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:hw,r=10**t,n=Math.round(e*r)/r;return Object.is(n,-0)?0:n}function Ne(e){for(var t=arguments.length,r=new Array(t>1?t-1:0),n=1;n<t;n++)r[n-1]=arguments[n];return e.reduce((a,i,o)=>{var l=r[o-1];return typeof l=="string"?a+l+i:l!==void 0?a+nr(l)+i:a+i},"")}var Ge=e=>e===0?0:e>0?1:-1,Vt=e=>typeof e=="number"&&e!=+e,Ko=e=>typeof e=="string"&&e.indexOf("%")===e.length-1,Z=e=>(typeof e=="number"||e instanceof Number)&&!Vt(e),Tt=e=>Z(e)||typeof e=="string",pw=0,An=e=>{var t=++pw;return"".concat(e||"").concat(t)},ot=function(t,r){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0,a=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1;if(!Z(t)&&typeof t!="string")return n;var i;if(Ko(t)){if(r==null)return n;var o=t.indexOf("%");i=r*parseFloat(t.slice(0,o))/100}else i=+t;return Vt(i)&&(i=n),a&&r!=null&&i>r&&(i=r),i},Wh=e=>{if(!Array.isArray(e))return!1;for(var t=e.length,r={},n=0;n<t;n++)if(!r[String(e[n])])r[String(e[n])]=!0;else return!0;return!1};function He(e,t,r){return Z(e)&&Z(t)?nr(e+r*(t-e)):t}function Hh(e,t,r){if(!(!e||!e.length))return e.find(n=>n&&(typeof t=="function"?t(n):Nr(n,t))===r)}var De=e=>e===null||typeof e>"u",zn=e=>De(e)?e:"".concat(e.charAt(0).toUpperCase()).concat(e.slice(1));function tt(e){return e!=null}function Kn(){}var yw=["type","size","sizeType"];function Vo(){return Vo=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)({}).hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},Vo.apply(null,arguments)}function $u(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),r.push.apply(r,n)}return r}function Bu(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?$u(Object(r),!0).forEach(function(n){gw(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):$u(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function gw(e,t,r){return(t=bw(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function bw(e){var t=xw(e,"string");return typeof t=="symbol"?t:t+""}function xw(e,t){if(typeof e!="object"||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var n=r.call(e,t);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function jw(e,t){if(e==null)return{};var r,n,a=ww(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)===-1&&{}.propertyIsEnumerable.call(e,r)&&(a[r]=e[r])}return a}function ww(e,t){if(e==null)return{};var r={};for(var n in e)if({}.hasOwnProperty.call(e,n)){if(t.indexOf(n)!==-1)continue;r[n]=e[n]}return r}var Gh={symbolCircle:ql,symbolCross:_0,symbolDiamond:T0,symbolSquare:I0,symbolStar:$0,symbolTriangle:B0,symbolWye:z0},Cw=Math.PI/180,kw=e=>{var t="symbol".concat(zn(e));return Gh[t]||ql},Pw=(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 n=18*Cw;return 1.25*e*e*(Math.tan(n)-Math.tan(n*2)*Math.tan(n)**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}},Sw=(e,t)=>{Gh["symbol".concat(zn(e))]=t},Yl=e=>{var{type:t="circle",size:r=64,sizeType:n="area"}=e,a=jw(e,yw),i=Bu(Bu({},a),{},{type:t,size:r,sizeType:n}),o="circle";typeof t=="string"&&(o=t);var l=()=>{var h=kw(o),v=K0().type(h).size(Pw(r,n,o)),g=v();if(g!==null)return g},{className:c,cx:d,cy:u}=i,m=Je(i);return Z(d)&&Z(u)&&Z(r)?f.createElement("path",Vo({},m,{className:de("recharts-symbols",c),transform:"translate(".concat(d,", ").concat(u,")"),d:l()})):null};Yl.registerSymbol=Sw;var Xh=e=>"radius"in e&&"startAngle"in e&&"endAngle"in e,Zl=(e,t)=>{if(!e||typeof e=="function"||typeof e=="boolean")return null;var r=e;if(f.isValidElement(e)&&(r=e.props),typeof r!="object"&&typeof r!="function")return null;var n={};return Object.keys(r).forEach(a=>{Ul(a)&&typeof r[a]=="function"&&(n[a]=(i=>r[a](r,i)))}),n},Nw=(e,t,r)=>n=>(e(t,r,n),null),Jl=(e,t,r)=>{if(e===null||typeof e!="object"&&typeof e!="function")return null;var n=null;return Object.keys(e).forEach(a=>{var i=e[a];Ul(a)&&typeof i=="function"&&(n||(n={}),n[a]=Nw(i,t,r))}),n};function Fu(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),r.push.apply(r,n)}return r}function Ow(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?Fu(Object(r),!0).forEach(function(n){Aw(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):Fu(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function Aw(e,t,r){return(t=Ew(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function Ew(e){var t=_w(e,"string");return typeof t=="symbol"?t:t+""}function _w(e,t){if(typeof e!="object"||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var n=r.call(e,t);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function Le(e,t){var r=Ow({},e),n=t,a=Object.keys(t),i=a.reduce((o,l)=>(o[l]===void 0&&n[l]!==void 0&&(o[l]=n[l]),o),r);return i}function Ta(){return Ta=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)({}).hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},Ta.apply(null,arguments)}function zu(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),r.push.apply(r,n)}return r}function Yh(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?zu(Object(r),!0).forEach(function(n){Mw(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):zu(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function Mw(e,t,r){return(t=Tw(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function Tw(e){var t=Iw(e,"string");return typeof t=="symbol"?t:t+""}function Iw(e,t){if(typeof e!="object"||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var n=r.call(e,t);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}var ht=32,Dw={align:"center",iconSize:14,inactiveColor:"#ccc",layout:"horizontal",verticalAlign:"middle",labelStyle:{}};function Lw(e){if(typeof e=="object"&&e!==null&&"strokeDasharray"in e)return String(e.strokeDasharray)}function Rw(e){var{data:t,iconType:r,inactiveColor:n}=e,a=ht/2,i=ht/6,o=ht/3,l=t.inactive?n:t.color,c=r??t.type;if(c==="none")return null;if(c==="plainline")return f.createElement("line",{strokeWidth:4,fill:"none",stroke:l,strokeDasharray:Lw(t.payload),x1:0,y1:a,x2:ht,y2:a,className:"recharts-legend-icon"});if(c==="line")return f.createElement("path",{strokeWidth:4,fill:"none",stroke:l,d:"M0,".concat(a,"h").concat(o,`
22
22
  A`).concat(i,",").concat(i,",0,1,1,").concat(2*o,",").concat(a,`
23
23
  H`).concat(ht,"M").concat(2*o,",").concat(a,`
24
- A`).concat(i,",").concat(i,",0,1,1,").concat(o,",").concat(a),className:"recharts-legend-icon"});if(c==="rect")return f.createElement("path",{stroke:"none",fill:l,d:"M0,".concat(ht/8,"h").concat(ht,"v").concat(ht*3/4,"h").concat(-ht,"z"),className:"recharts-legend-icon"});if(f.isValidElement(t.legendIcon)){var d=Yh({},t);return delete d.legendIcon,f.cloneElement(t.legendIcon,d)}return f.createElement(Yl,{fill:l,cx:a,cy:a,size:ht,sizeType:"diameter",type:c})}function $w(e){var{payload:t,iconSize:r,layout:n,formatter:a,inactiveColor:i,iconType:o,labelStyle:l}=e,c={x:0,y:0,width:ht,height:ht},d={display:n==="horizontal"?"inline-block":"block",marginRight:10},u={display:"inline-block",verticalAlign:"middle",marginRight:4};return t.map((m,h)=>{var v=m.formatter||a,y=de({"recharts-legend-item":!0,["legend-item-".concat(h)]:!0,inactive:m.inactive});if(m.type==="none")return null;var g=typeof l=="object"?Yh({},l):{};g.color=m.inactive?i:g.color||m.color;var p=v?v(m.value,m,h):m.value;return f.createElement("li",Ta({className:y,style:d,key:"legend-item-".concat(h)},Jl(e,m,h)),f.createElement(Wl,{width:r,height:r,viewBox:c,style:u,"aria-label":"".concat(m.value," legend icon")},f.createElement(Rw,{data:m,iconType:o,inactiveColor:i})),f.createElement("span",{className:"recharts-legend-item-text",style:g},p))})}var Bw=e=>{var t=Le(e,Dw),{payload:r,layout:n,align:a}=t;if(!r||!r.length)return null;var i={padding:0,margin:0,textAlign:n==="horizontal"?a:"left"};return f.createElement("ul",{className:"recharts-default-legend",style:i},f.createElement($w,Ta({},t,{payload:r})))},bs={},xs={},Ku;function Fw(){return Ku||(Ku=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(r,n){const a=new Map;for(let i=0;i<r.length;i++){const o=r[i],l=n(o,i,r);a.has(l)||a.set(l,o)}return Array.from(a.values())}e.uniqBy=t})(xs)),xs}var js={},Vu;function zw(){return Vu||(Vu=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(r,n){return function(...a){return r.apply(this,a.slice(0,n))}}e.ary=t})(js)),js}var ws={},Uu;function Zh(){return Uu||(Uu=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(r){return r}e.identity=t})(ws)),ws}var Cs={},ks={},Ps={},qu;function Kw(){return qu||(qu=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(r){return Number.isSafeInteger(r)&&r>=0}e.isLength=t})(Ps)),Ps}var Wu;function Jh(){return Wu||(Wu=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=Kw();function r(n){return n!=null&&typeof n!="function"&&t.isLength(n.length)}e.isArrayLike=r})(ks)),ks}var Ss={},Hu;function Vw(){return Hu||(Hu=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(r){return typeof r=="object"&&r!==null}e.isObjectLike=t})(Ss)),Ss}var Gu;function Uw(){return Gu||(Gu=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=Jh(),r=Vw();function n(a){return r.isObjectLike(a)&&t.isArrayLike(a)}e.isArrayLikeObject=n})(Cs)),Cs}var Ns={},Os={},Xu;function qw(){return Xu||(Xu=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=Xl();function r(n){return function(a){return t.get(a,n)}}e.property=r})(Os)),Os}var As={},Es={},_s={},Ms={},Yu;function Qh(){return Yu||(Yu=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})(Ms)),Ms}var Ts={},Zu;function ep(){return Zu||(Zu=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})(Ts)),Ts}var Is={},Ju;function tp(){return Ju||(Ju=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(r,n){return r===n||Number.isNaN(r)&&Number.isNaN(n)}e.isEqualsSameValueZero=t})(Is)),Is}var Qu;function Ww(){return Qu||(Qu=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=Qh(),r=ep(),n=tp();function a(u,m,h){return typeof h!="function"?a(u,m,()=>{}):i(u,m,function v(y,g,p,b,j,x){const C=h(y,g,p,b,j,x);return C!==void 0?!!C:i(y,g,v,x)},new Map)}function i(u,m,h,v){if(m===u)return!0;switch(typeof m){case"object":return o(u,m,h,v);case"function":return Object.keys(m).length>0?i(u,{...m},h,v):n.isEqualsSameValueZero(u,m);default:return t.isObject(u)?typeof m=="string"?m==="":!0:n.isEqualsSameValueZero(u,m)}}function o(u,m,h,v){if(m==null)return!0;if(Array.isArray(m))return c(u,m,h,v);if(m instanceof Map)return l(u,m,h,v);if(m instanceof Set)return d(u,m,h,v);const y=Object.keys(m);if(u==null||r.isPrimitive(u))return y.length===0;if(y.length===0)return!0;if(v?.has(m))return v.get(m)===u;v?.set(m,u);try{for(let g=0;g<y.length;g++){const p=y[g];if(!r.isPrimitive(u)&&!(p in u)||m[p]===void 0&&u[p]!==void 0||m[p]===null&&u[p]!==null||!h(u[p],m[p],p,u,m,v))return!1}return!0}finally{v?.delete(m)}}function l(u,m,h,v){if(m.size===0)return!0;if(!(u instanceof Map))return!1;for(const[y,g]of m.entries()){const p=u.get(y);if(h(p,g,y,u,m,v)===!1)return!1}return!0}function c(u,m,h,v){if(m.length===0)return!0;if(!Array.isArray(u))return!1;const y=new Set;for(let g=0;g<m.length;g++){const p=m[g];let b=!1;for(let j=0;j<u.length;j++){if(y.has(j))continue;const x=u[j];let C=!1;if(h(x,p,g,u,m,v)&&(C=!0),C){y.add(j),b=!0;break}}if(!b)return!1}return!0}function d(u,m,h,v){return m.size===0?!0:u instanceof Set?c([...u],[...m],h,v):!1}e.isMatchWith=a,e.isSetMatch=d})(_s)),_s}var ed;function rp(){return ed||(ed=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=Ww();function r(n,a){return t.isMatchWith(n,a,()=>{})}e.isMatch=r})(Es)),Es}var Ds={},Ls={},Rs={},td;function Hw(){return td||(td=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(r){return Object.getOwnPropertySymbols(r).filter(n=>Object.prototype.propertyIsEnumerable.call(r,n))}e.getSymbols=t})(Rs)),Rs}var $s={},rd;function Ql(){return rd||(rd=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})($s)),$s}var Bs={},nd;function np(){return nd||(nd=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t="[object RegExp]",r="[object String]",n="[object Number]",a="[object Boolean]",i="[object Arguments]",o="[object Symbol]",l="[object Date]",c="[object Map]",d="[object Set]",u="[object Array]",m="[object Function]",h="[object ArrayBuffer]",v="[object Object]",y="[object Error]",g="[object DataView]",p="[object Uint8Array]",b="[object Uint8ClampedArray]",j="[object Uint16Array]",x="[object Uint32Array]",C="[object BigUint64Array]",w="[object Int8Array]",P="[object Int16Array]",O="[object Int32Array]",k="[object BigInt64Array]",N="[object Float32Array]",S="[object Float64Array]";e.argumentsTag=i,e.arrayBufferTag=h,e.arrayTag=u,e.bigInt64ArrayTag=k,e.bigUint64ArrayTag=C,e.booleanTag=a,e.dataViewTag=g,e.dateTag=l,e.errorTag=y,e.float32ArrayTag=N,e.float64ArrayTag=S,e.functionTag=m,e.int16ArrayTag=P,e.int32ArrayTag=O,e.int8ArrayTag=w,e.mapTag=c,e.numberTag=n,e.objectTag=v,e.regexpTag=t,e.setTag=d,e.stringTag=r,e.symbolTag=o,e.uint16ArrayTag=j,e.uint32ArrayTag=x,e.uint8ArrayTag=p,e.uint8ClampedArrayTag=b})(Bs)),Bs}var Fs={},ad;function Gw(){return ad||(ad=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(r){return ArrayBuffer.isView(r)&&!(r instanceof DataView)}e.isTypedArray=t})(Fs)),Fs}var id;function ap(){return id||(id=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=Hw(),r=Ql(),n=np(),a=ep(),i=Gw();function o(u,m){return l(u,void 0,u,new Map,m)}function l(u,m,h,v=new Map,y=void 0){const g=y?.(u,m,h,v);if(g!==void 0)return g;if(a.isPrimitive(u))return u;if(v.has(u))return v.get(u);if(Array.isArray(u)){const p=new Array(u.length);v.set(u,p);for(let b=0;b<u.length;b++)p[b]=l(u[b],b,h,v,y);return Object.hasOwn(u,"index")&&(p.index=u.index),Object.hasOwn(u,"input")&&(p.input=u.input),p}if(u instanceof Date)return new Date(u.getTime());if(u instanceof RegExp){const p=new RegExp(u.source,u.flags);return p.lastIndex=u.lastIndex,p}if(u instanceof Map){const p=new Map;v.set(u,p);for(const[b,j]of u)p.set(b,l(j,b,h,v,y));return p}if(u instanceof Set){const p=new Set;v.set(u,p);for(const b of u)p.add(l(b,void 0,h,v,y));return p}if(typeof Buffer<"u"&&Buffer.isBuffer(u))return u.subarray();if(i.isTypedArray(u)){const p=new(Object.getPrototypeOf(u)).constructor(u.length);v.set(u,p);for(let b=0;b<u.length;b++)p[b]=l(u[b],b,h,v,y);return p}if(u instanceof ArrayBuffer||typeof SharedArrayBuffer<"u"&&u instanceof SharedArrayBuffer)return u.slice(0);if(u instanceof DataView){const p=new DataView(u.buffer.slice(0),u.byteOffset,u.byteLength);return v.set(u,p),c(p,u,h,v,y),p}if(typeof File<"u"&&u instanceof File){const p=new File([u],u.name,{type:u.type});return v.set(u,p),c(p,u,h,v,y),p}if(typeof Blob<"u"&&u instanceof Blob){const p=new Blob([u],{type:u.type});return v.set(u,p),c(p,u,h,v,y),p}if(u instanceof Error){const p=structuredClone(u);return v.set(u,p),p.message=u.message,p.name=u.name,p.stack=u.stack,p.cause=u.cause,p.constructor=u.constructor,c(p,u,h,v,y),p}if(u instanceof Boolean){const p=new Boolean(u.valueOf());return v.set(u,p),c(p,u,h,v,y),p}if(u instanceof Number){const p=new Number(u.valueOf());return v.set(u,p),c(p,u,h,v,y),p}if(u instanceof String){const p=new String(u.valueOf());return v.set(u,p),c(p,u,h,v,y),p}if(typeof u=="object"&&d(u)){const p=Object.create(Object.getPrototypeOf(u));return v.set(u,p),c(p,u,h,v,y),p}return u}function c(u,m,h=u,v,y){const g=[...Object.keys(m),...t.getSymbols(m)];for(let p=0;p<g.length;p++){const b=g[p],j=Object.getOwnPropertyDescriptor(u,b);(j==null||j.writable)&&(u[b]=l(m[b],b,h,v,y))}}function d(u){switch(r.getTag(u)){case n.argumentsTag:case n.arrayTag:case n.arrayBufferTag:case n.dataViewTag:case n.booleanTag:case n.dateTag:case n.float32ArrayTag:case n.float64ArrayTag:case n.int8ArrayTag:case n.int16ArrayTag:case n.int32ArrayTag:case n.mapTag:case n.numberTag:case n.objectTag:case n.regexpTag:case n.setTag:case n.stringTag:case n.symbolTag:case n.uint8ArrayTag:case n.uint8ClampedArrayTag:case n.uint16ArrayTag:case n.uint32ArrayTag:return!0;default:return!1}}e.cloneDeepWith=o,e.cloneDeepWithImpl=l,e.copyProperties=c})(Ls)),Ls}var sd;function Xw(){return sd||(sd=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=ap();function r(n){return t.cloneDeepWithImpl(n,void 0,n,new Map,void 0)}e.cloneDeep=r})(Ds)),Ds}var od;function Yw(){return od||(od=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=rp(),r=Xw();function n(a){return a=r.cloneDeep(a),i=>t.isMatch(i,a)}e.matches=n})(As)),As}var zs={},Ks={},Vs={},ld;function Zw(){return ld||(ld=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=ap(),r=Ql(),n=np();function a(i,o){return t.cloneDeepWith(i,(l,c,d,u)=>{const m=o?.(l,c,d,u);if(m!==void 0)return m;if(typeof i=="object"){if(r.getTag(i)===n.objectTag&&typeof i.constructor!="function"){const h={};return u.set(i,h),t.copyProperties(h,i,d,u),h}switch(Object.prototype.toString.call(i)){case n.numberTag:case n.stringTag:case n.booleanTag:{const h=new i.constructor(i?.valueOf());return t.copyProperties(h,i),h}case n.argumentsTag:{const h={};return t.copyProperties(h,i),h.length=i.length,h[Symbol.iterator]=i[Symbol.iterator],h}default:return}}})}e.cloneDeepWith=a})(Vs)),Vs}var cd;function Jw(){return cd||(cd=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=Zw();function r(n){return t.cloneDeepWith(n)}e.cloneDeep=r})(Ks)),Ks}var Us={},qs={},ud;function ip(){return ud||(ud=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=/^(?:0|[1-9]\d*)$/;function r(n,a=Number.MAX_SAFE_INTEGER){switch(typeof n){case"number":return Number.isInteger(n)&&n>=0&&n<a;case"symbol":return!1;case"string":return t.test(n)}}e.isIndex=r})(qs)),qs}var Ws={},dd;function Qw(){return dd||(dd=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=Ql();function r(n){return n!==null&&typeof n=="object"&&t.getTag(n)==="[object Arguments]"}e.isArguments=r})(Ws)),Ws}var fd;function eC(){return fd||(fd=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=qh(),r=ip(),n=Qw(),a=Gl();function i(o,l){let c;if(Array.isArray(l)?c=l:typeof l=="string"&&t.isDeepKey(l)&&o?.[l]==null?c=a.toPath(l):c=[l],c.length===0)return!1;let d=o;for(let u=0;u<c.length;u++){const m=c[u];if((d==null||!Object.hasOwn(d,m))&&!((Array.isArray(d)||n.isArguments(d))&&r.isIndex(m)&&m<d.length))return!1;d=d[m]}return!0}e.has=i})(Us)),Us}var md;function tC(){return md||(md=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=rp(),r=Hl(),n=Jw(),a=Xl(),i=eC();function o(l,c){switch(typeof l){case"object":{Object.is(l?.valueOf(),-0)&&(l="-0");break}case"number":{l=r.toKey(l);break}}return c=n.cloneDeep(c),function(d){const u=a.get(d,l);return u===void 0?i.has(d,l):c===void 0?u===void 0:t.isMatch(u,c)}}e.matchesProperty=o})(zs)),zs}var vd;function rC(){return vd||(vd=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=Zh(),r=qw(),n=Yw(),a=tC();function i(o){if(o==null)return t.identity;switch(typeof o){case"function":return o;case"object":return Array.isArray(o)&&o.length===2?a.matchesProperty(o[0],o[1]):n.matches(o);case"string":case"symbol":case"number":return r.property(o)}}e.iteratee=i})(Ns)),Ns}var hd;function nC(){return hd||(hd=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=Fw(),r=zw(),n=Zh(),a=Uw(),i=rC();function o(l,c=n.identity){return a.isArrayLikeObject(l)?t.uniqBy(Array.from(l),r.ary(i.iteratee(c),1)):[]}e.uniqBy=o})(bs)),bs}var Hs,pd;function aC(){return pd||(pd=1,Hs=nC().uniqBy),Hs}var iC=aC();const yd=nn(iC);function sp(e,t,r){return t===!0?yd(e,r):typeof t=="function"?yd(e,t):e}var ec=f.createContext(null),sC=e=>e,ve=()=>{var e=f.useContext(ec);return e?e.store.dispatch:sC},Ca=()=>{},oC=()=>Ca,lC=(e,t)=>e===t;function Y(e){var t=f.useContext(ec),r=f.useMemo(()=>t?n=>{if(n!=null)return e(n)}:Ca,[t,e]);return gj.useSyncExternalStoreWithSelector(t?t.subscription.addNestedSub:oC,t?t.store.getState:Ca,t?t.store.getState:Ca,r,lC)}function cC(e,t=`expected a function, instead received ${typeof e}`){if(typeof e!="function")throw new TypeError(t)}function uC(e,t=`expected an object, instead received ${typeof e}`){if(typeof e!="object")throw new TypeError(t)}function dC(e,t="expected all items to be functions, instead received the following types: "){if(!e.every(r=>typeof r=="function")){const r=e.map(n=>typeof n=="function"?`function ${n.name||"unnamed"}()`:typeof n).join(", ");throw new TypeError(`${t}[${r}]`)}}var gd=e=>Array.isArray(e)?e:[e];function fC(e){const t=Array.isArray(e[0])?e[0]:e;return dC(t,"createSelector expects all input-selectors to be functions, but received the following types: "),t}function mC(e,t){const r=[],{length:n}=e;for(let a=0;a<n;a++)r.push(e[a].apply(null,t));return r}var vC=class{constructor(e){this.value=e}deref(){return this.value}},hC=typeof WeakRef<"u"?WeakRef:vC,pC=0,bd=1;function ia(){return{s:pC,v:void 0,o:null,p:null}}function op(e,t={}){let r=ia();const{resultEqualityCheck:n}=t;let a,i=0;function o(){let l=r;const{length:c}=arguments;for(let m=0,h=c;m<h;m++){const v=arguments[m];if(typeof v=="function"||typeof v=="object"&&v!==null){let y=l.o;y===null&&(l.o=y=new WeakMap);const g=y.get(v);g===void 0?(l=ia(),y.set(v,l)):l=g}else{let y=l.p;y===null&&(l.p=y=new Map);const g=y.get(v);g===void 0?(l=ia(),y.set(v,l)):l=g}}const d=l;let u;if(l.s===bd)u=l.v;else if(u=e.apply(null,arguments),i++,n){const m=a?.deref?.()??a;m!=null&&n(m,u)&&(u=m,i!==0&&i--),a=typeof u=="object"&&u!==null||typeof u=="function"?new hC(u):u}return d.s=bd,d.v=u,u}return o.clearCache=()=>{r=ia(),o.resetResultsCount()},o.resultsCount=()=>i,o.resetResultsCount=()=>{i=0},o}function yC(e,...t){const r=typeof e=="function"?{memoize:e,memoizeOptions:t}:e,n=(...a)=>{let i=0,o=0,l,c={},d=a.pop();typeof d=="object"&&(c=d,d=a.pop()),cC(d,`createSelector expects an output function after the inputs, but received: [${typeof d}]`);const u={...r,...c},{memoize:m,memoizeOptions:h=[],argsMemoize:v=op,argsMemoizeOptions:y=[]}=u,g=gd(h),p=gd(y),b=fC(a),j=m(function(){return i++,d.apply(null,arguments)},...g),x=v(function(){o++;const w=mC(b,arguments);return l=j.apply(null,w),l},...p);return Object.assign(x,{resultFunc:d,memoizedResultFunc:j,dependencies:b,dependencyRecomputations:()=>o,resetDependencyRecomputations:()=>{o=0},lastResult:()=>l,recomputations:()=>i,resetRecomputations:()=>{i=0},memoize:m,argsMemoize:v})};return Object.assign(n,{withTypes:()=>n}),n}var M=yC(op),gC=Object.assign((e,t=M)=>{uC(e,`createStructuredSelector expects first argument to be an object where each property is a selector, instead received a ${typeof e}`);const r=Object.keys(e),n=r.map(i=>e[i]);return t(n,(...i)=>i.reduce((o,l,c)=>(o[r[c]]=l,o),{}))},{withTypes:()=>gC}),Gs={},Xs={},Ys={},xd;function bC(){return xd||(xd=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(n){return typeof n=="symbol"?1:n===null?2:n===void 0?3:n!==n?4:0}const r=(n,a,i)=>{if(n!==a){const o=t(n),l=t(a);if(o===l&&o===0){if(n<a)return i==="desc"?1:-1;if(n>a)return i==="desc"?-1:1}return i==="desc"?l-o:o-l}return 0};e.compareValues=r})(Ys)),Ys}var Zs={},Js={},jd;function lp(){return jd||(jd=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(r){return typeof r=="symbol"||r instanceof Symbol}e.isSymbol=t})(Js)),Js}var wd;function xC(){return wd||(wd=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=lp(),r=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,n=/^\w*$/;function a(i,o){return Array.isArray(i)?!1:typeof i=="number"||typeof i=="boolean"||i==null||t.isSymbol(i)?!0:typeof i=="string"&&(n.test(i)||!r.test(i))||o!=null&&Object.hasOwn(o,i)}e.isKey=a})(Zs)),Zs}var Cd;function jC(){return Cd||(Cd=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=bC(),r=xC(),n=Gl();function a(i,o,l,c){if(i==null)return[];l=c?void 0:l,Array.isArray(i)||(i=Object.values(i)),Array.isArray(o)||(o=o==null?[null]:[o]),o.length===0&&(o=[null]),Array.isArray(l)||(l=l==null?[]:[l]),l=l.map(v=>String(v));const d=(v,y)=>{let g=v;for(let p=0;p<y.length&&g!=null;++p)g=g[y[p]];return g},u=(v,y)=>y==null||v==null?y:typeof v=="object"&&"key"in v?Object.hasOwn(y,v.key)?y[v.key]:d(y,v.path):typeof v=="function"?v(y):Array.isArray(v)?d(y,v):typeof y=="object"?y[v]:y,m=o.map(v=>(Array.isArray(v)&&v.length===1&&(v=v[0]),v==null||typeof v=="function"||Array.isArray(v)||r.isKey(v)?v:{key:v,path:n.toPath(v)}));return i.map(v=>({original:v,criteria:m.map(y=>u(y,v))})).slice().sort((v,y)=>{for(let g=0;g<m.length;g++){const p=t.compareValues(v.criteria[g],y.criteria[g],l[g]);if(p!==0)return p}return 0}).map(v=>v.original)}e.orderBy=a})(Xs)),Xs}var Qs={},kd;function wC(){return kd||(kd=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(r,n=1){const a=[],i=Math.floor(n),o=(l,c)=>{for(let d=0;d<l.length;d++){const u=l[d];Array.isArray(u)&&c<i?o(u,c+1):a.push(u)}};return o(r,0),a}e.flatten=t})(Qs)),Qs}var eo={},Pd;function cp(){return Pd||(Pd=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=ip(),r=Jh(),n=Qh(),a=tp();function i(o,l,c){return n.isObject(c)&&(typeof l=="number"&&r.isArrayLike(c)&&t.isIndex(l)&&l<c.length||typeof l=="string"&&l in c)?a.isEqualsSameValueZero(c[l],o):!1}e.isIterateeCall=i})(eo)),eo}var Sd;function CC(){return Sd||(Sd=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=jC(),r=wC(),n=cp();function a(i,...o){const l=o.length;return l>1&&n.isIterateeCall(i,o[0],o[1])?o=[]:l>2&&n.isIterateeCall(o[0],o[1],o[2])&&(o=[o[0]]),t.orderBy(i,r.flatten(o),["asc"])}e.sortBy=a})(Gs)),Gs}var to,Nd;function kC(){return Nd||(Nd=1,to=CC().sortBy),to}var PC=kC();const Pi=nn(PC);var up=e=>e.legend.settings,SC=e=>e.legend.size,NC=e=>e.legend.payload,OC=M([NC,up],(e,t)=>{var{itemSorter:r}=t,n=e.flat(1);return r?Pi(n,r):n});function AC(){return Y(OC)}var sa=1;function dp(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:[],[t,r]=f.useState({height:0,left:0,top:0,width:0}),n=f.useCallback(a=>{if(a!=null){var i=a.getBoundingClientRect(),o={height:i.height,left:i.left,top:i.top,width:i.width};(Math.abs(o.height-t.height)>sa||Math.abs(o.left-t.left)>sa||Math.abs(o.top-t.top)>sa||Math.abs(o.width-t.width)>sa)&&r({height:o.height,left:o.left,top:o.top,width:o.width})}},[t.width,t.height,t.top,t.left,...e]);return[t,n]}function ze(e){return`Minified Redux error #${e}; visit https://redux.js.org/Errors?code=${e} for the full message or use the non-minified dev environment for full errors. `}var EC=typeof Symbol=="function"&&Symbol.observable||"@@observable",Od=EC,ro=()=>Math.random().toString(36).substring(7).split("").join("."),_C={INIT:`@@redux/INIT${ro()}`,REPLACE:`@@redux/REPLACE${ro()}`,PROBE_UNKNOWN_ACTION:()=>`@@redux/PROBE_UNKNOWN_ACTION${ro()}`},Ia=_C;function tc(e){if(typeof e!="object"||e===null)return!1;let t=e;for(;Object.getPrototypeOf(t)!==null;)t=Object.getPrototypeOf(t);return Object.getPrototypeOf(e)===t||Object.getPrototypeOf(e)===null}function fp(e,t,r){if(typeof e!="function")throw new Error(ze(2));if(typeof t=="function"&&typeof r=="function"||typeof r=="function"&&typeof arguments[3]=="function")throw new Error(ze(0));if(typeof t=="function"&&typeof r>"u"&&(r=t,t=void 0),typeof r<"u"){if(typeof r!="function")throw new Error(ze(1));return r(fp)(e,t)}let n=e,a=t,i=new Map,o=i,l=0,c=!1;function d(){o===i&&(o=new Map,i.forEach((p,b)=>{o.set(b,p)}))}function u(){if(c)throw new Error(ze(3));return a}function m(p){if(typeof p!="function")throw new Error(ze(4));if(c)throw new Error(ze(5));let b=!0;d();const j=l++;return o.set(j,p),function(){if(b){if(c)throw new Error(ze(6));b=!1,d(),o.delete(j),i=null}}}function h(p){if(!tc(p))throw new Error(ze(7));if(typeof p.type>"u")throw new Error(ze(8));if(typeof p.type!="string")throw new Error(ze(17));if(c)throw new Error(ze(9));try{c=!0,a=n(a,p)}finally{c=!1}return(i=o).forEach(j=>{j()}),p}function v(p){if(typeof p!="function")throw new Error(ze(10));n=p,h({type:Ia.REPLACE})}function y(){const p=m;return{subscribe(b){if(typeof b!="object"||b===null)throw new Error(ze(11));function j(){const C=b;C.next&&C.next(u())}return j(),{unsubscribe:p(j)}},[Od](){return this}}}return h({type:Ia.INIT}),{dispatch:h,subscribe:m,getState:u,replaceReducer:v,[Od]:y}}function MC(e){Object.keys(e).forEach(t=>{const r=e[t];if(typeof r(void 0,{type:Ia.INIT})>"u")throw new Error(ze(12));if(typeof r(void 0,{type:Ia.PROBE_UNKNOWN_ACTION()})>"u")throw new Error(ze(13))})}function mp(e){const t=Object.keys(e),r={};for(let i=0;i<t.length;i++){const o=t[i];typeof e[o]=="function"&&(r[o]=e[o])}const n=Object.keys(r);let a;try{MC(r)}catch(i){a=i}return function(o={},l){if(a)throw a;let c=!1;const d={};for(let u=0;u<n.length;u++){const m=n[u],h=r[m],v=o[m],y=h(v,l);if(typeof y>"u")throw l&&l.type,new Error(ze(14));d[m]=y,c=c||y!==v}return c=c||n.length!==Object.keys(o).length,c?d:o}}function Da(...e){return e.length===0?t=>t:e.length===1?e[0]:e.reduce((t,r)=>(...n)=>t(r(...n)))}function TC(...e){return t=>(r,n)=>{const a=t(r,n);let i=()=>{throw new Error(ze(15))};const o={getState:a.getState,dispatch:(c,...d)=>i(c,...d)},l=e.map(c=>c(o));return i=Da(...l)(a.dispatch),{...a,dispatch:i}}}function vp(e){return tc(e)&&"type"in e&&typeof e.type=="string"}var hp=Symbol.for("immer-nothing"),Ad=Symbol.for("immer-draftable"),et=Symbol.for("immer-state");function bt(e,...t){throw new Error(`[Immer] minified error nr: ${e}. Full error at: https://bit.ly/3cXEKWf`)}var st=Object,Yr=st.getPrototypeOf,La="constructor",Si="prototype",Uo="configurable",Ra="enumerable",ka="writable",En="value",Ut=e=>!!e&&!!e[et];function jt(e){return e?pp(e)||Oi(e)||!!e[Ad]||!!e[La]?.[Ad]||Ai(e)||Ei(e):!1}var IC=st[Si][La].toString(),Ed=new WeakMap;function pp(e){if(!e||!rc(e))return!1;const t=Yr(e);if(t===null||t===st[Si])return!0;const r=st.hasOwnProperty.call(t,La)&&t[La];if(r===Object)return!0;if(!Kr(r))return!1;let n=Ed.get(r);return n===void 0&&(n=Function.toString.call(r),Ed.set(r,n)),n===IC}function Ni(e,t,r=!0){Vn(e)===0?(r?Reflect.ownKeys(e):st.keys(e)).forEach(a=>{t(a,e[a],e)}):e.forEach((n,a)=>t(a,n,e))}function Vn(e){const t=e[et];return t?t.type_:Oi(e)?1:Ai(e)?2:Ei(e)?3:0}var _d=(e,t,r=Vn(e))=>r===2?e.has(t):st[Si].hasOwnProperty.call(e,t),qo=(e,t,r=Vn(e))=>r===2?e.get(t):e[t],$a=(e,t,r,n=Vn(e))=>{n===2?e.set(t,r):n===3?e.add(r):e[t]=r};function DC(e,t){return e===t?e!==0||1/e===1/t:e!==e&&t!==t}var Oi=Array.isArray,Ai=e=>e instanceof Map,Ei=e=>e instanceof Set,rc=e=>typeof e=="object",Kr=e=>typeof e=="function",no=e=>typeof e=="boolean";function LC(e){const t=+e;return Number.isInteger(t)&&String(t)===e}var Rt=e=>e.copy_||e.base_,nc=e=>e.modified_?e.copy_:e.base_;function Wo(e,t){if(Ai(e))return new Map(e);if(Ei(e))return new Set(e);if(Oi(e))return Array[Si].slice.call(e);const r=pp(e);if(t===!0||t==="class_only"&&!r){const n=st.getOwnPropertyDescriptors(e);delete n[et];let a=Reflect.ownKeys(n);for(let i=0;i<a.length;i++){const o=a[i],l=n[o];l[ka]===!1&&(l[ka]=!0,l[Uo]=!0),(l.get||l.set)&&(n[o]={[Uo]:!0,[ka]:!0,[Ra]:l[Ra],[En]:e[o]})}return st.create(Yr(e),n)}else{const n=Yr(e);if(n!==null&&r)return{...e};const a=st.create(n);return st.assign(a,e)}}function ac(e,t=!1){return _i(e)||Ut(e)||!jt(e)||(Vn(e)>1&&st.defineProperties(e,{set:oa,add:oa,clear:oa,delete:oa}),st.freeze(e),t&&Ni(e,(r,n)=>{ac(n,!0)},!1)),e}function RC(){bt(2)}var oa={[En]:RC};function _i(e){return e===null||!rc(e)?!0:st.isFrozen(e)}var Ba="MapSet",Ho="Patches",Md="ArrayMethods",yp={};function Or(e){const t=yp[e];return t||bt(0,e),t}var Td=e=>!!yp[e],_n,gp=()=>_n,$C=(e,t)=>({drafts_:[],parent_:e,immer_:t,canAutoFreeze_:!0,unfinalizedDrafts_:0,handledSet_:new Set,processedForPatches_:new Set,mapSetPlugin_:Td(Ba)?Or(Ba):void 0,arrayMethodsPlugin_:Td(Md)?Or(Md):void 0});function Id(e,t){t&&(e.patchPlugin_=Or(Ho),e.patches_=[],e.inversePatches_=[],e.patchListener_=t)}function Go(e){Xo(e),e.drafts_.forEach(BC),e.drafts_=null}function Xo(e){e===_n&&(_n=e.parent_)}var Dd=e=>_n=$C(_n,e);function BC(e){const t=e[et];t.type_===0||t.type_===1?t.revoke_():t.revoked_=!0}function Ld(e,t){t.unfinalizedDrafts_=t.drafts_.length;const r=t.drafts_[0];if(e!==void 0&&e!==r){r[et].modified_&&(Go(t),bt(4)),jt(e)&&(e=Rd(t,e));const{patchPlugin_:a}=t;a&&a.generateReplacementPatches_(r[et].base_,e,t)}else e=Rd(t,r);return FC(t,e,!0),Go(t),t.patches_&&t.patchListener_(t.patches_,t.inversePatches_),e!==hp?e:void 0}function Rd(e,t){if(_i(t))return t;const r=t[et];if(!r)return Fa(t,e.handledSet_,e);if(!Mi(r,e))return t;if(!r.modified_)return r.base_;if(!r.finalized_){const{callbacks_:n}=r;if(n)for(;n.length>0;)n.pop()(e);jp(r,e)}return r.copy_}function FC(e,t,r=!1){!e.parent_&&e.immer_.autoFreeze_&&e.canAutoFreeze_&&ac(t,r)}function bp(e){e.finalized_=!0,e.scope_.unfinalizedDrafts_--}var Mi=(e,t)=>e.scope_===t,zC=[];function xp(e,t,r,n){const a=Rt(e),i=e.type_;if(n!==void 0&&qo(a,n,i)===t){$a(a,n,r,i);return}if(!e.draftLocations_){const l=e.draftLocations_=new Map;Ni(a,(c,d)=>{if(Ut(d)){const u=l.get(d)||[];u.push(c),l.set(d,u)}})}const o=e.draftLocations_.get(t)??zC;for(const l of o)$a(a,l,r,i)}function KC(e,t,r){e.callbacks_.push(function(a){const i=t;if(!i||!Mi(i,a))return;a.mapSetPlugin_?.fixSetContents(i);const o=nc(i);xp(e,i.draft_??i,o,r),jp(i,a)})}function jp(e,t){if(e.modified_&&!e.finalized_&&(e.type_===3||e.type_===1&&e.allIndicesReassigned_||(e.assigned_?.size??0)>0)){const{patchPlugin_:n}=t;if(n){const a=n.getPath(e);a&&n.generatePatches_(e,a,t)}bp(e)}}function VC(e,t,r){const{scope_:n}=e;if(Ut(r)){const a=r[et];Mi(a,n)&&a.callbacks_.push(function(){Pa(e);const o=nc(a);xp(e,r,o,t)})}else jt(r)&&e.callbacks_.push(function(){const i=Rt(e);e.type_===3?i.has(r)&&Fa(r,n.handledSet_,n):qo(i,t,e.type_)===r&&n.drafts_.length>1&&(e.assigned_.get(t)??!1)===!0&&e.copy_&&Fa(qo(e.copy_,t,e.type_),n.handledSet_,n)})}function Fa(e,t,r){return!r.immer_.autoFreeze_&&r.unfinalizedDrafts_<1||Ut(e)||t.has(e)||!jt(e)||_i(e)||(t.add(e),Ni(e,(n,a)=>{if(Ut(a)){const i=a[et];if(Mi(i,r)){const o=nc(i);$a(e,n,o,e.type_),bp(i)}}else jt(a)&&Fa(a,t,r)})),e}function UC(e,t){const r=Oi(e),n={type_:r?1:0,scope_:t?t.scope_:gp(),modified_:!1,finalized_:!1,assigned_:void 0,parent_:t,base_:e,draft_:null,copy_:null,revoke_:null,isManual_:!1,callbacks_:void 0};let a=n,i=za;r&&(a=[n],i=Mn);const{revoke:o,proxy:l}=Proxy.revocable(a,i);return n.draft_=l,n.revoke_=o,[l,n]}var za={get(e,t){if(t===et)return e;let r=e.scope_.arrayMethodsPlugin_;const n=e.type_===1&&typeof t=="string";if(n&&r?.isArrayOperationMethod(t))return r.createMethodInterceptor(e,t);const a=Rt(e);if(!_d(a,t,e.type_))return qC(e,a,t);const i=a[t];if(e.finalized_||!jt(i)||n&&e.operationMethod&&r?.isMutatingArrayMethod(e.operationMethod)&&LC(t))return i;if(i===ao(e.base_,t)){Pa(e);const o=e.type_===1?+t:t,l=Zo(e.scope_,i,e,o);return e.copy_[o]=l}return i},has(e,t){return t in Rt(e)},ownKeys(e){return Reflect.ownKeys(Rt(e))},set(e,t,r){const n=wp(Rt(e),t);if(n?.set)return n.set.call(e.draft_,r),!0;if(!e.modified_){const a=ao(Rt(e),t),i=a?.[et];if(i&&i.base_===r)return e.copy_[t]=r,e.assigned_.set(t,!1),!0;if(DC(r,a)&&(r!==void 0||_d(e.base_,t,e.type_)))return!0;Pa(e),Yo(e)}return e.copy_[t]===r&&(r!==void 0||t in e.copy_)||Number.isNaN(r)&&Number.isNaN(e.copy_[t])||(e.copy_[t]=r,e.assigned_.set(t,!0),VC(e,t,r)),!0},deleteProperty(e,t){return Pa(e),ao(e.base_,t)!==void 0||t in e.base_?(e.assigned_.set(t,!1),Yo(e)):e.assigned_.delete(t),e.copy_&&delete e.copy_[t],!0},getOwnPropertyDescriptor(e,t){const r=Rt(e),n=Reflect.getOwnPropertyDescriptor(r,t);return n&&{[ka]:!0,[Uo]:e.type_!==1||t!=="length",[Ra]:n[Ra],[En]:r[t]}},defineProperty(){bt(11)},getPrototypeOf(e){return Yr(e.base_)},setPrototypeOf(){bt(12)}},Mn={};for(let e in za){let t=za[e];Mn[e]=function(){const r=arguments;return r[0]=r[0][0],t.apply(this,r)}}Mn.deleteProperty=function(e,t){return Mn.set.call(this,e,t,void 0)};Mn.set=function(e,t,r){return za.set.call(this,e[0],t,r,e[0])};function ao(e,t){const r=e[et];return(r?Rt(r):e)[t]}function qC(e,t,r){const n=wp(t,r);return n?En in n?n[En]:n.get?.call(e.draft_):void 0}function wp(e,t){if(!(t in e))return;let r=Yr(e);for(;r;){const n=Object.getOwnPropertyDescriptor(r,t);if(n)return n;r=Yr(r)}}function Yo(e){e.modified_||(e.modified_=!0,e.parent_&&Yo(e.parent_))}function Pa(e){e.copy_||(e.assigned_=new Map,e.copy_=Wo(e.base_,e.scope_.immer_.useStrictShallowCopy_))}var WC=class{constructor(t){this.autoFreeze_=!0,this.useStrictShallowCopy_=!1,this.useStrictIteration_=!1,this.produce=(r,n,a)=>{if(Kr(r)&&!Kr(n)){const o=n;n=r;const l=this;return function(d=o,...u){return l.produce(d,m=>n.call(this,m,...u))}}Kr(n)||bt(6),a!==void 0&&!Kr(a)&&bt(7);let i;if(jt(r)){const o=Dd(this),l=Zo(o,r,void 0);let c=!0;try{i=n(l),c=!1}finally{c?Go(o):Xo(o)}return Id(o,a),Ld(i,o)}else if(!r||!rc(r)){if(i=n(r),i===void 0&&(i=r),i===hp&&(i=void 0),this.autoFreeze_&&ac(i,!0),a){const o=[],l=[];Or(Ho).generateReplacementPatches_(r,i,{patches_:o,inversePatches_:l}),a(o,l)}return i}else bt(1,r)},this.produceWithPatches=(r,n)=>{if(Kr(r))return(l,...c)=>this.produceWithPatches(l,d=>r(d,...c));let a,i;return[this.produce(r,n,(l,c)=>{a=l,i=c}),a,i]},no(t?.autoFreeze)&&this.setAutoFreeze(t.autoFreeze),no(t?.useStrictShallowCopy)&&this.setUseStrictShallowCopy(t.useStrictShallowCopy),no(t?.useStrictIteration)&&this.setUseStrictIteration(t.useStrictIteration)}createDraft(t){jt(t)||bt(8),Ut(t)&&(t=pt(t));const r=Dd(this),n=Zo(r,t,void 0);return n[et].isManual_=!0,Xo(r),n}finishDraft(t,r){const n=t&&t[et];(!n||!n.isManual_)&&bt(9);const{scope_:a}=n;return Id(a,r),Ld(void 0,a)}setAutoFreeze(t){this.autoFreeze_=t}setUseStrictShallowCopy(t){this.useStrictShallowCopy_=t}setUseStrictIteration(t){this.useStrictIteration_=t}shouldUseStrictIteration(){return this.useStrictIteration_}applyPatches(t,r){let n;for(n=r.length-1;n>=0;n--){const i=r[n];if(i.path.length===0&&i.op==="replace"){t=i.value;break}}n>-1&&(r=r.slice(n+1));const a=Or(Ho).applyPatches_;return Ut(t)?a(t,r):this.produce(t,i=>a(i,r))}};function Zo(e,t,r,n){const[a,i]=Ai(t)?Or(Ba).proxyMap_(t,r):Ei(t)?Or(Ba).proxySet_(t,r):UC(t,r);return(r?.scope_??gp()).drafts_.push(a),i.callbacks_=r?.callbacks_??[],i.key_=n,r&&n!==void 0?KC(r,i,n):i.callbacks_.push(function(c){c.mapSetPlugin_?.fixSetContents(i);const{patchPlugin_:d}=c;i.modified_&&d&&d.generatePatches_(i,[],c)}),a}function pt(e){return Ut(e)||bt(10,e),Cp(e)}function Cp(e){if(!jt(e)||_i(e))return e;const t=e[et];let r,n=!0;if(t){if(!t.modified_)return t.base_;t.finalized_=!0,r=Wo(e,t.scope_.immer_.useStrictShallowCopy_),n=t.scope_.immer_.shouldUseStrictIteration()}else r=Wo(e,!0);return Ni(r,(a,i)=>{$a(r,a,Cp(i))},n),t&&(t.finalized_=!1),r}var HC=new WC,kp=HC.produce;function Pp(e){return({dispatch:r,getState:n})=>a=>i=>typeof i=="function"?i(r,n,e):a(i)}var GC=Pp(),XC=Pp,YC=typeof window<"u"&&window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__?window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__:function(){if(arguments.length!==0)return typeof arguments[0]=="object"?Da:Da.apply(null,arguments)};function ct(e,t){function r(...n){if(t){let a=t(...n);if(!a)throw new Error(lt(0));return{type:e,payload:a.payload,..."meta"in a&&{meta:a.meta},..."error"in a&&{error:a.error}}}return{type:e,payload:n[0]}}return r.toString=()=>`${e}`,r.type=e,r.match=n=>vp(n)&&n.type===e,r}var Sp=class Cn extends Array{constructor(...t){super(...t),Object.setPrototypeOf(this,Cn.prototype)}static get[Symbol.species](){return Cn}concat(...t){return super.concat.apply(this,t)}prepend(...t){return t.length===1&&Array.isArray(t[0])?new Cn(...t[0].concat(this)):new Cn(...t.concat(this))}};function $d(e){return jt(e)?kp(e,()=>{}):e}function la(e,t,r){return e.has(t)?e.get(t):e.set(t,r(t)).get(t)}function ZC(e){return typeof e=="boolean"}var JC=()=>function(t){const{thunk:r=!0,immutableCheck:n=!0,serializableCheck:a=!0,actionCreatorCheck:i=!0}=t??{};let o=new Sp;return r&&(ZC(r)?o.push(GC):o.push(XC(r.extraArgument))),o},Np="RTK_autoBatch",xe=()=>e=>({payload:e,meta:{[Np]:!0}}),Bd=e=>t=>{setTimeout(t,e)},QC=(e,t)=>r=>{let n=!1;const a=()=>{n||(n=!0,cancelAnimationFrame(i),clearTimeout(o),r())},i=e(a),o=setTimeout(a,t)},Op=(e={type:"raf"})=>t=>(...r)=>{const n=t(...r);let a=!0,i=!1,o=!1;const l=new Set,c=e.type==="tick"?queueMicrotask:e.type==="raf"?typeof window<"u"&&window.requestAnimationFrame?QC(window.requestAnimationFrame,100):Bd(10):e.type==="callback"?e.queueNotification:Bd(e.timeout),d=()=>{o=!1,i&&(i=!1,l.forEach(u=>u()))};return Object.assign({},n,{subscribe(u){const m=()=>a&&u(),h=n.subscribe(m);return l.add(u),()=>{h(),l.delete(u)}},dispatch(u){try{return a=!u?.meta?.[Np],i=!a,i&&(o||(o=!0,c(d))),n.dispatch(u)}finally{a=!0}}})},ek=e=>function(r){const{autoBatch:n=!0}=r??{};let a=new Sp(e);return n&&a.push(Op(typeof n=="object"?n:void 0)),a};function tk(e){const t=JC(),{reducer:r=void 0,middleware:n,devTools:a=!0,preloadedState:i=void 0,enhancers:o=void 0}=e||{};let l;if(typeof r=="function")l=r;else if(tc(r))l=mp(r);else throw new Error(lt(1));let c;typeof n=="function"?c=n(t):c=t();let d=Da;a&&(d=YC({trace:!1,...typeof a=="object"&&a}));const u=TC(...c),m=ek(u);let h=typeof o=="function"?o(m):m();const v=d(...h);return fp(l,i,v)}function Ap(e){const t={},r=[];let n;const a={addCase(i,o){const l=typeof i=="string"?i:i.type;if(!l)throw new Error(lt(28));if(l in t)throw new Error(lt(29));return t[l]=o,a},addAsyncThunk(i,o){return o.pending&&(t[i.pending.type]=o.pending),o.rejected&&(t[i.rejected.type]=o.rejected),o.fulfilled&&(t[i.fulfilled.type]=o.fulfilled),o.settled&&r.push({matcher:i.settled,reducer:o.settled}),a},addMatcher(i,o){return r.push({matcher:i,reducer:o}),a},addDefaultCase(i){return n=i,a}};return e(a),[t,r,n]}function rk(e){return typeof e=="function"}function nk(e,t){let[r,n,a]=Ap(t),i;if(rk(e))i=()=>$d(e());else{const l=$d(e);i=()=>l}function o(l=i(),c){let d=[r[c.type],...n.filter(({matcher:u})=>u(c)).map(({reducer:u})=>u)];return d.filter(u=>!!u).length===0&&(d=[a]),d.reduce((u,m)=>{if(m)if(Ut(u)){const v=m(u,c);return v===void 0?u:v}else{if(jt(u))return kp(u,h=>m(h,c));{const h=m(u,c);if(h===void 0){if(u===null)return u;throw Error("A case reducer on a non-draftable value must not return undefined")}return h}}return u},l)}return o.getInitialState=i,o}var ak="ModuleSymbhasOwnPr-0123456789ABCDEFGHNRVfgctiUvz_KqYTJkLxpZXIjQW",ik=(e=21)=>{let t="",r=e;for(;r--;)t+=ak[Math.random()*64|0];return t},sk=Symbol.for("rtk-slice-createasyncthunk");function ok(e,t){return`${e}/${t}`}function lk({creators:e}={}){const t=e?.asyncThunk?.[sk];return function(n){const{name:a,reducerPath:i=a}=n;if(!a)throw new Error(lt(11));const o=(typeof n.reducers=="function"?n.reducers(uk()):n.reducers)||{},l=Object.keys(o),c={sliceCaseReducersByName:{},sliceCaseReducersByType:{},actionCreators:{},sliceMatchers:[]},d={addCase(x,C){const w=typeof x=="string"?x:x.type;if(!w)throw new Error(lt(12));if(w in c.sliceCaseReducersByType)throw new Error(lt(13));return c.sliceCaseReducersByType[w]=C,d},addMatcher(x,C){return c.sliceMatchers.push({matcher:x,reducer:C}),d},exposeAction(x,C){return c.actionCreators[x]=C,d},exposeCaseReducer(x,C){return c.sliceCaseReducersByName[x]=C,d}};l.forEach(x=>{const C=o[x],w={reducerName:x,type:ok(a,x),createNotation:typeof n.reducers=="function"};fk(C)?vk(w,C,d,t):dk(w,C,d)});function u(){const[x={},C=[],w=void 0]=typeof n.extraReducers=="function"?Ap(n.extraReducers):[n.extraReducers],P={...x,...c.sliceCaseReducersByType};return nk(n.initialState,O=>{for(let k in P)O.addCase(k,P[k]);for(let k of c.sliceMatchers)O.addMatcher(k.matcher,k.reducer);for(let k of C)O.addMatcher(k.matcher,k.reducer);w&&O.addDefaultCase(w)})}const m=x=>x,h=new Map,v=new WeakMap;let y;function g(x,C){return y||(y=u()),y(x,C)}function p(){return y||(y=u()),y.getInitialState()}function b(x,C=!1){function w(O){let k=O[x];return typeof k>"u"&&C&&(k=la(v,w,p)),k}function P(O=m){const k=la(h,C,()=>new WeakMap);return la(k,O,()=>{const N={};for(const[S,A]of Object.entries(n.selectors??{}))N[S]=ck(A,O,()=>la(v,O,p),C);return N})}return{reducerPath:x,getSelectors:P,get selectors(){return P(w)},selectSlice:w}}const j={name:a,reducer:g,actions:c.actionCreators,caseReducers:c.sliceCaseReducersByName,getInitialState:p,...b(i),injectInto(x,{reducerPath:C,...w}={}){const P=C??i;return x.inject({reducerPath:P,reducer:g},w),{...j,...b(P,!0)}}};return j}}function ck(e,t,r,n){function a(i,...o){let l=t(i);return typeof l>"u"&&n&&(l=r()),e(l,...o)}return a.unwrapped=e,a}var Xe=lk();function uk(){function e(t,r){return{_reducerDefinitionType:"asyncThunk",payloadCreator:t,...r}}return e.withTypes=()=>e,{reducer(t){return Object.assign({[t.name](...r){return t(...r)}}[t.name],{_reducerDefinitionType:"reducer"})},preparedReducer(t,r){return{_reducerDefinitionType:"reducerWithPrepare",prepare:t,reducer:r}},asyncThunk:e}}function dk({type:e,reducerName:t,createNotation:r},n,a){let i,o;if("reducer"in n){if(r&&!mk(n))throw new Error(lt(17));i=n.reducer,o=n.prepare}else i=n;a.addCase(e,i).exposeCaseReducer(t,i).exposeAction(t,o?ct(e,o):ct(e))}function fk(e){return e._reducerDefinitionType==="asyncThunk"}function mk(e){return e._reducerDefinitionType==="reducerWithPrepare"}function vk({type:e,reducerName:t},r,n,a){if(!a)throw new Error(lt(18));const{payloadCreator:i,fulfilled:o,pending:l,rejected:c,settled:d,options:u}=r,m=a(e,i,u);n.exposeAction(t,m),o&&n.addCase(m.fulfilled,o),l&&n.addCase(m.pending,l),c&&n.addCase(m.rejected,c),d&&n.addMatcher(m.settled,d),n.exposeCaseReducer(t,{fulfilled:o||ca,pending:l||ca,rejected:c||ca,settled:d||ca})}function ca(){}var hk="task",Ep="listener",_p="completed",ic="cancelled",pk=`task-${ic}`,yk=`task-${_p}`,Jo=`${Ep}-${ic}`,gk=`${Ep}-${_p}`,Ti=class{constructor(e){this.code=e,this.message=`${hk} ${ic} (reason: ${e})`}code;name="TaskAbortError";message},sc=(e,t)=>{if(typeof e!="function")throw new TypeError(lt(32))},Ka=()=>{},Mp=(e,t=Ka)=>(e.catch(t),e),Tp=(e,t)=>(e.addEventListener("abort",t,{once:!0}),()=>e.removeEventListener("abort",t)),Cr=e=>{if(e.aborted)throw new Ti(e.reason)};function Ip(e,t){let r=Ka;return new Promise((n,a)=>{const i=()=>a(new Ti(e.reason));if(e.aborted){i();return}r=Tp(e,i),t.finally(()=>r()).then(n,a)}).finally(()=>{r=Ka})}var bk=async(e,t)=>{try{return await Promise.resolve(),{status:"ok",value:await e()}}catch(r){return{status:r instanceof Ti?"cancelled":"rejected",error:r}}finally{t?.()}},Va=e=>t=>Mp(Ip(e,t).then(r=>(Cr(e),r))),Dp=e=>{const t=Va(e);return r=>t(new Promise(n=>setTimeout(n,r)))},{assign:Wr}=Object,Fd={},Ii="listenerMiddleware",xk=(e,t)=>{const r=n=>Tp(e,()=>n.abort(e.reason));return(n,a)=>{sc(n);const i=new AbortController;r(i);const o=bk(async()=>{Cr(e),Cr(i.signal);const l=await n({pause:Va(i.signal),delay:Dp(i.signal),signal:i.signal});return Cr(i.signal),l},()=>i.abort(yk));return a?.autoJoin&&t.push(o.catch(Ka)),{result:Va(e)(o),cancel(){i.abort(pk)}}}},jk=(e,t)=>{const r=async(n,a)=>{Cr(t);let i=()=>{};const l=[new Promise((c,d)=>{let u=e({predicate:n,effect:(m,h)=>{h.unsubscribe(),c([m,h.getState(),h.getOriginalState()])}});i=()=>{u(),d()}})];a!=null&&l.push(new Promise(c=>setTimeout(c,a,null)));try{const c=await Ip(t,Promise.race(l));return Cr(t),c}finally{i()}};return((n,a)=>Mp(r(n,a)))},Lp=e=>{let{type:t,actionCreator:r,matcher:n,predicate:a,effect:i}=e;if(t)a=ct(t).match;else if(r)t=r.type,a=r.match;else if(n)a=n;else if(!a)throw new Error(lt(21));return sc(i),{predicate:a,type:t,effect:i}},Rp=Wr(e=>{const{type:t,predicate:r,effect:n}=Lp(e);return{id:ik(),effect:n,type:t,predicate:r,pending:new Set,unsubscribe:()=>{throw new Error(lt(22))}}},{withTypes:()=>Rp}),zd=(e,t)=>{const{type:r,effect:n,predicate:a}=Lp(t);return Array.from(e.values()).find(i=>(typeof r=="string"?i.type===r:i.predicate===a)&&i.effect===n)},Qo=e=>{e.pending.forEach(t=>{t.abort(Jo)})},wk=(e,t)=>()=>{for(const r of t.keys())Qo(r);e.clear()},Kd=(e,t,r)=>{try{e(t,r)}catch(n){setTimeout(()=>{throw n},0)}},$p=Wr(ct(`${Ii}/add`),{withTypes:()=>$p}),Ck=ct(`${Ii}/removeAll`),Bp=Wr(ct(`${Ii}/remove`),{withTypes:()=>Bp}),kk=(...e)=>{console.error(`${Ii}/error`,...e)},Un=(e={})=>{const t=new Map,r=new Map,n=v=>{const y=r.get(v)??0;r.set(v,y+1)},a=v=>{const y=r.get(v)??1;y===1?r.delete(v):r.set(v,y-1)},{extra:i,onError:o=kk}=e;sc(o);const l=v=>(v.unsubscribe=()=>t.delete(v.id),t.set(v.id,v),y=>{v.unsubscribe(),y?.cancelActive&&Qo(v)}),c=(v=>{const y=zd(t,v)??Rp(v);return l(y)});Wr(c,{withTypes:()=>c});const d=v=>{const y=zd(t,v);return y&&(y.unsubscribe(),v.cancelActive&&Qo(y)),!!y};Wr(d,{withTypes:()=>d});const u=async(v,y,g,p)=>{const b=new AbortController,j=jk(c,b.signal),x=[];try{v.pending.add(b),n(v),await Promise.resolve(v.effect(y,Wr({},g,{getOriginalState:p,condition:(C,w)=>j(C,w).then(Boolean),take:j,delay:Dp(b.signal),pause:Va(b.signal),extra:i,signal:b.signal,fork:xk(b.signal,x),unsubscribe:v.unsubscribe,subscribe:()=>{t.set(v.id,v)},cancelActiveListeners:()=>{v.pending.forEach((C,w,P)=>{C!==b&&(C.abort(Jo),P.delete(C))})},cancel:()=>{b.abort(Jo),v.pending.delete(b)},throwIfCancelled:()=>{Cr(b.signal)}})))}catch(C){C instanceof Ti||Kd(o,C,{raisedBy:"effect"})}finally{await Promise.all(x),b.abort(gk),a(v),v.pending.delete(b)}},m=wk(t,r);return{middleware:v=>y=>g=>{if(!vp(g))return y(g);if($p.match(g))return c(g.payload);if(Ck.match(g)){m();return}if(Bp.match(g))return d(g.payload);let p=v.getState();const b=()=>{if(p===Fd)throw new Error(lt(23));return p};let j;try{if(j=y(g),t.size>0){const x=v.getState(),C=Array.from(t.values());for(const w of C){let P=!1;try{P=w.predicate(g,x,p)}catch(O){P=!1,Kd(o,O,{raisedBy:"predicate"})}P&&u(w,g,v,b)}}}finally{p=Fd}return j},startListening:c,stopListening:d,clearListeners:m}};function lt(e){return`Minified Redux Toolkit error #${e}; visit https://redux-toolkit.js.org/Errors?code=${e} for the full message or use the non-minified dev environment for full errors. `}var Pk={layoutType:"horizontal",width:0,height:0,margin:{top:5,right:5,bottom:5,left:5},scale:1},Fp=Xe({name:"chartLayout",initialState:Pk,reducers:{setLayout(e,t){e.layoutType=t.payload},setChartSize(e,t){e.width=t.payload.width,e.height=t.payload.height},setMargin(e,t){var r,n,a,i;e.margin.top=(r=t.payload.top)!==null&&r!==void 0?r:0,e.margin.right=(n=t.payload.right)!==null&&n!==void 0?n:0,e.margin.bottom=(a=t.payload.bottom)!==null&&a!==void 0?a:0,e.margin.left=(i=t.payload.left)!==null&&i!==void 0?i:0},setScale(e,t){e.scale=t.payload}}}),{setMargin:Sk,setLayout:Nk,setChartSize:Ok,setScale:Ak}=Fp.actions,Ek=Fp.reducer;function zp(e,t,r){return Array.isArray(e)&&e&&t+r!==0?e.slice(t,r+1):e}function ue(e){return Number.isFinite(e)}function Zr(e){return typeof e=="number"&&e>0&&Number.isFinite(e)}function Vd(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),r.push.apply(r,n)}return r}function Vr(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?Vd(Object(r),!0).forEach(function(n){_k(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):Vd(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function _k(e,t,r){return(t=Mk(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function Mk(e){var t=Tk(e,"string");return typeof t=="symbol"?t:t+""}function Tk(e,t){if(typeof e!="object"||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var n=r.call(e,t);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function he(e,t,r){return De(e)||De(t)?r:Mt(t)?Nr(e,t,r):typeof t=="function"?t(e):r}var Ik=(e,t,r)=>{if(t&&r){var{width:n,height:a}=r,{align:i,verticalAlign:o,layout:l}=t;if((l==="vertical"||l==="horizontal"&&o==="middle")&&i!=="center"&&Z(e[i]))return Vr(Vr({},e),{},{[i]:e[i]+(n||0)});if((l==="horizontal"||l==="vertical"&&i==="center")&&o!=="middle"&&Z(e[o]))return Vr(Vr({},e),{},{[o]:e[o]+(a||0)})}return e},Wt=(e,t)=>e==="horizontal"&&t==="xAxis"||e==="vertical"&&t==="yAxis"||e==="centric"&&t==="angleAxis"||e==="radial"&&t==="radiusAxis",Kp=(e,t,r,n)=>{if(n)return e.map(l=>l.coordinate);var a,i,o=e.map(l=>(l.coordinate===t&&(a=!0),l.coordinate===r&&(i=!0),l.coordinate));return a||o.push(t),i||o.push(r),o},Vp=(e,t,r)=>{if(!e)return null;var{duplicateDomain:n,type:a,range:i,scale:o,realScaleType:l,isCategorical:c,categoricalDomain:d,tickCount:u,ticks:m,niceTicks:h,axisType:v}=e;if(!o)return null;var y=l==="scaleBand"&&o.bandwidth?o.bandwidth()/2:2,g=a==="category"&&o.bandwidth?o.bandwidth()/y:0;if(g=v==="angleAxis"&&i&&i.length>=2?He(i[0]-i[1])*2*g:g,m||h){var p=(m||h||[]).map((b,j)=>{var x=n?n.indexOf(b):b,C=o.map(x);return ue(C)?{coordinate:C+g,value:b,offset:g,index:j}:null}).filter(tt);return p}return c&&d?d.map((b,j)=>{var x=o.map(b);return ue(x)?{coordinate:x+g,value:b,index:j,offset:g}:null}).filter(tt):o.ticks&&u!=null?o.ticks(u).map((b,j)=>{var x=o.map(b);return ue(x)?{coordinate:x+g,value:b,index:j,offset:g}:null}).filter(tt):o.domain().map((b,j)=>{var x=o.map(b);return ue(x)?{coordinate:x+g,value:n?n[b]:b,index:j,offset:g}:null}).filter(tt)},Dk=e=>{var t,r=e.length;if(!(r<=0)){var n=(t=e[0])===null||t===void 0?void 0:t.length;if(!(n==null||n<=0))for(var a=0;a<n;++a)for(var i=0,o=0,l=0;l<r;++l){var c=e[l],d=c?.[a];if(d!=null){var u=d[1],m=d[0],h=Vt(u)?m:u;h>=0?(d[0]=i,i+=h,d[1]=i):(d[0]=o,o+=h,d[1]=o)}}}},Lk=e=>{var t,r=e.length;if(!(r<=0)){var n=(t=e[0])===null||t===void 0?void 0:t.length;if(!(n==null||n<=0))for(var a=0;a<n;++a)for(var i=0,o=0;o<r;++o){var l=e[o],c=l?.[a];if(c!=null){var d=Vt(c[1])?c[0]:c[1];d>=0?(c[0]=i,i+=d,c[1]=i):(c[0]=0,c[1]=0)}}}},Rk={sign:Dk,expand:W0,none:Pr,silhouette:H0,wiggle:G0,positive:Lk},$k=(e,t,r)=>{var n,a=(n=Rk[r])!==null&&n!==void 0?n:Pr,i=q0().keys(t).value((l,c)=>Number(he(l,c,0))).order(Bo).offset(a),o=i(e);return o.forEach((l,c)=>{l.forEach((d,u)=>{var m=he(e[u],t[c],0);Array.isArray(m)&&m.length===2&&Z(m[0])&&Z(m[1])&&(d[0]=m[0],d[1]=m[1])})}),o};function Ud(e){var{axis:t,ticks:r,bandSize:n,entry:a,index:i,dataKey:o}=e;if(t.type==="category"){if(!t.allowDuplicatedCategory&&t.dataKey&&!De(a[t.dataKey])){var l=Hh(r,"value",a[t.dataKey]);if(l)return l.coordinate+n/2}return r!=null&&r[i]?r[i].coordinate+n/2:null}var c=he(a,De(o)?t.dataKey:o),d=t.scale.map(c);return Z(d)?d:null}var Bk=e=>{var t=e.flat(2).filter(Z);return[Math.min(...t),Math.max(...t)]},Fk=e=>[e[0]===1/0?0:e[0],e[1]===-1/0?0:e[1]],zk=(e,t,r)=>{if(e!=null)return Fk(Object.keys(e).reduce((n,a)=>{var i=e[a];if(!i)return n;var{stackedData:o}=i,l=o.reduce((c,d)=>{var u=zp(d,t,r),m=Bk(u);return!ue(m[0])||!ue(m[1])?c:[Math.min(c[0],m[0]),Math.max(c[1],m[1])]},[1/0,-1/0]);return[Math.min(l[0],n[0]),Math.max(l[1],n[1])]},[1/0,-1/0]))},qd=/^dataMin[\s]*-[\s]*([0-9]+([.]{1}[0-9]+){0,1})$/,Wd=/^dataMax[\s]*\+[\s]*([0-9]+([.]{1}[0-9]+){0,1})$/,Ua=(e,t,r)=>{if(e&&e.scale&&e.scale.bandwidth){var n=e.scale.bandwidth();if(!r||n>0)return n}if(e&&t&&t.length>=2){for(var a=Pi(t,u=>u.coordinate),i=1/0,o=1,l=a.length;o<l;o++){var c=a[o],d=a[o-1];i=Math.min((c?.coordinate||0)-(d?.coordinate||0),i)}return i===1/0?0:i}return r?void 0:0};function Hd(e){var{tooltipEntrySettings:t,dataKey:r,payload:n,value:a,name:i}=e;return Vr(Vr({},t),{},{dataKey:r,payload:n,value:a,name:i})}function Di(e,t){if(e)return String(e);if(typeof t=="string")return t}var Kk=(e,t)=>{if(t==="horizontal")return e.relativeX;if(t==="vertical")return e.relativeY},Vk=(e,t)=>t==="centric"?e.angle:e.radius,Ht=e=>e.layout.width,Gt=e=>e.layout.height,Uk=e=>e.layout.scale,Up=e=>e.layout.margin,Li=M(e=>e.cartesianAxis.xAxis,e=>Object.values(e)),Ri=M(e=>e.cartesianAxis.yAxis,e=>Object.values(e)),qp="data-recharts-item-index",Wp="data-recharts-item-id",qn=60;function Gd(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),r.push.apply(r,n)}return r}function ua(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?Gd(Object(r),!0).forEach(function(n){qk(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):Gd(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function qk(e,t,r){return(t=Wk(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function Wk(e){var t=Hk(e,"string");return typeof t=="symbol"?t:t+""}function Hk(e,t){if(typeof e!="object"||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var n=r.call(e,t);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}var Gk=e=>e.brush.height;function Xk(e){var t=Ri(e);return t.reduce((r,n)=>{if(n.orientation==="left"&&!n.mirror&&!n.hide){var a=typeof n.width=="number"?n.width:qn;return r+a}return r},0)}function Yk(e){var t=Ri(e);return t.reduce((r,n)=>{if(n.orientation==="right"&&!n.mirror&&!n.hide){var a=typeof n.width=="number"?n.width:qn;return r+a}return r},0)}function Zk(e){var t=Li(e);return t.reduce((r,n)=>n.orientation==="top"&&!n.mirror&&!n.hide?r+n.height:r,0)}function Jk(e){var t=Li(e);return t.reduce((r,n)=>n.orientation==="bottom"&&!n.mirror&&!n.hide?r+n.height:r,0)}var Be=M([Ht,Gt,Up,Gk,Xk,Yk,Zk,Jk,up,SC],(e,t,r,n,a,i,o,l,c,d)=>{var u={left:(r.left||0)+a,right:(r.right||0)+i},m={top:(r.top||0)+o,bottom:(r.bottom||0)+l},h=ua(ua({},m),u),v=h.bottom;h.bottom+=n,h=Ik(h,c,d);var y=e-h.left-h.right,g=t-h.top-h.bottom;return ua(ua({brushBottom:v},h),{},{width:Math.max(y,0),height:Math.max(g,0)})}),Qk=M(Be,e=>({x:e.left,y:e.top,width:e.width,height:e.height})),Hp=M(Ht,Gt,(e,t)=>({x:0,y:0,width:e,height:t})),eP=f.createContext(null),rt=()=>f.useContext(eP)!=null,$i=e=>e.brush,Bi=M([$i,Be,Up],(e,t,r)=>({height:e.height,x:Z(e.x)?e.x:t.left,y:Z(e.y)?e.y:t.top+t.height+t.brushBottom-(r?.bottom||0),width:Z(e.width)?e.width:t.width})),Xd=function(t,r){for(var n=arguments.length,a=new Array(n>2?n-2:0),i=2;i<n;i++)a[i-2]=arguments[i];if(typeof console<"u"&&console.warn&&(r===void 0&&console.warn("LogUtils requires an error message argument"),!t))if(r===void 0)console.warn("Minified exception occurred; use the non-minified dev environment for the full error message and additional helpful warnings.");else{var o=0;console.warn(r.replace(/%s/g,()=>a[o++]))}},tP={initialDimension:{width:-1,height:-1}},rP=f.createContext(tP.initialDimension),Gp=()=>f.useContext(rP);function oc(e){if(e)return{x:e.x,y:e.y,upperWidth:"upperWidth"in e?e.upperWidth:e.width,lowerWidth:"lowerWidth"in e?e.lowerWidth:e.width,width:e.width,height:e.height}}var Fi=()=>{var e,t=rt(),r=Y(Qk),n=Y(Bi),a=(e=Y($i))===null||e===void 0?void 0:e.padding;return!t||!n||!a?r:{width:n.width-a.left-a.right,height:n.height-a.top-a.bottom,x:a.left,y:a.top}},nP={top:0,bottom:0,left:0,right:0,width:0,height:0,brushBottom:0},Xp=()=>{var e;return(e=Y(Be))!==null&&e!==void 0?e:nP},lc=()=>Y(Ht),cc=()=>Y(Gt),aP=()=>Y(e=>e.layout.margin),ge=e=>e.layout.layoutType,an=()=>Y(ge),Yp=()=>{var e=an();if(e==="horizontal"||e==="vertical")return e},Zp=e=>{var t=e.layout.layoutType;if(t==="centric"||t==="radial")return t},iP=()=>{var e=an();return e!==void 0},Wn=e=>{var t=ve(),r=rt(),{width:n,height:a}=e,i=Gp(),o=n,l=a;return i&&(o=i.width>0?i.width:n,l=i.height>0?i.height:a),f.useEffect(()=>{!r&&Zr(o)&&Zr(l)&&t(Ok({width:o,height:l}))},[t,r,o,l]),null},Jp=Symbol.for("immer-nothing"),Yd=Symbol.for("immer-draftable"),ut=Symbol.for("immer-state");function xt(e,...t){throw new Error(`[Immer] minified error nr: ${e}. Full error at: https://bit.ly/3cXEKWf`)}var Tn=Object.getPrototypeOf;function Jr(e){return!!e&&!!e[ut]}function Ar(e){return e?Qp(e)||Array.isArray(e)||!!e[Yd]||!!e.constructor?.[Yd]||Hn(e)||Ki(e):!1}var sP=Object.prototype.constructor.toString(),Zd=new WeakMap;function Qp(e){if(!e||typeof e!="object")return!1;const t=Object.getPrototypeOf(e);if(t===null||t===Object.prototype)return!0;const r=Object.hasOwnProperty.call(t,"constructor")&&t.constructor;if(r===Object)return!0;if(typeof r!="function")return!1;let n=Zd.get(r);return n===void 0&&(n=Function.toString.call(r),Zd.set(r,n)),n===sP}function qa(e,t,r=!0){zi(e)===0?(r?Reflect.ownKeys(e):Object.keys(e)).forEach(a=>{t(a,e[a],e)}):e.forEach((n,a)=>t(a,n,e))}function zi(e){const t=e[ut];return t?t.type_:Array.isArray(e)?1:Hn(e)?2:Ki(e)?3:0}function el(e,t){return zi(e)===2?e.has(t):Object.prototype.hasOwnProperty.call(e,t)}function ey(e,t,r){const n=zi(e);n===2?e.set(t,r):n===3?e.add(r):e[t]=r}function oP(e,t){return e===t?e!==0||1/e===1/t:e!==e&&t!==t}function Hn(e){return e instanceof Map}function Ki(e){return e instanceof Set}function gr(e){return e.copy_||e.base_}function tl(e,t){if(Hn(e))return new Map(e);if(Ki(e))return new Set(e);if(Array.isArray(e))return Array.prototype.slice.call(e);const r=Qp(e);if(t===!0||t==="class_only"&&!r){const n=Object.getOwnPropertyDescriptors(e);delete n[ut];let a=Reflect.ownKeys(n);for(let i=0;i<a.length;i++){const o=a[i],l=n[o];l.writable===!1&&(l.writable=!0,l.configurable=!0),(l.get||l.set)&&(n[o]={configurable:!0,writable:!0,enumerable:l.enumerable,value:e[o]})}return Object.create(Tn(e),n)}else{const n=Tn(e);if(n!==null&&r)return{...e};const a=Object.create(n);return Object.assign(a,e)}}function uc(e,t=!1){return Vi(e)||Jr(e)||!Ar(e)||(zi(e)>1&&Object.defineProperties(e,{set:da,add:da,clear:da,delete:da}),Object.freeze(e),t&&Object.values(e).forEach(r=>uc(r,!0))),e}function lP(){xt(2)}var da={value:lP};function Vi(e){return e===null||typeof e!="object"?!0:Object.isFrozen(e)}var cP={};function Er(e){const t=cP[e];return t||xt(0,e),t}var In;function ty(){return In}function uP(e,t){return{drafts_:[],parent_:e,immer_:t,canAutoFreeze_:!0,unfinalizedDrafts_:0}}function Jd(e,t){t&&(Er("Patches"),e.patches_=[],e.inversePatches_=[],e.patchListener_=t)}function rl(e){nl(e),e.drafts_.forEach(dP),e.drafts_=null}function nl(e){e===In&&(In=e.parent_)}function Qd(e){return In=uP(In,e)}function dP(e){const t=e[ut];t.type_===0||t.type_===1?t.revoke_():t.revoked_=!0}function ef(e,t){t.unfinalizedDrafts_=t.drafts_.length;const r=t.drafts_[0];return e!==void 0&&e!==r?(r[ut].modified_&&(rl(t),xt(4)),Ar(e)&&(e=Wa(t,e),t.parent_||Ha(t,e)),t.patches_&&Er("Patches").generateReplacementPatches_(r[ut].base_,e,t.patches_,t.inversePatches_)):e=Wa(t,r,[]),rl(t),t.patches_&&t.patchListener_(t.patches_,t.inversePatches_),e!==Jp?e:void 0}function Wa(e,t,r){if(Vi(t))return t;const n=e.immer_.shouldUseStrictIteration(),a=t[ut];if(!a)return qa(t,(i,o)=>tf(e,a,t,i,o,r),n),t;if(a.scope_!==e)return t;if(!a.modified_)return Ha(e,a.base_,!0),a.base_;if(!a.finalized_){a.finalized_=!0,a.scope_.unfinalizedDrafts_--;const i=a.copy_;let o=i,l=!1;a.type_===3&&(o=new Set(i),i.clear(),l=!0),qa(o,(c,d)=>tf(e,a,i,c,d,r,l),n),Ha(e,i,!1),r&&e.patches_&&Er("Patches").generatePatches_(a,r,e.patches_,e.inversePatches_)}return a.copy_}function tf(e,t,r,n,a,i,o){if(a==null||typeof a!="object"&&!o)return;const l=Vi(a);if(!(l&&!o)){if(Jr(a)){const c=i&&t&&t.type_!==3&&!el(t.assigned_,n)?i.concat(n):void 0,d=Wa(e,a,c);if(ey(r,n,d),Jr(d))e.canAutoFreeze_=!1;else return}else o&&r.add(a);if(Ar(a)&&!l){if(!e.immer_.autoFreeze_&&e.unfinalizedDrafts_<1||t&&t.base_&&t.base_[n]===a&&l)return;Wa(e,a),(!t||!t.scope_.parent_)&&typeof n!="symbol"&&(Hn(r)?r.has(n):Object.prototype.propertyIsEnumerable.call(r,n))&&Ha(e,a)}}}function Ha(e,t,r=!1){!e.parent_&&e.immer_.autoFreeze_&&e.canAutoFreeze_&&uc(t,r)}function fP(e,t){const r=Array.isArray(e),n={type_:r?1:0,scope_:t?t.scope_:ty(),modified_:!1,finalized_:!1,assigned_:{},parent_:t,base_:e,draft_:null,copy_:null,revoke_:null,isManual_:!1};let a=n,i=dc;r&&(a=[n],i=Dn);const{revoke:o,proxy:l}=Proxy.revocable(a,i);return n.draft_=l,n.revoke_=o,l}var dc={get(e,t){if(t===ut)return e;const r=gr(e);if(!el(r,t))return mP(e,r,t);const n=r[t];return e.finalized_||!Ar(n)?n:n===io(e.base_,t)?(so(e),e.copy_[t]=il(n,e)):n},has(e,t){return t in gr(e)},ownKeys(e){return Reflect.ownKeys(gr(e))},set(e,t,r){const n=ry(gr(e),t);if(n?.set)return n.set.call(e.draft_,r),!0;if(!e.modified_){const a=io(gr(e),t),i=a?.[ut];if(i&&i.base_===r)return e.copy_[t]=r,e.assigned_[t]=!1,!0;if(oP(r,a)&&(r!==void 0||el(e.base_,t)))return!0;so(e),al(e)}return e.copy_[t]===r&&(r!==void 0||t in e.copy_)||Number.isNaN(r)&&Number.isNaN(e.copy_[t])||(e.copy_[t]=r,e.assigned_[t]=!0),!0},deleteProperty(e,t){return io(e.base_,t)!==void 0||t in e.base_?(e.assigned_[t]=!1,so(e),al(e)):delete e.assigned_[t],e.copy_&&delete e.copy_[t],!0},getOwnPropertyDescriptor(e,t){const r=gr(e),n=Reflect.getOwnPropertyDescriptor(r,t);return n&&{writable:!0,configurable:e.type_!==1||t!=="length",enumerable:n.enumerable,value:r[t]}},defineProperty(){xt(11)},getPrototypeOf(e){return Tn(e.base_)},setPrototypeOf(){xt(12)}},Dn={};qa(dc,(e,t)=>{Dn[e]=function(){return arguments[0]=arguments[0][0],t.apply(this,arguments)}});Dn.deleteProperty=function(e,t){return Dn.set.call(this,e,t,void 0)};Dn.set=function(e,t,r){return dc.set.call(this,e[0],t,r,e[0])};function io(e,t){const r=e[ut];return(r?gr(r):e)[t]}function mP(e,t,r){const n=ry(t,r);return n?"value"in n?n.value:n.get?.call(e.draft_):void 0}function ry(e,t){if(!(t in e))return;let r=Tn(e);for(;r;){const n=Object.getOwnPropertyDescriptor(r,t);if(n)return n;r=Tn(r)}}function al(e){e.modified_||(e.modified_=!0,e.parent_&&al(e.parent_))}function so(e){e.copy_||(e.copy_=tl(e.base_,e.scope_.immer_.useStrictShallowCopy_))}var vP=class{constructor(e){this.autoFreeze_=!0,this.useStrictShallowCopy_=!1,this.useStrictIteration_=!0,this.produce=(t,r,n)=>{if(typeof t=="function"&&typeof r!="function"){const i=r;r=t;const o=this;return function(c=i,...d){return o.produce(c,u=>r.call(this,u,...d))}}typeof r!="function"&&xt(6),n!==void 0&&typeof n!="function"&&xt(7);let a;if(Ar(t)){const i=Qd(this),o=il(t,void 0);let l=!0;try{a=r(o),l=!1}finally{l?rl(i):nl(i)}return Jd(i,n),ef(a,i)}else if(!t||typeof t!="object"){if(a=r(t),a===void 0&&(a=t),a===Jp&&(a=void 0),this.autoFreeze_&&uc(a,!0),n){const i=[],o=[];Er("Patches").generateReplacementPatches_(t,a,i,o),n(i,o)}return a}else xt(1,t)},this.produceWithPatches=(t,r)=>{if(typeof t=="function")return(o,...l)=>this.produceWithPatches(o,c=>t(c,...l));let n,a;return[this.produce(t,r,(o,l)=>{n=o,a=l}),n,a]},typeof e?.autoFreeze=="boolean"&&this.setAutoFreeze(e.autoFreeze),typeof e?.useStrictShallowCopy=="boolean"&&this.setUseStrictShallowCopy(e.useStrictShallowCopy),typeof e?.useStrictIteration=="boolean"&&this.setUseStrictIteration(e.useStrictIteration)}createDraft(e){Ar(e)||xt(8),Jr(e)&&(e=hP(e));const t=Qd(this),r=il(e,void 0);return r[ut].isManual_=!0,nl(t),r}finishDraft(e,t){const r=e&&e[ut];(!r||!r.isManual_)&&xt(9);const{scope_:n}=r;return Jd(n,t),ef(void 0,n)}setAutoFreeze(e){this.autoFreeze_=e}setUseStrictShallowCopy(e){this.useStrictShallowCopy_=e}setUseStrictIteration(e){this.useStrictIteration_=e}shouldUseStrictIteration(){return this.useStrictIteration_}applyPatches(e,t){let r;for(r=t.length-1;r>=0;r--){const a=t[r];if(a.path.length===0&&a.op==="replace"){e=a.value;break}}r>-1&&(t=t.slice(r+1));const n=Er("Patches").applyPatches_;return Jr(e)?n(e,t):this.produce(e,a=>n(a,t))}};function il(e,t){const r=Hn(e)?Er("MapSet").proxyMap_(e,t):Ki(e)?Er("MapSet").proxySet_(e,t):fP(e,t);return(t?t.scope_:ty()).drafts_.push(r),r}function hP(e){return Jr(e)||xt(10,e),ny(e)}function ny(e){if(!Ar(e)||Vi(e))return e;const t=e[ut];let r,n=!0;if(t){if(!t.modified_)return t.base_;t.finalized_=!0,r=tl(e,t.scope_.immer_.useStrictShallowCopy_),n=t.scope_.immer_.shouldUseStrictIteration()}else r=tl(e,!0);return qa(r,(a,i)=>{ey(r,a,ny(i))},n),t&&(t.finalized_=!1),r}var pP=new vP;pP.produce;var yP={settings:{layout:"horizontal",align:"center",verticalAlign:"middle",itemSorter:"value"},size:{width:0,height:0},payload:[]},ay=Xe({name:"legend",initialState:yP,reducers:{setLegendSize(e,t){e.size.width=t.payload.width,e.size.height=t.payload.height},setLegendSettings(e,t){e.settings.align=t.payload.align,e.settings.layout=t.payload.layout,e.settings.verticalAlign=t.payload.verticalAlign,e.settings.itemSorter=t.payload.itemSorter},addLegendPayload:{reducer(e,t){e.payload.push(t.payload)},prepare:xe()},replaceLegendPayload:{reducer(e,t){var{prev:r,next:n}=t.payload,a=pt(e).payload.indexOf(r);a>-1&&(e.payload[a]=n)},prepare:xe()},removeLegendPayload:{reducer(e,t){var r=pt(e).payload.indexOf(t.payload);r>-1&&e.payload.splice(r,1)},prepare:xe()}}}),{setLegendSize:rf,setLegendSettings:gP,addLegendPayload:iy,replaceLegendPayload:sy,removeLegendPayload:oy}=ay.actions,bP=ay.reducer,oo={exports:{}},lo={};/**
24
+ A`).concat(i,",").concat(i,",0,1,1,").concat(o,",").concat(a),className:"recharts-legend-icon"});if(c==="rect")return f.createElement("path",{stroke:"none",fill:l,d:"M0,".concat(ht/8,"h").concat(ht,"v").concat(ht*3/4,"h").concat(-ht,"z"),className:"recharts-legend-icon"});if(f.isValidElement(t.legendIcon)){var d=Yh({},t);return delete d.legendIcon,f.cloneElement(t.legendIcon,d)}return f.createElement(Yl,{fill:l,cx:a,cy:a,size:ht,sizeType:"diameter",type:c})}function $w(e){var{payload:t,iconSize:r,layout:n,formatter:a,inactiveColor:i,iconType:o,labelStyle:l}=e,c={x:0,y:0,width:ht,height:ht},d={display:n==="horizontal"?"inline-block":"block",marginRight:10},u={display:"inline-block",verticalAlign:"middle",marginRight:4};return t.map((m,h)=>{var v=m.formatter||a,g=de({"recharts-legend-item":!0,["legend-item-".concat(h)]:!0,inactive:m.inactive});if(m.type==="none")return null;var y=typeof l=="object"?Yh({},l):{};y.color=m.inactive?i:y.color||m.color;var p=v?v(m.value,m,h):m.value;return f.createElement("li",Ta({className:g,style:d,key:"legend-item-".concat(h)},Jl(e,m,h)),f.createElement(Wl,{width:r,height:r,viewBox:c,style:u,"aria-label":"".concat(m.value," legend icon")},f.createElement(Rw,{data:m,iconType:o,inactiveColor:i})),f.createElement("span",{className:"recharts-legend-item-text",style:y},p))})}var Bw=e=>{var t=Le(e,Dw),{payload:r,layout:n,align:a}=t;if(!r||!r.length)return null;var i={padding:0,margin:0,textAlign:n==="horizontal"?a:"left"};return f.createElement("ul",{className:"recharts-default-legend",style:i},f.createElement($w,Ta({},t,{payload:r})))},bs={},xs={},Ku;function Fw(){return Ku||(Ku=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(r,n){const a=new Map;for(let i=0;i<r.length;i++){const o=r[i],l=n(o,i,r);a.has(l)||a.set(l,o)}return Array.from(a.values())}e.uniqBy=t})(xs)),xs}var js={},Vu;function zw(){return Vu||(Vu=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(r,n){return function(...a){return r.apply(this,a.slice(0,n))}}e.ary=t})(js)),js}var ws={},qu;function Zh(){return qu||(qu=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(r){return r}e.identity=t})(ws)),ws}var Cs={},ks={},Ps={},Uu;function Kw(){return Uu||(Uu=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(r){return Number.isSafeInteger(r)&&r>=0}e.isLength=t})(Ps)),Ps}var Wu;function Jh(){return Wu||(Wu=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=Kw();function r(n){return n!=null&&typeof n!="function"&&t.isLength(n.length)}e.isArrayLike=r})(ks)),ks}var Ss={},Hu;function Vw(){return Hu||(Hu=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(r){return typeof r=="object"&&r!==null}e.isObjectLike=t})(Ss)),Ss}var Gu;function qw(){return Gu||(Gu=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=Jh(),r=Vw();function n(a){return r.isObjectLike(a)&&t.isArrayLike(a)}e.isArrayLikeObject=n})(Cs)),Cs}var Ns={},Os={},Xu;function Uw(){return Xu||(Xu=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=Xl();function r(n){return function(a){return t.get(a,n)}}e.property=r})(Os)),Os}var As={},Es={},_s={},Ms={},Yu;function Qh(){return Yu||(Yu=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})(Ms)),Ms}var Ts={},Zu;function ep(){return Zu||(Zu=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})(Ts)),Ts}var Is={},Ju;function tp(){return Ju||(Ju=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(r,n){return r===n||Number.isNaN(r)&&Number.isNaN(n)}e.isEqualsSameValueZero=t})(Is)),Is}var Qu;function Ww(){return Qu||(Qu=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=Qh(),r=ep(),n=tp();function a(u,m,h){return typeof h!="function"?a(u,m,()=>{}):i(u,m,function v(g,y,p,b,j,x){const C=h(g,y,p,b,j,x);return C!==void 0?!!C:i(g,y,v,x)},new Map)}function i(u,m,h,v){if(m===u)return!0;switch(typeof m){case"object":return o(u,m,h,v);case"function":return Object.keys(m).length>0?i(u,{...m},h,v):n.isEqualsSameValueZero(u,m);default:return t.isObject(u)?typeof m=="string"?m==="":!0:n.isEqualsSameValueZero(u,m)}}function o(u,m,h,v){if(m==null)return!0;if(Array.isArray(m))return c(u,m,h,v);if(m instanceof Map)return l(u,m,h,v);if(m instanceof Set)return d(u,m,h,v);const g=Object.keys(m);if(u==null||r.isPrimitive(u))return g.length===0;if(g.length===0)return!0;if(v?.has(m))return v.get(m)===u;v?.set(m,u);try{for(let y=0;y<g.length;y++){const p=g[y];if(!r.isPrimitive(u)&&!(p in u)||m[p]===void 0&&u[p]!==void 0||m[p]===null&&u[p]!==null||!h(u[p],m[p],p,u,m,v))return!1}return!0}finally{v?.delete(m)}}function l(u,m,h,v){if(m.size===0)return!0;if(!(u instanceof Map))return!1;for(const[g,y]of m.entries()){const p=u.get(g);if(h(p,y,g,u,m,v)===!1)return!1}return!0}function c(u,m,h,v){if(m.length===0)return!0;if(!Array.isArray(u))return!1;const g=new Set;for(let y=0;y<m.length;y++){const p=m[y];let b=!1;for(let j=0;j<u.length;j++){if(g.has(j))continue;const x=u[j];let C=!1;if(h(x,p,y,u,m,v)&&(C=!0),C){g.add(j),b=!0;break}}if(!b)return!1}return!0}function d(u,m,h,v){return m.size===0?!0:u instanceof Set?c([...u],[...m],h,v):!1}e.isMatchWith=a,e.isSetMatch=d})(_s)),_s}var ed;function rp(){return ed||(ed=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=Ww();function r(n,a){return t.isMatchWith(n,a,()=>{})}e.isMatch=r})(Es)),Es}var Ds={},Ls={},Rs={},td;function Hw(){return td||(td=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(r){return Object.getOwnPropertySymbols(r).filter(n=>Object.prototype.propertyIsEnumerable.call(r,n))}e.getSymbols=t})(Rs)),Rs}var $s={},rd;function Ql(){return rd||(rd=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})($s)),$s}var Bs={},nd;function np(){return nd||(nd=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t="[object RegExp]",r="[object String]",n="[object Number]",a="[object Boolean]",i="[object Arguments]",o="[object Symbol]",l="[object Date]",c="[object Map]",d="[object Set]",u="[object Array]",m="[object Function]",h="[object ArrayBuffer]",v="[object Object]",g="[object Error]",y="[object DataView]",p="[object Uint8Array]",b="[object Uint8ClampedArray]",j="[object Uint16Array]",x="[object Uint32Array]",C="[object BigUint64Array]",w="[object Int8Array]",P="[object Int16Array]",O="[object Int32Array]",k="[object BigInt64Array]",N="[object Float32Array]",S="[object Float64Array]";e.argumentsTag=i,e.arrayBufferTag=h,e.arrayTag=u,e.bigInt64ArrayTag=k,e.bigUint64ArrayTag=C,e.booleanTag=a,e.dataViewTag=y,e.dateTag=l,e.errorTag=g,e.float32ArrayTag=N,e.float64ArrayTag=S,e.functionTag=m,e.int16ArrayTag=P,e.int32ArrayTag=O,e.int8ArrayTag=w,e.mapTag=c,e.numberTag=n,e.objectTag=v,e.regexpTag=t,e.setTag=d,e.stringTag=r,e.symbolTag=o,e.uint16ArrayTag=j,e.uint32ArrayTag=x,e.uint8ArrayTag=p,e.uint8ClampedArrayTag=b})(Bs)),Bs}var Fs={},ad;function Gw(){return ad||(ad=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(r){return ArrayBuffer.isView(r)&&!(r instanceof DataView)}e.isTypedArray=t})(Fs)),Fs}var id;function ap(){return id||(id=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=Hw(),r=Ql(),n=np(),a=ep(),i=Gw();function o(u,m){return l(u,void 0,u,new Map,m)}function l(u,m,h,v=new Map,g=void 0){const y=g?.(u,m,h,v);if(y!==void 0)return y;if(a.isPrimitive(u))return u;if(v.has(u))return v.get(u);if(Array.isArray(u)){const p=new Array(u.length);v.set(u,p);for(let b=0;b<u.length;b++)p[b]=l(u[b],b,h,v,g);return Object.hasOwn(u,"index")&&(p.index=u.index),Object.hasOwn(u,"input")&&(p.input=u.input),p}if(u instanceof Date)return new Date(u.getTime());if(u instanceof RegExp){const p=new RegExp(u.source,u.flags);return p.lastIndex=u.lastIndex,p}if(u instanceof Map){const p=new Map;v.set(u,p);for(const[b,j]of u)p.set(b,l(j,b,h,v,g));return p}if(u instanceof Set){const p=new Set;v.set(u,p);for(const b of u)p.add(l(b,void 0,h,v,g));return p}if(typeof Buffer<"u"&&Buffer.isBuffer(u))return u.subarray();if(i.isTypedArray(u)){const p=new(Object.getPrototypeOf(u)).constructor(u.length);v.set(u,p);for(let b=0;b<u.length;b++)p[b]=l(u[b],b,h,v,g);return p}if(u instanceof ArrayBuffer||typeof SharedArrayBuffer<"u"&&u instanceof SharedArrayBuffer)return u.slice(0);if(u instanceof DataView){const p=new DataView(u.buffer.slice(0),u.byteOffset,u.byteLength);return v.set(u,p),c(p,u,h,v,g),p}if(typeof File<"u"&&u instanceof File){const p=new File([u],u.name,{type:u.type});return v.set(u,p),c(p,u,h,v,g),p}if(typeof Blob<"u"&&u instanceof Blob){const p=new Blob([u],{type:u.type});return v.set(u,p),c(p,u,h,v,g),p}if(u instanceof Error){const p=structuredClone(u);return v.set(u,p),p.message=u.message,p.name=u.name,p.stack=u.stack,p.cause=u.cause,p.constructor=u.constructor,c(p,u,h,v,g),p}if(u instanceof Boolean){const p=new Boolean(u.valueOf());return v.set(u,p),c(p,u,h,v,g),p}if(u instanceof Number){const p=new Number(u.valueOf());return v.set(u,p),c(p,u,h,v,g),p}if(u instanceof String){const p=new String(u.valueOf());return v.set(u,p),c(p,u,h,v,g),p}if(typeof u=="object"&&d(u)){const p=Object.create(Object.getPrototypeOf(u));return v.set(u,p),c(p,u,h,v,g),p}return u}function c(u,m,h=u,v,g){const y=[...Object.keys(m),...t.getSymbols(m)];for(let p=0;p<y.length;p++){const b=y[p],j=Object.getOwnPropertyDescriptor(u,b);(j==null||j.writable)&&(u[b]=l(m[b],b,h,v,g))}}function d(u){switch(r.getTag(u)){case n.argumentsTag:case n.arrayTag:case n.arrayBufferTag:case n.dataViewTag:case n.booleanTag:case n.dateTag:case n.float32ArrayTag:case n.float64ArrayTag:case n.int8ArrayTag:case n.int16ArrayTag:case n.int32ArrayTag:case n.mapTag:case n.numberTag:case n.objectTag:case n.regexpTag:case n.setTag:case n.stringTag:case n.symbolTag:case n.uint8ArrayTag:case n.uint8ClampedArrayTag:case n.uint16ArrayTag:case n.uint32ArrayTag:return!0;default:return!1}}e.cloneDeepWith=o,e.cloneDeepWithImpl=l,e.copyProperties=c})(Ls)),Ls}var sd;function Xw(){return sd||(sd=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=ap();function r(n){return t.cloneDeepWithImpl(n,void 0,n,new Map,void 0)}e.cloneDeep=r})(Ds)),Ds}var od;function Yw(){return od||(od=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=rp(),r=Xw();function n(a){return a=r.cloneDeep(a),i=>t.isMatch(i,a)}e.matches=n})(As)),As}var zs={},Ks={},Vs={},ld;function Zw(){return ld||(ld=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=ap(),r=Ql(),n=np();function a(i,o){return t.cloneDeepWith(i,(l,c,d,u)=>{const m=o?.(l,c,d,u);if(m!==void 0)return m;if(typeof i=="object"){if(r.getTag(i)===n.objectTag&&typeof i.constructor!="function"){const h={};return u.set(i,h),t.copyProperties(h,i,d,u),h}switch(Object.prototype.toString.call(i)){case n.numberTag:case n.stringTag:case n.booleanTag:{const h=new i.constructor(i?.valueOf());return t.copyProperties(h,i),h}case n.argumentsTag:{const h={};return t.copyProperties(h,i),h.length=i.length,h[Symbol.iterator]=i[Symbol.iterator],h}default:return}}})}e.cloneDeepWith=a})(Vs)),Vs}var cd;function Jw(){return cd||(cd=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=Zw();function r(n){return t.cloneDeepWith(n)}e.cloneDeep=r})(Ks)),Ks}var qs={},Us={},ud;function ip(){return ud||(ud=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=/^(?:0|[1-9]\d*)$/;function r(n,a=Number.MAX_SAFE_INTEGER){switch(typeof n){case"number":return Number.isInteger(n)&&n>=0&&n<a;case"symbol":return!1;case"string":return t.test(n)}}e.isIndex=r})(Us)),Us}var Ws={},dd;function Qw(){return dd||(dd=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=Ql();function r(n){return n!==null&&typeof n=="object"&&t.getTag(n)==="[object Arguments]"}e.isArguments=r})(Ws)),Ws}var fd;function eC(){return fd||(fd=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=Uh(),r=ip(),n=Qw(),a=Gl();function i(o,l){let c;if(Array.isArray(l)?c=l:typeof l=="string"&&t.isDeepKey(l)&&o?.[l]==null?c=a.toPath(l):c=[l],c.length===0)return!1;let d=o;for(let u=0;u<c.length;u++){const m=c[u];if((d==null||!Object.hasOwn(d,m))&&!((Array.isArray(d)||n.isArguments(d))&&r.isIndex(m)&&m<d.length))return!1;d=d[m]}return!0}e.has=i})(qs)),qs}var md;function tC(){return md||(md=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=rp(),r=Hl(),n=Jw(),a=Xl(),i=eC();function o(l,c){switch(typeof l){case"object":{Object.is(l?.valueOf(),-0)&&(l="-0");break}case"number":{l=r.toKey(l);break}}return c=n.cloneDeep(c),function(d){const u=a.get(d,l);return u===void 0?i.has(d,l):c===void 0?u===void 0:t.isMatch(u,c)}}e.matchesProperty=o})(zs)),zs}var vd;function rC(){return vd||(vd=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=Zh(),r=Uw(),n=Yw(),a=tC();function i(o){if(o==null)return t.identity;switch(typeof o){case"function":return o;case"object":return Array.isArray(o)&&o.length===2?a.matchesProperty(o[0],o[1]):n.matches(o);case"string":case"symbol":case"number":return r.property(o)}}e.iteratee=i})(Ns)),Ns}var hd;function nC(){return hd||(hd=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=Fw(),r=zw(),n=Zh(),a=qw(),i=rC();function o(l,c=n.identity){return a.isArrayLikeObject(l)?t.uniqBy(Array.from(l),r.ary(i.iteratee(c),1)):[]}e.uniqBy=o})(bs)),bs}var Hs,pd;function aC(){return pd||(pd=1,Hs=nC().uniqBy),Hs}var iC=aC();const yd=nn(iC);function sp(e,t,r){return t===!0?yd(e,r):typeof t=="function"?yd(e,t):e}var ec=f.createContext(null),sC=e=>e,ve=()=>{var e=f.useContext(ec);return e?e.store.dispatch:sC},Ca=()=>{},oC=()=>Ca,lC=(e,t)=>e===t;function Y(e){var t=f.useContext(ec),r=f.useMemo(()=>t?n=>{if(n!=null)return e(n)}:Ca,[t,e]);return gj.useSyncExternalStoreWithSelector(t?t.subscription.addNestedSub:oC,t?t.store.getState:Ca,t?t.store.getState:Ca,r,lC)}function cC(e,t=`expected a function, instead received ${typeof e}`){if(typeof e!="function")throw new TypeError(t)}function uC(e,t=`expected an object, instead received ${typeof e}`){if(typeof e!="object")throw new TypeError(t)}function dC(e,t="expected all items to be functions, instead received the following types: "){if(!e.every(r=>typeof r=="function")){const r=e.map(n=>typeof n=="function"?`function ${n.name||"unnamed"}()`:typeof n).join(", ");throw new TypeError(`${t}[${r}]`)}}var gd=e=>Array.isArray(e)?e:[e];function fC(e){const t=Array.isArray(e[0])?e[0]:e;return dC(t,"createSelector expects all input-selectors to be functions, but received the following types: "),t}function mC(e,t){const r=[],{length:n}=e;for(let a=0;a<n;a++)r.push(e[a].apply(null,t));return r}var vC=class{constructor(e){this.value=e}deref(){return this.value}},hC=typeof WeakRef<"u"?WeakRef:vC,pC=0,bd=1;function ia(){return{s:pC,v:void 0,o:null,p:null}}function op(e,t={}){let r=ia();const{resultEqualityCheck:n}=t;let a,i=0;function o(){let l=r;const{length:c}=arguments;for(let m=0,h=c;m<h;m++){const v=arguments[m];if(typeof v=="function"||typeof v=="object"&&v!==null){let g=l.o;g===null&&(l.o=g=new WeakMap);const y=g.get(v);y===void 0?(l=ia(),g.set(v,l)):l=y}else{let g=l.p;g===null&&(l.p=g=new Map);const y=g.get(v);y===void 0?(l=ia(),g.set(v,l)):l=y}}const d=l;let u;if(l.s===bd)u=l.v;else if(u=e.apply(null,arguments),i++,n){const m=a?.deref?.()??a;m!=null&&n(m,u)&&(u=m,i!==0&&i--),a=typeof u=="object"&&u!==null||typeof u=="function"?new hC(u):u}return d.s=bd,d.v=u,u}return o.clearCache=()=>{r=ia(),o.resetResultsCount()},o.resultsCount=()=>i,o.resetResultsCount=()=>{i=0},o}function yC(e,...t){const r=typeof e=="function"?{memoize:e,memoizeOptions:t}:e,n=(...a)=>{let i=0,o=0,l,c={},d=a.pop();typeof d=="object"&&(c=d,d=a.pop()),cC(d,`createSelector expects an output function after the inputs, but received: [${typeof d}]`);const u={...r,...c},{memoize:m,memoizeOptions:h=[],argsMemoize:v=op,argsMemoizeOptions:g=[]}=u,y=gd(h),p=gd(g),b=fC(a),j=m(function(){return i++,d.apply(null,arguments)},...y),x=v(function(){o++;const w=mC(b,arguments);return l=j.apply(null,w),l},...p);return Object.assign(x,{resultFunc:d,memoizedResultFunc:j,dependencies:b,dependencyRecomputations:()=>o,resetDependencyRecomputations:()=>{o=0},lastResult:()=>l,recomputations:()=>i,resetRecomputations:()=>{i=0},memoize:m,argsMemoize:v})};return Object.assign(n,{withTypes:()=>n}),n}var M=yC(op),gC=Object.assign((e,t=M)=>{uC(e,`createStructuredSelector expects first argument to be an object where each property is a selector, instead received a ${typeof e}`);const r=Object.keys(e),n=r.map(i=>e[i]);return t(n,(...i)=>i.reduce((o,l,c)=>(o[r[c]]=l,o),{}))},{withTypes:()=>gC}),Gs={},Xs={},Ys={},xd;function bC(){return xd||(xd=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(n){return typeof n=="symbol"?1:n===null?2:n===void 0?3:n!==n?4:0}const r=(n,a,i)=>{if(n!==a){const o=t(n),l=t(a);if(o===l&&o===0){if(n<a)return i==="desc"?1:-1;if(n>a)return i==="desc"?-1:1}return i==="desc"?l-o:o-l}return 0};e.compareValues=r})(Ys)),Ys}var Zs={},Js={},jd;function lp(){return jd||(jd=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(r){return typeof r=="symbol"||r instanceof Symbol}e.isSymbol=t})(Js)),Js}var wd;function xC(){return wd||(wd=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=lp(),r=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,n=/^\w*$/;function a(i,o){return Array.isArray(i)?!1:typeof i=="number"||typeof i=="boolean"||i==null||t.isSymbol(i)?!0:typeof i=="string"&&(n.test(i)||!r.test(i))||o!=null&&Object.hasOwn(o,i)}e.isKey=a})(Zs)),Zs}var Cd;function jC(){return Cd||(Cd=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=bC(),r=xC(),n=Gl();function a(i,o,l,c){if(i==null)return[];l=c?void 0:l,Array.isArray(i)||(i=Object.values(i)),Array.isArray(o)||(o=o==null?[null]:[o]),o.length===0&&(o=[null]),Array.isArray(l)||(l=l==null?[]:[l]),l=l.map(v=>String(v));const d=(v,g)=>{let y=v;for(let p=0;p<g.length&&y!=null;++p)y=y[g[p]];return y},u=(v,g)=>g==null||v==null?g:typeof v=="object"&&"key"in v?Object.hasOwn(g,v.key)?g[v.key]:d(g,v.path):typeof v=="function"?v(g):Array.isArray(v)?d(g,v):typeof g=="object"?g[v]:g,m=o.map(v=>(Array.isArray(v)&&v.length===1&&(v=v[0]),v==null||typeof v=="function"||Array.isArray(v)||r.isKey(v)?v:{key:v,path:n.toPath(v)}));return i.map(v=>({original:v,criteria:m.map(g=>u(g,v))})).slice().sort((v,g)=>{for(let y=0;y<m.length;y++){const p=t.compareValues(v.criteria[y],g.criteria[y],l[y]);if(p!==0)return p}return 0}).map(v=>v.original)}e.orderBy=a})(Xs)),Xs}var Qs={},kd;function wC(){return kd||(kd=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(r,n=1){const a=[],i=Math.floor(n),o=(l,c)=>{for(let d=0;d<l.length;d++){const u=l[d];Array.isArray(u)&&c<i?o(u,c+1):a.push(u)}};return o(r,0),a}e.flatten=t})(Qs)),Qs}var eo={},Pd;function cp(){return Pd||(Pd=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=ip(),r=Jh(),n=Qh(),a=tp();function i(o,l,c){return n.isObject(c)&&(typeof l=="number"&&r.isArrayLike(c)&&t.isIndex(l)&&l<c.length||typeof l=="string"&&l in c)?a.isEqualsSameValueZero(c[l],o):!1}e.isIterateeCall=i})(eo)),eo}var Sd;function CC(){return Sd||(Sd=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=jC(),r=wC(),n=cp();function a(i,...o){const l=o.length;return l>1&&n.isIterateeCall(i,o[0],o[1])?o=[]:l>2&&n.isIterateeCall(o[0],o[1],o[2])&&(o=[o[0]]),t.orderBy(i,r.flatten(o),["asc"])}e.sortBy=a})(Gs)),Gs}var to,Nd;function kC(){return Nd||(Nd=1,to=CC().sortBy),to}var PC=kC();const Pi=nn(PC);var up=e=>e.legend.settings,SC=e=>e.legend.size,NC=e=>e.legend.payload,OC=M([NC,up],(e,t)=>{var{itemSorter:r}=t,n=e.flat(1);return r?Pi(n,r):n});function AC(){return Y(OC)}var sa=1;function dp(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:[],[t,r]=f.useState({height:0,left:0,top:0,width:0}),n=f.useCallback(a=>{if(a!=null){var i=a.getBoundingClientRect(),o={height:i.height,left:i.left,top:i.top,width:i.width};(Math.abs(o.height-t.height)>sa||Math.abs(o.left-t.left)>sa||Math.abs(o.top-t.top)>sa||Math.abs(o.width-t.width)>sa)&&r({height:o.height,left:o.left,top:o.top,width:o.width})}},[t.width,t.height,t.top,t.left,...e]);return[t,n]}function ze(e){return`Minified Redux error #${e}; visit https://redux.js.org/Errors?code=${e} for the full message or use the non-minified dev environment for full errors. `}var EC=typeof Symbol=="function"&&Symbol.observable||"@@observable",Od=EC,ro=()=>Math.random().toString(36).substring(7).split("").join("."),_C={INIT:`@@redux/INIT${ro()}`,REPLACE:`@@redux/REPLACE${ro()}`,PROBE_UNKNOWN_ACTION:()=>`@@redux/PROBE_UNKNOWN_ACTION${ro()}`},Ia=_C;function tc(e){if(typeof e!="object"||e===null)return!1;let t=e;for(;Object.getPrototypeOf(t)!==null;)t=Object.getPrototypeOf(t);return Object.getPrototypeOf(e)===t||Object.getPrototypeOf(e)===null}function fp(e,t,r){if(typeof e!="function")throw new Error(ze(2));if(typeof t=="function"&&typeof r=="function"||typeof r=="function"&&typeof arguments[3]=="function")throw new Error(ze(0));if(typeof t=="function"&&typeof r>"u"&&(r=t,t=void 0),typeof r<"u"){if(typeof r!="function")throw new Error(ze(1));return r(fp)(e,t)}let n=e,a=t,i=new Map,o=i,l=0,c=!1;function d(){o===i&&(o=new Map,i.forEach((p,b)=>{o.set(b,p)}))}function u(){if(c)throw new Error(ze(3));return a}function m(p){if(typeof p!="function")throw new Error(ze(4));if(c)throw new Error(ze(5));let b=!0;d();const j=l++;return o.set(j,p),function(){if(b){if(c)throw new Error(ze(6));b=!1,d(),o.delete(j),i=null}}}function h(p){if(!tc(p))throw new Error(ze(7));if(typeof p.type>"u")throw new Error(ze(8));if(typeof p.type!="string")throw new Error(ze(17));if(c)throw new Error(ze(9));try{c=!0,a=n(a,p)}finally{c=!1}return(i=o).forEach(j=>{j()}),p}function v(p){if(typeof p!="function")throw new Error(ze(10));n=p,h({type:Ia.REPLACE})}function g(){const p=m;return{subscribe(b){if(typeof b!="object"||b===null)throw new Error(ze(11));function j(){const C=b;C.next&&C.next(u())}return j(),{unsubscribe:p(j)}},[Od](){return this}}}return h({type:Ia.INIT}),{dispatch:h,subscribe:m,getState:u,replaceReducer:v,[Od]:g}}function MC(e){Object.keys(e).forEach(t=>{const r=e[t];if(typeof r(void 0,{type:Ia.INIT})>"u")throw new Error(ze(12));if(typeof r(void 0,{type:Ia.PROBE_UNKNOWN_ACTION()})>"u")throw new Error(ze(13))})}function mp(e){const t=Object.keys(e),r={};for(let i=0;i<t.length;i++){const o=t[i];typeof e[o]=="function"&&(r[o]=e[o])}const n=Object.keys(r);let a;try{MC(r)}catch(i){a=i}return function(o={},l){if(a)throw a;let c=!1;const d={};for(let u=0;u<n.length;u++){const m=n[u],h=r[m],v=o[m],g=h(v,l);if(typeof g>"u")throw l&&l.type,new Error(ze(14));d[m]=g,c=c||g!==v}return c=c||n.length!==Object.keys(o).length,c?d:o}}function Da(...e){return e.length===0?t=>t:e.length===1?e[0]:e.reduce((t,r)=>(...n)=>t(r(...n)))}function TC(...e){return t=>(r,n)=>{const a=t(r,n);let i=()=>{throw new Error(ze(15))};const o={getState:a.getState,dispatch:(c,...d)=>i(c,...d)},l=e.map(c=>c(o));return i=Da(...l)(a.dispatch),{...a,dispatch:i}}}function vp(e){return tc(e)&&"type"in e&&typeof e.type=="string"}var hp=Symbol.for("immer-nothing"),Ad=Symbol.for("immer-draftable"),et=Symbol.for("immer-state");function xt(e,...t){throw new Error(`[Immer] minified error nr: ${e}. Full error at: https://bit.ly/3cXEKWf`)}var st=Object,Yr=st.getPrototypeOf,La="constructor",Si="prototype",qo="configurable",Ra="enumerable",ka="writable",En="value",qt=e=>!!e&&!!e[et];function Ct(e){return e?pp(e)||Oi(e)||!!e[Ad]||!!e[La]?.[Ad]||Ai(e)||Ei(e):!1}var IC=st[Si][La].toString(),Ed=new WeakMap;function pp(e){if(!e||!rc(e))return!1;const t=Yr(e);if(t===null||t===st[Si])return!0;const r=st.hasOwnProperty.call(t,La)&&t[La];if(r===Object)return!0;if(!Kr(r))return!1;let n=Ed.get(r);return n===void 0&&(n=Function.toString.call(r),Ed.set(r,n)),n===IC}function Ni(e,t,r=!0){Vn(e)===0?(r?Reflect.ownKeys(e):st.keys(e)).forEach(a=>{t(a,e[a],e)}):e.forEach((n,a)=>t(a,n,e))}function Vn(e){const t=e[et];return t?t.type_:Oi(e)?1:Ai(e)?2:Ei(e)?3:0}var _d=(e,t,r=Vn(e))=>r===2?e.has(t):st[Si].hasOwnProperty.call(e,t),Uo=(e,t,r=Vn(e))=>r===2?e.get(t):e[t],$a=(e,t,r,n=Vn(e))=>{n===2?e.set(t,r):n===3?e.add(r):e[t]=r};function DC(e,t){return e===t?e!==0||1/e===1/t:e!==e&&t!==t}var Oi=Array.isArray,Ai=e=>e instanceof Map,Ei=e=>e instanceof Set,rc=e=>typeof e=="object",Kr=e=>typeof e=="function",no=e=>typeof e=="boolean";function LC(e){const t=+e;return Number.isInteger(t)&&String(t)===e}var $t=e=>e.copy_||e.base_,nc=e=>e.modified_?e.copy_:e.base_;function Wo(e,t){if(Ai(e))return new Map(e);if(Ei(e))return new Set(e);if(Oi(e))return Array[Si].slice.call(e);const r=pp(e);if(t===!0||t==="class_only"&&!r){const n=st.getOwnPropertyDescriptors(e);delete n[et];let a=Reflect.ownKeys(n);for(let i=0;i<a.length;i++){const o=a[i],l=n[o];l[ka]===!1&&(l[ka]=!0,l[qo]=!0),(l.get||l.set)&&(n[o]={[qo]:!0,[ka]:!0,[Ra]:l[Ra],[En]:e[o]})}return st.create(Yr(e),n)}else{const n=Yr(e);if(n!==null&&r)return{...e};const a=st.create(n);return st.assign(a,e)}}function ac(e,t=!1){return _i(e)||qt(e)||!Ct(e)||(Vn(e)>1&&st.defineProperties(e,{set:oa,add:oa,clear:oa,delete:oa}),st.freeze(e),t&&Ni(e,(r,n)=>{ac(n,!0)},!1)),e}function RC(){xt(2)}var oa={[En]:RC};function _i(e){return e===null||!rc(e)?!0:st.isFrozen(e)}var Ba="MapSet",Ho="Patches",Md="ArrayMethods",yp={};function Or(e){const t=yp[e];return t||xt(0,e),t}var Td=e=>!!yp[e],_n,gp=()=>_n,$C=(e,t)=>({drafts_:[],parent_:e,immer_:t,canAutoFreeze_:!0,unfinalizedDrafts_:0,handledSet_:new Set,processedForPatches_:new Set,mapSetPlugin_:Td(Ba)?Or(Ba):void 0,arrayMethodsPlugin_:Td(Md)?Or(Md):void 0});function Id(e,t){t&&(e.patchPlugin_=Or(Ho),e.patches_=[],e.inversePatches_=[],e.patchListener_=t)}function Go(e){Xo(e),e.drafts_.forEach(BC),e.drafts_=null}function Xo(e){e===_n&&(_n=e.parent_)}var Dd=e=>_n=$C(_n,e);function BC(e){const t=e[et];t.type_===0||t.type_===1?t.revoke_():t.revoked_=!0}function Ld(e,t){t.unfinalizedDrafts_=t.drafts_.length;const r=t.drafts_[0];if(e!==void 0&&e!==r){r[et].modified_&&(Go(t),xt(4)),Ct(e)&&(e=Rd(t,e));const{patchPlugin_:a}=t;a&&a.generateReplacementPatches_(r[et].base_,e,t)}else e=Rd(t,r);return FC(t,e,!0),Go(t),t.patches_&&t.patchListener_(t.patches_,t.inversePatches_),e!==hp?e:void 0}function Rd(e,t){if(_i(t))return t;const r=t[et];if(!r)return Fa(t,e.handledSet_,e);if(!Mi(r,e))return t;if(!r.modified_)return r.base_;if(!r.finalized_){const{callbacks_:n}=r;if(n)for(;n.length>0;)n.pop()(e);jp(r,e)}return r.copy_}function FC(e,t,r=!1){!e.parent_&&e.immer_.autoFreeze_&&e.canAutoFreeze_&&ac(t,r)}function bp(e){e.finalized_=!0,e.scope_.unfinalizedDrafts_--}var Mi=(e,t)=>e.scope_===t,zC=[];function xp(e,t,r,n){const a=$t(e),i=e.type_;if(n!==void 0&&Uo(a,n,i)===t){$a(a,n,r,i);return}if(!e.draftLocations_){const l=e.draftLocations_=new Map;Ni(a,(c,d)=>{if(qt(d)){const u=l.get(d)||[];u.push(c),l.set(d,u)}})}const o=e.draftLocations_.get(t)??zC;for(const l of o)$a(a,l,r,i)}function KC(e,t,r){e.callbacks_.push(function(a){const i=t;if(!i||!Mi(i,a))return;a.mapSetPlugin_?.fixSetContents(i);const o=nc(i);xp(e,i.draft_??i,o,r),jp(i,a)})}function jp(e,t){if(e.modified_&&!e.finalized_&&(e.type_===3||e.type_===1&&e.allIndicesReassigned_||(e.assigned_?.size??0)>0)){const{patchPlugin_:n}=t;if(n){const a=n.getPath(e);a&&n.generatePatches_(e,a,t)}bp(e)}}function VC(e,t,r){const{scope_:n}=e;if(qt(r)){const a=r[et];Mi(a,n)&&a.callbacks_.push(function(){Pa(e);const o=nc(a);xp(e,r,o,t)})}else Ct(r)&&e.callbacks_.push(function(){const i=$t(e);e.type_===3?i.has(r)&&Fa(r,n.handledSet_,n):Uo(i,t,e.type_)===r&&n.drafts_.length>1&&(e.assigned_.get(t)??!1)===!0&&e.copy_&&Fa(Uo(e.copy_,t,e.type_),n.handledSet_,n)})}function Fa(e,t,r){return!r.immer_.autoFreeze_&&r.unfinalizedDrafts_<1||qt(e)||t.has(e)||!Ct(e)||_i(e)||(t.add(e),Ni(e,(n,a)=>{if(qt(a)){const i=a[et];if(Mi(i,r)){const o=nc(i);$a(e,n,o,e.type_),bp(i)}}else Ct(a)&&Fa(a,t,r)})),e}function qC(e,t){const r=Oi(e),n={type_:r?1:0,scope_:t?t.scope_:gp(),modified_:!1,finalized_:!1,assigned_:void 0,parent_:t,base_:e,draft_:null,copy_:null,revoke_:null,isManual_:!1,callbacks_:void 0};let a=n,i=za;r&&(a=[n],i=Mn);const{revoke:o,proxy:l}=Proxy.revocable(a,i);return n.draft_=l,n.revoke_=o,[l,n]}var za={get(e,t){if(t===et)return e;let r=e.scope_.arrayMethodsPlugin_;const n=e.type_===1&&typeof t=="string";if(n&&r?.isArrayOperationMethod(t))return r.createMethodInterceptor(e,t);const a=$t(e);if(!_d(a,t,e.type_))return UC(e,a,t);const i=a[t];if(e.finalized_||!Ct(i)||n&&e.operationMethod&&r?.isMutatingArrayMethod(e.operationMethod)&&LC(t))return i;if(i===ao(e.base_,t)){Pa(e);const o=e.type_===1?+t:t,l=Zo(e.scope_,i,e,o);return e.copy_[o]=l}return i},has(e,t){return t in $t(e)},ownKeys(e){return Reflect.ownKeys($t(e))},set(e,t,r){const n=wp($t(e),t);if(n?.set)return n.set.call(e.draft_,r),!0;if(!e.modified_){const a=ao($t(e),t),i=a?.[et];if(i&&i.base_===r)return e.copy_[t]=r,e.assigned_.set(t,!1),!0;if(DC(r,a)&&(r!==void 0||_d(e.base_,t,e.type_)))return!0;Pa(e),Yo(e)}return e.copy_[t]===r&&(r!==void 0||t in e.copy_)||Number.isNaN(r)&&Number.isNaN(e.copy_[t])||(e.copy_[t]=r,e.assigned_.set(t,!0),VC(e,t,r)),!0},deleteProperty(e,t){return Pa(e),ao(e.base_,t)!==void 0||t in e.base_?(e.assigned_.set(t,!1),Yo(e)):e.assigned_.delete(t),e.copy_&&delete e.copy_[t],!0},getOwnPropertyDescriptor(e,t){const r=$t(e),n=Reflect.getOwnPropertyDescriptor(r,t);return n&&{[ka]:!0,[qo]:e.type_!==1||t!=="length",[Ra]:n[Ra],[En]:r[t]}},defineProperty(){xt(11)},getPrototypeOf(e){return Yr(e.base_)},setPrototypeOf(){xt(12)}},Mn={};for(let e in za){let t=za[e];Mn[e]=function(){const r=arguments;return r[0]=r[0][0],t.apply(this,r)}}Mn.deleteProperty=function(e,t){return Mn.set.call(this,e,t,void 0)};Mn.set=function(e,t,r){return za.set.call(this,e[0],t,r,e[0])};function ao(e,t){const r=e[et];return(r?$t(r):e)[t]}function UC(e,t,r){const n=wp(t,r);return n?En in n?n[En]:n.get?.call(e.draft_):void 0}function wp(e,t){if(!(t in e))return;let r=Yr(e);for(;r;){const n=Object.getOwnPropertyDescriptor(r,t);if(n)return n;r=Yr(r)}}function Yo(e){e.modified_||(e.modified_=!0,e.parent_&&Yo(e.parent_))}function Pa(e){e.copy_||(e.assigned_=new Map,e.copy_=Wo(e.base_,e.scope_.immer_.useStrictShallowCopy_))}var WC=class{constructor(t){this.autoFreeze_=!0,this.useStrictShallowCopy_=!1,this.useStrictIteration_=!1,this.produce=(r,n,a)=>{if(Kr(r)&&!Kr(n)){const o=n;n=r;const l=this;return function(d=o,...u){return l.produce(d,m=>n.call(this,m,...u))}}Kr(n)||xt(6),a!==void 0&&!Kr(a)&&xt(7);let i;if(Ct(r)){const o=Dd(this),l=Zo(o,r,void 0);let c=!0;try{i=n(l),c=!1}finally{c?Go(o):Xo(o)}return Id(o,a),Ld(i,o)}else if(!r||!rc(r)){if(i=n(r),i===void 0&&(i=r),i===hp&&(i=void 0),this.autoFreeze_&&ac(i,!0),a){const o=[],l=[];Or(Ho).generateReplacementPatches_(r,i,{patches_:o,inversePatches_:l}),a(o,l)}return i}else xt(1,r)},this.produceWithPatches=(r,n)=>{if(Kr(r))return(l,...c)=>this.produceWithPatches(l,d=>r(d,...c));let a,i;return[this.produce(r,n,(l,c)=>{a=l,i=c}),a,i]},no(t?.autoFreeze)&&this.setAutoFreeze(t.autoFreeze),no(t?.useStrictShallowCopy)&&this.setUseStrictShallowCopy(t.useStrictShallowCopy),no(t?.useStrictIteration)&&this.setUseStrictIteration(t.useStrictIteration)}createDraft(t){Ct(t)||xt(8),qt(t)&&(t=pt(t));const r=Dd(this),n=Zo(r,t,void 0);return n[et].isManual_=!0,Xo(r),n}finishDraft(t,r){const n=t&&t[et];(!n||!n.isManual_)&&xt(9);const{scope_:a}=n;return Id(a,r),Ld(void 0,a)}setAutoFreeze(t){this.autoFreeze_=t}setUseStrictShallowCopy(t){this.useStrictShallowCopy_=t}setUseStrictIteration(t){this.useStrictIteration_=t}shouldUseStrictIteration(){return this.useStrictIteration_}applyPatches(t,r){let n;for(n=r.length-1;n>=0;n--){const i=r[n];if(i.path.length===0&&i.op==="replace"){t=i.value;break}}n>-1&&(r=r.slice(n+1));const a=Or(Ho).applyPatches_;return qt(t)?a(t,r):this.produce(t,i=>a(i,r))}};function Zo(e,t,r,n){const[a,i]=Ai(t)?Or(Ba).proxyMap_(t,r):Ei(t)?Or(Ba).proxySet_(t,r):qC(t,r);return(r?.scope_??gp()).drafts_.push(a),i.callbacks_=r?.callbacks_??[],i.key_=n,r&&n!==void 0?KC(r,i,n):i.callbacks_.push(function(c){c.mapSetPlugin_?.fixSetContents(i);const{patchPlugin_:d}=c;i.modified_&&d&&d.generatePatches_(i,[],c)}),a}function pt(e){return qt(e)||xt(10,e),Cp(e)}function Cp(e){if(!Ct(e)||_i(e))return e;const t=e[et];let r,n=!0;if(t){if(!t.modified_)return t.base_;t.finalized_=!0,r=Wo(e,t.scope_.immer_.useStrictShallowCopy_),n=t.scope_.immer_.shouldUseStrictIteration()}else r=Wo(e,!0);return Ni(r,(a,i)=>{$a(r,a,Cp(i))},n),t&&(t.finalized_=!1),r}var HC=new WC,kp=HC.produce;function Pp(e){return({dispatch:r,getState:n})=>a=>i=>typeof i=="function"?i(r,n,e):a(i)}var GC=Pp(),XC=Pp,YC=typeof window<"u"&&window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__?window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__:function(){if(arguments.length!==0)return typeof arguments[0]=="object"?Da:Da.apply(null,arguments)};function ct(e,t){function r(...n){if(t){let a=t(...n);if(!a)throw new Error(lt(0));return{type:e,payload:a.payload,..."meta"in a&&{meta:a.meta},..."error"in a&&{error:a.error}}}return{type:e,payload:n[0]}}return r.toString=()=>`${e}`,r.type=e,r.match=n=>vp(n)&&n.type===e,r}var Sp=class Cn extends Array{constructor(...t){super(...t),Object.setPrototypeOf(this,Cn.prototype)}static get[Symbol.species](){return Cn}concat(...t){return super.concat.apply(this,t)}prepend(...t){return t.length===1&&Array.isArray(t[0])?new Cn(...t[0].concat(this)):new Cn(...t.concat(this))}};function $d(e){return Ct(e)?kp(e,()=>{}):e}function la(e,t,r){return e.has(t)?e.get(t):e.set(t,r(t)).get(t)}function ZC(e){return typeof e=="boolean"}var JC=()=>function(t){const{thunk:r=!0,immutableCheck:n=!0,serializableCheck:a=!0,actionCreatorCheck:i=!0}=t??{};let o=new Sp;return r&&(ZC(r)?o.push(GC):o.push(XC(r.extraArgument))),o},Np="RTK_autoBatch",xe=()=>e=>({payload:e,meta:{[Np]:!0}}),Bd=e=>t=>{setTimeout(t,e)},QC=(e,t)=>r=>{let n=!1;const a=()=>{n||(n=!0,cancelAnimationFrame(i),clearTimeout(o),r())},i=e(a),o=setTimeout(a,t)},Op=(e={type:"raf"})=>t=>(...r)=>{const n=t(...r);let a=!0,i=!1,o=!1;const l=new Set,c=e.type==="tick"?queueMicrotask:e.type==="raf"?typeof window<"u"&&window.requestAnimationFrame?QC(window.requestAnimationFrame,100):Bd(10):e.type==="callback"?e.queueNotification:Bd(e.timeout),d=()=>{o=!1,i&&(i=!1,l.forEach(u=>u()))};return Object.assign({},n,{subscribe(u){const m=()=>a&&u(),h=n.subscribe(m);return l.add(u),()=>{h(),l.delete(u)}},dispatch(u){try{return a=!u?.meta?.[Np],i=!a,i&&(o||(o=!0,c(d))),n.dispatch(u)}finally{a=!0}}})},ek=e=>function(r){const{autoBatch:n=!0}=r??{};let a=new Sp(e);return n&&a.push(Op(typeof n=="object"?n:void 0)),a};function tk(e){const t=JC(),{reducer:r=void 0,middleware:n,devTools:a=!0,preloadedState:i=void 0,enhancers:o=void 0}=e||{};let l;if(typeof r=="function")l=r;else if(tc(r))l=mp(r);else throw new Error(lt(1));let c;typeof n=="function"?c=n(t):c=t();let d=Da;a&&(d=YC({trace:!1,...typeof a=="object"&&a}));const u=TC(...c),m=ek(u);let h=typeof o=="function"?o(m):m();const v=d(...h);return fp(l,i,v)}function Ap(e){const t={},r=[];let n;const a={addCase(i,o){const l=typeof i=="string"?i:i.type;if(!l)throw new Error(lt(28));if(l in t)throw new Error(lt(29));return t[l]=o,a},addAsyncThunk(i,o){return o.pending&&(t[i.pending.type]=o.pending),o.rejected&&(t[i.rejected.type]=o.rejected),o.fulfilled&&(t[i.fulfilled.type]=o.fulfilled),o.settled&&r.push({matcher:i.settled,reducer:o.settled}),a},addMatcher(i,o){return r.push({matcher:i,reducer:o}),a},addDefaultCase(i){return n=i,a}};return e(a),[t,r,n]}function rk(e){return typeof e=="function"}function nk(e,t){let[r,n,a]=Ap(t),i;if(rk(e))i=()=>$d(e());else{const l=$d(e);i=()=>l}function o(l=i(),c){let d=[r[c.type],...n.filter(({matcher:u})=>u(c)).map(({reducer:u})=>u)];return d.filter(u=>!!u).length===0&&(d=[a]),d.reduce((u,m)=>{if(m)if(qt(u)){const v=m(u,c);return v===void 0?u:v}else{if(Ct(u))return kp(u,h=>m(h,c));{const h=m(u,c);if(h===void 0){if(u===null)return u;throw Error("A case reducer on a non-draftable value must not return undefined")}return h}}return u},l)}return o.getInitialState=i,o}var ak="ModuleSymbhasOwnPr-0123456789ABCDEFGHNRVfgctiUvz_KqYTJkLxpZXIjQW",ik=(e=21)=>{let t="",r=e;for(;r--;)t+=ak[Math.random()*64|0];return t},sk=Symbol.for("rtk-slice-createasyncthunk");function ok(e,t){return`${e}/${t}`}function lk({creators:e}={}){const t=e?.asyncThunk?.[sk];return function(n){const{name:a,reducerPath:i=a}=n;if(!a)throw new Error(lt(11));const o=(typeof n.reducers=="function"?n.reducers(uk()):n.reducers)||{},l=Object.keys(o),c={sliceCaseReducersByName:{},sliceCaseReducersByType:{},actionCreators:{},sliceMatchers:[]},d={addCase(x,C){const w=typeof x=="string"?x:x.type;if(!w)throw new Error(lt(12));if(w in c.sliceCaseReducersByType)throw new Error(lt(13));return c.sliceCaseReducersByType[w]=C,d},addMatcher(x,C){return c.sliceMatchers.push({matcher:x,reducer:C}),d},exposeAction(x,C){return c.actionCreators[x]=C,d},exposeCaseReducer(x,C){return c.sliceCaseReducersByName[x]=C,d}};l.forEach(x=>{const C=o[x],w={reducerName:x,type:ok(a,x),createNotation:typeof n.reducers=="function"};fk(C)?vk(w,C,d,t):dk(w,C,d)});function u(){const[x={},C=[],w=void 0]=typeof n.extraReducers=="function"?Ap(n.extraReducers):[n.extraReducers],P={...x,...c.sliceCaseReducersByType};return nk(n.initialState,O=>{for(let k in P)O.addCase(k,P[k]);for(let k of c.sliceMatchers)O.addMatcher(k.matcher,k.reducer);for(let k of C)O.addMatcher(k.matcher,k.reducer);w&&O.addDefaultCase(w)})}const m=x=>x,h=new Map,v=new WeakMap;let g;function y(x,C){return g||(g=u()),g(x,C)}function p(){return g||(g=u()),g.getInitialState()}function b(x,C=!1){function w(O){let k=O[x];return typeof k>"u"&&C&&(k=la(v,w,p)),k}function P(O=m){const k=la(h,C,()=>new WeakMap);return la(k,O,()=>{const N={};for(const[S,A]of Object.entries(n.selectors??{}))N[S]=ck(A,O,()=>la(v,O,p),C);return N})}return{reducerPath:x,getSelectors:P,get selectors(){return P(w)},selectSlice:w}}const j={name:a,reducer:y,actions:c.actionCreators,caseReducers:c.sliceCaseReducersByName,getInitialState:p,...b(i),injectInto(x,{reducerPath:C,...w}={}){const P=C??i;return x.inject({reducerPath:P,reducer:y},w),{...j,...b(P,!0)}}};return j}}function ck(e,t,r,n){function a(i,...o){let l=t(i);return typeof l>"u"&&n&&(l=r()),e(l,...o)}return a.unwrapped=e,a}var Ye=lk();function uk(){function e(t,r){return{_reducerDefinitionType:"asyncThunk",payloadCreator:t,...r}}return e.withTypes=()=>e,{reducer(t){return Object.assign({[t.name](...r){return t(...r)}}[t.name],{_reducerDefinitionType:"reducer"})},preparedReducer(t,r){return{_reducerDefinitionType:"reducerWithPrepare",prepare:t,reducer:r}},asyncThunk:e}}function dk({type:e,reducerName:t,createNotation:r},n,a){let i,o;if("reducer"in n){if(r&&!mk(n))throw new Error(lt(17));i=n.reducer,o=n.prepare}else i=n;a.addCase(e,i).exposeCaseReducer(t,i).exposeAction(t,o?ct(e,o):ct(e))}function fk(e){return e._reducerDefinitionType==="asyncThunk"}function mk(e){return e._reducerDefinitionType==="reducerWithPrepare"}function vk({type:e,reducerName:t},r,n,a){if(!a)throw new Error(lt(18));const{payloadCreator:i,fulfilled:o,pending:l,rejected:c,settled:d,options:u}=r,m=a(e,i,u);n.exposeAction(t,m),o&&n.addCase(m.fulfilled,o),l&&n.addCase(m.pending,l),c&&n.addCase(m.rejected,c),d&&n.addMatcher(m.settled,d),n.exposeCaseReducer(t,{fulfilled:o||ca,pending:l||ca,rejected:c||ca,settled:d||ca})}function ca(){}var hk="task",Ep="listener",_p="completed",ic="cancelled",pk=`task-${ic}`,yk=`task-${_p}`,Jo=`${Ep}-${ic}`,gk=`${Ep}-${_p}`,Ti=class{constructor(e){this.code=e,this.message=`${hk} ${ic} (reason: ${e})`}code;name="TaskAbortError";message},sc=(e,t)=>{if(typeof e!="function")throw new TypeError(lt(32))},Ka=()=>{},Mp=(e,t=Ka)=>(e.catch(t),e),Tp=(e,t)=>(e.addEventListener("abort",t,{once:!0}),()=>e.removeEventListener("abort",t)),Cr=e=>{if(e.aborted)throw new Ti(e.reason)};function Ip(e,t){let r=Ka;return new Promise((n,a)=>{const i=()=>a(new Ti(e.reason));if(e.aborted){i();return}r=Tp(e,i),t.finally(()=>r()).then(n,a)}).finally(()=>{r=Ka})}var bk=async(e,t)=>{try{return await Promise.resolve(),{status:"ok",value:await e()}}catch(r){return{status:r instanceof Ti?"cancelled":"rejected",error:r}}finally{t?.()}},Va=e=>t=>Mp(Ip(e,t).then(r=>(Cr(e),r))),Dp=e=>{const t=Va(e);return r=>t(new Promise(n=>setTimeout(n,r)))},{assign:Wr}=Object,Fd={},Ii="listenerMiddleware",xk=(e,t)=>{const r=n=>Tp(e,()=>n.abort(e.reason));return(n,a)=>{sc(n);const i=new AbortController;r(i);const o=bk(async()=>{Cr(e),Cr(i.signal);const l=await n({pause:Va(i.signal),delay:Dp(i.signal),signal:i.signal});return Cr(i.signal),l},()=>i.abort(yk));return a?.autoJoin&&t.push(o.catch(Ka)),{result:Va(e)(o),cancel(){i.abort(pk)}}}},jk=(e,t)=>{const r=async(n,a)=>{Cr(t);let i=()=>{};const l=[new Promise((c,d)=>{let u=e({predicate:n,effect:(m,h)=>{h.unsubscribe(),c([m,h.getState(),h.getOriginalState()])}});i=()=>{u(),d()}})];a!=null&&l.push(new Promise(c=>setTimeout(c,a,null)));try{const c=await Ip(t,Promise.race(l));return Cr(t),c}finally{i()}};return((n,a)=>Mp(r(n,a)))},Lp=e=>{let{type:t,actionCreator:r,matcher:n,predicate:a,effect:i}=e;if(t)a=ct(t).match;else if(r)t=r.type,a=r.match;else if(n)a=n;else if(!a)throw new Error(lt(21));return sc(i),{predicate:a,type:t,effect:i}},Rp=Wr(e=>{const{type:t,predicate:r,effect:n}=Lp(e);return{id:ik(),effect:n,type:t,predicate:r,pending:new Set,unsubscribe:()=>{throw new Error(lt(22))}}},{withTypes:()=>Rp}),zd=(e,t)=>{const{type:r,effect:n,predicate:a}=Lp(t);return Array.from(e.values()).find(i=>(typeof r=="string"?i.type===r:i.predicate===a)&&i.effect===n)},Qo=e=>{e.pending.forEach(t=>{t.abort(Jo)})},wk=(e,t)=>()=>{for(const r of t.keys())Qo(r);e.clear()},Kd=(e,t,r)=>{try{e(t,r)}catch(n){setTimeout(()=>{throw n},0)}},$p=Wr(ct(`${Ii}/add`),{withTypes:()=>$p}),Ck=ct(`${Ii}/removeAll`),Bp=Wr(ct(`${Ii}/remove`),{withTypes:()=>Bp}),kk=(...e)=>{console.error(`${Ii}/error`,...e)},qn=(e={})=>{const t=new Map,r=new Map,n=v=>{const g=r.get(v)??0;r.set(v,g+1)},a=v=>{const g=r.get(v)??1;g===1?r.delete(v):r.set(v,g-1)},{extra:i,onError:o=kk}=e;sc(o);const l=v=>(v.unsubscribe=()=>t.delete(v.id),t.set(v.id,v),g=>{v.unsubscribe(),g?.cancelActive&&Qo(v)}),c=(v=>{const g=zd(t,v)??Rp(v);return l(g)});Wr(c,{withTypes:()=>c});const d=v=>{const g=zd(t,v);return g&&(g.unsubscribe(),v.cancelActive&&Qo(g)),!!g};Wr(d,{withTypes:()=>d});const u=async(v,g,y,p)=>{const b=new AbortController,j=jk(c,b.signal),x=[];try{v.pending.add(b),n(v),await Promise.resolve(v.effect(g,Wr({},y,{getOriginalState:p,condition:(C,w)=>j(C,w).then(Boolean),take:j,delay:Dp(b.signal),pause:Va(b.signal),extra:i,signal:b.signal,fork:xk(b.signal,x),unsubscribe:v.unsubscribe,subscribe:()=>{t.set(v.id,v)},cancelActiveListeners:()=>{v.pending.forEach((C,w,P)=>{C!==b&&(C.abort(Jo),P.delete(C))})},cancel:()=>{b.abort(Jo),v.pending.delete(b)},throwIfCancelled:()=>{Cr(b.signal)}})))}catch(C){C instanceof Ti||Kd(o,C,{raisedBy:"effect"})}finally{await Promise.all(x),b.abort(gk),a(v),v.pending.delete(b)}},m=wk(t,r);return{middleware:v=>g=>y=>{if(!vp(y))return g(y);if($p.match(y))return c(y.payload);if(Ck.match(y)){m();return}if(Bp.match(y))return d(y.payload);let p=v.getState();const b=()=>{if(p===Fd)throw new Error(lt(23));return p};let j;try{if(j=g(y),t.size>0){const x=v.getState(),C=Array.from(t.values());for(const w of C){let P=!1;try{P=w.predicate(y,x,p)}catch(O){P=!1,Kd(o,O,{raisedBy:"predicate"})}P&&u(w,y,v,b)}}}finally{p=Fd}return j},startListening:c,stopListening:d,clearListeners:m}};function lt(e){return`Minified Redux Toolkit error #${e}; visit https://redux-toolkit.js.org/Errors?code=${e} for the full message or use the non-minified dev environment for full errors. `}var Pk={layoutType:"horizontal",width:0,height:0,margin:{top:5,right:5,bottom:5,left:5},scale:1},Fp=Ye({name:"chartLayout",initialState:Pk,reducers:{setLayout(e,t){e.layoutType=t.payload},setChartSize(e,t){e.width=t.payload.width,e.height=t.payload.height},setMargin(e,t){var r,n,a,i;e.margin.top=(r=t.payload.top)!==null&&r!==void 0?r:0,e.margin.right=(n=t.payload.right)!==null&&n!==void 0?n:0,e.margin.bottom=(a=t.payload.bottom)!==null&&a!==void 0?a:0,e.margin.left=(i=t.payload.left)!==null&&i!==void 0?i:0},setScale(e,t){e.scale=t.payload}}}),{setMargin:Sk,setLayout:Nk,setChartSize:Ok,setScale:Ak}=Fp.actions,Ek=Fp.reducer;function zp(e,t,r){return Array.isArray(e)&&e&&t+r!==0?e.slice(t,r+1):e}function ue(e){return Number.isFinite(e)}function Zr(e){return typeof e=="number"&&e>0&&Number.isFinite(e)}function Vd(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),r.push.apply(r,n)}return r}function Vr(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?Vd(Object(r),!0).forEach(function(n){_k(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):Vd(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function _k(e,t,r){return(t=Mk(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function Mk(e){var t=Tk(e,"string");return typeof t=="symbol"?t:t+""}function Tk(e,t){if(typeof e!="object"||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var n=r.call(e,t);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function he(e,t,r){return De(e)||De(t)?r:Tt(t)?Nr(e,t,r):typeof t=="function"?t(e):r}var Ik=(e,t,r)=>{if(t&&r){var{width:n,height:a}=r,{align:i,verticalAlign:o,layout:l}=t;if((l==="vertical"||l==="horizontal"&&o==="middle")&&i!=="center"&&Z(e[i]))return Vr(Vr({},e),{},{[i]:e[i]+(n||0)});if((l==="horizontal"||l==="vertical"&&i==="center")&&o!=="middle"&&Z(e[o]))return Vr(Vr({},e),{},{[o]:e[o]+(a||0)})}return e},Wt=(e,t)=>e==="horizontal"&&t==="xAxis"||e==="vertical"&&t==="yAxis"||e==="centric"&&t==="angleAxis"||e==="radial"&&t==="radiusAxis",Kp=(e,t,r,n)=>{if(n)return e.map(l=>l.coordinate);var a,i,o=e.map(l=>(l.coordinate===t&&(a=!0),l.coordinate===r&&(i=!0),l.coordinate));return a||o.push(t),i||o.push(r),o},Vp=(e,t,r)=>{if(!e)return null;var{duplicateDomain:n,type:a,range:i,scale:o,realScaleType:l,isCategorical:c,categoricalDomain:d,tickCount:u,ticks:m,niceTicks:h,axisType:v}=e;if(!o)return null;var g=l==="scaleBand"&&o.bandwidth?o.bandwidth()/2:2,y=a==="category"&&o.bandwidth?o.bandwidth()/g:0;if(y=v==="angleAxis"&&i&&i.length>=2?Ge(i[0]-i[1])*2*y:y,m||h){var p=(m||h||[]).map((b,j)=>{var x=n?n.indexOf(b):b,C=o.map(x);return ue(C)?{coordinate:C+y,value:b,offset:y,index:j}:null}).filter(tt);return p}return c&&d?d.map((b,j)=>{var x=o.map(b);return ue(x)?{coordinate:x+y,value:b,index:j,offset:y}:null}).filter(tt):o.ticks&&u!=null?o.ticks(u).map((b,j)=>{var x=o.map(b);return ue(x)?{coordinate:x+y,value:b,index:j,offset:y}:null}).filter(tt):o.domain().map((b,j)=>{var x=o.map(b);return ue(x)?{coordinate:x+y,value:n?n[b]:b,index:j,offset:y}:null}).filter(tt)},Dk=e=>{var t,r=e.length;if(!(r<=0)){var n=(t=e[0])===null||t===void 0?void 0:t.length;if(!(n==null||n<=0))for(var a=0;a<n;++a)for(var i=0,o=0,l=0;l<r;++l){var c=e[l],d=c?.[a];if(d!=null){var u=d[1],m=d[0],h=Vt(u)?m:u;h>=0?(d[0]=i,i+=h,d[1]=i):(d[0]=o,o+=h,d[1]=o)}}}},Lk=e=>{var t,r=e.length;if(!(r<=0)){var n=(t=e[0])===null||t===void 0?void 0:t.length;if(!(n==null||n<=0))for(var a=0;a<n;++a)for(var i=0,o=0;o<r;++o){var l=e[o],c=l?.[a];if(c!=null){var d=Vt(c[1])?c[0]:c[1];d>=0?(c[0]=i,i+=d,c[1]=i):(c[0]=0,c[1]=0)}}}},Rk={sign:Dk,expand:W0,none:Pr,silhouette:H0,wiggle:G0,positive:Lk},$k=(e,t,r)=>{var n,a=(n=Rk[r])!==null&&n!==void 0?n:Pr,i=U0().keys(t).value((l,c)=>Number(he(l,c,0))).order(Bo).offset(a),o=i(e);return o.forEach((l,c)=>{l.forEach((d,u)=>{var m=he(e[u],t[c],0);Array.isArray(m)&&m.length===2&&Z(m[0])&&Z(m[1])&&(d[0]=m[0],d[1]=m[1])})}),o};function qd(e){var{axis:t,ticks:r,bandSize:n,entry:a,index:i,dataKey:o}=e;if(t.type==="category"){if(!t.allowDuplicatedCategory&&t.dataKey&&!De(a[t.dataKey])){var l=Hh(r,"value",a[t.dataKey]);if(l)return l.coordinate+n/2}return r!=null&&r[i]?r[i].coordinate+n/2:null}var c=he(a,De(o)?t.dataKey:o),d=t.scale.map(c);return Z(d)?d:null}var Bk=e=>{var t=e.flat(2).filter(Z);return[Math.min(...t),Math.max(...t)]},Fk=e=>[e[0]===1/0?0:e[0],e[1]===-1/0?0:e[1]],zk=(e,t,r)=>{if(e!=null)return Fk(Object.keys(e).reduce((n,a)=>{var i=e[a];if(!i)return n;var{stackedData:o}=i,l=o.reduce((c,d)=>{var u=zp(d,t,r),m=Bk(u);return!ue(m[0])||!ue(m[1])?c:[Math.min(c[0],m[0]),Math.max(c[1],m[1])]},[1/0,-1/0]);return[Math.min(l[0],n[0]),Math.max(l[1],n[1])]},[1/0,-1/0]))},Ud=/^dataMin[\s]*-[\s]*([0-9]+([.]{1}[0-9]+){0,1})$/,Wd=/^dataMax[\s]*\+[\s]*([0-9]+([.]{1}[0-9]+){0,1})$/,qa=(e,t,r)=>{if(e&&e.scale&&e.scale.bandwidth){var n=e.scale.bandwidth();if(!r||n>0)return n}if(e&&t&&t.length>=2){for(var a=Pi(t,u=>u.coordinate),i=1/0,o=1,l=a.length;o<l;o++){var c=a[o],d=a[o-1];i=Math.min((c?.coordinate||0)-(d?.coordinate||0),i)}return i===1/0?0:i}return r?void 0:0};function Hd(e){var{tooltipEntrySettings:t,dataKey:r,payload:n,value:a,name:i}=e;return Vr(Vr({},t),{},{dataKey:r,payload:n,value:a,name:i})}function Di(e,t){if(e)return String(e);if(typeof t=="string")return t}var Kk=(e,t)=>{if(t==="horizontal")return e.relativeX;if(t==="vertical")return e.relativeY},Vk=(e,t)=>t==="centric"?e.angle:e.radius,Ht=e=>e.layout.width,Gt=e=>e.layout.height,qk=e=>e.layout.scale,qp=e=>e.layout.margin,Li=M(e=>e.cartesianAxis.xAxis,e=>Object.values(e)),Ri=M(e=>e.cartesianAxis.yAxis,e=>Object.values(e)),Up="data-recharts-item-index",Wp="data-recharts-item-id",Un=60;function Gd(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),r.push.apply(r,n)}return r}function ua(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?Gd(Object(r),!0).forEach(function(n){Uk(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):Gd(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function Uk(e,t,r){return(t=Wk(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function Wk(e){var t=Hk(e,"string");return typeof t=="symbol"?t:t+""}function Hk(e,t){if(typeof e!="object"||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var n=r.call(e,t);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}var Gk=e=>e.brush.height;function Xk(e){var t=Ri(e);return t.reduce((r,n)=>{if(n.orientation==="left"&&!n.mirror&&!n.hide){var a=typeof n.width=="number"?n.width:Un;return r+a}return r},0)}function Yk(e){var t=Ri(e);return t.reduce((r,n)=>{if(n.orientation==="right"&&!n.mirror&&!n.hide){var a=typeof n.width=="number"?n.width:Un;return r+a}return r},0)}function Zk(e){var t=Li(e);return t.reduce((r,n)=>n.orientation==="top"&&!n.mirror&&!n.hide?r+n.height:r,0)}function Jk(e){var t=Li(e);return t.reduce((r,n)=>n.orientation==="bottom"&&!n.mirror&&!n.hide?r+n.height:r,0)}var Be=M([Ht,Gt,qp,Gk,Xk,Yk,Zk,Jk,up,SC],(e,t,r,n,a,i,o,l,c,d)=>{var u={left:(r.left||0)+a,right:(r.right||0)+i},m={top:(r.top||0)+o,bottom:(r.bottom||0)+l},h=ua(ua({},m),u),v=h.bottom;h.bottom+=n,h=Ik(h,c,d);var g=e-h.left-h.right,y=t-h.top-h.bottom;return ua(ua({brushBottom:v},h),{},{width:Math.max(g,0),height:Math.max(y,0)})}),Qk=M(Be,e=>({x:e.left,y:e.top,width:e.width,height:e.height})),Hp=M(Ht,Gt,(e,t)=>({x:0,y:0,width:e,height:t})),eP=f.createContext(null),rt=()=>f.useContext(eP)!=null,$i=e=>e.brush,Bi=M([$i,Be,qp],(e,t,r)=>({height:e.height,x:Z(e.x)?e.x:t.left,y:Z(e.y)?e.y:t.top+t.height+t.brushBottom-(r?.bottom||0),width:Z(e.width)?e.width:t.width})),Xd=function(t,r){for(var n=arguments.length,a=new Array(n>2?n-2:0),i=2;i<n;i++)a[i-2]=arguments[i];if(typeof console<"u"&&console.warn&&(r===void 0&&console.warn("LogUtils requires an error message argument"),!t))if(r===void 0)console.warn("Minified exception occurred; use the non-minified dev environment for the full error message and additional helpful warnings.");else{var o=0;console.warn(r.replace(/%s/g,()=>a[o++]))}},tP={initialDimension:{width:-1,height:-1}},rP=f.createContext(tP.initialDimension),Gp=()=>f.useContext(rP);function oc(e){if(e)return{x:e.x,y:e.y,upperWidth:"upperWidth"in e?e.upperWidth:e.width,lowerWidth:"lowerWidth"in e?e.lowerWidth:e.width,width:e.width,height:e.height}}var Fi=()=>{var e,t=rt(),r=Y(Qk),n=Y(Bi),a=(e=Y($i))===null||e===void 0?void 0:e.padding;return!t||!n||!a?r:{width:n.width-a.left-a.right,height:n.height-a.top-a.bottom,x:a.left,y:a.top}},nP={top:0,bottom:0,left:0,right:0,width:0,height:0,brushBottom:0},Xp=()=>{var e;return(e=Y(Be))!==null&&e!==void 0?e:nP},lc=()=>Y(Ht),cc=()=>Y(Gt),aP=()=>Y(e=>e.layout.margin),ge=e=>e.layout.layoutType,an=()=>Y(ge),Yp=()=>{var e=an();if(e==="horizontal"||e==="vertical")return e},Zp=e=>{var t=e.layout.layoutType;if(t==="centric"||t==="radial")return t},iP=()=>{var e=an();return e!==void 0},Wn=e=>{var t=ve(),r=rt(),{width:n,height:a}=e,i=Gp(),o=n,l=a;return i&&(o=i.width>0?i.width:n,l=i.height>0?i.height:a),f.useEffect(()=>{!r&&Zr(o)&&Zr(l)&&t(Ok({width:o,height:l}))},[t,r,o,l]),null},Jp=Symbol.for("immer-nothing"),Yd=Symbol.for("immer-draftable"),ut=Symbol.for("immer-state");function jt(e,...t){throw new Error(`[Immer] minified error nr: ${e}. Full error at: https://bit.ly/3cXEKWf`)}var Tn=Object.getPrototypeOf;function Jr(e){return!!e&&!!e[ut]}function Ar(e){return e?Qp(e)||Array.isArray(e)||!!e[Yd]||!!e.constructor?.[Yd]||Hn(e)||Ki(e):!1}var sP=Object.prototype.constructor.toString(),Zd=new WeakMap;function Qp(e){if(!e||typeof e!="object")return!1;const t=Object.getPrototypeOf(e);if(t===null||t===Object.prototype)return!0;const r=Object.hasOwnProperty.call(t,"constructor")&&t.constructor;if(r===Object)return!0;if(typeof r!="function")return!1;let n=Zd.get(r);return n===void 0&&(n=Function.toString.call(r),Zd.set(r,n)),n===sP}function Ua(e,t,r=!0){zi(e)===0?(r?Reflect.ownKeys(e):Object.keys(e)).forEach(a=>{t(a,e[a],e)}):e.forEach((n,a)=>t(a,n,e))}function zi(e){const t=e[ut];return t?t.type_:Array.isArray(e)?1:Hn(e)?2:Ki(e)?3:0}function el(e,t){return zi(e)===2?e.has(t):Object.prototype.hasOwnProperty.call(e,t)}function ey(e,t,r){const n=zi(e);n===2?e.set(t,r):n===3?e.add(r):e[t]=r}function oP(e,t){return e===t?e!==0||1/e===1/t:e!==e&&t!==t}function Hn(e){return e instanceof Map}function Ki(e){return e instanceof Set}function gr(e){return e.copy_||e.base_}function tl(e,t){if(Hn(e))return new Map(e);if(Ki(e))return new Set(e);if(Array.isArray(e))return Array.prototype.slice.call(e);const r=Qp(e);if(t===!0||t==="class_only"&&!r){const n=Object.getOwnPropertyDescriptors(e);delete n[ut];let a=Reflect.ownKeys(n);for(let i=0;i<a.length;i++){const o=a[i],l=n[o];l.writable===!1&&(l.writable=!0,l.configurable=!0),(l.get||l.set)&&(n[o]={configurable:!0,writable:!0,enumerable:l.enumerable,value:e[o]})}return Object.create(Tn(e),n)}else{const n=Tn(e);if(n!==null&&r)return{...e};const a=Object.create(n);return Object.assign(a,e)}}function uc(e,t=!1){return Vi(e)||Jr(e)||!Ar(e)||(zi(e)>1&&Object.defineProperties(e,{set:da,add:da,clear:da,delete:da}),Object.freeze(e),t&&Object.values(e).forEach(r=>uc(r,!0))),e}function lP(){jt(2)}var da={value:lP};function Vi(e){return e===null||typeof e!="object"?!0:Object.isFrozen(e)}var cP={};function Er(e){const t=cP[e];return t||jt(0,e),t}var In;function ty(){return In}function uP(e,t){return{drafts_:[],parent_:e,immer_:t,canAutoFreeze_:!0,unfinalizedDrafts_:0}}function Jd(e,t){t&&(Er("Patches"),e.patches_=[],e.inversePatches_=[],e.patchListener_=t)}function rl(e){nl(e),e.drafts_.forEach(dP),e.drafts_=null}function nl(e){e===In&&(In=e.parent_)}function Qd(e){return In=uP(In,e)}function dP(e){const t=e[ut];t.type_===0||t.type_===1?t.revoke_():t.revoked_=!0}function ef(e,t){t.unfinalizedDrafts_=t.drafts_.length;const r=t.drafts_[0];return e!==void 0&&e!==r?(r[ut].modified_&&(rl(t),jt(4)),Ar(e)&&(e=Wa(t,e),t.parent_||Ha(t,e)),t.patches_&&Er("Patches").generateReplacementPatches_(r[ut].base_,e,t.patches_,t.inversePatches_)):e=Wa(t,r,[]),rl(t),t.patches_&&t.patchListener_(t.patches_,t.inversePatches_),e!==Jp?e:void 0}function Wa(e,t,r){if(Vi(t))return t;const n=e.immer_.shouldUseStrictIteration(),a=t[ut];if(!a)return Ua(t,(i,o)=>tf(e,a,t,i,o,r),n),t;if(a.scope_!==e)return t;if(!a.modified_)return Ha(e,a.base_,!0),a.base_;if(!a.finalized_){a.finalized_=!0,a.scope_.unfinalizedDrafts_--;const i=a.copy_;let o=i,l=!1;a.type_===3&&(o=new Set(i),i.clear(),l=!0),Ua(o,(c,d)=>tf(e,a,i,c,d,r,l),n),Ha(e,i,!1),r&&e.patches_&&Er("Patches").generatePatches_(a,r,e.patches_,e.inversePatches_)}return a.copy_}function tf(e,t,r,n,a,i,o){if(a==null||typeof a!="object"&&!o)return;const l=Vi(a);if(!(l&&!o)){if(Jr(a)){const c=i&&t&&t.type_!==3&&!el(t.assigned_,n)?i.concat(n):void 0,d=Wa(e,a,c);if(ey(r,n,d),Jr(d))e.canAutoFreeze_=!1;else return}else o&&r.add(a);if(Ar(a)&&!l){if(!e.immer_.autoFreeze_&&e.unfinalizedDrafts_<1||t&&t.base_&&t.base_[n]===a&&l)return;Wa(e,a),(!t||!t.scope_.parent_)&&typeof n!="symbol"&&(Hn(r)?r.has(n):Object.prototype.propertyIsEnumerable.call(r,n))&&Ha(e,a)}}}function Ha(e,t,r=!1){!e.parent_&&e.immer_.autoFreeze_&&e.canAutoFreeze_&&uc(t,r)}function fP(e,t){const r=Array.isArray(e),n={type_:r?1:0,scope_:t?t.scope_:ty(),modified_:!1,finalized_:!1,assigned_:{},parent_:t,base_:e,draft_:null,copy_:null,revoke_:null,isManual_:!1};let a=n,i=dc;r&&(a=[n],i=Dn);const{revoke:o,proxy:l}=Proxy.revocable(a,i);return n.draft_=l,n.revoke_=o,l}var dc={get(e,t){if(t===ut)return e;const r=gr(e);if(!el(r,t))return mP(e,r,t);const n=r[t];return e.finalized_||!Ar(n)?n:n===io(e.base_,t)?(so(e),e.copy_[t]=il(n,e)):n},has(e,t){return t in gr(e)},ownKeys(e){return Reflect.ownKeys(gr(e))},set(e,t,r){const n=ry(gr(e),t);if(n?.set)return n.set.call(e.draft_,r),!0;if(!e.modified_){const a=io(gr(e),t),i=a?.[ut];if(i&&i.base_===r)return e.copy_[t]=r,e.assigned_[t]=!1,!0;if(oP(r,a)&&(r!==void 0||el(e.base_,t)))return!0;so(e),al(e)}return e.copy_[t]===r&&(r!==void 0||t in e.copy_)||Number.isNaN(r)&&Number.isNaN(e.copy_[t])||(e.copy_[t]=r,e.assigned_[t]=!0),!0},deleteProperty(e,t){return io(e.base_,t)!==void 0||t in e.base_?(e.assigned_[t]=!1,so(e),al(e)):delete e.assigned_[t],e.copy_&&delete e.copy_[t],!0},getOwnPropertyDescriptor(e,t){const r=gr(e),n=Reflect.getOwnPropertyDescriptor(r,t);return n&&{writable:!0,configurable:e.type_!==1||t!=="length",enumerable:n.enumerable,value:r[t]}},defineProperty(){jt(11)},getPrototypeOf(e){return Tn(e.base_)},setPrototypeOf(){jt(12)}},Dn={};Ua(dc,(e,t)=>{Dn[e]=function(){return arguments[0]=arguments[0][0],t.apply(this,arguments)}});Dn.deleteProperty=function(e,t){return Dn.set.call(this,e,t,void 0)};Dn.set=function(e,t,r){return dc.set.call(this,e[0],t,r,e[0])};function io(e,t){const r=e[ut];return(r?gr(r):e)[t]}function mP(e,t,r){const n=ry(t,r);return n?"value"in n?n.value:n.get?.call(e.draft_):void 0}function ry(e,t){if(!(t in e))return;let r=Tn(e);for(;r;){const n=Object.getOwnPropertyDescriptor(r,t);if(n)return n;r=Tn(r)}}function al(e){e.modified_||(e.modified_=!0,e.parent_&&al(e.parent_))}function so(e){e.copy_||(e.copy_=tl(e.base_,e.scope_.immer_.useStrictShallowCopy_))}var vP=class{constructor(e){this.autoFreeze_=!0,this.useStrictShallowCopy_=!1,this.useStrictIteration_=!0,this.produce=(t,r,n)=>{if(typeof t=="function"&&typeof r!="function"){const i=r;r=t;const o=this;return function(c=i,...d){return o.produce(c,u=>r.call(this,u,...d))}}typeof r!="function"&&jt(6),n!==void 0&&typeof n!="function"&&jt(7);let a;if(Ar(t)){const i=Qd(this),o=il(t,void 0);let l=!0;try{a=r(o),l=!1}finally{l?rl(i):nl(i)}return Jd(i,n),ef(a,i)}else if(!t||typeof t!="object"){if(a=r(t),a===void 0&&(a=t),a===Jp&&(a=void 0),this.autoFreeze_&&uc(a,!0),n){const i=[],o=[];Er("Patches").generateReplacementPatches_(t,a,i,o),n(i,o)}return a}else jt(1,t)},this.produceWithPatches=(t,r)=>{if(typeof t=="function")return(o,...l)=>this.produceWithPatches(o,c=>t(c,...l));let n,a;return[this.produce(t,r,(o,l)=>{n=o,a=l}),n,a]},typeof e?.autoFreeze=="boolean"&&this.setAutoFreeze(e.autoFreeze),typeof e?.useStrictShallowCopy=="boolean"&&this.setUseStrictShallowCopy(e.useStrictShallowCopy),typeof e?.useStrictIteration=="boolean"&&this.setUseStrictIteration(e.useStrictIteration)}createDraft(e){Ar(e)||jt(8),Jr(e)&&(e=hP(e));const t=Qd(this),r=il(e,void 0);return r[ut].isManual_=!0,nl(t),r}finishDraft(e,t){const r=e&&e[ut];(!r||!r.isManual_)&&jt(9);const{scope_:n}=r;return Jd(n,t),ef(void 0,n)}setAutoFreeze(e){this.autoFreeze_=e}setUseStrictShallowCopy(e){this.useStrictShallowCopy_=e}setUseStrictIteration(e){this.useStrictIteration_=e}shouldUseStrictIteration(){return this.useStrictIteration_}applyPatches(e,t){let r;for(r=t.length-1;r>=0;r--){const a=t[r];if(a.path.length===0&&a.op==="replace"){e=a.value;break}}r>-1&&(t=t.slice(r+1));const n=Er("Patches").applyPatches_;return Jr(e)?n(e,t):this.produce(e,a=>n(a,t))}};function il(e,t){const r=Hn(e)?Er("MapSet").proxyMap_(e,t):Ki(e)?Er("MapSet").proxySet_(e,t):fP(e,t);return(t?t.scope_:ty()).drafts_.push(r),r}function hP(e){return Jr(e)||jt(10,e),ny(e)}function ny(e){if(!Ar(e)||Vi(e))return e;const t=e[ut];let r,n=!0;if(t){if(!t.modified_)return t.base_;t.finalized_=!0,r=tl(e,t.scope_.immer_.useStrictShallowCopy_),n=t.scope_.immer_.shouldUseStrictIteration()}else r=tl(e,!0);return Ua(r,(a,i)=>{ey(r,a,ny(i))},n),t&&(t.finalized_=!1),r}var pP=new vP;pP.produce;var yP={settings:{layout:"horizontal",align:"center",verticalAlign:"middle",itemSorter:"value"},size:{width:0,height:0},payload:[]},ay=Ye({name:"legend",initialState:yP,reducers:{setLegendSize(e,t){e.size.width=t.payload.width,e.size.height=t.payload.height},setLegendSettings(e,t){e.settings.align=t.payload.align,e.settings.layout=t.payload.layout,e.settings.verticalAlign=t.payload.verticalAlign,e.settings.itemSorter=t.payload.itemSorter},addLegendPayload:{reducer(e,t){e.payload.push(t.payload)},prepare:xe()},replaceLegendPayload:{reducer(e,t){var{prev:r,next:n}=t.payload,a=pt(e).payload.indexOf(r);a>-1&&(e.payload[a]=n)},prepare:xe()},removeLegendPayload:{reducer(e,t){var r=pt(e).payload.indexOf(t.payload);r>-1&&e.payload.splice(r,1)},prepare:xe()}}}),{setLegendSize:rf,setLegendSettings:gP,addLegendPayload:iy,replaceLegendPayload:sy,removeLegendPayload:oy}=ay.actions,bP=ay.reducer,oo={exports:{}},lo={};/**
25
25
  * @license React
26
26
  * use-sync-external-store-with-selector.production.js
27
27
  *
@@ -29,43 +29,43 @@ import{r as f,j as s,g as nn,a as Dx,b as Al,c as Lx}from"./vendor-react-SZ_qB27
29
29
  *
30
30
  * This source code is licensed under the MIT license found in the
31
31
  * LICENSE file in the root directory of this source tree.
32
- */var nf;function xP(){if(nf)return lo;nf=1;var e=Dx();function t(c,d){return c===d&&(c!==0||1/c===1/d)||c!==c&&d!==d}var r=typeof Object.is=="function"?Object.is:t,n=e.useSyncExternalStore,a=e.useRef,i=e.useEffect,o=e.useMemo,l=e.useDebugValue;return lo.useSyncExternalStoreWithSelector=function(c,d,u,m,h){var v=a(null);if(v.current===null){var y={hasValue:!1,value:null};v.current=y}else y=v.current;v=o(function(){function p(w){if(!b){if(b=!0,j=w,w=m(w),h!==void 0&&y.hasValue){var P=y.value;if(h(P,w))return x=P}return x=w}if(P=x,r(j,w))return P;var O=m(w);return h!==void 0&&h(P,O)?(j=w,P):(j=w,x=O)}var b=!1,j,x,C=u===void 0?null:u;return[function(){return p(d())},C===null?void 0:function(){return p(C())}]},[d,u,m,h]);var g=n(c,v[0],v[1]);return i(function(){y.hasValue=!0,y.value=g},[g]),l(g),g},lo}var af;function jP(){return af||(af=1,oo.exports=xP()),oo.exports}jP();function wP(e){e()}function CP(){let e=null,t=null;return{clear(){e=null,t=null},notify(){wP(()=>{let r=e;for(;r;)r.callback(),r=r.next})},get(){const r=[];let n=e;for(;n;)r.push(n),n=n.next;return r},subscribe(r){let n=!0;const a=t={callback:r,next:null,prev:t};return a.prev?a.prev.next=a:e=a,function(){!n||e===null||(n=!1,a.next?a.next.prev=a.prev:t=a.prev,a.prev?a.prev.next=a.next:e=a.next)}}}}var sf={notify(){},get:()=>[]};function kP(e,t){let r,n=sf,a=0,i=!1;function o(g){u();const p=n.subscribe(g);let b=!1;return()=>{b||(b=!0,p(),m())}}function l(){n.notify()}function c(){y.onStateChange&&y.onStateChange()}function d(){return i}function u(){a++,r||(r=e.subscribe(c),n=CP())}function m(){a--,r&&a===0&&(r(),r=void 0,n.clear(),n=sf)}function h(){i||(i=!0,u())}function v(){i&&(i=!1,m())}const y={addNestedSub:o,notifyNestedSubs:l,handleChangeWrapper:c,isSubscribed:d,trySubscribe:h,tryUnsubscribe:v,getListeners:()=>n};return y}var PP=()=>typeof window<"u"&&typeof window.document<"u"&&typeof window.document.createElement<"u",SP=PP(),NP=()=>typeof navigator<"u"&&navigator.product==="ReactNative",OP=NP(),AP=()=>SP||OP?f.useLayoutEffect:f.useEffect,EP=AP();function of(e,t){return e===t?e!==0||t!==0||1/e===1/t:e!==e&&t!==t}function _P(e,t){if(of(e,t))return!0;if(typeof e!="object"||e===null||typeof t!="object"||t===null)return!1;const r=Object.keys(e),n=Object.keys(t);if(r.length!==n.length)return!1;for(let a=0;a<r.length;a++)if(!Object.prototype.hasOwnProperty.call(t,r[a])||!of(e[r[a]],t[r[a]]))return!1;return!0}var MP=Symbol.for("react-redux-context"),TP=typeof globalThis<"u"?globalThis:{};function IP(){if(!f.createContext)return{};const e=TP[MP]??=new Map;let t=e.get(f.createContext);return t||(t=f.createContext(null),e.set(f.createContext,t)),t}var DP=IP();function LP(e){const{children:t,context:r,serverState:n,store:a}=e,i=f.useMemo(()=>{const c=kP(a);return{store:a,subscription:c,getServerState:n?()=>n:void 0}},[a,n]),o=f.useMemo(()=>a.getState(),[a]);EP(()=>{const{subscription:c}=i;return c.onStateChange=c.notifyNestedSubs,c.trySubscribe(),o!==a.getState()&&c.notifyNestedSubs(),()=>{c.tryUnsubscribe(),c.onStateChange=void 0}},[i,o]);const l=r||DP;return f.createElement(l.Provider,{value:i},t)}var RP=LP,$P=new Set(["axisLine","tickLine","activeBar","activeDot","activeLabel","activeShape","allowEscapeViewBox","background","cursor","dot","label","line","margin","padding","position","shape","style","tick","wrapperStyle","radius","throttledEvents"]);function BP(e,t){return e==null&&t==null?!0:typeof e=="number"&&typeof t=="number"?e===t||e!==e&&t!==t:e===t}function Gn(e,t){var r=new Set([...Object.keys(e),...Object.keys(t)]);for(var n of r)if($P.has(n)){if(e[n]==null&&t[n]==null)continue;if(!_P(e[n],t[n]))return!1}else if(!BP(e[n],t[n]))return!1;return!0}var FP=["contextPayload"];function sl(){return sl=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)({}).hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},sl.apply(null,arguments)}function lf(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),r.push.apply(r,n)}return r}function Qr(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?lf(Object(r),!0).forEach(function(n){zP(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):lf(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function zP(e,t,r){return(t=KP(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function KP(e){var t=VP(e,"string");return typeof t=="symbol"?t:t+""}function VP(e,t){if(typeof e!="object"||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var n=r.call(e,t);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function UP(e,t){if(e==null)return{};var r,n,a=qP(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)===-1&&{}.propertyIsEnumerable.call(e,r)&&(a[r]=e[r])}return a}function qP(e,t){if(e==null)return{};var r={};for(var n in e)if({}.hasOwnProperty.call(e,n)){if(t.indexOf(n)!==-1)continue;r[n]=e[n]}return r}function WP(e){return e.value}function HP(e){var{contextPayload:t}=e,r=UP(e,FP),n=sp(t,e.payloadUniqBy,WP),a=Qr(Qr({},r),{},{payload:n});return f.isValidElement(e.content)?f.cloneElement(e.content,a):typeof e.content=="function"?f.createElement(e.content,a):f.createElement(Bw,a)}function GP(e,t,r,n,a,i){var{layout:o,align:l,verticalAlign:c}=t,d,u;return(!e||(e.left===void 0||e.left===null)&&(e.right===void 0||e.right===null))&&(l==="center"&&o==="vertical"?d={left:((n||0)-i.width)/2}:d=l==="right"?{right:r&&r.right||0}:{left:r&&r.left||0}),(!e||(e.top===void 0||e.top===null)&&(e.bottom===void 0||e.bottom===null))&&(c==="middle"?u={top:((a||0)-i.height)/2}:u=c==="bottom"?{bottom:r&&r.bottom||0}:{top:r&&r.top||0}),Qr(Qr({},d),u)}function XP(e){var t=ve();return f.useEffect(()=>{t(gP(e))},[t,e]),null}function YP(e){var t=ve();return f.useEffect(()=>(t(rf(e)),()=>{t(rf({width:0,height:0}))}),[t,e]),null}function ZP(e,t,r,n){return e==="vertical"&&t!=null?{height:t}:e==="horizontal"?{width:r||n}:null}var JP={align:"center",iconSize:14,inactiveColor:"#ccc",itemSorter:"value",layout:"horizontal",verticalAlign:"bottom"};function QP(e){var t=Le(e,JP),r=AC(),n=uw(),a=aP(),{width:i,height:o,wrapperStyle:l,portal:c}=t,[d,u]=dp([r]),m=lc(),h=cc();if(m==null||h==null)return null;var v=m-(a?.left||0)-(a?.right||0),y=ZP(t.layout,o,i,v),g=c?l:Qr(Qr({position:"absolute",width:y?.width||i||"auto",height:y?.height||o||"auto"},GP(l,t,a,m,h,d)),l),p=c??n;if(p==null||r==null)return null;var b=f.createElement("div",{className:"recharts-legend-wrapper",style:g,ref:u},f.createElement(XP,{layout:t.layout,align:t.align,verticalAlign:t.verticalAlign,itemSorter:t.itemSorter}),!c&&f.createElement(YP,{width:d.width,height:d.height}),f.createElement(HP,sl({},t,y,{margin:a,chartWidth:m,chartHeight:h,contextPayload:r})));return Al.createPortal(b,p)}var fc=f.memo(QP,Gn);fc.displayName="Legend";function ol(){return ol=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)({}).hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},ol.apply(null,arguments)}function cf(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),r.push.apply(r,n)}return r}function vn(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?cf(Object(r),!0).forEach(function(n){eS(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):cf(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function eS(e,t,r){return(t=tS(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function tS(e){var t=rS(e,"string");return typeof t=="symbol"?t:t+""}function rS(e,t){if(typeof e!="object"||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var n=r.call(e,t);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function nS(e){return Array.isArray(e)&&Mt(e[0])&&Mt(e[1])?e.join(" ~ "):e}var Lr={separator:" : ",contentStyle:{margin:0,padding:10,backgroundColor:"#fff",border:"1px solid #ccc",whiteSpace:"nowrap"},itemStyle:{display:"block",paddingTop:4,paddingBottom:4,color:"#000"},labelStyle:{},accessibilityLayer:!1};function aS(e,t){return t==null?e:Pi(e,t)}var iS=e=>{var{separator:t=Lr.separator,contentStyle:r,itemStyle:n,labelStyle:a=Lr.labelStyle,payload:i,formatter:o,itemSorter:l,wrapperClassName:c,labelClassName:d,label:u,labelFormatter:m,accessibilityLayer:h=Lr.accessibilityLayer}=e,v=()=>{if(i&&i.length){var w={padding:0,margin:0},P=aS(i,l),O=P.map((k,N)=>{if(!k||k.type==="none")return null;var S=k.formatter||o||nS,{value:A,name:_}=k,I=A,D=_;if(S){var F=S(A,_,k,N,i);if(Array.isArray(F))[I,D]=F;else if(F!=null)I=F;else return null}var V=vn(vn({},Lr.itemStyle),{},{color:k.color||Lr.itemStyle.color},n);return f.createElement("li",{className:"recharts-tooltip-item",key:"tooltip-item-".concat(N),style:V},Mt(D)?f.createElement("span",{className:"recharts-tooltip-item-name"},D):null,Mt(D)?f.createElement("span",{className:"recharts-tooltip-item-separator"},t):null,f.createElement("span",{className:"recharts-tooltip-item-value"},I),f.createElement("span",{className:"recharts-tooltip-item-unit"},k.unit||""))});return f.createElement("ul",{className:"recharts-tooltip-item-list",style:w},O)}return null},y=vn(vn({},Lr.contentStyle),r),g=vn({margin:0},a),p=!De(u),b=p?u:"",j=de("recharts-default-tooltip",c),x=de("recharts-tooltip-label",d);p&&m&&i!==void 0&&i!==null&&(b=m(u,i));var C=h?{role:"status","aria-live":"assertive"}:{};return f.createElement("div",ol({className:j,style:y},C),f.createElement("p",{className:x,style:g},f.isValidElement(b)?b:"".concat(b)),v())},hn="recharts-tooltip-wrapper",sS={visibility:"hidden"};function oS(e){var{coordinate:t,translateX:r,translateY:n}=e;return de(hn,{["".concat(hn,"-right")]:Z(r)&&t&&Z(t.x)&&r>=t.x,["".concat(hn,"-left")]:Z(r)&&t&&Z(t.x)&&r<t.x,["".concat(hn,"-bottom")]:Z(n)&&t&&Z(t.y)&&n>=t.y,["".concat(hn,"-top")]:Z(n)&&t&&Z(t.y)&&n<t.y})}function uf(e){var{allowEscapeViewBox:t,coordinate:r,key:n,offset:a,position:i,reverseDirection:o,tooltipDimension:l,viewBox:c,viewBoxDimension:d}=e;if(i&&Z(i[n]))return i[n];var u=r[n]-l-(a>0?a:0),m=r[n]+a;if(t[n])return o[n]?u:m;var h=c[n];if(h==null)return 0;if(o[n]){var v=u,y=h;return v<y?Math.max(m,h):Math.max(u,h)}if(d==null)return 0;var g=m+l,p=h+d;return g>p?Math.max(u,h):Math.max(m,h)}function lS(e){var{translateX:t,translateY:r,useTranslate3d:n}=e;return{transform:n?"translate3d(".concat(t,"px, ").concat(r,"px, 0)"):"translate(".concat(t,"px, ").concat(r,"px)")}}function cS(e){var{allowEscapeViewBox:t,coordinate:r,offsetTop:n,offsetLeft:a,position:i,reverseDirection:o,tooltipBox:l,useTranslate3d:c,viewBox:d}=e,u,m,h;return l.height>0&&l.width>0&&r?(m=uf({allowEscapeViewBox:t,coordinate:r,key:"x",offset:a,position:i,reverseDirection:o,tooltipDimension:l.width,viewBox:d,viewBoxDimension:d.width}),h=uf({allowEscapeViewBox:t,coordinate:r,key:"y",offset:n,position:i,reverseDirection:o,tooltipDimension:l.height,viewBox:d,viewBoxDimension:d.height}),u=lS({translateX:m,translateY:h,useTranslate3d:c})):u=sS,{cssProperties:u,cssClasses:oS({translateX:m,translateY:h,coordinate:r})}}var uS=()=>!(typeof window<"u"&&window.document&&window.document.createElement&&window.setTimeout),Xn={isSsr:uS()};function ly(){var[e,t]=f.useState(()=>Xn.isSsr||!window.matchMedia?!1:window.matchMedia("(prefers-reduced-motion: reduce)").matches);return f.useEffect(()=>{if(window.matchMedia){var r=window.matchMedia("(prefers-reduced-motion: reduce)"),n=()=>{t(r.matches)};return r.addEventListener("change",n),()=>{r.removeEventListener("change",n)}}},[]),e}function df(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),r.push.apply(r,n)}return r}function Rr(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?df(Object(r),!0).forEach(function(n){dS(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):df(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function dS(e,t,r){return(t=fS(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function fS(e){var t=mS(e,"string");return typeof t=="symbol"?t:t+""}function mS(e,t){if(typeof e!="object"||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var n=r.call(e,t);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function vS(e){if(!(e.prefersReducedMotion&&e.isAnimationActive==="auto")&&e.isAnimationActive&&e.active)return"transform ".concat(e.animationDuration,"ms ").concat(e.animationEasing)}function hS(e){var t,r,n,a,i,o,l=ly(),[c,d]=f.useState(()=>({dismissed:!1,dismissedAtCoordinate:{x:0,y:0}}));f.useEffect(()=>{var y=g=>{if(g.key==="Escape"){var p,b,j,x;d({dismissed:!0,dismissedAtCoordinate:{x:(p=(b=e.coordinate)===null||b===void 0?void 0:b.x)!==null&&p!==void 0?p:0,y:(j=(x=e.coordinate)===null||x===void 0?void 0:x.y)!==null&&j!==void 0?j:0}})}};return document.addEventListener("keydown",y),()=>{document.removeEventListener("keydown",y)}},[(t=e.coordinate)===null||t===void 0?void 0:t.x,(r=e.coordinate)===null||r===void 0?void 0:r.y]),c.dismissed&&(((n=(a=e.coordinate)===null||a===void 0?void 0:a.x)!==null&&n!==void 0?n:0)!==c.dismissedAtCoordinate.x||((i=(o=e.coordinate)===null||o===void 0?void 0:o.y)!==null&&i!==void 0?i:0)!==c.dismissedAtCoordinate.y)&&d(Rr(Rr({},c),{},{dismissed:!1}));var{cssClasses:u,cssProperties:m}=cS({allowEscapeViewBox:e.allowEscapeViewBox,coordinate:e.coordinate,offsetLeft:typeof e.offset=="number"?e.offset:e.offset.x,offsetTop:typeof e.offset=="number"?e.offset:e.offset.y,position:e.position,reverseDirection:e.reverseDirection,tooltipBox:{height:e.lastBoundingBox.height,width:e.lastBoundingBox.width},useTranslate3d:e.useTranslate3d,viewBox:e.viewBox}),h=e.hasPortalFromProps?{}:Rr(Rr({transition:vS({prefersReducedMotion:l,isAnimationActive:e.isAnimationActive,active:e.active,animationDuration:e.animationDuration,animationEasing:e.animationEasing})},m),{},{pointerEvents:"none",position:"absolute",top:0,left:0}),v=Rr(Rr({},h),{},{visibility:!c.dismissed&&e.active&&e.hasPayload?"visible":"hidden"},e.wrapperStyle);return f.createElement("div",{xmlns:"http://www.w3.org/1999/xhtml",tabIndex:-1,className:u,style:v,ref:e.innerRef},e.children)}var pS=f.memo(hS),cy=()=>{var e;return(e=Y(t=>t.rootProps.accessibilityLayer))!==null&&e!==void 0?e:!0};function ll(){return ll=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)({}).hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},ll.apply(null,arguments)}function ff(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),r.push.apply(r,n)}return r}function mf(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?ff(Object(r),!0).forEach(function(n){yS(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):ff(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function yS(e,t,r){return(t=gS(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function gS(e){var t=bS(e,"string");return typeof t=="symbol"?t:t+""}function bS(e,t){if(typeof e!="object"||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var n=r.call(e,t);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}var vf={curveBasisClosed:Mj,curveBasisOpen:_j,curveBasis:Ej,curveBumpX:Aj,curveBumpY:Oj,curveLinearClosed:Nj,curveLinear:Dl,curveMonotoneX:Sj,curveMonotoneY:Pj,curveNatural:kj,curveStep:Cj,curveStepAfter:wj,curveStepBefore:jj},Ga=e=>ue(e.x)&&ue(e.y),hf=e=>e.base!=null&&Ga(e.base)&&Ga(e),pn=e=>e.x,yn=e=>e.y,xS=(e,t)=>{if(typeof e=="function")return e;var r="curve".concat(zn(e));if((r==="curveMonotone"||r==="curveBump")&&t){var n=vf["".concat(r).concat(t==="vertical"?"Y":"X")];if(n)return n}return vf[r]||Dl},pf={connectNulls:!1,type:"linear"},jS=e=>{var{type:t=pf.type,points:r=[],baseLine:n,layout:a,connectNulls:i=pf.connectNulls}=e,o=xS(t,a),l=i?r.filter(Ga):r;if(Array.isArray(n)){var c,d=r.map((y,g)=>mf(mf({},y),{},{base:n[g]}));a==="vertical"?c=aa().y(yn).x1(pn).x0(y=>y.base.x):c=aa().x(pn).y1(yn).y0(y=>y.base.y);var u=c.defined(hf).curve(o),m=i?d.filter(hf):d;return u(m)}var h;a==="vertical"&&Z(n)?h=aa().y(yn).x1(pn).x0(n):Z(n)?h=aa().x(pn).y1(yn).y0(n):h=yh().x(pn).y(yn);var v=h.defined(Ga).curve(o);return v(l)},mc=e=>{var{className:t,points:r,path:n,pathRef:a}=e,i=an();if((!r||!r.length)&&!n)return null;var o={type:e.type,points:e.points,baseLine:e.baseLine,layout:e.layout||i,connectNulls:e.connectNulls},l=r&&r.length?jS(o):n;return f.createElement("path",ll({},yt(e),Zl(e),{className:de("recharts-curve",t),d:l===null?void 0:l,ref:a}))},wS=["x","y","top","left","width","height","className"];function cl(){return cl=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)({}).hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},cl.apply(null,arguments)}function yf(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),r.push.apply(r,n)}return r}function CS(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?yf(Object(r),!0).forEach(function(n){kS(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):yf(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function kS(e,t,r){return(t=PS(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function PS(e){var t=SS(e,"string");return typeof t=="symbol"?t:t+""}function SS(e,t){if(typeof e!="object"||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var n=r.call(e,t);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function NS(e,t){if(e==null)return{};var r,n,a=OS(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)===-1&&{}.propertyIsEnumerable.call(e,r)&&(a[r]=e[r])}return a}function OS(e,t){if(e==null)return{};var r={};for(var n in e)if({}.hasOwnProperty.call(e,n)){if(t.indexOf(n)!==-1)continue;r[n]=e[n]}return r}var AS=(e,t,r,n,a,i)=>"M".concat(e,",").concat(a,"v").concat(n,"M").concat(i,",").concat(t,"h").concat(r),ES=e=>{var{x:t=0,y:r=0,top:n=0,left:a=0,width:i=0,height:o=0,className:l}=e,c=NS(e,wS),d=CS({x:t,y:r,top:n,left:a,width:i,height:o},c);return!Z(t)||!Z(r)||!Z(i)||!Z(o)||!Z(n)||!Z(a)?null:f.createElement("path",cl({},Je(d),{className:de("recharts-cross",l),d:AS(t,r,i,o,n,a)}))};function _S(e,t,r,n){var a=n/2;return{stroke:"none",fill:"#ccc",x:e==="horizontal"?t.x-a:r.left+.5,y:e==="horizontal"?r.top+.5:t.y-a,width:e==="horizontal"?n:r.width-1,height:e==="horizontal"?r.height-1:n}}function gf(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),r.push.apply(r,n)}return r}function bf(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?gf(Object(r),!0).forEach(function(n){MS(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):gf(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function MS(e,t,r){return(t=TS(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function TS(e){var t=IS(e,"string");return typeof t=="symbol"?t:t+""}function IS(e,t){if(typeof e!="object"||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var n=r.call(e,t);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}var DS=e=>e.replace(/([A-Z])/g,t=>"-".concat(t.toLowerCase())),uy=(e,t,r)=>e.map(n=>"".concat(DS(n)," ").concat(t,"ms ").concat(r)).join(","),LS=(e,t)=>[Object.keys(e),Object.keys(t)].reduce((r,n)=>r.filter(a=>n.includes(a))),Ln=(e,t)=>Object.keys(t).reduce((r,n)=>bf(bf({},r),{},{[n]:e(n,t[n])}),{});function xf(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),r.push.apply(r,n)}return r}function Ie(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?xf(Object(r),!0).forEach(function(n){RS(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):xf(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function RS(e,t,r){return(t=$S(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function $S(e){var t=BS(e,"string");return typeof t=="symbol"?t:t+""}function BS(e,t){if(typeof e!="object"||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var n=r.call(e,t);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}var Xa=(e,t,r)=>e+(t-e)*r,ul=e=>{var{from:t,to:r}=e;return t!==r},dy=(e,t,r)=>{var n=Ln((a,i)=>{if(ul(i)){var[o,l]=e(i.from,i.to,i.velocity);return Ie(Ie({},i),{},{from:o,velocity:l})}return i},t);return r<1?Ln((a,i)=>ul(i)&&n[a]!=null?Ie(Ie({},i),{},{velocity:Xa(i.velocity,n[a].velocity,r),from:Xa(i.from,n[a].from,r)}):i,t):dy(e,n,r-1)};function FS(e,t,r,n,a,i){var o,l=n.reduce((h,v)=>Ie(Ie({},h),{},{[v]:{from:e[v],velocity:0,to:t[v]}}),{}),c=()=>Ln((h,v)=>v.from,l),d=()=>!Object.values(l).filter(ul).length,u=null,m=h=>{o||(o=h);var v=h-o,y=v/r.dt;l=dy(r,l,y),a(Ie(Ie(Ie({},e),t),c())),o=h,d()||(u=i.setTimeout(m))};return()=>(u=i.setTimeout(m),()=>{var h;(h=u)===null||h===void 0||h()})}function zS(e,t,r,n,a,i,o){var l=null,c=a.reduce((m,h)=>{var v=e[h],y=t[h];return v==null||y==null?m:Ie(Ie({},m),{},{[h]:[v,y]})},{}),d,u=m=>{d||(d=m);var h=(m-d)/n,v=Ln((g,p)=>Xa(...p,r(h)),c);if(i(Ie(Ie(Ie({},e),t),v)),h<1)l=o.setTimeout(u);else{var y=Ln((g,p)=>Xa(...p,r(1)),c);i(Ie(Ie(Ie({},e),t),y))}};return()=>(l=o.setTimeout(u),()=>{var m;(m=l)===null||m===void 0||m()})}const KS=(e,t,r,n,a,i)=>{var o=LS(e,t);return r==null?()=>(a(Ie(Ie({},e),t)),()=>{}):r.isStepper===!0?FS(e,t,r,o,a,i):zS(e,t,r,n,o,a,i)};var Ya=1e-4,fy=(e,t)=>[0,3*e,3*t-6*e,3*e-3*t+1],my=(e,t)=>e.map((r,n)=>r*t**n).reduce((r,n)=>r+n),jf=(e,t)=>r=>{var n=fy(e,t);return my(n,r)},VS=(e,t)=>r=>{var n=fy(e,t),a=[...n.map((i,o)=>i*o).slice(1),0];return my(a,r)},US=e=>{var t,r=e.split("(");if(r.length!==2||r[0]!=="cubic-bezier")return null;var n=(t=r[1])===null||t===void 0||(t=t.split(")")[0])===null||t===void 0?void 0:t.split(",");if(n==null||n.length!==4)return null;var a=n.map(i=>parseFloat(i));return[a[0],a[1],a[2],a[3]]},qS=function(){for(var t=arguments.length,r=new Array(t),n=0;n<t;n++)r[n]=arguments[n];if(r.length===1)switch(r[0]){case"linear":return[0,0,1,1];case"ease":return[.25,.1,.25,1];case"ease-in":return[.42,0,1,1];case"ease-out":return[.42,0,.58,1];case"ease-in-out":return[0,0,.58,1];default:{var a=US(r[0]);if(a)return a}}return r.length===4?r:[0,0,1,1]},WS=(e,t,r,n)=>{var a=jf(e,r),i=jf(t,n),o=VS(e,r),l=d=>d>1?1:d<0?0:d,c=d=>{for(var u=d>1?1:d,m=u,h=0;h<8;++h){var v=a(m)-u,y=o(m);if(Math.abs(v-u)<Ya||y<Ya)return i(m);m=l(m-v/y)}return i(m)};return c.isStepper=!1,c},wf=function(){return WS(...qS(...arguments))},HS=function(){var t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},{stiff:r=100,damping:n=8,dt:a=17}=t,i=(o,l,c)=>{var d=-(o-l)*r,u=c*n,m=c+(d-u)*a/1e3,h=c*a/1e3+o;return Math.abs(h-l)<Ya&&Math.abs(m)<Ya?[l,0]:[h,m]};return i.isStepper=!0,i.dt=a,i},GS=e=>{if(typeof e=="string")switch(e){case"ease":case"ease-in-out":case"ease-out":case"ease-in":case"linear":return wf(e);case"spring":return HS();default:if(e.split("(")[0]==="cubic-bezier")return wf(e)}return typeof e=="function"?e:null};function XS(e){var t,r=()=>null,n=!1,a=null,i=o=>{if(!n){if(Array.isArray(o)){if(!o.length)return;var l=o,[c,...d]=l;if(typeof c=="number"){a=e.setTimeout(i.bind(null,d),c);return}i(c),a=e.setTimeout(i.bind(null,d));return}typeof o=="string"&&(t=o,r(t)),typeof o=="object"&&(t=o,r(t)),typeof o=="function"&&o()}};return{stop:()=>{n=!0},start:o=>{n=!1,a&&(a(),a=null),i(o)},subscribe:o=>(r=o,()=>{r=()=>null}),getTimeoutController:()=>e}}class YS{setTimeout(t){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,n=performance.now(),a=null,i=o=>{o-n>=r?t(o):typeof requestAnimationFrame=="function"&&(a=requestAnimationFrame(i))};return a=requestAnimationFrame(i),()=>{a!=null&&cancelAnimationFrame(a)}}}function ZS(){return XS(new YS)}var JS=f.createContext(ZS);function QS(e,t){var r=f.useContext(JS);return f.useMemo(()=>t??r(e),[e,t,r])}var eN={begin:0,duration:1e3,easing:"ease",isActive:!0,canBegin:!0,onAnimationEnd:()=>{},onAnimationStart:()=>{}},Cf={t:0},co={t:1};function Ui(e){var t=Le(e,eN),{isActive:r,canBegin:n,duration:a,easing:i,begin:o,onAnimationEnd:l,onAnimationStart:c,children:d}=t,u=ly(),m=r==="auto"?!Xn.isSsr&&!u:r,h=QS(t.animationId,t.animationManager),[v,y]=f.useState(m?Cf:co),g=f.useRef(null);return f.useEffect(()=>{m||y(co)},[m]),f.useEffect(()=>{if(!m||!n)return Kn;var p=KS(Cf,co,GS(i),a,y,h.getTimeoutController()),b=()=>{g.current=p()};return h.start([c,o,b,a,l]),()=>{h.stop(),g.current&&g.current(),l()}},[m,n,a,i,o,c,l,h]),d(v.t)}function qi(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"animation-",r=f.useRef(An(t)),n=f.useRef(e);return n.current!==e&&(r.current=An(t),n.current=e),r.current}var tN=["radius"],rN=["radius"],kf,Pf,Sf,Nf,Of,Af,Ef,_f,Mf,Tf;function If(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),r.push.apply(r,n)}return r}function Df(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?If(Object(r),!0).forEach(function(n){nN(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):If(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function nN(e,t,r){return(t=aN(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function aN(e){var t=iN(e,"string");return typeof t=="symbol"?t:t+""}function iN(e,t){if(typeof e!="object"||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var n=r.call(e,t);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function Za(){return Za=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)({}).hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},Za.apply(null,arguments)}function Lf(e,t){if(e==null)return{};var r,n,a=sN(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)===-1&&{}.propertyIsEnumerable.call(e,r)&&(a[r]=e[r])}return a}function sN(e,t){if(e==null)return{};var r={};for(var n in e)if({}.hasOwnProperty.call(e,n)){if(t.indexOf(n)!==-1)continue;r[n]=e[n]}return r}function St(e,t){return t||(t=e.slice(0)),Object.freeze(Object.defineProperties(e,{raw:{value:Object.freeze(t)}}))}var Rf=(e,t,r,n,a)=>{var i=nr(r),o=nr(n),l=Math.min(Math.abs(i)/2,Math.abs(o)/2),c=o>=0?1:-1,d=i>=0?1:-1,u=o>=0&&i>=0||o<0&&i<0?1:0,m;if(l>0&&Array.isArray(a)){for(var h=[0,0,0,0],v=0,y=4;v<y;v++){var g,p=(g=a[v])!==null&&g!==void 0?g:0;h[v]=p>l?l:p}m=Ne(kf||(kf=St(["M",",",""])),e,t+c*h[0]),h[0]>0&&(m+=Ne(Pf||(Pf=St(["A ",",",",0,0,",",",",",""])),h[0],h[0],u,e+d*h[0],t)),m+=Ne(Sf||(Sf=St(["L ",",",""])),e+r-d*h[1],t),h[1]>0&&(m+=Ne(Nf||(Nf=St(["A ",",",",0,0,",`,
33
- `,",",""])),h[1],h[1],u,e+r,t+c*h[1])),m+=Ne(Of||(Of=St(["L ",",",""])),e+r,t+n-c*h[2]),h[2]>0&&(m+=Ne(Af||(Af=St(["A ",",",",0,0,",`,
34
- `,",",""])),h[2],h[2],u,e+r-d*h[2],t+n)),m+=Ne(Ef||(Ef=St(["L ",",",""])),e+d*h[3],t+n),h[3]>0&&(m+=Ne(_f||(_f=St(["A ",",",",0,0,",`,
35
- `,",",""])),h[3],h[3],u,e,t+n-c*h[3])),m+="Z"}else if(l>0&&a===+a&&a>0){var b=Math.min(l,a);m=Ne(Mf||(Mf=St(["M ",",",`
32
+ */var nf;function xP(){if(nf)return lo;nf=1;var e=Dx();function t(c,d){return c===d&&(c!==0||1/c===1/d)||c!==c&&d!==d}var r=typeof Object.is=="function"?Object.is:t,n=e.useSyncExternalStore,a=e.useRef,i=e.useEffect,o=e.useMemo,l=e.useDebugValue;return lo.useSyncExternalStoreWithSelector=function(c,d,u,m,h){var v=a(null);if(v.current===null){var g={hasValue:!1,value:null};v.current=g}else g=v.current;v=o(function(){function p(w){if(!b){if(b=!0,j=w,w=m(w),h!==void 0&&g.hasValue){var P=g.value;if(h(P,w))return x=P}return x=w}if(P=x,r(j,w))return P;var O=m(w);return h!==void 0&&h(P,O)?(j=w,P):(j=w,x=O)}var b=!1,j,x,C=u===void 0?null:u;return[function(){return p(d())},C===null?void 0:function(){return p(C())}]},[d,u,m,h]);var y=n(c,v[0],v[1]);return i(function(){g.hasValue=!0,g.value=y},[y]),l(y),y},lo}var af;function jP(){return af||(af=1,oo.exports=xP()),oo.exports}jP();function wP(e){e()}function CP(){let e=null,t=null;return{clear(){e=null,t=null},notify(){wP(()=>{let r=e;for(;r;)r.callback(),r=r.next})},get(){const r=[];let n=e;for(;n;)r.push(n),n=n.next;return r},subscribe(r){let n=!0;const a=t={callback:r,next:null,prev:t};return a.prev?a.prev.next=a:e=a,function(){!n||e===null||(n=!1,a.next?a.next.prev=a.prev:t=a.prev,a.prev?a.prev.next=a.next:e=a.next)}}}}var sf={notify(){},get:()=>[]};function kP(e,t){let r,n=sf,a=0,i=!1;function o(y){u();const p=n.subscribe(y);let b=!1;return()=>{b||(b=!0,p(),m())}}function l(){n.notify()}function c(){g.onStateChange&&g.onStateChange()}function d(){return i}function u(){a++,r||(r=e.subscribe(c),n=CP())}function m(){a--,r&&a===0&&(r(),r=void 0,n.clear(),n=sf)}function h(){i||(i=!0,u())}function v(){i&&(i=!1,m())}const g={addNestedSub:o,notifyNestedSubs:l,handleChangeWrapper:c,isSubscribed:d,trySubscribe:h,tryUnsubscribe:v,getListeners:()=>n};return g}var PP=()=>typeof window<"u"&&typeof window.document<"u"&&typeof window.document.createElement<"u",SP=PP(),NP=()=>typeof navigator<"u"&&navigator.product==="ReactNative",OP=NP(),AP=()=>SP||OP?f.useLayoutEffect:f.useEffect,EP=AP();function of(e,t){return e===t?e!==0||t!==0||1/e===1/t:e!==e&&t!==t}function _P(e,t){if(of(e,t))return!0;if(typeof e!="object"||e===null||typeof t!="object"||t===null)return!1;const r=Object.keys(e),n=Object.keys(t);if(r.length!==n.length)return!1;for(let a=0;a<r.length;a++)if(!Object.prototype.hasOwnProperty.call(t,r[a])||!of(e[r[a]],t[r[a]]))return!1;return!0}var MP=Symbol.for("react-redux-context"),TP=typeof globalThis<"u"?globalThis:{};function IP(){if(!f.createContext)return{};const e=TP[MP]??=new Map;let t=e.get(f.createContext);return t||(t=f.createContext(null),e.set(f.createContext,t)),t}var DP=IP();function LP(e){const{children:t,context:r,serverState:n,store:a}=e,i=f.useMemo(()=>{const c=kP(a);return{store:a,subscription:c,getServerState:n?()=>n:void 0}},[a,n]),o=f.useMemo(()=>a.getState(),[a]);EP(()=>{const{subscription:c}=i;return c.onStateChange=c.notifyNestedSubs,c.trySubscribe(),o!==a.getState()&&c.notifyNestedSubs(),()=>{c.tryUnsubscribe(),c.onStateChange=void 0}},[i,o]);const l=r||DP;return f.createElement(l.Provider,{value:i},t)}var RP=LP,$P=new Set(["axisLine","tickLine","activeBar","activeDot","activeLabel","activeShape","allowEscapeViewBox","background","cursor","dot","label","line","margin","padding","position","shape","style","tick","wrapperStyle","radius","throttledEvents"]);function BP(e,t){return e==null&&t==null?!0:typeof e=="number"&&typeof t=="number"?e===t||e!==e&&t!==t:e===t}function Gn(e,t){var r=new Set([...Object.keys(e),...Object.keys(t)]);for(var n of r)if($P.has(n)){if(e[n]==null&&t[n]==null)continue;if(!_P(e[n],t[n]))return!1}else if(!BP(e[n],t[n]))return!1;return!0}var FP=["contextPayload"];function sl(){return sl=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)({}).hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},sl.apply(null,arguments)}function lf(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),r.push.apply(r,n)}return r}function Qr(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?lf(Object(r),!0).forEach(function(n){zP(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):lf(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function zP(e,t,r){return(t=KP(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function KP(e){var t=VP(e,"string");return typeof t=="symbol"?t:t+""}function VP(e,t){if(typeof e!="object"||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var n=r.call(e,t);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function qP(e,t){if(e==null)return{};var r,n,a=UP(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)===-1&&{}.propertyIsEnumerable.call(e,r)&&(a[r]=e[r])}return a}function UP(e,t){if(e==null)return{};var r={};for(var n in e)if({}.hasOwnProperty.call(e,n)){if(t.indexOf(n)!==-1)continue;r[n]=e[n]}return r}function WP(e){return e.value}function HP(e){var{contextPayload:t}=e,r=qP(e,FP),n=sp(t,e.payloadUniqBy,WP),a=Qr(Qr({},r),{},{payload:n});return f.isValidElement(e.content)?f.cloneElement(e.content,a):typeof e.content=="function"?f.createElement(e.content,a):f.createElement(Bw,a)}function GP(e,t,r,n,a,i){var{layout:o,align:l,verticalAlign:c}=t,d,u;return(!e||(e.left===void 0||e.left===null)&&(e.right===void 0||e.right===null))&&(l==="center"&&o==="vertical"?d={left:((n||0)-i.width)/2}:d=l==="right"?{right:r&&r.right||0}:{left:r&&r.left||0}),(!e||(e.top===void 0||e.top===null)&&(e.bottom===void 0||e.bottom===null))&&(c==="middle"?u={top:((a||0)-i.height)/2}:u=c==="bottom"?{bottom:r&&r.bottom||0}:{top:r&&r.top||0}),Qr(Qr({},d),u)}function XP(e){var t=ve();return f.useEffect(()=>{t(gP(e))},[t,e]),null}function YP(e){var t=ve();return f.useEffect(()=>(t(rf(e)),()=>{t(rf({width:0,height:0}))}),[t,e]),null}function ZP(e,t,r,n){return e==="vertical"&&t!=null?{height:t}:e==="horizontal"?{width:r||n}:null}var JP={align:"center",iconSize:14,inactiveColor:"#ccc",itemSorter:"value",layout:"horizontal",verticalAlign:"bottom"};function QP(e){var t=Le(e,JP),r=AC(),n=uw(),a=aP(),{width:i,height:o,wrapperStyle:l,portal:c}=t,[d,u]=dp([r]),m=lc(),h=cc();if(m==null||h==null)return null;var v=m-(a?.left||0)-(a?.right||0),g=ZP(t.layout,o,i,v),y=c?l:Qr(Qr({position:"absolute",width:g?.width||i||"auto",height:g?.height||o||"auto"},GP(l,t,a,m,h,d)),l),p=c??n;if(p==null||r==null)return null;var b=f.createElement("div",{className:"recharts-legend-wrapper",style:y,ref:u},f.createElement(XP,{layout:t.layout,align:t.align,verticalAlign:t.verticalAlign,itemSorter:t.itemSorter}),!c&&f.createElement(YP,{width:d.width,height:d.height}),f.createElement(HP,sl({},t,g,{margin:a,chartWidth:m,chartHeight:h,contextPayload:r})));return Al.createPortal(b,p)}var fc=f.memo(QP,Gn);fc.displayName="Legend";function ol(){return ol=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)({}).hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},ol.apply(null,arguments)}function cf(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),r.push.apply(r,n)}return r}function vn(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?cf(Object(r),!0).forEach(function(n){eS(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):cf(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function eS(e,t,r){return(t=tS(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function tS(e){var t=rS(e,"string");return typeof t=="symbol"?t:t+""}function rS(e,t){if(typeof e!="object"||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var n=r.call(e,t);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function nS(e){return Array.isArray(e)&&Tt(e[0])&&Tt(e[1])?e.join(" ~ "):e}var Lr={separator:" : ",contentStyle:{margin:0,padding:10,backgroundColor:"#fff",border:"1px solid #ccc",whiteSpace:"nowrap"},itemStyle:{display:"block",paddingTop:4,paddingBottom:4,color:"#000"},labelStyle:{},accessibilityLayer:!1};function aS(e,t){return t==null?e:Pi(e,t)}var iS=e=>{var{separator:t=Lr.separator,contentStyle:r,itemStyle:n,labelStyle:a=Lr.labelStyle,payload:i,formatter:o,itemSorter:l,wrapperClassName:c,labelClassName:d,label:u,labelFormatter:m,accessibilityLayer:h=Lr.accessibilityLayer}=e,v=()=>{if(i&&i.length){var w={padding:0,margin:0},P=aS(i,l),O=P.map((k,N)=>{if(!k||k.type==="none")return null;var S=k.formatter||o||nS,{value:A,name:_}=k,I=A,D=_;if(S){var F=S(A,_,k,N,i);if(Array.isArray(F))[I,D]=F;else if(F!=null)I=F;else return null}var V=vn(vn({},Lr.itemStyle),{},{color:k.color||Lr.itemStyle.color},n);return f.createElement("li",{className:"recharts-tooltip-item",key:"tooltip-item-".concat(N),style:V},Tt(D)?f.createElement("span",{className:"recharts-tooltip-item-name"},D):null,Tt(D)?f.createElement("span",{className:"recharts-tooltip-item-separator"},t):null,f.createElement("span",{className:"recharts-tooltip-item-value"},I),f.createElement("span",{className:"recharts-tooltip-item-unit"},k.unit||""))});return f.createElement("ul",{className:"recharts-tooltip-item-list",style:w},O)}return null},g=vn(vn({},Lr.contentStyle),r),y=vn({margin:0},a),p=!De(u),b=p?u:"",j=de("recharts-default-tooltip",c),x=de("recharts-tooltip-label",d);p&&m&&i!==void 0&&i!==null&&(b=m(u,i));var C=h?{role:"status","aria-live":"assertive"}:{};return f.createElement("div",ol({className:j,style:g},C),f.createElement("p",{className:x,style:y},f.isValidElement(b)?b:"".concat(b)),v())},hn="recharts-tooltip-wrapper",sS={visibility:"hidden"};function oS(e){var{coordinate:t,translateX:r,translateY:n}=e;return de(hn,{["".concat(hn,"-right")]:Z(r)&&t&&Z(t.x)&&r>=t.x,["".concat(hn,"-left")]:Z(r)&&t&&Z(t.x)&&r<t.x,["".concat(hn,"-bottom")]:Z(n)&&t&&Z(t.y)&&n>=t.y,["".concat(hn,"-top")]:Z(n)&&t&&Z(t.y)&&n<t.y})}function uf(e){var{allowEscapeViewBox:t,coordinate:r,key:n,offset:a,position:i,reverseDirection:o,tooltipDimension:l,viewBox:c,viewBoxDimension:d}=e;if(i&&Z(i[n]))return i[n];var u=r[n]-l-(a>0?a:0),m=r[n]+a;if(t[n])return o[n]?u:m;var h=c[n];if(h==null)return 0;if(o[n]){var v=u,g=h;return v<g?Math.max(m,h):Math.max(u,h)}if(d==null)return 0;var y=m+l,p=h+d;return y>p?Math.max(u,h):Math.max(m,h)}function lS(e){var{translateX:t,translateY:r,useTranslate3d:n}=e;return{transform:n?"translate3d(".concat(t,"px, ").concat(r,"px, 0)"):"translate(".concat(t,"px, ").concat(r,"px)")}}function cS(e){var{allowEscapeViewBox:t,coordinate:r,offsetTop:n,offsetLeft:a,position:i,reverseDirection:o,tooltipBox:l,useTranslate3d:c,viewBox:d}=e,u,m,h;return l.height>0&&l.width>0&&r?(m=uf({allowEscapeViewBox:t,coordinate:r,key:"x",offset:a,position:i,reverseDirection:o,tooltipDimension:l.width,viewBox:d,viewBoxDimension:d.width}),h=uf({allowEscapeViewBox:t,coordinate:r,key:"y",offset:n,position:i,reverseDirection:o,tooltipDimension:l.height,viewBox:d,viewBoxDimension:d.height}),u=lS({translateX:m,translateY:h,useTranslate3d:c})):u=sS,{cssProperties:u,cssClasses:oS({translateX:m,translateY:h,coordinate:r})}}var uS=()=>!(typeof window<"u"&&window.document&&window.document.createElement&&window.setTimeout),Xn={isSsr:uS()};function ly(){var[e,t]=f.useState(()=>Xn.isSsr||!window.matchMedia?!1:window.matchMedia("(prefers-reduced-motion: reduce)").matches);return f.useEffect(()=>{if(window.matchMedia){var r=window.matchMedia("(prefers-reduced-motion: reduce)"),n=()=>{t(r.matches)};return r.addEventListener("change",n),()=>{r.removeEventListener("change",n)}}},[]),e}function df(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),r.push.apply(r,n)}return r}function Rr(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?df(Object(r),!0).forEach(function(n){dS(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):df(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function dS(e,t,r){return(t=fS(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function fS(e){var t=mS(e,"string");return typeof t=="symbol"?t:t+""}function mS(e,t){if(typeof e!="object"||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var n=r.call(e,t);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function vS(e){if(!(e.prefersReducedMotion&&e.isAnimationActive==="auto")&&e.isAnimationActive&&e.active)return"transform ".concat(e.animationDuration,"ms ").concat(e.animationEasing)}function hS(e){var t,r,n,a,i,o,l=ly(),[c,d]=f.useState(()=>({dismissed:!1,dismissedAtCoordinate:{x:0,y:0}}));f.useEffect(()=>{var g=y=>{if(y.key==="Escape"){var p,b,j,x;d({dismissed:!0,dismissedAtCoordinate:{x:(p=(b=e.coordinate)===null||b===void 0?void 0:b.x)!==null&&p!==void 0?p:0,y:(j=(x=e.coordinate)===null||x===void 0?void 0:x.y)!==null&&j!==void 0?j:0}})}};return document.addEventListener("keydown",g),()=>{document.removeEventListener("keydown",g)}},[(t=e.coordinate)===null||t===void 0?void 0:t.x,(r=e.coordinate)===null||r===void 0?void 0:r.y]),c.dismissed&&(((n=(a=e.coordinate)===null||a===void 0?void 0:a.x)!==null&&n!==void 0?n:0)!==c.dismissedAtCoordinate.x||((i=(o=e.coordinate)===null||o===void 0?void 0:o.y)!==null&&i!==void 0?i:0)!==c.dismissedAtCoordinate.y)&&d(Rr(Rr({},c),{},{dismissed:!1}));var{cssClasses:u,cssProperties:m}=cS({allowEscapeViewBox:e.allowEscapeViewBox,coordinate:e.coordinate,offsetLeft:typeof e.offset=="number"?e.offset:e.offset.x,offsetTop:typeof e.offset=="number"?e.offset:e.offset.y,position:e.position,reverseDirection:e.reverseDirection,tooltipBox:{height:e.lastBoundingBox.height,width:e.lastBoundingBox.width},useTranslate3d:e.useTranslate3d,viewBox:e.viewBox}),h=e.hasPortalFromProps?{}:Rr(Rr({transition:vS({prefersReducedMotion:l,isAnimationActive:e.isAnimationActive,active:e.active,animationDuration:e.animationDuration,animationEasing:e.animationEasing})},m),{},{pointerEvents:"none",position:"absolute",top:0,left:0}),v=Rr(Rr({},h),{},{visibility:!c.dismissed&&e.active&&e.hasPayload?"visible":"hidden"},e.wrapperStyle);return f.createElement("div",{xmlns:"http://www.w3.org/1999/xhtml",tabIndex:-1,className:u,style:v,ref:e.innerRef},e.children)}var pS=f.memo(hS),cy=()=>{var e;return(e=Y(t=>t.rootProps.accessibilityLayer))!==null&&e!==void 0?e:!0};function ll(){return ll=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)({}).hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},ll.apply(null,arguments)}function ff(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),r.push.apply(r,n)}return r}function mf(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?ff(Object(r),!0).forEach(function(n){yS(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):ff(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function yS(e,t,r){return(t=gS(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function gS(e){var t=bS(e,"string");return typeof t=="symbol"?t:t+""}function bS(e,t){if(typeof e!="object"||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var n=r.call(e,t);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}var vf={curveBasisClosed:Mj,curveBasisOpen:_j,curveBasis:Ej,curveBumpX:Aj,curveBumpY:Oj,curveLinearClosed:Nj,curveLinear:Dl,curveMonotoneX:Sj,curveMonotoneY:Pj,curveNatural:kj,curveStep:Cj,curveStepAfter:wj,curveStepBefore:jj},Ga=e=>ue(e.x)&&ue(e.y),hf=e=>e.base!=null&&Ga(e.base)&&Ga(e),pn=e=>e.x,yn=e=>e.y,xS=(e,t)=>{if(typeof e=="function")return e;var r="curve".concat(zn(e));if((r==="curveMonotone"||r==="curveBump")&&t){var n=vf["".concat(r).concat(t==="vertical"?"Y":"X")];if(n)return n}return vf[r]||Dl},pf={connectNulls:!1,type:"linear"},jS=e=>{var{type:t=pf.type,points:r=[],baseLine:n,layout:a,connectNulls:i=pf.connectNulls}=e,o=xS(t,a),l=i?r.filter(Ga):r;if(Array.isArray(n)){var c,d=r.map((g,y)=>mf(mf({},g),{},{base:n[y]}));a==="vertical"?c=aa().y(yn).x1(pn).x0(g=>g.base.x):c=aa().x(pn).y1(yn).y0(g=>g.base.y);var u=c.defined(hf).curve(o),m=i?d.filter(hf):d;return u(m)}var h;a==="vertical"&&Z(n)?h=aa().y(yn).x1(pn).x0(n):Z(n)?h=aa().x(pn).y1(yn).y0(n):h=yh().x(pn).y(yn);var v=h.defined(Ga).curve(o);return v(l)},mc=e=>{var{className:t,points:r,path:n,pathRef:a}=e,i=an();if((!r||!r.length)&&!n)return null;var o={type:e.type,points:e.points,baseLine:e.baseLine,layout:e.layout||i,connectNulls:e.connectNulls},l=r&&r.length?jS(o):n;return f.createElement("path",ll({},yt(e),Zl(e),{className:de("recharts-curve",t),d:l===null?void 0:l,ref:a}))},wS=["x","y","top","left","width","height","className"];function cl(){return cl=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)({}).hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},cl.apply(null,arguments)}function yf(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),r.push.apply(r,n)}return r}function CS(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?yf(Object(r),!0).forEach(function(n){kS(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):yf(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function kS(e,t,r){return(t=PS(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function PS(e){var t=SS(e,"string");return typeof t=="symbol"?t:t+""}function SS(e,t){if(typeof e!="object"||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var n=r.call(e,t);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function NS(e,t){if(e==null)return{};var r,n,a=OS(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)===-1&&{}.propertyIsEnumerable.call(e,r)&&(a[r]=e[r])}return a}function OS(e,t){if(e==null)return{};var r={};for(var n in e)if({}.hasOwnProperty.call(e,n)){if(t.indexOf(n)!==-1)continue;r[n]=e[n]}return r}var AS=(e,t,r,n,a,i)=>"M".concat(e,",").concat(a,"v").concat(n,"M").concat(i,",").concat(t,"h").concat(r),ES=e=>{var{x:t=0,y:r=0,top:n=0,left:a=0,width:i=0,height:o=0,className:l}=e,c=NS(e,wS),d=CS({x:t,y:r,top:n,left:a,width:i,height:o},c);return!Z(t)||!Z(r)||!Z(i)||!Z(o)||!Z(n)||!Z(a)?null:f.createElement("path",cl({},Je(d),{className:de("recharts-cross",l),d:AS(t,r,i,o,n,a)}))};function _S(e,t,r,n){var a=n/2;return{stroke:"none",fill:"#ccc",x:e==="horizontal"?t.x-a:r.left+.5,y:e==="horizontal"?r.top+.5:t.y-a,width:e==="horizontal"?n:r.width-1,height:e==="horizontal"?r.height-1:n}}function gf(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),r.push.apply(r,n)}return r}function bf(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?gf(Object(r),!0).forEach(function(n){MS(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):gf(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function MS(e,t,r){return(t=TS(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function TS(e){var t=IS(e,"string");return typeof t=="symbol"?t:t+""}function IS(e,t){if(typeof e!="object"||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var n=r.call(e,t);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}var DS=e=>e.replace(/([A-Z])/g,t=>"-".concat(t.toLowerCase())),uy=(e,t,r)=>e.map(n=>"".concat(DS(n)," ").concat(t,"ms ").concat(r)).join(","),LS=(e,t)=>[Object.keys(e),Object.keys(t)].reduce((r,n)=>r.filter(a=>n.includes(a))),Ln=(e,t)=>Object.keys(t).reduce((r,n)=>bf(bf({},r),{},{[n]:e(n,t[n])}),{});function xf(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),r.push.apply(r,n)}return r}function Ie(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?xf(Object(r),!0).forEach(function(n){RS(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):xf(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function RS(e,t,r){return(t=$S(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function $S(e){var t=BS(e,"string");return typeof t=="symbol"?t:t+""}function BS(e,t){if(typeof e!="object"||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var n=r.call(e,t);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}var Xa=(e,t,r)=>e+(t-e)*r,ul=e=>{var{from:t,to:r}=e;return t!==r},dy=(e,t,r)=>{var n=Ln((a,i)=>{if(ul(i)){var[o,l]=e(i.from,i.to,i.velocity);return Ie(Ie({},i),{},{from:o,velocity:l})}return i},t);return r<1?Ln((a,i)=>ul(i)&&n[a]!=null?Ie(Ie({},i),{},{velocity:Xa(i.velocity,n[a].velocity,r),from:Xa(i.from,n[a].from,r)}):i,t):dy(e,n,r-1)};function FS(e,t,r,n,a,i){var o,l=n.reduce((h,v)=>Ie(Ie({},h),{},{[v]:{from:e[v],velocity:0,to:t[v]}}),{}),c=()=>Ln((h,v)=>v.from,l),d=()=>!Object.values(l).filter(ul).length,u=null,m=h=>{o||(o=h);var v=h-o,g=v/r.dt;l=dy(r,l,g),a(Ie(Ie(Ie({},e),t),c())),o=h,d()||(u=i.setTimeout(m))};return()=>(u=i.setTimeout(m),()=>{var h;(h=u)===null||h===void 0||h()})}function zS(e,t,r,n,a,i,o){var l=null,c=a.reduce((m,h)=>{var v=e[h],g=t[h];return v==null||g==null?m:Ie(Ie({},m),{},{[h]:[v,g]})},{}),d,u=m=>{d||(d=m);var h=(m-d)/n,v=Ln((y,p)=>Xa(...p,r(h)),c);if(i(Ie(Ie(Ie({},e),t),v)),h<1)l=o.setTimeout(u);else{var g=Ln((y,p)=>Xa(...p,r(1)),c);i(Ie(Ie(Ie({},e),t),g))}};return()=>(l=o.setTimeout(u),()=>{var m;(m=l)===null||m===void 0||m()})}const KS=(e,t,r,n,a,i)=>{var o=LS(e,t);return r==null?()=>(a(Ie(Ie({},e),t)),()=>{}):r.isStepper===!0?FS(e,t,r,o,a,i):zS(e,t,r,n,o,a,i)};var Ya=1e-4,fy=(e,t)=>[0,3*e,3*t-6*e,3*e-3*t+1],my=(e,t)=>e.map((r,n)=>r*t**n).reduce((r,n)=>r+n),jf=(e,t)=>r=>{var n=fy(e,t);return my(n,r)},VS=(e,t)=>r=>{var n=fy(e,t),a=[...n.map((i,o)=>i*o).slice(1),0];return my(a,r)},qS=e=>{var t,r=e.split("(");if(r.length!==2||r[0]!=="cubic-bezier")return null;var n=(t=r[1])===null||t===void 0||(t=t.split(")")[0])===null||t===void 0?void 0:t.split(",");if(n==null||n.length!==4)return null;var a=n.map(i=>parseFloat(i));return[a[0],a[1],a[2],a[3]]},US=function(){for(var t=arguments.length,r=new Array(t),n=0;n<t;n++)r[n]=arguments[n];if(r.length===1)switch(r[0]){case"linear":return[0,0,1,1];case"ease":return[.25,.1,.25,1];case"ease-in":return[.42,0,1,1];case"ease-out":return[.42,0,.58,1];case"ease-in-out":return[0,0,.58,1];default:{var a=qS(r[0]);if(a)return a}}return r.length===4?r:[0,0,1,1]},WS=(e,t,r,n)=>{var a=jf(e,r),i=jf(t,n),o=VS(e,r),l=d=>d>1?1:d<0?0:d,c=d=>{for(var u=d>1?1:d,m=u,h=0;h<8;++h){var v=a(m)-u,g=o(m);if(Math.abs(v-u)<Ya||g<Ya)return i(m);m=l(m-v/g)}return i(m)};return c.isStepper=!1,c},wf=function(){return WS(...US(...arguments))},HS=function(){var t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},{stiff:r=100,damping:n=8,dt:a=17}=t,i=(o,l,c)=>{var d=-(o-l)*r,u=c*n,m=c+(d-u)*a/1e3,h=c*a/1e3+o;return Math.abs(h-l)<Ya&&Math.abs(m)<Ya?[l,0]:[h,m]};return i.isStepper=!0,i.dt=a,i},GS=e=>{if(typeof e=="string")switch(e){case"ease":case"ease-in-out":case"ease-out":case"ease-in":case"linear":return wf(e);case"spring":return HS();default:if(e.split("(")[0]==="cubic-bezier")return wf(e)}return typeof e=="function"?e:null};function XS(e){var t,r=()=>null,n=!1,a=null,i=o=>{if(!n){if(Array.isArray(o)){if(!o.length)return;var l=o,[c,...d]=l;if(typeof c=="number"){a=e.setTimeout(i.bind(null,d),c);return}i(c),a=e.setTimeout(i.bind(null,d));return}typeof o=="string"&&(t=o,r(t)),typeof o=="object"&&(t=o,r(t)),typeof o=="function"&&o()}};return{stop:()=>{n=!0},start:o=>{n=!1,a&&(a(),a=null),i(o)},subscribe:o=>(r=o,()=>{r=()=>null}),getTimeoutController:()=>e}}class YS{setTimeout(t){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,n=performance.now(),a=null,i=o=>{o-n>=r?t(o):typeof requestAnimationFrame=="function"&&(a=requestAnimationFrame(i))};return a=requestAnimationFrame(i),()=>{a!=null&&cancelAnimationFrame(a)}}}function ZS(){return XS(new YS)}var JS=f.createContext(ZS);function QS(e,t){var r=f.useContext(JS);return f.useMemo(()=>t??r(e),[e,t,r])}var eN={begin:0,duration:1e3,easing:"ease",isActive:!0,canBegin:!0,onAnimationEnd:()=>{},onAnimationStart:()=>{}},Cf={t:0},co={t:1};function qi(e){var t=Le(e,eN),{isActive:r,canBegin:n,duration:a,easing:i,begin:o,onAnimationEnd:l,onAnimationStart:c,children:d}=t,u=ly(),m=r==="auto"?!Xn.isSsr&&!u:r,h=QS(t.animationId,t.animationManager),[v,g]=f.useState(m?Cf:co),y=f.useRef(null);return f.useEffect(()=>{m||g(co)},[m]),f.useEffect(()=>{if(!m||!n)return Kn;var p=KS(Cf,co,GS(i),a,g,h.getTimeoutController()),b=()=>{y.current=p()};return h.start([c,o,b,a,l]),()=>{h.stop(),y.current&&y.current(),l()}},[m,n,a,i,o,c,l,h]),d(v.t)}function Ui(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"animation-",r=f.useRef(An(t)),n=f.useRef(e);return n.current!==e&&(r.current=An(t),n.current=e),r.current}var tN=["radius"],rN=["radius"],kf,Pf,Sf,Nf,Of,Af,Ef,_f,Mf,Tf;function If(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),r.push.apply(r,n)}return r}function Df(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?If(Object(r),!0).forEach(function(n){nN(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):If(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function nN(e,t,r){return(t=aN(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function aN(e){var t=iN(e,"string");return typeof t=="symbol"?t:t+""}function iN(e,t){if(typeof e!="object"||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var n=r.call(e,t);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function Za(){return Za=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)({}).hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},Za.apply(null,arguments)}function Lf(e,t){if(e==null)return{};var r,n,a=sN(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)===-1&&{}.propertyIsEnumerable.call(e,r)&&(a[r]=e[r])}return a}function sN(e,t){if(e==null)return{};var r={};for(var n in e)if({}.hasOwnProperty.call(e,n)){if(t.indexOf(n)!==-1)continue;r[n]=e[n]}return r}function Nt(e,t){return t||(t=e.slice(0)),Object.freeze(Object.defineProperties(e,{raw:{value:Object.freeze(t)}}))}var Rf=(e,t,r,n,a)=>{var i=nr(r),o=nr(n),l=Math.min(Math.abs(i)/2,Math.abs(o)/2),c=o>=0?1:-1,d=i>=0?1:-1,u=o>=0&&i>=0||o<0&&i<0?1:0,m;if(l>0&&Array.isArray(a)){for(var h=[0,0,0,0],v=0,g=4;v<g;v++){var y,p=(y=a[v])!==null&&y!==void 0?y:0;h[v]=p>l?l:p}m=Ne(kf||(kf=Nt(["M",",",""])),e,t+c*h[0]),h[0]>0&&(m+=Ne(Pf||(Pf=Nt(["A ",",",",0,0,",",",",",""])),h[0],h[0],u,e+d*h[0],t)),m+=Ne(Sf||(Sf=Nt(["L ",",",""])),e+r-d*h[1],t),h[1]>0&&(m+=Ne(Nf||(Nf=Nt(["A ",",",",0,0,",`,
33
+ `,",",""])),h[1],h[1],u,e+r,t+c*h[1])),m+=Ne(Of||(Of=Nt(["L ",",",""])),e+r,t+n-c*h[2]),h[2]>0&&(m+=Ne(Af||(Af=Nt(["A ",",",",0,0,",`,
34
+ `,",",""])),h[2],h[2],u,e+r-d*h[2],t+n)),m+=Ne(Ef||(Ef=Nt(["L ",",",""])),e+d*h[3],t+n),h[3]>0&&(m+=Ne(_f||(_f=Nt(["A ",",",",0,0,",`,
35
+ `,",",""])),h[3],h[3],u,e,t+n-c*h[3])),m+="Z"}else if(l>0&&a===+a&&a>0){var b=Math.min(l,a);m=Ne(Mf||(Mf=Nt(["M ",",",`
36
36
  A `,",",",0,0,",",",",",`
37
37
  L `,",",`
38
38
  A `,",",",0,0,",",",",",`
39
39
  L `,",",`
40
40
  A `,",",",0,0,",",",",",`
41
41
  L `,",",`
42
- A `,",",",0,0,",",",","," Z"])),e,t+c*b,b,b,u,e+d*b,t,e+r-d*b,t,b,b,u,e+r,t+c*b,e+r,t+n-c*b,b,b,u,e+r-d*b,t+n,e+d*b,t+n,b,b,u,e,t+n-c*b)}else m=Ne(Tf||(Tf=St(["M ",","," h "," v "," h "," Z"])),e,t,r,n,-r);return m},$f={x:0,y:0,width:0,height:0,radius:0,isAnimationActive:!1,isUpdateAnimationActive:!1,animationBegin:0,animationDuration:1500,animationEasing:"ease"},vy=e=>{var t=Le(e,$f),r=f.useRef(null),[n,a]=f.useState(-1);f.useEffect(()=>{if(r.current&&r.current.getTotalLength)try{var U=r.current.getTotalLength();U&&a(U)}catch{}},[]);var{x:i,y:o,width:l,height:c,radius:d,className:u}=t,{animationEasing:m,animationDuration:h,animationBegin:v,isAnimationActive:y,isUpdateAnimationActive:g}=t,p=f.useRef(l),b=f.useRef(c),j=f.useRef(i),x=f.useRef(o),C=f.useMemo(()=>({x:i,y:o,width:l,height:c,radius:d}),[i,o,l,c,d]),w=qi(C,"rectangle-");if(i!==+i||o!==+o||l!==+l||c!==+c||l===0||c===0)return null;var P=de("recharts-rectangle",u);if(!g){var O=Je(t),{radius:k}=O,N=Lf(O,tN);return f.createElement("path",Za({},N,{x:nr(i),y:nr(o),width:nr(l),height:nr(c),radius:typeof d=="number"?d:void 0,className:P,d:Rf(i,o,l,c,d)}))}var S=p.current,A=b.current,_=j.current,I=x.current,D="0px ".concat(n===-1?1:n,"px"),F="".concat(n,"px ").concat(n,"px"),V=uy(["strokeDasharray"],h,typeof m=="string"?m:$f.animationEasing);return f.createElement(Ui,{animationId:w,key:w,canBegin:n>0,duration:h,easing:m,isActive:g,begin:v},U=>{var te=We(S,l,U),q=We(A,c,U),ee=We(_,i,U),L=We(I,o,U);r.current&&(p.current=te,b.current=q,j.current=ee,x.current=L);var B;y?U>0?B={transition:V,strokeDasharray:F}:B={strokeDasharray:D}:B={strokeDasharray:F};var X=Je(t),{radius:Q}=X,G=Lf(X,rN);return f.createElement("path",Za({},G,{radius:typeof d=="number"?d:void 0,className:P,d:Rf(ee,L,te,q,d),ref:r,style:Df(Df({},B),t.style)}))})};function Bf(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),r.push.apply(r,n)}return r}function Ff(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?Bf(Object(r),!0).forEach(function(n){oN(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):Bf(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function oN(e,t,r){return(t=lN(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function lN(e){var t=cN(e,"string");return typeof t=="symbol"?t:t+""}function cN(e,t){if(typeof e!="object"||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var n=r.call(e,t);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}var Ja=Math.PI/180,uN=e=>e*180/Math.PI,Ee=(e,t,r,n)=>({x:e+Math.cos(-Ja*n)*r,y:t+Math.sin(-Ja*n)*r}),hy=function(t,r){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{top:0,right:0,bottom:0,left:0};return Math.min(Math.abs(t-(n.left||0)-(n.right||0)),Math.abs(r-(n.top||0)-(n.bottom||0)))/2},dN=(e,t)=>{var{x:r,y:n}=e,{x:a,y:i}=t;return Math.sqrt((r-a)**2+(n-i)**2)},fN=(e,t)=>{var{x:r,y:n}=e,{cx:a,cy:i}=t,o=dN({x:r,y:n},{x:a,y:i});if(o<=0)return{radius:o,angle:0};var l=(r-a)/o,c=Math.acos(l);return n>i&&(c=2*Math.PI-c),{radius:o,angle:uN(c),angleInRadian:c}},mN=e=>{var{startAngle:t,endAngle:r}=e,n=Math.floor(t/360),a=Math.floor(r/360),i=Math.min(n,a);return{startAngle:t-i*360,endAngle:r-i*360}},vN=(e,t)=>{var{startAngle:r,endAngle:n}=t,a=Math.floor(r/360),i=Math.floor(n/360),o=Math.min(a,i);return e+o*360},hN=(e,t)=>{var{relativeX:r,relativeY:n}=e,{radius:a,angle:i}=fN({x:r,y:n},t),{innerRadius:o,outerRadius:l}=t;if(a<o||a>l||a===0)return null;var{startAngle:c,endAngle:d}=mN(t),u=i,m;if(c<=d){for(;u>d;)u-=360;for(;u<c;)u+=360;m=u>=c&&u<=d}else{for(;u>c;)u-=360;for(;u<d;)u+=360;m=u>=d&&u<=c}return m?Ff(Ff({},t),{},{radius:a,angle:vN(u,t)}):null};function py(e){var{cx:t,cy:r,radius:n,startAngle:a,endAngle:i}=e,o=Ee(t,r,n,a),l=Ee(t,r,n,i);return{points:[o,l],cx:t,cy:r,radius:n,startAngle:a,endAngle:i}}var zf,Kf,Vf,Uf,qf,Wf,Hf;function dl(){return dl=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)({}).hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},dl.apply(null,arguments)}function jr(e,t){return t||(t=e.slice(0)),Object.freeze(Object.defineProperties(e,{raw:{value:Object.freeze(t)}}))}var pN=(e,t)=>{var r=He(t-e),n=Math.min(Math.abs(t-e),359.999);return r*n},fa=e=>{var{cx:t,cy:r,radius:n,angle:a,sign:i,isExternal:o,cornerRadius:l,cornerIsExternal:c}=e,d=l*(o?1:-1)+n,u=Math.asin(l/d)/Ja,m=c?a:a+i*u,h=Ee(t,r,d,m),v=Ee(t,r,n,m),y=c?a-i*u:a,g=Ee(t,r,d*Math.cos(u*Ja),y);return{center:h,circleTangency:v,lineTangency:g,theta:u}},yy=e=>{var{cx:t,cy:r,innerRadius:n,outerRadius:a,startAngle:i,endAngle:o}=e,l=pN(i,o),c=i+l,d=Ee(t,r,a,i),u=Ee(t,r,a,c),m=Ne(zf||(zf=jr(["M ",",",`
42
+ A `,",",",0,0,",",",","," Z"])),e,t+c*b,b,b,u,e+d*b,t,e+r-d*b,t,b,b,u,e+r,t+c*b,e+r,t+n-c*b,b,b,u,e+r-d*b,t+n,e+d*b,t+n,b,b,u,e,t+n-c*b)}else m=Ne(Tf||(Tf=Nt(["M ",","," h "," v "," h "," Z"])),e,t,r,n,-r);return m},$f={x:0,y:0,width:0,height:0,radius:0,isAnimationActive:!1,isUpdateAnimationActive:!1,animationBegin:0,animationDuration:1500,animationEasing:"ease"},vy=e=>{var t=Le(e,$f),r=f.useRef(null),[n,a]=f.useState(-1);f.useEffect(()=>{if(r.current&&r.current.getTotalLength)try{var q=r.current.getTotalLength();q&&a(q)}catch{}},[]);var{x:i,y:o,width:l,height:c,radius:d,className:u}=t,{animationEasing:m,animationDuration:h,animationBegin:v,isAnimationActive:g,isUpdateAnimationActive:y}=t,p=f.useRef(l),b=f.useRef(c),j=f.useRef(i),x=f.useRef(o),C=f.useMemo(()=>({x:i,y:o,width:l,height:c,radius:d}),[i,o,l,c,d]),w=Ui(C,"rectangle-");if(i!==+i||o!==+o||l!==+l||c!==+c||l===0||c===0)return null;var P=de("recharts-rectangle",u);if(!y){var O=Je(t),{radius:k}=O,N=Lf(O,tN);return f.createElement("path",Za({},N,{x:nr(i),y:nr(o),width:nr(l),height:nr(c),radius:typeof d=="number"?d:void 0,className:P,d:Rf(i,o,l,c,d)}))}var S=p.current,A=b.current,_=j.current,I=x.current,D="0px ".concat(n===-1?1:n,"px"),F="".concat(n,"px ").concat(n,"px"),V=uy(["strokeDasharray"],h,typeof m=="string"?m:$f.animationEasing);return f.createElement(qi,{animationId:w,key:w,canBegin:n>0,duration:h,easing:m,isActive:y,begin:v},q=>{var te=He(S,l,q),U=He(A,c,q),ee=He(_,i,q),L=He(I,o,q);r.current&&(p.current=te,b.current=U,j.current=ee,x.current=L);var B;g?q>0?B={transition:V,strokeDasharray:F}:B={strokeDasharray:D}:B={strokeDasharray:F};var X=Je(t),{radius:Q}=X,G=Lf(X,rN);return f.createElement("path",Za({},G,{radius:typeof d=="number"?d:void 0,className:P,d:Rf(ee,L,te,U,d),ref:r,style:Df(Df({},B),t.style)}))})};function Bf(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),r.push.apply(r,n)}return r}function Ff(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?Bf(Object(r),!0).forEach(function(n){oN(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):Bf(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function oN(e,t,r){return(t=lN(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function lN(e){var t=cN(e,"string");return typeof t=="symbol"?t:t+""}function cN(e,t){if(typeof e!="object"||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var n=r.call(e,t);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}var Ja=Math.PI/180,uN=e=>e*180/Math.PI,Ee=(e,t,r,n)=>({x:e+Math.cos(-Ja*n)*r,y:t+Math.sin(-Ja*n)*r}),hy=function(t,r){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{top:0,right:0,bottom:0,left:0};return Math.min(Math.abs(t-(n.left||0)-(n.right||0)),Math.abs(r-(n.top||0)-(n.bottom||0)))/2},dN=(e,t)=>{var{x:r,y:n}=e,{x:a,y:i}=t;return Math.sqrt((r-a)**2+(n-i)**2)},fN=(e,t)=>{var{x:r,y:n}=e,{cx:a,cy:i}=t,o=dN({x:r,y:n},{x:a,y:i});if(o<=0)return{radius:o,angle:0};var l=(r-a)/o,c=Math.acos(l);return n>i&&(c=2*Math.PI-c),{radius:o,angle:uN(c),angleInRadian:c}},mN=e=>{var{startAngle:t,endAngle:r}=e,n=Math.floor(t/360),a=Math.floor(r/360),i=Math.min(n,a);return{startAngle:t-i*360,endAngle:r-i*360}},vN=(e,t)=>{var{startAngle:r,endAngle:n}=t,a=Math.floor(r/360),i=Math.floor(n/360),o=Math.min(a,i);return e+o*360},hN=(e,t)=>{var{relativeX:r,relativeY:n}=e,{radius:a,angle:i}=fN({x:r,y:n},t),{innerRadius:o,outerRadius:l}=t;if(a<o||a>l||a===0)return null;var{startAngle:c,endAngle:d}=mN(t),u=i,m;if(c<=d){for(;u>d;)u-=360;for(;u<c;)u+=360;m=u>=c&&u<=d}else{for(;u>c;)u-=360;for(;u<d;)u+=360;m=u>=d&&u<=c}return m?Ff(Ff({},t),{},{radius:a,angle:vN(u,t)}):null};function py(e){var{cx:t,cy:r,radius:n,startAngle:a,endAngle:i}=e,o=Ee(t,r,n,a),l=Ee(t,r,n,i);return{points:[o,l],cx:t,cy:r,radius:n,startAngle:a,endAngle:i}}var zf,Kf,Vf,qf,Uf,Wf,Hf;function dl(){return dl=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)({}).hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},dl.apply(null,arguments)}function jr(e,t){return t||(t=e.slice(0)),Object.freeze(Object.defineProperties(e,{raw:{value:Object.freeze(t)}}))}var pN=(e,t)=>{var r=Ge(t-e),n=Math.min(Math.abs(t-e),359.999);return r*n},fa=e=>{var{cx:t,cy:r,radius:n,angle:a,sign:i,isExternal:o,cornerRadius:l,cornerIsExternal:c}=e,d=l*(o?1:-1)+n,u=Math.asin(l/d)/Ja,m=c?a:a+i*u,h=Ee(t,r,d,m),v=Ee(t,r,n,m),g=c?a-i*u:a,y=Ee(t,r,d*Math.cos(u*Ja),g);return{center:h,circleTangency:v,lineTangency:y,theta:u}},yy=e=>{var{cx:t,cy:r,innerRadius:n,outerRadius:a,startAngle:i,endAngle:o}=e,l=pN(i,o),c=i+l,d=Ee(t,r,a,i),u=Ee(t,r,a,c),m=Ne(zf||(zf=jr(["M ",",",`
43
43
  A `,",",`,0,
44
44
  `,",",`,
45
45
  `,",",`
46
46
  `])),d.x,d.y,a,a,+(Math.abs(l)>180),+(i>c),u.x,u.y);if(n>0){var h=Ee(t,r,n,i),v=Ee(t,r,n,c);m+=Ne(Kf||(Kf=jr(["L ",",",`
47
47
  A `,",",`,0,
48
48
  `,",",`,
49
- `,","," Z"])),v.x,v.y,n,n,+(Math.abs(l)>180),+(i<=c),h.x,h.y)}else m+=Ne(Vf||(Vf=jr(["L ",","," Z"])),t,r);return m},yN=e=>{var{cx:t,cy:r,innerRadius:n,outerRadius:a,cornerRadius:i,forceCornerRadius:o,cornerIsExternal:l,startAngle:c,endAngle:d}=e,u=He(d-c),{circleTangency:m,lineTangency:h,theta:v}=fa({cx:t,cy:r,radius:a,angle:c,sign:u,cornerRadius:i,cornerIsExternal:l}),{circleTangency:y,lineTangency:g,theta:p}=fa({cx:t,cy:r,radius:a,angle:d,sign:-u,cornerRadius:i,cornerIsExternal:l}),b=l?Math.abs(c-d):Math.abs(c-d)-v-p;if(b<0)return o?Ne(Uf||(Uf=jr(["M ",",",`
49
+ `,","," Z"])),v.x,v.y,n,n,+(Math.abs(l)>180),+(i<=c),h.x,h.y)}else m+=Ne(Vf||(Vf=jr(["L ",","," Z"])),t,r);return m},yN=e=>{var{cx:t,cy:r,innerRadius:n,outerRadius:a,cornerRadius:i,forceCornerRadius:o,cornerIsExternal:l,startAngle:c,endAngle:d}=e,u=Ge(d-c),{circleTangency:m,lineTangency:h,theta:v}=fa({cx:t,cy:r,radius:a,angle:c,sign:u,cornerRadius:i,cornerIsExternal:l}),{circleTangency:g,lineTangency:y,theta:p}=fa({cx:t,cy:r,radius:a,angle:d,sign:-u,cornerRadius:i,cornerIsExternal:l}),b=l?Math.abs(c-d):Math.abs(c-d)-v-p;if(b<0)return o?Ne(qf||(qf=jr(["M ",",",`
50
50
  a`,",",",0,0,1,",`,0
51
51
  a`,",",",0,0,1,",`,0
52
- `])),h.x,h.y,i,i,i*2,i,i,-i*2):yy({cx:t,cy:r,innerRadius:n,outerRadius:a,startAngle:c,endAngle:d});var j=Ne(qf||(qf=jr(["M ",",",`
52
+ `])),h.x,h.y,i,i,i*2,i,i,-i*2):yy({cx:t,cy:r,innerRadius:n,outerRadius:a,startAngle:c,endAngle:d});var j=Ne(Uf||(Uf=jr(["M ",",",`
53
53
  A`,",",",0,0,",",",",",`
54
54
  A`,",",",0,",",",",",",",`
55
55
  A`,",",",0,0,",",",",",`
56
- `])),h.x,h.y,i,i,+(u<0),m.x,m.y,a,a,+(b>180),+(u<0),y.x,y.y,i,i,+(u<0),g.x,g.y);if(n>0){var{circleTangency:x,lineTangency:C,theta:w}=fa({cx:t,cy:r,radius:n,angle:c,sign:u,isExternal:!0,cornerRadius:i,cornerIsExternal:l}),{circleTangency:P,lineTangency:O,theta:k}=fa({cx:t,cy:r,radius:n,angle:d,sign:-u,isExternal:!0,cornerRadius:i,cornerIsExternal:l}),N=l?Math.abs(c-d):Math.abs(c-d)-w-k;if(N<0&&i===0)return"".concat(j,"L").concat(t,",").concat(r,"Z");j+=Ne(Wf||(Wf=jr(["L",",",`
56
+ `])),h.x,h.y,i,i,+(u<0),m.x,m.y,a,a,+(b>180),+(u<0),g.x,g.y,i,i,+(u<0),y.x,y.y);if(n>0){var{circleTangency:x,lineTangency:C,theta:w}=fa({cx:t,cy:r,radius:n,angle:c,sign:u,isExternal:!0,cornerRadius:i,cornerIsExternal:l}),{circleTangency:P,lineTangency:O,theta:k}=fa({cx:t,cy:r,radius:n,angle:d,sign:-u,isExternal:!0,cornerRadius:i,cornerIsExternal:l}),N=l?Math.abs(c-d):Math.abs(c-d)-w-k;if(N<0&&i===0)return"".concat(j,"L").concat(t,",").concat(r,"Z");j+=Ne(Wf||(Wf=jr(["L",",",`
57
57
  A`,",",",0,0,",",",",",`
58
58
  A`,",",",0,",",",",",",",`
59
- A`,",",",0,0,",",",",","Z"])),O.x,O.y,i,i,+(u<0),P.x,P.y,n,n,+(N>180),+(u>0),x.x,x.y,i,i,+(u<0),C.x,C.y)}else j+=Ne(Hf||(Hf=jr(["L",",","Z"])),t,r);return j},gN={cx:0,cy:0,innerRadius:0,outerRadius:0,startAngle:0,endAngle:0,cornerRadius:0,forceCornerRadius:!1,cornerIsExternal:!1},gy=e=>{var t=Le(e,gN),{cx:r,cy:n,innerRadius:a,outerRadius:i,cornerRadius:o,forceCornerRadius:l,cornerIsExternal:c,startAngle:d,endAngle:u,className:m}=t;if(i<a||d===u)return null;var h=de("recharts-sector",m),v=i-a,y=ot(o,v,0,!0),g;return y>0&&Math.abs(d-u)<360?g=yN({cx:r,cy:n,innerRadius:a,outerRadius:i,cornerRadius:Math.min(y,v/2),forceCornerRadius:l,cornerIsExternal:c,startAngle:d,endAngle:u}):g=yy({cx:r,cy:n,innerRadius:a,outerRadius:i,startAngle:d,endAngle:u}),f.createElement("path",dl({},Je(t),{className:h,d:g}))};function bN(e,t,r){if(e==="horizontal")return[{x:t.x,y:r.top},{x:t.x,y:r.top+r.height}];if(e==="vertical")return[{x:r.left,y:t.y},{x:r.left+r.width,y:t.y}];if(Xh(t)){if(e==="centric"){var{cx:n,cy:a,innerRadius:i,outerRadius:o,angle:l}=t,c=Ee(n,a,i,l),d=Ee(n,a,o,l);return[{x:c.x,y:c.y},{x:d.x,y:d.y}]}return py(t)}}var uo={},fo={},mo={},Gf;function xN(){return Gf||(Gf=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=lp();function r(n){return t.isSymbol(n)?NaN:Number(n)}e.toNumber=r})(mo)),mo}var Xf;function jN(){return Xf||(Xf=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=xN();function r(n){return n?(n=t.toNumber(n),n===1/0||n===-1/0?(n<0?-1:1)*Number.MAX_VALUE:n===n?n:0):n===0?n:0}e.toFinite=r})(fo)),fo}var Yf;function wN(){return Yf||(Yf=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=cp(),r=jN();function n(a,i,o){o&&typeof o!="number"&&t.isIterateeCall(a,i,o)&&(i=o=void 0),a=r.toFinite(a),i===void 0?(i=a,a=0):i=r.toFinite(i),o=o===void 0?a<i?1:-1:r.toFinite(o);const l=Math.max(Math.ceil((i-a)/(o||1)),0),c=new Array(l);for(let d=0;d<l;d++)c[d]=a,a+=o;return c}e.range=n})(uo)),uo}var vo,Zf;function CN(){return Zf||(Zf=1,vo=wN().range),vo}var kN=CN();const by=nn(kN);var Dt=e=>e.chartData,Wi=M([Dt],e=>{var t=e.chartData!=null?e.chartData.length-1:0;return{chartData:e.chartData,computedData:e.computedData,dataEndIndex:t,dataStartIndex:0}}),Yn=(e,t,r,n)=>n?Wi(e):Dt(e),PN=M([Yn],e=>{var{chartData:t,dataStartIndex:r,dataEndIndex:n}=e;return t!=null?t.slice(r,n+1):[]}),SN=M([Wi],e=>{var{chartData:t,dataStartIndex:r,dataEndIndex:n}=e;return t!=null?t.slice(r,n+1):[]}),NN=M([Dt],e=>{var{chartData:t,dataStartIndex:r,dataEndIndex:n}=e;return t!=null?t.slice(r,n+1):[]});function _t(e){if(Array.isArray(e)&&e.length===2){var[t,r]=e;if(ue(t)&&ue(r))return!0}return!1}function Jf(e,t,r){return r?e:[Math.min(e[0],t[0]),Math.max(e[1],t[1])]}function xy(e,t){if(t&&typeof e!="function"&&Array.isArray(e)&&e.length===2){var[r,n]=e,a,i;if(ue(r))a=r;else if(typeof r=="function")return;if(ue(n))i=n;else if(typeof n=="function")return;var o=[a,i];if(_t(o))return o}}function ON(e,t,r){if(!(!r&&t==null)){if(typeof e=="function"&&t!=null)try{var n=e(t,r);if(_t(n))return Jf(n,t,r)}catch{}if(Array.isArray(e)&&e.length===2){var[a,i]=e,o,l;if(a==="auto")t!=null&&(o=Math.min(...t));else if(Z(a))o=a;else if(typeof a=="function")try{t!=null&&(o=a(t?.[0]))}catch{}else if(typeof a=="string"&&qd.test(a)){var c=qd.exec(a);if(c==null||c[1]==null||t==null)o=void 0;else{var d=+c[1];o=t[0]-d}}else o=t?.[0];if(i==="auto")t!=null&&(l=Math.max(...t));else if(Z(i))l=i;else if(typeof i=="function")try{t!=null&&(l=i(t?.[1]))}catch{}else if(typeof i=="string"&&Wd.test(i)){var u=Wd.exec(i);if(u==null||u[1]==null||t==null)l=void 0;else{var m=+u[1];l=t[1]+m}}else l=t?.[1];var h=[o,l];if(_t(h))return t==null?h:Jf(h,t,r)}}}var sn=1e9,AN={precision:20,rounding:4,toExpNeg:-7,toExpPos:21,LN10:"2.302585092994045684017991454684364207601101488628772976033327900967572609677352480235997205089598298341967784042286"},hc,ke=!0,gt="[DecimalError] ",kr=gt+"Invalid argument: ",vc=gt+"Exponent out of range: ",on=Math.floor,br=Math.pow,EN=/^(\d+(\.\d*)?|\.\d+)(e[+-]?\d+)?$/i,it,$e=1e7,je=7,jy=9007199254740991,Qa=on(jy/je),H={};H.absoluteValue=H.abs=function(){var e=new this.constructor(this);return e.s&&(e.s=1),e};H.comparedTo=H.cmp=function(e){var t,r,n,a,i=this;if(e=new i.constructor(e),i.s!==e.s)return i.s||-e.s;if(i.e!==e.e)return i.e>e.e^i.s<0?1:-1;for(n=i.d.length,a=e.d.length,t=0,r=n<a?n:a;t<r;++t)if(i.d[t]!==e.d[t])return i.d[t]>e.d[t]^i.s<0?1:-1;return n===a?0:n>a^i.s<0?1:-1};H.decimalPlaces=H.dp=function(){var e=this,t=e.d.length-1,r=(t-e.e)*je;if(t=e.d[t],t)for(;t%10==0;t/=10)r--;return r<0?0:r};H.dividedBy=H.div=function(e){return Ft(this,new this.constructor(e))};H.dividedToIntegerBy=H.idiv=function(e){var t=this,r=t.constructor;return pe(Ft(t,new r(e),0,1),r.precision)};H.equals=H.eq=function(e){return!this.cmp(e)};H.exponent=function(){return _e(this)};H.greaterThan=H.gt=function(e){return this.cmp(e)>0};H.greaterThanOrEqualTo=H.gte=function(e){return this.cmp(e)>=0};H.isInteger=H.isint=function(){return this.e>this.d.length-2};H.isNegative=H.isneg=function(){return this.s<0};H.isPositive=H.ispos=function(){return this.s>0};H.isZero=function(){return this.s===0};H.lessThan=H.lt=function(e){return this.cmp(e)<0};H.lessThanOrEqualTo=H.lte=function(e){return this.cmp(e)<1};H.logarithm=H.log=function(e){var t,r=this,n=r.constructor,a=n.precision,i=a+5;if(e===void 0)e=new n(10);else if(e=new n(e),e.s<1||e.eq(it))throw Error(gt+"NaN");if(r.s<1)throw Error(gt+(r.s?"NaN":"-Infinity"));return r.eq(it)?new n(0):(ke=!1,t=Ft(Rn(r,i),Rn(e,i),i),ke=!0,pe(t,a))};H.minus=H.sub=function(e){var t=this;return e=new t.constructor(e),t.s==e.s?ky(t,e):wy(t,(e.s=-e.s,e))};H.modulo=H.mod=function(e){var t,r=this,n=r.constructor,a=n.precision;if(e=new n(e),!e.s)throw Error(gt+"NaN");return r.s?(ke=!1,t=Ft(r,e,0,1).times(e),ke=!0,r.minus(t)):pe(new n(r),a)};H.naturalExponential=H.exp=function(){return Cy(this)};H.naturalLogarithm=H.ln=function(){return Rn(this)};H.negated=H.neg=function(){var e=new this.constructor(this);return e.s=-e.s||0,e};H.plus=H.add=function(e){var t=this;return e=new t.constructor(e),t.s==e.s?wy(t,e):ky(t,(e.s=-e.s,e))};H.precision=H.sd=function(e){var t,r,n,a=this;if(e!==void 0&&e!==!!e&&e!==1&&e!==0)throw Error(kr+e);if(t=_e(a)+1,n=a.d.length-1,r=n*je+1,n=a.d[n],n){for(;n%10==0;n/=10)r--;for(n=a.d[0];n>=10;n/=10)r++}return e&&t>r?t:r};H.squareRoot=H.sqrt=function(){var e,t,r,n,a,i,o,l=this,c=l.constructor;if(l.s<1){if(!l.s)return new c(0);throw Error(gt+"NaN")}for(e=_e(l),ke=!1,a=Math.sqrt(+l),a==0||a==1/0?(t=Et(l.d),(t.length+e)%2==0&&(t+="0"),a=Math.sqrt(t),e=on((e+1)/2)-(e<0||e%2),a==1/0?t="5e"+e:(t=a.toExponential(),t=t.slice(0,t.indexOf("e")+1)+e),n=new c(t)):n=new c(a.toString()),r=c.precision,a=o=r+3;;)if(i=n,n=i.plus(Ft(l,i,o+2)).times(.5),Et(i.d).slice(0,o)===(t=Et(n.d)).slice(0,o)){if(t=t.slice(o-3,o+1),a==o&&t=="4999"){if(pe(i,r+1,0),i.times(i).eq(l)){n=i;break}}else if(t!="9999")break;o+=4}return ke=!0,pe(n,r)};H.times=H.mul=function(e){var t,r,n,a,i,o,l,c,d,u=this,m=u.constructor,h=u.d,v=(e=new m(e)).d;if(!u.s||!e.s)return new m(0);for(e.s*=u.s,r=u.e+e.e,c=h.length,d=v.length,c<d&&(i=h,h=v,v=i,o=c,c=d,d=o),i=[],o=c+d,n=o;n--;)i.push(0);for(n=d;--n>=0;){for(t=0,a=c+n;a>n;)l=i[a]+v[n]*h[a-n-1]+t,i[a--]=l%$e|0,t=l/$e|0;i[a]=(i[a]+t)%$e|0}for(;!i[--o];)i.pop();return t?++r:i.shift(),e.d=i,e.e=r,ke?pe(e,m.precision):e};H.toDecimalPlaces=H.todp=function(e,t){var r=this,n=r.constructor;return r=new n(r),e===void 0?r:(Tt(e,0,sn),t===void 0?t=n.rounding:Tt(t,0,8),pe(r,e+_e(r)+1,t))};H.toExponential=function(e,t){var r,n=this,a=n.constructor;return e===void 0?r=_r(n,!0):(Tt(e,0,sn),t===void 0?t=a.rounding:Tt(t,0,8),n=pe(new a(n),e+1,t),r=_r(n,!0,e+1)),r};H.toFixed=function(e,t){var r,n,a=this,i=a.constructor;return e===void 0?_r(a):(Tt(e,0,sn),t===void 0?t=i.rounding:Tt(t,0,8),n=pe(new i(a),e+_e(a)+1,t),r=_r(n.abs(),!1,e+_e(n)+1),a.isneg()&&!a.isZero()?"-"+r:r)};H.toInteger=H.toint=function(){var e=this,t=e.constructor;return pe(new t(e),_e(e)+1,t.rounding)};H.toNumber=function(){return+this};H.toPower=H.pow=function(e){var t,r,n,a,i,o,l=this,c=l.constructor,d=12,u=+(e=new c(e));if(!e.s)return new c(it);if(l=new c(l),!l.s){if(e.s<1)throw Error(gt+"Infinity");return l}if(l.eq(it))return l;if(n=c.precision,e.eq(it))return pe(l,n);if(t=e.e,r=e.d.length-1,o=t>=r,i=l.s,o){if((r=u<0?-u:u)<=jy){for(a=new c(it),t=Math.ceil(n/je+4),ke=!1;r%2&&(a=a.times(l),em(a.d,t)),r=on(r/2),r!==0;)l=l.times(l),em(l.d,t);return ke=!0,e.s<0?new c(it).div(a):pe(a,n)}}else if(i<0)throw Error(gt+"NaN");return i=i<0&&e.d[Math.max(t,r)]&1?-1:1,l.s=1,ke=!1,a=e.times(Rn(l,n+d)),ke=!0,a=Cy(a),a.s=i,a};H.toPrecision=function(e,t){var r,n,a=this,i=a.constructor;return e===void 0?(r=_e(a),n=_r(a,r<=i.toExpNeg||r>=i.toExpPos)):(Tt(e,1,sn),t===void 0?t=i.rounding:Tt(t,0,8),a=pe(new i(a),e,t),r=_e(a),n=_r(a,e<=r||r<=i.toExpNeg,e)),n};H.toSignificantDigits=H.tosd=function(e,t){var r=this,n=r.constructor;return e===void 0?(e=n.precision,t=n.rounding):(Tt(e,1,sn),t===void 0?t=n.rounding:Tt(t,0,8)),pe(new n(r),e,t)};H.toString=H.valueOf=H.val=H.toJSON=H[Symbol.for("nodejs.util.inspect.custom")]=function(){var e=this,t=_e(e),r=e.constructor;return _r(e,t<=r.toExpNeg||t>=r.toExpPos)};function wy(e,t){var r,n,a,i,o,l,c,d,u=e.constructor,m=u.precision;if(!e.s||!t.s)return t.s||(t=new u(e)),ke?pe(t,m):t;if(c=e.d,d=t.d,o=e.e,a=t.e,c=c.slice(),i=o-a,i){for(i<0?(n=c,i=-i,l=d.length):(n=d,a=o,l=c.length),o=Math.ceil(m/je),l=o>l?o+1:l+1,i>l&&(i=l,n.length=1),n.reverse();i--;)n.push(0);n.reverse()}for(l=c.length,i=d.length,l-i<0&&(i=l,n=d,d=c,c=n),r=0;i;)r=(c[--i]=c[i]+d[i]+r)/$e|0,c[i]%=$e;for(r&&(c.unshift(r),++a),l=c.length;c[--l]==0;)c.pop();return t.d=c,t.e=a,ke?pe(t,m):t}function Tt(e,t,r){if(e!==~~e||e<t||e>r)throw Error(kr+e)}function Et(e){var t,r,n,a=e.length-1,i="",o=e[0];if(a>0){for(i+=o,t=1;t<a;t++)n=e[t]+"",r=je-n.length,r&&(i+=er(r)),i+=n;o=e[t],n=o+"",r=je-n.length,r&&(i+=er(r))}else if(o===0)return"0";for(;o%10===0;)o/=10;return i+o}var Ft=(function(){function e(n,a){var i,o=0,l=n.length;for(n=n.slice();l--;)i=n[l]*a+o,n[l]=i%$e|0,o=i/$e|0;return o&&n.unshift(o),n}function t(n,a,i,o){var l,c;if(i!=o)c=i>o?1:-1;else for(l=c=0;l<i;l++)if(n[l]!=a[l]){c=n[l]>a[l]?1:-1;break}return c}function r(n,a,i){for(var o=0;i--;)n[i]-=o,o=n[i]<a[i]?1:0,n[i]=o*$e+n[i]-a[i];for(;!n[0]&&n.length>1;)n.shift()}return function(n,a,i,o){var l,c,d,u,m,h,v,y,g,p,b,j,x,C,w,P,O,k,N=n.constructor,S=n.s==a.s?1:-1,A=n.d,_=a.d;if(!n.s)return new N(n);if(!a.s)throw Error(gt+"Division by zero");for(c=n.e-a.e,O=_.length,w=A.length,v=new N(S),y=v.d=[],d=0;_[d]==(A[d]||0);)++d;if(_[d]>(A[d]||0)&&--c,i==null?j=i=N.precision:o?j=i+(_e(n)-_e(a))+1:j=i,j<0)return new N(0);if(j=j/je+2|0,d=0,O==1)for(u=0,_=_[0],j++;(d<w||u)&&j--;d++)x=u*$e+(A[d]||0),y[d]=x/_|0,u=x%_|0;else{for(u=$e/(_[0]+1)|0,u>1&&(_=e(_,u),A=e(A,u),O=_.length,w=A.length),C=O,g=A.slice(0,O),p=g.length;p<O;)g[p++]=0;k=_.slice(),k.unshift(0),P=_[0],_[1]>=$e/2&&++P;do u=0,l=t(_,g,O,p),l<0?(b=g[0],O!=p&&(b=b*$e+(g[1]||0)),u=b/P|0,u>1?(u>=$e&&(u=$e-1),m=e(_,u),h=m.length,p=g.length,l=t(m,g,h,p),l==1&&(u--,r(m,O<h?k:_,h))):(u==0&&(l=u=1),m=_.slice()),h=m.length,h<p&&m.unshift(0),r(g,m,p),l==-1&&(p=g.length,l=t(_,g,O,p),l<1&&(u++,r(g,O<p?k:_,p))),p=g.length):l===0&&(u++,g=[0]),y[d++]=u,l&&g[0]?g[p++]=A[C]||0:(g=[A[C]],p=1);while((C++<w||g[0]!==void 0)&&j--)}return y[0]||y.shift(),v.e=c,pe(v,o?i+_e(v)+1:i)}})();function Cy(e,t){var r,n,a,i,o,l,c=0,d=0,u=e.constructor,m=u.precision;if(_e(e)>16)throw Error(vc+_e(e));if(!e.s)return new u(it);for(ke=!1,l=m,o=new u(.03125);e.abs().gte(.1);)e=e.times(o),d+=5;for(n=Math.log(br(2,d))/Math.LN10*2+5|0,l+=n,r=a=i=new u(it),u.precision=l;;){if(a=pe(a.times(e),l),r=r.times(++c),o=i.plus(Ft(a,r,l)),Et(o.d).slice(0,l)===Et(i.d).slice(0,l)){for(;d--;)i=pe(i.times(i),l);return u.precision=m,t==null?(ke=!0,pe(i,m)):i}i=o}}function _e(e){for(var t=e.e*je,r=e.d[0];r>=10;r/=10)t++;return t}function ho(e,t,r){if(t>e.LN10.sd())throw ke=!0,r&&(e.precision=r),Error(gt+"LN10 precision limit exceeded");return pe(new e(e.LN10),t)}function er(e){for(var t="";e--;)t+="0";return t}function Rn(e,t){var r,n,a,i,o,l,c,d,u,m=1,h=10,v=e,y=v.d,g=v.constructor,p=g.precision;if(v.s<1)throw Error(gt+(v.s?"NaN":"-Infinity"));if(v.eq(it))return new g(0);if(t==null?(ke=!1,d=p):d=t,v.eq(10))return t==null&&(ke=!0),ho(g,d);if(d+=h,g.precision=d,r=Et(y),n=r.charAt(0),i=_e(v),Math.abs(i)<15e14){for(;n<7&&n!=1||n==1&&r.charAt(1)>3;)v=v.times(e),r=Et(v.d),n=r.charAt(0),m++;i=_e(v),n>1?(v=new g("0."+r),i++):v=new g(n+"."+r.slice(1))}else return c=ho(g,d+2,p).times(i+""),v=Rn(new g(n+"."+r.slice(1)),d-h).plus(c),g.precision=p,t==null?(ke=!0,pe(v,p)):v;for(l=o=v=Ft(v.minus(it),v.plus(it),d),u=pe(v.times(v),d),a=3;;){if(o=pe(o.times(u),d),c=l.plus(Ft(o,new g(a),d)),Et(c.d).slice(0,d)===Et(l.d).slice(0,d))return l=l.times(2),i!==0&&(l=l.plus(ho(g,d+2,p).times(i+""))),l=Ft(l,new g(m),d),g.precision=p,t==null?(ke=!0,pe(l,p)):l;l=c,a+=2}}function Qf(e,t){var r,n,a;for((r=t.indexOf("."))>-1&&(t=t.replace(".","")),(n=t.search(/e/i))>0?(r<0&&(r=n),r+=+t.slice(n+1),t=t.substring(0,n)):r<0&&(r=t.length),n=0;t.charCodeAt(n)===48;)++n;for(a=t.length;t.charCodeAt(a-1)===48;)--a;if(t=t.slice(n,a),t){if(a-=n,r=r-n-1,e.e=on(r/je),e.d=[],n=(r+1)%je,r<0&&(n+=je),n<a){for(n&&e.d.push(+t.slice(0,n)),a-=je;n<a;)e.d.push(+t.slice(n,n+=je));t=t.slice(n),n=je-t.length}else n-=a;for(;n--;)t+="0";if(e.d.push(+t),ke&&(e.e>Qa||e.e<-Qa))throw Error(vc+r)}else e.s=0,e.e=0,e.d=[0];return e}function pe(e,t,r){var n,a,i,o,l,c,d,u,m=e.d;for(o=1,i=m[0];i>=10;i/=10)o++;if(n=t-o,n<0)n+=je,a=t,d=m[u=0];else{if(u=Math.ceil((n+1)/je),i=m.length,u>=i)return e;for(d=i=m[u],o=1;i>=10;i/=10)o++;n%=je,a=n-je+o}if(r!==void 0&&(i=br(10,o-a-1),l=d/i%10|0,c=t<0||m[u+1]!==void 0||d%i,c=r<4?(l||c)&&(r==0||r==(e.s<0?3:2)):l>5||l==5&&(r==4||c||r==6&&(n>0?a>0?d/br(10,o-a):0:m[u-1])%10&1||r==(e.s<0?8:7))),t<1||!m[0])return c?(i=_e(e),m.length=1,t=t-i-1,m[0]=br(10,(je-t%je)%je),e.e=on(-t/je)||0):(m.length=1,m[0]=e.e=e.s=0),e;if(n==0?(m.length=u,i=1,u--):(m.length=u+1,i=br(10,je-n),m[u]=a>0?(d/br(10,o-a)%br(10,a)|0)*i:0),c)for(;;)if(u==0){(m[0]+=i)==$e&&(m[0]=1,++e.e);break}else{if(m[u]+=i,m[u]!=$e)break;m[u--]=0,i=1}for(n=m.length;m[--n]===0;)m.pop();if(ke&&(e.e>Qa||e.e<-Qa))throw Error(vc+_e(e));return e}function ky(e,t){var r,n,a,i,o,l,c,d,u,m,h=e.constructor,v=h.precision;if(!e.s||!t.s)return t.s?t.s=-t.s:t=new h(e),ke?pe(t,v):t;if(c=e.d,m=t.d,n=t.e,d=e.e,c=c.slice(),o=d-n,o){for(u=o<0,u?(r=c,o=-o,l=m.length):(r=m,n=d,l=c.length),a=Math.max(Math.ceil(v/je),l)+2,o>a&&(o=a,r.length=1),r.reverse(),a=o;a--;)r.push(0);r.reverse()}else{for(a=c.length,l=m.length,u=a<l,u&&(l=a),a=0;a<l;a++)if(c[a]!=m[a]){u=c[a]<m[a];break}o=0}for(u&&(r=c,c=m,m=r,t.s=-t.s),l=c.length,a=m.length-l;a>0;--a)c[l++]=0;for(a=m.length;a>o;){if(c[--a]<m[a]){for(i=a;i&&c[--i]===0;)c[i]=$e-1;--c[i],c[a]+=$e}c[a]-=m[a]}for(;c[--l]===0;)c.pop();for(;c[0]===0;c.shift())--n;return c[0]?(t.d=c,t.e=n,ke?pe(t,v):t):new h(0)}function _r(e,t,r){var n,a=_e(e),i=Et(e.d),o=i.length;return t?(r&&(n=r-o)>0?i=i.charAt(0)+"."+i.slice(1)+er(n):o>1&&(i=i.charAt(0)+"."+i.slice(1)),i=i+(a<0?"e":"e+")+a):a<0?(i="0."+er(-a-1)+i,r&&(n=r-o)>0&&(i+=er(n))):a>=o?(i+=er(a+1-o),r&&(n=r-a-1)>0&&(i=i+"."+er(n))):((n=a+1)<o&&(i=i.slice(0,n)+"."+i.slice(n)),r&&(n=r-o)>0&&(a+1===o&&(i+="."),i+=er(n))),e.s<0?"-"+i:i}function em(e,t){if(e.length>t)return e.length=t,!0}function Py(e){var t,r,n;function a(i){var o=this;if(!(o instanceof a))return new a(i);if(o.constructor=a,i instanceof a){o.s=i.s,o.e=i.e,o.d=(i=i.d)?i.slice():i;return}if(typeof i=="number"){if(i*0!==0)throw Error(kr+i);if(i>0)o.s=1;else if(i<0)i=-i,o.s=-1;else{o.s=0,o.e=0,o.d=[0];return}if(i===~~i&&i<1e7){o.e=0,o.d=[i];return}return Qf(o,i.toString())}else if(typeof i!="string")throw Error(kr+i);if(i.charCodeAt(0)===45?(i=i.slice(1),o.s=-1):o.s=1,EN.test(i))Qf(o,i);else throw Error(kr+i)}if(a.prototype=H,a.ROUND_UP=0,a.ROUND_DOWN=1,a.ROUND_CEIL=2,a.ROUND_FLOOR=3,a.ROUND_HALF_UP=4,a.ROUND_HALF_DOWN=5,a.ROUND_HALF_EVEN=6,a.ROUND_HALF_CEIL=7,a.ROUND_HALF_FLOOR=8,a.clone=Py,a.config=a.set=_N,e===void 0&&(e={}),e)for(n=["precision","rounding","toExpNeg","toExpPos","LN10"],t=0;t<n.length;)e.hasOwnProperty(r=n[t++])||(e[r]=this[r]);return a.config(e),a}function _N(e){if(!e||typeof e!="object")throw Error(gt+"Object expected");var t,r,n,a=["precision",1,sn,"rounding",0,8,"toExpNeg",-1/0,0,"toExpPos",0,1/0];for(t=0;t<a.length;t+=3)if((n=e[r=a[t]])!==void 0)if(on(n)===n&&n>=a[t+1]&&n<=a[t+2])this[r]=n;else throw Error(kr+r+": "+n);if((n=e[r="LN10"])!==void 0)if(n==Math.LN10)this[r]=new this(n);else throw Error(kr+r+": "+n);return this}var hc=Py(AN);it=new hc(1);const oe=hc;function Sy(e){var t;return e===0?t=1:t=Math.floor(new oe(e).abs().log(10).toNumber())+1,t}function Ny(e,t,r){for(var n=new oe(e),a=0,i=[];n.lt(t)&&a<1e5;)i.push(n.toNumber()),n=n.add(r),a++;return i}var Oy=e=>{var[t,r]=e,[n,a]=[t,r];return t>r&&([n,a]=[r,t]),[n,a]},pc=(e,t,r)=>{if(e.lte(0))return new oe(0);var n=Sy(e.toNumber()),a=new oe(10).pow(n),i=e.div(a),o=n!==1?.05:.1,l=new oe(Math.ceil(i.div(o).toNumber())).add(r).mul(o),c=l.mul(a);return t?new oe(c.toNumber()):new oe(Math.ceil(c.toNumber()))},Ay=(e,t,r)=>{var n;if(e.lte(0))return new oe(0);var a=[1,2,2.5,5],i=e.toNumber(),o=Math.floor(new oe(i).abs().log(10).toNumber()),l=new oe(10).pow(o),c=e.div(l).toNumber(),d=a.findIndex(v=>v>=c-1e-10);if(d===-1&&(l=l.mul(10),d=0),d+=r,d>=a.length){var u=Math.floor(d/a.length);d%=a.length,l=l.mul(new oe(10).pow(u))}var m=(n=a[d])!==null&&n!==void 0?n:1,h=new oe(m).mul(l);return t?h:new oe(Math.ceil(h.toNumber()))},MN=(e,t,r)=>{var n=new oe(1),a=new oe(e);if(!a.isint()&&r){var i=Math.abs(e);i<1?(n=new oe(10).pow(Sy(e)-1),a=new oe(Math.floor(a.div(n).toNumber())).mul(n)):i>1&&(a=new oe(Math.floor(e)))}else e===0?a=new oe(Math.floor((t-1)/2)):r||(a=new oe(Math.floor(e)));for(var o=Math.floor((t-1)/2),l=[],c=0;c<t;c++)l.push(a.add(new oe(c-o).mul(n)).toNumber());return l},Ey=function(t,r,n,a){var i=arguments.length>4&&arguments[4]!==void 0?arguments[4]:0,o=arguments.length>5&&arguments[5]!==void 0?arguments[5]:pc;if(!Number.isFinite((r-t)/(n-1)))return{step:new oe(0),tickMin:new oe(0),tickMax:new oe(0)};var l=o(new oe(r).sub(t).div(n-1),a,i),c;t<=0&&r>=0?c=new oe(0):(c=new oe(t).add(r).div(2),c=c.sub(new oe(c).mod(l)));var d=Math.ceil(c.sub(t).div(l).toNumber()),u=Math.ceil(new oe(r).sub(c).div(l).toNumber()),m=d+u+1;return m>n?Ey(t,r,n,a,i+1,o):(m<n&&(u=r>0?u+(n-m):u,d=r>0?d:d+(n-m)),{step:l,tickMin:c.sub(new oe(d).mul(l)),tickMax:c.add(new oe(u).mul(l))})},tm=function(t){var[r,n]=t,a=arguments.length>1&&arguments[1]!==void 0?arguments[1]:6,i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0,o=arguments.length>3&&arguments[3]!==void 0?arguments[3]:"auto",l=Math.max(a,2),[c,d]=Oy([r,n]);if(c===-1/0||d===1/0){var u=d===1/0?[c,...Array(a-1).fill(1/0)]:[...Array(a-1).fill(-1/0),d];return r>n?u.reverse():u}if(c===d)return MN(c,a,i);var m=o==="snap125"?Ay:pc,{step:h,tickMin:v,tickMax:y}=Ey(c,d,l,i,0,m),g=Ny(v,y.add(new oe(.1).mul(h)),h);return r>n?g.reverse():g},rm=function(t,r){var[n,a]=t,i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0,o=arguments.length>3&&arguments[3]!==void 0?arguments[3]:"auto",[l,c]=Oy([n,a]);if(l===-1/0||c===1/0)return[n,a];if(l===c)return[l];var d=o==="snap125"?Ay:pc,u=Math.max(r,2),m=d(new oe(c).sub(l).div(u-1),i,0),h=[...Ny(new oe(l),new oe(c),m),c];return i===!1&&(h=h.map(v=>Math.round(v))),n>a?h.reverse():h},TN=e=>e.rootProps.barCategoryGap,Zn=e=>e.rootProps.stackOffset,_y=e=>e.rootProps.reverseStackOrder,yc=e=>e.options.chartName,gc=e=>e.rootProps.syncId,My=e=>e.rootProps.syncMethod,bc=e=>e.options.eventEmitter,Ve={grid:-100,barBackground:-50,area:100,cursorRectangle:200,bar:300,line:400,axis:500,scatter:600,activeBar:1e3,cursorLine:1100,activeDot:1200,label:2e3},fr={allowDecimals:!1,allowDataOverflow:!1,angleAxisId:0,reversed:!1,scale:"auto",tick:!0,type:"auto"},Nt={allowDataOverflow:!1,allowDecimals:!1,allowDuplicatedCategory:!0,includeHidden:!1,radiusAxisId:0,reversed:!1,scale:"auto",tick:!0,tickCount:5,type:"auto"},Hi=(e,t)=>{if(!(!e||!t))return e!=null&&e.reversed?[t[1],t[0]]:t};function Gi(e,t,r){if(r!=="auto")return r;if(e!=null)return Wt(e,t)?"category":"number"}function nm(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),r.push.apply(r,n)}return r}function ei(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?nm(Object(r),!0).forEach(function(n){IN(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):nm(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function IN(e,t,r){return(t=DN(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function DN(e){var t=LN(e,"string");return typeof t=="symbol"?t:t+""}function LN(e,t){if(typeof e!="object"||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var n=r.call(e,t);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}var am={allowDataOverflow:fr.allowDataOverflow,allowDecimals:fr.allowDecimals,allowDuplicatedCategory:!1,dataKey:void 0,domain:void 0,id:fr.angleAxisId,includeHidden:!1,name:void 0,reversed:fr.reversed,scale:fr.scale,tick:fr.tick,tickCount:void 0,ticks:void 0,type:fr.type,unit:void 0,niceTicks:"auto"},im={allowDataOverflow:Nt.allowDataOverflow,allowDecimals:Nt.allowDecimals,allowDuplicatedCategory:Nt.allowDuplicatedCategory,dataKey:void 0,domain:void 0,id:Nt.radiusAxisId,includeHidden:Nt.includeHidden,name:void 0,reversed:Nt.reversed,scale:Nt.scale,tick:Nt.tick,tickCount:Nt.tickCount,ticks:void 0,type:Nt.type,unit:void 0,niceTicks:"auto"},RN=(e,t)=>{if(t!=null)return e.polarAxis.angleAxis[t]},xc=M([RN,Zp],(e,t)=>{var r;if(e!=null)return e;var n=(r=Gi(t,"angleAxis",am.type))!==null&&r!==void 0?r:"category";return ei(ei({},am),{},{type:n})}),$N=(e,t)=>e.polarAxis.radiusAxis[t],jc=M([$N,Zp],(e,t)=>{var r;if(e!=null)return e;var n=(r=Gi(t,"radiusAxis",im.type))!==null&&r!==void 0?r:"category";return ei(ei({},im),{},{type:n})}),Xi=e=>e.polarOptions,wc=M([Ht,Gt,Be],hy),Ty=M([Xi,wc],(e,t)=>{if(e!=null)return ot(e.innerRadius,t,0)}),Iy=M([Xi,wc],(e,t)=>{if(e!=null)return ot(e.outerRadius,t,t*.8)}),BN=e=>{if(e==null)return[0,0];var{startAngle:t,endAngle:r}=e;return[t,r]},Dy=M([Xi],BN);M([xc,Dy],Hi);var Ly=M([wc,Ty,Iy],(e,t,r)=>{if(!(e==null||t==null||r==null))return[t,r]});M([jc,Ly],Hi);var Ry=M([ge,Xi,Ty,Iy,Ht,Gt],(e,t,r,n,a,i)=>{if(!(e!=="centric"&&e!=="radial"||t==null||r==null||n==null)){var{cx:o,cy:l,startAngle:c,endAngle:d}=t;return{cx:ot(o,a,a/2),cy:ot(l,i,i/2),innerRadius:r,outerRadius:n,startAngle:c,endAngle:d,clockWise:!1}}}),Pe=(e,t)=>t,Jn=(e,t,r)=>r;function $y(e){return e?.id}function By(e,t,r){var{chartData:n=[]}=t,{allowDuplicatedCategory:a,dataKey:i}=r,o=new Map;return e.forEach(l=>{var c,d=(c=l.data)!==null&&c!==void 0?c:n;if(!(d==null||d.length===0)){var u=$y(l);d.forEach((m,h)=>{var v=i==null||a?h:String(he(m,i,null)),y=he(m,l.dataKey,0),g;o.has(v)?g=o.get(v):g={},Object.assign(g,{[u]:y}),o.set(v,g)})}}),Array.from(o.values())}function Cc(e){return"stackId"in e&&e.stackId!=null&&e.dataKey!=null}var Yi=(e,t)=>e===t?!0:e==null||t==null?!1:e[0]===t[0]&&e[1]===t[1];function Zi(e,t){return Array.isArray(e)&&Array.isArray(t)&&e.length===0&&t.length===0?!0:e===t}function FN(e,t){if(e.length===t.length){for(var r=0;r<e.length;r++)if(e[r]!==t[r])return!1;return!0}return!1}var Fe=e=>{var t=ge(e);return t==="horizontal"?"xAxis":t==="vertical"?"yAxis":t==="centric"?"angleAxis":"radiusAxis"},ln=e=>e.tooltip.settings.axisId;function kc(e){if(e!=null){var t=e.ticks,r=e.bandwidth,n=e.range(),a=[Math.min(...n),Math.max(...n)];return{domain:()=>e.domain(),range:(function(i){function o(){return i.apply(this,arguments)}return o.toString=function(){return i.toString()},o})(()=>a),rangeMin:()=>a[0],rangeMax:()=>a[1],isInRange(i){var o=a[0],l=a[1];return o<=l?i>=o&&i<=l:i>=l&&i<=o},bandwidth:r?()=>r.call(e):void 0,ticks:t?i=>t.call(e,i):void 0,map:(i,o)=>{var l=e(i);if(l!=null){if(e.bandwidth&&o!==null&&o!==void 0&&o.position){var c=e.bandwidth();switch(o.position){case"middle":l+=c/2;break;case"end":l+=c;break}}return l}}}}}var Fy=(e,t)=>{if(t!=null)switch(e){case"linear":{if(!_t(t)){for(var r,n,a=0;a<t.length;a++){var i=t[a];ue(i)&&((r===void 0||i<r)&&(r=i),(n===void 0||i>n)&&(n=i))}return r!==void 0&&n!==void 0?[r,n]:void 0}return t}default:return t}};const zy=Object.freeze(Object.defineProperty({__proto__:null,scaleBand:Tj,scaleDiverging:Th,scaleDivergingLog:Ih,scaleDivergingPow:Vl,scaleDivergingSqrt:E0,scaleDivergingSymlog:Dh,scaleIdentity:wh,scaleImplicit:t0,scaleLinear:$j,scaleLog:Ch,scaleOrdinal:r0,scalePoint:Ij,scalePow:zl,scaleQuantile:Sh,scaleQuantize:Nh,scaleRadial:Ph,scaleSequential:Ah,scaleSequentialLog:Eh,scaleSequentialPow:Kl,scaleSequentialQuantile:Mh,scaleSequentialSqrt:A0,scaleSequentialSymlog:_h,scaleSqrt:S0,scaleSymlog:kh,scaleThreshold:Oh,scaleTime:Jj,scaleUtc:O0,tickFormat:Bj},Symbol.toStringTag,{value:"Module"}));function zN(e){var t=zy;if(e in t&&typeof t[e]=="function")return t[e]();var r="scale".concat(zn(e));if(r in t&&typeof t[r]=="function")return t[r]()}function sm(e,t,r){if(typeof e=="function")return e.copy().domain(t).range(r);if(e!=null){var n=zN(e);if(n!=null)return n.domain(t).range(r),n}}function Pc(e,t,r,n){if(!(r==null||n==null))return typeof e.scale=="function"?sm(e.scale,r,n):sm(t,r,n)}function KN(e){return"scale".concat(zn(e))}function VN(e){return KN(e)in zy}var Ky=(e,t,r)=>{if(e!=null){var{scale:n,type:a}=e;if(n==="auto")return a==="category"&&r&&(r.indexOf("LineChart")>=0||r.indexOf("AreaChart")>=0||r.indexOf("ComposedChart")>=0&&!t)?"point":a==="category"?"band":"linear";if(typeof n=="string")return VN(n)?n:"point"}};function UN(e,t){for(var r=0,n=e.length,a=e[0]<e[e.length-1];r<n;){var i=Math.floor((r+n)/2);(a?e[i]<t:e[i]>t)?r=i+1:n=i}return r}function Vy(e,t){if(e){var r=t??e.domain(),n=r.map(i=>{var o;return(o=e(i))!==null&&o!==void 0?o:0}),a=e.range();if(!(r.length===0||a.length<2))return i=>{var o,l,c=UN(n,i);if(c<=0)return r[0];if(c>=r.length)return r[r.length-1];var d=(o=n[c-1])!==null&&o!==void 0?o:0,u=(l=n[c])!==null&&l!==void 0?l:0;return Math.abs(i-d)<=Math.abs(i-u)?r[c-1]:r[c]}}}function qN(e){if(e!=null)return"invert"in e&&typeof e.invert=="function"?e.invert.bind(e):Vy(e,void 0)}function om(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),r.push.apply(r,n)}return r}function ti(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?om(Object(r),!0).forEach(function(n){WN(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):om(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function WN(e,t,r){return(t=HN(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function HN(e){var t=GN(e,"string");return typeof t=="symbol"?t:t+""}function GN(e,t){if(typeof e!="object"||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var n=r.call(e,t);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}var fl=[0,"auto"],Me={allowDataOverflow:!1,allowDecimals:!0,allowDuplicatedCategory:!0,angle:0,dataKey:void 0,domain:void 0,height:30,hide:!0,id:0,includeHidden:!1,interval:"preserveEnd",minTickGap:5,mirror:!1,name:void 0,orientation:"bottom",padding:{left:0,right:0},reversed:!1,scale:"auto",tick:!0,tickCount:5,tickFormatter:void 0,ticks:void 0,type:"category",unit:void 0,niceTicks:"auto"},Uy=(e,t)=>e.cartesianAxis.xAxis[t],Xt=(e,t)=>{var r=Uy(e,t);return r??Me},Te={allowDataOverflow:!1,allowDecimals:!0,allowDuplicatedCategory:!0,angle:0,dataKey:void 0,domain:fl,hide:!0,id:0,includeHidden:!1,interval:"preserveEnd",minTickGap:5,mirror:!1,name:void 0,orientation:"left",padding:{top:0,bottom:0},reversed:!1,scale:"auto",tick:!0,tickCount:5,tickFormatter:void 0,ticks:void 0,type:"number",unit:void 0,niceTicks:"auto",width:qn},qy=(e,t)=>e.cartesianAxis.yAxis[t],Yt=(e,t)=>{var r=qy(e,t);return r??Te},XN={domain:[0,"auto"],includeHidden:!1,reversed:!1,allowDataOverflow:!1,allowDuplicatedCategory:!1,dataKey:void 0,id:0,name:"",range:[64,64],scale:"auto",type:"number",unit:""},Sc=(e,t)=>{var r=e.cartesianAxis.zAxis[t];return r??XN},Oe=(e,t,r)=>{switch(t){case"xAxis":return Xt(e,r);case"yAxis":return Yt(e,r);case"zAxis":return Sc(e,r);case"angleAxis":return xc(e,r);case"radiusAxis":return jc(e,r);default:throw new Error("Unexpected axis type: ".concat(t))}},YN=(e,t,r)=>{switch(t){case"xAxis":return Xt(e,r);case"yAxis":return Yt(e,r);default:throw new Error("Unexpected axis type: ".concat(t))}},cn=(e,t,r)=>{switch(t){case"xAxis":return Xt(e,r);case"yAxis":return Yt(e,r);case"angleAxis":return xc(e,r);case"radiusAxis":return jc(e,r);default:throw new Error("Unexpected axis type: ".concat(t))}},Wy=e=>e.graphicalItems.cartesianItems.some(t=>t.type==="bar")||e.graphicalItems.polarItems.some(t=>t.type==="radialBar");function Nc(e,t){return r=>{switch(e){case"xAxis":return"xAxisId"in r&&r.xAxisId===t;case"yAxis":return"yAxisId"in r&&r.yAxisId===t;case"zAxis":return"zAxisId"in r&&r.zAxisId===t;case"angleAxis":return"angleAxisId"in r&&r.angleAxisId===t;case"radiusAxis":return"radiusAxisId"in r&&r.radiusAxisId===t;default:return!1}}}var Hy=e=>e.graphicalItems.cartesianItems,ZN=M([Pe,Jn],Nc),Oc=(e,t,r)=>e.filter(r).filter(n=>t?.includeHidden===!0?!0:!n.hide),un=M([Hy,Oe,ZN],Oc,{memoizeOptions:{resultEqualityCheck:Zi}}),Gy=M([un],e=>e.filter(t=>t.type==="area"||t.type==="bar").filter(Cc)),Xy=e=>e.filter(t=>!("stackId"in t)||t.stackId===void 0),JN=M([un],Xy),Ac=e=>e.map(t=>t.data).filter(Boolean).flat(1),QN=M([un],e=>e.some(t=>!t.data)),Yy=M([un],Ac,{memoizeOptions:{resultEqualityCheck:Zi}}),Ec=(e,t)=>{var{chartData:r=[],dataStartIndex:n,dataEndIndex:a}=t;return e.length>0?e:r.slice(n,a+1)},_c=M([Yy,Yn],Ec),Zy=(e,t,r)=>t?.dataKey!=null?e.map(n=>({value:he(n,t.dataKey)})):r.length>0?r.map(n=>n.dataKey).flatMap(n=>e.map(a=>({value:he(a,n)}))):e.map(n=>({value:n})),Jy=(e,t,r,n,a,i)=>{var{chartData:o=[],dataStartIndex:l,dataEndIndex:c}=n,d=Zy(e,t,r);if(a&&t?.dataKey!=null&&i.length>0){var u=o.slice(l,c+1),m=u.map(h=>({value:he(h,t.dataKey)})).filter(h=>h.value!=null);return[...m,...d]}return d},Qn=M([_c,Oe,un,Yn,QN,Yy],Jy);function Hr(e){if(Mt(e)||e instanceof Date){var t=Number(e);if(ue(t))return t}}function lm(e){if(Array.isArray(e)){var t=[Hr(e[0]),Hr(e[1])];return _t(t)?t:void 0}var r=Hr(e);if(r!=null)return[r,r]}function It(e){return e.map(Hr).filter(tt)}function eO(e,t){var r=Hr(e),n=Hr(t);return r==null&&n==null?0:r==null?-1:n==null?1:r-n}var tO=M([Qn],e=>e?.map(t=>t.value).sort(eO));function Qy(e,t){switch(e){case"xAxis":return t.direction==="x";case"yAxis":return t.direction==="y";default:return!1}}function rO(e,t,r){if(!r)return[];if(!r.length)return[];var n;if(typeof t=="number"&&!Vt(t))n=t;else if(Array.isArray(t)){var a=It(t);a.length>0&&(n=Math.max(...a))}return n==null?[]:It(r.flatMap(i=>{var o=he(e,i.dataKey),l,c;if(Array.isArray(o)?[l,c]=o:l=c=o,!(!ue(l)||!ue(c)))return[n-l,n+c]}))}var Re=e=>{var t=Fe(e),r=ln(e);return cn(e,t,r)},en=M([Re],e=>e?.dataKey),nO=M([Gy,Yn,Re],By),eg=(e,t,r,n)=>{var a={},i=t.reduce((o,l)=>{if(l.stackId==null)return o;var c=o[l.stackId];return c==null&&(c=[]),c.push(l),o[l.stackId]=c,o},a);return Object.fromEntries(Object.entries(i).map(o=>{var[l,c]=o,d=n?[...c].reverse():c,u=d.map($y);return[l,{stackedData:$k(e,u,r),graphicalItems:d}]}))},aO=M([nO,Gy,Zn,_y],eg),tg=(e,t,r,n)=>{var{dataStartIndex:a,dataEndIndex:i}=t;if(n==null&&r!=="zAxis"){var o=zk(e,a,i);if(!(o!=null&&o[0]===0&&o[1]===0))return o}},iO=M([Oe],e=>e.allowDataOverflow),Mc=e=>{var t;if(e==null||!("domain"in e))return fl;if(e.domain!=null)return e.domain;if("ticks"in e&&e.ticks!=null){if(e.type==="number"){var r=It(e.ticks);return[Math.min(...r),Math.max(...r)]}if(e.type==="category")return e.ticks.map(String)}return(t=e?.domain)!==null&&t!==void 0?t:fl},Tc=M([Oe],Mc),Ic=M([Tc,iO],xy),sO=M([aO,Dt,Pe,Ic],tg,{memoizeOptions:{resultEqualityCheck:Yi}}),Ji=e=>e.errorBars,oO=(e,t,r)=>e.flatMap(n=>t[n.id]).filter(Boolean).filter(n=>Qy(r,n)),ri=function(){for(var t=arguments.length,r=new Array(t),n=0;n<t;n++)r[n]=arguments[n];var a=r.filter(Boolean);if(a.length!==0){var i=a.flat(),o=Math.min(...i),l=Math.max(...i);return[o,l]}},Dc=function(t,r,n,a,i){var o=arguments.length>5&&arguments[5]!==void 0?arguments[5]:[],l,c;if(n.length>0&&n.forEach(d=>{var u,m=d.data!=null?[...d.data]:o,h=(u=a[d.id])===null||u===void 0?void 0:u.filter(v=>Qy(i,v));m.forEach(v=>{var y,g=he(v,(y=r.dataKey)!==null&&y!==void 0?y:d.dataKey),p=rO(v,g,h);if(p.length>=2){var b=Math.min(...p),j=Math.max(...p);(l==null||b<l)&&(l=b),(c==null||j>c)&&(c=j)}var x=lm(g);x!=null&&(l=l==null?x[0]:Math.min(l,x[0]),c=c==null?x[1]:Math.max(c,x[1]))})}),r?.dataKey!=null&&n.length===0&&t.forEach(d=>{var u=lm(he(d,r.dataKey));u!=null&&(l=l==null?u[0]:Math.min(l,u[0]),c=c==null?u[1]:Math.max(c,u[1]))}),ue(l)&&ue(c))return[l,c]},lO=M([_c,Oe,JN,Ji,Pe,PN],Dc,{memoizeOptions:{resultEqualityCheck:Yi}});function cO(e){var{value:t}=e;if(Mt(t)||t instanceof Date)return t}var uO=(e,t,r)=>{var n=e.map(cO).filter(a=>a!=null);return r&&(t.dataKey==null||t.allowDuplicatedCategory&&Wh(n))?by(0,e.length):t.allowDuplicatedCategory?n:Array.from(new Set(n))},rg=e=>e.referenceElements.dots,dn=(e,t,r)=>e.filter(n=>n.ifOverflow==="extendDomain").filter(n=>t==="xAxis"?n.xAxisId===r:n.yAxisId===r),dO=M([rg,Pe,Jn],dn),ng=e=>e.referenceElements.areas,fO=M([ng,Pe,Jn],dn),ag=e=>e.referenceElements.lines,mO=M([ag,Pe,Jn],dn),ig=(e,t)=>{if(e!=null){var r=It(e.map(n=>t==="xAxis"?n.x:n.y));if(r.length!==0)return[Math.min(...r),Math.max(...r)]}},vO=M(dO,Pe,ig),sg=(e,t)=>{if(e!=null){var r=It(e.flatMap(n=>[t==="xAxis"?n.x1:n.y1,t==="xAxis"?n.x2:n.y2]));if(r.length!==0)return[Math.min(...r),Math.max(...r)]}},hO=M([fO,Pe],sg);function pO(e){var t;if(e.x!=null)return It([e.x]);var r=(t=e.segment)===null||t===void 0?void 0:t.map(n=>n.x);return r==null||r.length===0?[]:It(r)}function yO(e){var t;if(e.y!=null)return It([e.y]);var r=(t=e.segment)===null||t===void 0?void 0:t.map(n=>n.y);return r==null||r.length===0?[]:It(r)}var og=(e,t)=>{if(e!=null){var r=e.flatMap(n=>t==="xAxis"?pO(n):yO(n));if(r.length!==0)return[Math.min(...r),Math.max(...r)]}},gO=M([mO,Pe],og),bO=M(vO,gO,hO,(e,t,r)=>ri(e,r,t)),Lc=(e,t,r,n,a,i,o,l)=>{if(r!=null)return r;var c=o==="vertical"&&l==="xAxis"||o==="horizontal"&&l==="yAxis",d=c?ri(n,i,a):ri(i,a);return ON(t,d,e.allowDataOverflow)},xO=M([Oe,Tc,Ic,sO,lO,bO,ge,Pe],Lc,{memoizeOptions:{resultEqualityCheck:Yi}}),jO=[0,1],Rc=(e,t,r,n,a,i,o)=>{if(!((e==null||r==null||r.length===0)&&o===void 0)){var{dataKey:l,type:c}=e,d=Wt(t,i);if(d&&l==null){var u;return by(0,(u=r?.length)!==null&&u!==void 0?u:0)}return c==="category"?uO(n,e,d):a==="expand"&&!d?jO:o}},$c=M([Oe,ge,_c,Qn,Zn,Pe,xO],Rc),lr=M([Oe,Wy,yc],Ky),Bc=(e,t,r)=>{var{niceTicks:n}=t;if(n!=="none"){var a=Mc(t),i=Array.isArray(a)&&(a[0]==="auto"||a[1]==="auto");if((n==="snap125"||n==="adaptive")&&t!=null&&t.tickCount&&_t(e)){if(i)return tm(e,t.tickCount,t.allowDecimals,n);if(t.type==="number")return rm(e,t.tickCount,t.allowDecimals,n)}if(n==="auto"&&r==="linear"&&t!=null&&t.tickCount){if(i&&_t(e))return tm(e,t.tickCount,t.allowDecimals,"adaptive");if(t.type==="number"&&_t(e))return rm(e,t.tickCount,t.allowDecimals,"adaptive")}}},Fc=M([$c,cn,lr],Bc),zc=(e,t,r,n)=>{if(n!=="angleAxis"&&e?.type==="number"&&_t(t)&&Array.isArray(r)&&r.length>0){var a,i,o=t[0],l=(a=r[0])!==null&&a!==void 0?a:0,c=t[1],d=(i=r[r.length-1])!==null&&i!==void 0?i:0;return[Math.min(o,l),Math.max(c,d)]}return t},wO=M([Oe,$c,Fc,Pe],zc),CO=M(Qn,Oe,(e,t)=>{if(!(!t||t.type!=="number")){var r=1/0,n=Array.from(It(e.map(m=>m.value))).sort((m,h)=>m-h),a=n[0],i=n[n.length-1];if(a==null||i==null)return 1/0;var o=i-a;if(o===0)return 1/0;for(var l=0;l<n.length-1;l++){var c=n[l],d=n[l+1];if(!(c==null||d==null)){var u=d-c;r=Math.min(r,u)}}return r/o}}),lg=M(CO,ge,TN,Be,(e,t,r,n,a)=>a,(e,t,r,n,a)=>{if(!ue(e))return 0;var i=t==="vertical"?n.height:n.width;if(a==="gap")return e*i/2;if(a==="no-gap"){var o=ot(r,e*i),l=e*i/2;return l-o-(l-o)/i*o}return 0}),kO=(e,t,r)=>{var n=Xt(e,t);return n==null||typeof n.padding!="string"?0:lg(e,"xAxis",t,r,n.padding)},PO=(e,t,r)=>{var n=Yt(e,t);return n==null||typeof n.padding!="string"?0:lg(e,"yAxis",t,r,n.padding)},SO=M(Xt,kO,(e,t)=>{var r,n;if(e==null)return{left:0,right:0};var{padding:a}=e;return typeof a=="string"?{left:t,right:t}:{left:((r=a.left)!==null&&r!==void 0?r:0)+t,right:((n=a.right)!==null&&n!==void 0?n:0)+t}}),NO=M(Yt,PO,(e,t)=>{var r,n;if(e==null)return{top:0,bottom:0};var{padding:a}=e;return typeof a=="string"?{top:t,bottom:t}:{top:((r=a.top)!==null&&r!==void 0?r:0)+t,bottom:((n=a.bottom)!==null&&n!==void 0?n:0)+t}}),OO=M([Be,SO,Bi,$i,(e,t,r)=>r],(e,t,r,n,a)=>{var{padding:i}=n;return a?[i.left,r.width-i.right]:[e.left+t.left,e.left+e.width-t.right]}),AO=M([Be,ge,NO,Bi,$i,(e,t,r)=>r],(e,t,r,n,a,i)=>{var{padding:o}=a;return i?[n.height-o.bottom,o.top]:t==="horizontal"?[e.top+e.height-r.bottom,e.top+r.top]:[e.top+r.top,e.top+e.height-r.bottom]}),ea=(e,t,r,n)=>{var a;switch(t){case"xAxis":return OO(e,r,n);case"yAxis":return AO(e,r,n);case"zAxis":return(a=Sc(e,r))===null||a===void 0?void 0:a.range;case"angleAxis":return Dy(e);case"radiusAxis":return Ly(e,r);default:return}},cg=M([Oe,ea],Hi),EO=M([lr,wO],Fy),Kc=M([Oe,lr,EO,cg],Pc),ug=(e,t,r,n)=>{if(!(r==null||r.dataKey==null)){var{type:a,scale:i}=r,o=Wt(e,n);if(o&&(a==="number"||i!=="auto"))return t.map(l=>l.value)}},Vc=M([ge,Qn,cn,Pe],ug),Qi=M([Kc],kc);M([Kc],qN);M([Kc,tO],Vy);M([un,Ji,Pe],oO);function dg(e,t){return e.id<t.id?-1:e.id>t.id?1:0}var es=(e,t)=>t,ts=(e,t,r)=>r,_O=M(Li,es,ts,(e,t,r)=>e.filter(n=>n.orientation===t).filter(n=>n.mirror===r).sort(dg)),MO=M(Ri,es,ts,(e,t,r)=>e.filter(n=>n.orientation===t).filter(n=>n.mirror===r).sort(dg)),fg=(e,t)=>({width:e.width,height:t.height}),TO=(e,t)=>{var r=typeof t.width=="number"?t.width:qn;return{width:r,height:e.height}},IO=M(Be,Xt,fg),DO=(e,t,r)=>{switch(t){case"top":return e.top;case"bottom":return r-e.bottom;default:return 0}},LO=(e,t,r)=>{switch(t){case"left":return e.left;case"right":return r-e.right;default:return 0}},RO=M(Gt,Be,_O,es,ts,(e,t,r,n,a)=>{var i={},o;return r.forEach(l=>{var c=fg(t,l);o==null&&(o=DO(t,n,e));var d=n==="top"&&!a||n==="bottom"&&a;i[l.id]=o-Number(d)*c.height,o+=(d?-1:1)*c.height}),i}),$O=M(Ht,Be,MO,es,ts,(e,t,r,n,a)=>{var i={},o;return r.forEach(l=>{var c=TO(t,l);o==null&&(o=LO(t,n,e));var d=n==="left"&&!a||n==="right"&&a;i[l.id]=o-Number(d)*c.width,o+=(d?-1:1)*c.width}),i}),BO=(e,t)=>{var r=Xt(e,t);if(r!=null)return RO(e,r.orientation,r.mirror)},FO=M([Be,Xt,BO,(e,t)=>t],(e,t,r,n)=>{if(t!=null){var a=r?.[n];return a==null?{x:e.left,y:0}:{x:e.left,y:a}}}),zO=(e,t)=>{var r=Yt(e,t);if(r!=null)return $O(e,r.orientation,r.mirror)},KO=M([Be,Yt,zO,(e,t)=>t],(e,t,r,n)=>{if(t!=null){var a=r?.[n];return a==null?{x:0,y:e.top}:{x:a,y:e.top}}}),VO=M(Be,Yt,(e,t)=>{var r=typeof t.width=="number"?t.width:qn;return{width:r,height:e.height}}),mg=(e,t,r,n)=>{if(r!=null){var{allowDuplicatedCategory:a,type:i,dataKey:o}=r,l=Wt(e,n),c=t.map(u=>u.value),d=c.filter(u=>u!=null);if(o&&l&&i==="category"&&a&&Wh(d))return c}},Uc=M([ge,Qn,Oe,Pe],mg),cm=M([ge,YN,lr,Qi,Uc,Vc,ea,Fc,Pe],(e,t,r,n,a,i,o,l,c)=>{if(t!=null){var d=Wt(e,c);return{angle:t.angle,interval:t.interval,minTickGap:t.minTickGap,orientation:t.orientation,tick:t.tick,tickCount:t.tickCount,tickFormatter:t.tickFormatter,ticks:t.ticks,type:t.type,unit:t.unit,axisType:c,categoricalDomain:i,duplicateDomain:a,isCategorical:d,niceTicks:l,range:o,realScaleType:r,scale:n}}}),UO=(e,t,r,n,a,i,o,l,c)=>{if(!(t==null||n==null)){var d=Wt(e,c),{type:u,ticks:m,tickCount:h}=t,v=r==="scaleBand"&&typeof n.bandwidth=="function"?n.bandwidth()/2:2,y=u==="category"&&n.bandwidth?n.bandwidth()/v:0;y=c==="angleAxis"&&i!=null&&i.length>=2?He(i[0]-i[1])*2*y:y;var g=m||a;return g?g.map((p,b)=>{var j=o?o.indexOf(p):p,x=n.map(j);return ue(x)?{index:b,coordinate:x+y,value:p,offset:y}:null}).filter(tt):d&&l?l.map((p,b)=>{var j=n.map(p);return ue(j)?{coordinate:j+y,value:p,index:b,offset:y}:null}).filter(tt):n.ticks?n.ticks(h).map((p,b)=>{var j=n.map(p);return ue(j)?{coordinate:j+y,value:p,index:b,offset:y}:null}).filter(tt):n.domain().map((p,b)=>{var j=n.map(p);return ue(j)?{coordinate:j+y,value:o?o[p]:p,index:b,offset:y}:null}).filter(tt)}},vg=M([ge,cn,lr,Qi,Fc,ea,Uc,Vc,Pe],UO),qO=(e,t,r,n,a,i,o)=>{if(!(t==null||r==null||n==null||n[0]===n[1])){var l=Wt(e,o),{tickCount:c}=t,d=0;return d=o==="angleAxis"&&n?.length>=2?He(n[0]-n[1])*2*d:d,l&&i?i.map((u,m)=>{var h=r.map(u);return ue(h)?{coordinate:h+d,value:u,index:m,offset:d}:null}).filter(tt):r.ticks?r.ticks(c).map((u,m)=>{var h=r.map(u);return ue(h)?{coordinate:h+d,value:u,index:m,offset:d}:null}).filter(tt):r.domain().map((u,m)=>{var h=r.map(u);return ue(h)?{coordinate:h+d,value:a?a[u]:u,index:m,offset:d}:null}).filter(tt)}},hg=M([ge,cn,Qi,ea,Uc,Vc,Pe],qO),pg=M(Oe,Qi,(e,t)=>{if(!(e==null||t==null))return ti(ti({},e),{},{scale:t})}),WO=M([Oe,lr,$c,cg],Pc),HO=M([WO],kc);M((e,t,r)=>Sc(e,r),HO,(e,t)=>{if(!(e==null||t==null))return ti(ti({},e),{},{scale:t})});var GO=M([ge,Li,Ri],(e,t,r)=>{switch(e){case"horizontal":return t.some(n=>n.reversed)?"right-to-left":"left-to-right";case"vertical":return r.some(n=>n.reversed)?"bottom-to-top":"top-to-bottom";case"centric":case"radial":return"left-to-right";default:return}}),XO=(e,t,r)=>{var n;return(n=e.renderedTicks[t])===null||n===void 0?void 0:n[r]};M([XO],e=>{if(!(!e||e.length===0))return t=>{var r,n=1/0,a=e[0];for(var i of e){var o=Math.abs(i.coordinate-t);o<n&&(n=o,a=i)}return(r=a)===null||r===void 0?void 0:r.value}});var yg=e=>e.options.defaultTooltipEventType,gg=e=>e.options.validateTooltipEventTypes;function bg(e,t,r){if(e==null)return t;var n=e?"axis":"item";return r==null?t:r.includes(n)?n:t}function ta(e,t){var r=yg(e),n=gg(e);return bg(t,r,n)}function YO(e){return Y(t=>ta(t,e))}var xg=(e,t)=>{var r,n=Number(t);if(!(Vt(n)||t==null))return n>=0?e==null||(r=e[n])===null||r===void 0?void 0:r.value:void 0},ZO=e=>e.tooltip.settings,rr={active:!1,index:null,dataKey:void 0,graphicalItemId:void 0,coordinate:void 0},JO={itemInteraction:{click:rr,hover:rr},axisInteraction:{click:rr,hover:rr},keyboardInteraction:rr,syncInteraction:{active:!1,index:null,dataKey:void 0,label:void 0,coordinate:void 0,sourceViewBox:void 0,graphicalItemId:void 0},tooltipItemPayloads:[],settings:{shared:void 0,trigger:"hover",axisId:0,active:!1,defaultIndex:void 0}},jg=Xe({name:"tooltip",initialState:JO,reducers:{addTooltipEntrySettings:{reducer(e,t){e.tooltipItemPayloads.push(t.payload)},prepare:xe()},replaceTooltipEntrySettings:{reducer(e,t){var{prev:r,next:n}=t.payload,a=pt(e).tooltipItemPayloads.indexOf(r);a>-1&&(e.tooltipItemPayloads[a]=n)},prepare:xe()},removeTooltipEntrySettings:{reducer(e,t){var r=pt(e).tooltipItemPayloads.indexOf(t.payload);r>-1&&e.tooltipItemPayloads.splice(r,1)},prepare:xe()},setTooltipSettingsState(e,t){e.settings=t.payload},setActiveMouseOverItemIndex(e,t){e.syncInteraction.active=!1,e.syncInteraction.sourceViewBox=void 0,e.keyboardInteraction.active=!1,e.itemInteraction.hover.active=!0,e.itemInteraction.hover.index=t.payload.activeIndex,e.itemInteraction.hover.dataKey=t.payload.activeDataKey,e.itemInteraction.hover.graphicalItemId=t.payload.activeGraphicalItemId,e.itemInteraction.hover.coordinate=t.payload.activeCoordinate},mouseLeaveChart(e){e.itemInteraction.hover.active=!1,e.axisInteraction.hover.active=!1},mouseLeaveItem(e){e.itemInteraction.hover.active=!1},setActiveClickItemIndex(e,t){e.syncInteraction.active=!1,e.syncInteraction.sourceViewBox=void 0,e.itemInteraction.click.active=!0,e.keyboardInteraction.active=!1,e.itemInteraction.click.index=t.payload.activeIndex,e.itemInteraction.click.dataKey=t.payload.activeDataKey,e.itemInteraction.click.graphicalItemId=t.payload.activeGraphicalItemId,e.itemInteraction.click.coordinate=t.payload.activeCoordinate},setMouseOverAxisIndex(e,t){e.syncInteraction.active=!1,e.syncInteraction.sourceViewBox=void 0,e.axisInteraction.hover.active=!0,e.keyboardInteraction.active=!1,e.axisInteraction.hover.index=t.payload.activeIndex,e.axisInteraction.hover.dataKey=t.payload.activeDataKey,e.axisInteraction.hover.coordinate=t.payload.activeCoordinate},setMouseClickAxisIndex(e,t){e.syncInteraction.active=!1,e.syncInteraction.sourceViewBox=void 0,e.keyboardInteraction.active=!1,e.axisInteraction.click.active=!0,e.axisInteraction.click.index=t.payload.activeIndex,e.axisInteraction.click.dataKey=t.payload.activeDataKey,e.axisInteraction.click.coordinate=t.payload.activeCoordinate},setSyncInteraction(e,t){e.syncInteraction=t.payload},setKeyboardInteraction(e,t){e.keyboardInteraction.active=t.payload.active,e.keyboardInteraction.index=t.payload.activeIndex,e.keyboardInteraction.coordinate=t.payload.activeCoordinate}}}),{addTooltipEntrySettings:QO,replaceTooltipEntrySettings:eA,removeTooltipEntrySettings:tA,setTooltipSettingsState:rA,setActiveMouseOverItemIndex:wg,mouseLeaveItem:nA,mouseLeaveChart:Cg,setActiveClickItemIndex:aA,setMouseOverAxisIndex:kg,setMouseClickAxisIndex:iA,setSyncInteraction:kn,setKeyboardInteraction:ni}=jg.actions,sA=jg.reducer;function um(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),r.push.apply(r,n)}return r}function ma(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?um(Object(r),!0).forEach(function(n){oA(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):um(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function oA(e,t,r){return(t=lA(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function lA(e){var t=cA(e,"string");return typeof t=="symbol"?t:t+""}function cA(e,t){if(typeof e!="object"||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var n=r.call(e,t);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function uA(e,t,r){return t==="axis"?r==="click"?e.axisInteraction.click:e.axisInteraction.hover:r==="click"?e.itemInteraction.click:e.itemInteraction.hover}function dA(e){return e.index!=null}var Pg=(e,t,r,n)=>{if(t==null)return rr;var a=uA(e,t,r);if(a==null)return rr;if(a.active)return a;if(e.keyboardInteraction.active)return e.keyboardInteraction;if(e.syncInteraction.active&&e.syncInteraction.index!=null)return e.syncInteraction;var i=e.settings.active===!0;if(dA(a)){if(i)return ma(ma({},a),{},{active:!0})}else if(n!=null)return{active:!0,coordinate:void 0,dataKey:void 0,index:n,graphicalItemId:void 0};return ma(ma({},rr),{},{coordinate:a.coordinate})};function fA(e){if(typeof e=="number")return Number.isFinite(e)?e:void 0;if(e instanceof Date){var t=e.valueOf();return Number.isFinite(t)?t:void 0}var r=Number(e);return Number.isFinite(r)?r:void 0}function mA(e,t){var r=fA(e),n=t[0],a=t[1];if(r===void 0)return!1;var i=Math.min(n,a),o=Math.max(n,a);return r>=i&&r<=o}function vA(e,t,r){if(r==null||t==null)return!0;var n=he(e,t);return n==null||!_t(r)?!0:mA(n,r)}var Nn=(e,t,r,n)=>{var a=e?.index;if(a==null)return null;var i=Number(a);if(!ue(i))return a;var o=0,l=1/0;t.length>0&&(l=t.length-1);var c=Math.max(o,Math.min(i,l)),d=t[c];return d==null||vA(d,r,n)?String(c):null},Sg=(e,t,r,n,a,i,o)=>{if(i!=null){var l=o[0],c=l?.getPosition(i);if(c!=null)return c;var d=a?.[Number(i)];if(d)switch(r){case"horizontal":return{x:d.coordinate,y:(n.top+t)/2};default:return{x:(n.left+e)/2,y:d.coordinate}}}},Ng=(e,t,r,n)=>{if(t==="axis")return e.tooltipItemPayloads;if(e.tooltipItemPayloads.length===0)return[];var a;if(r==="hover"?a=e.itemInteraction.hover.graphicalItemId:a=e.itemInteraction.click.graphicalItemId,e.syncInteraction.active&&a==null)return e.tooltipItemPayloads;if(a==null&&(n!=null||e.keyboardInteraction.active)){var i=e.tooltipItemPayloads[0];return i!=null?[i]:[]}return e.tooltipItemPayloads.filter(o=>{var l;return((l=o.settings)===null||l===void 0?void 0:l.graphicalItemId)===a})},Og=e=>e.options.tooltipPayloadSearcher,fn=e=>e.tooltip;function dm(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),r.push.apply(r,n)}return r}function fm(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?dm(Object(r),!0).forEach(function(n){hA(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):dm(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function hA(e,t,r){return(t=pA(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function pA(e){var t=yA(e,"string");return typeof t=="symbol"?t:t+""}function yA(e,t){if(typeof e!="object"||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var n=r.call(e,t);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function gA(e){if(typeof e=="string"||typeof e=="number")return e}function bA(e){if(typeof e=="string"||typeof e=="number"||typeof e=="boolean")return e}function xA(e){if(typeof e=="string"||typeof e=="number")return e;if(typeof e=="function")return t=>e(t)}function mm(e){if(typeof e=="string")return e}function jA(e){if(!(e==null||typeof e!="object")){var t="name"in e?gA(e.name):void 0,r="unit"in e?bA(e.unit):void 0,n="dataKey"in e?xA(e.dataKey):void 0,a="payload"in e?e.payload:void 0,i="color"in e?mm(e.color):void 0,o="fill"in e?mm(e.fill):void 0;return{name:t,unit:r,dataKey:n,payload:a,color:i,fill:o}}}function wA(e,t){return e??t}var Ag=(e,t,r,n,a,i,o)=>{if(!(t==null||i==null)){var{chartData:l,computedData:c,dataStartIndex:d,dataEndIndex:u}=r,m=[];return e.reduce((h,v)=>{var y,{dataDefinedOnItem:g,settings:p}=v,b=wA(g,l),j=Array.isArray(b)?zp(b,d,u):b,x=(y=p?.dataKey)!==null&&y!==void 0?y:n,C=p?.nameKey,w;if(n&&Array.isArray(j)&&!Array.isArray(j[0])&&o==="axis"?w=Hh(j,n,a):w=i(j,t,c,C),Array.isArray(w))w.forEach(O=>{var k,N,S=jA(O),A=S?.name,_=S?.dataKey,I=S?.payload,D=fm(fm({},p),{},{name:A,unit:S?.unit,color:(k=S?.color)!==null&&k!==void 0?k:p?.color,fill:(N=S?.fill)!==null&&N!==void 0?N:p?.fill});h.push(Hd({tooltipEntrySettings:D,dataKey:_,payload:I,value:he(I,_),name:A==null?void 0:String(A)}))});else{var P;h.push(Hd({tooltipEntrySettings:p,dataKey:x,payload:w,value:he(w,x),name:(P=he(w,C))!==null&&P!==void 0?P:p?.name}))}return h},m)}},qc=M([Re,Wy,yc],Ky),CA=M([e=>e.graphicalItems.cartesianItems,e=>e.graphicalItems.polarItems],(e,t)=>[...e,...t]),kA=M([Fe,ln],Nc),Dr=M([CA,Re,kA],Oc,{memoizeOptions:{resultEqualityCheck:Zi}}),PA=M([Dr],e=>e.filter(Cc)),Eg=M([Dr],Ac,{memoizeOptions:{resultEqualityCheck:Zi}}),SA=M([Dr],e=>e.some(t=>!t.data)),Mr=M([Eg,Dt],Ec),NA=M([PA,Dt,Re],By),Wc=M([Mr,Re,Dr,Dt,SA,Eg],Jy),_g=M([Re],Mc),OA=M([Re],e=>e.allowDataOverflow),Mg=M([_g,OA],xy),AA=M([Dr],e=>e.filter(Cc)),EA=M([NA,AA,Zn,_y],eg),_A=M([EA,Dt,Fe,Mg],tg),MA=M([Dr],Xy),TA=M([Mr,Re,MA,Ji,Fe,NN],Dc,{memoizeOptions:{resultEqualityCheck:Yi}}),IA=M([rg,Fe,ln],dn),DA=M([IA,Fe],ig),LA=M([ng,Fe,ln],dn),RA=M([LA,Fe],sg),$A=M([ag,Fe,ln],dn),BA=M([$A,Fe],og),FA=M([DA,BA,RA],ri),zA=M([Re,_g,Mg,_A,TA,FA,ge,Fe],Lc),tn=M([Re,ge,Mr,Wc,Zn,Fe,zA],Rc),KA=M([tn,Re,qc],Bc),VA=M([Re,tn,KA,Fe],zc),Tg=e=>{var t=Fe(e),r=ln(e),n=!1;return ea(e,t,r,n)},Ig=M([Re,Tg],Hi),UA=M([Re,qc,VA,Ig],Pc),Dg=M([UA],kc),qA=M([ge,Wc,Re,Fe],mg),WA=M([ge,Wc,Re,Fe],ug),HA=(e,t,r,n,a,i,o,l)=>{if(t){var{type:c}=t,d=Wt(e,l);if(n){var u=r==="scaleBand"&&n.bandwidth?n.bandwidth()/2:2,m=c==="category"&&n.bandwidth?n.bandwidth()/u:0;return m=l==="angleAxis"&&a!=null&&a?.length>=2?He(a[0]-a[1])*2*m:m,d&&o?o.map((h,v)=>{var y=n.map(h);return ue(y)?{coordinate:y+m,value:h,index:v,offset:m}:null}).filter(tt):n.domain().map((h,v)=>{var y=n.map(h);return ue(y)?{coordinate:y+m,value:i?i[h]:h,index:v,offset:m}:null}).filter(tt)}}},Zt=M([ge,Re,qc,Dg,Tg,qA,WA,Fe],HA),Hc=M([yg,gg,ZO],(e,t,r)=>bg(r.shared,e,t)),Lg=e=>e.tooltip.settings.trigger,Gc=e=>e.tooltip.settings.defaultIndex,ra=M([fn,Hc,Lg,Gc],Pg),rn=M([ra,Mr,en,tn],Nn),Rg=M([Zt,rn],xg),$g=M([ra],e=>{if(e)return e.dataKey}),Bg=M([ra],e=>{if(e)return e.graphicalItemId}),Fg=M([fn,Hc,Lg,Gc],Ng),GA=M([Ht,Gt,ge,Be,Zt,Gc,Fg],Sg),XA=M([ra,GA],(e,t)=>e!=null&&e.coordinate?e.coordinate:t),YA=M([ra],e=>{var t;return(t=e?.active)!==null&&t!==void 0?t:!1}),ZA=M([Fg,rn,Dt,en,Rg,Og,Hc],Ag),JA=M([ZA],e=>{if(e!=null){var t=e.map(r=>r.payload).filter(r=>r!=null);return Array.from(new Set(t))}});function vm(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),r.push.apply(r,n)}return r}function hm(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?vm(Object(r),!0).forEach(function(n){QA(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):vm(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function QA(e,t,r){return(t=eE(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function eE(e){var t=tE(e,"string");return typeof t=="symbol"?t:t+""}function tE(e,t){if(typeof e!="object"||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var n=r.call(e,t);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}var rE=()=>Y(Re),nE=()=>{var e=rE(),t=Y(Zt),r=Y(Dg);return Ua(!e||!r?void 0:hm(hm({},e),{},{scale:r}),t)};function pm(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),r.push.apply(r,n)}return r}function $r(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?pm(Object(r),!0).forEach(function(n){aE(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):pm(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function aE(e,t,r){return(t=iE(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function iE(e){var t=sE(e,"string");return typeof t=="symbol"?t:t+""}function sE(e,t){if(typeof e!="object"||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var n=r.call(e,t);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}var oE=(e,t,r,n)=>{var a=t.find(i=>i&&i.index===r);if(a){if(e==="horizontal")return{x:a.coordinate,y:n.relativeY};if(e==="vertical")return{x:n.relativeX,y:a.coordinate}}return{x:0,y:0}},lE=(e,t,r,n)=>{var a=t.find(d=>d&&d.index===r);if(a){if(e==="centric"){var i=a.coordinate,{radius:o}=n;return $r($r($r({},n),Ee(n.cx,n.cy,o,i)),{},{angle:i,radius:o})}var l=a.coordinate,{angle:c}=n;return $r($r($r({},n),Ee(n.cx,n.cy,l,c)),{},{angle:c,radius:l})}return{angle:0,clockWise:!1,cx:0,cy:0,endAngle:0,innerRadius:0,outerRadius:0,radius:0,startAngle:0,x:0,y:0}};function cE(e,t){var{relativeX:r,relativeY:n}=e;return r>=t.left&&r<=t.left+t.width&&n>=t.top&&n<=t.top+t.height}var zg=(e,t,r,n,a)=>{var i,o=(i=t?.length)!==null&&i!==void 0?i:0;if(o<=1||e==null)return 0;if(n==="angleAxis"&&a!=null&&Math.abs(Math.abs(a[1]-a[0])-360)<=1e-6)for(var l=0;l<o;l++){var c,d,u,m,h,v=l>0?(c=r[l-1])===null||c===void 0?void 0:c.coordinate:(d=r[o-1])===null||d===void 0?void 0:d.coordinate,y=(u=r[l])===null||u===void 0?void 0:u.coordinate,g=l>=o-1?(m=r[0])===null||m===void 0?void 0:m.coordinate:(h=r[l+1])===null||h===void 0?void 0:h.coordinate,p=void 0;if(!(v==null||y==null||g==null))if(He(y-v)!==He(g-y)){var b=[];if(He(g-y)===He(a[1]-a[0])){p=g;var j=y+a[1]-a[0];b[0]=Math.min(j,(j+v)/2),b[1]=Math.max(j,(j+v)/2)}else{p=v;var x=g+a[1]-a[0];b[0]=Math.min(y,(x+y)/2),b[1]=Math.max(y,(x+y)/2)}var C=[Math.min(y,(p+y)/2),Math.max(y,(p+y)/2)];if(e>C[0]&&e<=C[1]||e>=b[0]&&e<=b[1]){var w;return(w=r[l])===null||w===void 0?void 0:w.index}}else{var P=Math.min(v,g),O=Math.max(v,g);if(e>(P+y)/2&&e<=(O+y)/2){var k;return(k=r[l])===null||k===void 0?void 0:k.index}}}else if(t)for(var N=0;N<o;N++){var S=t[N];if(S!=null){var A=t[N+1],_=t[N-1];if(N===0&&A!=null&&e<=(S.coordinate+A.coordinate)/2||N===o-1&&_!=null&&e>(S.coordinate+_.coordinate)/2||N>0&&N<o-1&&_!=null&&A!=null&&e>(S.coordinate+_.coordinate)/2&&e<=(S.coordinate+A.coordinate)/2)return S.index}}return-1},uE=()=>Y(yc),Xc=(e,t)=>t,Kg=(e,t,r)=>r,Yc=(e,t,r,n)=>n,dE=M(Zt,e=>Pi(e,t=>t.coordinate)),Zc=M([fn,Xc,Kg,Yc],Pg),Jc=M([Zc,Mr,en,tn],Nn),fE=(e,t,r)=>{if(t!=null){var n=fn(e);return t==="axis"?r==="hover"?n.axisInteraction.hover.dataKey:n.axisInteraction.click.dataKey:r==="hover"?n.itemInteraction.hover.dataKey:n.itemInteraction.click.dataKey}},Vg=M([fn,Xc,Kg,Yc],Ng),ai=M([Ht,Gt,ge,Be,Zt,Yc,Vg],Sg),mE=M([Zc,ai],(e,t)=>{var r;return(r=e.coordinate)!==null&&r!==void 0?r:t}),Ug=M([Zt,Jc],xg),vE=M([Vg,Jc,Dt,en,Ug,Og,Xc],Ag),hE=M([Zc,Jc],(e,t)=>({isActive:e.active&&t!=null,activeIndex:t})),pE=(e,t,r,n,a,i,o)=>{if(!(!e||!r||!n||!a)&&cE(e,o)){var l=Kk(e,t),c=zg(l,i,a,r,n),d=oE(t,a,c,e);return{activeIndex:String(c),activeCoordinate:d}}},yE=(e,t,r,n,a,i,o)=>{if(!(!e||!n||!a||!i||!r)){var l=hN(e,r);if(l){var c=Vk(l,t),d=zg(c,o,i,n,a),u=lE(t,i,d,l);return{activeIndex:String(d),activeCoordinate:u}}}},gE=(e,t,r,n,a,i,o,l)=>{if(!(!e||!t||!n||!a||!i))return t==="horizontal"||t==="vertical"?pE(e,t,n,a,i,o,l):yE(e,t,r,n,a,i,o)},bE=M(e=>e.zIndex.zIndexMap,(e,t)=>t,(e,t,r)=>r,(e,t,r)=>{if(t!=null){var n=e[t];if(n!=null)return r?n.panoramaElement:n.element}}),xE=M(e=>e.zIndex.zIndexMap,e=>{var t=Object.keys(e).map(n=>parseInt(n,10)).concat(Object.values(Ve)),r=Array.from(new Set(t));return r.sort((n,a)=>n-a)},{memoizeOptions:{resultEqualityCheck:FN}});function ym(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),r.push.apply(r,n)}return r}function gm(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?ym(Object(r),!0).forEach(function(n){jE(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):ym(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function jE(e,t,r){return(t=wE(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function wE(e){var t=CE(e,"string");return typeof t=="symbol"?t:t+""}function CE(e,t){if(typeof e!="object"||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var n=r.call(e,t);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}var kE={},PE={zIndexMap:Object.values(Ve).reduce((e,t)=>gm(gm({},e),{},{[t]:{element:void 0,panoramaElement:void 0,consumers:0}}),kE)},SE=new Set(Object.values(Ve));function NE(e){return SE.has(e)}var qg=Xe({name:"zIndex",initialState:PE,reducers:{registerZIndexPortal:{reducer:(e,t)=>{var{zIndex:r}=t.payload;e.zIndexMap[r]?e.zIndexMap[r].consumers+=1:e.zIndexMap[r]={consumers:1,element:void 0,panoramaElement:void 0}},prepare:xe()},unregisterZIndexPortal:{reducer:(e,t)=>{var{zIndex:r}=t.payload;e.zIndexMap[r]&&(e.zIndexMap[r].consumers-=1,e.zIndexMap[r].consumers<=0&&!NE(r)&&delete e.zIndexMap[r])},prepare:xe()},registerZIndexPortalElement:{reducer:(e,t)=>{var{zIndex:r,element:n,isPanorama:a}=t.payload;e.zIndexMap[r]?a?e.zIndexMap[r].panoramaElement=n:e.zIndexMap[r].element=n:e.zIndexMap[r]={consumers:0,element:a?void 0:n,panoramaElement:a?n:void 0}},prepare:xe()},unregisterZIndexPortalElement:{reducer:(e,t)=>{var{zIndex:r}=t.payload;e.zIndexMap[r]&&(t.payload.isPanorama?e.zIndexMap[r].panoramaElement=void 0:e.zIndexMap[r].element=void 0)},prepare:xe()}}}),{registerZIndexPortal:OE,unregisterZIndexPortal:po,registerZIndexPortalElement:AE,unregisterZIndexPortalElement:EE}=qg.actions,_E=qg.reducer;function Ct(e){var{zIndex:t,children:r}=e,n=iP(),a=n&&t!==void 0&&t!==0,i=rt(),o=f.useRef(void 0),l=f.useRef(new Set),c=ve(),d=Y(m=>bE(m,t,i));if(f.useLayoutEffect(()=>{if(!a){var m=l.current;m.forEach(v=>{c(po({zIndex:v}))}),m.clear(),o.current=void 0;return}if(l.current.has(t)||(c(OE({zIndex:t})),l.current.add(t)),d){o.current=d;var h=l.current;h.forEach(v=>{v!==t&&(c(po({zIndex:v})),h.delete(v))})}},[c,t,a,d]),f.useLayoutEffect(()=>{var m=l.current;return()=>{m.forEach(h=>{c(po({zIndex:h}))}),m.clear()}},[c]),!a)return r;var u=d??o.current;return u?Al.createPortal(r,u):null}function ml(){return ml=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)({}).hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},ml.apply(null,arguments)}function bm(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),r.push.apply(r,n)}return r}function va(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?bm(Object(r),!0).forEach(function(n){ME(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):bm(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function ME(e,t,r){return(t=TE(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function TE(e){var t=IE(e,"string");return typeof t=="symbol"?t:t+""}function IE(e,t){if(typeof e!="object"||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var n=r.call(e,t);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function DE(e){var{cursor:t,cursorComp:r,cursorProps:n}=e;return f.isValidElement(t)?f.cloneElement(t,n):f.createElement(r,n)}function LE(e){var t,{coordinate:r,payload:n,index:a,offset:i,tooltipAxisBandSize:o,layout:l,cursor:c,tooltipEventType:d,chartName:u}=e,m=r,h=n,v=a;if(!c||!m||u!=="ScatterChart"&&d!=="axis")return null;var y,g,p;if(u==="ScatterChart")y=m,g=ES,p=Ve.cursorLine;else if(u==="BarChart")y=_S(l,m,i,o),g=vy,p=Ve.cursorRectangle;else if(l==="radial"&&Xh(m)){var{cx:b,cy:j,radius:x,startAngle:C,endAngle:w}=py(m);y={cx:b,cy:j,startAngle:C,endAngle:w,innerRadius:x,outerRadius:x},g=gy,p=Ve.cursorLine}else y={points:bN(l,m,i)},g=mc,p=Ve.cursorLine;var P=typeof c=="object"&&"className"in c?c.className:void 0,O=va(va(va(va({stroke:"#ccc",pointerEvents:"none"},i),y),Xr(c)),{},{payload:h,payloadIndex:v,className:de("recharts-tooltip-cursor",P)});return f.createElement(Ct,{zIndex:(t=e.zIndex)!==null&&t!==void 0?t:p},f.createElement(DE,{cursor:c,cursorComp:g,cursorProps:O}))}function RE(e){var t=nE(),r=Xp(),n=an(),a=uE();return t==null||r==null||n==null||a==null?null:f.createElement(LE,ml({},e,{offset:r,layout:n,tooltipAxisBandSize:t,chartName:a}))}var Wg=f.createContext(null),$E=()=>f.useContext(Wg),yo={exports:{}},xm;function BE(){return xm||(xm=1,(function(e){var t=Object.prototype.hasOwnProperty,r="~";function n(){}Object.create&&(n.prototype=Object.create(null),new n().__proto__||(r=!1));function a(c,d,u){this.fn=c,this.context=d,this.once=u||!1}function i(c,d,u,m,h){if(typeof u!="function")throw new TypeError("The listener must be a function");var v=new a(u,m||c,h),y=r?r+d:d;return c._events[y]?c._events[y].fn?c._events[y]=[c._events[y],v]:c._events[y].push(v):(c._events[y]=v,c._eventsCount++),c}function o(c,d){--c._eventsCount===0?c._events=new n:delete c._events[d]}function l(){this._events=new n,this._eventsCount=0}l.prototype.eventNames=function(){var d=[],u,m;if(this._eventsCount===0)return d;for(m in u=this._events)t.call(u,m)&&d.push(r?m.slice(1):m);return Object.getOwnPropertySymbols?d.concat(Object.getOwnPropertySymbols(u)):d},l.prototype.listeners=function(d){var u=r?r+d:d,m=this._events[u];if(!m)return[];if(m.fn)return[m.fn];for(var h=0,v=m.length,y=new Array(v);h<v;h++)y[h]=m[h].fn;return y},l.prototype.listenerCount=function(d){var u=r?r+d:d,m=this._events[u];return m?m.fn?1:m.length:0},l.prototype.emit=function(d,u,m,h,v,y){var g=r?r+d:d;if(!this._events[g])return!1;var p=this._events[g],b=arguments.length,j,x;if(p.fn){switch(p.once&&this.removeListener(d,p.fn,void 0,!0),b){case 1:return p.fn.call(p.context),!0;case 2:return p.fn.call(p.context,u),!0;case 3:return p.fn.call(p.context,u,m),!0;case 4:return p.fn.call(p.context,u,m,h),!0;case 5:return p.fn.call(p.context,u,m,h,v),!0;case 6:return p.fn.call(p.context,u,m,h,v,y),!0}for(x=1,j=new Array(b-1);x<b;x++)j[x-1]=arguments[x];p.fn.apply(p.context,j)}else{var C=p.length,w;for(x=0;x<C;x++)switch(p[x].once&&this.removeListener(d,p[x].fn,void 0,!0),b){case 1:p[x].fn.call(p[x].context);break;case 2:p[x].fn.call(p[x].context,u);break;case 3:p[x].fn.call(p[x].context,u,m);break;case 4:p[x].fn.call(p[x].context,u,m,h);break;default:if(!j)for(w=1,j=new Array(b-1);w<b;w++)j[w-1]=arguments[w];p[x].fn.apply(p[x].context,j)}}return!0},l.prototype.on=function(d,u,m){return i(this,d,u,m,!1)},l.prototype.once=function(d,u,m){return i(this,d,u,m,!0)},l.prototype.removeListener=function(d,u,m,h){var v=r?r+d:d;if(!this._events[v])return this;if(!u)return o(this,v),this;var y=this._events[v];if(y.fn)y.fn===u&&(!h||y.once)&&(!m||y.context===m)&&o(this,v);else{for(var g=0,p=[],b=y.length;g<b;g++)(y[g].fn!==u||h&&!y[g].once||m&&y[g].context!==m)&&p.push(y[g]);p.length?this._events[v]=p.length===1?p[0]:p:o(this,v)}return this},l.prototype.removeAllListeners=function(d){var u;return d?(u=r?r+d:d,this._events[u]&&o(this,u)):(this._events=new n,this._eventsCount=0),this},l.prototype.off=l.prototype.removeListener,l.prototype.addListener=l.prototype.on,l.prefixed=r,l.EventEmitter=l,e.exports=l})(yo)),yo.exports}var FE=BE();const zE=nn(FE);var $n=new zE,vl="recharts.syncEvent.tooltip",jm="recharts.syncEvent.brush",Hg=(e,t)=>{if(t&&Array.isArray(e)){var r=Number.parseInt(t,10);if(!Vt(r))return e[r]}},KE={chartName:"",tooltipPayloadSearcher:()=>{},eventEmitter:void 0,defaultTooltipEventType:"axis"},Gg=Xe({name:"options",initialState:KE,reducers:{createEventEmitter:e=>{e.eventEmitter==null&&(e.eventEmitter=Symbol("rechartsEventEmitter"))}}}),VE=Gg.reducer,{createEventEmitter:UE}=Gg.actions;function qE(e){return e.tooltip.syncInteraction}var WE={chartData:void 0,computedData:void 0,dataStartIndex:0,dataEndIndex:0},Xg=Xe({name:"chartData",initialState:WE,reducers:{setChartData(e,t){if(e.chartData=t.payload,t.payload==null){e.dataStartIndex=0,e.dataEndIndex=0;return}t.payload.length>0&&e.dataEndIndex!==t.payload.length-1&&(e.dataEndIndex=t.payload.length-1)},setComputedData(e,t){e.computedData=t.payload},setDataStartEndIndexes(e,t){var{startIndex:r,endIndex:n}=t.payload;r!=null&&(e.dataStartIndex=r),n!=null&&(e.dataEndIndex=n)}}}),{setChartData:wm,setDataStartEndIndexes:HE,setComputedData:j2}=Xg.actions,GE=Xg.reducer,XE=["x","y"];function Cm(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),r.push.apply(r,n)}return r}function Br(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?Cm(Object(r),!0).forEach(function(n){YE(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):Cm(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function YE(e,t,r){return(t=ZE(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function ZE(e){var t=JE(e,"string");return typeof t=="symbol"?t:t+""}function JE(e,t){if(typeof e!="object"||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var n=r.call(e,t);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function QE(e,t){if(e==null)return{};var r,n,a=e_(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)===-1&&{}.propertyIsEnumerable.call(e,r)&&(a[r]=e[r])}return a}function e_(e,t){if(e==null)return{};var r={};for(var n in e)if({}.hasOwnProperty.call(e,n)){if(t.indexOf(n)!==-1)continue;r[n]=e[n]}return r}function t_(){var e=Y(gc),t=Y(bc),r=ve(),n=Y(My),a=Y(Zt),i=an(),o=Fi(),l=Y(c=>c.rootProps.className);f.useEffect(()=>{if(e==null)return Kn;var c=(d,u,m)=>{if(t!==m&&e===d){if(u.payload.active===!1){r(kn({active:!1,coordinate:void 0,dataKey:void 0,index:null,label:void 0,sourceViewBox:void 0,graphicalItemId:void 0}));return}if(n==="index"){var h;if(o&&u!==null&&u!==void 0&&(h=u.payload)!==null&&h!==void 0&&h.coordinate&&u.payload.sourceViewBox){var v=u.payload.coordinate,{x:y,y:g}=v,p=QE(v,XE),{x:b,y:j,width:x,height:C}=u.payload.sourceViewBox,w=Br(Br({},p),{},{x:o.x+(x?(y-b)/x:0)*o.width,y:o.y+(C?(g-j)/C:0)*o.height});r(Br(Br({},u),{},{payload:Br(Br({},u.payload),{},{coordinate:w})}))}else r(u);return}if(a!=null){var P;if(typeof n=="function"){var O={activeTooltipIndex:u.payload.index==null?void 0:Number(u.payload.index),isTooltipActive:u.payload.active,activeIndex:u.payload.index==null?void 0:Number(u.payload.index),activeLabel:u.payload.label,activeDataKey:u.payload.dataKey,activeCoordinate:u.payload.coordinate},k=n(a,O);P=a[k]}else n==="value"&&(P=a.find(V=>String(V.value)===u.payload.label));var{coordinate:N}=u.payload;if(N==null||o==null){r(kn({active:!1,coordinate:void 0,dataKey:void 0,index:null,label:void 0,sourceViewBox:void 0,graphicalItemId:void 0}));return}if(P==null){r(kn({active:!1,coordinate:void 0,dataKey:void 0,index:null,label:void 0,sourceViewBox:u.payload.sourceViewBox,graphicalItemId:void 0}));return}var{x:S,y:A}=N,_=Math.min(S,o.x+o.width),I=Math.min(A,o.y+o.height),D={x:i==="horizontal"?P.coordinate:_,y:i==="horizontal"?I:P.coordinate},F=kn({active:u.payload.active,coordinate:D,dataKey:u.payload.dataKey,index:String(P.index),label:u.payload.label,sourceViewBox:u.payload.sourceViewBox,graphicalItemId:u.payload.graphicalItemId});r(F)}}};return $n.on(vl,c),()=>{$n.off(vl,c)}},[l,r,t,e,n,a,i,o])}function r_(){var e=Y(gc),t=Y(bc),r=ve();f.useEffect(()=>{if(e==null)return Kn;var n=(a,i,o)=>{t!==o&&e===a&&r(HE(i))};return $n.on(jm,n),()=>{$n.off(jm,n)}},[r,t,e])}function n_(){var e=ve();f.useEffect(()=>{e(UE())},[e]),t_(),r_()}function a_(e,t,r,n,a,i){var o=Y(y=>fE(y,e,t)),l=Y(Bg),c=Y(bc),d=Y(gc),u=Y(My),m=Y(qE),h=m?.sourceViewBox!=null,v=Fi();f.useEffect(()=>{if(!h&&d!=null&&c!=null){var y=kn({active:i,coordinate:r,dataKey:o,index:a,label:typeof n=="number"?String(n):n,sourceViewBox:v,graphicalItemId:l});$n.emit(vl,d,y,c)}},[h,r,o,l,a,n,c,d,u,i,v])}function km(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),r.push.apply(r,n)}return r}function Pm(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?km(Object(r),!0).forEach(function(n){i_(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):km(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function i_(e,t,r){return(t=s_(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function s_(e){var t=o_(e,"string");return typeof t=="symbol"?t:t+""}function o_(e,t){if(typeof e!="object"||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var n=r.call(e,t);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function l_(e){return e.dataKey}function c_(e,t){return f.isValidElement(e)?f.cloneElement(e,t):typeof e=="function"?f.createElement(e,t):f.createElement(iS,t)}var Sm=[],u_={allowEscapeViewBox:{x:!1,y:!1},animationDuration:400,animationEasing:"ease",axisId:0,contentStyle:{},cursor:!0,filterNull:!0,includeHidden:!1,isAnimationActive:"auto",itemSorter:"name",itemStyle:{},labelStyle:{},offset:10,reverseDirection:{x:!1,y:!1},separator:" : ",trigger:"hover",useTranslate3d:!1,wrapperStyle:{}};function Yg(e){var t,r,n=Le(e,u_),{active:a,allowEscapeViewBox:i,animationDuration:o,animationEasing:l,content:c,filterNull:d,isAnimationActive:u,offset:m,payloadUniqBy:h,position:v,reverseDirection:y,useTranslate3d:g,wrapperStyle:p,cursor:b,shared:j,trigger:x,defaultIndex:C,portal:w,axisId:P}=n,O=ve(),k=typeof C=="number"?String(C):C;f.useEffect(()=>{O(rA({shared:j,trigger:x,axisId:P,active:a,defaultIndex:k}))},[O,j,x,P,a,k]);var N=Fi(),S=cy(),A=YO(j),{activeIndex:_,isActive:I}=(t=Y(re=>hE(re,A,x,k)))!==null&&t!==void 0?t:{},D=Y(re=>vE(re,A,x,k)),F=Y(re=>Ug(re,A,x,k)),V=Y(re=>mE(re,A,x,k)),U=D,te=$E(),q=(r=a??I)!==null&&r!==void 0?r:!1,[ee,L]=dp([U,q]),B=A==="axis"?F:void 0;a_(A,x,V,B,_,q);var X=w??te;if(X==null||N==null||A==null)return null;var Q=U??Sm;q||(Q=Sm),d&&Q.length&&(Q=sp(Q.filter(re=>re.value!=null&&(re.hide!==!0||n.includeHidden)),h,l_));var G=Q.length>0,ie=Pm(Pm({},n),{},{payload:Q,label:B,active:q,activeIndex:_,coordinate:V,accessibilityLayer:S}),se=f.createElement(pS,{allowEscapeViewBox:i,animationDuration:o,animationEasing:l,isAnimationActive:u,active:q,coordinate:V,hasPayload:G,offset:m,position:v,reverseDirection:y,useTranslate3d:g,viewBox:N,wrapperStyle:p,lastBoundingBox:ee,innerRef:L,hasPortalFromProps:!!w},c_(c,ie));return f.createElement(f.Fragment,null,Al.createPortal(se,X),q&&f.createElement(RE,{cursor:b,tooltipEventType:A,coordinate:V,payload:Q,index:_}))}var rs=e=>null;rs.displayName="Cell";function d_(e,t,r){return(t=f_(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function f_(e){var t=m_(e,"string");return typeof t=="symbol"?t:t+""}function m_(e,t){if(typeof e!="object"||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var n=r.call(e,t);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}class v_{constructor(t){d_(this,"cache",new Map),this.maxSize=t}get(t){var r=this.cache.get(t);return r!==void 0&&(this.cache.delete(t),this.cache.set(t,r)),r}set(t,r){if(this.cache.has(t))this.cache.delete(t);else if(this.cache.size>=this.maxSize){var n=this.cache.keys().next().value;n!=null&&this.cache.delete(n)}this.cache.set(t,r)}clear(){this.cache.clear()}size(){return this.cache.size}}function Nm(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),r.push.apply(r,n)}return r}function h_(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?Nm(Object(r),!0).forEach(function(n){p_(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):Nm(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function p_(e,t,r){return(t=y_(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function y_(e){var t=g_(e,"string");return typeof t=="symbol"?t:t+""}function g_(e,t){if(typeof e!="object"||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var n=r.call(e,t);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}var b_={cacheSize:2e3,enableCache:!0},Zg=h_({},b_),Om=new v_(Zg.cacheSize),x_={position:"absolute",top:"-20000px",left:0,padding:0,margin:0,border:"none",whiteSpace:"pre"},Am="recharts_measurement_span";function j_(e,t){var r=t.fontSize||"",n=t.fontFamily||"",a=t.fontWeight||"",i=t.fontStyle||"",o=t.letterSpacing||"",l=t.textTransform||"";return"".concat(e,"|").concat(r,"|").concat(n,"|").concat(a,"|").concat(i,"|").concat(o,"|").concat(l)}var Em=(e,t)=>{try{var r=document.getElementById(Am);r||(r=document.createElement("span"),r.setAttribute("id",Am),r.setAttribute("aria-hidden","true"),document.body.appendChild(r)),Object.assign(r.style,x_,t),r.textContent="".concat(e);var n=r.getBoundingClientRect();return{width:n.width,height:n.height}}catch{return{width:0,height:0}}},On=function(t){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};if(t==null||Xn.isSsr)return{width:0,height:0};if(!Zg.enableCache)return Em(t,r);var n=j_(t,r),a=Om.get(n);if(a)return a;var i=Em(t,r);return Om.set(n,i),i},Jg;function w_(e,t,r){return(t=C_(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function C_(e){var t=k_(e,"string");return typeof t=="symbol"?t:t+""}function k_(e,t){if(typeof e!="object"||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var n=r.call(e,t);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}var _m=/(-?\d+(?:\.\d+)?[a-zA-Z%]*)([*/])(-?\d+(?:\.\d+)?[a-zA-Z%]*)/,Mm=/(-?\d+(?:\.\d+)?[a-zA-Z%]*)([+-])(-?\d+(?:\.\d+)?[a-zA-Z%]*)/,P_=/^(px|cm|vh|vw|em|rem|%|mm|in|pt|pc|ex|ch|vmin|vmax|Q)$/,S_=/(-?\d+(?:\.\d+)?)([a-zA-Z%]+)?/,N_={cm:96/2.54,mm:96/25.4,pt:96/72,pc:96/6,in:96,Q:96/(2.54*40),px:1},O_=["cm","mm","pt","pc","in","Q","px"];function A_(e){return O_.includes(e)}var Ur="NaN";function E_(e,t){return e*N_[t]}class Ke{static parse(t){var r,[,n,a]=(r=S_.exec(t))!==null&&r!==void 0?r:[];return n==null?Ke.NaN:new Ke(parseFloat(n),a??"")}constructor(t,r){this.num=t,this.unit=r,this.num=t,this.unit=r,Vt(t)&&(this.unit=""),r!==""&&!P_.test(r)&&(this.num=NaN,this.unit=""),A_(r)&&(this.num=E_(t,r),this.unit="px")}add(t){return this.unit!==t.unit?new Ke(NaN,""):new Ke(this.num+t.num,this.unit)}subtract(t){return this.unit!==t.unit?new Ke(NaN,""):new Ke(this.num-t.num,this.unit)}multiply(t){return this.unit!==""&&t.unit!==""&&this.unit!==t.unit?new Ke(NaN,""):new Ke(this.num*t.num,this.unit||t.unit)}divide(t){return this.unit!==""&&t.unit!==""&&this.unit!==t.unit?new Ke(NaN,""):new Ke(this.num/t.num,this.unit||t.unit)}toString(){return"".concat(this.num).concat(this.unit)}isNaN(){return Vt(this.num)}}Jg=Ke;w_(Ke,"NaN",new Jg(NaN,""));function Qg(e){if(e==null||e.includes(Ur))return Ur;for(var t=e;t.includes("*")||t.includes("/");){var r,[,n,a,i]=(r=_m.exec(t))!==null&&r!==void 0?r:[],o=Ke.parse(n??""),l=Ke.parse(i??""),c=a==="*"?o.multiply(l):o.divide(l);if(c.isNaN())return Ur;t=t.replace(_m,c.toString())}for(;t.includes("+")||/.-\d+(?:\.\d+)?/.test(t);){var d,[,u,m,h]=(d=Mm.exec(t))!==null&&d!==void 0?d:[],v=Ke.parse(u??""),y=Ke.parse(h??""),g=m==="+"?v.add(y):v.subtract(y);if(g.isNaN())return Ur;t=t.replace(Mm,g.toString())}return t}var Tm=/\(([^()]*)\)/;function __(e){for(var t=e,r;(r=Tm.exec(t))!=null;){var[,n]=r;t=t.replace(Tm,Qg(n))}return t}function M_(e){var t=e.replace(/\s+/g,"");return t=__(t),t=Qg(t),t}function T_(e){try{return M_(e)}catch{return Ur}}function go(e){var t=T_(e.slice(5,-1));return t===Ur?"":t}var I_=["x","y","lineHeight","capHeight","fill","scaleToFit","textAnchor","verticalAnchor"],D_=["dx","dy","angle","className","breakAll"];function hl(){return hl=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)({}).hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},hl.apply(null,arguments)}function Im(e,t){if(e==null)return{};var r,n,a=L_(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)===-1&&{}.propertyIsEnumerable.call(e,r)&&(a[r]=e[r])}return a}function L_(e,t){if(e==null)return{};var r={};for(var n in e)if({}.hasOwnProperty.call(e,n)){if(t.indexOf(n)!==-1)continue;r[n]=e[n]}return r}var eb=/[ \f\n\r\t\v\u2028\u2029]+/,tb=e=>{var{children:t,breakAll:r,style:n}=e;try{var a=[];De(t)||(r?a=t.toString().split(""):a=t.toString().split(eb));var i=a.map(l=>({word:l,width:On(l,n).width})),o=r?0:On(" ",n).width;return{wordsWithComputedWidth:i,spaceWidth:o}}catch{return null}};function rb(e){return e==="start"||e==="middle"||e==="end"||e==="inherit"}function R_(e){return De(e)||typeof e=="string"||typeof e=="number"||typeof e=="boolean"}var nb=(e,t,r,n)=>e.reduce((a,i)=>{var{word:o,width:l}=i,c=a[a.length-1];if(c&&l!=null&&(t==null||n||c.width+l+r<Number(t)))c.words.push(o),c.width+=l+r;else{var d={words:[o],width:l};a.push(d)}return a},[]),ab=e=>e.reduce((t,r)=>t.width>r.width?t:r),$_="…",Dm=(e,t,r,n,a,i,o,l)=>{var c=e.slice(0,t),d=tb({breakAll:r,style:n,children:c+$_});if(!d)return[!1,[]];var u=nb(d.wordsWithComputedWidth,i,o,l),m=u.length>a||ab(u).width>Number(i);return[m,u]},B_=(e,t,r,n,a)=>{var{maxLines:i,children:o,style:l,breakAll:c}=e,d=Z(i),u=String(o),m=nb(t,n,r,a);if(!d||a)return m;var h=m.length>i||ab(m).width>Number(n);if(!h)return m;for(var v=0,y=u.length-1,g=0,p;v<=y&&g<=u.length-1;){var b=Math.floor((v+y)/2),j=b-1,[x,C]=Dm(u,j,c,l,i,n,r,a),[w]=Dm(u,b,c,l,i,n,r,a);if(!x&&!w&&(v=b+1),x&&w&&(y=b-1),!x&&w){p=C;break}g++}return p||m},Lm=e=>{var t=De(e)?[]:e.toString().split(eb);return[{words:t,width:void 0}]},F_=e=>{var{width:t,scaleToFit:r,children:n,style:a,breakAll:i,maxLines:o}=e;if((t||r)&&!Xn.isSsr){var l,c,d=tb({breakAll:i,children:n,style:a});if(d){var{wordsWithComputedWidth:u,spaceWidth:m}=d;l=u,c=m}else return Lm(n);return B_({breakAll:i,children:n,maxLines:o,style:a},l,c,t,!!r)}return Lm(n)},ib="#808080",z_={angle:0,breakAll:!1,capHeight:"0.71em",fill:ib,lineHeight:"1em",scaleToFit:!1,textAnchor:"start",verticalAnchor:"end",x:0,y:0},ns=f.forwardRef((e,t)=>{var r=Le(e,z_),{x:n,y:a,lineHeight:i,capHeight:o,fill:l,scaleToFit:c,textAnchor:d,verticalAnchor:u}=r,m=Im(r,I_),h=f.useMemo(()=>F_({breakAll:m.breakAll,children:m.children,maxLines:m.maxLines,scaleToFit:c,style:m.style,width:m.width}),[m.breakAll,m.children,m.maxLines,c,m.style,m.width]),{dx:v,dy:y,angle:g,className:p,breakAll:b}=m,j=Im(m,D_);if(!Mt(n)||!Mt(a)||h.length===0)return null;var x=Number(n)+(Z(v)?v:0),C=Number(a)+(Z(y)?y:0);if(!ue(x)||!ue(C))return null;var w;switch(u){case"start":w=go("calc(".concat(o,")"));break;case"middle":w=go("calc(".concat((h.length-1)/2," * -").concat(i," + (").concat(o," / 2))"));break;default:w=go("calc(".concat(h.length-1," * -").concat(i,")"));break}var P=[],O=h[0];if(c&&O!=null){var k=O.width,{width:N}=m;P.push("scale(".concat(Z(N)&&Z(k)?N/k:1,")"))}return g&&P.push("rotate(".concat(g,", ").concat(x,", ").concat(C,")")),P.length&&(j.transform=P.join(" ")),f.createElement("text",hl({},Je(j),{ref:t,x,y:C,className:de("recharts-text",p),textAnchor:d,fill:l.includes("url")?ib:l}),h.map((S,A)=>{var _=S.words.join(b?"":" ");return f.createElement("tspan",{x,dy:A===0?w:i,key:"".concat(_,"-").concat(A)},_)}))});ns.displayName="Text";function Rm(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),r.push.apply(r,n)}return r}function Ot(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?Rm(Object(r),!0).forEach(function(n){K_(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):Rm(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function K_(e,t,r){return(t=V_(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function V_(e){var t=U_(e,"string");return typeof t=="symbol"?t:t+""}function U_(e,t){if(typeof e!="object"||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var n=r.call(e,t);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}var q_=e=>{var{viewBox:t,position:r,offset:n=0,parentViewBox:a}=e,{x:i,y:o,height:l,upperWidth:c,lowerWidth:d}=oc(t),u=i,m=i+(c-d)/2,h=(u+m)/2,v=(c+d)/2,y=u+c/2,g=l>=0?1:-1,p=g*n,b=g>0?"end":"start",j=g>0?"start":"end",x=c>=0?1:-1,C=x*n,w=x>0?"end":"start",P=x>0?"start":"end",O=a;if(r==="top"){var k={x:u+c/2,y:o-p,horizontalAnchor:"middle",verticalAnchor:b};return O&&(k.height=Math.max(o-O.y,0),k.width=c),k}if(r==="bottom"){var N={x:m+d/2,y:o+l+p,horizontalAnchor:"middle",verticalAnchor:j};return O&&(N.height=Math.max(O.y+O.height-(o+l),0),N.width=d),N}if(r==="left"){var S={x:h-C,y:o+l/2,horizontalAnchor:w,verticalAnchor:"middle"};return O&&(S.width=Math.max(S.x-O.x,0),S.height=l),S}if(r==="right"){var A={x:h+v+C,y:o+l/2,horizontalAnchor:P,verticalAnchor:"middle"};return O&&(A.width=Math.max(O.x+O.width-A.x,0),A.height=l),A}var _=O?{width:v,height:l}:{};return r==="insideLeft"?Ot({x:h+C,y:o+l/2,horizontalAnchor:P,verticalAnchor:"middle"},_):r==="insideRight"?Ot({x:h+v-C,y:o+l/2,horizontalAnchor:w,verticalAnchor:"middle"},_):r==="insideTop"?Ot({x:u+c/2,y:o+p,horizontalAnchor:"middle",verticalAnchor:j},_):r==="insideBottom"?Ot({x:m+d/2,y:o+l-p,horizontalAnchor:"middle",verticalAnchor:b},_):r==="insideTopLeft"?Ot({x:u+C,y:o+p,horizontalAnchor:P,verticalAnchor:j},_):r==="insideTopRight"?Ot({x:u+c-C,y:o+p,horizontalAnchor:w,verticalAnchor:j},_):r==="insideBottomLeft"?Ot({x:m+C,y:o+l-p,horizontalAnchor:P,verticalAnchor:b},_):r==="insideBottomRight"?Ot({x:m+d-C,y:o+l-p,horizontalAnchor:w,verticalAnchor:b},_):r&&typeof r=="object"&&(Z(r.x)||Ko(r.x))&&(Z(r.y)||Ko(r.y))?Ot({x:i+ot(r.x,v),y:o+ot(r.y,l),horizontalAnchor:"end",verticalAnchor:"end"},_):Ot({x:y,y:o+l/2,horizontalAnchor:"middle",verticalAnchor:"middle"},_)},W_=["labelRef"],H_=["content"];function $m(e,t){if(e==null)return{};var r,n,a=G_(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)===-1&&{}.propertyIsEnumerable.call(e,r)&&(a[r]=e[r])}return a}function G_(e,t){if(e==null)return{};var r={};for(var n in e)if({}.hasOwnProperty.call(e,n)){if(t.indexOf(n)!==-1)continue;r[n]=e[n]}return r}function Bm(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),r.push.apply(r,n)}return r}function Pn(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?Bm(Object(r),!0).forEach(function(n){X_(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):Bm(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function X_(e,t,r){return(t=Y_(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function Y_(e){var t=Z_(e,"string");return typeof t=="symbol"?t:t+""}function Z_(e,t){if(typeof e!="object"||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var n=r.call(e,t);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function $t(){return $t=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)({}).hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},$t.apply(null,arguments)}var sb=f.createContext(null),J_=e=>{var{x:t,y:r,upperWidth:n,lowerWidth:a,width:i,height:o,children:l}=e,c=f.useMemo(()=>({x:t,y:r,upperWidth:n,lowerWidth:a,width:i,height:o}),[t,r,n,a,i,o]);return f.createElement(sb.Provider,{value:c},l)},ob=()=>{var e=f.useContext(sb),t=Fi();return e||(t?oc(t):void 0)},Q_=f.createContext(null),e1=()=>{var e=f.useContext(Q_),t=Y(Ry);return e||t},t1=e=>{var{value:t,formatter:r}=e,n=De(e.children)?t:e.children;return typeof r=="function"?r(n):n},Qc=e=>e!=null&&typeof e=="function",r1=(e,t)=>{var r=He(t-e),n=Math.min(Math.abs(t-e),360);return r*n},n1=(e,t,r,n,a)=>{var{offset:i,className:o}=e,{cx:l,cy:c,innerRadius:d,outerRadius:u,startAngle:m,endAngle:h,clockWise:v}=a,y=(d+u)/2,g=r1(m,h),p=g>=0?1:-1,b,j;switch(t){case"insideStart":b=m+p*i,j=v;break;case"insideEnd":b=h-p*i,j=!v;break;case"end":b=h+p*i,j=v;break;default:throw new Error("Unsupported position ".concat(t))}j=g<=0?j:!j;var x=Ee(l,c,y,b),C=Ee(l,c,y,b+(j?1:-1)*359),w="M".concat(x.x,",").concat(x.y,`
60
- A`).concat(y,",").concat(y,",0,1,").concat(j?0:1,`,
61
- `).concat(C.x,",").concat(C.y),P=De(e.id)?An("recharts-radial-line-"):e.id;return f.createElement("text",$t({},n,{dominantBaseline:"central",className:de("recharts-radial-bar-label",o)}),f.createElement("defs",null,f.createElement("path",{id:P,d:w})),f.createElement("textPath",{xlinkHref:"#".concat(P)},r))},a1=(e,t,r)=>{var{cx:n,cy:a,innerRadius:i,outerRadius:o,startAngle:l,endAngle:c}=e,d=(l+c)/2;if(r==="outside"){var{x:u,y:m}=Ee(n,a,o+t,d);return{x:u,y:m,textAnchor:u>=n?"start":"end",verticalAnchor:"middle"}}if(r==="center")return{x:n,y:a,textAnchor:"middle",verticalAnchor:"middle"};if(r==="centerTop")return{x:n,y:a,textAnchor:"middle",verticalAnchor:"start"};if(r==="centerBottom")return{x:n,y:a,textAnchor:"middle",verticalAnchor:"end"};var h=(i+o)/2,{x:v,y}=Ee(n,a,h,d);return{x:v,y,textAnchor:"middle",verticalAnchor:"middle"}},Sa=e=>e!=null&&"cx"in e&&Z(e.cx),i1={angle:0,offset:5,zIndex:Ve.label,position:"middle",textBreakAll:!1};function s1(e){if(!Sa(e))return e;var{cx:t,cy:r,outerRadius:n}=e,a=n*2;return{x:t-n,y:r-n,width:a,upperWidth:a,lowerWidth:a,height:a}}function tr(e){var t=Le(e,i1),{viewBox:r,parentViewBox:n,position:a,value:i,children:o,content:l,className:c="",textBreakAll:d,labelRef:u}=t,m=e1(),h=ob(),v=a==="center"?h:m??h,y,g,p;r==null?y=v:Sa(r)?y=r:y=oc(r);var b=s1(y);if(!y||De(i)&&De(o)&&!f.isValidElement(l)&&typeof l!="function")return null;var j=Pn(Pn({},t),{},{viewBox:y});if(f.isValidElement(l)){var{labelRef:x}=j,C=$m(j,W_);return f.cloneElement(l,C)}if(typeof l=="function"){var{content:w}=j,P=$m(j,H_);if(g=f.createElement(l,P),f.isValidElement(g))return g}else g=t1(t);var O=Je(t);if(Sa(y)){if(a==="insideStart"||a==="insideEnd"||a==="end")return n1(t,a,g,O,y);p=a1(y,t.offset,t.position)}else{if(!b)return null;var k=q_({viewBox:b,position:a,offset:t.offset,parentViewBox:Sa(n)?void 0:n});p=Pn(Pn({x:k.x,y:k.y,textAnchor:k.horizontalAnchor,verticalAnchor:k.verticalAnchor},k.width!==void 0?{width:k.width}:{}),k.height!==void 0?{height:k.height}:{})}return f.createElement(Ct,{zIndex:t.zIndex},f.createElement(ns,$t({ref:u,className:de("recharts-label",c)},O,p,{textAnchor:rb(O.textAnchor)?O.textAnchor:p.textAnchor,breakAll:d}),g))}tr.displayName="Label";var o1=(e,t,r)=>{if(!e)return null;var n={viewBox:t,labelRef:r};return e===!0?f.createElement(tr,$t({key:"label-implicit"},n)):Mt(e)?f.createElement(tr,$t({key:"label-implicit",value:e},n)):f.isValidElement(e)?e.type===tr?f.cloneElement(e,Pn({key:"label-implicit"},n)):f.createElement(tr,$t({key:"label-implicit",content:e},n)):Qc(e)?f.createElement(tr,$t({key:"label-implicit",content:e},n)):e&&typeof e=="object"?f.createElement(tr,$t({},e,{key:"label-implicit"},n)):null};function l1(e){var{label:t,labelRef:r}=e,n=ob();return o1(t,n,r)||null}var c1=["valueAccessor"],u1=["dataKey","clockWise","id","textBreakAll","zIndex"];function ii(){return ii=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)({}).hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},ii.apply(null,arguments)}function Fm(e,t){if(e==null)return{};var r,n,a=d1(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)===-1&&{}.propertyIsEnumerable.call(e,r)&&(a[r]=e[r])}return a}function d1(e,t){if(e==null)return{};var r={};for(var n in e)if({}.hasOwnProperty.call(e,n)){if(t.indexOf(n)!==-1)continue;r[n]=e[n]}return r}var f1=e=>{var t=Array.isArray(e.value)?e.value[e.value.length-1]:e.value;if(R_(t))return t},lb=f.createContext(void 0),m1=lb.Provider,cb=f.createContext(void 0),v1=cb.Provider;function h1(){return f.useContext(lb)}function p1(){return f.useContext(cb)}function Na(e){var{valueAccessor:t=f1}=e,r=Fm(e,c1),{dataKey:n,clockWise:a,id:i,textBreakAll:o,zIndex:l}=r,c=Fm(r,u1),d=h1(),u=p1(),m=d||u;return!m||!m.length?null:f.createElement(Ct,{zIndex:l??Ve.label},f.createElement(Qe,{className:"recharts-label-list"},m.map((h,v)=>{var y,g=De(n)?t(h,v):he(h.payload,n),p=De(i)?{}:{id:"".concat(i,"-").concat(v)};return f.createElement(tr,ii({key:"label-".concat(v)},Je(h),c,p,{fill:(y=r.fill)!==null&&y!==void 0?y:h.fill,parentViewBox:h.parentViewBox,value:g,textBreakAll:o,viewBox:h.viewBox,index:v,zIndex:0}))})))}Na.displayName="LabelList";function ub(e){var{label:t}=e;return t?t===!0?f.createElement(Na,{key:"labelList-implicit"}):f.isValidElement(t)||Qc(t)?f.createElement(Na,{key:"labelList-implicit",content:t}):typeof t=="object"?f.createElement(Na,ii({key:"labelList-implicit"},t,{type:String(t.type)})):null:null}function pl(){return pl=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)({}).hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},pl.apply(null,arguments)}var db=e=>{var{cx:t,cy:r,r:n,className:a}=e,i=de("recharts-dot",a);return Z(t)&&Z(r)&&Z(n)?f.createElement("circle",pl({},yt(e),Zl(e),{className:i,cx:t,cy:r,r:n})):null},fb=e=>e.graphicalItems.polarItems,y1=M([Pe,Jn],Nc),as=M([fb,Oe,y1],Oc),g1=M([as],Ac),is=M([g1,Wi],Ec),b1=M([is,Oe,as],Zy);M([is,Oe,as],(e,t,r)=>r.length>0?e.flatMap(n=>r.flatMap(a=>{var i,o=he(n,(i=t.dataKey)!==null&&i!==void 0?i:a.dataKey);return{value:o,errorDomain:[]}})).filter(Boolean):t?.dataKey!=null?e.map(n=>({value:he(n,t.dataKey),errorDomain:[]})):e.map(n=>({value:n,errorDomain:[]})));var zm=()=>{},x1=M([is,Oe,as,Ji,Pe,SN],Dc),j1=M([Oe,Tc,Ic,zm,x1,zm,ge,Pe],Lc),mb=M([Oe,ge,is,b1,Zn,Pe,j1],Rc),w1=M([mb,cn,lr],Bc),C1=M([Oe,mb,w1,Pe],zc);M([lr,C1],Fy);var k1={radiusAxis:{},angleAxis:{}},vb=Xe({name:"polarAxis",initialState:k1,reducers:{addRadiusAxis(e,t){e.radiusAxis[t.payload.id]=t.payload},removeRadiusAxis(e,t){delete e.radiusAxis[t.payload.id]},addAngleAxis(e,t){e.angleAxis[t.payload.id]=t.payload},removeAngleAxis(e,t){delete e.angleAxis[t.payload.id]}}}),{addRadiusAxis:w2,removeRadiusAxis:C2,addAngleAxis:k2,removeAngleAxis:P2}=vb.actions,P1=vb.reducer;function hb(e){return e&&typeof e=="object"&&"className"in e&&typeof e.className=="string"?e.className:""}function Km(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),r.push.apply(r,n)}return r}function Vm(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?Km(Object(r),!0).forEach(function(n){S1(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):Km(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function S1(e,t,r){return(t=N1(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function N1(e){var t=O1(e,"string");return typeof t=="symbol"?t:t+""}function O1(e,t){if(typeof e!="object"||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var n=r.call(e,t);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}var A1=(e,t)=>t,eu=M([fb,A1],(e,t)=>e.filter(r=>r.type==="pie").find(r=>r.id===t)),E1=[],tu=(e,t,r)=>r?.length===0?E1:r,pb=M([Wi,eu,tu],(e,t,r)=>{var{chartData:n}=e;if(t!=null){var a;if(t?.data!=null&&t.data.length>0?a=t.data:a=n,(!a||!a.length)&&r!=null&&(a=r.map(i=>Vm(Vm({},t.presentationProps),i.props))),a!=null)return a}}),_1=M([pb,eu,tu],(e,t,r)=>{if(!(e==null||t==null))return e.map((n,a)=>{var i,o=he(n,t.nameKey,t.name),l;return r!=null&&(i=r[a])!==null&&i!==void 0&&(i=i.props)!==null&&i!==void 0&&i.fill?l=r[a].props.fill:typeof n=="object"&&n!=null&&"fill"in n?l=n.fill:l=t.fill,{value:Di(o,t.dataKey),color:l,payload:n,type:t.legendType}})}),M1=M([pb,eu,tu,Be],(e,t,r,n)=>{if(!(t==null||e==null))return zM({offset:n,pieSettings:t,displayedData:e,cells:r})}),bo={exports:{}},me={};/** @license React v17.0.2
59
+ A`,",",",0,0,",",",",","Z"])),O.x,O.y,i,i,+(u<0),P.x,P.y,n,n,+(N>180),+(u>0),x.x,x.y,i,i,+(u<0),C.x,C.y)}else j+=Ne(Hf||(Hf=jr(["L",",","Z"])),t,r);return j},gN={cx:0,cy:0,innerRadius:0,outerRadius:0,startAngle:0,endAngle:0,cornerRadius:0,forceCornerRadius:!1,cornerIsExternal:!1},gy=e=>{var t=Le(e,gN),{cx:r,cy:n,innerRadius:a,outerRadius:i,cornerRadius:o,forceCornerRadius:l,cornerIsExternal:c,startAngle:d,endAngle:u,className:m}=t;if(i<a||d===u)return null;var h=de("recharts-sector",m),v=i-a,g=ot(o,v,0,!0),y;return g>0&&Math.abs(d-u)<360?y=yN({cx:r,cy:n,innerRadius:a,outerRadius:i,cornerRadius:Math.min(g,v/2),forceCornerRadius:l,cornerIsExternal:c,startAngle:d,endAngle:u}):y=yy({cx:r,cy:n,innerRadius:a,outerRadius:i,startAngle:d,endAngle:u}),f.createElement("path",dl({},Je(t),{className:h,d:y}))};function bN(e,t,r){if(e==="horizontal")return[{x:t.x,y:r.top},{x:t.x,y:r.top+r.height}];if(e==="vertical")return[{x:r.left,y:t.y},{x:r.left+r.width,y:t.y}];if(Xh(t)){if(e==="centric"){var{cx:n,cy:a,innerRadius:i,outerRadius:o,angle:l}=t,c=Ee(n,a,i,l),d=Ee(n,a,o,l);return[{x:c.x,y:c.y},{x:d.x,y:d.y}]}return py(t)}}var uo={},fo={},mo={},Gf;function xN(){return Gf||(Gf=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=lp();function r(n){return t.isSymbol(n)?NaN:Number(n)}e.toNumber=r})(mo)),mo}var Xf;function jN(){return Xf||(Xf=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=xN();function r(n){return n?(n=t.toNumber(n),n===1/0||n===-1/0?(n<0?-1:1)*Number.MAX_VALUE:n===n?n:0):n===0?n:0}e.toFinite=r})(fo)),fo}var Yf;function wN(){return Yf||(Yf=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=cp(),r=jN();function n(a,i,o){o&&typeof o!="number"&&t.isIterateeCall(a,i,o)&&(i=o=void 0),a=r.toFinite(a),i===void 0?(i=a,a=0):i=r.toFinite(i),o=o===void 0?a<i?1:-1:r.toFinite(o);const l=Math.max(Math.ceil((i-a)/(o||1)),0),c=new Array(l);for(let d=0;d<l;d++)c[d]=a,a+=o;return c}e.range=n})(uo)),uo}var vo,Zf;function CN(){return Zf||(Zf=1,vo=wN().range),vo}var kN=CN();const by=nn(kN);var Lt=e=>e.chartData,Wi=M([Lt],e=>{var t=e.chartData!=null?e.chartData.length-1:0;return{chartData:e.chartData,computedData:e.computedData,dataEndIndex:t,dataStartIndex:0}}),Yn=(e,t,r,n)=>n?Wi(e):Lt(e),PN=M([Yn],e=>{var{chartData:t,dataStartIndex:r,dataEndIndex:n}=e;return t!=null?t.slice(r,n+1):[]}),SN=M([Wi],e=>{var{chartData:t,dataStartIndex:r,dataEndIndex:n}=e;return t!=null?t.slice(r,n+1):[]}),NN=M([Lt],e=>{var{chartData:t,dataStartIndex:r,dataEndIndex:n}=e;return t!=null?t.slice(r,n+1):[]});function Mt(e){if(Array.isArray(e)&&e.length===2){var[t,r]=e;if(ue(t)&&ue(r))return!0}return!1}function Jf(e,t,r){return r?e:[Math.min(e[0],t[0]),Math.max(e[1],t[1])]}function xy(e,t){if(t&&typeof e!="function"&&Array.isArray(e)&&e.length===2){var[r,n]=e,a,i;if(ue(r))a=r;else if(typeof r=="function")return;if(ue(n))i=n;else if(typeof n=="function")return;var o=[a,i];if(Mt(o))return o}}function ON(e,t,r){if(!(!r&&t==null)){if(typeof e=="function"&&t!=null)try{var n=e(t,r);if(Mt(n))return Jf(n,t,r)}catch{}if(Array.isArray(e)&&e.length===2){var[a,i]=e,o,l;if(a==="auto")t!=null&&(o=Math.min(...t));else if(Z(a))o=a;else if(typeof a=="function")try{t!=null&&(o=a(t?.[0]))}catch{}else if(typeof a=="string"&&Ud.test(a)){var c=Ud.exec(a);if(c==null||c[1]==null||t==null)o=void 0;else{var d=+c[1];o=t[0]-d}}else o=t?.[0];if(i==="auto")t!=null&&(l=Math.max(...t));else if(Z(i))l=i;else if(typeof i=="function")try{t!=null&&(l=i(t?.[1]))}catch{}else if(typeof i=="string"&&Wd.test(i)){var u=Wd.exec(i);if(u==null||u[1]==null||t==null)l=void 0;else{var m=+u[1];l=t[1]+m}}else l=t?.[1];var h=[o,l];if(Mt(h))return t==null?h:Jf(h,t,r)}}}var sn=1e9,AN={precision:20,rounding:4,toExpNeg:-7,toExpPos:21,LN10:"2.302585092994045684017991454684364207601101488628772976033327900967572609677352480235997205089598298341967784042286"},hc,ke=!0,gt="[DecimalError] ",kr=gt+"Invalid argument: ",vc=gt+"Exponent out of range: ",on=Math.floor,br=Math.pow,EN=/^(\d+(\.\d*)?|\.\d+)(e[+-]?\d+)?$/i,it,$e=1e7,je=7,jy=9007199254740991,Qa=on(jy/je),H={};H.absoluteValue=H.abs=function(){var e=new this.constructor(this);return e.s&&(e.s=1),e};H.comparedTo=H.cmp=function(e){var t,r,n,a,i=this;if(e=new i.constructor(e),i.s!==e.s)return i.s||-e.s;if(i.e!==e.e)return i.e>e.e^i.s<0?1:-1;for(n=i.d.length,a=e.d.length,t=0,r=n<a?n:a;t<r;++t)if(i.d[t]!==e.d[t])return i.d[t]>e.d[t]^i.s<0?1:-1;return n===a?0:n>a^i.s<0?1:-1};H.decimalPlaces=H.dp=function(){var e=this,t=e.d.length-1,r=(t-e.e)*je;if(t=e.d[t],t)for(;t%10==0;t/=10)r--;return r<0?0:r};H.dividedBy=H.div=function(e){return zt(this,new this.constructor(e))};H.dividedToIntegerBy=H.idiv=function(e){var t=this,r=t.constructor;return pe(zt(t,new r(e),0,1),r.precision)};H.equals=H.eq=function(e){return!this.cmp(e)};H.exponent=function(){return _e(this)};H.greaterThan=H.gt=function(e){return this.cmp(e)>0};H.greaterThanOrEqualTo=H.gte=function(e){return this.cmp(e)>=0};H.isInteger=H.isint=function(){return this.e>this.d.length-2};H.isNegative=H.isneg=function(){return this.s<0};H.isPositive=H.ispos=function(){return this.s>0};H.isZero=function(){return this.s===0};H.lessThan=H.lt=function(e){return this.cmp(e)<0};H.lessThanOrEqualTo=H.lte=function(e){return this.cmp(e)<1};H.logarithm=H.log=function(e){var t,r=this,n=r.constructor,a=n.precision,i=a+5;if(e===void 0)e=new n(10);else if(e=new n(e),e.s<1||e.eq(it))throw Error(gt+"NaN");if(r.s<1)throw Error(gt+(r.s?"NaN":"-Infinity"));return r.eq(it)?new n(0):(ke=!1,t=zt(Rn(r,i),Rn(e,i),i),ke=!0,pe(t,a))};H.minus=H.sub=function(e){var t=this;return e=new t.constructor(e),t.s==e.s?ky(t,e):wy(t,(e.s=-e.s,e))};H.modulo=H.mod=function(e){var t,r=this,n=r.constructor,a=n.precision;if(e=new n(e),!e.s)throw Error(gt+"NaN");return r.s?(ke=!1,t=zt(r,e,0,1).times(e),ke=!0,r.minus(t)):pe(new n(r),a)};H.naturalExponential=H.exp=function(){return Cy(this)};H.naturalLogarithm=H.ln=function(){return Rn(this)};H.negated=H.neg=function(){var e=new this.constructor(this);return e.s=-e.s||0,e};H.plus=H.add=function(e){var t=this;return e=new t.constructor(e),t.s==e.s?wy(t,e):ky(t,(e.s=-e.s,e))};H.precision=H.sd=function(e){var t,r,n,a=this;if(e!==void 0&&e!==!!e&&e!==1&&e!==0)throw Error(kr+e);if(t=_e(a)+1,n=a.d.length-1,r=n*je+1,n=a.d[n],n){for(;n%10==0;n/=10)r--;for(n=a.d[0];n>=10;n/=10)r++}return e&&t>r?t:r};H.squareRoot=H.sqrt=function(){var e,t,r,n,a,i,o,l=this,c=l.constructor;if(l.s<1){if(!l.s)return new c(0);throw Error(gt+"NaN")}for(e=_e(l),ke=!1,a=Math.sqrt(+l),a==0||a==1/0?(t=_t(l.d),(t.length+e)%2==0&&(t+="0"),a=Math.sqrt(t),e=on((e+1)/2)-(e<0||e%2),a==1/0?t="5e"+e:(t=a.toExponential(),t=t.slice(0,t.indexOf("e")+1)+e),n=new c(t)):n=new c(a.toString()),r=c.precision,a=o=r+3;;)if(i=n,n=i.plus(zt(l,i,o+2)).times(.5),_t(i.d).slice(0,o)===(t=_t(n.d)).slice(0,o)){if(t=t.slice(o-3,o+1),a==o&&t=="4999"){if(pe(i,r+1,0),i.times(i).eq(l)){n=i;break}}else if(t!="9999")break;o+=4}return ke=!0,pe(n,r)};H.times=H.mul=function(e){var t,r,n,a,i,o,l,c,d,u=this,m=u.constructor,h=u.d,v=(e=new m(e)).d;if(!u.s||!e.s)return new m(0);for(e.s*=u.s,r=u.e+e.e,c=h.length,d=v.length,c<d&&(i=h,h=v,v=i,o=c,c=d,d=o),i=[],o=c+d,n=o;n--;)i.push(0);for(n=d;--n>=0;){for(t=0,a=c+n;a>n;)l=i[a]+v[n]*h[a-n-1]+t,i[a--]=l%$e|0,t=l/$e|0;i[a]=(i[a]+t)%$e|0}for(;!i[--o];)i.pop();return t?++r:i.shift(),e.d=i,e.e=r,ke?pe(e,m.precision):e};H.toDecimalPlaces=H.todp=function(e,t){var r=this,n=r.constructor;return r=new n(r),e===void 0?r:(It(e,0,sn),t===void 0?t=n.rounding:It(t,0,8),pe(r,e+_e(r)+1,t))};H.toExponential=function(e,t){var r,n=this,a=n.constructor;return e===void 0?r=_r(n,!0):(It(e,0,sn),t===void 0?t=a.rounding:It(t,0,8),n=pe(new a(n),e+1,t),r=_r(n,!0,e+1)),r};H.toFixed=function(e,t){var r,n,a=this,i=a.constructor;return e===void 0?_r(a):(It(e,0,sn),t===void 0?t=i.rounding:It(t,0,8),n=pe(new i(a),e+_e(a)+1,t),r=_r(n.abs(),!1,e+_e(n)+1),a.isneg()&&!a.isZero()?"-"+r:r)};H.toInteger=H.toint=function(){var e=this,t=e.constructor;return pe(new t(e),_e(e)+1,t.rounding)};H.toNumber=function(){return+this};H.toPower=H.pow=function(e){var t,r,n,a,i,o,l=this,c=l.constructor,d=12,u=+(e=new c(e));if(!e.s)return new c(it);if(l=new c(l),!l.s){if(e.s<1)throw Error(gt+"Infinity");return l}if(l.eq(it))return l;if(n=c.precision,e.eq(it))return pe(l,n);if(t=e.e,r=e.d.length-1,o=t>=r,i=l.s,o){if((r=u<0?-u:u)<=jy){for(a=new c(it),t=Math.ceil(n/je+4),ke=!1;r%2&&(a=a.times(l),em(a.d,t)),r=on(r/2),r!==0;)l=l.times(l),em(l.d,t);return ke=!0,e.s<0?new c(it).div(a):pe(a,n)}}else if(i<0)throw Error(gt+"NaN");return i=i<0&&e.d[Math.max(t,r)]&1?-1:1,l.s=1,ke=!1,a=e.times(Rn(l,n+d)),ke=!0,a=Cy(a),a.s=i,a};H.toPrecision=function(e,t){var r,n,a=this,i=a.constructor;return e===void 0?(r=_e(a),n=_r(a,r<=i.toExpNeg||r>=i.toExpPos)):(It(e,1,sn),t===void 0?t=i.rounding:It(t,0,8),a=pe(new i(a),e,t),r=_e(a),n=_r(a,e<=r||r<=i.toExpNeg,e)),n};H.toSignificantDigits=H.tosd=function(e,t){var r=this,n=r.constructor;return e===void 0?(e=n.precision,t=n.rounding):(It(e,1,sn),t===void 0?t=n.rounding:It(t,0,8)),pe(new n(r),e,t)};H.toString=H.valueOf=H.val=H.toJSON=H[Symbol.for("nodejs.util.inspect.custom")]=function(){var e=this,t=_e(e),r=e.constructor;return _r(e,t<=r.toExpNeg||t>=r.toExpPos)};function wy(e,t){var r,n,a,i,o,l,c,d,u=e.constructor,m=u.precision;if(!e.s||!t.s)return t.s||(t=new u(e)),ke?pe(t,m):t;if(c=e.d,d=t.d,o=e.e,a=t.e,c=c.slice(),i=o-a,i){for(i<0?(n=c,i=-i,l=d.length):(n=d,a=o,l=c.length),o=Math.ceil(m/je),l=o>l?o+1:l+1,i>l&&(i=l,n.length=1),n.reverse();i--;)n.push(0);n.reverse()}for(l=c.length,i=d.length,l-i<0&&(i=l,n=d,d=c,c=n),r=0;i;)r=(c[--i]=c[i]+d[i]+r)/$e|0,c[i]%=$e;for(r&&(c.unshift(r),++a),l=c.length;c[--l]==0;)c.pop();return t.d=c,t.e=a,ke?pe(t,m):t}function It(e,t,r){if(e!==~~e||e<t||e>r)throw Error(kr+e)}function _t(e){var t,r,n,a=e.length-1,i="",o=e[0];if(a>0){for(i+=o,t=1;t<a;t++)n=e[t]+"",r=je-n.length,r&&(i+=er(r)),i+=n;o=e[t],n=o+"",r=je-n.length,r&&(i+=er(r))}else if(o===0)return"0";for(;o%10===0;)o/=10;return i+o}var zt=(function(){function e(n,a){var i,o=0,l=n.length;for(n=n.slice();l--;)i=n[l]*a+o,n[l]=i%$e|0,o=i/$e|0;return o&&n.unshift(o),n}function t(n,a,i,o){var l,c;if(i!=o)c=i>o?1:-1;else for(l=c=0;l<i;l++)if(n[l]!=a[l]){c=n[l]>a[l]?1:-1;break}return c}function r(n,a,i){for(var o=0;i--;)n[i]-=o,o=n[i]<a[i]?1:0,n[i]=o*$e+n[i]-a[i];for(;!n[0]&&n.length>1;)n.shift()}return function(n,a,i,o){var l,c,d,u,m,h,v,g,y,p,b,j,x,C,w,P,O,k,N=n.constructor,S=n.s==a.s?1:-1,A=n.d,_=a.d;if(!n.s)return new N(n);if(!a.s)throw Error(gt+"Division by zero");for(c=n.e-a.e,O=_.length,w=A.length,v=new N(S),g=v.d=[],d=0;_[d]==(A[d]||0);)++d;if(_[d]>(A[d]||0)&&--c,i==null?j=i=N.precision:o?j=i+(_e(n)-_e(a))+1:j=i,j<0)return new N(0);if(j=j/je+2|0,d=0,O==1)for(u=0,_=_[0],j++;(d<w||u)&&j--;d++)x=u*$e+(A[d]||0),g[d]=x/_|0,u=x%_|0;else{for(u=$e/(_[0]+1)|0,u>1&&(_=e(_,u),A=e(A,u),O=_.length,w=A.length),C=O,y=A.slice(0,O),p=y.length;p<O;)y[p++]=0;k=_.slice(),k.unshift(0),P=_[0],_[1]>=$e/2&&++P;do u=0,l=t(_,y,O,p),l<0?(b=y[0],O!=p&&(b=b*$e+(y[1]||0)),u=b/P|0,u>1?(u>=$e&&(u=$e-1),m=e(_,u),h=m.length,p=y.length,l=t(m,y,h,p),l==1&&(u--,r(m,O<h?k:_,h))):(u==0&&(l=u=1),m=_.slice()),h=m.length,h<p&&m.unshift(0),r(y,m,p),l==-1&&(p=y.length,l=t(_,y,O,p),l<1&&(u++,r(y,O<p?k:_,p))),p=y.length):l===0&&(u++,y=[0]),g[d++]=u,l&&y[0]?y[p++]=A[C]||0:(y=[A[C]],p=1);while((C++<w||y[0]!==void 0)&&j--)}return g[0]||g.shift(),v.e=c,pe(v,o?i+_e(v)+1:i)}})();function Cy(e,t){var r,n,a,i,o,l,c=0,d=0,u=e.constructor,m=u.precision;if(_e(e)>16)throw Error(vc+_e(e));if(!e.s)return new u(it);for(ke=!1,l=m,o=new u(.03125);e.abs().gte(.1);)e=e.times(o),d+=5;for(n=Math.log(br(2,d))/Math.LN10*2+5|0,l+=n,r=a=i=new u(it),u.precision=l;;){if(a=pe(a.times(e),l),r=r.times(++c),o=i.plus(zt(a,r,l)),_t(o.d).slice(0,l)===_t(i.d).slice(0,l)){for(;d--;)i=pe(i.times(i),l);return u.precision=m,t==null?(ke=!0,pe(i,m)):i}i=o}}function _e(e){for(var t=e.e*je,r=e.d[0];r>=10;r/=10)t++;return t}function ho(e,t,r){if(t>e.LN10.sd())throw ke=!0,r&&(e.precision=r),Error(gt+"LN10 precision limit exceeded");return pe(new e(e.LN10),t)}function er(e){for(var t="";e--;)t+="0";return t}function Rn(e,t){var r,n,a,i,o,l,c,d,u,m=1,h=10,v=e,g=v.d,y=v.constructor,p=y.precision;if(v.s<1)throw Error(gt+(v.s?"NaN":"-Infinity"));if(v.eq(it))return new y(0);if(t==null?(ke=!1,d=p):d=t,v.eq(10))return t==null&&(ke=!0),ho(y,d);if(d+=h,y.precision=d,r=_t(g),n=r.charAt(0),i=_e(v),Math.abs(i)<15e14){for(;n<7&&n!=1||n==1&&r.charAt(1)>3;)v=v.times(e),r=_t(v.d),n=r.charAt(0),m++;i=_e(v),n>1?(v=new y("0."+r),i++):v=new y(n+"."+r.slice(1))}else return c=ho(y,d+2,p).times(i+""),v=Rn(new y(n+"."+r.slice(1)),d-h).plus(c),y.precision=p,t==null?(ke=!0,pe(v,p)):v;for(l=o=v=zt(v.minus(it),v.plus(it),d),u=pe(v.times(v),d),a=3;;){if(o=pe(o.times(u),d),c=l.plus(zt(o,new y(a),d)),_t(c.d).slice(0,d)===_t(l.d).slice(0,d))return l=l.times(2),i!==0&&(l=l.plus(ho(y,d+2,p).times(i+""))),l=zt(l,new y(m),d),y.precision=p,t==null?(ke=!0,pe(l,p)):l;l=c,a+=2}}function Qf(e,t){var r,n,a;for((r=t.indexOf("."))>-1&&(t=t.replace(".","")),(n=t.search(/e/i))>0?(r<0&&(r=n),r+=+t.slice(n+1),t=t.substring(0,n)):r<0&&(r=t.length),n=0;t.charCodeAt(n)===48;)++n;for(a=t.length;t.charCodeAt(a-1)===48;)--a;if(t=t.slice(n,a),t){if(a-=n,r=r-n-1,e.e=on(r/je),e.d=[],n=(r+1)%je,r<0&&(n+=je),n<a){for(n&&e.d.push(+t.slice(0,n)),a-=je;n<a;)e.d.push(+t.slice(n,n+=je));t=t.slice(n),n=je-t.length}else n-=a;for(;n--;)t+="0";if(e.d.push(+t),ke&&(e.e>Qa||e.e<-Qa))throw Error(vc+r)}else e.s=0,e.e=0,e.d=[0];return e}function pe(e,t,r){var n,a,i,o,l,c,d,u,m=e.d;for(o=1,i=m[0];i>=10;i/=10)o++;if(n=t-o,n<0)n+=je,a=t,d=m[u=0];else{if(u=Math.ceil((n+1)/je),i=m.length,u>=i)return e;for(d=i=m[u],o=1;i>=10;i/=10)o++;n%=je,a=n-je+o}if(r!==void 0&&(i=br(10,o-a-1),l=d/i%10|0,c=t<0||m[u+1]!==void 0||d%i,c=r<4?(l||c)&&(r==0||r==(e.s<0?3:2)):l>5||l==5&&(r==4||c||r==6&&(n>0?a>0?d/br(10,o-a):0:m[u-1])%10&1||r==(e.s<0?8:7))),t<1||!m[0])return c?(i=_e(e),m.length=1,t=t-i-1,m[0]=br(10,(je-t%je)%je),e.e=on(-t/je)||0):(m.length=1,m[0]=e.e=e.s=0),e;if(n==0?(m.length=u,i=1,u--):(m.length=u+1,i=br(10,je-n),m[u]=a>0?(d/br(10,o-a)%br(10,a)|0)*i:0),c)for(;;)if(u==0){(m[0]+=i)==$e&&(m[0]=1,++e.e);break}else{if(m[u]+=i,m[u]!=$e)break;m[u--]=0,i=1}for(n=m.length;m[--n]===0;)m.pop();if(ke&&(e.e>Qa||e.e<-Qa))throw Error(vc+_e(e));return e}function ky(e,t){var r,n,a,i,o,l,c,d,u,m,h=e.constructor,v=h.precision;if(!e.s||!t.s)return t.s?t.s=-t.s:t=new h(e),ke?pe(t,v):t;if(c=e.d,m=t.d,n=t.e,d=e.e,c=c.slice(),o=d-n,o){for(u=o<0,u?(r=c,o=-o,l=m.length):(r=m,n=d,l=c.length),a=Math.max(Math.ceil(v/je),l)+2,o>a&&(o=a,r.length=1),r.reverse(),a=o;a--;)r.push(0);r.reverse()}else{for(a=c.length,l=m.length,u=a<l,u&&(l=a),a=0;a<l;a++)if(c[a]!=m[a]){u=c[a]<m[a];break}o=0}for(u&&(r=c,c=m,m=r,t.s=-t.s),l=c.length,a=m.length-l;a>0;--a)c[l++]=0;for(a=m.length;a>o;){if(c[--a]<m[a]){for(i=a;i&&c[--i]===0;)c[i]=$e-1;--c[i],c[a]+=$e}c[a]-=m[a]}for(;c[--l]===0;)c.pop();for(;c[0]===0;c.shift())--n;return c[0]?(t.d=c,t.e=n,ke?pe(t,v):t):new h(0)}function _r(e,t,r){var n,a=_e(e),i=_t(e.d),o=i.length;return t?(r&&(n=r-o)>0?i=i.charAt(0)+"."+i.slice(1)+er(n):o>1&&(i=i.charAt(0)+"."+i.slice(1)),i=i+(a<0?"e":"e+")+a):a<0?(i="0."+er(-a-1)+i,r&&(n=r-o)>0&&(i+=er(n))):a>=o?(i+=er(a+1-o),r&&(n=r-a-1)>0&&(i=i+"."+er(n))):((n=a+1)<o&&(i=i.slice(0,n)+"."+i.slice(n)),r&&(n=r-o)>0&&(a+1===o&&(i+="."),i+=er(n))),e.s<0?"-"+i:i}function em(e,t){if(e.length>t)return e.length=t,!0}function Py(e){var t,r,n;function a(i){var o=this;if(!(o instanceof a))return new a(i);if(o.constructor=a,i instanceof a){o.s=i.s,o.e=i.e,o.d=(i=i.d)?i.slice():i;return}if(typeof i=="number"){if(i*0!==0)throw Error(kr+i);if(i>0)o.s=1;else if(i<0)i=-i,o.s=-1;else{o.s=0,o.e=0,o.d=[0];return}if(i===~~i&&i<1e7){o.e=0,o.d=[i];return}return Qf(o,i.toString())}else if(typeof i!="string")throw Error(kr+i);if(i.charCodeAt(0)===45?(i=i.slice(1),o.s=-1):o.s=1,EN.test(i))Qf(o,i);else throw Error(kr+i)}if(a.prototype=H,a.ROUND_UP=0,a.ROUND_DOWN=1,a.ROUND_CEIL=2,a.ROUND_FLOOR=3,a.ROUND_HALF_UP=4,a.ROUND_HALF_DOWN=5,a.ROUND_HALF_EVEN=6,a.ROUND_HALF_CEIL=7,a.ROUND_HALF_FLOOR=8,a.clone=Py,a.config=a.set=_N,e===void 0&&(e={}),e)for(n=["precision","rounding","toExpNeg","toExpPos","LN10"],t=0;t<n.length;)e.hasOwnProperty(r=n[t++])||(e[r]=this[r]);return a.config(e),a}function _N(e){if(!e||typeof e!="object")throw Error(gt+"Object expected");var t,r,n,a=["precision",1,sn,"rounding",0,8,"toExpNeg",-1/0,0,"toExpPos",0,1/0];for(t=0;t<a.length;t+=3)if((n=e[r=a[t]])!==void 0)if(on(n)===n&&n>=a[t+1]&&n<=a[t+2])this[r]=n;else throw Error(kr+r+": "+n);if((n=e[r="LN10"])!==void 0)if(n==Math.LN10)this[r]=new this(n);else throw Error(kr+r+": "+n);return this}var hc=Py(AN);it=new hc(1);const oe=hc;function Sy(e){var t;return e===0?t=1:t=Math.floor(new oe(e).abs().log(10).toNumber())+1,t}function Ny(e,t,r){for(var n=new oe(e),a=0,i=[];n.lt(t)&&a<1e5;)i.push(n.toNumber()),n=n.add(r),a++;return i}var Oy=e=>{var[t,r]=e,[n,a]=[t,r];return t>r&&([n,a]=[r,t]),[n,a]},pc=(e,t,r)=>{if(e.lte(0))return new oe(0);var n=Sy(e.toNumber()),a=new oe(10).pow(n),i=e.div(a),o=n!==1?.05:.1,l=new oe(Math.ceil(i.div(o).toNumber())).add(r).mul(o),c=l.mul(a);return t?new oe(c.toNumber()):new oe(Math.ceil(c.toNumber()))},Ay=(e,t,r)=>{var n;if(e.lte(0))return new oe(0);var a=[1,2,2.5,5],i=e.toNumber(),o=Math.floor(new oe(i).abs().log(10).toNumber()),l=new oe(10).pow(o),c=e.div(l).toNumber(),d=a.findIndex(v=>v>=c-1e-10);if(d===-1&&(l=l.mul(10),d=0),d+=r,d>=a.length){var u=Math.floor(d/a.length);d%=a.length,l=l.mul(new oe(10).pow(u))}var m=(n=a[d])!==null&&n!==void 0?n:1,h=new oe(m).mul(l);return t?h:new oe(Math.ceil(h.toNumber()))},MN=(e,t,r)=>{var n=new oe(1),a=new oe(e);if(!a.isint()&&r){var i=Math.abs(e);i<1?(n=new oe(10).pow(Sy(e)-1),a=new oe(Math.floor(a.div(n).toNumber())).mul(n)):i>1&&(a=new oe(Math.floor(e)))}else e===0?a=new oe(Math.floor((t-1)/2)):r||(a=new oe(Math.floor(e)));for(var o=Math.floor((t-1)/2),l=[],c=0;c<t;c++)l.push(a.add(new oe(c-o).mul(n)).toNumber());return l},Ey=function(t,r,n,a){var i=arguments.length>4&&arguments[4]!==void 0?arguments[4]:0,o=arguments.length>5&&arguments[5]!==void 0?arguments[5]:pc;if(!Number.isFinite((r-t)/(n-1)))return{step:new oe(0),tickMin:new oe(0),tickMax:new oe(0)};var l=o(new oe(r).sub(t).div(n-1),a,i),c;t<=0&&r>=0?c=new oe(0):(c=new oe(t).add(r).div(2),c=c.sub(new oe(c).mod(l)));var d=Math.ceil(c.sub(t).div(l).toNumber()),u=Math.ceil(new oe(r).sub(c).div(l).toNumber()),m=d+u+1;return m>n?Ey(t,r,n,a,i+1,o):(m<n&&(u=r>0?u+(n-m):u,d=r>0?d:d+(n-m)),{step:l,tickMin:c.sub(new oe(d).mul(l)),tickMax:c.add(new oe(u).mul(l))})},tm=function(t){var[r,n]=t,a=arguments.length>1&&arguments[1]!==void 0?arguments[1]:6,i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0,o=arguments.length>3&&arguments[3]!==void 0?arguments[3]:"auto",l=Math.max(a,2),[c,d]=Oy([r,n]);if(c===-1/0||d===1/0){var u=d===1/0?[c,...Array(a-1).fill(1/0)]:[...Array(a-1).fill(-1/0),d];return r>n?u.reverse():u}if(c===d)return MN(c,a,i);var m=o==="snap125"?Ay:pc,{step:h,tickMin:v,tickMax:g}=Ey(c,d,l,i,0,m),y=Ny(v,g.add(new oe(.1).mul(h)),h);return r>n?y.reverse():y},rm=function(t,r){var[n,a]=t,i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0,o=arguments.length>3&&arguments[3]!==void 0?arguments[3]:"auto",[l,c]=Oy([n,a]);if(l===-1/0||c===1/0)return[n,a];if(l===c)return[l];var d=o==="snap125"?Ay:pc,u=Math.max(r,2),m=d(new oe(c).sub(l).div(u-1),i,0),h=[...Ny(new oe(l),new oe(c),m),c];return i===!1&&(h=h.map(v=>Math.round(v))),n>a?h.reverse():h},TN=e=>e.rootProps.barCategoryGap,Zn=e=>e.rootProps.stackOffset,_y=e=>e.rootProps.reverseStackOrder,yc=e=>e.options.chartName,gc=e=>e.rootProps.syncId,My=e=>e.rootProps.syncMethod,bc=e=>e.options.eventEmitter,Ve={grid:-100,barBackground:-50,area:100,cursorRectangle:200,bar:300,line:400,axis:500,scatter:600,activeBar:1e3,cursorLine:1100,activeDot:1200,label:2e3},fr={allowDecimals:!1,allowDataOverflow:!1,angleAxisId:0,reversed:!1,scale:"auto",tick:!0,type:"auto"},Ot={allowDataOverflow:!1,allowDecimals:!1,allowDuplicatedCategory:!0,includeHidden:!1,radiusAxisId:0,reversed:!1,scale:"auto",tick:!0,tickCount:5,type:"auto"},Hi=(e,t)=>{if(!(!e||!t))return e!=null&&e.reversed?[t[1],t[0]]:t};function Gi(e,t,r){if(r!=="auto")return r;if(e!=null)return Wt(e,t)?"category":"number"}function nm(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),r.push.apply(r,n)}return r}function ei(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?nm(Object(r),!0).forEach(function(n){IN(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):nm(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function IN(e,t,r){return(t=DN(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function DN(e){var t=LN(e,"string");return typeof t=="symbol"?t:t+""}function LN(e,t){if(typeof e!="object"||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var n=r.call(e,t);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}var am={allowDataOverflow:fr.allowDataOverflow,allowDecimals:fr.allowDecimals,allowDuplicatedCategory:!1,dataKey:void 0,domain:void 0,id:fr.angleAxisId,includeHidden:!1,name:void 0,reversed:fr.reversed,scale:fr.scale,tick:fr.tick,tickCount:void 0,ticks:void 0,type:fr.type,unit:void 0,niceTicks:"auto"},im={allowDataOverflow:Ot.allowDataOverflow,allowDecimals:Ot.allowDecimals,allowDuplicatedCategory:Ot.allowDuplicatedCategory,dataKey:void 0,domain:void 0,id:Ot.radiusAxisId,includeHidden:Ot.includeHidden,name:void 0,reversed:Ot.reversed,scale:Ot.scale,tick:Ot.tick,tickCount:Ot.tickCount,ticks:void 0,type:Ot.type,unit:void 0,niceTicks:"auto"},RN=(e,t)=>{if(t!=null)return e.polarAxis.angleAxis[t]},xc=M([RN,Zp],(e,t)=>{var r;if(e!=null)return e;var n=(r=Gi(t,"angleAxis",am.type))!==null&&r!==void 0?r:"category";return ei(ei({},am),{},{type:n})}),$N=(e,t)=>e.polarAxis.radiusAxis[t],jc=M([$N,Zp],(e,t)=>{var r;if(e!=null)return e;var n=(r=Gi(t,"radiusAxis",im.type))!==null&&r!==void 0?r:"category";return ei(ei({},im),{},{type:n})}),Xi=e=>e.polarOptions,wc=M([Ht,Gt,Be],hy),Ty=M([Xi,wc],(e,t)=>{if(e!=null)return ot(e.innerRadius,t,0)}),Iy=M([Xi,wc],(e,t)=>{if(e!=null)return ot(e.outerRadius,t,t*.8)}),BN=e=>{if(e==null)return[0,0];var{startAngle:t,endAngle:r}=e;return[t,r]},Dy=M([Xi],BN);M([xc,Dy],Hi);var Ly=M([wc,Ty,Iy],(e,t,r)=>{if(!(e==null||t==null||r==null))return[t,r]});M([jc,Ly],Hi);var Ry=M([ge,Xi,Ty,Iy,Ht,Gt],(e,t,r,n,a,i)=>{if(!(e!=="centric"&&e!=="radial"||t==null||r==null||n==null)){var{cx:o,cy:l,startAngle:c,endAngle:d}=t;return{cx:ot(o,a,a/2),cy:ot(l,i,i/2),innerRadius:r,outerRadius:n,startAngle:c,endAngle:d,clockWise:!1}}}),Pe=(e,t)=>t,Jn=(e,t,r)=>r;function $y(e){return e?.id}function By(e,t,r){var{chartData:n=[]}=t,{allowDuplicatedCategory:a,dataKey:i}=r,o=new Map;return e.forEach(l=>{var c,d=(c=l.data)!==null&&c!==void 0?c:n;if(!(d==null||d.length===0)){var u=$y(l);d.forEach((m,h)=>{var v=i==null||a?h:String(he(m,i,null)),g=he(m,l.dataKey,0),y;o.has(v)?y=o.get(v):y={},Object.assign(y,{[u]:g}),o.set(v,y)})}}),Array.from(o.values())}function Cc(e){return"stackId"in e&&e.stackId!=null&&e.dataKey!=null}var Yi=(e,t)=>e===t?!0:e==null||t==null?!1:e[0]===t[0]&&e[1]===t[1];function Zi(e,t){return Array.isArray(e)&&Array.isArray(t)&&e.length===0&&t.length===0?!0:e===t}function FN(e,t){if(e.length===t.length){for(var r=0;r<e.length;r++)if(e[r]!==t[r])return!1;return!0}return!1}var Fe=e=>{var t=ge(e);return t==="horizontal"?"xAxis":t==="vertical"?"yAxis":t==="centric"?"angleAxis":"radiusAxis"},ln=e=>e.tooltip.settings.axisId;function kc(e){if(e!=null){var t=e.ticks,r=e.bandwidth,n=e.range(),a=[Math.min(...n),Math.max(...n)];return{domain:()=>e.domain(),range:(function(i){function o(){return i.apply(this,arguments)}return o.toString=function(){return i.toString()},o})(()=>a),rangeMin:()=>a[0],rangeMax:()=>a[1],isInRange(i){var o=a[0],l=a[1];return o<=l?i>=o&&i<=l:i>=l&&i<=o},bandwidth:r?()=>r.call(e):void 0,ticks:t?i=>t.call(e,i):void 0,map:(i,o)=>{var l=e(i);if(l!=null){if(e.bandwidth&&o!==null&&o!==void 0&&o.position){var c=e.bandwidth();switch(o.position){case"middle":l+=c/2;break;case"end":l+=c;break}}return l}}}}}var Fy=(e,t)=>{if(t!=null)switch(e){case"linear":{if(!Mt(t)){for(var r,n,a=0;a<t.length;a++){var i=t[a];ue(i)&&((r===void 0||i<r)&&(r=i),(n===void 0||i>n)&&(n=i))}return r!==void 0&&n!==void 0?[r,n]:void 0}return t}default:return t}};const zy=Object.freeze(Object.defineProperty({__proto__:null,scaleBand:Tj,scaleDiverging:Th,scaleDivergingLog:Ih,scaleDivergingPow:Vl,scaleDivergingSqrt:E0,scaleDivergingSymlog:Dh,scaleIdentity:wh,scaleImplicit:t0,scaleLinear:$j,scaleLog:Ch,scaleOrdinal:r0,scalePoint:Ij,scalePow:zl,scaleQuantile:Sh,scaleQuantize:Nh,scaleRadial:Ph,scaleSequential:Ah,scaleSequentialLog:Eh,scaleSequentialPow:Kl,scaleSequentialQuantile:Mh,scaleSequentialSqrt:A0,scaleSequentialSymlog:_h,scaleSqrt:S0,scaleSymlog:kh,scaleThreshold:Oh,scaleTime:Jj,scaleUtc:O0,tickFormat:Bj},Symbol.toStringTag,{value:"Module"}));function zN(e){var t=zy;if(e in t&&typeof t[e]=="function")return t[e]();var r="scale".concat(zn(e));if(r in t&&typeof t[r]=="function")return t[r]()}function sm(e,t,r){if(typeof e=="function")return e.copy().domain(t).range(r);if(e!=null){var n=zN(e);if(n!=null)return n.domain(t).range(r),n}}function Pc(e,t,r,n){if(!(r==null||n==null))return typeof e.scale=="function"?sm(e.scale,r,n):sm(t,r,n)}function KN(e){return"scale".concat(zn(e))}function VN(e){return KN(e)in zy}var Ky=(e,t,r)=>{if(e!=null){var{scale:n,type:a}=e;if(n==="auto")return a==="category"&&r&&(r.indexOf("LineChart")>=0||r.indexOf("AreaChart")>=0||r.indexOf("ComposedChart")>=0&&!t)?"point":a==="category"?"band":"linear";if(typeof n=="string")return VN(n)?n:"point"}};function qN(e,t){for(var r=0,n=e.length,a=e[0]<e[e.length-1];r<n;){var i=Math.floor((r+n)/2);(a?e[i]<t:e[i]>t)?r=i+1:n=i}return r}function Vy(e,t){if(e){var r=t??e.domain(),n=r.map(i=>{var o;return(o=e(i))!==null&&o!==void 0?o:0}),a=e.range();if(!(r.length===0||a.length<2))return i=>{var o,l,c=qN(n,i);if(c<=0)return r[0];if(c>=r.length)return r[r.length-1];var d=(o=n[c-1])!==null&&o!==void 0?o:0,u=(l=n[c])!==null&&l!==void 0?l:0;return Math.abs(i-d)<=Math.abs(i-u)?r[c-1]:r[c]}}}function UN(e){if(e!=null)return"invert"in e&&typeof e.invert=="function"?e.invert.bind(e):Vy(e,void 0)}function om(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),r.push.apply(r,n)}return r}function ti(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?om(Object(r),!0).forEach(function(n){WN(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):om(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function WN(e,t,r){return(t=HN(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function HN(e){var t=GN(e,"string");return typeof t=="symbol"?t:t+""}function GN(e,t){if(typeof e!="object"||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var n=r.call(e,t);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}var fl=[0,"auto"],Me={allowDataOverflow:!1,allowDecimals:!0,allowDuplicatedCategory:!0,angle:0,dataKey:void 0,domain:void 0,height:30,hide:!0,id:0,includeHidden:!1,interval:"preserveEnd",minTickGap:5,mirror:!1,name:void 0,orientation:"bottom",padding:{left:0,right:0},reversed:!1,scale:"auto",tick:!0,tickCount:5,tickFormatter:void 0,ticks:void 0,type:"category",unit:void 0,niceTicks:"auto"},qy=(e,t)=>e.cartesianAxis.xAxis[t],Xt=(e,t)=>{var r=qy(e,t);return r??Me},Te={allowDataOverflow:!1,allowDecimals:!0,allowDuplicatedCategory:!0,angle:0,dataKey:void 0,domain:fl,hide:!0,id:0,includeHidden:!1,interval:"preserveEnd",minTickGap:5,mirror:!1,name:void 0,orientation:"left",padding:{top:0,bottom:0},reversed:!1,scale:"auto",tick:!0,tickCount:5,tickFormatter:void 0,ticks:void 0,type:"number",unit:void 0,niceTicks:"auto",width:Un},Uy=(e,t)=>e.cartesianAxis.yAxis[t],Yt=(e,t)=>{var r=Uy(e,t);return r??Te},XN={domain:[0,"auto"],includeHidden:!1,reversed:!1,allowDataOverflow:!1,allowDuplicatedCategory:!1,dataKey:void 0,id:0,name:"",range:[64,64],scale:"auto",type:"number",unit:""},Sc=(e,t)=>{var r=e.cartesianAxis.zAxis[t];return r??XN},Oe=(e,t,r)=>{switch(t){case"xAxis":return Xt(e,r);case"yAxis":return Yt(e,r);case"zAxis":return Sc(e,r);case"angleAxis":return xc(e,r);case"radiusAxis":return jc(e,r);default:throw new Error("Unexpected axis type: ".concat(t))}},YN=(e,t,r)=>{switch(t){case"xAxis":return Xt(e,r);case"yAxis":return Yt(e,r);default:throw new Error("Unexpected axis type: ".concat(t))}},cn=(e,t,r)=>{switch(t){case"xAxis":return Xt(e,r);case"yAxis":return Yt(e,r);case"angleAxis":return xc(e,r);case"radiusAxis":return jc(e,r);default:throw new Error("Unexpected axis type: ".concat(t))}},Wy=e=>e.graphicalItems.cartesianItems.some(t=>t.type==="bar")||e.graphicalItems.polarItems.some(t=>t.type==="radialBar");function Nc(e,t){return r=>{switch(e){case"xAxis":return"xAxisId"in r&&r.xAxisId===t;case"yAxis":return"yAxisId"in r&&r.yAxisId===t;case"zAxis":return"zAxisId"in r&&r.zAxisId===t;case"angleAxis":return"angleAxisId"in r&&r.angleAxisId===t;case"radiusAxis":return"radiusAxisId"in r&&r.radiusAxisId===t;default:return!1}}}var Hy=e=>e.graphicalItems.cartesianItems,ZN=M([Pe,Jn],Nc),Oc=(e,t,r)=>e.filter(r).filter(n=>t?.includeHidden===!0?!0:!n.hide),un=M([Hy,Oe,ZN],Oc,{memoizeOptions:{resultEqualityCheck:Zi}}),Gy=M([un],e=>e.filter(t=>t.type==="area"||t.type==="bar").filter(Cc)),Xy=e=>e.filter(t=>!("stackId"in t)||t.stackId===void 0),JN=M([un],Xy),Ac=e=>e.map(t=>t.data).filter(Boolean).flat(1),QN=M([un],e=>e.some(t=>!t.data)),Yy=M([un],Ac,{memoizeOptions:{resultEqualityCheck:Zi}}),Ec=(e,t)=>{var{chartData:r=[],dataStartIndex:n,dataEndIndex:a}=t;return e.length>0?e:r.slice(n,a+1)},_c=M([Yy,Yn],Ec),Zy=(e,t,r)=>t?.dataKey!=null?e.map(n=>({value:he(n,t.dataKey)})):r.length>0?r.map(n=>n.dataKey).flatMap(n=>e.map(a=>({value:he(a,n)}))):e.map(n=>({value:n})),Jy=(e,t,r,n,a,i)=>{var{chartData:o=[],dataStartIndex:l,dataEndIndex:c}=n,d=Zy(e,t,r);if(a&&t?.dataKey!=null&&i.length>0){var u=o.slice(l,c+1),m=u.map(h=>({value:he(h,t.dataKey)})).filter(h=>h.value!=null);return[...m,...d]}return d},Qn=M([_c,Oe,un,Yn,QN,Yy],Jy);function Hr(e){if(Tt(e)||e instanceof Date){var t=Number(e);if(ue(t))return t}}function lm(e){if(Array.isArray(e)){var t=[Hr(e[0]),Hr(e[1])];return Mt(t)?t:void 0}var r=Hr(e);if(r!=null)return[r,r]}function Dt(e){return e.map(Hr).filter(tt)}function eO(e,t){var r=Hr(e),n=Hr(t);return r==null&&n==null?0:r==null?-1:n==null?1:r-n}var tO=M([Qn],e=>e?.map(t=>t.value).sort(eO));function Qy(e,t){switch(e){case"xAxis":return t.direction==="x";case"yAxis":return t.direction==="y";default:return!1}}function rO(e,t,r){if(!r)return[];if(!r.length)return[];var n;if(typeof t=="number"&&!Vt(t))n=t;else if(Array.isArray(t)){var a=Dt(t);a.length>0&&(n=Math.max(...a))}return n==null?[]:Dt(r.flatMap(i=>{var o=he(e,i.dataKey),l,c;if(Array.isArray(o)?[l,c]=o:l=c=o,!(!ue(l)||!ue(c)))return[n-l,n+c]}))}var Re=e=>{var t=Fe(e),r=ln(e);return cn(e,t,r)},en=M([Re],e=>e?.dataKey),nO=M([Gy,Yn,Re],By),eg=(e,t,r,n)=>{var a={},i=t.reduce((o,l)=>{if(l.stackId==null)return o;var c=o[l.stackId];return c==null&&(c=[]),c.push(l),o[l.stackId]=c,o},a);return Object.fromEntries(Object.entries(i).map(o=>{var[l,c]=o,d=n?[...c].reverse():c,u=d.map($y);return[l,{stackedData:$k(e,u,r),graphicalItems:d}]}))},aO=M([nO,Gy,Zn,_y],eg),tg=(e,t,r,n)=>{var{dataStartIndex:a,dataEndIndex:i}=t;if(n==null&&r!=="zAxis"){var o=zk(e,a,i);if(!(o!=null&&o[0]===0&&o[1]===0))return o}},iO=M([Oe],e=>e.allowDataOverflow),Mc=e=>{var t;if(e==null||!("domain"in e))return fl;if(e.domain!=null)return e.domain;if("ticks"in e&&e.ticks!=null){if(e.type==="number"){var r=Dt(e.ticks);return[Math.min(...r),Math.max(...r)]}if(e.type==="category")return e.ticks.map(String)}return(t=e?.domain)!==null&&t!==void 0?t:fl},Tc=M([Oe],Mc),Ic=M([Tc,iO],xy),sO=M([aO,Lt,Pe,Ic],tg,{memoizeOptions:{resultEqualityCheck:Yi}}),Ji=e=>e.errorBars,oO=(e,t,r)=>e.flatMap(n=>t[n.id]).filter(Boolean).filter(n=>Qy(r,n)),ri=function(){for(var t=arguments.length,r=new Array(t),n=0;n<t;n++)r[n]=arguments[n];var a=r.filter(Boolean);if(a.length!==0){var i=a.flat(),o=Math.min(...i),l=Math.max(...i);return[o,l]}},Dc=function(t,r,n,a,i){var o=arguments.length>5&&arguments[5]!==void 0?arguments[5]:[],l,c;if(n.length>0&&n.forEach(d=>{var u,m=d.data!=null?[...d.data]:o,h=(u=a[d.id])===null||u===void 0?void 0:u.filter(v=>Qy(i,v));m.forEach(v=>{var g,y=he(v,(g=r.dataKey)!==null&&g!==void 0?g:d.dataKey),p=rO(v,y,h);if(p.length>=2){var b=Math.min(...p),j=Math.max(...p);(l==null||b<l)&&(l=b),(c==null||j>c)&&(c=j)}var x=lm(y);x!=null&&(l=l==null?x[0]:Math.min(l,x[0]),c=c==null?x[1]:Math.max(c,x[1]))})}),r?.dataKey!=null&&n.length===0&&t.forEach(d=>{var u=lm(he(d,r.dataKey));u!=null&&(l=l==null?u[0]:Math.min(l,u[0]),c=c==null?u[1]:Math.max(c,u[1]))}),ue(l)&&ue(c))return[l,c]},lO=M([_c,Oe,JN,Ji,Pe,PN],Dc,{memoizeOptions:{resultEqualityCheck:Yi}});function cO(e){var{value:t}=e;if(Tt(t)||t instanceof Date)return t}var uO=(e,t,r)=>{var n=e.map(cO).filter(a=>a!=null);return r&&(t.dataKey==null||t.allowDuplicatedCategory&&Wh(n))?by(0,e.length):t.allowDuplicatedCategory?n:Array.from(new Set(n))},rg=e=>e.referenceElements.dots,dn=(e,t,r)=>e.filter(n=>n.ifOverflow==="extendDomain").filter(n=>t==="xAxis"?n.xAxisId===r:n.yAxisId===r),dO=M([rg,Pe,Jn],dn),ng=e=>e.referenceElements.areas,fO=M([ng,Pe,Jn],dn),ag=e=>e.referenceElements.lines,mO=M([ag,Pe,Jn],dn),ig=(e,t)=>{if(e!=null){var r=Dt(e.map(n=>t==="xAxis"?n.x:n.y));if(r.length!==0)return[Math.min(...r),Math.max(...r)]}},vO=M(dO,Pe,ig),sg=(e,t)=>{if(e!=null){var r=Dt(e.flatMap(n=>[t==="xAxis"?n.x1:n.y1,t==="xAxis"?n.x2:n.y2]));if(r.length!==0)return[Math.min(...r),Math.max(...r)]}},hO=M([fO,Pe],sg);function pO(e){var t;if(e.x!=null)return Dt([e.x]);var r=(t=e.segment)===null||t===void 0?void 0:t.map(n=>n.x);return r==null||r.length===0?[]:Dt(r)}function yO(e){var t;if(e.y!=null)return Dt([e.y]);var r=(t=e.segment)===null||t===void 0?void 0:t.map(n=>n.y);return r==null||r.length===0?[]:Dt(r)}var og=(e,t)=>{if(e!=null){var r=e.flatMap(n=>t==="xAxis"?pO(n):yO(n));if(r.length!==0)return[Math.min(...r),Math.max(...r)]}},gO=M([mO,Pe],og),bO=M(vO,gO,hO,(e,t,r)=>ri(e,r,t)),Lc=(e,t,r,n,a,i,o,l)=>{if(r!=null)return r;var c=o==="vertical"&&l==="xAxis"||o==="horizontal"&&l==="yAxis",d=c?ri(n,i,a):ri(i,a);return ON(t,d,e.allowDataOverflow)},xO=M([Oe,Tc,Ic,sO,lO,bO,ge,Pe],Lc,{memoizeOptions:{resultEqualityCheck:Yi}}),jO=[0,1],Rc=(e,t,r,n,a,i,o)=>{if(!((e==null||r==null||r.length===0)&&o===void 0)){var{dataKey:l,type:c}=e,d=Wt(t,i);if(d&&l==null){var u;return by(0,(u=r?.length)!==null&&u!==void 0?u:0)}return c==="category"?uO(n,e,d):a==="expand"&&!d?jO:o}},$c=M([Oe,ge,_c,Qn,Zn,Pe,xO],Rc),lr=M([Oe,Wy,yc],Ky),Bc=(e,t,r)=>{var{niceTicks:n}=t;if(n!=="none"){var a=Mc(t),i=Array.isArray(a)&&(a[0]==="auto"||a[1]==="auto");if((n==="snap125"||n==="adaptive")&&t!=null&&t.tickCount&&Mt(e)){if(i)return tm(e,t.tickCount,t.allowDecimals,n);if(t.type==="number")return rm(e,t.tickCount,t.allowDecimals,n)}if(n==="auto"&&r==="linear"&&t!=null&&t.tickCount){if(i&&Mt(e))return tm(e,t.tickCount,t.allowDecimals,"adaptive");if(t.type==="number"&&Mt(e))return rm(e,t.tickCount,t.allowDecimals,"adaptive")}}},Fc=M([$c,cn,lr],Bc),zc=(e,t,r,n)=>{if(n!=="angleAxis"&&e?.type==="number"&&Mt(t)&&Array.isArray(r)&&r.length>0){var a,i,o=t[0],l=(a=r[0])!==null&&a!==void 0?a:0,c=t[1],d=(i=r[r.length-1])!==null&&i!==void 0?i:0;return[Math.min(o,l),Math.max(c,d)]}return t},wO=M([Oe,$c,Fc,Pe],zc),CO=M(Qn,Oe,(e,t)=>{if(!(!t||t.type!=="number")){var r=1/0,n=Array.from(Dt(e.map(m=>m.value))).sort((m,h)=>m-h),a=n[0],i=n[n.length-1];if(a==null||i==null)return 1/0;var o=i-a;if(o===0)return 1/0;for(var l=0;l<n.length-1;l++){var c=n[l],d=n[l+1];if(!(c==null||d==null)){var u=d-c;r=Math.min(r,u)}}return r/o}}),lg=M(CO,ge,TN,Be,(e,t,r,n,a)=>a,(e,t,r,n,a)=>{if(!ue(e))return 0;var i=t==="vertical"?n.height:n.width;if(a==="gap")return e*i/2;if(a==="no-gap"){var o=ot(r,e*i),l=e*i/2;return l-o-(l-o)/i*o}return 0}),kO=(e,t,r)=>{var n=Xt(e,t);return n==null||typeof n.padding!="string"?0:lg(e,"xAxis",t,r,n.padding)},PO=(e,t,r)=>{var n=Yt(e,t);return n==null||typeof n.padding!="string"?0:lg(e,"yAxis",t,r,n.padding)},SO=M(Xt,kO,(e,t)=>{var r,n;if(e==null)return{left:0,right:0};var{padding:a}=e;return typeof a=="string"?{left:t,right:t}:{left:((r=a.left)!==null&&r!==void 0?r:0)+t,right:((n=a.right)!==null&&n!==void 0?n:0)+t}}),NO=M(Yt,PO,(e,t)=>{var r,n;if(e==null)return{top:0,bottom:0};var{padding:a}=e;return typeof a=="string"?{top:t,bottom:t}:{top:((r=a.top)!==null&&r!==void 0?r:0)+t,bottom:((n=a.bottom)!==null&&n!==void 0?n:0)+t}}),OO=M([Be,SO,Bi,$i,(e,t,r)=>r],(e,t,r,n,a)=>{var{padding:i}=n;return a?[i.left,r.width-i.right]:[e.left+t.left,e.left+e.width-t.right]}),AO=M([Be,ge,NO,Bi,$i,(e,t,r)=>r],(e,t,r,n,a,i)=>{var{padding:o}=a;return i?[n.height-o.bottom,o.top]:t==="horizontal"?[e.top+e.height-r.bottom,e.top+r.top]:[e.top+r.top,e.top+e.height-r.bottom]}),ea=(e,t,r,n)=>{var a;switch(t){case"xAxis":return OO(e,r,n);case"yAxis":return AO(e,r,n);case"zAxis":return(a=Sc(e,r))===null||a===void 0?void 0:a.range;case"angleAxis":return Dy(e);case"radiusAxis":return Ly(e,r);default:return}},cg=M([Oe,ea],Hi),EO=M([lr,wO],Fy),Kc=M([Oe,lr,EO,cg],Pc),ug=(e,t,r,n)=>{if(!(r==null||r.dataKey==null)){var{type:a,scale:i}=r,o=Wt(e,n);if(o&&(a==="number"||i!=="auto"))return t.map(l=>l.value)}},Vc=M([ge,Qn,cn,Pe],ug),Qi=M([Kc],kc);M([Kc],UN);M([Kc,tO],Vy);M([un,Ji,Pe],oO);function dg(e,t){return e.id<t.id?-1:e.id>t.id?1:0}var es=(e,t)=>t,ts=(e,t,r)=>r,_O=M(Li,es,ts,(e,t,r)=>e.filter(n=>n.orientation===t).filter(n=>n.mirror===r).sort(dg)),MO=M(Ri,es,ts,(e,t,r)=>e.filter(n=>n.orientation===t).filter(n=>n.mirror===r).sort(dg)),fg=(e,t)=>({width:e.width,height:t.height}),TO=(e,t)=>{var r=typeof t.width=="number"?t.width:Un;return{width:r,height:e.height}},IO=M(Be,Xt,fg),DO=(e,t,r)=>{switch(t){case"top":return e.top;case"bottom":return r-e.bottom;default:return 0}},LO=(e,t,r)=>{switch(t){case"left":return e.left;case"right":return r-e.right;default:return 0}},RO=M(Gt,Be,_O,es,ts,(e,t,r,n,a)=>{var i={},o;return r.forEach(l=>{var c=fg(t,l);o==null&&(o=DO(t,n,e));var d=n==="top"&&!a||n==="bottom"&&a;i[l.id]=o-Number(d)*c.height,o+=(d?-1:1)*c.height}),i}),$O=M(Ht,Be,MO,es,ts,(e,t,r,n,a)=>{var i={},o;return r.forEach(l=>{var c=TO(t,l);o==null&&(o=LO(t,n,e));var d=n==="left"&&!a||n==="right"&&a;i[l.id]=o-Number(d)*c.width,o+=(d?-1:1)*c.width}),i}),BO=(e,t)=>{var r=Xt(e,t);if(r!=null)return RO(e,r.orientation,r.mirror)},FO=M([Be,Xt,BO,(e,t)=>t],(e,t,r,n)=>{if(t!=null){var a=r?.[n];return a==null?{x:e.left,y:0}:{x:e.left,y:a}}}),zO=(e,t)=>{var r=Yt(e,t);if(r!=null)return $O(e,r.orientation,r.mirror)},KO=M([Be,Yt,zO,(e,t)=>t],(e,t,r,n)=>{if(t!=null){var a=r?.[n];return a==null?{x:0,y:e.top}:{x:a,y:e.top}}}),VO=M(Be,Yt,(e,t)=>{var r=typeof t.width=="number"?t.width:Un;return{width:r,height:e.height}}),mg=(e,t,r,n)=>{if(r!=null){var{allowDuplicatedCategory:a,type:i,dataKey:o}=r,l=Wt(e,n),c=t.map(u=>u.value),d=c.filter(u=>u!=null);if(o&&l&&i==="category"&&a&&Wh(d))return c}},qc=M([ge,Qn,Oe,Pe],mg),cm=M([ge,YN,lr,Qi,qc,Vc,ea,Fc,Pe],(e,t,r,n,a,i,o,l,c)=>{if(t!=null){var d=Wt(e,c);return{angle:t.angle,interval:t.interval,minTickGap:t.minTickGap,orientation:t.orientation,tick:t.tick,tickCount:t.tickCount,tickFormatter:t.tickFormatter,ticks:t.ticks,type:t.type,unit:t.unit,axisType:c,categoricalDomain:i,duplicateDomain:a,isCategorical:d,niceTicks:l,range:o,realScaleType:r,scale:n}}}),qO=(e,t,r,n,a,i,o,l,c)=>{if(!(t==null||n==null)){var d=Wt(e,c),{type:u,ticks:m,tickCount:h}=t,v=r==="scaleBand"&&typeof n.bandwidth=="function"?n.bandwidth()/2:2,g=u==="category"&&n.bandwidth?n.bandwidth()/v:0;g=c==="angleAxis"&&i!=null&&i.length>=2?Ge(i[0]-i[1])*2*g:g;var y=m||a;return y?y.map((p,b)=>{var j=o?o.indexOf(p):p,x=n.map(j);return ue(x)?{index:b,coordinate:x+g,value:p,offset:g}:null}).filter(tt):d&&l?l.map((p,b)=>{var j=n.map(p);return ue(j)?{coordinate:j+g,value:p,index:b,offset:g}:null}).filter(tt):n.ticks?n.ticks(h).map((p,b)=>{var j=n.map(p);return ue(j)?{coordinate:j+g,value:p,index:b,offset:g}:null}).filter(tt):n.domain().map((p,b)=>{var j=n.map(p);return ue(j)?{coordinate:j+g,value:o?o[p]:p,index:b,offset:g}:null}).filter(tt)}},vg=M([ge,cn,lr,Qi,Fc,ea,qc,Vc,Pe],qO),UO=(e,t,r,n,a,i,o)=>{if(!(t==null||r==null||n==null||n[0]===n[1])){var l=Wt(e,o),{tickCount:c}=t,d=0;return d=o==="angleAxis"&&n?.length>=2?Ge(n[0]-n[1])*2*d:d,l&&i?i.map((u,m)=>{var h=r.map(u);return ue(h)?{coordinate:h+d,value:u,index:m,offset:d}:null}).filter(tt):r.ticks?r.ticks(c).map((u,m)=>{var h=r.map(u);return ue(h)?{coordinate:h+d,value:u,index:m,offset:d}:null}).filter(tt):r.domain().map((u,m)=>{var h=r.map(u);return ue(h)?{coordinate:h+d,value:a?a[u]:u,index:m,offset:d}:null}).filter(tt)}},hg=M([ge,cn,Qi,ea,qc,Vc,Pe],UO),pg=M(Oe,Qi,(e,t)=>{if(!(e==null||t==null))return ti(ti({},e),{},{scale:t})}),WO=M([Oe,lr,$c,cg],Pc),HO=M([WO],kc);M((e,t,r)=>Sc(e,r),HO,(e,t)=>{if(!(e==null||t==null))return ti(ti({},e),{},{scale:t})});var GO=M([ge,Li,Ri],(e,t,r)=>{switch(e){case"horizontal":return t.some(n=>n.reversed)?"right-to-left":"left-to-right";case"vertical":return r.some(n=>n.reversed)?"bottom-to-top":"top-to-bottom";case"centric":case"radial":return"left-to-right";default:return}}),XO=(e,t,r)=>{var n;return(n=e.renderedTicks[t])===null||n===void 0?void 0:n[r]};M([XO],e=>{if(!(!e||e.length===0))return t=>{var r,n=1/0,a=e[0];for(var i of e){var o=Math.abs(i.coordinate-t);o<n&&(n=o,a=i)}return(r=a)===null||r===void 0?void 0:r.value}});var yg=e=>e.options.defaultTooltipEventType,gg=e=>e.options.validateTooltipEventTypes;function bg(e,t,r){if(e==null)return t;var n=e?"axis":"item";return r==null?t:r.includes(n)?n:t}function ta(e,t){var r=yg(e),n=gg(e);return bg(t,r,n)}function YO(e){return Y(t=>ta(t,e))}var xg=(e,t)=>{var r,n=Number(t);if(!(Vt(n)||t==null))return n>=0?e==null||(r=e[n])===null||r===void 0?void 0:r.value:void 0},ZO=e=>e.tooltip.settings,rr={active:!1,index:null,dataKey:void 0,graphicalItemId:void 0,coordinate:void 0},JO={itemInteraction:{click:rr,hover:rr},axisInteraction:{click:rr,hover:rr},keyboardInteraction:rr,syncInteraction:{active:!1,index:null,dataKey:void 0,label:void 0,coordinate:void 0,sourceViewBox:void 0,graphicalItemId:void 0},tooltipItemPayloads:[],settings:{shared:void 0,trigger:"hover",axisId:0,active:!1,defaultIndex:void 0}},jg=Ye({name:"tooltip",initialState:JO,reducers:{addTooltipEntrySettings:{reducer(e,t){e.tooltipItemPayloads.push(t.payload)},prepare:xe()},replaceTooltipEntrySettings:{reducer(e,t){var{prev:r,next:n}=t.payload,a=pt(e).tooltipItemPayloads.indexOf(r);a>-1&&(e.tooltipItemPayloads[a]=n)},prepare:xe()},removeTooltipEntrySettings:{reducer(e,t){var r=pt(e).tooltipItemPayloads.indexOf(t.payload);r>-1&&e.tooltipItemPayloads.splice(r,1)},prepare:xe()},setTooltipSettingsState(e,t){e.settings=t.payload},setActiveMouseOverItemIndex(e,t){e.syncInteraction.active=!1,e.syncInteraction.sourceViewBox=void 0,e.keyboardInteraction.active=!1,e.itemInteraction.hover.active=!0,e.itemInteraction.hover.index=t.payload.activeIndex,e.itemInteraction.hover.dataKey=t.payload.activeDataKey,e.itemInteraction.hover.graphicalItemId=t.payload.activeGraphicalItemId,e.itemInteraction.hover.coordinate=t.payload.activeCoordinate},mouseLeaveChart(e){e.itemInteraction.hover.active=!1,e.axisInteraction.hover.active=!1},mouseLeaveItem(e){e.itemInteraction.hover.active=!1},setActiveClickItemIndex(e,t){e.syncInteraction.active=!1,e.syncInteraction.sourceViewBox=void 0,e.itemInteraction.click.active=!0,e.keyboardInteraction.active=!1,e.itemInteraction.click.index=t.payload.activeIndex,e.itemInteraction.click.dataKey=t.payload.activeDataKey,e.itemInteraction.click.graphicalItemId=t.payload.activeGraphicalItemId,e.itemInteraction.click.coordinate=t.payload.activeCoordinate},setMouseOverAxisIndex(e,t){e.syncInteraction.active=!1,e.syncInteraction.sourceViewBox=void 0,e.axisInteraction.hover.active=!0,e.keyboardInteraction.active=!1,e.axisInteraction.hover.index=t.payload.activeIndex,e.axisInteraction.hover.dataKey=t.payload.activeDataKey,e.axisInteraction.hover.coordinate=t.payload.activeCoordinate},setMouseClickAxisIndex(e,t){e.syncInteraction.active=!1,e.syncInteraction.sourceViewBox=void 0,e.keyboardInteraction.active=!1,e.axisInteraction.click.active=!0,e.axisInteraction.click.index=t.payload.activeIndex,e.axisInteraction.click.dataKey=t.payload.activeDataKey,e.axisInteraction.click.coordinate=t.payload.activeCoordinate},setSyncInteraction(e,t){e.syncInteraction=t.payload},setKeyboardInteraction(e,t){e.keyboardInteraction.active=t.payload.active,e.keyboardInteraction.index=t.payload.activeIndex,e.keyboardInteraction.coordinate=t.payload.activeCoordinate}}}),{addTooltipEntrySettings:QO,replaceTooltipEntrySettings:eA,removeTooltipEntrySettings:tA,setTooltipSettingsState:rA,setActiveMouseOverItemIndex:wg,mouseLeaveItem:nA,mouseLeaveChart:Cg,setActiveClickItemIndex:aA,setMouseOverAxisIndex:kg,setMouseClickAxisIndex:iA,setSyncInteraction:kn,setKeyboardInteraction:ni}=jg.actions,sA=jg.reducer;function um(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),r.push.apply(r,n)}return r}function ma(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?um(Object(r),!0).forEach(function(n){oA(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):um(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function oA(e,t,r){return(t=lA(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function lA(e){var t=cA(e,"string");return typeof t=="symbol"?t:t+""}function cA(e,t){if(typeof e!="object"||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var n=r.call(e,t);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function uA(e,t,r){return t==="axis"?r==="click"?e.axisInteraction.click:e.axisInteraction.hover:r==="click"?e.itemInteraction.click:e.itemInteraction.hover}function dA(e){return e.index!=null}var Pg=(e,t,r,n)=>{if(t==null)return rr;var a=uA(e,t,r);if(a==null)return rr;if(a.active)return a;if(e.keyboardInteraction.active)return e.keyboardInteraction;if(e.syncInteraction.active&&e.syncInteraction.index!=null)return e.syncInteraction;var i=e.settings.active===!0;if(dA(a)){if(i)return ma(ma({},a),{},{active:!0})}else if(n!=null)return{active:!0,coordinate:void 0,dataKey:void 0,index:n,graphicalItemId:void 0};return ma(ma({},rr),{},{coordinate:a.coordinate})};function fA(e){if(typeof e=="number")return Number.isFinite(e)?e:void 0;if(e instanceof Date){var t=e.valueOf();return Number.isFinite(t)?t:void 0}var r=Number(e);return Number.isFinite(r)?r:void 0}function mA(e,t){var r=fA(e),n=t[0],a=t[1];if(r===void 0)return!1;var i=Math.min(n,a),o=Math.max(n,a);return r>=i&&r<=o}function vA(e,t,r){if(r==null||t==null)return!0;var n=he(e,t);return n==null||!Mt(r)?!0:mA(n,r)}var Nn=(e,t,r,n)=>{var a=e?.index;if(a==null)return null;var i=Number(a);if(!ue(i))return a;var o=0,l=1/0;t.length>0&&(l=t.length-1);var c=Math.max(o,Math.min(i,l)),d=t[c];return d==null||vA(d,r,n)?String(c):null},Sg=(e,t,r,n,a,i,o)=>{if(i!=null){var l=o[0],c=l?.getPosition(i);if(c!=null)return c;var d=a?.[Number(i)];if(d)switch(r){case"horizontal":return{x:d.coordinate,y:(n.top+t)/2};default:return{x:(n.left+e)/2,y:d.coordinate}}}},Ng=(e,t,r,n)=>{if(t==="axis")return e.tooltipItemPayloads;if(e.tooltipItemPayloads.length===0)return[];var a;if(r==="hover"?a=e.itemInteraction.hover.graphicalItemId:a=e.itemInteraction.click.graphicalItemId,e.syncInteraction.active&&a==null)return e.tooltipItemPayloads;if(a==null&&(n!=null||e.keyboardInteraction.active)){var i=e.tooltipItemPayloads[0];return i!=null?[i]:[]}return e.tooltipItemPayloads.filter(o=>{var l;return((l=o.settings)===null||l===void 0?void 0:l.graphicalItemId)===a})},Og=e=>e.options.tooltipPayloadSearcher,fn=e=>e.tooltip;function dm(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),r.push.apply(r,n)}return r}function fm(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?dm(Object(r),!0).forEach(function(n){hA(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):dm(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function hA(e,t,r){return(t=pA(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function pA(e){var t=yA(e,"string");return typeof t=="symbol"?t:t+""}function yA(e,t){if(typeof e!="object"||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var n=r.call(e,t);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function gA(e){if(typeof e=="string"||typeof e=="number")return e}function bA(e){if(typeof e=="string"||typeof e=="number"||typeof e=="boolean")return e}function xA(e){if(typeof e=="string"||typeof e=="number")return e;if(typeof e=="function")return t=>e(t)}function mm(e){if(typeof e=="string")return e}function jA(e){if(!(e==null||typeof e!="object")){var t="name"in e?gA(e.name):void 0,r="unit"in e?bA(e.unit):void 0,n="dataKey"in e?xA(e.dataKey):void 0,a="payload"in e?e.payload:void 0,i="color"in e?mm(e.color):void 0,o="fill"in e?mm(e.fill):void 0;return{name:t,unit:r,dataKey:n,payload:a,color:i,fill:o}}}function wA(e,t){return e??t}var Ag=(e,t,r,n,a,i,o)=>{if(!(t==null||i==null)){var{chartData:l,computedData:c,dataStartIndex:d,dataEndIndex:u}=r,m=[];return e.reduce((h,v)=>{var g,{dataDefinedOnItem:y,settings:p}=v,b=wA(y,l),j=Array.isArray(b)?zp(b,d,u):b,x=(g=p?.dataKey)!==null&&g!==void 0?g:n,C=p?.nameKey,w;if(n&&Array.isArray(j)&&!Array.isArray(j[0])&&o==="axis"?w=Hh(j,n,a):w=i(j,t,c,C),Array.isArray(w))w.forEach(O=>{var k,N,S=jA(O),A=S?.name,_=S?.dataKey,I=S?.payload,D=fm(fm({},p),{},{name:A,unit:S?.unit,color:(k=S?.color)!==null&&k!==void 0?k:p?.color,fill:(N=S?.fill)!==null&&N!==void 0?N:p?.fill});h.push(Hd({tooltipEntrySettings:D,dataKey:_,payload:I,value:he(I,_),name:A==null?void 0:String(A)}))});else{var P;h.push(Hd({tooltipEntrySettings:p,dataKey:x,payload:w,value:he(w,x),name:(P=he(w,C))!==null&&P!==void 0?P:p?.name}))}return h},m)}},Uc=M([Re,Wy,yc],Ky),CA=M([e=>e.graphicalItems.cartesianItems,e=>e.graphicalItems.polarItems],(e,t)=>[...e,...t]),kA=M([Fe,ln],Nc),Dr=M([CA,Re,kA],Oc,{memoizeOptions:{resultEqualityCheck:Zi}}),PA=M([Dr],e=>e.filter(Cc)),Eg=M([Dr],Ac,{memoizeOptions:{resultEqualityCheck:Zi}}),SA=M([Dr],e=>e.some(t=>!t.data)),Mr=M([Eg,Lt],Ec),NA=M([PA,Lt,Re],By),Wc=M([Mr,Re,Dr,Lt,SA,Eg],Jy),_g=M([Re],Mc),OA=M([Re],e=>e.allowDataOverflow),Mg=M([_g,OA],xy),AA=M([Dr],e=>e.filter(Cc)),EA=M([NA,AA,Zn,_y],eg),_A=M([EA,Lt,Fe,Mg],tg),MA=M([Dr],Xy),TA=M([Mr,Re,MA,Ji,Fe,NN],Dc,{memoizeOptions:{resultEqualityCheck:Yi}}),IA=M([rg,Fe,ln],dn),DA=M([IA,Fe],ig),LA=M([ng,Fe,ln],dn),RA=M([LA,Fe],sg),$A=M([ag,Fe,ln],dn),BA=M([$A,Fe],og),FA=M([DA,BA,RA],ri),zA=M([Re,_g,Mg,_A,TA,FA,ge,Fe],Lc),tn=M([Re,ge,Mr,Wc,Zn,Fe,zA],Rc),KA=M([tn,Re,Uc],Bc),VA=M([Re,tn,KA,Fe],zc),Tg=e=>{var t=Fe(e),r=ln(e),n=!1;return ea(e,t,r,n)},Ig=M([Re,Tg],Hi),qA=M([Re,Uc,VA,Ig],Pc),Dg=M([qA],kc),UA=M([ge,Wc,Re,Fe],mg),WA=M([ge,Wc,Re,Fe],ug),HA=(e,t,r,n,a,i,o,l)=>{if(t){var{type:c}=t,d=Wt(e,l);if(n){var u=r==="scaleBand"&&n.bandwidth?n.bandwidth()/2:2,m=c==="category"&&n.bandwidth?n.bandwidth()/u:0;return m=l==="angleAxis"&&a!=null&&a?.length>=2?Ge(a[0]-a[1])*2*m:m,d&&o?o.map((h,v)=>{var g=n.map(h);return ue(g)?{coordinate:g+m,value:h,index:v,offset:m}:null}).filter(tt):n.domain().map((h,v)=>{var g=n.map(h);return ue(g)?{coordinate:g+m,value:i?i[h]:h,index:v,offset:m}:null}).filter(tt)}}},Zt=M([ge,Re,Uc,Dg,Tg,UA,WA,Fe],HA),Hc=M([yg,gg,ZO],(e,t,r)=>bg(r.shared,e,t)),Lg=e=>e.tooltip.settings.trigger,Gc=e=>e.tooltip.settings.defaultIndex,ra=M([fn,Hc,Lg,Gc],Pg),rn=M([ra,Mr,en,tn],Nn),Rg=M([Zt,rn],xg),$g=M([ra],e=>{if(e)return e.dataKey}),Bg=M([ra],e=>{if(e)return e.graphicalItemId}),Fg=M([fn,Hc,Lg,Gc],Ng),GA=M([Ht,Gt,ge,Be,Zt,Gc,Fg],Sg),XA=M([ra,GA],(e,t)=>e!=null&&e.coordinate?e.coordinate:t),YA=M([ra],e=>{var t;return(t=e?.active)!==null&&t!==void 0?t:!1}),ZA=M([Fg,rn,Lt,en,Rg,Og,Hc],Ag),JA=M([ZA],e=>{if(e!=null){var t=e.map(r=>r.payload).filter(r=>r!=null);return Array.from(new Set(t))}});function vm(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),r.push.apply(r,n)}return r}function hm(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?vm(Object(r),!0).forEach(function(n){QA(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):vm(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function QA(e,t,r){return(t=eE(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function eE(e){var t=tE(e,"string");return typeof t=="symbol"?t:t+""}function tE(e,t){if(typeof e!="object"||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var n=r.call(e,t);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}var rE=()=>Y(Re),nE=()=>{var e=rE(),t=Y(Zt),r=Y(Dg);return qa(!e||!r?void 0:hm(hm({},e),{},{scale:r}),t)};function pm(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),r.push.apply(r,n)}return r}function $r(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?pm(Object(r),!0).forEach(function(n){aE(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):pm(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function aE(e,t,r){return(t=iE(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function iE(e){var t=sE(e,"string");return typeof t=="symbol"?t:t+""}function sE(e,t){if(typeof e!="object"||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var n=r.call(e,t);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}var oE=(e,t,r,n)=>{var a=t.find(i=>i&&i.index===r);if(a){if(e==="horizontal")return{x:a.coordinate,y:n.relativeY};if(e==="vertical")return{x:n.relativeX,y:a.coordinate}}return{x:0,y:0}},lE=(e,t,r,n)=>{var a=t.find(d=>d&&d.index===r);if(a){if(e==="centric"){var i=a.coordinate,{radius:o}=n;return $r($r($r({},n),Ee(n.cx,n.cy,o,i)),{},{angle:i,radius:o})}var l=a.coordinate,{angle:c}=n;return $r($r($r({},n),Ee(n.cx,n.cy,l,c)),{},{angle:c,radius:l})}return{angle:0,clockWise:!1,cx:0,cy:0,endAngle:0,innerRadius:0,outerRadius:0,radius:0,startAngle:0,x:0,y:0}};function cE(e,t){var{relativeX:r,relativeY:n}=e;return r>=t.left&&r<=t.left+t.width&&n>=t.top&&n<=t.top+t.height}var zg=(e,t,r,n,a)=>{var i,o=(i=t?.length)!==null&&i!==void 0?i:0;if(o<=1||e==null)return 0;if(n==="angleAxis"&&a!=null&&Math.abs(Math.abs(a[1]-a[0])-360)<=1e-6)for(var l=0;l<o;l++){var c,d,u,m,h,v=l>0?(c=r[l-1])===null||c===void 0?void 0:c.coordinate:(d=r[o-1])===null||d===void 0?void 0:d.coordinate,g=(u=r[l])===null||u===void 0?void 0:u.coordinate,y=l>=o-1?(m=r[0])===null||m===void 0?void 0:m.coordinate:(h=r[l+1])===null||h===void 0?void 0:h.coordinate,p=void 0;if(!(v==null||g==null||y==null))if(Ge(g-v)!==Ge(y-g)){var b=[];if(Ge(y-g)===Ge(a[1]-a[0])){p=y;var j=g+a[1]-a[0];b[0]=Math.min(j,(j+v)/2),b[1]=Math.max(j,(j+v)/2)}else{p=v;var x=y+a[1]-a[0];b[0]=Math.min(g,(x+g)/2),b[1]=Math.max(g,(x+g)/2)}var C=[Math.min(g,(p+g)/2),Math.max(g,(p+g)/2)];if(e>C[0]&&e<=C[1]||e>=b[0]&&e<=b[1]){var w;return(w=r[l])===null||w===void 0?void 0:w.index}}else{var P=Math.min(v,y),O=Math.max(v,y);if(e>(P+g)/2&&e<=(O+g)/2){var k;return(k=r[l])===null||k===void 0?void 0:k.index}}}else if(t)for(var N=0;N<o;N++){var S=t[N];if(S!=null){var A=t[N+1],_=t[N-1];if(N===0&&A!=null&&e<=(S.coordinate+A.coordinate)/2||N===o-1&&_!=null&&e>(S.coordinate+_.coordinate)/2||N>0&&N<o-1&&_!=null&&A!=null&&e>(S.coordinate+_.coordinate)/2&&e<=(S.coordinate+A.coordinate)/2)return S.index}}return-1},uE=()=>Y(yc),Xc=(e,t)=>t,Kg=(e,t,r)=>r,Yc=(e,t,r,n)=>n,dE=M(Zt,e=>Pi(e,t=>t.coordinate)),Zc=M([fn,Xc,Kg,Yc],Pg),Jc=M([Zc,Mr,en,tn],Nn),fE=(e,t,r)=>{if(t!=null){var n=fn(e);return t==="axis"?r==="hover"?n.axisInteraction.hover.dataKey:n.axisInteraction.click.dataKey:r==="hover"?n.itemInteraction.hover.dataKey:n.itemInteraction.click.dataKey}},Vg=M([fn,Xc,Kg,Yc],Ng),ai=M([Ht,Gt,ge,Be,Zt,Yc,Vg],Sg),mE=M([Zc,ai],(e,t)=>{var r;return(r=e.coordinate)!==null&&r!==void 0?r:t}),qg=M([Zt,Jc],xg),vE=M([Vg,Jc,Lt,en,qg,Og,Xc],Ag),hE=M([Zc,Jc],(e,t)=>({isActive:e.active&&t!=null,activeIndex:t})),pE=(e,t,r,n,a,i,o)=>{if(!(!e||!r||!n||!a)&&cE(e,o)){var l=Kk(e,t),c=zg(l,i,a,r,n),d=oE(t,a,c,e);return{activeIndex:String(c),activeCoordinate:d}}},yE=(e,t,r,n,a,i,o)=>{if(!(!e||!n||!a||!i||!r)){var l=hN(e,r);if(l){var c=Vk(l,t),d=zg(c,o,i,n,a),u=lE(t,i,d,l);return{activeIndex:String(d),activeCoordinate:u}}}},gE=(e,t,r,n,a,i,o,l)=>{if(!(!e||!t||!n||!a||!i))return t==="horizontal"||t==="vertical"?pE(e,t,n,a,i,o,l):yE(e,t,r,n,a,i,o)},bE=M(e=>e.zIndex.zIndexMap,(e,t)=>t,(e,t,r)=>r,(e,t,r)=>{if(t!=null){var n=e[t];if(n!=null)return r?n.panoramaElement:n.element}}),xE=M(e=>e.zIndex.zIndexMap,e=>{var t=Object.keys(e).map(n=>parseInt(n,10)).concat(Object.values(Ve)),r=Array.from(new Set(t));return r.sort((n,a)=>n-a)},{memoizeOptions:{resultEqualityCheck:FN}});function ym(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),r.push.apply(r,n)}return r}function gm(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?ym(Object(r),!0).forEach(function(n){jE(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):ym(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function jE(e,t,r){return(t=wE(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function wE(e){var t=CE(e,"string");return typeof t=="symbol"?t:t+""}function CE(e,t){if(typeof e!="object"||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var n=r.call(e,t);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}var kE={},PE={zIndexMap:Object.values(Ve).reduce((e,t)=>gm(gm({},e),{},{[t]:{element:void 0,panoramaElement:void 0,consumers:0}}),kE)},SE=new Set(Object.values(Ve));function NE(e){return SE.has(e)}var Ug=Ye({name:"zIndex",initialState:PE,reducers:{registerZIndexPortal:{reducer:(e,t)=>{var{zIndex:r}=t.payload;e.zIndexMap[r]?e.zIndexMap[r].consumers+=1:e.zIndexMap[r]={consumers:1,element:void 0,panoramaElement:void 0}},prepare:xe()},unregisterZIndexPortal:{reducer:(e,t)=>{var{zIndex:r}=t.payload;e.zIndexMap[r]&&(e.zIndexMap[r].consumers-=1,e.zIndexMap[r].consumers<=0&&!NE(r)&&delete e.zIndexMap[r])},prepare:xe()},registerZIndexPortalElement:{reducer:(e,t)=>{var{zIndex:r,element:n,isPanorama:a}=t.payload;e.zIndexMap[r]?a?e.zIndexMap[r].panoramaElement=n:e.zIndexMap[r].element=n:e.zIndexMap[r]={consumers:0,element:a?void 0:n,panoramaElement:a?n:void 0}},prepare:xe()},unregisterZIndexPortalElement:{reducer:(e,t)=>{var{zIndex:r}=t.payload;e.zIndexMap[r]&&(t.payload.isPanorama?e.zIndexMap[r].panoramaElement=void 0:e.zIndexMap[r].element=void 0)},prepare:xe()}}}),{registerZIndexPortal:OE,unregisterZIndexPortal:po,registerZIndexPortalElement:AE,unregisterZIndexPortalElement:EE}=Ug.actions,_E=Ug.reducer;function Pt(e){var{zIndex:t,children:r}=e,n=iP(),a=n&&t!==void 0&&t!==0,i=rt(),o=f.useRef(void 0),l=f.useRef(new Set),c=ve(),d=Y(m=>bE(m,t,i));if(f.useLayoutEffect(()=>{if(!a){var m=l.current;m.forEach(v=>{c(po({zIndex:v}))}),m.clear(),o.current=void 0;return}if(l.current.has(t)||(c(OE({zIndex:t})),l.current.add(t)),d){o.current=d;var h=l.current;h.forEach(v=>{v!==t&&(c(po({zIndex:v})),h.delete(v))})}},[c,t,a,d]),f.useLayoutEffect(()=>{var m=l.current;return()=>{m.forEach(h=>{c(po({zIndex:h}))}),m.clear()}},[c]),!a)return r;var u=d??o.current;return u?Al.createPortal(r,u):null}function ml(){return ml=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)({}).hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},ml.apply(null,arguments)}function bm(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),r.push.apply(r,n)}return r}function va(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?bm(Object(r),!0).forEach(function(n){ME(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):bm(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function ME(e,t,r){return(t=TE(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function TE(e){var t=IE(e,"string");return typeof t=="symbol"?t:t+""}function IE(e,t){if(typeof e!="object"||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var n=r.call(e,t);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function DE(e){var{cursor:t,cursorComp:r,cursorProps:n}=e;return f.isValidElement(t)?f.cloneElement(t,n):f.createElement(r,n)}function LE(e){var t,{coordinate:r,payload:n,index:a,offset:i,tooltipAxisBandSize:o,layout:l,cursor:c,tooltipEventType:d,chartName:u}=e,m=r,h=n,v=a;if(!c||!m||u!=="ScatterChart"&&d!=="axis")return null;var g,y,p;if(u==="ScatterChart")g=m,y=ES,p=Ve.cursorLine;else if(u==="BarChart")g=_S(l,m,i,o),y=vy,p=Ve.cursorRectangle;else if(l==="radial"&&Xh(m)){var{cx:b,cy:j,radius:x,startAngle:C,endAngle:w}=py(m);g={cx:b,cy:j,startAngle:C,endAngle:w,innerRadius:x,outerRadius:x},y=gy,p=Ve.cursorLine}else g={points:bN(l,m,i)},y=mc,p=Ve.cursorLine;var P=typeof c=="object"&&"className"in c?c.className:void 0,O=va(va(va(va({stroke:"#ccc",pointerEvents:"none"},i),g),Xr(c)),{},{payload:h,payloadIndex:v,className:de("recharts-tooltip-cursor",P)});return f.createElement(Pt,{zIndex:(t=e.zIndex)!==null&&t!==void 0?t:p},f.createElement(DE,{cursor:c,cursorComp:y,cursorProps:O}))}function RE(e){var t=nE(),r=Xp(),n=an(),a=uE();return t==null||r==null||n==null||a==null?null:f.createElement(LE,ml({},e,{offset:r,layout:n,tooltipAxisBandSize:t,chartName:a}))}var Wg=f.createContext(null),$E=()=>f.useContext(Wg),yo={exports:{}},xm;function BE(){return xm||(xm=1,(function(e){var t=Object.prototype.hasOwnProperty,r="~";function n(){}Object.create&&(n.prototype=Object.create(null),new n().__proto__||(r=!1));function a(c,d,u){this.fn=c,this.context=d,this.once=u||!1}function i(c,d,u,m,h){if(typeof u!="function")throw new TypeError("The listener must be a function");var v=new a(u,m||c,h),g=r?r+d:d;return c._events[g]?c._events[g].fn?c._events[g]=[c._events[g],v]:c._events[g].push(v):(c._events[g]=v,c._eventsCount++),c}function o(c,d){--c._eventsCount===0?c._events=new n:delete c._events[d]}function l(){this._events=new n,this._eventsCount=0}l.prototype.eventNames=function(){var d=[],u,m;if(this._eventsCount===0)return d;for(m in u=this._events)t.call(u,m)&&d.push(r?m.slice(1):m);return Object.getOwnPropertySymbols?d.concat(Object.getOwnPropertySymbols(u)):d},l.prototype.listeners=function(d){var u=r?r+d:d,m=this._events[u];if(!m)return[];if(m.fn)return[m.fn];for(var h=0,v=m.length,g=new Array(v);h<v;h++)g[h]=m[h].fn;return g},l.prototype.listenerCount=function(d){var u=r?r+d:d,m=this._events[u];return m?m.fn?1:m.length:0},l.prototype.emit=function(d,u,m,h,v,g){var y=r?r+d:d;if(!this._events[y])return!1;var p=this._events[y],b=arguments.length,j,x;if(p.fn){switch(p.once&&this.removeListener(d,p.fn,void 0,!0),b){case 1:return p.fn.call(p.context),!0;case 2:return p.fn.call(p.context,u),!0;case 3:return p.fn.call(p.context,u,m),!0;case 4:return p.fn.call(p.context,u,m,h),!0;case 5:return p.fn.call(p.context,u,m,h,v),!0;case 6:return p.fn.call(p.context,u,m,h,v,g),!0}for(x=1,j=new Array(b-1);x<b;x++)j[x-1]=arguments[x];p.fn.apply(p.context,j)}else{var C=p.length,w;for(x=0;x<C;x++)switch(p[x].once&&this.removeListener(d,p[x].fn,void 0,!0),b){case 1:p[x].fn.call(p[x].context);break;case 2:p[x].fn.call(p[x].context,u);break;case 3:p[x].fn.call(p[x].context,u,m);break;case 4:p[x].fn.call(p[x].context,u,m,h);break;default:if(!j)for(w=1,j=new Array(b-1);w<b;w++)j[w-1]=arguments[w];p[x].fn.apply(p[x].context,j)}}return!0},l.prototype.on=function(d,u,m){return i(this,d,u,m,!1)},l.prototype.once=function(d,u,m){return i(this,d,u,m,!0)},l.prototype.removeListener=function(d,u,m,h){var v=r?r+d:d;if(!this._events[v])return this;if(!u)return o(this,v),this;var g=this._events[v];if(g.fn)g.fn===u&&(!h||g.once)&&(!m||g.context===m)&&o(this,v);else{for(var y=0,p=[],b=g.length;y<b;y++)(g[y].fn!==u||h&&!g[y].once||m&&g[y].context!==m)&&p.push(g[y]);p.length?this._events[v]=p.length===1?p[0]:p:o(this,v)}return this},l.prototype.removeAllListeners=function(d){var u;return d?(u=r?r+d:d,this._events[u]&&o(this,u)):(this._events=new n,this._eventsCount=0),this},l.prototype.off=l.prototype.removeListener,l.prototype.addListener=l.prototype.on,l.prefixed=r,l.EventEmitter=l,e.exports=l})(yo)),yo.exports}var FE=BE();const zE=nn(FE);var $n=new zE,vl="recharts.syncEvent.tooltip",jm="recharts.syncEvent.brush",Hg=(e,t)=>{if(t&&Array.isArray(e)){var r=Number.parseInt(t,10);if(!Vt(r))return e[r]}},KE={chartName:"",tooltipPayloadSearcher:()=>{},eventEmitter:void 0,defaultTooltipEventType:"axis"},Gg=Ye({name:"options",initialState:KE,reducers:{createEventEmitter:e=>{e.eventEmitter==null&&(e.eventEmitter=Symbol("rechartsEventEmitter"))}}}),VE=Gg.reducer,{createEventEmitter:qE}=Gg.actions;function UE(e){return e.tooltip.syncInteraction}var WE={chartData:void 0,computedData:void 0,dataStartIndex:0,dataEndIndex:0},Xg=Ye({name:"chartData",initialState:WE,reducers:{setChartData(e,t){if(e.chartData=t.payload,t.payload==null){e.dataStartIndex=0,e.dataEndIndex=0;return}t.payload.length>0&&e.dataEndIndex!==t.payload.length-1&&(e.dataEndIndex=t.payload.length-1)},setComputedData(e,t){e.computedData=t.payload},setDataStartEndIndexes(e,t){var{startIndex:r,endIndex:n}=t.payload;r!=null&&(e.dataStartIndex=r),n!=null&&(e.dataEndIndex=n)}}}),{setChartData:wm,setDataStartEndIndexes:HE,setComputedData:C2}=Xg.actions,GE=Xg.reducer,XE=["x","y"];function Cm(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),r.push.apply(r,n)}return r}function Br(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?Cm(Object(r),!0).forEach(function(n){YE(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):Cm(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function YE(e,t,r){return(t=ZE(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function ZE(e){var t=JE(e,"string");return typeof t=="symbol"?t:t+""}function JE(e,t){if(typeof e!="object"||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var n=r.call(e,t);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function QE(e,t){if(e==null)return{};var r,n,a=e_(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)===-1&&{}.propertyIsEnumerable.call(e,r)&&(a[r]=e[r])}return a}function e_(e,t){if(e==null)return{};var r={};for(var n in e)if({}.hasOwnProperty.call(e,n)){if(t.indexOf(n)!==-1)continue;r[n]=e[n]}return r}function t_(){var e=Y(gc),t=Y(bc),r=ve(),n=Y(My),a=Y(Zt),i=an(),o=Fi(),l=Y(c=>c.rootProps.className);f.useEffect(()=>{if(e==null)return Kn;var c=(d,u,m)=>{if(t!==m&&e===d){if(u.payload.active===!1){r(kn({active:!1,coordinate:void 0,dataKey:void 0,index:null,label:void 0,sourceViewBox:void 0,graphicalItemId:void 0}));return}if(n==="index"){var h;if(o&&u!==null&&u!==void 0&&(h=u.payload)!==null&&h!==void 0&&h.coordinate&&u.payload.sourceViewBox){var v=u.payload.coordinate,{x:g,y}=v,p=QE(v,XE),{x:b,y:j,width:x,height:C}=u.payload.sourceViewBox,w=Br(Br({},p),{},{x:o.x+(x?(g-b)/x:0)*o.width,y:o.y+(C?(y-j)/C:0)*o.height});r(Br(Br({},u),{},{payload:Br(Br({},u.payload),{},{coordinate:w})}))}else r(u);return}if(a!=null){var P;if(typeof n=="function"){var O={activeTooltipIndex:u.payload.index==null?void 0:Number(u.payload.index),isTooltipActive:u.payload.active,activeIndex:u.payload.index==null?void 0:Number(u.payload.index),activeLabel:u.payload.label,activeDataKey:u.payload.dataKey,activeCoordinate:u.payload.coordinate},k=n(a,O);P=a[k]}else n==="value"&&(P=a.find(V=>String(V.value)===u.payload.label));var{coordinate:N}=u.payload;if(N==null||o==null){r(kn({active:!1,coordinate:void 0,dataKey:void 0,index:null,label:void 0,sourceViewBox:void 0,graphicalItemId:void 0}));return}if(P==null){r(kn({active:!1,coordinate:void 0,dataKey:void 0,index:null,label:void 0,sourceViewBox:u.payload.sourceViewBox,graphicalItemId:void 0}));return}var{x:S,y:A}=N,_=Math.min(S,o.x+o.width),I=Math.min(A,o.y+o.height),D={x:i==="horizontal"?P.coordinate:_,y:i==="horizontal"?I:P.coordinate},F=kn({active:u.payload.active,coordinate:D,dataKey:u.payload.dataKey,index:String(P.index),label:u.payload.label,sourceViewBox:u.payload.sourceViewBox,graphicalItemId:u.payload.graphicalItemId});r(F)}}};return $n.on(vl,c),()=>{$n.off(vl,c)}},[l,r,t,e,n,a,i,o])}function r_(){var e=Y(gc),t=Y(bc),r=ve();f.useEffect(()=>{if(e==null)return Kn;var n=(a,i,o)=>{t!==o&&e===a&&r(HE(i))};return $n.on(jm,n),()=>{$n.off(jm,n)}},[r,t,e])}function n_(){var e=ve();f.useEffect(()=>{e(qE())},[e]),t_(),r_()}function a_(e,t,r,n,a,i){var o=Y(g=>fE(g,e,t)),l=Y(Bg),c=Y(bc),d=Y(gc),u=Y(My),m=Y(UE),h=m?.sourceViewBox!=null,v=Fi();f.useEffect(()=>{if(!h&&d!=null&&c!=null){var g=kn({active:i,coordinate:r,dataKey:o,index:a,label:typeof n=="number"?String(n):n,sourceViewBox:v,graphicalItemId:l});$n.emit(vl,d,g,c)}},[h,r,o,l,a,n,c,d,u,i,v])}function km(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),r.push.apply(r,n)}return r}function Pm(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?km(Object(r),!0).forEach(function(n){i_(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):km(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function i_(e,t,r){return(t=s_(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function s_(e){var t=o_(e,"string");return typeof t=="symbol"?t:t+""}function o_(e,t){if(typeof e!="object"||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var n=r.call(e,t);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function l_(e){return e.dataKey}function c_(e,t){return f.isValidElement(e)?f.cloneElement(e,t):typeof e=="function"?f.createElement(e,t):f.createElement(iS,t)}var Sm=[],u_={allowEscapeViewBox:{x:!1,y:!1},animationDuration:400,animationEasing:"ease",axisId:0,contentStyle:{},cursor:!0,filterNull:!0,includeHidden:!1,isAnimationActive:"auto",itemSorter:"name",itemStyle:{},labelStyle:{},offset:10,reverseDirection:{x:!1,y:!1},separator:" : ",trigger:"hover",useTranslate3d:!1,wrapperStyle:{}};function Yg(e){var t,r,n=Le(e,u_),{active:a,allowEscapeViewBox:i,animationDuration:o,animationEasing:l,content:c,filterNull:d,isAnimationActive:u,offset:m,payloadUniqBy:h,position:v,reverseDirection:g,useTranslate3d:y,wrapperStyle:p,cursor:b,shared:j,trigger:x,defaultIndex:C,portal:w,axisId:P}=n,O=ve(),k=typeof C=="number"?String(C):C;f.useEffect(()=>{O(rA({shared:j,trigger:x,axisId:P,active:a,defaultIndex:k}))},[O,j,x,P,a,k]);var N=Fi(),S=cy(),A=YO(j),{activeIndex:_,isActive:I}=(t=Y(re=>hE(re,A,x,k)))!==null&&t!==void 0?t:{},D=Y(re=>vE(re,A,x,k)),F=Y(re=>qg(re,A,x,k)),V=Y(re=>mE(re,A,x,k)),q=D,te=$E(),U=(r=a??I)!==null&&r!==void 0?r:!1,[ee,L]=dp([q,U]),B=A==="axis"?F:void 0;a_(A,x,V,B,_,U);var X=w??te;if(X==null||N==null||A==null)return null;var Q=q??Sm;U||(Q=Sm),d&&Q.length&&(Q=sp(Q.filter(re=>re.value!=null&&(re.hide!==!0||n.includeHidden)),h,l_));var G=Q.length>0,ie=Pm(Pm({},n),{},{payload:Q,label:B,active:U,activeIndex:_,coordinate:V,accessibilityLayer:S}),se=f.createElement(pS,{allowEscapeViewBox:i,animationDuration:o,animationEasing:l,isAnimationActive:u,active:U,coordinate:V,hasPayload:G,offset:m,position:v,reverseDirection:g,useTranslate3d:y,viewBox:N,wrapperStyle:p,lastBoundingBox:ee,innerRef:L,hasPortalFromProps:!!w},c_(c,ie));return f.createElement(f.Fragment,null,Al.createPortal(se,X),U&&f.createElement(RE,{cursor:b,tooltipEventType:A,coordinate:V,payload:Q,index:_}))}var rs=e=>null;rs.displayName="Cell";function d_(e,t,r){return(t=f_(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function f_(e){var t=m_(e,"string");return typeof t=="symbol"?t:t+""}function m_(e,t){if(typeof e!="object"||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var n=r.call(e,t);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}class v_{constructor(t){d_(this,"cache",new Map),this.maxSize=t}get(t){var r=this.cache.get(t);return r!==void 0&&(this.cache.delete(t),this.cache.set(t,r)),r}set(t,r){if(this.cache.has(t))this.cache.delete(t);else if(this.cache.size>=this.maxSize){var n=this.cache.keys().next().value;n!=null&&this.cache.delete(n)}this.cache.set(t,r)}clear(){this.cache.clear()}size(){return this.cache.size}}function Nm(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),r.push.apply(r,n)}return r}function h_(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?Nm(Object(r),!0).forEach(function(n){p_(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):Nm(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function p_(e,t,r){return(t=y_(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function y_(e){var t=g_(e,"string");return typeof t=="symbol"?t:t+""}function g_(e,t){if(typeof e!="object"||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var n=r.call(e,t);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}var b_={cacheSize:2e3,enableCache:!0},Zg=h_({},b_),Om=new v_(Zg.cacheSize),x_={position:"absolute",top:"-20000px",left:0,padding:0,margin:0,border:"none",whiteSpace:"pre"},Am="recharts_measurement_span";function j_(e,t){var r=t.fontSize||"",n=t.fontFamily||"",a=t.fontWeight||"",i=t.fontStyle||"",o=t.letterSpacing||"",l=t.textTransform||"";return"".concat(e,"|").concat(r,"|").concat(n,"|").concat(a,"|").concat(i,"|").concat(o,"|").concat(l)}var Em=(e,t)=>{try{var r=document.getElementById(Am);r||(r=document.createElement("span"),r.setAttribute("id",Am),r.setAttribute("aria-hidden","true"),document.body.appendChild(r)),Object.assign(r.style,x_,t),r.textContent="".concat(e);var n=r.getBoundingClientRect();return{width:n.width,height:n.height}}catch{return{width:0,height:0}}},On=function(t){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};if(t==null||Xn.isSsr)return{width:0,height:0};if(!Zg.enableCache)return Em(t,r);var n=j_(t,r),a=Om.get(n);if(a)return a;var i=Em(t,r);return Om.set(n,i),i},Jg;function w_(e,t,r){return(t=C_(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function C_(e){var t=k_(e,"string");return typeof t=="symbol"?t:t+""}function k_(e,t){if(typeof e!="object"||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var n=r.call(e,t);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}var _m=/(-?\d+(?:\.\d+)?[a-zA-Z%]*)([*/])(-?\d+(?:\.\d+)?[a-zA-Z%]*)/,Mm=/(-?\d+(?:\.\d+)?[a-zA-Z%]*)([+-])(-?\d+(?:\.\d+)?[a-zA-Z%]*)/,P_=/^(px|cm|vh|vw|em|rem|%|mm|in|pt|pc|ex|ch|vmin|vmax|Q)$/,S_=/(-?\d+(?:\.\d+)?)([a-zA-Z%]+)?/,N_={cm:96/2.54,mm:96/25.4,pt:96/72,pc:96/6,in:96,Q:96/(2.54*40),px:1},O_=["cm","mm","pt","pc","in","Q","px"];function A_(e){return O_.includes(e)}var qr="NaN";function E_(e,t){return e*N_[t]}class Ke{static parse(t){var r,[,n,a]=(r=S_.exec(t))!==null&&r!==void 0?r:[];return n==null?Ke.NaN:new Ke(parseFloat(n),a??"")}constructor(t,r){this.num=t,this.unit=r,this.num=t,this.unit=r,Vt(t)&&(this.unit=""),r!==""&&!P_.test(r)&&(this.num=NaN,this.unit=""),A_(r)&&(this.num=E_(t,r),this.unit="px")}add(t){return this.unit!==t.unit?new Ke(NaN,""):new Ke(this.num+t.num,this.unit)}subtract(t){return this.unit!==t.unit?new Ke(NaN,""):new Ke(this.num-t.num,this.unit)}multiply(t){return this.unit!==""&&t.unit!==""&&this.unit!==t.unit?new Ke(NaN,""):new Ke(this.num*t.num,this.unit||t.unit)}divide(t){return this.unit!==""&&t.unit!==""&&this.unit!==t.unit?new Ke(NaN,""):new Ke(this.num/t.num,this.unit||t.unit)}toString(){return"".concat(this.num).concat(this.unit)}isNaN(){return Vt(this.num)}}Jg=Ke;w_(Ke,"NaN",new Jg(NaN,""));function Qg(e){if(e==null||e.includes(qr))return qr;for(var t=e;t.includes("*")||t.includes("/");){var r,[,n,a,i]=(r=_m.exec(t))!==null&&r!==void 0?r:[],o=Ke.parse(n??""),l=Ke.parse(i??""),c=a==="*"?o.multiply(l):o.divide(l);if(c.isNaN())return qr;t=t.replace(_m,c.toString())}for(;t.includes("+")||/.-\d+(?:\.\d+)?/.test(t);){var d,[,u,m,h]=(d=Mm.exec(t))!==null&&d!==void 0?d:[],v=Ke.parse(u??""),g=Ke.parse(h??""),y=m==="+"?v.add(g):v.subtract(g);if(y.isNaN())return qr;t=t.replace(Mm,y.toString())}return t}var Tm=/\(([^()]*)\)/;function __(e){for(var t=e,r;(r=Tm.exec(t))!=null;){var[,n]=r;t=t.replace(Tm,Qg(n))}return t}function M_(e){var t=e.replace(/\s+/g,"");return t=__(t),t=Qg(t),t}function T_(e){try{return M_(e)}catch{return qr}}function go(e){var t=T_(e.slice(5,-1));return t===qr?"":t}var I_=["x","y","lineHeight","capHeight","fill","scaleToFit","textAnchor","verticalAnchor"],D_=["dx","dy","angle","className","breakAll"];function hl(){return hl=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)({}).hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},hl.apply(null,arguments)}function Im(e,t){if(e==null)return{};var r,n,a=L_(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)===-1&&{}.propertyIsEnumerable.call(e,r)&&(a[r]=e[r])}return a}function L_(e,t){if(e==null)return{};var r={};for(var n in e)if({}.hasOwnProperty.call(e,n)){if(t.indexOf(n)!==-1)continue;r[n]=e[n]}return r}var eb=/[ \f\n\r\t\v\u2028\u2029]+/,tb=e=>{var{children:t,breakAll:r,style:n}=e;try{var a=[];De(t)||(r?a=t.toString().split(""):a=t.toString().split(eb));var i=a.map(l=>({word:l,width:On(l,n).width})),o=r?0:On(" ",n).width;return{wordsWithComputedWidth:i,spaceWidth:o}}catch{return null}};function rb(e){return e==="start"||e==="middle"||e==="end"||e==="inherit"}function R_(e){return De(e)||typeof e=="string"||typeof e=="number"||typeof e=="boolean"}var nb=(e,t,r,n)=>e.reduce((a,i)=>{var{word:o,width:l}=i,c=a[a.length-1];if(c&&l!=null&&(t==null||n||c.width+l+r<Number(t)))c.words.push(o),c.width+=l+r;else{var d={words:[o],width:l};a.push(d)}return a},[]),ab=e=>e.reduce((t,r)=>t.width>r.width?t:r),$_="…",Dm=(e,t,r,n,a,i,o,l)=>{var c=e.slice(0,t),d=tb({breakAll:r,style:n,children:c+$_});if(!d)return[!1,[]];var u=nb(d.wordsWithComputedWidth,i,o,l),m=u.length>a||ab(u).width>Number(i);return[m,u]},B_=(e,t,r,n,a)=>{var{maxLines:i,children:o,style:l,breakAll:c}=e,d=Z(i),u=String(o),m=nb(t,n,r,a);if(!d||a)return m;var h=m.length>i||ab(m).width>Number(n);if(!h)return m;for(var v=0,g=u.length-1,y=0,p;v<=g&&y<=u.length-1;){var b=Math.floor((v+g)/2),j=b-1,[x,C]=Dm(u,j,c,l,i,n,r,a),[w]=Dm(u,b,c,l,i,n,r,a);if(!x&&!w&&(v=b+1),x&&w&&(g=b-1),!x&&w){p=C;break}y++}return p||m},Lm=e=>{var t=De(e)?[]:e.toString().split(eb);return[{words:t,width:void 0}]},F_=e=>{var{width:t,scaleToFit:r,children:n,style:a,breakAll:i,maxLines:o}=e;if((t||r)&&!Xn.isSsr){var l,c,d=tb({breakAll:i,children:n,style:a});if(d){var{wordsWithComputedWidth:u,spaceWidth:m}=d;l=u,c=m}else return Lm(n);return B_({breakAll:i,children:n,maxLines:o,style:a},l,c,t,!!r)}return Lm(n)},ib="#808080",z_={angle:0,breakAll:!1,capHeight:"0.71em",fill:ib,lineHeight:"1em",scaleToFit:!1,textAnchor:"start",verticalAnchor:"end",x:0,y:0},ns=f.forwardRef((e,t)=>{var r=Le(e,z_),{x:n,y:a,lineHeight:i,capHeight:o,fill:l,scaleToFit:c,textAnchor:d,verticalAnchor:u}=r,m=Im(r,I_),h=f.useMemo(()=>F_({breakAll:m.breakAll,children:m.children,maxLines:m.maxLines,scaleToFit:c,style:m.style,width:m.width}),[m.breakAll,m.children,m.maxLines,c,m.style,m.width]),{dx:v,dy:g,angle:y,className:p,breakAll:b}=m,j=Im(m,D_);if(!Tt(n)||!Tt(a)||h.length===0)return null;var x=Number(n)+(Z(v)?v:0),C=Number(a)+(Z(g)?g:0);if(!ue(x)||!ue(C))return null;var w;switch(u){case"start":w=go("calc(".concat(o,")"));break;case"middle":w=go("calc(".concat((h.length-1)/2," * -").concat(i," + (").concat(o," / 2))"));break;default:w=go("calc(".concat(h.length-1," * -").concat(i,")"));break}var P=[],O=h[0];if(c&&O!=null){var k=O.width,{width:N}=m;P.push("scale(".concat(Z(N)&&Z(k)?N/k:1,")"))}return y&&P.push("rotate(".concat(y,", ").concat(x,", ").concat(C,")")),P.length&&(j.transform=P.join(" ")),f.createElement("text",hl({},Je(j),{ref:t,x,y:C,className:de("recharts-text",p),textAnchor:d,fill:l.includes("url")?ib:l}),h.map((S,A)=>{var _=S.words.join(b?"":" ");return f.createElement("tspan",{x,dy:A===0?w:i,key:"".concat(_,"-").concat(A)},_)}))});ns.displayName="Text";function Rm(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),r.push.apply(r,n)}return r}function At(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?Rm(Object(r),!0).forEach(function(n){K_(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):Rm(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function K_(e,t,r){return(t=V_(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function V_(e){var t=q_(e,"string");return typeof t=="symbol"?t:t+""}function q_(e,t){if(typeof e!="object"||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var n=r.call(e,t);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}var U_=e=>{var{viewBox:t,position:r,offset:n=0,parentViewBox:a}=e,{x:i,y:o,height:l,upperWidth:c,lowerWidth:d}=oc(t),u=i,m=i+(c-d)/2,h=(u+m)/2,v=(c+d)/2,g=u+c/2,y=l>=0?1:-1,p=y*n,b=y>0?"end":"start",j=y>0?"start":"end",x=c>=0?1:-1,C=x*n,w=x>0?"end":"start",P=x>0?"start":"end",O=a;if(r==="top"){var k={x:u+c/2,y:o-p,horizontalAnchor:"middle",verticalAnchor:b};return O&&(k.height=Math.max(o-O.y,0),k.width=c),k}if(r==="bottom"){var N={x:m+d/2,y:o+l+p,horizontalAnchor:"middle",verticalAnchor:j};return O&&(N.height=Math.max(O.y+O.height-(o+l),0),N.width=d),N}if(r==="left"){var S={x:h-C,y:o+l/2,horizontalAnchor:w,verticalAnchor:"middle"};return O&&(S.width=Math.max(S.x-O.x,0),S.height=l),S}if(r==="right"){var A={x:h+v+C,y:o+l/2,horizontalAnchor:P,verticalAnchor:"middle"};return O&&(A.width=Math.max(O.x+O.width-A.x,0),A.height=l),A}var _=O?{width:v,height:l}:{};return r==="insideLeft"?At({x:h+C,y:o+l/2,horizontalAnchor:P,verticalAnchor:"middle"},_):r==="insideRight"?At({x:h+v-C,y:o+l/2,horizontalAnchor:w,verticalAnchor:"middle"},_):r==="insideTop"?At({x:u+c/2,y:o+p,horizontalAnchor:"middle",verticalAnchor:j},_):r==="insideBottom"?At({x:m+d/2,y:o+l-p,horizontalAnchor:"middle",verticalAnchor:b},_):r==="insideTopLeft"?At({x:u+C,y:o+p,horizontalAnchor:P,verticalAnchor:j},_):r==="insideTopRight"?At({x:u+c-C,y:o+p,horizontalAnchor:w,verticalAnchor:j},_):r==="insideBottomLeft"?At({x:m+C,y:o+l-p,horizontalAnchor:P,verticalAnchor:b},_):r==="insideBottomRight"?At({x:m+d-C,y:o+l-p,horizontalAnchor:w,verticalAnchor:b},_):r&&typeof r=="object"&&(Z(r.x)||Ko(r.x))&&(Z(r.y)||Ko(r.y))?At({x:i+ot(r.x,v),y:o+ot(r.y,l),horizontalAnchor:"end",verticalAnchor:"end"},_):At({x:g,y:o+l/2,horizontalAnchor:"middle",verticalAnchor:"middle"},_)},W_=["labelRef"],H_=["content"];function $m(e,t){if(e==null)return{};var r,n,a=G_(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)===-1&&{}.propertyIsEnumerable.call(e,r)&&(a[r]=e[r])}return a}function G_(e,t){if(e==null)return{};var r={};for(var n in e)if({}.hasOwnProperty.call(e,n)){if(t.indexOf(n)!==-1)continue;r[n]=e[n]}return r}function Bm(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),r.push.apply(r,n)}return r}function Pn(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?Bm(Object(r),!0).forEach(function(n){X_(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):Bm(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function X_(e,t,r){return(t=Y_(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function Y_(e){var t=Z_(e,"string");return typeof t=="symbol"?t:t+""}function Z_(e,t){if(typeof e!="object"||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var n=r.call(e,t);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function Bt(){return Bt=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)({}).hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},Bt.apply(null,arguments)}var sb=f.createContext(null),J_=e=>{var{x:t,y:r,upperWidth:n,lowerWidth:a,width:i,height:o,children:l}=e,c=f.useMemo(()=>({x:t,y:r,upperWidth:n,lowerWidth:a,width:i,height:o}),[t,r,n,a,i,o]);return f.createElement(sb.Provider,{value:c},l)},ob=()=>{var e=f.useContext(sb),t=Fi();return e||(t?oc(t):void 0)},Q_=f.createContext(null),e1=()=>{var e=f.useContext(Q_),t=Y(Ry);return e||t},t1=e=>{var{value:t,formatter:r}=e,n=De(e.children)?t:e.children;return typeof r=="function"?r(n):n},Qc=e=>e!=null&&typeof e=="function",r1=(e,t)=>{var r=Ge(t-e),n=Math.min(Math.abs(t-e),360);return r*n},n1=(e,t,r,n,a)=>{var{offset:i,className:o}=e,{cx:l,cy:c,innerRadius:d,outerRadius:u,startAngle:m,endAngle:h,clockWise:v}=a,g=(d+u)/2,y=r1(m,h),p=y>=0?1:-1,b,j;switch(t){case"insideStart":b=m+p*i,j=v;break;case"insideEnd":b=h-p*i,j=!v;break;case"end":b=h+p*i,j=v;break;default:throw new Error("Unsupported position ".concat(t))}j=y<=0?j:!j;var x=Ee(l,c,g,b),C=Ee(l,c,g,b+(j?1:-1)*359),w="M".concat(x.x,",").concat(x.y,`
60
+ A`).concat(g,",").concat(g,",0,1,").concat(j?0:1,`,
61
+ `).concat(C.x,",").concat(C.y),P=De(e.id)?An("recharts-radial-line-"):e.id;return f.createElement("text",Bt({},n,{dominantBaseline:"central",className:de("recharts-radial-bar-label",o)}),f.createElement("defs",null,f.createElement("path",{id:P,d:w})),f.createElement("textPath",{xlinkHref:"#".concat(P)},r))},a1=(e,t,r)=>{var{cx:n,cy:a,innerRadius:i,outerRadius:o,startAngle:l,endAngle:c}=e,d=(l+c)/2;if(r==="outside"){var{x:u,y:m}=Ee(n,a,o+t,d);return{x:u,y:m,textAnchor:u>=n?"start":"end",verticalAnchor:"middle"}}if(r==="center")return{x:n,y:a,textAnchor:"middle",verticalAnchor:"middle"};if(r==="centerTop")return{x:n,y:a,textAnchor:"middle",verticalAnchor:"start"};if(r==="centerBottom")return{x:n,y:a,textAnchor:"middle",verticalAnchor:"end"};var h=(i+o)/2,{x:v,y:g}=Ee(n,a,h,d);return{x:v,y:g,textAnchor:"middle",verticalAnchor:"middle"}},Sa=e=>e!=null&&"cx"in e&&Z(e.cx),i1={angle:0,offset:5,zIndex:Ve.label,position:"middle",textBreakAll:!1};function s1(e){if(!Sa(e))return e;var{cx:t,cy:r,outerRadius:n}=e,a=n*2;return{x:t-n,y:r-n,width:a,upperWidth:a,lowerWidth:a,height:a}}function tr(e){var t=Le(e,i1),{viewBox:r,parentViewBox:n,position:a,value:i,children:o,content:l,className:c="",textBreakAll:d,labelRef:u}=t,m=e1(),h=ob(),v=a==="center"?h:m??h,g,y,p;r==null?g=v:Sa(r)?g=r:g=oc(r);var b=s1(g);if(!g||De(i)&&De(o)&&!f.isValidElement(l)&&typeof l!="function")return null;var j=Pn(Pn({},t),{},{viewBox:g});if(f.isValidElement(l)){var{labelRef:x}=j,C=$m(j,W_);return f.cloneElement(l,C)}if(typeof l=="function"){var{content:w}=j,P=$m(j,H_);if(y=f.createElement(l,P),f.isValidElement(y))return y}else y=t1(t);var O=Je(t);if(Sa(g)){if(a==="insideStart"||a==="insideEnd"||a==="end")return n1(t,a,y,O,g);p=a1(g,t.offset,t.position)}else{if(!b)return null;var k=U_({viewBox:b,position:a,offset:t.offset,parentViewBox:Sa(n)?void 0:n});p=Pn(Pn({x:k.x,y:k.y,textAnchor:k.horizontalAnchor,verticalAnchor:k.verticalAnchor},k.width!==void 0?{width:k.width}:{}),k.height!==void 0?{height:k.height}:{})}return f.createElement(Pt,{zIndex:t.zIndex},f.createElement(ns,Bt({ref:u,className:de("recharts-label",c)},O,p,{textAnchor:rb(O.textAnchor)?O.textAnchor:p.textAnchor,breakAll:d}),y))}tr.displayName="Label";var o1=(e,t,r)=>{if(!e)return null;var n={viewBox:t,labelRef:r};return e===!0?f.createElement(tr,Bt({key:"label-implicit"},n)):Tt(e)?f.createElement(tr,Bt({key:"label-implicit",value:e},n)):f.isValidElement(e)?e.type===tr?f.cloneElement(e,Pn({key:"label-implicit"},n)):f.createElement(tr,Bt({key:"label-implicit",content:e},n)):Qc(e)?f.createElement(tr,Bt({key:"label-implicit",content:e},n)):e&&typeof e=="object"?f.createElement(tr,Bt({},e,{key:"label-implicit"},n)):null};function l1(e){var{label:t,labelRef:r}=e,n=ob();return o1(t,n,r)||null}var c1=["valueAccessor"],u1=["dataKey","clockWise","id","textBreakAll","zIndex"];function ii(){return ii=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)({}).hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},ii.apply(null,arguments)}function Fm(e,t){if(e==null)return{};var r,n,a=d1(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)===-1&&{}.propertyIsEnumerable.call(e,r)&&(a[r]=e[r])}return a}function d1(e,t){if(e==null)return{};var r={};for(var n in e)if({}.hasOwnProperty.call(e,n)){if(t.indexOf(n)!==-1)continue;r[n]=e[n]}return r}var f1=e=>{var t=Array.isArray(e.value)?e.value[e.value.length-1]:e.value;if(R_(t))return t},lb=f.createContext(void 0),m1=lb.Provider,cb=f.createContext(void 0),v1=cb.Provider;function h1(){return f.useContext(lb)}function p1(){return f.useContext(cb)}function Na(e){var{valueAccessor:t=f1}=e,r=Fm(e,c1),{dataKey:n,clockWise:a,id:i,textBreakAll:o,zIndex:l}=r,c=Fm(r,u1),d=h1(),u=p1(),m=d||u;return!m||!m.length?null:f.createElement(Pt,{zIndex:l??Ve.label},f.createElement(Qe,{className:"recharts-label-list"},m.map((h,v)=>{var g,y=De(n)?t(h,v):he(h.payload,n),p=De(i)?{}:{id:"".concat(i,"-").concat(v)};return f.createElement(tr,ii({key:"label-".concat(v)},Je(h),c,p,{fill:(g=r.fill)!==null&&g!==void 0?g:h.fill,parentViewBox:h.parentViewBox,value:y,textBreakAll:o,viewBox:h.viewBox,index:v,zIndex:0}))})))}Na.displayName="LabelList";function ub(e){var{label:t}=e;return t?t===!0?f.createElement(Na,{key:"labelList-implicit"}):f.isValidElement(t)||Qc(t)?f.createElement(Na,{key:"labelList-implicit",content:t}):typeof t=="object"?f.createElement(Na,ii({key:"labelList-implicit"},t,{type:String(t.type)})):null:null}function pl(){return pl=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)({}).hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},pl.apply(null,arguments)}var db=e=>{var{cx:t,cy:r,r:n,className:a}=e,i=de("recharts-dot",a);return Z(t)&&Z(r)&&Z(n)?f.createElement("circle",pl({},yt(e),Zl(e),{className:i,cx:t,cy:r,r:n})):null},fb=e=>e.graphicalItems.polarItems,y1=M([Pe,Jn],Nc),as=M([fb,Oe,y1],Oc),g1=M([as],Ac),is=M([g1,Wi],Ec),b1=M([is,Oe,as],Zy);M([is,Oe,as],(e,t,r)=>r.length>0?e.flatMap(n=>r.flatMap(a=>{var i,o=he(n,(i=t.dataKey)!==null&&i!==void 0?i:a.dataKey);return{value:o,errorDomain:[]}})).filter(Boolean):t?.dataKey!=null?e.map(n=>({value:he(n,t.dataKey),errorDomain:[]})):e.map(n=>({value:n,errorDomain:[]})));var zm=()=>{},x1=M([is,Oe,as,Ji,Pe,SN],Dc),j1=M([Oe,Tc,Ic,zm,x1,zm,ge,Pe],Lc),mb=M([Oe,ge,is,b1,Zn,Pe,j1],Rc),w1=M([mb,cn,lr],Bc),C1=M([Oe,mb,w1,Pe],zc);M([lr,C1],Fy);var k1={radiusAxis:{},angleAxis:{}},vb=Ye({name:"polarAxis",initialState:k1,reducers:{addRadiusAxis(e,t){e.radiusAxis[t.payload.id]=t.payload},removeRadiusAxis(e,t){delete e.radiusAxis[t.payload.id]},addAngleAxis(e,t){e.angleAxis[t.payload.id]=t.payload},removeAngleAxis(e,t){delete e.angleAxis[t.payload.id]}}}),{addRadiusAxis:k2,removeRadiusAxis:P2,addAngleAxis:S2,removeAngleAxis:N2}=vb.actions,P1=vb.reducer;function hb(e){return e&&typeof e=="object"&&"className"in e&&typeof e.className=="string"?e.className:""}function Km(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),r.push.apply(r,n)}return r}function Vm(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?Km(Object(r),!0).forEach(function(n){S1(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):Km(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function S1(e,t,r){return(t=N1(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function N1(e){var t=O1(e,"string");return typeof t=="symbol"?t:t+""}function O1(e,t){if(typeof e!="object"||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var n=r.call(e,t);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}var A1=(e,t)=>t,eu=M([fb,A1],(e,t)=>e.filter(r=>r.type==="pie").find(r=>r.id===t)),E1=[],tu=(e,t,r)=>r?.length===0?E1:r,pb=M([Wi,eu,tu],(e,t,r)=>{var{chartData:n}=e;if(t!=null){var a;if(t?.data!=null&&t.data.length>0?a=t.data:a=n,(!a||!a.length)&&r!=null&&(a=r.map(i=>Vm(Vm({},t.presentationProps),i.props))),a!=null)return a}}),_1=M([pb,eu,tu],(e,t,r)=>{if(!(e==null||t==null))return e.map((n,a)=>{var i,o=he(n,t.nameKey,t.name),l;return r!=null&&(i=r[a])!==null&&i!==void 0&&(i=i.props)!==null&&i!==void 0&&i.fill?l=r[a].props.fill:typeof n=="object"&&n!=null&&"fill"in n?l=n.fill:l=t.fill,{value:Di(o,t.dataKey),color:l,payload:n,type:t.legendType}})}),M1=M([pb,eu,tu,Be],(e,t,r,n)=>{if(!(t==null||e==null))return zM({offset:n,pieSettings:t,displayedData:e,cells:r})}),bo={exports:{}},me={};/** @license React v17.0.2
62
62
  * react-is.production.min.js
63
63
  *
64
64
  * Copyright (c) Facebook, Inc. and its affiliates.
65
65
  *
66
66
  * This source code is licensed under the MIT license found in the
67
67
  * LICENSE file in the root directory of this source tree.
68
- */var Um;function T1(){if(Um)return me;Um=1;var e=60103,t=60106,r=60107,n=60108,a=60114,i=60109,o=60110,l=60112,c=60113,d=60120,u=60115,m=60116,h=60121,v=60122,y=60117,g=60129,p=60131;if(typeof Symbol=="function"&&Symbol.for){var b=Symbol.for;e=b("react.element"),t=b("react.portal"),r=b("react.fragment"),n=b("react.strict_mode"),a=b("react.profiler"),i=b("react.provider"),o=b("react.context"),l=b("react.forward_ref"),c=b("react.suspense"),d=b("react.suspense_list"),u=b("react.memo"),m=b("react.lazy"),h=b("react.block"),v=b("react.server.block"),y=b("react.fundamental"),g=b("react.debug_trace_mode"),p=b("react.legacy_hidden")}function j(I){if(typeof I=="object"&&I!==null){var D=I.$$typeof;switch(D){case e:switch(I=I.type,I){case r:case a:case n:case c:case d:return I;default:switch(I=I&&I.$$typeof,I){case o:case l:case m:case u:case i:return I;default:return D}}case t:return D}}}var x=i,C=e,w=l,P=r,O=m,k=u,N=t,S=a,A=n,_=c;return me.ContextConsumer=o,me.ContextProvider=x,me.Element=C,me.ForwardRef=w,me.Fragment=P,me.Lazy=O,me.Memo=k,me.Portal=N,me.Profiler=S,me.StrictMode=A,me.Suspense=_,me.isAsyncMode=function(){return!1},me.isConcurrentMode=function(){return!1},me.isContextConsumer=function(I){return j(I)===o},me.isContextProvider=function(I){return j(I)===i},me.isElement=function(I){return typeof I=="object"&&I!==null&&I.$$typeof===e},me.isForwardRef=function(I){return j(I)===l},me.isFragment=function(I){return j(I)===r},me.isLazy=function(I){return j(I)===m},me.isMemo=function(I){return j(I)===u},me.isPortal=function(I){return j(I)===t},me.isProfiler=function(I){return j(I)===a},me.isStrictMode=function(I){return j(I)===n},me.isSuspense=function(I){return j(I)===c},me.isValidElementType=function(I){return typeof I=="string"||typeof I=="function"||I===r||I===a||I===g||I===n||I===c||I===d||I===p||typeof I=="object"&&I!==null&&(I.$$typeof===m||I.$$typeof===u||I.$$typeof===i||I.$$typeof===o||I.$$typeof===l||I.$$typeof===y||I.$$typeof===h||I[0]===v)},me.typeOf=j,me}var qm;function I1(){return qm||(qm=1,bo.exports=T1()),bo.exports}var D1=I1(),Wm=e=>typeof e=="string"?e:e?e.displayName||e.name||"Component":"",Hm=null,xo=null,yb=e=>{if(e===Hm&&Array.isArray(xo))return xo;var t=[];return f.Children.forEach(e,r=>{De(r)||(D1.isFragment(r)?t=t.concat(yb(r.props.children)):t.push(r))}),xo=t,Hm=e,t};function gb(e,t){var r=[],n=[];return Array.isArray(t)?n=t.map(a=>Wm(a)):n=[Wm(t)],yb(e).forEach(a=>{var i=Nr(a,"type.displayName")||Nr(a,"type.name");i&&n.indexOf(i)!==-1&&r.push(a)}),r}var bb=e=>e&&typeof e=="object"&&"clipDot"in e?!!e.clipDot:!0,jo={},Gm;function L1(){return Gm||(Gm=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(r){if(typeof r!="object"||r==null)return!1;if(Object.getPrototypeOf(r)===null)return!0;if(Object.prototype.toString.call(r)!=="[object Object]"){const a=r[Symbol.toStringTag];return a==null||!Object.getOwnPropertyDescriptor(r,Symbol.toStringTag)?.writable?!1:r.toString()===`[object ${a}]`}let n=r;for(;Object.getPrototypeOf(n)!==null;)n=Object.getPrototypeOf(n);return Object.getPrototypeOf(r)===n}e.isPlainObject=t})(jo)),jo}var wo,Xm;function R1(){return Xm||(Xm=1,wo=L1().isPlainObject),wo}var $1=R1();const B1=nn($1);var Ym,Zm,Jm,Qm,ev;function tv(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),r.push.apply(r,n)}return r}function rv(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?tv(Object(r),!0).forEach(function(n){F1(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):tv(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function F1(e,t,r){return(t=z1(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function z1(e){var t=K1(e,"string");return typeof t=="symbol"?t:t+""}function K1(e,t){if(typeof e!="object"||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var n=r.call(e,t);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function si(){return si=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)({}).hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},si.apply(null,arguments)}function gn(e,t){return t||(t=e.slice(0)),Object.freeze(Object.defineProperties(e,{raw:{value:Object.freeze(t)}}))}var nv=(e,t,r,n,a)=>{var i=r-n,o;return o=Ne(Ym||(Ym=gn(["M ",",",""])),e,t),o+=Ne(Zm||(Zm=gn(["L ",",",""])),e+r,t),o+=Ne(Jm||(Jm=gn(["L ",",",""])),e+r-i/2,t+a),o+=Ne(Qm||(Qm=gn(["L ",",",""])),e+r-i/2-n,t+a),o+=Ne(ev||(ev=gn(["L ",","," Z"])),e,t),o},V1={x:0,y:0,upperWidth:0,lowerWidth:0,height:0,isUpdateAnimationActive:!1,animationBegin:0,animationDuration:1500,animationEasing:"ease"},U1=e=>{var t=Le(e,V1),{x:r,y:n,upperWidth:a,lowerWidth:i,height:o,className:l}=t,{animationEasing:c,animationDuration:d,animationBegin:u,isUpdateAnimationActive:m}=t,h=f.useRef(null),[v,y]=f.useState(-1),g=f.useRef(a),p=f.useRef(i),b=f.useRef(o),j=f.useRef(r),x=f.useRef(n),C=qi(e,"trapezoid-");if(f.useEffect(()=>{if(h.current&&h.current.getTotalLength)try{var D=h.current.getTotalLength();D&&y(D)}catch{}},[]),r!==+r||n!==+n||a!==+a||i!==+i||o!==+o||a===0&&i===0||o===0)return null;var w=de("recharts-trapezoid",l);if(!m)return f.createElement("g",null,f.createElement("path",si({},Je(t),{className:w,d:nv(r,n,a,i,o)})));var P=g.current,O=p.current,k=b.current,N=j.current,S=x.current,A="0px ".concat(v===-1?1:v,"px"),_="".concat(v,"px ").concat(v,"px"),I=uy(["strokeDasharray"],d,c);return f.createElement(Ui,{animationId:C,key:C,canBegin:v>0,duration:d,easing:c,isActive:m,begin:u},D=>{var F=We(P,a,D),V=We(O,i,D),U=We(k,o,D),te=We(N,r,D),q=We(S,n,D);h.current&&(g.current=F,p.current=V,b.current=U,j.current=te,x.current=q);var ee=D>0?{transition:I,strokeDasharray:_}:{strokeDasharray:A};return f.createElement("path",si({},Je(t),{className:w,d:nv(te,q,F,V,U),ref:h,style:rv(rv({},ee),t.style)}))})},q1=["option","shapeType","activeClassName","inActiveClassName"];function W1(e,t){if(e==null)return{};var r,n,a=H1(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)===-1&&{}.propertyIsEnumerable.call(e,r)&&(a[r]=e[r])}return a}function H1(e,t){if(e==null)return{};var r={};for(var n in e)if({}.hasOwnProperty.call(e,n)){if(t.indexOf(n)!==-1)continue;r[n]=e[n]}return r}function av(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),r.push.apply(r,n)}return r}function oi(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?av(Object(r),!0).forEach(function(n){G1(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):av(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function G1(e,t,r){return(t=X1(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function X1(e){var t=Y1(e,"string");return typeof t=="symbol"?t:t+""}function Y1(e,t){if(typeof e!="object"||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var n=r.call(e,t);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function Z1(e,t){return oi(oi({},t),e)}function J1(e,t){return e==="symbols"}function iv(e){var{shapeType:t,elementProps:r}=e;switch(t){case"rectangle":return f.createElement(vy,r);case"trapezoid":return f.createElement(U1,r);case"sector":return f.createElement(gy,r);case"symbols":if(J1(t))return f.createElement(Yl,r);break;case"curve":return f.createElement(mc,r);default:return null}}function Q1(e){return f.isValidElement(e)?e.props:e}function xb(e){var{option:t,shapeType:r,activeClassName:n="recharts-active-shape",inActiveClassName:a="recharts-shape"}=e,i=W1(e,q1),o;if(f.isValidElement(t))o=f.cloneElement(t,oi(oi({},i),Q1(t)));else if(typeof t=="function")o=t(i,i.index);else if(B1(t)&&typeof t!="boolean"){var l=Z1(t,i);o=f.createElement(iv,{shapeType:r,elementProps:l})}else{var c=i;o=f.createElement(iv,{shapeType:r,elementProps:c})}return i.isActive?f.createElement(Qe,{className:n},o):f.createElement(Qe,{className:a},o)}var eM=(e,t,r)=>{var n=ve();return(a,i)=>o=>{e?.(a,i,o),n(wg({activeIndex:String(i),activeDataKey:t,activeCoordinate:a.tooltipPosition,activeGraphicalItemId:r}))}},tM=e=>{var t=ve();return(r,n)=>a=>{e?.(r,n,a),t(nA())}},rM=(e,t,r)=>{var n=ve();return(a,i)=>o=>{e?.(a,i,o),n(aA({activeIndex:String(i),activeDataKey:t,activeCoordinate:a.tooltipPosition,activeGraphicalItemId:r}))}};function jb(e){var{tooltipEntrySettings:t}=e,r=ve(),n=rt(),a=f.useRef(null);return f.useLayoutEffect(()=>{n||(a.current===null?r(QO(t)):a.current!==t&&r(eA({prev:a.current,next:t})),a.current=t)},[t,r,n]),f.useLayoutEffect(()=>()=>{a.current&&(r(tA(a.current)),a.current=null)},[r]),null}function nM(e){var{legendPayload:t}=e,r=ve(),n=rt(),a=f.useRef(null);return f.useLayoutEffect(()=>{n||(a.current===null?r(iy(t)):a.current!==t&&r(sy({prev:a.current,next:t})),a.current=t)},[r,n,t]),f.useLayoutEffect(()=>()=>{a.current&&(r(oy(a.current)),a.current=null)},[r]),null}function aM(e){var{legendPayload:t}=e,r=ve(),n=Y(ge),a=f.useRef(null);return f.useLayoutEffect(()=>{n!=="centric"&&n!=="radial"||(a.current===null?r(iy(t)):a.current!==t&&r(sy({prev:a.current,next:t})),a.current=t)},[r,n,t]),f.useLayoutEffect(()=>()=>{a.current&&(r(oy(a.current)),a.current=null)},[r]),null}var Co,iM=()=>{var[e]=f.useState(()=>An("uid-"));return e},sM=(Co=Lx.useId)!==null&&Co!==void 0?Co:iM;function oM(e,t){var r=sM();return t||(e?"".concat(e,"-").concat(r):r)}var lM=f.createContext(void 0),wb=e=>{var{id:t,type:r,children:n}=e,a=oM("recharts-".concat(r),t);return f.createElement(lM.Provider,{value:a},n(a))},cM={cartesianItems:[],polarItems:[]},Cb=Xe({name:"graphicalItems",initialState:cM,reducers:{addCartesianGraphicalItem:{reducer(e,t){e.cartesianItems.push(t.payload)},prepare:xe()},replaceCartesianGraphicalItem:{reducer(e,t){var{prev:r,next:n}=t.payload,a=pt(e).cartesianItems.indexOf(r);a>-1&&(e.cartesianItems[a]=n)},prepare:xe()},removeCartesianGraphicalItem:{reducer(e,t){var r=pt(e).cartesianItems.indexOf(t.payload);r>-1&&e.cartesianItems.splice(r,1)},prepare:xe()},addPolarGraphicalItem:{reducer(e,t){e.polarItems.push(t.payload)},prepare:xe()},removePolarGraphicalItem:{reducer(e,t){var r=pt(e).polarItems.indexOf(t.payload);r>-1&&e.polarItems.splice(r,1)},prepare:xe()},replacePolarGraphicalItem:{reducer(e,t){var{prev:r,next:n}=t.payload,a=pt(e).polarItems.indexOf(r);a>-1&&(e.polarItems[a]=n)},prepare:xe()}}}),{addCartesianGraphicalItem:uM,replaceCartesianGraphicalItem:dM,removeCartesianGraphicalItem:fM,addPolarGraphicalItem:mM,removePolarGraphicalItem:vM,replacePolarGraphicalItem:hM}=Cb.actions,pM=Cb.reducer,yM=e=>{var t=ve(),r=f.useRef(null);return f.useLayoutEffect(()=>{r.current===null?t(uM(e)):r.current!==e&&t(dM({prev:r.current,next:e})),r.current=e},[t,e]),f.useLayoutEffect(()=>()=>{r.current&&(t(fM(r.current)),r.current=null)},[t]),null},gM=f.memo(yM),bM=e=>{var t=ve(),r=f.useRef(null);return f.useLayoutEffect(()=>{r.current===null?t(mM(e)):r.current!==e&&t(hM({prev:r.current,next:e})),r.current=e},[t,e]),f.useLayoutEffect(()=>()=>{r.current&&(t(vM(r.current)),r.current=null)},[t]),null},xM=f.memo(bM),jM=["key"],wM=["onMouseEnter","onClick","onMouseLeave"],CM=["id"],kM=["id"];function ir(){return ir=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)({}).hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},ir.apply(null,arguments)}function ss(e,t){if(e==null)return{};var r,n,a=PM(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)===-1&&{}.propertyIsEnumerable.call(e,r)&&(a[r]=e[r])}return a}function PM(e,t){if(e==null)return{};var r={};for(var n in e)if({}.hasOwnProperty.call(e,n)){if(t.indexOf(n)!==-1)continue;r[n]=e[n]}return r}function sv(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),r.push.apply(r,n)}return r}function Ce(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?sv(Object(r),!0).forEach(function(n){SM(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):sv(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function SM(e,t,r){return(t=NM(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function NM(e){var t=OM(e,"string");return typeof t=="symbol"?t:t+""}function OM(e,t){if(typeof e!="object"||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var n=r.call(e,t);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function AM(e){var t=f.useMemo(()=>gb(e.children,rs),[e.children]),r=Y(n=>_1(n,e.id,t));return r==null?null:f.createElement(aM,{legendPayload:r})}function EM(e){if(!(e==null||typeof e=="boolean"||typeof e=="function")){if(f.isValidElement(e)){var t,r=(t=e.props)===null||t===void 0?void 0:t.fill;return typeof r=="string"?r:void 0}var{fill:n}=e;return typeof n=="string"?n:void 0}}var _M=f.memo(e=>{var{dataKey:t,nameKey:r,sectors:n,stroke:a,strokeWidth:i,fill:o,name:l,hide:c,tooltipType:d,id:u,activeShape:m}=e,h=EM(m),v=n.map(g=>{var p=g.tooltipPayload;return h==null||p==null?p:p.map(b=>Ce(Ce({},b),{},{color:h,fill:h}))}),y={dataDefinedOnItem:v,getPosition:g=>{var p;return(p=n[Number(g)])===null||p===void 0?void 0:p.tooltipPosition},settings:{stroke:a,strokeWidth:i,fill:o,dataKey:t,nameKey:r,name:Di(l,t),hide:c,type:d,color:o,unit:"",graphicalItemId:u}};return f.createElement(jb,{tooltipEntrySettings:y})}),MM=(e,t)=>e>t?"start":e<t?"end":"middle",TM=(e,t,r)=>ot(typeof t=="function"?t(e):t,r,r*.8),IM=(e,t,r)=>{var{top:n,left:a,width:i,height:o}=t,l=hy(i,o),c=a+ot(e.cx,i,i/2),d=n+ot(e.cy,o,o/2),u=ot(e.innerRadius,l,0),m=TM(r,e.outerRadius,l),h=e.maxRadius||Math.sqrt(i*i+o*o)/2;return{cx:c,cy:d,innerRadius:u,outerRadius:m,maxRadius:h}},DM=(e,t)=>{var r=He(t-e),n=Math.min(Math.abs(t-e),360);return r*n},LM=(e,t)=>{if(f.isValidElement(e))return f.cloneElement(e,t);if(typeof e=="function")return e(t);var r=de("recharts-pie-label-line",typeof e!="boolean"?e.className:""),{key:n}=t,a=ss(t,jM);return f.createElement(mc,ir({},a,{type:"linear",className:r}))},RM=(e,t,r)=>{if(f.isValidElement(e))return f.cloneElement(e,t);var n=r;if(typeof e=="function"&&(n=e(t),f.isValidElement(n)))return n;var a=de("recharts-pie-label-text",hb(e));return f.createElement(ns,ir({},t,{alignmentBaseline:"middle",className:a}),n)};function $M(e){var{sectors:t,props:r,showLabels:n}=e,{label:a,labelLine:i,dataKey:o}=r;if(!n||!a||!t)return null;var l=yt(r),c=Xr(a),d=Xr(i),u=typeof a=="object"&&"offsetRadius"in a&&typeof a.offsetRadius=="number"&&a.offsetRadius||20,m=t.map((h,v)=>{var y=(h.startAngle+h.endAngle)/2,g=Ee(h.cx,h.cy,h.outerRadius+u,y),p=Ce(Ce(Ce(Ce({},l),h),{},{stroke:"none"},c),{},{index:v,textAnchor:MM(g.x,h.cx)},g),b=Ce(Ce(Ce(Ce({},l),h),{},{fill:"none",stroke:h.fill},d),{},{index:v,points:[Ee(h.cx,h.cy,h.outerRadius,y),g],key:"line"});return f.createElement(Ct,{zIndex:Ve.label,key:"label-".concat(h.startAngle,"-").concat(h.endAngle,"-").concat(h.midAngle,"-").concat(v)},f.createElement(Qe,null,i&&LM(i,b),RM(a,p,he(h,o))))});return f.createElement(Qe,{className:"recharts-pie-labels"},m)}function BM(e){var{sectors:t,props:r,showLabels:n}=e,{label:a}=r;return typeof a=="object"&&a!=null&&"position"in a?f.createElement(ub,{label:a}):f.createElement($M,{sectors:t,props:r,showLabels:n})}function FM(e){var{sectors:t,activeShape:r,inactiveShape:n,allOtherPieProps:a,shape:i,id:o}=e,l=Y(rn),c=Y($g),d=Y(Bg),{onMouseEnter:u,onClick:m,onMouseLeave:h}=a,v=ss(a,wM),y=eM(u,a.dataKey,o),g=tM(h),p=rM(m,a.dataKey,o);return t==null||t.length===0?null:f.createElement(f.Fragment,null,t.map((b,j)=>{if(b?.startAngle===0&&b?.endAngle===0&&t.length!==1)return null;var x=d==null||d===o,C=String(j)===l&&(c==null||a.dataKey===c)&&x,w=l?n:null,P=r&&C?r:w,O=Ce(Ce({},b),{},{stroke:b.stroke,tabIndex:-1,[qp]:j,[Wp]:o});return f.createElement(Qe,ir({key:"sector-".concat(b?.startAngle,"-").concat(b?.endAngle,"-").concat(b.midAngle,"-").concat(j),tabIndex:-1,className:"recharts-pie-sector"},Jl(v,b,j),{onMouseEnter:y(b,j),onMouseLeave:g(b,j),onClick:p(b,j)}),f.createElement(xb,ir({option:i??P,index:j,shapeType:"sector",isActive:C},O)))}))}function zM(e){var t,{pieSettings:r,displayedData:n,cells:a,offset:i}=e,{cornerRadius:o,startAngle:l,endAngle:c,dataKey:d,nameKey:u,tooltipType:m}=r,h=Math.abs(r.minAngle),v=DM(l,c),y=Math.abs(v),g=n.length<=1?0:(t=r.paddingAngle)!==null&&t!==void 0?t:0,p=n.filter(k=>he(k,d,0)!==0).length,b=(y>=360?p:p-1)*g,j=n.reduce((k,N)=>{var S=he(N,d,0);return k+(Z(S)?S:0)},0),x=h>0&&j>0&&n.some(k=>{var N=he(k,d,0),S=(Z(N)?N:0)/j;return N!==0&&S*y<h}),C=x?h:0,w=y-p*C-b,P;if(j>0){var O;P=n.map((k,N)=>{var S=he(k,d,0),A=he(k,u,N),_=IM(r,i,k),I=(Z(S)?S:0)/j,D,F=Ce(Ce({},k),a&&a[N]&&a[N].props),V=F!=null&&"fill"in F&&typeof F.fill=="string"?F.fill:r.fill;N?D=O.endAngle+He(v)*g*(S!==0?1:0):D=l;var U=D+He(v)*((S!==0?C:0)+I*w),te=(D+U)/2,q=(_.innerRadius+_.outerRadius)/2,ee=[{name:A,value:S,payload:F,dataKey:d,type:m,color:V,fill:V,graphicalItemId:r.id}],L=Ee(_.cx,_.cy,q,te);return O=Ce(Ce(Ce(Ce({},r.presentationProps),{},{percent:I,cornerRadius:typeof o=="string"?parseFloat(o):o,name:A,tooltipPayload:ee,midAngle:te,middleRadius:q,tooltipPosition:L},F),_),{},{value:S,dataKey:d,startAngle:D,endAngle:U,payload:F,paddingAngle:S!==0?He(v)*g:0}),O})}return P}function KM(e){var{showLabels:t,sectors:r,children:n}=e,a=f.useMemo(()=>!t||!r?[]:r.map(i=>({value:i.value,payload:i.payload,clockWise:!1,parentViewBox:void 0,viewBox:{cx:i.cx,cy:i.cy,innerRadius:i.innerRadius,outerRadius:i.outerRadius,startAngle:i.startAngle,endAngle:i.endAngle,clockWise:!1},fill:i.fill})),[r,t]);return f.createElement(v1,{value:t?a:void 0},n)}function VM(e){var{props:t,previousSectorsRef:r,id:n}=e,{sectors:a,isAnimationActive:i,animationBegin:o,animationDuration:l,animationEasing:c,activeShape:d,inactiveShape:u,onAnimationStart:m,onAnimationEnd:h}=t,v=qi(t,"recharts-pie-"),y=r.current,[g,p]=f.useState(!1),b=f.useCallback(()=>{typeof h=="function"&&h(),p(!1)},[h]),j=f.useCallback(()=>{typeof m=="function"&&m(),p(!0)},[m]);return f.createElement(KM,{showLabels:!g,sectors:a},f.createElement(Ui,{animationId:v,begin:o,duration:l,isActive:i,easing:c,onAnimationStart:j,onAnimationEnd:b,key:v},x=>{var C,w=[],P=a&&a[0],O=(C=P?.startAngle)!==null&&C!==void 0?C:0;return a?.forEach((k,N)=>{var S=y&&y[N],A=N>0?Nr(k,"paddingAngle",0):0;if(S){var _=We(S.endAngle-S.startAngle,k.endAngle-k.startAngle,x),I=Ce(Ce({},k),{},{startAngle:O+A,endAngle:O+_+A});w.push(I),O=I.endAngle}else{var{endAngle:D,startAngle:F}=k,V=We(0,D-F,x),U=Ce(Ce({},k),{},{startAngle:O+A,endAngle:O+V+A});w.push(U),O=U.endAngle}}),r.current=w,f.createElement(Qe,null,f.createElement(FM,{sectors:w,activeShape:d,inactiveShape:u,allOtherPieProps:t,shape:t.shape,id:n}))}),f.createElement(BM,{showLabels:!g,sectors:a,props:t}),t.children)}var UM={animationBegin:400,animationDuration:1500,animationEasing:"ease",cx:"50%",cy:"50%",dataKey:"value",endAngle:360,fill:"#808080",hide:!1,innerRadius:0,isAnimationActive:"auto",label:!1,labelLine:!0,legendType:"rect",minAngle:0,nameKey:"name",outerRadius:"80%",paddingAngle:0,rootTabIndex:0,startAngle:0,stroke:"#fff",zIndex:Ve.area};function qM(e){var{id:t}=e,r=ss(e,CM),{hide:n,className:a,rootTabIndex:i}=e,o=f.useMemo(()=>gb(e.children,rs),[e.children]),l=Y(u=>M1(u,t,o)),c=f.useRef(null),d=de("recharts-pie",a);return n||l==null?(c.current=null,f.createElement(Qe,{tabIndex:i,className:d})):f.createElement(Ct,{zIndex:e.zIndex},f.createElement(_M,{dataKey:e.dataKey,nameKey:e.nameKey,sectors:l,stroke:e.stroke,strokeWidth:e.strokeWidth,fill:e.fill,name:e.name,hide:e.hide,tooltipType:e.tooltipType,id:t,activeShape:e.activeShape}),f.createElement(Qe,{tabIndex:i,className:d},f.createElement(VM,{props:Ce(Ce({},r),{},{sectors:l}),previousSectorsRef:c,id:t})))}function WM(e){var t=Le(e,UM),{id:r}=t,n=ss(t,kM),a=yt(n);return f.createElement(wb,{id:r,type:"pie"},i=>f.createElement(f.Fragment,null,f.createElement(xM,{type:"pie",id:i,data:n.data,dataKey:n.dataKey,hide:n.hide,angleAxisId:0,radiusAxisId:0,name:n.name,nameKey:n.nameKey,tooltipType:n.tooltipType,legendType:n.legendType,fill:n.fill,cx:n.cx,cy:n.cy,startAngle:n.startAngle,endAngle:n.endAngle,paddingAngle:n.paddingAngle,minAngle:n.minAngle,innerRadius:n.innerRadius,outerRadius:n.outerRadius,cornerRadius:n.cornerRadius,presentationProps:a,maxRadius:t.maxRadius}),f.createElement(AM,ir({},n,{id:i})),f.createElement(qM,ir({},n,{id:i}))))}var kb=WM;kb.displayName="Pie";var HM=["points"];function ov(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),r.push.apply(r,n)}return r}function ko(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?ov(Object(r),!0).forEach(function(n){GM(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):ov(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function GM(e,t,r){return(t=XM(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function XM(e){var t=YM(e,"string");return typeof t=="symbol"?t:t+""}function YM(e,t){if(typeof e!="object"||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var n=r.call(e,t);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function li(){return li=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)({}).hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},li.apply(null,arguments)}function ZM(e,t){if(e==null)return{};var r,n,a=JM(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)===-1&&{}.propertyIsEnumerable.call(e,r)&&(a[r]=e[r])}return a}function JM(e,t){if(e==null)return{};var r={};for(var n in e)if({}.hasOwnProperty.call(e,n)){if(t.indexOf(n)!==-1)continue;r[n]=e[n]}return r}function QM(e){var{option:t,dotProps:r,className:n}=e;if(f.isValidElement(t))return f.cloneElement(t,r);if(typeof t=="function")return t(r);var a=de(n,typeof t!="boolean"?t.className:""),i=r??{},{points:o}=i,l=ZM(i,HM);return f.createElement(db,li({},l,{className:a}))}function eT(e,t){return e==null?!1:t?!0:e.length===1}function tT(e){var{points:t,dot:r,className:n,dotClassName:a,dataKey:i,baseProps:o,needClip:l,clipPathId:c,zIndex:d=Ve.scatter}=e;if(!eT(t,r))return null;var u=bb(r),m=nw(r),h=t.map((y,g)=>{var p,b,j=ko(ko(ko({r:3},o),m),{},{index:g,cx:(p=y.x)!==null&&p!==void 0?p:void 0,cy:(b=y.y)!==null&&b!==void 0?b:void 0,dataKey:i,value:y.value,payload:y.payload,points:t});return f.createElement(QM,{key:"dot-".concat(g),option:r,dotProps:j,className:a})}),v={};return l&&c!=null&&(v.clipPath="url(#clipPath-".concat(u?"":"dots-").concat(c,")")),f.createElement(Ct,{zIndex:d},f.createElement(Qe,li({className:n},v),h))}function lv(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),r.push.apply(r,n)}return r}function cv(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?lv(Object(r),!0).forEach(function(n){rT(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):lv(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function rT(e,t,r){return(t=nT(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function nT(e){var t=aT(e,"string");return typeof t=="symbol"?t:t+""}function aT(e,t){if(typeof e!="object"||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var n=r.call(e,t);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}var iT={xAxis:{},yAxis:{},zAxis:{}},Pb=Xe({name:"cartesianAxis",initialState:iT,reducers:{addXAxis:{reducer(e,t){e.xAxis[t.payload.id]=t.payload},prepare:xe()},replaceXAxis:{reducer(e,t){var{prev:r,next:n}=t.payload;e.xAxis[r.id]!==void 0&&(r.id!==n.id&&delete e.xAxis[r.id],e.xAxis[n.id]=n)},prepare:xe()},removeXAxis:{reducer(e,t){delete e.xAxis[t.payload.id]},prepare:xe()},addYAxis:{reducer(e,t){e.yAxis[t.payload.id]=t.payload},prepare:xe()},replaceYAxis:{reducer(e,t){var{prev:r,next:n}=t.payload;e.yAxis[r.id]!==void 0&&(r.id!==n.id&&delete e.yAxis[r.id],e.yAxis[n.id]=n)},prepare:xe()},removeYAxis:{reducer(e,t){delete e.yAxis[t.payload.id]},prepare:xe()},addZAxis:{reducer(e,t){e.zAxis[t.payload.id]=t.payload},prepare:xe()},replaceZAxis:{reducer(e,t){var{prev:r,next:n}=t.payload;e.zAxis[r.id]!==void 0&&(r.id!==n.id&&delete e.zAxis[r.id],e.zAxis[n.id]=n)},prepare:xe()},removeZAxis:{reducer(e,t){delete e.zAxis[t.payload.id]},prepare:xe()},updateYAxisWidth(e,t){var{id:r,width:n}=t.payload,a=e.yAxis[r];if(a){var i,o=a.widthHistory||[];if(o.length===3&&o[0]===o[2]&&n===o[1]&&n!==a.width&&Math.abs(n-((i=o[0])!==null&&i!==void 0?i:0))<=1)return;var l=[...o,n].slice(-3);e.yAxis[r]=cv(cv({},a),{},{width:n,widthHistory:l})}}}}),{addXAxis:sT,replaceXAxis:oT,removeXAxis:lT,addYAxis:cT,replaceYAxis:uT,removeYAxis:dT,addZAxis:S2,replaceZAxis:N2,removeZAxis:O2,updateYAxisWidth:fT}=Pb.actions,mT=Pb.reducer,vT=M([Be],e=>({top:e.top,bottom:e.bottom,left:e.left,right:e.right})),hT=M([vT,Ht,Gt],(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)}}),ru=()=>Y(hT),pT=()=>Y(JA);function uv(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),r.push.apply(r,n)}return r}function Po(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?uv(Object(r),!0).forEach(function(n){yT(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):uv(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function yT(e,t,r){return(t=gT(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function gT(e){var t=bT(e,"string");return typeof t=="symbol"?t:t+""}function bT(e,t){if(typeof e!="object"||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var n=r.call(e,t);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}var xT=e=>{var{point:t,childIndex:r,mainColor:n,activeDot:a,dataKey:i,clipPath:o}=e;if(a===!1||t.x==null||t.y==null)return null;var l={index:r,dataKey:i,cx:t.x,cy:t.y,r:4,fill:n??"none",strokeWidth:2,stroke:"#fff",payload:t.payload,value:t.value},c=Po(Po(Po({},l),Xr(a)),Zl(a)),d;return f.isValidElement(a)?d=f.cloneElement(a,c):typeof a=="function"?d=a(c):d=f.createElement(db,c),f.createElement(Qe,{className:"recharts-active-dot",clipPath:o},d)};function jT(e){var{points:t,mainColor:r,activeDot:n,itemDataKey:a,clipPath:i,zIndex:o=Ve.activeDot}=e,l=Y(rn),c=pT();if(t==null||c==null)return null;var d=t.find(u=>c.includes(u.payload));return De(d)?null:f.createElement(Ct,{zIndex:o},f.createElement(xT,{point:d,childIndex:Number(l),mainColor:r,dataKey:a,activeDot:n,clipPath:i}))}var Sb=e=>{var{chartData:t}=e,r=ve(),n=rt();return f.useEffect(()=>n?()=>{}:(r(wm(t)),()=>{r(wm(void 0))}),[t,r,n]),null},dv={x:0,y:0,width:0,height:0,padding:{top:0,right:0,bottom:0,left:0}},Nb=Xe({name:"brush",initialState:dv,reducers:{setBrushSettings(e,t){return t.payload==null?dv:t.payload}}}),{setBrushSettings:A2}=Nb.actions,wT=Nb.reducer;function CT(e){return(e%180+180)%180}var kT=function(t){var{width:r,height:n}=t,a=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,i=CT(a),o=i*Math.PI/180,l=Math.atan(n/r),c=o>l&&o<Math.PI-l?n/Math.sin(o):r/Math.cos(o);return Math.abs(c)},PT={dots:[],areas:[],lines:[]},Ob=Xe({name:"referenceElements",initialState:PT,reducers:{addDot:(e,t)=>{e.dots.push(t.payload)},removeDot:(e,t)=>{var r=pt(e).dots.findIndex(n=>n===t.payload);r!==-1&&e.dots.splice(r,1)},addArea:(e,t)=>{e.areas.push(t.payload)},removeArea:(e,t)=>{var r=pt(e).areas.findIndex(n=>n===t.payload);r!==-1&&e.areas.splice(r,1)},addLine:(e,t)=>{e.lines.push(t.payload)},removeLine:(e,t)=>{var r=pt(e).lines.findIndex(n=>n===t.payload);r!==-1&&e.lines.splice(r,1)}}}),{addDot:E2,removeDot:_2,addArea:M2,removeArea:T2,addLine:I2,removeLine:D2}=Ob.actions,ST=Ob.reducer,NT=f.createContext(void 0),OT=e=>{var{children:t}=e,[r]=f.useState("".concat(An("recharts"),"-clip")),n=ru();if(n==null)return null;var{x:a,y:i,width:o,height:l}=n;return f.createElement(NT.Provider,{value:r},f.createElement("defs",null,f.createElement("clipPath",{id:r},f.createElement("rect",{x:a,y:i,height:l,width:o}))),t)};function Ab(e,t){if(t<1)return[];if(t===1)return e;for(var r=[],n=0;n<e.length;n+=t){var a=e[n];a!==void 0&&r.push(a)}return r}function AT(e,t,r){var n={width:e.width+t.width,height:e.height+t.height};return kT(n,r)}function ET(e,t,r){var n=r==="width",{x:a,y:i,width:o,height:l}=e;return t===1?{start:n?a:i,end:n?a+o:i+l}:{start:n?a+o:i+l,end:n?a:i}}function Bn(e,t,r,n,a){if(e*t<e*n||e*t>e*a)return!1;var i=r();return e*(t-e*i/2-n)>=0&&e*(t+e*i/2-a)<=0}function _T(e,t){return Ab(e,t+1)}function MT(e,t,r,n,a){for(var i=(n||[]).slice(),{start:o,end:l}=t,c=0,d=1,u=o,m=function(){var y=n?.[c];if(y===void 0)return{v:Ab(n,d)};var g=c,p,b=()=>(p===void 0&&(p=r(y,g)),p),j=y.coordinate,x=c===0||Bn(e,j,b,u,l);x||(c=0,u=o,d+=1),x&&(u=j+e*(b()/2+a),c+=d)},h;d<=i.length;)if(h=m(),h)return h.v;return[]}function TT(e,t,r,n,a){var i=(n||[]).slice(),o=i.length;if(o===0)return[];for(var{start:l,end:c}=t,d=1;d<=o;d++){for(var u=(o-1)%d,m=l,h=!0,v=function(){var C=n[g];if(C==null)return 0;var w=g,P,O=()=>(P===void 0&&(P=r(C,w)),P),k=C.coordinate,N=g===u||Bn(e,k,O,m,c);if(!N)return h=!1,1;N&&(m=k+e*(O()/2+a))},y,g=u;g<o&&(y=v(),!(y!==0&&y===1));g+=d);if(h){for(var p=[],b=u;b<o;b+=d){var j=n[b];j!=null&&p.push(j)}return p}}return[]}function fv(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),r.push.apply(r,n)}return r}function Ue(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?fv(Object(r),!0).forEach(function(n){IT(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):fv(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function IT(e,t,r){return(t=DT(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function DT(e){var t=LT(e,"string");return typeof t=="symbol"?t:t+""}function LT(e,t){if(typeof e!="object"||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var n=r.call(e,t);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function RT(e,t,r,n,a){for(var i=(n||[]).slice(),o=i.length,{start:l}=t,{end:c}=t,d=function(h){var v=i[h];if(v==null)return 1;var y=v,g,p=()=>(g===void 0&&(g=r(v,h)),g);if(h===o-1){var b=e*(y.coordinate+e*p()/2-c);i[h]=y=Ue(Ue({},y),{},{tickCoord:b>0?y.coordinate-b*e:y.coordinate})}else i[h]=y=Ue(Ue({},y),{},{tickCoord:y.coordinate});if(y.tickCoord!=null){var j=Bn(e,y.tickCoord,p,l,c);j&&(c=y.tickCoord-e*(p()/2+a),i[h]=Ue(Ue({},y),{},{isShow:!0}))}},u=o-1;u>=0;u--)d(u);return i}function $T(e,t,r,n,a,i){var o=(n||[]).slice(),l=o.length,{start:c,end:d}=t;if(i){var u=n[l-1];if(u!=null){var m=r(u,l-1),h=e*(u.coordinate+e*m/2-d);if(o[l-1]=u=Ue(Ue({},u),{},{tickCoord:h>0?u.coordinate-h*e:u.coordinate}),u.tickCoord!=null){var v=Bn(e,u.tickCoord,()=>m,c,d);v&&(d=u.tickCoord-e*(m/2+a),o[l-1]=Ue(Ue({},u),{},{isShow:!0}))}}}for(var y=i?l-1:l,g=function(j){var x=o[j];if(x==null)return 1;var C=x,w,P=()=>(w===void 0&&(w=r(x,j)),w);if(j===0){var O=e*(C.coordinate-e*P()/2-c);o[j]=C=Ue(Ue({},C),{},{tickCoord:O<0?C.coordinate-O*e:C.coordinate})}else o[j]=C=Ue(Ue({},C),{},{tickCoord:C.coordinate});if(C.tickCoord!=null){var k=Bn(e,C.tickCoord,P,c,d);k&&(c=C.tickCoord+e*(P()/2+a),o[j]=Ue(Ue({},C),{},{isShow:!0}))}},p=0;p<y;p++)g(p);return o}function nu(e,t,r){var{tick:n,ticks:a,viewBox:i,minTickGap:o,orientation:l,interval:c,tickFormatter:d,unit:u,angle:m}=e;if(!a||!a.length||!n)return[];if(Z(c)||Xn.isSsr){var h;return(h=_T(a,Z(c)?c:0))!==null&&h!==void 0?h:[]}var v=[],y=l==="top"||l==="bottom"?"width":"height",g=u&&y==="width"?On(u,{fontSize:t,letterSpacing:r}):{width:0,height:0},p=(w,P)=>{var O=typeof d=="function"?d(w.value,P):w.value;return y==="width"?AT(On(O,{fontSize:t,letterSpacing:r}),g,m):On(O,{fontSize:t,letterSpacing:r})[y]},b=a[0],j=a[1],x=a.length>=2&&b!=null&&j!=null?He(j.coordinate-b.coordinate):1,C=ET(i,x,y);return c==="equidistantPreserveStart"?MT(x,C,p,a,o):c==="equidistantPreserveEnd"?TT(x,C,p,a,o):(c==="preserveStart"||c==="preserveStartEnd"?v=$T(x,C,p,a,o,c==="preserveStartEnd"):v=RT(x,C,p,a,o),v.filter(w=>w.isShow))}var BT=e=>{var{ticks:t,label:r,labelGapWithTick:n=5,tickSize:a=0,tickMargin:i=0}=e,o=0;if(t){Array.from(t).forEach(u=>{if(u){var m=u.getBoundingClientRect();m.width>o&&(o=m.width)}});var l=r?r.getBoundingClientRect().width:0,c=a+i,d=o+c+l+(r?n:0);return Math.round(d)}return 0},FT={xAxis:{},yAxis:{}},Eb=Xe({name:"renderedTicks",initialState:FT,reducers:{setRenderedTicks:(e,t)=>{var{axisType:r,axisId:n,ticks:a}=t.payload;e[r][n]=a},removeRenderedTicks:(e,t)=>{var{axisType:r,axisId:n}=t.payload;delete e[r][n]}}}),{setRenderedTicks:zT,removeRenderedTicks:KT}=Eb.actions,VT=Eb.reducer,UT=["axisLine","width","height","className","hide","ticks","axisType","axisId"];function qT(e,t){if(e==null)return{};var r,n,a=WT(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)===-1&&{}.propertyIsEnumerable.call(e,r)&&(a[r]=e[r])}return a}function WT(e,t){if(e==null)return{};var r={};for(var n in e)if({}.hasOwnProperty.call(e,n)){if(t.indexOf(n)!==-1)continue;r[n]=e[n]}return r}function Tr(){return Tr=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)({}).hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},Tr.apply(null,arguments)}function mv(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),r.push.apply(r,n)}return r}function Se(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?mv(Object(r),!0).forEach(function(n){HT(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):mv(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function HT(e,t,r){return(t=GT(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function GT(e){var t=XT(e,"string");return typeof t=="symbol"?t:t+""}function XT(e,t){if(typeof e!="object"||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var n=r.call(e,t);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}var zt={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:Ve.axis};function YT(e){var{x:t,y:r,width:n,height:a,orientation:i,mirror:o,axisLine:l,otherSvgProps:c}=e;if(!l)return null;var d=Se(Se(Se({},c),yt(l)),{},{fill:"none"});if(i==="top"||i==="bottom"){var u=+(i==="top"&&!o||i==="bottom"&&o);d=Se(Se({},d),{},{x1:t,y1:r+u*a,x2:t+n,y2:r+u*a})}else{var m=+(i==="left"&&!o||i==="right"&&o);d=Se(Se({},d),{},{x1:t+m*n,y1:r,x2:t+m*n,y2:r+a})}return f.createElement("line",Tr({},d,{className:de("recharts-cartesian-axis-line",Nr(l,"className"))}))}function ZT(e,t,r,n,a,i,o,l,c){var d,u,m,h,v,y,g=l?-1:1,p=e.tickSize||o,b=Z(e.tickCoord)?e.tickCoord:e.coordinate;switch(i){case"top":d=u=e.coordinate,h=r+ +!l*a,m=h-g*p,y=m-g*c,v=b;break;case"left":m=h=e.coordinate,u=t+ +!l*n,d=u-g*p,v=d-g*c,y=b;break;case"right":m=h=e.coordinate,u=t+ +l*n,d=u+g*p,v=d+g*c,y=b;break;default:d=u=e.coordinate,h=r+ +l*a,m=h+g*p,y=m+g*c,v=b;break}return{line:{x1:d,y1:m,x2:u,y2:h},tick:{x:v,y}}}function JT(e,t){switch(e){case"left":return t?"start":"end";case"right":return t?"end":"start";default:return"middle"}}function QT(e,t){switch(e){case"left":case"right":return"middle";case"top":return t?"start":"end";default:return t?"end":"start"}}function eI(e){var{option:t,tickProps:r,value:n}=e,a,i=de(r.className,"recharts-cartesian-axis-tick-value");if(f.isValidElement(t))a=f.cloneElement(t,Se(Se({},r),{},{className:i}));else if(typeof t=="function")a=t(Se(Se({},r),{},{className:i}));else{var o="recharts-cartesian-axis-tick-value";typeof t!="boolean"&&(o=de(o,hb(t))),a=f.createElement(ns,Tr({},r,{className:o}),n)}return a}function tI(e){var{ticks:t,axisType:r,axisId:n}=e,a=ve();return f.useEffect(()=>{if(n==null||r==null)return Kn;var i=t.map(o=>({value:o.value,coordinate:o.coordinate,offset:o.offset,index:o.index}));return a(zT({ticks:i,axisId:n,axisType:r})),()=>{a(KT({axisId:n,axisType:r}))}},[a,t,n,r]),null}var rI=f.forwardRef((e,t)=>{var{ticks:r=[],tick:n,tickLine:a,stroke:i,tickFormatter:o,unit:l,padding:c,tickTextProps:d,orientation:u,mirror:m,x:h,y:v,width:y,height:g,tickSize:p,tickMargin:b,fontSize:j,letterSpacing:x,getTicksConfig:C,events:w,axisType:P,axisId:O}=e,k=nu(Se(Se({},C),{},{ticks:r}),j,x),N=yt(C),S=Xr(n),A=rb(N.textAnchor)?N.textAnchor:JT(u,m),_=QT(u,m),I={};typeof a=="object"&&(I=a);var D=Se(Se({},N),{},{fill:"none"},I),F=k.map(te=>Se({entry:te},ZT(te,h,v,y,g,u,p,m,b))),V=F.map(te=>{var{entry:q,line:ee}=te;return f.createElement(Qe,{className:"recharts-cartesian-axis-tick",key:"tick-".concat(q.value,"-").concat(q.coordinate,"-").concat(q.tickCoord)},a&&f.createElement("line",Tr({},D,ee,{className:de("recharts-cartesian-axis-tick-line",Nr(a,"className"))})))}),U=F.map((te,q)=>{var ee,L,{entry:B,tick:X}=te,Q=Se(Se(Se(Se({verticalAnchor:_},N),{},{textAnchor:A,stroke:"none",fill:i},X),{},{index:q,payload:B,visibleTicksCount:k.length,tickFormatter:o,padding:c},d),{},{angle:(ee=(L=d?.angle)!==null&&L!==void 0?L:N.angle)!==null&&ee!==void 0?ee:0}),G=Se(Se({},Q),S);return f.createElement(Qe,Tr({className:"recharts-cartesian-axis-tick-label",key:"tick-label-".concat(B.value,"-").concat(B.coordinate,"-").concat(B.tickCoord)},Jl(w,B,q)),n&&f.createElement(eI,{option:n,tickProps:G,value:"".concat(typeof o=="function"?o(B.value,q):B.value).concat(l||"")}))});return f.createElement("g",{className:"recharts-cartesian-axis-ticks recharts-".concat(P,"-ticks")},f.createElement(tI,{ticks:k,axisId:O,axisType:P}),U.length>0&&f.createElement(Ct,{zIndex:Ve.label},f.createElement("g",{className:"recharts-cartesian-axis-tick-labels recharts-".concat(P,"-tick-labels"),ref:t},U)),V.length>0&&f.createElement("g",{className:"recharts-cartesian-axis-tick-lines recharts-".concat(P,"-tick-lines")},V))}),nI=f.forwardRef((e,t)=>{var{axisLine:r,width:n,height:a,className:i,hide:o,ticks:l,axisType:c,axisId:d}=e,u=qT(e,UT),[m,h]=f.useState(""),[v,y]=f.useState(""),g=f.useRef(null);f.useImperativeHandle(t,()=>({getCalculatedWidth:()=>{var b;return BT({ticks:g.current,label:(b=e.labelRef)===null||b===void 0?void 0:b.current,labelGapWithTick:5,tickSize:e.tickSize,tickMargin:e.tickMargin})}}));var p=f.useCallback(b=>{if(b){var j=b.getElementsByClassName("recharts-cartesian-axis-tick-value");g.current=j;var x=j[0];if(x){var C=window.getComputedStyle(x),w=C.fontSize,P=C.letterSpacing;(w!==m||P!==v)&&(h(w),y(P))}}},[m,v]);return o||n!=null&&n<=0||a!=null&&a<=0?null:f.createElement(Ct,{zIndex:e.zIndex},f.createElement(Qe,{className:de("recharts-cartesian-axis",i)},f.createElement(YT,{x:e.x,y:e.y,width:n,height:a,orientation:e.orientation,mirror:e.mirror,axisLine:r,otherSvgProps:yt(e)}),f.createElement(rI,{ref:p,axisType:c,events:u,fontSize:m,getTicksConfig:e,height:e.height,letterSpacing:v,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:l,unit:e.unit,width:e.width,x:e.x,y:e.y,axisId:d}),f.createElement(J_,{x:e.x,y:e.y,width:e.width,height:e.height,lowerWidth:e.width,upperWidth:e.width},f.createElement(l1,{label:e.label,labelRef:e.labelRef}),e.children)))}),au=f.forwardRef((e,t)=>{var r=Le(e,zt);return f.createElement(nI,Tr({},r,{ref:t}))});au.displayName="CartesianAxis";var aI=["x1","y1","x2","y2","key"],iI=["offset"],sI=["xAxisId","yAxisId"],oI=["xAxisId","yAxisId"];function vv(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),r.push.apply(r,n)}return r}function qe(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?vv(Object(r),!0).forEach(function(n){lI(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):vv(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function lI(e,t,r){return(t=cI(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function cI(e){var t=uI(e,"string");return typeof t=="symbol"?t:t+""}function uI(e,t){if(typeof e!="object"||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var n=r.call(e,t);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function wr(){return wr=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)({}).hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},wr.apply(null,arguments)}function ci(e,t){if(e==null)return{};var r,n,a=dI(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)===-1&&{}.propertyIsEnumerable.call(e,r)&&(a[r]=e[r])}return a}function dI(e,t){if(e==null)return{};var r={};for(var n in e)if({}.hasOwnProperty.call(e,n)){if(t.indexOf(n)!==-1)continue;r[n]=e[n]}return r}var fI=e=>{var{fill:t}=e;if(!t||t==="none")return null;var{fillOpacity:r,x:n,y:a,width:i,height:o,ry:l}=e;return f.createElement("rect",{x:n,y:a,ry:l,width:i,height:o,stroke:"none",fill:t,fillOpacity:r,className:"recharts-cartesian-grid-bg"})};function _b(e){var{option:t,lineItemProps:r}=e,n;if(f.isValidElement(t))n=f.cloneElement(t,r);else if(typeof t=="function")n=t(r);else{var a,{x1:i,y1:o,x2:l,y2:c,key:d}=r,u=ci(r,aI),m=(a=yt(u))!==null&&a!==void 0?a:{},{offset:h}=m,v=ci(m,iI);n=f.createElement("line",wr({},v,{x1:i,y1:o,x2:l,y2:c,fill:"none",key:d}))}return n}function mI(e){var{x:t,width:r,horizontal:n=!0,horizontalPoints:a}=e;if(!n||!a||!a.length)return null;var{xAxisId:i,yAxisId:o}=e,l=ci(e,sI),c=a.map((d,u)=>{var m=qe(qe({},l),{},{x1:t,y1:d,x2:t+r,y2:d,key:"line-".concat(u),index:u});return f.createElement(_b,{key:"line-".concat(u),option:n,lineItemProps:m})});return f.createElement("g",{className:"recharts-cartesian-grid-horizontal"},c)}function vI(e){var{y:t,height:r,vertical:n=!0,verticalPoints:a}=e;if(!n||!a||!a.length)return null;var{xAxisId:i,yAxisId:o}=e,l=ci(e,oI),c=a.map((d,u)=>{var m=qe(qe({},l),{},{x1:d,y1:t,x2:d,y2:t+r,key:"line-".concat(u),index:u});return f.createElement(_b,{option:n,lineItemProps:m,key:"line-".concat(u)})});return f.createElement("g",{className:"recharts-cartesian-grid-vertical"},c)}function hI(e){var{horizontalFill:t,fillOpacity:r,x:n,y:a,width:i,height:o,horizontalPoints:l,horizontal:c=!0}=e;if(!c||!t||!t.length||l==null)return null;var d=l.map(m=>Math.round(m+a-a)).sort((m,h)=>m-h);a!==d[0]&&d.unshift(0);var u=d.map((m,h)=>{var v=d[h+1],y=v==null,g=y?a+o-m:v-m;if(g<=0)return null;var p=h%t.length;return f.createElement("rect",{key:"react-".concat(h),y:m,x:n,height:g,width:i,stroke:"none",fill:t[p],fillOpacity:r,className:"recharts-cartesian-grid-bg"})});return f.createElement("g",{className:"recharts-cartesian-gridstripes-horizontal"},u)}function pI(e){var{vertical:t=!0,verticalFill:r,fillOpacity:n,x:a,y:i,width:o,height:l,verticalPoints:c}=e;if(!t||!r||!r.length)return null;var d=c.map(m=>Math.round(m+a-a)).sort((m,h)=>m-h);a!==d[0]&&d.unshift(0);var u=d.map((m,h)=>{var v=d[h+1],y=v==null,g=y?a+o-m:v-m;if(g<=0)return null;var p=h%r.length;return f.createElement("rect",{key:"react-".concat(h),x:m,y:i,width:g,height:l,stroke:"none",fill:r[p],fillOpacity:n,className:"recharts-cartesian-grid-bg"})});return f.createElement("g",{className:"recharts-cartesian-gridstripes-vertical"},u)}var yI=(e,t)=>{var{xAxis:r,width:n,height:a,offset:i}=e;return Kp(nu(qe(qe(qe({},zt),r),{},{ticks:Vp(r),viewBox:{x:0,y:0,width:n,height:a}})),i.left,i.left+i.width,t)},gI=(e,t)=>{var{yAxis:r,width:n,height:a,offset:i}=e;return Kp(nu(qe(qe(qe({},zt),r),{},{ticks:Vp(r),viewBox:{x:0,y:0,width:n,height:a}})),i.top,i.top+i.height,t)},bI={horizontal:!0,vertical:!0,horizontalPoints:[],verticalPoints:[],stroke:"#ccc",fill:"none",verticalFill:[],horizontalFill:[],xAxisId:0,yAxisId:0,syncWithTicks:!1,zIndex:Ve.grid};function Mb(e){var t=lc(),r=cc(),n=Xp(),a=qe(qe({},Le(e,bI)),{},{x:Z(e.x)?e.x:n.left,y:Z(e.y)?e.y:n.top,width:Z(e.width)?e.width:n.width,height:Z(e.height)?e.height:n.height}),{xAxisId:i,yAxisId:o,x:l,y:c,width:d,height:u,syncWithTicks:m,horizontalValues:h,verticalValues:v}=a,y=rt(),g=Y(N=>cm(N,"xAxis",i,y)),p=Y(N=>cm(N,"yAxis",o,y));if(!Zr(d)||!Zr(u)||!Z(l)||!Z(c))return null;var b=a.verticalCoordinatesGenerator||yI,j=a.horizontalCoordinatesGenerator||gI,{horizontalPoints:x,verticalPoints:C}=a;if((!x||!x.length)&&typeof j=="function"){var w=h&&h.length,P=j({yAxis:p?qe(qe({},p),{},{ticks:w?h:p.ticks}):void 0,width:t??d,height:r??u,offset:n},w?!0:m);Xd(Array.isArray(P),"horizontalCoordinatesGenerator should return Array but instead it returned [".concat(typeof P,"]")),Array.isArray(P)&&(x=P)}if((!C||!C.length)&&typeof b=="function"){var O=v&&v.length,k=b({xAxis:g?qe(qe({},g),{},{ticks:O?v:g.ticks}):void 0,width:t??d,height:r??u,offset:n},O?!0:m);Xd(Array.isArray(k),"verticalCoordinatesGenerator should return Array but instead it returned [".concat(typeof k,"]")),Array.isArray(k)&&(C=k)}return f.createElement(Ct,{zIndex:a.zIndex},f.createElement("g",{className:"recharts-cartesian-grid"},f.createElement(fI,{fill:a.fill,fillOpacity:a.fillOpacity,x:a.x,y:a.y,width:a.width,height:a.height,ry:a.ry}),f.createElement(hI,wr({},a,{horizontalPoints:x})),f.createElement(pI,wr({},a,{verticalPoints:C})),f.createElement(mI,wr({},a,{offset:n,horizontalPoints:x,xAxis:g,yAxis:p})),f.createElement(vI,wr({},a,{offset:n,verticalPoints:C,xAxis:g,yAxis:p}))))}Mb.displayName="CartesianGrid";var xI={},Tb=Xe({name:"errorBars",initialState:xI,reducers:{addErrorBar:(e,t)=>{var{itemId:r,errorBar:n}=t.payload;e[r]||(e[r]=[]),e[r].push(n)},replaceErrorBar:(e,t)=>{var{itemId:r,prev:n,next:a}=t.payload;e[r]&&(e[r]=e[r].map(i=>i.dataKey===n.dataKey&&i.direction===n.direction?a:i))},removeErrorBar:(e,t)=>{var{itemId:r,errorBar:n}=t.payload;e[r]&&(e[r]=e[r].filter(a=>a.dataKey!==n.dataKey||a.direction!==n.direction))}}}),{addErrorBar:L2,replaceErrorBar:R2,removeErrorBar:$2}=Tb.actions,jI=Tb.reducer,wI=["children"];function CI(e,t){if(e==null)return{};var r,n,a=kI(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)===-1&&{}.propertyIsEnumerable.call(e,r)&&(a[r]=e[r])}return a}function kI(e,t){if(e==null)return{};var r={};for(var n in e)if({}.hasOwnProperty.call(e,n)){if(t.indexOf(n)!==-1)continue;r[n]=e[n]}return r}var PI={data:[],xAxisId:"xAxis-0",yAxisId:"yAxis-0",dataPointFormatter:()=>({x:0,y:0,value:0}),errorBarOffset:0},SI=f.createContext(PI);function NI(e){var{children:t}=e,r=CI(e,wI);return f.createElement(SI.Provider,{value:r},t)}function Ib(e,t){var r,n,a=Y(d=>Xt(d,e)),i=Y(d=>Yt(d,t)),o=(r=a?.allowDataOverflow)!==null&&r!==void 0?r:Me.allowDataOverflow,l=(n=i?.allowDataOverflow)!==null&&n!==void 0?n:Te.allowDataOverflow,c=o||l;return{needClip:c,needClipX:o,needClipY:l}}function OI(e){var{xAxisId:t,yAxisId:r,clipPathId:n}=e,a=ru(),{needClipX:i,needClipY:o,needClip:l}=Ib(t,r);if(!l||!a)return null;var{x:c,y:d,width:u,height:m}=a;return f.createElement("clipPath",{id:"clipPath-".concat(n)},f.createElement("rect",{x:i?c:c-u/2,y:o?d:d-m/2,width:i?u:u*2,height:o?m:m*2}))}var Db=(e,t,r,n)=>pg(e,"xAxis",t,n),Lb=(e,t,r,n)=>hg(e,"xAxis",t,n),Rb=(e,t,r,n)=>pg(e,"yAxis",r,n),$b=(e,t,r,n)=>hg(e,"yAxis",r,n),AI=M([ge,Db,Rb,Lb,$b],(e,t,r,n,a)=>Wt(e,"xAxis")?Ua(t,n,!1):Ua(r,a,!1)),EI=(e,t,r,n,a)=>a;function _I(e){return e.type==="line"}var MI=M([Hy,EI],(e,t)=>e.filter(_I).find(r=>r.id===t)),TI=M([ge,Db,Rb,Lb,$b,MI,AI,Yn],(e,t,r,n,a,i,o,l)=>{var{chartData:c,dataStartIndex:d,dataEndIndex:u}=l;if(!(i==null||t==null||r==null||n==null||a==null||n.length===0||a.length===0||o==null||e!=="horizontal"&&e!=="vertical")){var{dataKey:m,data:h}=i,v;if(h!=null&&h.length>0?v=h:v=c?.slice(d,u+1),v!=null)return eD({layout:e,xAxis:t,yAxis:r,xAxisTicks:n,yAxisTicks:a,dataKey:m,bandSize:o,displayedData:v})}});function II(e){var t=Xr(e),r=3,n=2;if(t!=null){var{r:a,strokeWidth:i}=t,o=Number(a),l=Number(i);return(Number.isNaN(o)||o<0)&&(o=r),(Number.isNaN(l)||l<0)&&(l=n),{r:o,strokeWidth:l}}return{r,strokeWidth:n}}var DI=["id"],LI=["type","layout","connectNulls","needClip","shape"],RI=["activeDot","animateNewValues","animationBegin","animationDuration","animationEasing","connectNulls","dot","hide","isAnimationActive","label","legendType","xAxisId","yAxisId","id"];function Fn(){return Fn=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)({}).hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},Fn.apply(null,arguments)}function hv(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),r.push.apply(r,n)}return r}function At(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?hv(Object(r),!0).forEach(function(n){$I(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):hv(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function $I(e,t,r){return(t=BI(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function BI(e){var t=FI(e,"string");return typeof t=="symbol"?t:t+""}function FI(e,t){if(typeof e!="object"||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var n=r.call(e,t);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function iu(e,t){if(e==null)return{};var r,n,a=zI(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)===-1&&{}.propertyIsEnumerable.call(e,r)&&(a[r]=e[r])}return a}function zI(e,t){if(e==null)return{};var r={};for(var n in e)if({}.hasOwnProperty.call(e,n)){if(t.indexOf(n)!==-1)continue;r[n]=e[n]}return r}var KI=e=>{var{dataKey:t,name:r,stroke:n,legendType:a,hide:i}=e;return[{inactive:i,dataKey:t,type:a,color:n,value:Di(r,t),payload:e}]},VI=f.memo(e=>{var{dataKey:t,data:r,stroke:n,strokeWidth:a,fill:i,name:o,hide:l,unit:c,tooltipType:d,id:u}=e,m={dataDefinedOnItem:r,getPosition:Kn,settings:{stroke:n,strokeWidth:a,fill:i,dataKey:t,nameKey:void 0,name:Di(o,t),hide:l,type:d,color:n,unit:c,graphicalItemId:u}};return f.createElement(jb,{tooltipEntrySettings:m})}),Bb=(e,t)=>"".concat(t,"px ").concat(e,"px");function UI(e,t){for(var r=e.length%2!==0?[...e,0]:e,n=[],a=0;a<t;++a)n.push(...r);return n}var qI=(e,t,r)=>{var n=r.reduce((h,v)=>h+v,0);if(!n)return Bb(t,e);for(var a=Math.floor(e/n),i=e%n,o=[],l=0,c=0;l<r.length;c+=(d=r[l])!==null&&d!==void 0?d:0,++l){var d,u=r[l];if(u!=null&&c+u>i){o=[...r.slice(0,l),i-c];break}}var m=o.length%2===0?[0,t]:[t];return[...UI(r,a),...o,...m].map(h=>"".concat(h,"px")).join(", ")};function WI(e){var{clipPathId:t,points:r,props:n}=e,{dot:a,dataKey:i,needClip:o}=n,{id:l}=n,c=iu(n,DI),d=yt(c);return f.createElement(tT,{points:r,dot:a,className:"recharts-line-dots",dotClassName:"recharts-line-dot",dataKey:i,baseProps:d,needClip:o,clipPathId:t})}function HI(e){var{showLabels:t,children:r,points:n}=e,a=f.useMemo(()=>n?.map(i=>{var o,l,c={x:(o=i.x)!==null&&o!==void 0?o:0,y:(l=i.y)!==null&&l!==void 0?l:0,width:0,lowerWidth:0,upperWidth:0,height:0};return At(At({},c),{},{value:i.value,payload:i.payload,viewBox:c,parentViewBox:void 0,fill:void 0})}),[n]);return f.createElement(m1,{value:t?a:void 0},r)}function pv(e){var{clipPathId:t,pathRef:r,points:n,strokeDasharray:a,props:i}=e,{type:o,layout:l,connectNulls:c,needClip:d,shape:u}=i,m=iu(i,LI),h=At(At({},Je(m)),{},{fill:"none",className:"recharts-line-curve",clipPath:d?"url(#clipPath-".concat(t,")"):void 0,points:n,type:o,layout:l,connectNulls:c,strokeDasharray:a??i.strokeDasharray});return f.createElement(f.Fragment,null,n?.length>1&&f.createElement(xb,Fn({shapeType:"curve",option:u},h,{pathRef:r})),f.createElement(WI,{points:n,clipPathId:t,props:i}))}function GI(e){try{return e&&e.getTotalLength&&e.getTotalLength()||0}catch{return 0}}function XI(e){var{clipPathId:t,props:r,pathRef:n,previousPointsRef:a,longestAnimatedLengthRef:i}=e,{points:o,strokeDasharray:l,isAnimationActive:c,animationBegin:d,animationDuration:u,animationEasing:m,animateNewValues:h,width:v,height:y,onAnimationEnd:g,onAnimationStart:p}=r,b=a.current,j=qi(o,"recharts-line-"),x=f.useRef(j),[C,w]=f.useState(!1),P=!C,O=f.useCallback(()=>{typeof g=="function"&&g(),w(!1)},[g]),k=f.useCallback(()=>{typeof p=="function"&&p(),w(!0)},[p]),N=GI(n.current),S=f.useRef(0);x.current!==j&&(S.current=i.current,x.current=j);var A=S.current;return f.createElement(HI,{points:o,showLabels:P},r.children,f.createElement(Ui,{animationId:j,begin:d,duration:u,isActive:c,easing:m,onAnimationEnd:O,onAnimationStart:k,key:j},_=>{var I=We(A,N+A,_),D=Math.min(I,N),F;if(c)if(l){var V="".concat(l).split(/[,\s]+/gim).map(q=>parseFloat(q));F=qI(D,N,V)}else F=Bb(N,D);else F=l==null?void 0:String(l);if(_>0&&N>0&&(a.current=o,i.current=Math.max(i.current,D)),b){var U=b.length/o.length,te=_===1?o:o.map((q,ee)=>{var L=Math.floor(ee*U);if(b[L]){var B=b[L];return At(At({},q),{},{x:We(B.x,q.x,_),y:We(B.y,q.y,_)})}return h?At(At({},q),{},{x:We(v*2,q.x,_),y:We(y/2,q.y,_)}):At(At({},q),{},{x:q.x,y:q.y})});return a.current=te,f.createElement(pv,{props:r,points:te,clipPathId:t,pathRef:n,strokeDasharray:F})}return f.createElement(pv,{props:r,points:o,clipPathId:t,pathRef:n,strokeDasharray:F})}),f.createElement(ub,{label:r.label}))}function YI(e){var{clipPathId:t,props:r}=e,n=f.useRef(null),a=f.useRef(0),i=f.useRef(null);return f.createElement(XI,{props:r,clipPathId:t,previousPointsRef:n,longestAnimatedLengthRef:a,pathRef:i})}var ZI=(e,t)=>{var r,n;return{x:(r=e.x)!==null&&r!==void 0?r:void 0,y:(n=e.y)!==null&&n!==void 0?n:void 0,value:e.value,errorVal:he(e.payload,t)}};class JI extends f.Component{render(){var{hide:t,dot:r,points:n,className:a,xAxisId:i,yAxisId:o,top:l,left:c,width:d,height:u,id:m,needClip:h,zIndex:v}=this.props;if(t)return null;var y=de("recharts-line",a),g=m,{r:p,strokeWidth:b}=II(r),j=bb(r),x=p*2+b,C=h?"url(#clipPath-".concat(j?"":"dots-").concat(g,")"):void 0;return f.createElement(Ct,{zIndex:v},f.createElement(Qe,{className:y},h&&f.createElement("defs",null,f.createElement(OI,{clipPathId:g,xAxisId:i,yAxisId:o}),!j&&f.createElement("clipPath",{id:"clipPath-dots-".concat(g)},f.createElement("rect",{x:c-x/2,y:l-x/2,width:d+x,height:u+x}))),f.createElement(NI,{xAxisId:i,yAxisId:o,data:n,dataPointFormatter:ZI,errorBarOffset:0},f.createElement(YI,{props:this.props,clipPathId:g}))),f.createElement(jT,{activeDot:this.props.activeDot,points:n,mainColor:this.props.stroke,itemDataKey:this.props.dataKey,clipPath:C}))}}var Fb={activeDot:!0,animateNewValues:!0,animationBegin:0,animationDuration:1500,animationEasing:"ease",connectNulls:!1,dot:!0,fill:"#fff",hide:!1,isAnimationActive:"auto",label:!1,legendType:"line",stroke:"#3182bd",strokeWidth:1,xAxisId:0,yAxisId:0,zIndex:Ve.line,type:"linear"};function QI(e){var t=Le(e,Fb),{activeDot:r,animateNewValues:n,animationBegin:a,animationDuration:i,animationEasing:o,connectNulls:l,dot:c,hide:d,isAnimationActive:u,label:m,legendType:h,xAxisId:v,yAxisId:y,id:g}=t,p=iu(t,RI),{needClip:b}=Ib(v,y),j=ru(),x=an(),C=rt(),w=Y(S=>TI(S,v,y,C,g));if(x!=="horizontal"&&x!=="vertical"||w==null||j==null)return null;var{height:P,width:O,x:k,y:N}=j;return f.createElement(JI,Fn({},p,{id:g,connectNulls:l,dot:c,activeDot:r,animateNewValues:n,animationBegin:a,animationDuration:i,animationEasing:o,isAnimationActive:u,hide:d,label:m,legendType:h,xAxisId:v,yAxisId:y,points:w,layout:x,height:P,width:O,left:k,top:N,needClip:b}))}function eD(e){var{layout:t,xAxis:r,yAxis:n,xAxisTicks:a,yAxisTicks:i,dataKey:o,bandSize:l,displayedData:c}=e;return c.map((d,u)=>{var m=he(d,o);if(t==="horizontal"){var h=Ud({axis:r,ticks:a,bandSize:l,entry:d,index:u}),v=De(m)?null:n.scale.map(m);return{x:h,y:v??null,value:m,payload:d}}var y=De(m)?null:r.scale.map(m),g=Ud({axis:n,ticks:i,bandSize:l,entry:d,index:u});return y==null||g==null?null:{x:y,y:g,value:m,payload:d}}).filter(Boolean)}function tD(e){var t=Le(e,Fb),r=rt();return f.createElement(wb,{id:t.id,type:"line"},n=>f.createElement(f.Fragment,null,f.createElement(nM,{legendPayload:KI(t)}),f.createElement(VI,{dataKey:t.dataKey,data:t.data,stroke:t.stroke,strokeWidth:t.strokeWidth,fill:t.fill,name:t.name,hide:t.hide,unit:t.unit,tooltipType:t.tooltipType,id:n}),f.createElement(gM,{type:"line",id:n,data:t.data,xAxisId:t.xAxisId,yAxisId:t.yAxisId,zAxisId:0,dataKey:t.dataKey,hide:t.hide,isPanorama:r}),f.createElement(QI,Fn({},t,{id:n}))))}var zb=f.memo(tD,Gn);zb.displayName="Line";var rD=["domain","range"],nD=["domain","range"];function yv(e,t){if(e==null)return{};var r,n,a=aD(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)===-1&&{}.propertyIsEnumerable.call(e,r)&&(a[r]=e[r])}return a}function aD(e,t){if(e==null)return{};var r={};for(var n in e)if({}.hasOwnProperty.call(e,n)){if(t.indexOf(n)!==-1)continue;r[n]=e[n]}return r}function gv(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 Kb(e,t){if(e===t)return!0;var{domain:r,range:n}=e,a=yv(e,rD),{domain:i,range:o}=t,l=yv(t,nD);return!gv(r,i)||!gv(n,o)?!1:Gn(a,l)}var iD=["type"],sD=["dangerouslySetInnerHTML","ticks","scale"],oD=["id","scale"];function yl(){return yl=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)({}).hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},yl.apply(null,arguments)}function bv(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),r.push.apply(r,n)}return r}function xv(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?bv(Object(r),!0).forEach(function(n){lD(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):bv(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function lD(e,t,r){return(t=cD(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function cD(e){var t=uD(e,"string");return typeof t=="symbol"?t:t+""}function uD(e,t){if(typeof e!="object"||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var n=r.call(e,t);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function gl(e,t){if(e==null)return{};var r,n,a=dD(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)===-1&&{}.propertyIsEnumerable.call(e,r)&&(a[r]=e[r])}return a}function dD(e,t){if(e==null)return{};var r={};for(var n in e)if({}.hasOwnProperty.call(e,n)){if(t.indexOf(n)!==-1)continue;r[n]=e[n]}return r}function fD(e){var t=ve(),r=f.useRef(null),n=Yp(),{type:a}=e,i=gl(e,iD),o=Gi(n,"xAxis",a),l=f.useMemo(()=>{if(o!=null)return xv(xv({},i),{},{type:o})},[i,o]);return f.useLayoutEffect(()=>{l!=null&&(r.current===null?t(sT(l)):r.current!==l&&t(oT({prev:r.current,next:l})),r.current=l)},[l,t]),f.useLayoutEffect(()=>()=>{r.current&&(t(lT(r.current)),r.current=null)},[t]),null}var mD=e=>{var{xAxisId:t,className:r}=e,n=Y(Hp),a=rt(),i="xAxis",o=Y(b=>vg(b,i,t,a)),l=Y(b=>IO(b,t)),c=Y(b=>FO(b,t)),d=Y(b=>Uy(b,t));if(l==null||c==null||d==null)return null;var{dangerouslySetInnerHTML:u,ticks:m,scale:h}=e,v=gl(e,sD),{id:y,scale:g}=d,p=gl(d,oD);return f.createElement(au,yl({},v,p,{x:c.x,y:c.y,width:l.width,height:l.height,className:de("recharts-".concat(i," ").concat(i),r),viewBox:n,ticks:o,axisType:i,axisId:t}))},vD={allowDataOverflow:Me.allowDataOverflow,allowDecimals:Me.allowDecimals,allowDuplicatedCategory:Me.allowDuplicatedCategory,angle:Me.angle,axisLine:zt.axisLine,height:Me.height,hide:!1,includeHidden:Me.includeHidden,interval:Me.interval,label:!1,minTickGap:Me.minTickGap,mirror:Me.mirror,orientation:Me.orientation,padding:Me.padding,reversed:Me.reversed,scale:Me.scale,tick:Me.tick,tickCount:Me.tickCount,tickLine:zt.tickLine,tickSize:zt.tickSize,type:Me.type,niceTicks:Me.niceTicks,xAxisId:0},hD=e=>{var t=Le(e,vD);return f.createElement(f.Fragment,null,f.createElement(fD,{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}),f.createElement(mD,t))},Vb=f.memo(hD,Kb);Vb.displayName="XAxis";var pD=["type"],yD=["dangerouslySetInnerHTML","ticks","scale"],gD=["id","scale"];function bl(){return bl=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)({}).hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},bl.apply(null,arguments)}function jv(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),r.push.apply(r,n)}return r}function wv(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?jv(Object(r),!0).forEach(function(n){bD(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):jv(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function bD(e,t,r){return(t=xD(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function xD(e){var t=jD(e,"string");return typeof t=="symbol"?t:t+""}function jD(e,t){if(typeof e!="object"||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var n=r.call(e,t);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function xl(e,t){if(e==null)return{};var r,n,a=wD(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)===-1&&{}.propertyIsEnumerable.call(e,r)&&(a[r]=e[r])}return a}function wD(e,t){if(e==null)return{};var r={};for(var n in e)if({}.hasOwnProperty.call(e,n)){if(t.indexOf(n)!==-1)continue;r[n]=e[n]}return r}function CD(e){var t=ve(),r=f.useRef(null),n=Yp(),{type:a}=e,i=xl(e,pD),o=Gi(n,"yAxis",a),l=f.useMemo(()=>{if(o!=null)return wv(wv({},i),{},{type:o})},[o,i]);return f.useLayoutEffect(()=>{l!=null&&(r.current===null?t(cT(l)):r.current!==l&&t(uT({prev:r.current,next:l})),r.current=l)},[l,t]),f.useLayoutEffect(()=>()=>{r.current&&(t(dT(r.current)),r.current=null)},[t]),null}function kD(e){var{yAxisId:t,className:r,width:n,label:a}=e,i=f.useRef(null),o=f.useRef(null),l=Y(Hp),c=rt(),d=ve(),u="yAxis",m=Y(P=>VO(P,t)),h=Y(P=>KO(P,t)),v=Y(P=>vg(P,u,t,c)),y=Y(P=>qy(P,t));if(f.useLayoutEffect(()=>{if(!(n!=="auto"||!m||Qc(a)||f.isValidElement(a)||y==null)){var P=i.current;if(P){var O=P.getCalculatedWidth();Math.round(m.width)!==Math.round(O)&&d(fT({id:t,width:O}))}}},[v,m,d,a,t,n,y]),m==null||h==null||y==null)return null;var{dangerouslySetInnerHTML:g,ticks:p,scale:b}=e,j=xl(e,yD),{id:x,scale:C}=y,w=xl(y,gD);return f.createElement(au,bl({},j,w,{ref:i,labelRef:o,x:h.x,y:h.y,tickTextProps:n==="auto"?{width:void 0}:{width:n},width:m.width,height:m.height,className:de("recharts-".concat(u," ").concat(u),r),viewBox:l,ticks:v,axisType:u,axisId:t}))}var PD={allowDataOverflow:Te.allowDataOverflow,allowDecimals:Te.allowDecimals,allowDuplicatedCategory:Te.allowDuplicatedCategory,angle:Te.angle,axisLine:zt.axisLine,hide:!1,includeHidden:Te.includeHidden,interval:Te.interval,label:!1,minTickGap:Te.minTickGap,mirror:Te.mirror,orientation:Te.orientation,padding:Te.padding,reversed:Te.reversed,scale:Te.scale,tick:Te.tick,tickCount:Te.tickCount,tickLine:zt.tickLine,tickSize:zt.tickSize,type:Te.type,niceTicks:Te.niceTicks,width:Te.width,yAxisId:0},SD=e=>{var t=Le(e,PD);return f.createElement(f.Fragment,null,f.createElement(CD,{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}),f.createElement(kD,t))},Ub=f.memo(SD,Kb);Ub.displayName="YAxis";var ND=(e,t)=>t,su=M([ND,ge,Ry,Fe,Ig,Zt,dE,Be],gE);function OD(e){return"getBBox"in e.currentTarget&&typeof e.currentTarget.getBBox=="function"}function ou(e){var t=e.currentTarget.getBoundingClientRect(),r,n;if(OD(e)){var a=e.currentTarget.getBBox();r=a.width>0?t.width/a.width:1,n=a.height>0?t.height/a.height:1}else{var i=e.currentTarget;r=i.offsetWidth>0?t.width/i.offsetWidth:1,n=i.offsetHeight>0?t.height/i.offsetHeight:1}var o=(l,c)=>({relativeX:Math.round((l-t.left)/r),relativeY:Math.round((c-t.top)/n)});return"touches"in e?Array.from(e.touches).map(l=>o(l.clientX,l.clientY)):o(e.clientX,e.clientY)}var qb=ct("mouseClick"),Wb=Un();Wb.startListening({actionCreator:qb,effect:(e,t)=>{var r=e.payload,n=su(t.getState(),ou(r));n?.activeIndex!=null&&t.dispatch(iA({activeIndex:n.activeIndex,activeDataKey:void 0,activeCoordinate:n.activeCoordinate}))}});var jl=ct("mouseMove"),Hb=Un(),Fr=null,mr=null,So=null;Hb.startListening({actionCreator:jl,effect:(e,t)=>{var r=e.payload,n=t.getState(),{throttleDelay:a,throttledEvents:i}=n.eventSettings,o=i==="all"||i?.includes("mousemove");Fr!==null&&(cancelAnimationFrame(Fr),Fr=null),mr!==null&&(typeof a!="number"||!o)&&(clearTimeout(mr),mr=null),So=ou(r);var l=()=>{var c=t.getState(),d=ta(c,c.tooltip.settings.shared);if(!So){Fr=null,mr=null;return}if(d==="axis"){var u=su(c,So);u?.activeIndex!=null?t.dispatch(kg({activeIndex:u.activeIndex,activeDataKey:void 0,activeCoordinate:u.activeCoordinate})):t.dispatch(Cg())}Fr=null,mr=null};if(!o){l();return}a==="raf"?Fr=requestAnimationFrame(l):typeof a=="number"&&mr===null&&(mr=setTimeout(l,a))}});function AD(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 Cv={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},Gb=Xe({name:"rootProps",initialState:Cv,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:Cv.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}}}),ED=Gb.reducer,{updateOptions:_D}=Gb.actions,MD=null,TD={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)},Xb=Xe({name:"polarOptions",initialState:MD,reducers:TD}),{updatePolarOptions:ID}=Xb.actions,DD=Xb.reducer,Yb=ct("keyDown"),Zb=ct("focus"),Jb=ct("blur"),os=Un(),zr=null,vr=null,ha=null;os.startListening({actionCreator:Yb,effect:(e,t)=>{ha=e.payload,zr!==null&&(cancelAnimationFrame(zr),zr=null);var r=t.getState(),{throttleDelay:n,throttledEvents:a}=r.eventSettings,i=a==="all"||a.includes("keydown");vr!==null&&(typeof n!="number"||!i)&&(clearTimeout(vr),vr=null);var o=()=>{try{var l=t.getState(),c=l.rootProps.accessibilityLayer!==!1;if(!c)return;var{keyboardInteraction:d}=l.tooltip,u=ha;if(u!=="ArrowRight"&&u!=="ArrowLeft"&&u!=="Enter")return;var m=Nn(d,Mr(l),en(l),tn(l)),h=m==null?-1:Number(m),v=!Number.isFinite(h)||h<0,y=Zt(l),g=Mr(l),p=ta(l,l.tooltip.settings.shared);if(u==="Enter"){if(v)return;var b=ai(l,p,"hover",String(d.index));t.dispatch(ni({active:!d.active,activeIndex:d.index,activeCoordinate:b}));return}var j=GO(l),x=j==="left-to-right"?1:-1,C=u==="ArrowRight"?1:-1,w;if(v){var P=en(l),O=tn(l),k=C*x,N=D=>({active:!1,index:String(D),dataKey:void 0,graphicalItemId:void 0,coordinate:void 0});if(w=-1,k>0){for(var S=0;S<g.length;S++)if(Nn(N(S),g,P,O)!=null){w=S;break}}else for(var A=g.length-1;A>=0;A--)if(Nn(N(A),g,P,O)!=null){w=A;break}if(w<0)return}else{w=h+C*x;var _=y?.length||g.length;if(_===0||w>=_||w<0)return}var I=ai(l,p,"hover",String(w));t.dispatch(ni({active:!0,activeIndex:w.toString(),activeCoordinate:I}))}finally{zr=null,vr=null}};if(!i){o();return}n==="raf"?zr=requestAnimationFrame(o):typeof n=="number"&&vr===null&&(o(),ha=null,vr=setTimeout(()=>{ha?o():(vr=null,zr=null)},n))}});os.startListening({actionCreator:Zb,effect:(e,t)=>{var r=t.getState(),n=r.rootProps.accessibilityLayer!==!1;if(n){var{keyboardInteraction:a}=r.tooltip;if(!a.active&&a.index==null){var i="0",o=ta(r,r.tooltip.settings.shared),l=ai(r,o,"hover",String(i));t.dispatch(ni({active:!0,activeIndex:i,activeCoordinate:l}))}}}});os.startListening({actionCreator:Jb,effect:(e,t)=>{var r=t.getState(),n=r.rootProps.accessibilityLayer!==!1;if(n){var{keyboardInteraction:a}=r.tooltip;a.active&&t.dispatch(ni({active:!1,activeIndex:a.index,activeCoordinate:a.coordinate}))}}});function Qb(e){e.persist();var{currentTarget:t}=e;return new Proxy(e,{get:(r,n)=>{if(n==="currentTarget")return t;var a=Reflect.get(r,n);return typeof a=="function"?a.bind(r):a}})}var vt=ct("externalEvent"),ex=Un(),pa=new Map,bn=new Map,No=new Map;ex.startListening({actionCreator:vt,effect:(e,t)=>{var{handler:r,reactEvent:n}=e.payload;if(r!=null){var a=n.type,i=Qb(n);No.set(a,{handler:r,reactEvent:i});var o=pa.get(a);o!==void 0&&(cancelAnimationFrame(o),pa.delete(a));var l=t.getState(),{throttleDelay:c,throttledEvents:d}=l.eventSettings,u=d,m=u==="all"||u?.includes(a),h=bn.get(a);h!==void 0&&(typeof c!="number"||!m)&&(clearTimeout(h),bn.delete(a));var v=()=>{var p=No.get(a);try{if(!p)return;var{handler:b,reactEvent:j}=p,x=t.getState(),C={activeCoordinate:XA(x),activeDataKey:$g(x),activeIndex:rn(x),activeLabel:Rg(x),activeTooltipIndex:rn(x),isTooltipActive:YA(x)};b&&b(C,j)}finally{pa.delete(a),bn.delete(a),No.delete(a)}};if(!m){v();return}if(c==="raf"){var y=requestAnimationFrame(v);pa.set(a,y)}else if(typeof c=="number"){if(!bn.has(a)){v();var g=setTimeout(v,c);bn.set(a,g)}}else v()}}});var LD=M([fn],e=>e.tooltipItemPayloads),RD=M([LD,(e,t)=>t,(e,t,r)=>r],(e,t,r)=>{if(t!=null){var n=e.find(i=>i.settings.graphicalItemId===r);if(n!=null){var{getPosition:a}=n;if(a!=null)return a(t)}}}),tx=ct("touchMove"),rx=Un(),hr=null,Qt=null,kv=null,xn=null;rx.startListening({actionCreator:tx,effect:(e,t)=>{var r=e.payload;if(!(r.touches==null||r.touches.length===0)){xn=Qb(r);var n=t.getState(),{throttleDelay:a,throttledEvents:i}=n.eventSettings,o=i==="all"||i.includes("touchmove");hr!==null&&(cancelAnimationFrame(hr),hr=null),Qt!==null&&(typeof a!="number"||!o)&&(clearTimeout(Qt),Qt=null),kv=Array.from(r.touches).map(c=>ou({clientX:c.clientX,clientY:c.clientY,currentTarget:r.currentTarget}));var l=()=>{if(xn!=null){var c=t.getState(),d=ta(c,c.tooltip.settings.shared);if(d==="axis"){var u,m=(u=kv)===null||u===void 0?void 0:u[0];if(m==null){hr=null,Qt=null;return}var h=su(c,m);h?.activeIndex!=null&&t.dispatch(kg({activeIndex:h.activeIndex,activeDataKey:void 0,activeCoordinate:h.activeCoordinate}))}else if(d==="item"){var v,y=xn.touches[0];if(document.elementFromPoint==null||y==null)return;var g=document.elementFromPoint(y.clientX,y.clientY);if(!g||!g.getAttribute)return;var p=g.getAttribute(qp),b=(v=g.getAttribute(Wp))!==null&&v!==void 0?v:void 0,j=Dr(c).find(w=>w.id===b);if(p==null||j==null||b==null)return;var{dataKey:x}=j,C=RD(c,p,b);t.dispatch(wg({activeDataKey:x,activeIndex:p,activeCoordinate:C,activeGraphicalItemId:b}))}hr=null,Qt=null}};if(!o){l();return}a==="raf"?hr=requestAnimationFrame(l):typeof a=="number"&&Qt===null&&(l(),xn=null,Qt=setTimeout(()=>{xn?l():(Qt=null,hr=null)},a))}}});var lu={throttleDelay:"raf",throttledEvents:["mousemove","touchmove","pointermove","scroll","wheel"]},nx=Xe({name:"eventSettings",initialState:lu,reducers:{setEventSettings:(e,t)=>{t.payload.throttleDelay!=null&&(e.throttleDelay=t.payload.throttleDelay),t.payload.throttledEvents!=null&&(e.throttledEvents=t.payload.throttledEvents)}}}),{setEventSettings:$D}=nx.actions,BD=nx.reducer,FD=mp({brush:wT,cartesianAxis:mT,chartData:GE,errorBars:jI,eventSettings:BD,graphicalItems:pM,layout:Ek,legend:bP,options:VE,polarAxis:P1,polarOptions:DD,referenceElements:ST,renderedTicks:VT,rootProps:ED,tooltip:sA,zIndex:_E}),zD=function(t){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"Chart";return tk({reducer:FD,preloadedState:t,middleware:n=>{var a;return n({serializableCheck:!1,immutableCheck:!["commonjs","es6","production"].includes((a="es6")!==null&&a!==void 0?a:"")}).concat([Wb.middleware,Hb.middleware,os.middleware,ex.middleware,rx.middleware])},enhancers:n=>{var a=n;return typeof n=="function"&&(a=n()),a.concat(Op({type:"raf"}))},devTools:{serialize:{replacer:AD},name:"recharts-".concat(r)}})};function ax(e){var{preloadedState:t,children:r,reduxStoreName:n}=e,a=rt(),i=f.useRef(null);if(a)return r;i.current==null&&(i.current=zD(t,n));var o=ec;return f.createElement(RP,{context:o,store:i.current},r)}function KD(e){var{layout:t,margin:r}=e,n=ve(),a=rt();return f.useEffect(()=>{a||(n(Nk(t)),n(Sk(r)))},[n,a,t,r]),null}var ix=f.memo(KD,Gn);function sx(e){var t=ve();return f.useEffect(()=>{t(_D(e))},[t,e]),null}var VD=e=>{var t=ve();return f.useEffect(()=>{t($D(e))},[t,e]),null},ox=f.memo(VD,Gn);function Pv(e){var{zIndex:t,isPanorama:r}=e,n=f.useRef(null),a=ve();return f.useLayoutEffect(()=>(n.current&&a(AE({zIndex:t,element:n.current,isPanorama:r})),()=>{a(EE({zIndex:t,isPanorama:r}))}),[a,t,r]),f.createElement("g",{tabIndex:-1,ref:n,className:"recharts-zIndex-layer_".concat(t)})}function Sv(e){var{children:t,isPanorama:r}=e,n=Y(xE);if(!n||n.length===0)return t;var a=n.filter(o=>o<0),i=n.filter(o=>o>0);return f.createElement(f.Fragment,null,a.map(o=>f.createElement(Pv,{key:o,zIndex:o,isPanorama:r})),t,i.map(o=>f.createElement(Pv,{key:o,zIndex:o,isPanorama:r})))}var UD=["children"];function qD(e,t){if(e==null)return{};var r,n,a=WD(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)===-1&&{}.propertyIsEnumerable.call(e,r)&&(a[r]=e[r])}return a}function WD(e,t){if(e==null)return{};var r={};for(var n in e)if({}.hasOwnProperty.call(e,n)){if(t.indexOf(n)!==-1)continue;r[n]=e[n]}return r}function ui(){return ui=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)({}).hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},ui.apply(null,arguments)}var HD={width:"100%",height:"100%",display:"block"},GD=f.forwardRef((e,t)=>{var r=lc(),n=cc(),a=cy();if(!Zr(r)||!Zr(n))return null;var{children:i,otherAttributes:o,title:l,desc:c}=e,d,u;return o!=null&&(typeof o.tabIndex=="number"?d=o.tabIndex:d=a?0:void 0,typeof o.role=="string"?u=o.role:u=a?"application":void 0),f.createElement(Wl,ui({},o,{title:l,desc:c,role:u,tabIndex:d,width:r,height:n,style:HD,ref:t}),i)}),XD=e=>{var{children:t}=e,r=Y(Bi);if(!r)return null;var{width:n,height:a,y:i,x:o}=r;return f.createElement(Wl,{width:n,height:a,x:o,y:i},t)},Nv=f.forwardRef((e,t)=>{var{children:r}=e,n=qD(e,UD),a=rt();return a?f.createElement(XD,null,f.createElement(Sv,{isPanorama:!0},r)):f.createElement(GD,ui({ref:t},n),f.createElement(Sv,{isPanorama:!1},r))});function YD(){var e=ve(),[t,r]=f.useState(null),n=Y(Uk);return f.useEffect(()=>{if(t!=null){var a=t.getBoundingClientRect(),i=a.width/t.offsetWidth;ue(i)&&i!==n&&e(Ak(i))}},[t,e,n]),r}function Ov(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),r.push.apply(r,n)}return r}function ZD(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?Ov(Object(r),!0).forEach(function(n){JD(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):Ov(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function JD(e,t,r){return(t=QD(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function QD(e){var t=eL(e,"string");return typeof t=="symbol"?t:t+""}function eL(e,t){if(typeof e!="object"||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var n=r.call(e,t);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function ar(){return ar=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)({}).hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},ar.apply(null,arguments)}var tL=()=>(n_(),null);function di(e){if(typeof e=="number")return e;if(typeof e=="string"){var t=parseFloat(e);if(!Number.isNaN(t))return t}return 0}var rL=f.forwardRef((e,t)=>{var r,n,a=f.useRef(null),[i,o]=f.useState({containerWidth:di((r=e.style)===null||r===void 0?void 0:r.width),containerHeight:di((n=e.style)===null||n===void 0?void 0:n.height)}),l=f.useCallback((d,u)=>{o(m=>{var h=Math.round(d),v=Math.round(u);return m.containerWidth===h&&m.containerHeight===v?m:{containerWidth:h,containerHeight:v}})},[]),c=f.useCallback(d=>{if(typeof t=="function"&&t(d),a.current!=null&&(a.current.disconnect(),a.current=null),d!=null&&typeof ResizeObserver<"u"){var{width:u,height:m}=d.getBoundingClientRect();l(u,m);var h=y=>{var g=y[0];if(g!=null){var{width:p,height:b}=g.contentRect;l(p,b)}},v=new ResizeObserver(h);v.observe(d),a.current=v}},[t,l]);return f.useEffect(()=>()=>{var d=a.current;d?.disconnect()},[l]),f.createElement(f.Fragment,null,f.createElement(Wn,{width:i.containerWidth,height:i.containerHeight}),f.createElement("div",ar({ref:c},e)))}),nL=f.forwardRef((e,t)=>{var{width:r,height:n}=e,[a,i]=f.useState({containerWidth:di(r),containerHeight:di(n)}),o=f.useCallback((c,d)=>{i(u=>{var m=Math.round(c),h=Math.round(d);return u.containerWidth===m&&u.containerHeight===h?u:{containerWidth:m,containerHeight:h}})},[]),l=f.useCallback(c=>{if(typeof t=="function"&&t(c),c!=null){var{width:d,height:u}=c.getBoundingClientRect();o(d,u)}},[t,o]);return f.createElement(f.Fragment,null,f.createElement(Wn,{width:a.containerWidth,height:a.containerHeight}),f.createElement("div",ar({ref:l},e)))}),aL=f.forwardRef((e,t)=>{var{width:r,height:n}=e;return f.createElement(f.Fragment,null,f.createElement(Wn,{width:r,height:n}),f.createElement("div",ar({ref:t},e)))}),iL=f.forwardRef((e,t)=>{var{width:r,height:n}=e;return typeof r=="string"||typeof n=="string"?f.createElement(nL,ar({},e,{ref:t})):typeof r=="number"&&typeof n=="number"?f.createElement(aL,ar({},e,{width:r,height:n,ref:t})):f.createElement(f.Fragment,null,f.createElement(Wn,{width:r,height:n}),f.createElement("div",ar({ref:t},e)))});function sL(e){return e?rL:iL}var oL=f.forwardRef((e,t)=>{var{children:r,className:n,height:a,onClick:i,onContextMenu:o,onDoubleClick:l,onMouseDown:c,onMouseEnter:d,onMouseLeave:u,onMouseMove:m,onMouseUp:h,onTouchEnd:v,onTouchMove:y,onTouchStart:g,style:p,width:b,responsive:j,dispatchTouchEvents:x=!0}=e,C=f.useRef(null),w=ve(),[P,O]=f.useState(null),[k,N]=f.useState(null),S=YD(),A=Gp(),_=A?.width>0?A.width:b,I=A?.height>0?A.height:a,D=f.useCallback($=>{S($),typeof t=="function"&&t($),O($),N($),$!=null&&(C.current=$)},[S,t,O,N]),F=f.useCallback($=>{w(qb($)),w(vt({handler:i,reactEvent:$}))},[w,i]),V=f.useCallback($=>{w(jl($)),w(vt({handler:d,reactEvent:$}))},[w,d]),U=f.useCallback($=>{w(Cg()),w(vt({handler:u,reactEvent:$}))},[w,u]),te=f.useCallback($=>{w(jl($)),w(vt({handler:m,reactEvent:$}))},[w,m]),q=f.useCallback(()=>{w(Zb())},[w]),ee=f.useCallback(()=>{w(Jb())},[w]),L=f.useCallback($=>{w(Yb($.key))},[w]),B=f.useCallback($=>{w(vt({handler:o,reactEvent:$}))},[w,o]),X=f.useCallback($=>{w(vt({handler:l,reactEvent:$}))},[w,l]),Q=f.useCallback($=>{w(vt({handler:c,reactEvent:$}))},[w,c]),G=f.useCallback($=>{w(vt({handler:h,reactEvent:$}))},[w,h]),ie=f.useCallback($=>{w(vt({handler:g,reactEvent:$}))},[w,g]),se=f.useCallback($=>{x&&w(tx($)),w(vt({handler:y,reactEvent:$}))},[w,x,y]),re=f.useCallback($=>{w(vt({handler:v,reactEvent:$}))},[w,v]),W=sL(j);return f.createElement(Wg.Provider,{value:P},f.createElement(Uh.Provider,{value:k},f.createElement(W,{width:_??p?.width,height:I??p?.height,className:de("recharts-wrapper",n),style:ZD({position:"relative",cursor:"default",width:_,height:I},p),onClick:F,onContextMenu:B,onDoubleClick:X,onFocus:q,onBlur:ee,onKeyDown:L,onMouseDown:Q,onMouseEnter:V,onMouseLeave:U,onMouseMove:te,onMouseUp:G,onTouchEnd:re,onTouchMove:se,onTouchStart:ie,ref:D},f.createElement(tL,null),r)))}),lL=["width","height","responsive","children","className","style","compact","title","desc"];function cL(e,t){if(e==null)return{};var r,n,a=uL(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)===-1&&{}.propertyIsEnumerable.call(e,r)&&(a[r]=e[r])}return a}function uL(e,t){if(e==null)return{};var r={};for(var n in e)if({}.hasOwnProperty.call(e,n)){if(t.indexOf(n)!==-1)continue;r[n]=e[n]}return r}var lx=f.forwardRef((e,t)=>{var{width:r,height:n,responsive:a,children:i,className:o,style:l,compact:c,title:d,desc:u}=e,m=cL(e,lL),h=yt(m);return c?f.createElement(f.Fragment,null,f.createElement(Wn,{width:r,height:n}),f.createElement(Nv,{otherAttributes:h,title:d,desc:u},i)):f.createElement(oL,{className:o,style:l,width:r,height:n,responsive:a??!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},f.createElement(Nv,{otherAttributes:h,title:d,desc:u,ref:t},f.createElement(OT,null,i)))});function wl(){return wl=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)({}).hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},wl.apply(null,arguments)}function Av(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),r.push.apply(r,n)}return r}function dL(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?Av(Object(r),!0).forEach(function(n){fL(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):Av(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function fL(e,t,r){return(t=mL(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function mL(e){var t=vL(e,"string");return typeof t=="symbol"?t:t+""}function vL(e,t){if(typeof e!="object"||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var n=r.call(e,t);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}var hL={top:5,right:5,bottom:5,left:5},pL=dL({accessibilityLayer:!0,barCategoryGap:"10%",barGap:4,layout:"horizontal",margin:hL,responsive:!1,reverseStackOrder:!1,stackOffset:"none",syncMethod:"index"},lu),yL=f.forwardRef(function(t,r){var n,a=Le(t.categoricalChartProps,pL),{chartName:i,defaultTooltipEventType:o,validateTooltipEventTypes:l,tooltipPayloadSearcher:c,categoricalChartProps:d}=t,u={chartName:i,defaultTooltipEventType:o,validateTooltipEventTypes:l,tooltipPayloadSearcher:c,eventEmitter:void 0};return f.createElement(ax,{preloadedState:{options:u},reduxStoreName:(n=d.id)!==null&&n!==void 0?n:i},f.createElement(Sb,{chartData:d.data}),f.createElement(ix,{layout:a.layout,margin:a.margin}),f.createElement(ox,{throttleDelay:a.throttleDelay,throttledEvents:a.throttledEvents}),f.createElement(sx,{baseValue:a.baseValue,accessibilityLayer:a.accessibilityLayer,barCategoryGap:a.barCategoryGap,maxBarSize:a.maxBarSize,stackOffset:a.stackOffset,barGap:a.barGap,barSize:a.barSize,syncId:a.syncId,syncMethod:a.syncMethod,className:a.className,reverseStackOrder:a.reverseStackOrder}),f.createElement(lx,wl({},a,{ref:r})))}),gL=["axis"],bL=f.forwardRef((e,t)=>f.createElement(yL,{chartName:"LineChart",defaultTooltipEventType:"axis",validateTooltipEventTypes:gL,tooltipPayloadSearcher:Hg,categoricalChartProps:e,ref:t}));function xL(e){var t=ve();return f.useEffect(()=>{t(ID(e))},[t,e]),null}var jL=["layout"];function Cl(){return Cl=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)({}).hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},Cl.apply(null,arguments)}function wL(e,t){if(e==null)return{};var r,n,a=CL(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)===-1&&{}.propertyIsEnumerable.call(e,r)&&(a[r]=e[r])}return a}function CL(e,t){if(e==null)return{};var r={};for(var n in e)if({}.hasOwnProperty.call(e,n)){if(t.indexOf(n)!==-1)continue;r[n]=e[n]}return r}function Ev(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),r.push.apply(r,n)}return r}function kL(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?Ev(Object(r),!0).forEach(function(n){PL(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):Ev(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function PL(e,t,r){return(t=SL(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function SL(e){var t=NL(e,"string");return typeof t=="symbol"?t:t+""}function NL(e,t){if(typeof e!="object"||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var n=r.call(e,t);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}var OL={top:5,right:5,bottom:5,left:5},cx=kL({accessibilityLayer:!0,stackOffset:"none",barCategoryGap:"10%",barGap:4,margin:OL,reverseStackOrder:!1,syncMethod:"index",layout:"radial",responsive:!1,cx:"50%",cy:"50%",innerRadius:0,outerRadius:"80%"},lu),AL=f.forwardRef(function(t,r){var n,a=Le(t.categoricalChartProps,cx),{layout:i}=a,o=wL(a,jL),{chartName:l,defaultTooltipEventType:c,validateTooltipEventTypes:d,tooltipPayloadSearcher:u}=t,m={chartName:l,defaultTooltipEventType:c,validateTooltipEventTypes:d,tooltipPayloadSearcher:u,eventEmitter:void 0};return f.createElement(ax,{preloadedState:{options:m},reduxStoreName:(n=a.id)!==null&&n!==void 0?n:l},f.createElement(Sb,{chartData:a.data}),f.createElement(ix,{layout:i,margin:a.margin}),f.createElement(ox,{throttleDelay:a.throttleDelay,throttledEvents:a.throttledEvents}),f.createElement(sx,{baseValue:void 0,accessibilityLayer:a.accessibilityLayer,barCategoryGap:a.barCategoryGap,maxBarSize:a.maxBarSize,stackOffset:a.stackOffset,barGap:a.barGap,barSize:a.barSize,syncId:a.syncId,syncMethod:a.syncMethod,className:a.className,reverseStackOrder:a.reverseStackOrder}),f.createElement(xL,{cx:a.cx,cy:a.cy,startAngle:a.startAngle,endAngle:a.endAngle,innerRadius:a.innerRadius,outerRadius:a.outerRadius}),f.createElement(lx,Cl({},o,{ref:r})))});function _v(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),r.push.apply(r,n)}return r}function Mv(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?_v(Object(r),!0).forEach(function(n){EL(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):_v(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function EL(e,t,r){return(t=_L(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function _L(e){var t=ML(e,"string");return typeof t=="symbol"?t:t+""}function ML(e,t){if(typeof e!="object"||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var n=r.call(e,t);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}var TL=["item"],IL=Mv(Mv({},cx),{},{layout:"centric",startAngle:0,endAngle:360}),DL=f.forwardRef((e,t)=>{var r=Le(e,IL);return f.createElement(AL,{chartName:"PieChart",defaultTooltipEventType:"item",validateTooltipEventTypes:TL,tooltipPayloadSearcher:Hg,categoricalChartProps:r,ref:t})});const fi="currentColor",LL=["--accent","--todo","--in-progress","--in-review","--triage","--color-success","--color-warning","--color-error"];function pr(e,t=fi){if(typeof document>"u"||typeof getComputedStyle!="function")return t;const r=getComputedStyle(document.documentElement).getPropertyValue(e).trim();return r.length>0?r:t}function cu(){const e=pr("--text"),t=pr("--text-muted",e),r=pr("--accent"),n=pr("--surface-1",""),a=pr("--surface-2",n),i=pr("--border-subtle",""),o=LL.map(l=>pr(l)).filter(l=>l.length>0);return{stroke:r,fill:a,grid:i,tick:t,tooltipBackground:n,tooltipBorder:i,tooltipText:e,legendText:t,palette:o.length>0?o:[fi]}}function ux(e,t=cu()){if(t.palette.length===0)return fi;const r=Number.isFinite(e)&&e>=0?Math.floor(e):0;return t.palette[r%t.palette.length]??fi}const RL={width:320,height:220},dx=120,fx=120;function $L(){return typeof window<"u"&&typeof window.matchMedia=="function"&&window.matchMedia("(prefers-reduced-motion: reduce)").matches}function BL(e){return e.map(t=>({label:t.label,value:Number.isFinite(t.value)&&t.value>0?t.value:0})).filter(t=>t.value>0)}function Tv(e,t){return e!==void 0||t!==void 0?{width:e,height:t}:void 0}function Iv(e){return typeof e=="number"||typeof e=="string"&&/^\d+(?:\.\d+)?%$/.test(e)?e:"100%"}function mi(e,t){return Number.isFinite(e)&&e>=t?e:null}function FL(e,t,r){return{width:typeof t=="number"&&t>0?t:e.width,height:typeof r=="number"&&r>0?r:e.height}}function zL(e,t){return Math.abs(e.width-t.width)<.5&&Math.abs(e.height-t.height)<.5}function KL(e){const t=e.getBoundingClientRect(),r=mi(t.width,dx),n=mi(t.height,fx);return r===null||n===null?null:{width:r,height:n}}function VL(){const e=f.useRef(null),[t,r]=f.useState(RL);return f.useLayoutEffect(()=>{const n=e.current;if(!n)return;const a=o=>{o&&r(l=>zL(l,o)?l:o)};if(a(KL(n)),typeof ResizeObserver>"u")return;const i=new ResizeObserver(o=>{const l=o[0];if(!l)return;const c=mi(l.contentRect.width,dx),d=mi(l.contentRect.height,fx);a(c===null||d===null?null:{width:c,height:d})});return i.observe(n),()=>i.disconnect()},[]),{ref:e,dimensions:t}}function kt({data:e,ariaLabel:t,width:r,height:n,emptyLabel:a="No chart data"}){const i=cu(),{ref:o,dimensions:l}=VL(),c=FL(l,r,n),d=BL(e);return d.length===0?s.jsx("div",{className:"cc-recharts-empty",role:"img","aria-label":t,style:Tv(r,n),children:a}):s.jsx("div",{ref:o,className:"cc-recharts-chart",role:"img","aria-label":t,style:Tv(r,n),"data-responsive-width":Iv(r),"data-responsive-height":Iv(n),children:s.jsxs(DL,{width:c.width,height:c.height,children:[s.jsx(kb,{data:d,dataKey:"value",nameKey:"label",isAnimationActive:!$L(),children:d.map((u,m)=>s.jsx(rs,{fill:ux(m,i),stroke:i.tooltipBorder},u.label))}),s.jsx(Yg,{contentStyle:{background:i.tooltipBackground,borderColor:i.tooltipBorder,color:i.tooltipText},itemStyle:{color:i.tooltipText},labelStyle:{color:i.tooltipText}}),s.jsx(fc,{wrapperStyle:{color:i.legendText}})]})})}const UL={width:360,height:220},mx=120,vx=120;function qL(){return typeof window<"u"&&typeof window.matchMedia=="function"&&window.matchMedia("(prefers-reduced-motion: reduce)").matches}function WL(e){return Number.isFinite(e)&&e>0?e:0}function HL(e){const t=e.reduce((r,n)=>n>r?n:r,0);return t<=0?e.map(()=>0):e.map(r=>r/t*100)}function GL(e,t){return e.map((r,n)=>{const a=r.values.map(WL);return{label:r.label,dataKey:`series${n}`,values:a,plotKey:t==="series"?`series${n}Normalized`:`series${n}`,plotValues:t==="series"?HL(a):a}}).filter(r=>r.values.length>0)}function XL(e){const t=e.reduce((r,n)=>Math.max(r,n.values.length),0);return Array.from({length:t},(r,n)=>{const a={index:n+1};for(const i of e)a[i.dataKey]=i.values[n]??0,a[i.plotKey]=i.plotValues[n]??0;return a})}function Dv(e,t){return e!==void 0||t!==void 0?{width:e,height:t}:void 0}function Lv(e){return typeof e=="number"||typeof e=="string"&&/^\d+(?:\.\d+)?%$/.test(e)?e:"100%"}function vi(e,t){return Number.isFinite(e)&&e>=t?e:null}function YL(e,t,r){return{width:typeof t=="number"&&t>0?t:e.width,height:typeof r=="number"&&r>0?r:e.height}}function ZL(e,t){return Math.abs(e.width-t.width)<.5&&Math.abs(e.height-t.height)<.5}function JL(e){const t=e.getBoundingClientRect(),r=vi(t.width,mx),n=vi(t.height,vx);return r===null||n===null?null:{width:r,height:n}}function QL(){const e=f.useRef(null),[t,r]=f.useState(UL);return f.useLayoutEffect(()=>{const n=e.current;if(!n)return;const a=o=>{o&&r(l=>ZL(l,o)?l:o)};if(a(JL(n)),typeof ResizeObserver>"u")return;const i=new ResizeObserver(o=>{const l=o[0];if(!l)return;const c=vi(l.contentRect.width,mx),d=vi(l.contentRect.height,vx);a(c===null||d===null?null:{width:c,height:d})});return i.observe(n),()=>i.disconnect()},[]),{ref:e,dimensions:t}}function cr({series:e,ariaLabel:t,width:r,height:n,emptyLabel:a="No chart data",xAxisLabels:i,valueFormatter:o,scaleMode:l="shared"}){const c=cu(),{ref:d,dimensions:u}=QL(),m=YL(u,r,n),h=GL(e,l),v=XL(h),y=p=>{const b=typeof p=="number"?p:Number(p);return Number.isFinite(b)?i?.[b-1]??String(p):String(p)},g=p=>{const b=typeof p=="number"?p:Number(p);return o&&Number.isFinite(b)?o(b):String(p)};return h.length===0||v.length===0?s.jsx("div",{className:"cc-recharts-empty",role:"img","aria-label":t,style:Dv(r,n),children:a}):s.jsx("div",{ref:d,className:"cc-recharts-chart",role:"img","aria-label":t,style:Dv(r,n),"data-scale-mode":l,"data-responsive-width":Lv(r),"data-responsive-height":Lv(n),children:s.jsxs(bL,{width:m.width,height:m.height,data:v,children:[s.jsx(Mb,{stroke:c.grid}),s.jsx(Vb,{dataKey:"index",stroke:c.tick,tick:{fill:c.tick},tickFormatter:i?y:void 0}),s.jsx(Ub,{stroke:c.tick,tick:{fill:c.tick},domain:l==="series"?[0,100]:void 0,tickFormatter:l==="series"?p=>`${p}%`:o}),s.jsx(Yg,{contentStyle:{background:c.tooltipBackground,borderColor:c.tooltipBorder,color:c.tooltipText},itemStyle:{color:c.tooltipText},labelStyle:{color:c.tooltipText},formatter:o?p=>g(p):void 0,labelFormatter:i?y:void 0}),s.jsx(fc,{wrapperStyle:{color:c.legendText}}),h.map((p,b)=>s.jsx(zb,{type:"monotone",dataKey:p.plotKey,name:p.label,stroke:ux(b,c),isAnimationActive:!qL()},p.dataKey))]})})}function Pt({testId:e,isLoading:t,error:r,isEmpty:n,emptyMessage:a,children:i}){const{t:o}=le("app");return t?s.jsxs("div",{className:"cc-loading-inline","data-testid":`cc-area-${e}-loading`,children:[s.jsx(El,{size:18,className:"spin"}),s.jsx("span",{children:o("commandCenter.area.loading","Loading…")})]}):r!==null?s.jsxs("div",{className:"cc-area-error","data-testid":`cc-area-${e}-error`,role:"alert",children:[s.jsx(gi,{size:22}),s.jsx("p",{children:r})]}):n?s.jsxs("div",{className:"cc-area-empty","data-testid":`cc-area-${e}-empty`,children:[s.jsx(bi,{size:24}),s.jsx("p",{children:a??o("commandCenter.area.empty","No data for the selected range.")})]}):s.jsx("div",{className:"cc-area","data-testid":`cc-area-${e}`,children:i})}function eR(e,t){if(t==="")return e;const r=t.slice(1);return`${e}${e.includes("?")?"&":"?"}${r}`}function Ge(e,t,r={}){const[n,a]=f.useState(null),i=f.useRef(null),[o,l]=f.useState(!0),[c,d]=f.useState(null),u=Z0(t),m=Fh(t),h=f.useCallback(async()=>{if(m){l(!1);return}i.current!==null||l(!0),d(null);try{const g=await _l(eR(e,u));i.current=g,a(g)}catch(g){d(g instanceof Error?g.message:"Failed to load analytics")}finally{l(!1)}},[e,u,m]);f.useEffect(()=>{h()},[h]),f.useEffect(()=>{if(m||r.pollMs===void 0)return;const y=window.setInterval(()=>{h()},r.pollMs);return()=>window.clearInterval(y)},[m,h,r.pollMs]);const v=f.useCallback(()=>{h()},[h]);return{data:n,isLoading:o,error:c!==null&&n===null?c:null,reload:v}}const tR=15e3,rR=["hour","day","week"];function Rv(e){return e.unavailable||e.usd===null?-1:e.usd}function $v(e){return e.key??"unknown"}function Bv(e,t){return e.key??t}function hx(e){return Ml(e.key??"")}function nR({group:e,unknownLabel:t}){const r=e.key??t;return s.jsxs("span",{className:"cc-model-label",children:[s.jsx(eh,{provider:hx(e),size:"sm"}),s.jsx("span",{className:"cc-model-label-text",children:r})]})}function aR(e,t,r){const n=[...e];return n.sort((a,i)=>{let o=0;return t==="key"?o=(a.key??"").localeCompare(i.key??""):t==="totalTokens"?o=a.totalTokens-i.totalTokens:o=Rv(a.cost)-Rv(i.cost),o===0&&(o=(a.key??"").localeCompare(i.key??"")),o*r}),n}function iR({range:e}){const{t}=le("app"),[r,n]=f.useState("day"),a=`/command-center/tokens?groupBy=model&granularity=${r}`,{data:i,isLoading:o,error:l}=Ge(a,e,{pollMs:tR}),c=f.useMemo(()=>i?.groups??[],[i?.groups]),d=f.useMemo(()=>i?.series??[],[i?.series]),[u,m]=f.useState("totalTokens"),[h,v]=f.useState(-1),y=f.useMemo(()=>c.map(A=>A.key??"∅").join(" "),[c]),g=f.useRef(null);f.useEffect(()=>{if(g.current===null){g.current=y;return}g.current!==y&&(g.current=y,m("totalTokens"),v(-1))},[y]);const p=f.useMemo(()=>aR(c,u,h),[c,u,h]),b=f.useMemo(()=>[...c].sort((A,_)=>_.totalTokens-A.totalTokens||(A.key??"").localeCompare(_.key??"")),[c]),j=f.useMemo(()=>b.map(A=>({label:Bv(A,t("commandCenter.tokens.unknownModel","(unknown)")),value:A.totalTokens,valueLabel:K(A.totalTokens),iconProvider:hx(A)})),[b,t]),x=f.useMemo(()=>b.map(A=>({label:Bv(A,t("commandCenter.tokens.unknownModel","(unknown)")),value:A.totalTokens})),[b,t]),C=f.useMemo(()=>[{label:t("commandCenter.tokens.input","Input"),values:d.map(A=>A.inputTokens)},{label:t("commandCenter.tokens.output","Output"),values:d.map(A=>A.outputTokens)},{label:t("commandCenter.tokens.cached","Cached"),values:d.map(A=>A.cachedTokens)},{label:t("commandCenter.tokens.total","Total"),values:d.map(A=>A.totalTokens)}],[d,t]);function w(A){A===u?v(_=>_===1?-1:1):(m(A),v(A==="key"?1:-1))}function P(A){return A!==u?null:s.jsx("span",{className:"cc-sort-caret",children:h===1?"▲":"▼"})}const O=i?.totals,k=f.useMemo(()=>d.map(A=>A.bucket).join(" "),[d]),N=O?.totalTokens??0,S=!i||N===0;return s.jsxs(Pt,{testId:"tokens",isLoading:o,error:l,isEmpty:S,children:[s.jsxs("div",{className:"cc-area-section",children:[s.jsx("h3",{className:"cc-area-section-title",children:t("commandCenter.tokens.totalsTitle","Totals")}),s.jsxs("div",{className:"cc-stat-grid",children:[s.jsxs("div",{className:"card cc-stat-card","data-testid":"cc-tokens-total",children:[s.jsx("div",{className:"cc-stat-label",children:t("commandCenter.tokens.totalTokens","Total tokens")}),s.jsx("div",{className:"cc-stat-value cc-token-count-live",children:K(N)},N)]}),s.jsxs("div",{className:"card cc-stat-card","data-testid":"cc-tokens-cost",children:[s.jsx("div",{className:"cc-stat-label",children:t("commandCenter.tokens.cost","Estimated cost")}),s.jsx("div",{className:"cc-stat-value",children:i?Sr(i.cost.usd,i.cost.unavailable):"—"}),i?.cost.stale?s.jsx("span",{className:"cc-stat-sub",children:t("commandCenter.tokens.stalePricing","pricing may be stale")}):null]}),s.jsxs("div",{className:"card cc-stat-card",children:[s.jsx("div",{className:"cc-stat-label",children:t("commandCenter.tokens.tasks","Tasks")}),s.jsx("div",{className:"cc-stat-value",children:K(O?.nTasks??0)})]})]})]}),s.jsxs("div",{className:"cc-area-section",children:[s.jsxs("div",{className:"cc-area-section-header",children:[s.jsx("h3",{className:"cc-area-section-title",children:t("commandCenter.tokens.overTimeChart","Tokens over time")}),s.jsx("div",{className:"cc-token-granularity",role:"group","aria-label":t("commandCenter.tokens.granularity","Token chart granularity"),children:rR.map(A=>s.jsx("button",{type:"button",className:`btn ${A===r?"active":""}`,"aria-pressed":A===r,"data-testid":`cc-token-granularity-${A}`,onClick:()=>n(A),children:t(`commandCenter.tokens.granularity.${A}`,A)},A))})]}),s.jsx(Q0,{points:d,ariaLabel:t("commandCenter.tokens.overTimeChart","Tokens over time")},k)]}),d.length>0?s.jsxs("div",{className:"cc-area-section","data-testid":"cc-tokens-line",children:[s.jsx("h3",{className:"cc-area-section-title",children:t("commandCenter.tokens.rechartsLine","Tokens trend")}),s.jsx(cr,{series:C,ariaLabel:t("commandCenter.tokens.rechartsLine","Tokens trend")})]}):null,s.jsxs("div",{className:"cc-area-section",children:[s.jsx("h3",{className:"cc-area-section-title",children:t("commandCenter.tokens.byModelChart","Tokens by model")}),s.jsx(Ze,{data:j,ariaLabel:t("commandCenter.tokens.byModelChart","Tokens by model")})]}),x.length>0?s.jsxs("div",{className:"cc-area-section","data-testid":"cc-tokens-pie",children:[s.jsx("h3",{className:"cc-area-section-title",children:t("commandCenter.tokens.pieChart","Token share by model")}),s.jsx(kt,{data:x,ariaLabel:t("commandCenter.tokens.pieChart","Token share by model")})]}):null,s.jsxs("div",{className:"cc-area-section",children:[s.jsx("h3",{className:"cc-area-section-title",children:t("commandCenter.tokens.tableTitle","Per-model breakdown")}),s.jsx("div",{className:"cc-table-wrap",children:s.jsxs("table",{className:"cc-table","data-testid":"cc-tokens-table",children:[s.jsx("thead",{children:s.jsxs("tr",{children:[s.jsxs("th",{className:"cc-sortable",onClick:()=>w("key"),"data-testid":"cc-tokens-sort-key",children:[t("commandCenter.tokens.model","Model"),P("key")]}),s.jsx("th",{children:t("commandCenter.tokens.input","Input")}),s.jsx("th",{children:t("commandCenter.tokens.output","Output")}),s.jsx("th",{children:t("commandCenter.tokens.cached","Cached")}),s.jsxs("th",{className:"cc-sortable",onClick:()=>w("totalTokens"),"data-testid":"cc-tokens-sort-total",children:[t("commandCenter.tokens.total","Total"),P("totalTokens")]}),s.jsxs("th",{className:"cc-sortable",onClick:()=>w("cost"),"data-testid":"cc-tokens-sort-cost",children:[t("commandCenter.tokens.costCol","Cost"),P("cost")]})]})}),s.jsx("tbody",{children:p.map(A=>s.jsxs("tr",{"data-testid":`cc-tokens-row-${$v(A)}`,children:[s.jsx("td",{children:s.jsx(nR,{group:A,unknownLabel:t("commandCenter.tokens.unknownModel","(unknown)")})}),s.jsx("td",{children:K(A.inputTokens)}),s.jsx("td",{children:K(A.outputTokens)}),s.jsx("td",{children:K(A.cachedTokens)}),s.jsx("td",{children:K(A.totalTokens)}),s.jsx("td",{children:A.cost.unavailable||A.cost.usd===null?s.jsx("span",{className:"cc-unavailable",title:t("commandCenter.tokens.costUnavailable","No pricing for this model"),children:"—"}):Sr(A.cost.usd,A.cost.unavailable)})]},$v(A)))})]})})]})]})}function sR({range:e}){const{t}=le("app"),{data:r,isLoading:n,error:a}=Ge("/command-center/tools",e),i=f.useMemo(()=>[...r?.byCategory??[]].sort((u,m)=>m.count-u.count||u.category.localeCompare(m.category)),[r?.byCategory]),o=f.useMemo(()=>i.map(u=>({label:u.category,value:u.count,valueLabel:K(u.count)})),[i]),l=f.useMemo(()=>i.map(u=>({label:u.category,value:u.count})),[i]),c=!r||r.toolCalls===0,d=r?r.fullyAutonomous?t("commandCenter.tools.ratioAutonomous","{{ratio}} calls/session (fully autonomous)",{ratio:r.autonomyRatio.toFixed(1)}):`${r.autonomyRatio.toFixed(1)}:1`:"—";return s.jsxs(Pt,{testId:"tools",isLoading:n,error:a,isEmpty:c,children:[s.jsxs("div",{className:"cc-area-section",children:[s.jsx("h3",{className:"cc-area-section-title",children:t("commandCenter.tools.summaryTitle","Summary")}),s.jsxs("div",{className:"cc-stat-grid",children:[s.jsxs("div",{className:"card cc-stat-card","data-testid":"cc-tools-autonomy",children:[s.jsx("div",{className:"cc-stat-label",children:t("commandCenter.tools.autonomyRatio","Autonomy ratio")}),s.jsx("div",{className:"cc-stat-value",children:d}),s.jsx("span",{className:"cc-stat-sub",children:t("commandCenter.tools.autonomyHint","tool calls per human intervention")})]}),s.jsxs("div",{className:"card cc-stat-card",children:[s.jsx("div",{className:"cc-stat-label",children:t("commandCenter.tools.toolCalls","Tool calls")}),s.jsx("div",{className:"cc-stat-value",children:K(r?.toolCalls??0)})]}),s.jsxs("div",{className:"card cc-stat-card",children:[s.jsx("div",{className:"cc-stat-label",children:t("commandCenter.tools.interventions","Interventions")}),s.jsx("div",{className:"cc-stat-value",children:K(r?.interventions.total??0)}),s.jsx("span",{className:"cc-stat-sub",children:t("commandCenter.tools.interventionBreakdown","{{approvals}} approvals · {{steers}} steers",{approvals:K(r?.interventions.approvals??0),steers:K(r?.interventions.userSteers??0)})})]}),s.jsxs("div",{className:"card cc-stat-card",children:[s.jsx("div",{className:"cc-stat-label",children:t("commandCenter.tools.sessions","Sessions")}),s.jsx("div",{className:"cc-stat-value",children:K(r?.sessions??0)})]})]})]}),s.jsxs("div",{className:"cc-area-section",children:[s.jsx("h3",{className:"cc-area-section-title",children:t("commandCenter.tools.categoriesTitle","Tool categories")}),s.jsx(Ze,{data:o,ariaLabel:t("commandCenter.tools.categoriesTitle","Tool categories")})]}),l.length>0?s.jsxs("div",{className:"cc-area-section","data-testid":"cc-tools-pie",children:[s.jsx("h3",{className:"cc-area-section-title",children:t("commandCenter.tools.pieChart","Tool category share")}),s.jsx(kt,{data:l,ariaLabel:t("commandCenter.tools.pieChart","Tool category share")})]}):null]})}const oR=250,lR=100,kl=1.8,qr=3,cR={width:oR,height:lR};function uR(e,t){if(!Number.isFinite(e)||e<=0)return 0;const r=Number.isFinite(t)&&t>0?t:1;return Math.max(0,Math.min(100,e/r*100))}function Fv(e){return Number.isFinite(e)?e:0}function dR(e,t){return!Number.isFinite(e)||!Number.isFinite(t)||e<=0||t<=0?null:{width:Math.max(e,qr*2+kl*2),height:Math.max(t,qr*2+kl*2)}}function fR(e,t,r,n,a){const i=Math.max(0,a.width-qr*2),o=Math.max(0,a.height-qr*2),l=r<=1?a.width/2:qr+t/(r-1)*i,c=uR(e,n);return{x:Fv(l),y:Fv(qr+o*(1-c/100))}}function mR(e,t,r){return e.map((n,a)=>fR(n,a,e.length,t,r))}function vR(e){return e.map(t=>`${t.x},${t.y}`).join(" ")}function hR(e,t){return Number.isFinite(t)&&t!==void 0&&t>0?t:e.reduce((r,n)=>{const a=n.values.reduce((i,o)=>Number.isFinite(o)&&o>i?o:i,0);return a>r?a:r},0)}function zv(e){return dR(e.width,e.height)}function pR(e,t){return Math.abs(e.width-t.width)<.5&&Math.abs(e.height-t.height)<.5}function ya({series:e,ariaLabel:t,max:r}){const n=f.useRef(null),[a,i]=f.useState(cR),o=hR(e,r);return f.useLayoutEffect(()=>{const l=n.current;if(!l)return;const c=u=>{u&&i(m=>pR(m,u)?m:u)};if(c(zv(l.getBoundingClientRect())),typeof ResizeObserver>"u")return;const d=new ResizeObserver(u=>{const m=u[0];m&&c(zv(m.contentRect))});return d.observe(l),()=>d.disconnect()},[]),s.jsx("svg",{ref:n,className:"cc-line-chart",role:"img","aria-label":t,viewBox:`0 0 ${a.width} ${a.height}`,preserveAspectRatio:"none",children:e.map((l,c)=>{const d=mR(l.values,o,a),u=vR(d);return s.jsxs("g",{className:"cc-line-chart-series","aria-label":l.label,children:[d.length>1?s.jsx("polyline",{className:"cc-line-chart-path",points:u,pathLength:a.width,vectorEffect:"non-scaling-stroke","aria-hidden":"true"}):null,d.map((m,h)=>s.jsx("circle",{className:"cc-line-chart-point",cx:m.x,cy:m.y,r:kl,vectorEffect:"non-scaling-stroke","aria-hidden":"true"},h))]},c)})})}function yR(e,t){if(!Number.isFinite(e)||e<=0)return 0;const r=Number.isFinite(t)&&t>0?t:1;return Math.max(0,Math.min(100,e/r*100))}function Kt({values:e,ariaLabel:t,max:r}){const n=r??e.reduce((a,i)=>i>a?i:a,0);return s.jsx("div",{className:"cc-sparkline",role:"img","aria-label":t,children:e.map((a,i)=>{const o=yR(a,n);return s.jsx("div",{className:"cc-sparkline-bar",style:{height:`${o}%`},"aria-hidden":"true"},i)})})}const gR=15e3;function bR({range:e}){const{t}=le("app"),{data:r,isLoading:n,error:a,reload:i}=Ge("/command-center/activity",e),o=f.useMemo(()=>r?.daily??[],[r?.daily]),l=f.useMemo(()=>o.map(j=>j.messages),[o]),c=f.useMemo(()=>o.map(j=>j.activeAgents),[o]),d=f.useMemo(()=>o.map(j=>j.activeNodes),[o]),u=f.useMemo(()=>o.map(j=>j.agentRuns),[o]),m=f.useMemo(()=>o.map(j=>j.messages+j.activeAgents+j.activeNodes),[o]),h=f.useMemo(()=>[{label:t("commandCenter.activity.messages","Messages"),values:l},{label:t("commandCenter.activity.activeAgents","Active agents"),values:c},{label:t("commandCenter.activity.agentRuns","Agent runs"),values:u}],[u,c,l,t]),v=Fh(e),y=n&&r===null;f.useEffect(()=>{if(v)return;const j=window.setInterval(()=>{i()},gR);return()=>window.clearInterval(j)},[v,i]);const g=r?.agentRuns??{total:0,active:0,completed:0,failed:0},p=f.useMemo(()=>[{label:t("commandCenter.activity.agentRunsActive","Active"),value:g.active},{label:t("commandCenter.activity.agentRunsCompleted","Completed"),value:g.completed},{label:t("commandCenter.activity.agentRunsFailed","Failed"),value:g.failed}].filter(j=>j.value>0),[g.active,g.completed,g.failed,t]),b=!r||r.sessions===0&&r.messages===0&&r.activeNodes===0&&r.activeAgents===0&&g.total===0;return s.jsxs(Pt,{testId:"activity",isLoading:y,error:a,isEmpty:b,children:[s.jsxs("div",{className:"cc-area-section",children:[s.jsx("h3",{className:"cc-area-section-title",children:t("commandCenter.activity.summaryTitle","Summary")}),s.jsxs("div",{className:"cc-stat-grid",children:[s.jsxs("div",{className:"card cc-stat-card","data-testid":"cc-activity-sessions",children:[s.jsx("div",{className:"cc-stat-label",children:t("commandCenter.activity.sessions","Sessions")}),s.jsx("div",{className:"cc-stat-value",children:K(r?.sessions??0)})]}),s.jsxs("div",{className:"card cc-stat-card","data-testid":"cc-activity-messages",children:[s.jsx("div",{className:"cc-stat-label",children:t("commandCenter.activity.messages","Messages")}),s.jsx("div",{className:"cc-stat-value",children:K(r?.messages??0)})]}),s.jsxs("div",{className:"card cc-stat-card","data-testid":"cc-activity-nodes",children:[s.jsx("div",{className:"cc-stat-label",children:t("commandCenter.activity.activeNodes","Active nodes")}),s.jsx("div",{className:"cc-stat-value",children:K(r?.activeNodes??0)})]}),s.jsxs("div",{className:"card cc-stat-card","data-testid":"cc-activity-agents",children:[s.jsx("div",{className:"cc-stat-label",children:t("commandCenter.activity.activeAgents","Active agents")}),s.jsx("div",{className:"cc-stat-value",children:K(r?.activeAgents??0)})]}),s.jsxs("div",{className:"card cc-stat-card","data-testid":"cc-activity-agent-runs",children:[s.jsx("div",{className:"cc-stat-label",children:t("commandCenter.activity.agentRuns","Agent runs")}),s.jsx("div",{className:"cc-stat-value",children:K(g.total)})]}),s.jsxs("div",{className:"card cc-stat-card","data-testid":"cc-activity-agent-runs-active",children:[s.jsx("div",{className:"cc-stat-label",children:t("commandCenter.activity.agentRunsActive","Active")}),s.jsx("div",{className:"cc-stat-value",children:K(g.active)})]}),s.jsxs("div",{className:"card cc-stat-card","data-testid":"cc-activity-agent-runs-completed",children:[s.jsx("div",{className:"cc-stat-label",children:t("commandCenter.activity.agentRunsCompleted","Completed")}),s.jsx("div",{className:"cc-stat-value",children:K(g.completed)})]}),s.jsxs("div",{className:"card cc-stat-card","data-testid":"cc-activity-agent-runs-failed",children:[s.jsx("div",{className:"cc-stat-label",children:t("commandCenter.activity.agentRunsFailed","Failed")}),s.jsx("div",{className:"cc-stat-value",children:K(g.failed)})]}),s.jsxs("div",{className:"card cc-stat-card","data-testid":"cc-activity-stickiness",children:[s.jsx("div",{className:"cc-stat-label",children:t("commandCenter.activity.stickiness","Stickiness")}),s.jsx("div",{className:"cc-stat-value",children:r?`${Math.round(r.stickiness*100)}%`:"—"}),s.jsx("span",{className:"cc-stat-sub",children:t("commandCenter.activity.stickinessHint","DAU / MAU")})]})]})]}),o.length>0?s.jsxs("div",{className:"cc-area-section","data-testid":"cc-activity-line",children:[s.jsx("h3",{className:"cc-area-section-title",children:t("commandCenter.activity.rechartsLine","Activity trend")}),s.jsx(cr,{series:h,ariaLabel:t("commandCenter.activity.rechartsLine","Activity trend"),scaleMode:"series"})]}):null,p.length>0?s.jsxs("div",{className:"cc-area-section","data-testid":"cc-activity-pie",children:[s.jsx("h3",{className:"cc-area-section-title",children:t("commandCenter.activity.agentRunOutcomeShare","Agent run outcome share")}),s.jsx(kt,{data:p,ariaLabel:t("commandCenter.activity.agentRunOutcomeShare","Agent run outcome share")})]}):null,s.jsxs("div",{className:"cc-area-section","data-testid":"cc-activity-line-messages",children:[s.jsx("h3",{className:"cc-area-section-title",children:t("commandCenter.activity.messagesPerDay","Messages / day")}),s.jsx(ya,{series:[{label:t("commandCenter.activity.messages","Messages"),values:l}],ariaLabel:t("commandCenter.activity.messagesPerDay","Messages / day")})]}),s.jsxs("div",{className:"cc-area-section","data-testid":"cc-activity-line-agents",children:[s.jsx("h3",{className:"cc-area-section-title",children:t("commandCenter.activity.agentsPerDay","Active agents / day")}),s.jsx(ya,{series:[{label:t("commandCenter.activity.activeAgents","Active agents"),values:c}],ariaLabel:t("commandCenter.activity.agentsPerDay","Active agents / day")})]}),s.jsxs("div",{className:"cc-area-section","data-testid":"cc-activity-line-nodes",children:[s.jsx("h3",{className:"cc-area-section-title",children:t("commandCenter.activity.nodesPerDay","Active nodes / day")}),s.jsx(ya,{series:[{label:t("commandCenter.activity.activeNodes","Active nodes"),values:d}],ariaLabel:t("commandCenter.activity.nodesPerDay","Active nodes / day")})]}),s.jsxs("div",{className:"cc-area-section","data-testid":"cc-activity-agent-runs-sparkline",children:[s.jsx("h3",{className:"cc-area-section-title",children:t("commandCenter.activity.agentRunsPerDay","Agent runs / day")}),s.jsx(Kt,{values:u,ariaLabel:t("commandCenter.activity.agentRunsPerDay","Agent runs / day")})]}),s.jsxs("div",{className:"cc-area-section","data-testid":"cc-activity-line-throughput",children:[s.jsx("h3",{className:"cc-area-section-title",children:t("commandCenter.activity.throughputPerDay","Throughput / day")}),s.jsx(ya,{series:[{label:t("commandCenter.activity.throughput","Throughput"),values:m}],ariaLabel:t("commandCenter.activity.throughputPerDay","Throughput / day")})]})]})}function xR({range:e}){const{t}=le("app"),{confirm:r}=th(),{data:n,isLoading:a,error:i}=Ge("/command-center/productivity",e),[o,l]=f.useState(!1),[c,d]=f.useState(null),[u,m]=f.useState(null),h=f.useCallback(async()=>{if(!o){l(!0),m(null),d(null);try{const D=await fu({dryRun:!0});d(D)}catch(D){m(D instanceof Error?D.message:t("commandCenter.productivity.backfillFailed","Failed to backfill historical LOC stats"))}finally{l(!1)}}},[o,t]),v=f.useCallback(async()=>{if(!(o||!await r({title:t("commandCenter.productivity.backfillConfirmTitle","Apply LOC backfill?"),message:t("commandCenter.productivity.backfillConfirmMessage","This will persist diff stats to task_commit_associations for historical commit associations. Review the dry-run counts before applying."),confirmLabel:t("commandCenter.productivity.backfillApply","Apply backfill"),cancelLabel:t("common.cancel","Cancel"),danger:!0}))){l(!0),m(null);try{const F=await fu({dryRun:!1});d(F)}catch(F){m(F instanceof Error?F.message:t("commandCenter.productivity.backfillFailed","Failed to backfill historical LOC stats"))}finally{l(!1)}}},[r,o,t]),y=f.useMemo(()=>(n?.byLanguage??[]).slice(0,12).map(D=>({label:D.language,value:D.count,valueLabel:K(D.count)})),[n?.byLanguage]),g=f.useMemo(()=>(n?.byLanguage??[]).slice(0,12).map(D=>({label:D.language,value:D.count})),[n?.byLanguage]),p=n?.taskDuration??{completedTasks:0,averageMs:null,medianMs:null,p90Ms:null,totalMs:null,unavailable:!0},b=f.useMemo(()=>(n?.taskDurationTrend??[]).filter(D=>!D.unavailable&&D.completedTasks>0&&D.averageMs!==null&&D.medianMs!==null&&Number.isFinite(D.averageMs)&&Number.isFinite(D.medianMs)),[n?.taskDurationTrend]),j=f.useMemo(()=>[{label:t("commandCenter.productivity.averageDuration","Average"),values:b.map(D=>D.averageMs??0)},{label:t("commandCenter.productivity.medianDuration","Median"),values:b.map(D=>D.medianMs??0)}],[t,b]),x=f.useMemo(()=>b.map(D=>D.bucket),[b]),C=b.length>0,w=n?.loc??{value:null,unavailable:!0},P=n?.hoursSaved??{value:null,unavailable:!0},O=!n||n.modifiedFiles===0&&n.commits===0&&n.pullRequests===0&&p.completedTasks===0,k=!n||w.unavailable||w.value===null,N=!n||P.unavailable||P.value===null,S=!n||p.unavailable,A=t("commandCenter.productivity.durationUnavailable","Task duration is unavailable until completed tasks have active execution time recorded"),_=u?"cc-productivity-backfill-status--error":o?"cc-productivity-backfill-status--warning":"",I=(D,F)=>S||D===null?s.jsx("span",{className:"cc-unavailable",title:A,"data-testid":F,children:"—"}):Eu(D);return s.jsxs(Pt,{testId:"productivity",isLoading:a,error:i,isEmpty:O,children:[s.jsxs("div",{className:"cc-area-section",children:[s.jsx("h3",{className:"cc-area-section-title",children:t("commandCenter.productivity.outcomesTitle","Outcomes")}),s.jsxs("div",{className:"cc-stat-grid",children:[s.jsxs("div",{className:"card cc-stat-card","data-testid":"cc-productivity-commits",children:[s.jsx("div",{className:"cc-stat-label",children:t("commandCenter.productivity.commits","Commits")}),s.jsx("div",{className:"cc-stat-value",children:K(n?.commits??0)})]}),s.jsxs("div",{className:"card cc-stat-card","data-testid":"cc-productivity-prs",children:[s.jsx("div",{className:"cc-stat-label",children:t("commandCenter.productivity.pullRequests","Pull requests")}),s.jsx("div",{className:"cc-stat-value",children:K(n?.pullRequests??0)})]}),s.jsxs("div",{className:"card cc-stat-card","data-testid":"cc-productivity-hours-saved",children:[s.jsx("div",{className:"cc-stat-label",children:t("commandCenter.productivity.hoursSaved","Human hours saved")}),s.jsx("div",{className:"cc-stat-value",children:N?s.jsx("span",{className:"cc-unavailable",title:t("commandCenter.productivity.hoursSavedUnavailable","Estimated human hours saved is unavailable until commit diff stats exist"),"data-testid":"cc-productivity-hours-saved-unavailable",children:"—"}):K(P.value??0)}),s.jsx("span",{className:"cc-stat-sub",children:t("commandCenter.productivity.hoursSavedEstimate","estimate from lines changed")})]})]})]}),s.jsxs("div",{className:"cc-area-section",children:[s.jsx("h3",{className:"cc-area-section-title",children:t("commandCenter.productivity.volumeTitle","Volume (proxy)")}),s.jsxs("div",{className:"cc-stat-grid",children:[s.jsxs("div",{className:"card cc-stat-card","data-testid":"cc-productivity-files",children:[s.jsx("div",{className:"cc-stat-label",children:t("commandCenter.productivity.modifiedFiles","Files modified")}),s.jsx("div",{className:"cc-stat-value",children:K(n?.modifiedFiles??0)}),s.jsx("span",{className:"cc-stat-sub",children:t("commandCenter.productivity.volumeHint","volume, not outcome")})]}),s.jsxs("div",{className:"card cc-stat-card","data-testid":"cc-productivity-loc",children:[s.jsx("div",{className:"cc-stat-label",children:t("commandCenter.productivity.loc","Lines changed")}),s.jsx("div",{className:"cc-stat-value",children:k?s.jsx("span",{className:"cc-unavailable",title:t("commandCenter.productivity.locUnavailable","LOC is unavailable until commit diff stats are recorded"),"data-testid":"cc-productivity-loc-unavailable",children:"—"}):K(w.value??0)}),s.jsx("span",{className:"cc-stat-sub",children:t("commandCenter.productivity.volumeHint","volume, not outcome")}),s.jsxs("div",{className:"cc-productivity-backfill-actions",children:[s.jsxs("button",{type:"button",className:"btn","data-testid":"cc-productivity-backfill-button",onClick:()=>void h(),disabled:o,children:[s.jsx(Gr,{className:o?"spin":void 0}),s.jsx("span",{children:o?t("commandCenter.productivity.backfillBusy","Checking historical LOC…"):t("commandCenter.productivity.backfillButton","Preview LOC backfill")})]}),c?.dryRun?s.jsx("button",{type:"button",className:"btn","data-testid":"cc-productivity-backfill-apply-button",onClick:()=>void v(),disabled:o,children:t("commandCenter.productivity.backfillApply","Apply backfill")}):null]}),o||c||u?s.jsxs("div",{className:`cc-productivity-backfill-status ${_}`.trim(),"data-testid":"cc-productivity-backfill-result",role:"status",children:[o?s.jsx("span",{children:t("commandCenter.productivity.backfillPending","LOC backfill check is running.")}):null,u?s.jsx("span",{children:u}):null,c?s.jsxs(s.Fragment,{children:[s.jsx("span",{children:t("commandCenter.productivity.backfillResult","Backfill report")}),s.jsx("span",{children:c.dryRun?t("commandCenter.productivity.backfillPreviewLabel","Dry-run preview"):t("commandCenter.productivity.backfillAppliedLabel","Applied")}),s.jsxs("span",{children:[t("commandCenter.productivity.backfillScannedRows","Scanned rows"),": ",c.scannedRows]}),s.jsxs("span",{children:[t("commandCenter.productivity.backfillDistinctCommits","Distinct commits"),": ",c.distinctCommits]}),s.jsxs("span",{children:[t("commandCenter.productivity.backfillUpdatedRows","Updated rows"),": ",c.updatedRows]}),s.jsxs("span",{children:[t("commandCenter.productivity.backfillSkippedUnavailableCommits","Skipped unavailable commits"),": ",c.skippedUnavailableCommits]}),s.jsxs("span",{children:[t("commandCenter.productivity.backfillSkippedInvalidShas","Skipped invalid SHAs"),": ",c.skippedInvalidShas]})]}):null]}):null]})]})]}),s.jsxs("div",{className:"cc-area-section",children:[s.jsx("h3",{className:"cc-area-section-title",children:t("commandCenter.productivity.durationTitle","Task duration")}),s.jsxs("div",{className:"cc-stat-grid",children:[s.jsxs("div",{className:"card cc-stat-card","data-testid":"cc-productivity-duration-completed",children:[s.jsx("div",{className:"cc-stat-label",children:t("commandCenter.productivity.completedTasks","Completed tasks")}),s.jsx("div",{className:"cc-stat-value",children:K(p.completedTasks)})]}),s.jsxs("div",{className:"card cc-stat-card","data-testid":"cc-productivity-duration-avg",children:[s.jsx("div",{className:"cc-stat-label",children:t("commandCenter.productivity.averageDuration","Average")}),s.jsx("div",{className:"cc-stat-value",children:I(p.averageMs,"cc-productivity-duration-avg-unavailable")})]}),s.jsxs("div",{className:"card cc-stat-card","data-testid":"cc-productivity-duration-median",children:[s.jsx("div",{className:"cc-stat-label",children:t("commandCenter.productivity.medianDuration","Median")}),s.jsx("div",{className:"cc-stat-value",children:I(p.medianMs,"cc-productivity-duration-median-unavailable")})]}),s.jsxs("div",{className:"card cc-stat-card","data-testid":"cc-productivity-duration-p90",children:[s.jsx("div",{className:"cc-stat-label",children:t("commandCenter.productivity.p90Duration","P90")}),s.jsx("div",{className:"cc-stat-value",children:I(p.p90Ms,"cc-productivity-duration-p90-unavailable")})]}),s.jsxs("div",{className:"card cc-stat-card","data-testid":"cc-productivity-duration-total",children:[s.jsx("div",{className:"cc-stat-label",children:t("commandCenter.productivity.totalDuration","Total active")}),s.jsx("div",{className:"cc-stat-value",children:I(p.totalMs,"cc-productivity-duration-total-unavailable")})]})]})]}),C?s.jsxs("div",{className:"cc-area-section","data-testid":"cc-productivity-duration-trend",children:[s.jsx("h3",{className:"cc-area-section-title",children:t("commandCenter.productivity.durationTrendTitle","Task duration over time")}),s.jsx(cr,{series:j,ariaLabel:t("commandCenter.productivity.durationTrendTitle","Task duration over time"),xAxisLabels:x,valueFormatter:Eu})]}):null,s.jsxs("div",{className:"cc-area-section",children:[s.jsx("h3",{className:"cc-area-section-title",children:t("commandCenter.productivity.byLanguage","Files by language")}),s.jsx(Ze,{data:y,ariaLabel:t("commandCenter.productivity.byLanguage","Files by language")})]}),g.length>0?s.jsxs("div",{className:"cc-area-section","data-testid":"cc-productivity-pie",children:[s.jsx("h3",{className:"cc-area-section-title",children:t("commandCenter.productivity.languagePie","Language share")}),s.jsx(kt,{data:g,ariaLabel:t("commandCenter.productivity.languagePie","Language share")})]}):null]})}const jR=15e3,wR=1e4,CR=4,Oo=[.1,.25,.5,1,2,3,5,10];function Kv(e){return e.unavailable||e.usd===null?-1:e.usd}function hi(e,t){return e.agentName??e.agentId??t}function kR(e){switch(e){case"running":return"status-dot status-dot--connecting";case"active":case"idle":return"status-dot status-dot--online";case"error":case"failed":return"status-dot status-dot--error";case"starting":case"pending":return"status-dot status-dot--pending";default:return"status-dot status-dot--pending"}}function PR(e,t,r,n){const a=[...e];return a.sort((i,o)=>{let l=0;return t==="agent"?l=hi(i,n).localeCompare(hi(o,n)):t==="tokens"?l=i.tokens.totalTokens-o.tokens.totalTokens:t==="cost"?l=Kv(i.cost)-Kv(o.cost):t==="filesChanged"?l=i.filesChanged-o.filesChanged:t==="tasksCompleted"?l=i.tasksCompleted-o.tasksCompleted:l=i.tasksInProgress-o.tasksInProgress,l===0&&(l=i.agentId.localeCompare(o.agentId)),l*r}),a}function Vv(e,t,r){return[...e].sort((n,a)=>t(a)-t(n)||n.agentId.localeCompare(a.agentId)).slice(0,12).map(n=>{const a=t(n);return{label:hi(n,r),value:a,valueLabel:K(a)}})}function SR(e,t){if(!e)return t;const r=new Date(e);return Number.isNaN(r.getTime())?t:r.toLocaleString()}function NR({paused:e,label:t}){return s.jsxs("span",{className:"cc-team-status-pill",children:[s.jsx("span",{className:`status-dot ${e?"status-dot--pending":"status-dot--online"}`,"aria-hidden":"true"}),s.jsx("span",{children:t})]})}function px({node:e}){const t=e.children.length>0;return s.jsxs("li",{className:"cc-team-org-item",children:[s.jsx("div",{className:"cc-team-org-card",children:s.jsxs("div",{className:"cc-team-org-card-header",children:[s.jsx("span",{className:"cc-team-org-avatar",children:s.jsx(Kx,{agent:e.agent,size:20})}),s.jsx("span",{className:"cc-team-org-name",children:e.agent.name}),s.jsx("span",{className:"cc-team-org-badge",children:e.agent.state})]})}),t?s.jsx("ul",{className:"cc-team-org-children",children:e.children.map(r=>s.jsx(px,{node:r},r.agent.id))}):null]})}function OR({range:e,projectId:t,addToast:r}){const{t:n}=le("app"),{globalPaused:a,enginePaused:i,toggleEnginePause:o}=rh(t),[l,c]=f.useState(1),[d,u]=f.useState(!1),[m,h]=f.useState({status:"loading",data:null,error:null}),[v,y]=f.useState({status:"loading",data:null,error:null}),g=f.useRef(null),p=f.useRef(!0);f.useEffect(()=>(p.current=!0,()=>{p.current=!1,g.current&&clearTimeout(g.current)}),[]);const b=f.useRef(null),j=f.useRef(null),x=f.useRef(!1),[C,w]=f.useState(!1),[P,O]=f.useState(0),{data:k,isLoading:N,error:S}=Ge("/command-center/team",e,{pollMs:jR});f.useEffect(()=>{let E=!1;return h({status:"loading",data:null,error:null}),(async()=>{try{const T=await $x(t);E||h({status:"loaded",data:T,error:null})}catch(T){E||h({status:"error",data:null,error:T instanceof Error?T.message:n("commandCenter.controls.orgChart.error","Unable to load org chart")})}})(),()=>{E=!0}},[t,n]),f.useEffect(()=>{const E=b.current;if(!E)return;const T=()=>{O(E.clientWidth)};T();const J=typeof ResizeObserver<"u"?new ResizeObserver(T):null;return J?.observe(E),window.addEventListener("resize",T),()=>{J?.disconnect(),window.removeEventListener("resize",T)}},[m.status]),f.useEffect(()=>{let E=!1,T;const J=async()=>{try{const dt=await zx(t);E||y({status:"loaded",data:dt,error:null})}catch(dt){E||y({status:"error",data:null,error:dt instanceof Error?dt.message:n("commandCenter.controls.status.error","Unable to load live scheduler status")})}finally{E||(T=setTimeout(J,wR))}};return y({status:"loading",data:null,error:null}),J(),()=>{E=!0,T&&clearTimeout(T)}},[t,n]),f.useEffect(()=>{let E=!1;return nh(t).then(T=>{E||c(T.heartbeatMultiplier??1)}).catch(()=>{}),()=>{E=!0}},[t]);const A=f.useCallback(E=>{const T=Number.isFinite(E)&&E>0?E:1;c(T),g.current&&clearTimeout(g.current),g.current=setTimeout(()=>{g.current=null,p.current&&u(!0),(async()=>{try{await ah({heartbeatMultiplier:T},t),p.current&&r?.(n("agents.heartbeatSpeedSet","Heartbeat speed set to ×{{value}}",{value:T.toFixed(1)}),"success")}catch(J){p.current&&r?.(n("agents.heartbeatSpeedSaveFailed","Failed to save heartbeat multiplier: {{error}}",{error:Bx(J)}),"error")}finally{p.current&&u(!1)}})()},300)},[t,r,n]),_=f.useMemo(()=>k?.agents??[],[k?.agents]),I=n("commandCenter.team.unknownAgent","(unknown agent)"),D=n("commandCenter.team.unknownRole","Unknown role"),F=n("commandCenter.team.noChartData","No non-zero values for this chart yet."),[V,U]=f.useState("tokens"),[te,q]=f.useState(-1),ee=f.useMemo(()=>_.map(E=>E.agentId).join(" "),[_]),L=f.useRef(null);f.useEffect(()=>{if(L.current===null){L.current=ee;return}L.current!==ee&&(L.current=ee,U("tokens"),q(-1))},[ee]);const B=f.useMemo(()=>PR(_,V,te,I),[_,te,V,I]),X=f.useMemo(()=>Vv(_,E=>E.tokens.totalTokens,I),[_,I]),Q=f.useMemo(()=>X.map(E=>({label:E.label,value:E.value})),[X]),G=f.useMemo(()=>Vv(_,E=>E.tasksCompleted,I),[_,I]),ie=X.some(E=>E.value>0),se=G.some(E=>E.value>0),re=f.useMemo(()=>_.flatMap(E=>[E.tokens.totalTokens,E.filesChanged,E.tasksCompleted]),[_]);function W(E){E===V?q(T=>T===1?-1:1):(U(E),q(E==="agent"?1:-1))}function $(E){return E!==V?null:s.jsx("span",{className:"cc-sort-caret",children:te===1?"▲":"▼"})}const ne=f.useCallback(E=>{const T=j.current;!T||T.pointerId!==E.pointerId||(E.currentTarget.hasPointerCapture?.(E.pointerId)&&E.currentTarget.releasePointerCapture?.(E.pointerId),j.current=null,w(!1))},[]),we=f.useCallback(E=>{if(E.pointerType==="touch"||E.button!==0)return;const T=E.currentTarget;x.current=!1,j.current={pointerId:E.pointerId,startX:E.clientX,startY:E.clientY,startScrollLeft:T.scrollLeft,startScrollTop:T.scrollTop,isPanning:!1},T.setPointerCapture?.(E.pointerId)},[]),z=f.useCallback(E=>{const T=j.current;if(!T||T.pointerId!==E.pointerId)return;const J=E.clientX-T.startX,dt=E.clientY-T.startY;if(!T.isPanning&&Math.hypot(J,dt)<CR)return;T.isPanning||(T.isPanning=!0,x.current=!0,w(!0)),E.preventDefault();const dr=E.currentTarget;dr.scrollLeft=T.startScrollLeft-J,dr.scrollTop=T.startScrollTop-dt},[]),fe=f.useCallback(E=>{x.current&&(x.current=!1,E.preventDefault(),E.stopPropagation())},[]),be=f.useMemo(()=>m.status!=="loaded"||P<=0&&m.data.length>1?"vertical":n0({tree:m.data,availableWidth:P,preference:"auto"}),[P,m]),ye=v.data?.globalPause??a,nt=v.data?.enginePaused??i,ur=SR(v.data?.lastActivityAt,n("commandCenter.controls.status.noActivity","No recent activity"));return s.jsxs("div",{className:"cc-team-area",children:[s.jsxs("div",{className:"cc-team-ops-grid","data-testid":"cc-team-ops",children:[s.jsxs("section",{className:"card cc-team-ops-card cc-team-ops-card--org","data-testid":"cc-team-org-chart",children:[s.jsx("div",{className:"cc-team-ops-card-header",children:s.jsx("div",{children:s.jsx("h3",{children:n("commandCenter.controls.orgChart.title","Agent org chart")})})}),s.jsx("div",{className:`cc-team-org-scroll${C?" is-dragging":""}`,"data-layout":be,ref:b,"aria-live":"polite",onPointerDown:we,onPointerMove:z,onPointerUp:ne,onPointerCancel:ne,onPointerLeave:ne,onClickCapture:fe,children:m.status==="loading"?s.jsx("p",{className:"cc-team-muted",children:s.jsx(Tl,{label:n("commandCenter.controls.orgChart.loading","Loading org chart…")})}):m.status==="error"?s.jsx("p",{className:"cc-team-error",role:"alert",children:m.error}):m.data.length===0?s.jsx("p",{className:"cc-team-muted",children:n("commandCenter.controls.orgChart.empty","No agents are reporting in yet.")}):s.jsx("ul",{className:"cc-team-org-roots",children:m.data.map(E=>s.jsx(px,{node:E},E.agent.id))})})]}),s.jsxs("section",{className:"card cc-team-ops-card cc-team-ops-card--heartbeat","data-testid":"cc-team-heartbeat",children:[s.jsxs("div",{className:"cc-team-ops-card-header",children:[s.jsxs("div",{children:[s.jsx("h3",{children:n("commandCenter.controls.heartbeat.title","Heartbeat control")}),s.jsx("p",{children:n("commandCenter.controls.heartbeat.description","Pause or resume the scheduling heartbeat.")})]}),s.jsx(NR,{paused:nt,label:nt?n("commandCenter.controls.status.paused","Paused"):n("commandCenter.controls.status.running","Running")})]}),s.jsxs("dl",{className:"cc-team-facts",children:[s.jsxs("div",{children:[s.jsx("dt",{children:n("commandCenter.controls.status.lastActivity","Last activity")}),s.jsx("dd",{children:v.status==="loading"?n("commandCenter.controls.status.loading","Loading…"):ur})]}),s.jsxs("div",{children:[s.jsx("dt",{children:n("commandCenter.controls.status.maxConcurrent","Max concurrent")}),s.jsx("dd",{children:v.data?.maxConcurrent??"—"})]})]}),v.status==="error"?s.jsx("p",{className:"cc-team-error",role:"alert",children:v.error}):null,s.jsxs("button",{type:"button",className:"btn btn-secondary cc-team-action",onClick:()=>void o(),disabled:ye,children:[nt?s.jsx(Il,{size:16,"aria-hidden":"true"}):s.jsx(Fx,{size:16,"aria-hidden":"true"}),s.jsx("span",{children:nt?n("commandCenter.controls.heartbeat.resume","Resume heartbeat"):n("commandCenter.controls.heartbeat.pause","Pause heartbeat")})]}),ye?s.jsx("p",{className:"cc-team-muted",children:n("commandCenter.controls.heartbeat.disabledByStop","Start the AI engine before resuming the heartbeat.")}):null,s.jsxs("div",{className:"cc-team-heartbeat-multiplier heartbeat-multiplier-group",children:[s.jsxs("div",{className:"heartbeat-multiplier-controls",children:[s.jsx("label",{htmlFor:"ccHeartbeatMultiplier",className:"heartbeat-multiplier-label",children:n("agents.heartbeatSpeed","Heartbeat Speed")}),s.jsx("input",{id:"ccHeartbeatMultiplier",className:"heartbeat-multiplier-slider touch-target",type:"range",min:.1,max:10,step:.1,value:l,onChange:E=>{const T=Number(E.target.value);A(Number.isFinite(T)&&T>0?T:1)},disabled:d}),s.jsxs("span",{className:"heartbeat-multiplier-value",children:["×",l.toFixed(1)]}),s.jsx("select",{className:"heartbeat-multiplier-preset",value:String(Oo.reduce((E,T)=>Math.abs(T-l)<Math.abs(E-l)?T:E,Oo[0])),onChange:E=>{const T=Number(E.target.value);A(Number.isFinite(T)&&T>0?T:1)},disabled:d,"aria-label":n("agents.heartbeatSpeedPreset","Heartbeat speed preset"),children:Oo.map(E=>s.jsxs("option",{value:String(E),children:["×",E]},E))})]}),s.jsx("small",{className:"text-secondary",children:n("agents.heartbeatSpeedHint","Scales all agent heartbeat intervals. ×0.5 = twice as fast, ×2.0 = twice as slow. Default: ×1.0")})]})]})]}),s.jsxs(Pt,{testId:"team",isLoading:N,error:S,isEmpty:!k||k.agents.length===0,emptyMessage:n("commandCenter.team.empty","No agents have reported team analytics yet."),children:[s.jsxs("div",{className:"cc-area-section",children:[s.jsx("h3",{className:"cc-area-section-title",children:n("commandCenter.team.totalsTitle","Team totals")}),s.jsxs("div",{className:"cc-stat-grid",children:[s.jsxs("div",{className:"card cc-stat-card","data-testid":"cc-team-total-tokens",children:[s.jsx("div",{className:"cc-stat-label",children:n("commandCenter.team.totalTokens","Total tokens")}),s.jsx("div",{className:"cc-stat-value",children:K(k?.totals.tokens.totalTokens??0)})]}),s.jsxs("div",{className:"card cc-stat-card","data-testid":"cc-team-total-cost",children:[s.jsx("div",{className:"cc-stat-label",children:n("commandCenter.team.totalCost","Estimated cost")}),s.jsx("div",{className:"cc-stat-value",children:k?Sr(k.totals.cost.usd,k.totals.cost.unavailable):"—"})]}),s.jsxs("div",{className:"card cc-stat-card","data-testid":"cc-team-total-files",children:[s.jsx("div",{className:"cc-stat-label",children:n("commandCenter.team.filesChanged","Files changed")}),s.jsx("div",{className:"cc-stat-value",children:K(k?.totals.filesChanged??0)})]}),s.jsxs("div",{className:"card cc-stat-card","data-testid":"cc-team-total-completed",children:[s.jsx("div",{className:"cc-stat-label",children:n("commandCenter.team.tasksCompleted","Tasks done")}),s.jsx("div",{className:"cc-stat-value",children:K(k?.totals.tasksCompleted??0)})]})]})]}),s.jsxs("div",{className:"cc-area-section cc-team-chart-grid",children:[ie?s.jsxs("div",{className:"cc-team-chart-panel","data-testid":"cc-team-pie",children:[s.jsx("h3",{className:"cc-area-section-title",children:n("commandCenter.team.tokenShareByAgent","Token share by agent")}),s.jsx(kt,{data:Q,ariaLabel:n("commandCenter.team.tokenShareByAgent","Token share by agent")})]}):null,s.jsxs("div",{className:"cc-team-chart-panel","data-testid":"cc-team-tokens-chart",children:[s.jsx("h3",{className:"cc-area-section-title",children:n("commandCenter.team.tokensByAgent","Tokens by agent")}),ie?s.jsx(Ze,{data:X,ariaLabel:n("commandCenter.team.tokensByAgent","Tokens by agent")}):s.jsx("p",{className:"cc-muted-hint",children:F})]}),s.jsxs("div",{className:"cc-team-chart-panel","data-testid":"cc-team-completed-chart",children:[s.jsx("h3",{className:"cc-area-section-title",children:n("commandCenter.team.completedByAgent","Tasks done by agent")}),se?s.jsx(Ze,{data:G,ariaLabel:n("commandCenter.team.completedByAgent","Tasks done by agent")}):s.jsx("p",{className:"cc-muted-hint",children:F})]}),s.jsxs("div",{className:"cc-team-chart-panel cc-team-spark-panel","data-testid":"cc-team-spread-chart",children:[s.jsx("h3",{className:"cc-area-section-title",children:n("commandCenter.team.spread","Team spread")}),s.jsx(Kt,{values:re,ariaLabel:n("commandCenter.team.spread","Team spread")})]})]}),s.jsxs("div",{className:"cc-area-section",children:[s.jsx("h3",{className:"cc-area-section-title",children:n("commandCenter.team.tableTitle","Per-agent breakdown")}),s.jsx("div",{className:"cc-table-wrap",children:s.jsxs("table",{className:"cc-table","data-testid":"cc-team-table",children:[s.jsx("thead",{children:s.jsxs("tr",{children:[s.jsxs("th",{className:"cc-sortable",onClick:()=>W("agent"),"data-testid":"cc-team-sort-agent",children:[n("commandCenter.team.agent","Agent"),$("agent")]}),s.jsxs("th",{className:"cc-sortable",onClick:()=>W("tokens"),"data-testid":"cc-team-sort-tokens",children:[n("commandCenter.team.tokens","Tokens"),$("tokens")]}),s.jsxs("th",{className:"cc-sortable",onClick:()=>W("cost"),"data-testid":"cc-team-sort-cost",children:[n("commandCenter.team.cost","Cost"),$("cost")]}),s.jsxs("th",{className:"cc-sortable",onClick:()=>W("filesChanged"),"data-testid":"cc-team-sort-files",children:[n("commandCenter.team.files","Files changed"),$("filesChanged")]}),s.jsxs("th",{className:"cc-sortable",onClick:()=>W("tasksCompleted"),"data-testid":"cc-team-sort-completed",children:[n("commandCenter.team.done","Tasks done"),$("tasksCompleted")]}),s.jsxs("th",{className:"cc-sortable",onClick:()=>W("tasksInProgress"),"data-testid":"cc-team-sort-progress",children:[n("commandCenter.team.inProgress","In progress"),$("tasksInProgress")]})]})}),s.jsx("tbody",{children:B.map(E=>s.jsxs("tr",{"data-testid":`cc-team-row-${E.agentId}`,children:[s.jsx("td",{children:s.jsxs("span",{className:"cc-team-agent-cell",children:[s.jsx("span",{className:kR(E.state),"aria-label":n("commandCenter.team.state","Agent state: {{state}}",{state:E.state??n("commandCenter.team.unknownState","unknown")})}),s.jsxs("span",{children:[s.jsx("span",{className:"cc-team-agent-name",children:hi(E,I)}),s.jsx("span",{className:"cc-team-agent-role",children:E.role??D})]})]})}),s.jsx("td",{children:K(E.tokens.totalTokens)}),s.jsx("td",{children:Sr(E.cost.usd,E.cost.unavailable)}),s.jsx("td",{children:K(E.filesChanged)}),s.jsx("td",{children:K(E.tasksCompleted)}),s.jsx("td",{children:K(E.tasksInProgress)})]},E.agentId))})]})})]})]})]})}function yx(e,t){return e.workflowName||e.workflowId||t}function AR(e,t,r,n){const a=[...e];return a.sort((i,o)=>{let l=0;return l=i.tokens.totalTokens-o.tokens.totalTokens,l===0&&(l=i.workflowId.localeCompare(o.workflowId)),l*r}),a}function Uv(e,t,r){return[...e].sort((n,a)=>t(a)-t(n)||n.workflowId.localeCompare(a.workflowId)).slice(0,12).map(n=>{const a=t(n);return{label:yx(n,r),value:a,valueLabel:K(a)}})}function ER({range:e}){const{t}=le("app"),{data:r,isLoading:n,error:a}=Ge("/command-center/workflows",e),i=t("commandCenter.workflows.unknownWorkflow","(unknown workflow)"),o=t("commandCenter.workflows.noChartData","No non-zero values for this chart yet."),l=r?.workflows??[],c=AR(l,"tokens",-1),d=Uv(l,v=>v.tokens.totalTokens,i),u=Uv(l,v=>v.tasksCompleted,i),m=d.some(v=>v.value>0),h=u.some(v=>v.value>0);return s.jsxs(Pt,{testId:"workflows",isLoading:n,error:a,isEmpty:!r||r.workflows.length===0,emptyMessage:t("commandCenter.workflows.empty","No workflow analytics have been recorded for this range yet."),children:[s.jsxs("div",{className:"cc-area-section",children:[s.jsx("h3",{className:"cc-area-section-title",children:t("commandCenter.workflows.totalsTitle","Workflow totals")}),s.jsxs("div",{className:"cc-stat-grid",children:[s.jsxs("div",{className:"card cc-stat-card","data-testid":"cc-workflows-total-tokens",children:[s.jsx("div",{className:"cc-stat-label",children:t("commandCenter.workflows.totalTokens","Total tokens")}),s.jsx("div",{className:"cc-stat-value",children:K(r?.totals.tokens.totalTokens??0)})]}),s.jsxs("div",{className:"card cc-stat-card","data-testid":"cc-workflows-total-cost",children:[s.jsx("div",{className:"cc-stat-label",children:t("commandCenter.workflows.totalCost","Estimated cost")}),s.jsx("div",{className:"cc-stat-value",children:r?Sr(r.totals.cost.usd,r.totals.cost.unavailable):"—"})]}),s.jsxs("div",{className:"card cc-stat-card","data-testid":"cc-workflows-total-files",children:[s.jsx("div",{className:"cc-stat-label",children:t("commandCenter.workflows.filesChanged","Files changed")}),s.jsx("div",{className:"cc-stat-value",children:K(r?.totals.filesChanged??0)})]}),s.jsxs("div",{className:"card cc-stat-card","data-testid":"cc-workflows-total-completed",children:[s.jsx("div",{className:"cc-stat-label",children:t("commandCenter.workflows.tasksCompleted","Tasks done")}),s.jsx("div",{className:"cc-stat-value",children:K(r?.totals.tasksCompleted??0)})]})]})]}),s.jsxs("div",{className:"cc-area-section cc-team-chart-grid",children:[s.jsxs("div",{className:"cc-team-chart-panel","data-testid":"cc-workflows-tokens-chart",children:[s.jsx("h3",{className:"cc-area-section-title",children:t("commandCenter.workflows.tokensByWorkflow","Tokens by workflow")}),m?s.jsx(Ze,{data:d,ariaLabel:t("commandCenter.workflows.tokensByWorkflow","Tokens by workflow")}):s.jsx("p",{className:"cc-muted-hint",children:o})]}),s.jsxs("div",{className:"cc-team-chart-panel","data-testid":"cc-workflows-completed-chart",children:[s.jsx("h3",{className:"cc-area-section-title",children:t("commandCenter.workflows.completedByWorkflow","Tasks done by workflow")}),h?s.jsx(Ze,{data:u,ariaLabel:t("commandCenter.workflows.completedByWorkflow","Tasks done by workflow")}):s.jsx("p",{className:"cc-muted-hint",children:o})]})]}),s.jsxs("div",{className:"cc-area-section",children:[s.jsx("h3",{className:"cc-area-section-title",children:t("commandCenter.workflows.tableTitle","Per-workflow breakdown")}),s.jsx("div",{className:"cc-table-wrap",children:s.jsxs("table",{className:"cc-table","data-testid":"cc-workflows-table",children:[s.jsx("thead",{children:s.jsxs("tr",{children:[s.jsx("th",{children:t("commandCenter.workflows.workflow","Workflow")}),s.jsx("th",{children:t("commandCenter.workflows.tokens","Tokens")}),s.jsx("th",{children:t("commandCenter.workflows.cost","Cost")}),s.jsx("th",{children:t("commandCenter.workflows.files","Files changed")}),s.jsx("th",{children:t("commandCenter.workflows.done","Tasks done")}),s.jsx("th",{children:t("commandCenter.workflows.inProgress","In progress")}),s.jsx("th",{children:t("commandCenter.workflows.inReview","In review")})]})}),s.jsx("tbody",{children:c.map(v=>s.jsxs("tr",{"data-testid":`cc-workflows-row-${v.workflowId}`,children:[s.jsx("td",{children:s.jsxs("span",{className:"cc-team-agent-cell",children:[s.jsx(Vx,{workflowId:v.workflowId,icon:v.workflowIcon,decorative:!0}),s.jsxs("span",{children:[s.jsx("span",{className:"cc-team-agent-name",children:yx(v,i)}),s.jsx("span",{className:"cc-team-agent-role",children:v.workflowId})]})]})}),s.jsx("td",{children:K(v.tokens.totalTokens)}),s.jsx("td",{children:Sr(v.cost.usd,v.cost.unavailable)}),s.jsx("td",{children:K(v.filesChanged)}),s.jsx("td",{children:K(v.tasksCompleted)}),s.jsx("td",{children:K(v.tasksInProgress)}),s.jsx("td",{children:K(v.tasksInReview)})]},v.workflowId))})]})})]})]})}function _R({range:e}){const{t}=le("app"),{data:r,isLoading:n,error:a}=Ge("/command-center/tokens?groupBy=model&granularity=day",e),{data:i,isLoading:o}=Ge("/command-center/plugin-activations",e),l=f.useMemo(()=>(r?.groups??[]).filter(b=>(b.key??"").trim().length>0),[r?.groups]),c=l.length,d=f.useMemo(()=>[...l].sort((b,j)=>j.nTasks-b.nTasks||(b.key??"").localeCompare(j.key??"")).slice(0,12).map(b=>({label:b.key??t("commandCenter.tokens.unknownModel","(unknown)"),value:b.nTasks,valueLabel:K(b.nTasks),iconProvider:Ml(b.key??"")})),[l,t]),u=f.useMemo(()=>d.map(b=>({label:b.label,value:b.value})),[d]),m=f.useMemo(()=>[{label:t("commandCenter.ecosystem.tokenTrendSeries","Tokens"),values:(r?.series??[]).map(b=>b.totalTokens)},{label:t("commandCenter.ecosystem.taskTrendSeries","Tasks"),values:(r?.series??[]).map(b=>b.nTasks)}],[r?.series,t]),h=u.some(b=>b.value>0),v=(r?.series??[]).length>0,y=i?.unavailable===!1,g=(!r||c===0)&&!y,p=n||o&&!r;return s.jsxs(Pt,{testId:"ecosystem",isLoading:p,error:a,isEmpty:g,emptyMessage:t("commandCenter.ecosystem.empty","No models or plugins active in the selected range."),children:[s.jsxs("div",{className:"cc-area-section",children:[s.jsx("h3",{className:"cc-area-section-title",children:t("commandCenter.ecosystem.breadthTitle","Ecosystem breadth")}),s.jsxs("div",{className:"cc-stat-grid",children:[s.jsxs("div",{className:"card cc-stat-card","data-testid":"cc-ecosystem-unique-models",children:[s.jsx("div",{className:"cc-stat-label",children:t("commandCenter.ecosystem.uniqueModels","Active models")}),s.jsx("div",{className:"cc-stat-value",children:K(c)})]}),s.jsxs("div",{className:"card cc-stat-card","data-testid":"cc-ecosystem-plugins",children:[s.jsx("div",{className:"cc-stat-label",children:t("commandCenter.ecosystem.plugins","Plugin activations")}),s.jsx("div",{className:"cc-stat-value",children:y?s.jsx("span",{"data-testid":"cc-ecosystem-plugins-value",children:K(i?.activations??0)}):s.jsx("span",{className:"cc-unavailable",title:t("commandCenter.ecosystem.pluginsUnavailable","Plugin-activation metrics are not yet recorded"),"data-testid":"cc-ecosystem-plugins-unavailable",children:"—"})})]})]})]}),h?s.jsxs("div",{className:"cc-area-section","data-testid":"cc-ecosystem-pie",children:[s.jsx("h3",{className:"cc-area-section-title",children:t("commandCenter.ecosystem.modelShareTitle","Task share by model")}),s.jsx(kt,{data:u,ariaLabel:t("commandCenter.ecosystem.modelShareTitle","Task share by model")})]}):null,v?s.jsxs("div",{className:"cc-area-section","data-testid":"cc-ecosystem-line",children:[s.jsx("h3",{className:"cc-area-section-title",children:t("commandCenter.ecosystem.trendTitle","Ecosystem trend")}),s.jsx(cr,{series:m,ariaLabel:t("commandCenter.ecosystem.trendTitle","Ecosystem trend")})]}):null,s.jsxs("div",{className:"cc-area-section",children:[s.jsx("h3",{className:"cc-area-section-title",children:t("commandCenter.ecosystem.perModelTitle","Tasks per model")}),s.jsx(Ze,{data:d,ariaLabel:t("commandCenter.ecosystem.perModelTitle","Tasks per model")})]})]})}const qv=100,MR=1e3;function TR(e,t){const r=new Date(e);return Number.isNaN(r.getTime())?t:r.toLocaleString()}function IR({range:e}){const{t}=le("app"),{data:r,isLoading:n,error:a}=Ge("/command-center/github",e),[i,o]=f.useState(!1),[l,c]=f.useState(null),[d,u]=f.useState(null),m=f.useCallback(async()=>{if(!i){o(!0),c(null),u(null);try{let D=0;const F={scanned:0,filled:0,skipped:0,errors:0};for(let V=0;V<MR;V+=1){const U=await Ux({offset:D,limit:qv});if(F.scanned+=U.scanned,F.filled+=U.filled,F.skipped+=U.skipped,F.errors+=U.errors,!U.hasMore){c(F);return}D+=qv}c(F),u(t("commandCenter.github.backfillMaxBatches","Backfill stopped after the safety limit; rerun after checking server logs."))}catch(D){u(D instanceof Error?D.message:t("commandCenter.github.backfillFailed","Failed to backfill GitHub source issue close times"))}finally{o(!1)}}},[i,t]),h=f.useMemo(()=>r?.daily??[],[r?.daily]),v=f.useMemo(()=>r?.byRepo??[],[r?.byRepo]),y=f.useMemo(()=>r?.resolved??[],[r?.resolved]),g=f.useMemo(()=>h.map(D=>D.filed),[h]),p=f.useMemo(()=>h.map(D=>D.fixed),[h]),b=f.useMemo(()=>Math.max(0,...g,...p),[g,p]),j=f.useMemo(()=>v.slice(0,12).map(D=>({label:D.repo,value:D.filed+D.fixed,valueLabel:t("commandCenter.github.repoValue","{{filed}} filed / {{fixed}} fixed",{filed:K(D.filed),fixed:K(D.fixed)})})),[v,t]),x=f.useMemo(()=>[{label:t("commandCenter.github.filed","Filed by Fusion"),value:r?.filed??0},{label:t("commandCenter.github.fixed","Fixed by Fusion"),value:r?.fixed??0}],[r?.filed,r?.fixed,t]),C=f.useMemo(()=>[{label:t("commandCenter.github.filedTrend","Filed"),values:g},{label:t("commandCenter.github.fixedTrend","Fixed"),values:p}],[g,p,t]),w=r?.filed??0,P=r?.fixed??0,O=r?.net??w-P,k=!r||w===0&&P===0,N=h.length>0,S=w+P>0,A=j.length>0,_=y.length>0,I=d||(l?.errors??0)>0?"cc-github-backfill-status--error":i?"cc-github-backfill-status--warning":"";return s.jsxs(Pt,{testId:"github",isLoading:n,error:a,isEmpty:!1,emptyMessage:t("commandCenter.github.empty","No GitHub issue activity in the selected range."),children:[s.jsxs("div",{className:"cc-area-section",children:[s.jsx("h3",{className:"cc-area-section-title",children:t("commandCenter.github.totalsTitle","GitHub issue flow")}),k?s.jsx("span",{className:"cc-stat-sub",children:t("commandCenter.github.empty","No GitHub issue activity in the selected range.")}):null,s.jsxs("div",{className:"cc-stat-grid",children:[s.jsxs("div",{className:"card cc-stat-card","data-testid":"cc-github-filed",children:[s.jsx("div",{className:"cc-stat-label",children:t("commandCenter.github.filed","Filed by Fusion")}),s.jsx("div",{className:"cc-stat-value",children:K(w)})]}),s.jsxs("div",{className:"card cc-stat-card","data-testid":"cc-github-fixed",children:[s.jsx("div",{className:"cc-stat-label",children:t("commandCenter.github.fixed","Fixed by Fusion")}),s.jsx("div",{className:"cc-stat-value",children:K(P)}),s.jsx("span",{className:"cc-stat-sub",children:t("commandCenter.github.fixedApproximation","Uses done tasks updated in range")}),s.jsx("div",{className:"cc-github-backfill-actions",children:s.jsxs("button",{type:"button",className:"btn","data-testid":"cc-github-backfill-button",onClick:()=>void m(),disabled:i,children:[s.jsx(Gr,{className:i?"spin":void 0}),s.jsx("span",{children:i?t("commandCenter.github.backfillBusy","Backfilling close times…"):t("commandCenter.github.backfillButton","Backfill exact close times")})]})}),i||l||d?s.jsxs("div",{className:`cc-github-backfill-status ${I}`.trim(),"data-testid":"cc-github-backfill-result",role:"status",children:[i?s.jsx("span",{children:t("commandCenter.github.backfillPending","Backfill is running in paginated batches.")}):null,d?s.jsx("span",{children:d}):null,l?s.jsx("span",{children:l.scanned===0&&l.filled===0?t("commandCenter.github.backfillNothing","Nothing to backfill. Scanned {{scanned}}, filled {{filled}}, skipped {{skipped}}, errors {{errors}}.",l):t("commandCenter.github.backfillResult","Backfill complete. Scanned {{scanned}}, filled {{filled}}, skipped {{skipped}}, errors {{errors}}.",l)}):null]}):null]}),s.jsxs("div",{className:"card cc-stat-card","data-testid":"cc-github-net",children:[s.jsx("div",{className:"cc-stat-label",children:t("commandCenter.github.net","Net")}),s.jsx("div",{className:"cc-stat-value",children:K(O)})]})]})]}),S?s.jsxs("div",{className:"cc-area-section","data-testid":"cc-github-pie",children:[s.jsx("h3",{className:"cc-area-section-title",children:t("commandCenter.github.issueFlowShare","Filed vs fixed share")}),s.jsx(kt,{data:x,ariaLabel:t("commandCenter.github.issueFlowShare","Filed vs fixed share")})]}):null,N?s.jsxs("div",{className:"cc-area-section","data-testid":"cc-github-line",children:[s.jsx("h3",{className:"cc-area-section-title",children:t("commandCenter.github.dailyLine","Filed vs fixed line")}),s.jsx(cr,{series:C,ariaLabel:t("commandCenter.github.dailyLine","Filed vs fixed line")})]}):null,N?s.jsxs("div",{className:"cc-area-section","data-testid":"cc-github-daily-trend",children:[s.jsx("h3",{className:"cc-area-section-title",children:t("commandCenter.github.dailyTrend","Filed vs fixed trend")}),s.jsxs("div",{className:"cc-stat-grid",children:[s.jsxs("div",{className:"card cc-stat-card",children:[s.jsx("div",{className:"cc-stat-label",children:t("commandCenter.github.filedTrend","Filed")}),s.jsx(Kt,{values:g,max:b,ariaLabel:t("commandCenter.github.filedTrend","Filed")})]}),s.jsxs("div",{className:"card cc-stat-card",children:[s.jsx("div",{className:"cc-stat-label",children:t("commandCenter.github.fixedTrend","Fixed")}),s.jsx(Kt,{values:p,max:b,ariaLabel:t("commandCenter.github.fixedTrend","Fixed")})]})]})]}):null,A?s.jsxs("div",{className:"cc-area-section","data-testid":"cc-github-by-repo",children:[s.jsx("h3",{className:"cc-area-section-title",children:t("commandCenter.github.byRepo","By repository")}),s.jsx(Ze,{data:j,ariaLabel:t("commandCenter.github.byRepo","By repository")})]}):null,_?s.jsxs("div",{className:"cc-area-section","data-testid":"cc-github-resolved",children:[s.jsx("h3",{className:"cc-area-section-title",children:t("commandCenter.github.resolvedTitle","Resolved issues")}),s.jsx("div",{className:"cc-table-wrap",children:s.jsxs("table",{className:"cc-table",children:[s.jsx("thead",{children:s.jsxs("tr",{children:[s.jsx("th",{scope:"col",children:t("commandCenter.github.resolvedIssue","Issue")}),s.jsx("th",{scope:"col",children:t("commandCenter.github.resolvedTask","Resolving task")}),s.jsx("th",{scope:"col",children:t("commandCenter.github.resolvedAt","Resolved at")})]})}),s.jsx("tbody",{children:y.map(D=>{const F=D.issueNumber===null?D.repo:`${D.repo}#${D.issueNumber}`,V=TR(D.resolvedAt,t("commandCenter.github.resolvedAtUnknown","Unknown"));return s.jsxs("tr",{children:[s.jsx("td",{children:D.url?s.jsx("a",{href:D.url,target:"_blank",rel:"noopener noreferrer","aria-label":t("commandCenter.github.openResolvedIssue","Open GitHub issue {{issue}}",{issue:F}),children:F}):s.jsx("span",{children:F})}),s.jsxs("td",{children:[s.jsx("span",{children:D.taskTitle||D.taskId})," ",s.jsxs("span",{className:"cc-stat-sub",children:["(",D.taskId,")"]})]}),s.jsxs("td",{children:[s.jsx("span",{children:V})," ",D.resolvedAtExact?null:s.jsx("span",{className:"cc-stat-sub",children:t("commandCenter.github.resolvedApprox","approx")})]})]},D.taskId)})})]})})]}):null]})}function DR({range:e}){const{t}=le("app"),{data:r,isLoading:n}=Ge("/command-center/signals",e),{data:a,isLoading:i}=Ge("/command-center/signals/connectors",e),o=f.useMemo(()=>(r?.bySource??[]).map(g=>({label:g.source,value:g.count,valueLabel:K(g.count)})),[r?.bySource]),l=f.useMemo(()=>(r?.bySeverity??[]).map(g=>({label:g.severity,value:g.count,valueLabel:K(g.count)})),[r?.bySeverity]),c=f.useMemo(()=>[{label:t("commandCenter.signals.open","Open"),value:r?.open??0},{label:t("commandCenter.signals.resolved","Resolved"),value:r?.resolved??0}],[r?.open,r?.resolved,t]),d=!r||r.totalSignals===0,m=(Array.isArray(a?.connectors)?a.connectors.filter(g=>g.configured).map(g=>g.provider):void 0)??r?.connectors?.configured??[],v=m.length>0||r?.connectors?.anyConfigured===!0?t("commandCenter.signals.emptyAwaitingSignals","Connector configured, awaiting signals in this range. Configured providers: {{providers}}.",{providers:m.length>0?m.join(", "):t("commandCenter.signals.providersUnknown","unknown")}):t("commandCenter.signals.emptyNoConnectorConfigured","No signal connector configured. Connect Sentry, Datadog, PagerDuty, or a generic webhook to see incident metrics here."),y=!d&&c.some(g=>g.value>0);return s.jsxs(Pt,{testId:"signals",isLoading:n||i,error:null,isEmpty:d,emptyMessage:v,children:[s.jsxs("div",{className:"cc-area-section",children:[s.jsx("h3",{className:"cc-area-section-title",children:t("commandCenter.signals.summaryTitle","Summary")}),s.jsxs("div",{className:"cc-stat-grid",children:[s.jsxs("div",{className:"card cc-stat-card","data-testid":"cc-signals-total",children:[s.jsx("div",{className:"cc-stat-label",children:t("commandCenter.signals.total","Total signals")}),s.jsx("div",{className:"cc-stat-value",children:K(r?.totalSignals??0)})]}),s.jsxs("div",{className:"card cc-stat-card","data-testid":"cc-signals-open",children:[s.jsx("div",{className:"cc-stat-label",children:t("commandCenter.signals.open","Open")}),s.jsx("div",{className:"cc-stat-value",children:K(r?.open??0)})]}),s.jsxs("div",{className:"card cc-stat-card","data-testid":"cc-signals-resolved",children:[s.jsx("div",{className:"cc-stat-label",children:t("commandCenter.signals.resolved","Resolved")}),s.jsx("div",{className:"cc-stat-value",children:K(r?.resolved??0)})]}),s.jsxs("div",{className:"card cc-stat-card","data-testid":"cc-signals-mttr",children:[s.jsx("div",{className:"cc-stat-label",children:t("commandCenter.signals.mttr","MTTR")}),s.jsx("div",{className:"cc-stat-value",children:r&&r.mttr.value!==null&&!r.mttr.unavailable?t("commandCenter.signals.mttrValue","{{min}} min",{min:Math.round(r.mttr.value)}):s.jsx("span",{className:"cc-unavailable",title:t("commandCenter.signals.mttrUnavailable","MTTR is unavailable until incident data is recorded"),children:"—"})})]})]})]}),y?s.jsxs("div",{className:"cc-area-section","data-testid":"cc-signals-pie",children:[s.jsx("h3",{className:"cc-area-section-title",children:t("commandCenter.signals.statusShare","Signal status share")}),s.jsx(kt,{data:c,ariaLabel:t("commandCenter.signals.statusShare","Signal status share")})]}):null,s.jsxs("div",{className:"cc-area-section",children:[s.jsx("h3",{className:"cc-area-section-title",children:t("commandCenter.signals.bySource","By source")}),s.jsx(Ze,{data:o,ariaLabel:t("commandCenter.signals.bySource","By source")})]}),s.jsxs("div",{className:"cc-area-section",children:[s.jsx("h3",{className:"cc-area-section-title",children:t("commandCenter.signals.bySeverity","By severity")}),s.jsx(Ze,{data:l,ariaLabel:t("commandCenter.signals.bySeverity","By severity")})]})]})}function gx(e){return e===null||!Number.isFinite(e)||e<=0?0:Math.max(0,Math.min(1,e))}function LR(e){if(e===null)return"—";const t=gx(e);return`${Math.round(t*100)}%`}function Oa({value:e,label:t,ariaLabel:r}){const n=gx(e),a=LR(e),i={"--cc-radial-value":`${n*100}%`};return s.jsxs("div",{className:"cc-radial-gauge",role:"img","aria-label":r,style:i,children:[s.jsx("div",{className:"cc-radial-gauge-ring","aria-hidden":"true",children:s.jsx("div",{className:"cc-radial-gauge-core",children:s.jsx("span",{className:"cc-radial-gauge-value",children:a})})}),s.jsx("span",{className:"cc-radial-gauge-label",children:t})]})}const RR=5e3,$R=30,BR=["triage","todo","in-progress","in-review","done"],FR=["idle","active","running","error"];function at(e){if(!Number.isFinite(e)||e<0)return"—";const t=e/(1024*1024);return t<1024?`${t.toFixed(0)} MB`:`${(t/1024).toFixed(2)} GB`}function Wv(e,t){return!Number.isFinite(e)||!Number.isFinite(t)||t<=0?"—":`${(e/t*100).toFixed(1)}%`}function zR(e,t){if(t<=0)return"normal";const r=e/t;return r>=.85?"critical":r>=.65?"warning":"normal"}function KR(e,t){if(t<=0)return"normal";const r=e/t;return r>=.5?"critical":r>=.25?"warning":"normal"}function VR(e,t){if(t<=0)return"normal";const r=e/t;return r>=.9?"critical":r>=.75?"warning":"normal"}function UR(e,t){if(e===null||!Number.isFinite(e)||e<0)return"normal";const r=t>0?e/t:e;return r>=80?"critical":r>=50?"warning":"normal"}function ga(e){return e==="critical"?"cc-system-value--critical":e==="warning"?"cc-system-value--warning":""}function qR(e,t){if(!e)return t;const r=new Date(e);return Number.isNaN(r.getTime())?t:r.toLocaleString()}function pi(e,t){return!Number.isFinite(e)||!Number.isFinite(t)||t<=0?0:Math.max(0,Math.min(1,e/t))}function Sn(e){return e==null||!Number.isFinite(e)?0:Math.max(0,Math.min(100,e))}function WR(e){const t=e.systemStats,r=t.systemTotalMem-t.systemFreeMem;return{cpuPercent:Sn(t.cpuPercent),usedSystemMemPercent:pi(r,t.systemTotalMem)*100,heapUsedPercent:pi(t.heapUsed,t.heapLimit)*100}}function HR({projectId:e}){const{t}=le("app"),[r,n]=f.useState(null),[a,i]=f.useState([]),[o,l]=f.useState(!0),[c,d]=f.useState(null),[u,m]=f.useState(!0),[h,v]=f.useState(90),[y,g]=f.useState(!1),[p,b]=f.useState(!1),[j,x]=f.useState(null),[C,w]=f.useState(null),[P,O]=f.useState(null),[k,N]=f.useState(null),{nodes:S}=ih(),A=f.useMemo(()=>S.find(E=>E.type==="local")?.id,[S]),_=k??A??null,I=S.find(E=>E.id===_)??null,D=S.length>1,F=I?.name??t("systemStats.localNodeFallback","Local node"),V=f.useCallback(E=>{const T=[];return E.type==="local"&&T.push(t("systemStats.thisNodeSuffix","this node")),E.status&&E.status!=="online"&&T.push(t("systemStats.nodeStatusSuffix","{{status}}",{status:E.status})),T.length>0?`${E.name} (${T.join(" · ")})`:E.name},[S,t]),U=f.useCallback(async E=>{l(!0);try{const T=_&&_!==A?await qx(_,e):await Wx(e);n(T),i(J=>[...J,WR(T)].slice(-$R)),d(null),O(Date.now()),E?.preserveKillResult||x(null)}catch(T){d(T instanceof Error?T.message:t("systemStats.errorLoadStats","Failed to load system stats"))}finally{l(!1)}},[_,A,e,t]);f.useEffect(()=>{U();const E=window.setInterval(()=>{U()},RR);return()=>{window.clearInterval(E)}},[U]),f.useEffect(()=>{N(E=>E&&S.some(T=>T.id===E)?E:null)},[S]),f.useEffect(()=>{i([]),d(null),x(null),b(!1)},[_]),f.useEffect(()=>{let E=!1;return(async()=>{try{const J=await Hx();if(E)return;m(J.vitestAutoKillEnabled??!0),v(J.vitestKillThresholdPct??90),w(null)}catch(J){E||w(J instanceof Error?J.message:t("systemStats.errorLoadVitestSettings","Failed to load vitest settings"))}})(),()=>{E=!0}},[t]);const te=f.useCallback(async E=>{m(E);try{await mu({vitestAutoKillEnabled:E}),w(null)}catch(T){w(T instanceof Error?T.message:t("systemStats.errorSaveVitestSettings","Failed to save vitest settings"))}},[t]),q=f.useCallback(async E=>{const T=Math.min(99,Math.max(50,Number.isFinite(E)?Math.round(E):90));v(T);try{await mu({vitestKillThresholdPct:T}),w(null)}catch(J){w(J instanceof Error?J.message:t("systemStats.errorSaveVitestSettings","Failed to save vitest settings"))}},[t]),ee=f.useCallback(async()=>{if(!y){if(!p){b(!0);return}g(!0);try{const E=_&&_!==A?await vu(e,_,A):await vu(e);x(E),b(!1),await U({preserveKillResult:!0})}catch(E){d(E instanceof Error?E.message:t("systemStats.errorKillVitest","Failed to kill vitest processes"))}finally{g(!1)}}},[p,_,y,U,A,e,t]),L=r?.systemStats,B=r?.taskStats,X=L?L.systemTotalMem-L.systemFreeMem:0,Q=L?pi(X,L.systemTotalMem):0,G=L?pi(L.heapUsed,L.heapLimit):0,ie=L?.cpuPercent===null||L?.cpuPercent===void 0?null:Sn(L.cpuPercent)/100,se=L?.cpuPercent===null||L?.cpuPercent===void 0?t("systemStats.cpuSampling","Sampling…"):`${L.cpuPercent.toFixed(1)}%`,re=P?t("systemStats.updatedAt","Updated {{time}}",{time:new Date(P).toLocaleTimeString([],{hour:"2-digit",minute:"2-digit",second:"2-digit"})}):t("systemStats.waitingFirstUpdate","Waiting for first update"),W=f.useMemo(()=>{const E=B?.byColumn??{};return(Object.keys(E).length>0?Object.keys(E):BR).map(J=>({label:J,value:E[J]??0,valueLabel:K(E[J]??0)}))},[B?.byColumn]),$=f.useMemo(()=>W.map(E=>({label:E.label,value:E.value})),[W]),ne=f.useMemo(()=>[{label:t("commandCenter.system.cpuSeries","CPU"),values:a.map(E=>Sn(E.cpuPercent))},{label:t("commandCenter.system.memorySeries","Memory"),values:a.map(E=>Sn(E.usedSystemMemPercent))},{label:t("commandCenter.system.heapSeries","Heap"),values:a.map(E=>Sn(E.heapUsedPercent))}],[a,t]),we=$.some(E=>E.value>0),z=a.length>0,fe=f.useMemo(()=>{const E=B?.agents;return FR.map(T=>({label:t(`systemStats.agent${T[0].toUpperCase()}${T.slice(1)}`,T),value:E?.[T]??0,valueLabel:K(E?.[T]??0)}))},[B?.agents,t]),be=f.useMemo(()=>{const E=L?ga(zR(L.heapUsed,L.heapLimit)):"",T=L?ga(KR(L.rss,L.systemTotalMem)):"",J=L?ga(VR(X,L.systemTotalMem)):"",dt=L?ga(UR(L.cpuPercent,L.cpuCount)):"";return[{label:t("systemStats.rowAppCpu","App CPU"),value:se,detail:L?.cpuPercent===null?t("systemStats.cpuFirstSamplePending","First sample pending"):t("systemStats.cpuProcessUsage","process usage"),className:dt},{label:t("systemStats.rowRss","RSS"),value:L?at(L.rss):"—",detail:L?Wv(L.rss,L.systemTotalMem):"—",className:T},{label:t("systemStats.rowHeapUsed","Heap Used"),value:L?at(L.heapUsed):"—",detail:L?t("systemStats.rowHeapUsedDetail","of {{total}}",{total:at(L.heapTotal)}):"—",className:E},{label:t("systemStats.rowHeapLimit","Heap Limit"),value:L?at(L.heapLimit):"—",detail:t("systemStats.rowHeapLimitDetail","V8 limit")},{label:t("systemStats.rowExternal","External"),value:L?at(L.external):"—"},{label:t("systemStats.rowArrayBuffers","Array Buffers"),value:L?at(L.arrayBuffers):"—"},{label:t("systemStats.rowLoadAvg","Load Avg"),value:L?.loadAvg.map(dr=>dr.toFixed(2)).join(" ")??"—"},{label:t("systemStats.rowCores","Cores"),value:L?.cpuCount??"—"},{label:t("systemStats.rowPlatform","Platform"),value:L?.platform??"—"},{label:t("systemStats.rowNode","Node"),value:L?.nodeVersion??"—"},{label:t("systemStats.rowPid","PID"),value:L?.pid??"—"},{label:t("systemStats.rowMemoryUsed","Memory Used"),value:L?at(X):"—",detail:L?`${Wv(X,L.systemTotalMem)} of ${at(L.systemTotalMem)}`:"—",className:J},{label:t("systemStats.rowMemoryFree","Memory Free"),value:L?at(L.systemFreeMem):"—"}]},[se,L,t,X]),ye=r?.vitestProcessCount,nt=qR(r?.vitestLastAutoKillAt,t("systemStats.notYet","Not yet")),ur=o&&!!r;return s.jsxs(Pt,{testId:"system",isLoading:o&&!r,error:r?null:c,isEmpty:!1,children:[s.jsxs("div",{className:"cc-area-section",children:[s.jsxs("div",{className:"cc-area-section-header",children:[s.jsx("h3",{className:"cc-area-section-title",children:t("commandCenter.system.healthTitle","Live system health")}),s.jsxs("div",{className:"cc-system-refresh","aria-live":"polite",children:[D?s.jsxs("label",{className:"cc-system-node-selector",htmlFor:"cc-system-node-select",children:[s.jsx("span",{children:t("systemStats.nodeSelectorLabel","Node")}),s.jsx("select",{id:"cc-system-node-select",className:"input","data-testid":"cc-system-node-select","aria-label":t("systemStats.nodeSelectorAriaLabel","Select system stats node"),value:_??"",onChange:E=>{i([]),x(null),b(!1),N(E.target.value||null)},children:S.map(E=>s.jsx("option",{value:E.id,children:V(E)},E.id))})]}):null,s.jsx("span",{children:t("systemStats.viewingNode","Viewing {{node}}",{node:F})}),s.jsx("span",{children:t("systemStats.autoRefresh","Auto-refresh · 5s")}),s.jsx("span",{children:re}),s.jsx("button",{type:"button",className:"btn-icon",onClick:()=>void U(),title:t("systemStats.refreshTitle","Refresh"),"aria-label":t("systemStats.refreshAriaLabel","Refresh system stats"),children:s.jsx(Gr,{size:16,className:ur?"spin":void 0})})]})]}),c&&r?s.jsx("p",{className:"cc-system-note cc-system-note--error",role:"status",children:t("systemStats.footerRefreshFailed","Latest refresh failed: {{error}}",{error:c})}):null,s.jsxs("div",{className:"cc-stat-grid cc-system-gauges",children:[s.jsxs("div",{className:"card cc-stat-card cc-stat-card--gauge","data-testid":"cc-system-cpu-gauge",children:[s.jsx(Oa,{value:ie,label:t("systemStats.rowAppCpu","App CPU"),ariaLabel:t("commandCenter.system.cpuGauge","App CPU usage")}),s.jsx("span",{className:"cc-stat-sub",children:se})]}),s.jsxs("div",{className:"card cc-stat-card cc-stat-card--gauge","data-testid":"cc-system-mem-gauge",children:[s.jsx(Oa,{value:Q,label:t("systemStats.rowMemoryUsed","Memory Used"),ariaLabel:t("commandCenter.system.memoryGauge","System memory used")}),s.jsx("span",{className:"cc-stat-sub",children:L?`${at(X)} / ${at(L.systemTotalMem)}`:"—"})]}),s.jsxs("div",{className:"card cc-stat-card cc-stat-card--gauge","data-testid":"cc-system-heap-gauge",children:[s.jsx(Oa,{value:G,label:t("systemStats.rowHeapUsed","Heap Used"),ariaLabel:t("commandCenter.system.heapGauge","Heap used")}),s.jsx("span",{className:"cc-stat-sub",children:L?`${at(L.heapUsed)} / ${at(L.heapLimit)}`:"—"})]})]})]}),s.jsxs("div",{className:"cc-area-section",children:[s.jsx("h3",{className:"cc-area-section-title",children:t("commandCenter.system.trendsTitle","Live trends")}),z?s.jsxs("div",{className:"card cc-stat-card","data-testid":"cc-system-line",children:[s.jsx("div",{className:"cc-stat-label",children:t("commandCenter.system.resourceTrend","Resource trend")}),s.jsx(cr,{series:ne,ariaLabel:t("commandCenter.system.resourceTrend","Resource trend")})]}):null,s.jsxs("div",{className:"cc-stat-grid",children:[s.jsxs("div",{className:"card cc-stat-card","data-testid":"cc-system-cpu-trend",children:[s.jsx("div",{className:"cc-stat-label",children:t("commandCenter.system.cpuTrend","CPU over time")}),s.jsx(Kt,{values:a.map(E=>E.cpuPercent),max:100,ariaLabel:t("commandCenter.system.cpuTrend","CPU over time")})]}),s.jsxs("div",{className:"card cc-stat-card","data-testid":"cc-system-memory-trend",children:[s.jsx("div",{className:"cc-stat-label",children:t("commandCenter.system.memoryTrend","Memory over time")}),s.jsx(Kt,{values:a.map(E=>E.usedSystemMemPercent),max:100,ariaLabel:t("commandCenter.system.memoryTrend","Memory over time")})]}),s.jsxs("div",{className:"card cc-stat-card","data-testid":"cc-system-heap-trend",children:[s.jsx("div",{className:"cc-stat-label",children:t("commandCenter.system.heapTrend","Heap over time")}),s.jsx(Kt,{values:a.map(E=>E.heapUsedPercent),max:100,ariaLabel:t("commandCenter.system.heapTrend","Heap over time")})]})]})]}),s.jsxs("div",{className:"cc-area-section",children:[s.jsx("h3",{className:"cc-area-section-title",children:t("commandCenter.system.workloadTitle","Workload")}),s.jsxs("div",{className:"cc-system-chart-grid",children:[we?s.jsxs("div",{className:"card cc-stat-card","data-testid":"cc-system-pie",children:[s.jsx("div",{className:"cc-stat-label",children:t("commandCenter.system.taskShare","Task distribution")}),s.jsx(kt,{data:$,ariaLabel:t("commandCenter.system.taskShare","Task distribution")})]}):null,s.jsxs("div",{className:"card cc-stat-card","data-testid":"cc-system-tasks-bar",children:[s.jsx("div",{className:"cc-stat-label",children:t("systemStats.sectionTasks","Tasks")}),s.jsx(Ze,{data:W,ariaLabel:t("systemStats.sectionTasksAriaLabel","Task stats")})]}),s.jsxs("div",{className:"card cc-stat-card","data-testid":"cc-system-agents-bar",children:[s.jsx("div",{className:"cc-stat-label",children:t("systemStats.sectionAgents","Agents")}),s.jsx(Ze,{data:fe,ariaLabel:t("systemStats.sectionAgentsAriaLabel","Agent stats")})]})]})]}),s.jsxs("div",{className:"cc-area-section",children:[s.jsx("h3",{className:"cc-area-section-title",children:t("commandCenter.system.detailsTitle","Runtime details")}),s.jsx("div",{className:"cc-stat-grid","data-testid":"cc-system-details-grid",children:be.map(E=>s.jsxs("div",{className:"card cc-stat-card",children:[s.jsx("div",{className:"cc-stat-label",children:E.label}),s.jsx("div",{className:`cc-stat-value ${E.className??""}`.trim(),children:E.value}),E.detail?s.jsx("span",{className:"cc-stat-sub",children:E.detail}):null]},E.label))})]}),s.jsxs("div",{className:"cc-area-section","data-testid":"cc-system-vitest-controls",children:[s.jsxs("h3",{className:"cc-area-section-title cc-system-section-title-with-icon",children:[s.jsx(a0,{}),s.jsx("span",{children:t("systemStats.sectionVitest","Vitest Controls")})]}),s.jsxs("div",{className:"cc-stat-grid",children:[s.jsxs("div",{className:"card cc-stat-card",children:[s.jsx("div",{className:"cc-stat-label",children:t("systemStats.vitestProcesses","Vitest Processes")}),s.jsx("div",{className:"cc-stat-value",children:ye??"—"})]}),s.jsxs("div",{className:"card cc-stat-card",children:[s.jsx("div",{className:"cc-stat-label",children:t("systemStats.lastAutoKill","Last auto-kill: {{time}}",{time:""}).trim()}),s.jsx("div",{className:"cc-stat-value",children:nt})]})]}),s.jsxs("div",{className:"card cc-system-vitest-card",children:[s.jsxs("button",{type:"button",className:"btn btn-danger","data-testid":"cc-system-kill-vitest",onClick:()=>void ee(),disabled:y||ye===0,children:[s.jsx(d0,{}),s.jsx("span",{children:p?t("systemStats.confirmKill","Confirm Kill?"):t("systemStats.killVitest","Kill Vitest Processes")})]}),s.jsxs("label",{className:"cc-system-toggle-row",children:[s.jsx("input",{type:"checkbox",checked:u,onChange:E=>{te(E.target.checked)}}),s.jsx("span",{children:t("systemStats.autoKillLabel","Auto-kill vitest on memory pressure")})]}),s.jsxs("div",{className:"cc-system-threshold-row",children:[s.jsx("label",{htmlFor:"cc-system-vitest-threshold-number",children:t("systemStats.killThresholdLabel","Kill threshold (%)")}),s.jsxs("div",{className:"cc-system-threshold-controls",children:[s.jsx("input",{id:"cc-system-vitest-threshold-range",type:"range",min:50,max:99,value:h,"aria-label":t("systemStats.killThresholdSliderAriaLabel","Kill threshold slider (%)"),onChange:E=>{const T=Number.parseInt(E.target.value,10);q(Number.isNaN(T)?90:T)}}),s.jsx("input",{id:"cc-system-vitest-threshold-number",type:"number",className:"input",min:50,max:99,value:h,"aria-label":t("systemStats.killThresholdInputAriaLabel","Kill threshold (%)"),onChange:E=>{const T=Number.parseInt(E.target.value,10);q(Number.isNaN(T)?90:T)},onBlur:()=>{q(h)}})]})]}),j?s.jsx("p",{className:`cc-system-note ${j.killed>0?"cc-system-note--success":"cc-system-note--error"}`,children:t("systemStats.killedProcesses","Killed {{count}} processes",{count:j.killed})}):null,C?s.jsx("p",{className:"cc-system-note cc-system-note--error",children:C}):null]})]})]})}function GR(e,t){if(!Number.isFinite(e)||e<=0)return 0;const r=Number.isFinite(t)&&t>0?t:1;return Math.max(0,Math.min(100,e/r*100))}function XR(e,t){return t===null?null:!Number.isFinite(t)||t<=0?"—":`${Math.max(0,Math.min(100,e/t*100)).toFixed(0)}%`}function bx({stages:e,ariaLabel:t}){const r=e.reduce((n,a)=>a.value>n?a.value:n,0);return s.jsx("ol",{className:"cc-funnel","aria-label":t,children:e.map((n,a)=>{const i=GR(n.value,r),o=a>0?e[a-1].value:null,l=XR(n.value,o),c=String(Number.isFinite(n.value)?n.value:0);return s.jsxs("li",{className:"cc-funnel-stage",children:[s.jsxs("div",{className:"cc-funnel-header",children:[s.jsx("span",{className:"cc-funnel-label",children:n.label}),l!==null?s.jsx("span",{className:"cc-funnel-conversion",children:l}):null]}),s.jsx("div",{className:"cc-funnel-track",children:s.jsx("div",{className:"cc-funnel-fill",style:{width:`${i}%`},role:"img","aria-label":`${n.label}: ${c}`})}),s.jsx("span",{className:"cc-funnel-value",children:c})]},n.label)})})}const YR=5e3,ZR=3e4,JR=["session:updated","session:completed","run:created","run:updated","run:completed","run:cancelled","run:failed","agent:stateChanged","task:moved","task:updated","task:created","task:deleted"],Ao=[{id:"triage",match:e=>e==="triage"||e==="signal"||e==="backlog"},{id:"todo",match:e=>e==="todo"||e==="to-do"||e==="to do"||e==="ready"},{id:"in-progress",match:e=>e==="in-progress"||e==="in progress"||e==="doing"},{id:"in-review",match:e=>e==="in-review"||e==="in review"||e==="review"},{id:"done",match:e=>e==="done"||e==="complete"||e==="completed"||e==="shipped"}];function QR(){const[e,t]=f.useState(null),[r,n]=f.useState(!0),[a,i]=f.useState(null),[o,l]=f.useState(!1),c=f.useRef(null),d=f.useRef(null),u=f.useRef(!1),m=f.useRef(!0),h=f.useCallback(()=>{d.current!==null&&(clearInterval(d.current),d.current=null,l(!1))},[]),v=f.useCallback(async()=>{if(!u.current){u.current=!0;try{const g=await _l("/command-center/live");if(!m.current)return;c.current=g,t(g),i(null)}catch(g){if(!m.current)return;i(g instanceof Error?g.message:"Failed to load live snapshot")}finally{if(u.current=!1,m.current){n(!1);const g=c.current;!!g&&(g.activeSessions>0||g.activeRuns>0)?d.current===null&&(d.current=setInterval(()=>{v()},YR),l(!0)):h()}}}},[h]);f.useEffect(()=>{m.current=!0,v();const g=Xx("/api/events",{events:Object.fromEntries(JR.map(p=>[p,()=>void v()])),onReconnect:()=>void v()});return()=>{m.current=!1,g(),h()}},[v,h]);const y=f.useCallback(()=>{v()},[v]);return{snapshot:e,isLoading:r,error:a!==null&&e===null?a:null,polling:o,reload:y}}function e$(e){const t=e.split(/[/\\]/).filter(Boolean);return t.length>0?t[t.length-1]:e}function t$(e,t){const r=Date.parse(t),n=new Map;for(const a of e){if(!a.worktreePath)continue;const i=n.get(a.worktreePath)??{count:0,freshestMs:0},o=Date.parse(a.updatedAt);n.set(a.worktreePath,{count:i.count+1,freshestMs:Number.isFinite(o)?Math.max(i.freshestMs,o):i.freshestMs})}return Array.from(n.entries()).map(([a,i])=>{const o=Number.isFinite(r)&&i.freshestMs>0?r-i.freshestMs:0;return{path:a,label:e$(a),sessionCount:i.count,inactive:o>ZR}}).sort((a,i)=>i.sessionCount-a.sessionCount)}function r$(e,t){const r=new Map;for(const i of Ao)r.set(i.id,0);let n=0;for(const i of e){const o=i.column.trim().toLowerCase(),l=Ao.find(c=>c.match(o));l?r.set(l.id,(r.get(l.id)??0)+i.count):n+=i.count}const a=Ao.map(i=>({label:t(`commandCenter.missionControl.stage.${i.id}`,i.id),value:r.get(i.id)??0}));return n>0&&a.push({label:t("commandCenter.missionControl.stage.other","Other"),value:n}),a}function n$(){const{t:e}=le("app"),{snapshot:t,isLoading:r,error:n}=QR(),a=f.useMemo(()=>t?.sessions??[],[t?.sessions]),i=f.useMemo(()=>t?t$(t.sessions,t.capturedAt):[],[t]),o=f.useMemo(()=>t?r$(t.columns,e):[],[t,e]);if(r&&!t)return s.jsxs("div",{className:"cc-loading-inline","data-testid":"mission-control-loading",children:[s.jsx(El,{size:18,className:"spin"}),s.jsx("span",{children:e("commandCenter.missionControl.loading","Loading live activity…")})]});if(n!==null)return s.jsxs("div",{className:"cc-area-error","data-testid":"mission-control-error",role:"alert",children:[s.jsx(gi,{size:22}),s.jsx("p",{children:n})]});const l=(t?.activeSessions??0)>0||(t?.activeRuns??0)>0;return s.jsxs("div",{className:"cc-mission-control","data-testid":"mission-control",children:[s.jsxs("div",{className:"cc-stat-grid","data-testid":"mission-control-summary",children:[s.jsxs("div",{className:"card cc-stat-card","data-testid":"mission-control-active-sessions",children:[s.jsx("div",{className:"cc-stat-label",children:e("commandCenter.missionControl.activeSessions","Active sessions")}),s.jsx("div",{className:"cc-stat-value",children:t?.activeSessions??0})]}),s.jsxs("div",{className:"card cc-stat-card","data-testid":"mission-control-active-runs",children:[s.jsx("div",{className:"cc-stat-label",children:e("commandCenter.missionControl.activeRuns","Active runs")}),s.jsx("div",{className:"cc-stat-value",children:t?.activeRuns??0})]}),s.jsxs("div",{className:"card cc-stat-card","data-testid":"mission-control-active-nodes",children:[s.jsx("div",{className:"cc-stat-label",children:e("commandCenter.missionControl.activeNodes","Active nodes")}),s.jsx("div",{className:"cc-stat-value",children:t?.activeNodes??0})]})]}),l?null:s.jsxs("div",{className:"cc-area-empty","data-testid":"mission-control-idle",children:[s.jsx(Gx,{size:24}),s.jsx("p",{children:e("commandCenter.missionControl.idle","No active sessions. Live updates resume when work starts.")})]}),s.jsxs("div",{className:"cc-mc-columns",children:[s.jsxs("section",{className:"cc-mc-section","data-testid":"mission-control-sessions",children:[s.jsx("h3",{className:"cc-area-section-title",children:e("commandCenter.missionControl.sessionsTitle","Sessions")}),a.length===0?s.jsx("p",{className:"cc-mc-muted","data-testid":"mission-control-sessions-empty",children:e("commandCenter.missionControl.noSessions","No active sessions.")}):s.jsx("ul",{className:"cc-mc-list",children:a.map(c=>s.jsxs("li",{className:"cc-mc-session","data-testid":`mission-control-session-${c.id}`,children:[s.jsx("span",{className:"cc-mc-session-purpose",children:c.purpose||c.adapterId}),s.jsxs("span",{className:"cc-mc-session-meta",children:[s.jsx("span",{className:"cc-mc-badge",children:c.agentState}),c.taskId?s.jsx("span",{className:"cc-mc-task",children:c.taskId}):null]})]},c.id))})]}),s.jsxs("section",{className:"cc-mc-section","data-testid":"mission-control-nodes",children:[s.jsx("h3",{className:"cc-area-section-title",children:e("commandCenter.missionControl.nodesTitle","Nodes")}),i.length===0?s.jsx("p",{className:"cc-mc-muted","data-testid":"mission-control-nodes-empty",children:e("commandCenter.missionControl.noNodes","No active nodes.")}):s.jsx("ul",{className:"cc-mc-list",children:i.map(c=>s.jsxs("li",{className:`cc-mc-node${c.inactive?" inactive":""}`,"data-testid":`mission-control-node-${c.label}`,"data-inactive":c.inactive?"true":"false",children:[s.jsx("span",{className:"cc-mc-node-label",children:c.label}),s.jsxs("span",{className:"cc-mc-node-meta",children:[c.inactive?s.jsx("span",{className:"cc-mc-badge inactive",children:e("commandCenter.missionControl.inactive","inactive")}):null,s.jsx("span",{className:"cc-mc-node-count",children:e("commandCenter.missionControl.sessionCount","{{count}} session",{count:c.sessionCount})})]})]},c.path))})]})]}),s.jsxs("section",{className:"cc-mc-section","data-testid":"mission-control-funnel",children:[s.jsx("h3",{className:"cc-area-section-title",children:e("commandCenter.missionControl.funnelTitle","SDLC funnel (live)")}),s.jsx(bx,{stages:o,ariaLabel:e("commandCenter.missionControl.funnelTitle","SDLC funnel (live)")})]})]})}function Hv({className:e}){return s.jsxs("span",{className:`theme-option-swatch ${e}`,"aria-hidden":"true",children:[s.jsx("span",{className:"theme-option-swatch-sample theme-option-swatch-sample-1"}),s.jsx("span",{className:"theme-option-swatch-sample theme-option-swatch-sample-2"}),s.jsx("span",{className:"theme-option-swatch-sample theme-option-swatch-sample-3"}),s.jsx("span",{className:"theme-option-swatch-sample theme-option-swatch-sample-4"})]})}function a$({colorTheme:e,onColorThemeChange:t,themeMode:r,shadcnCustomColors:n={},resolvedThemeMode:a=r==="light"?"light":"dark",onThemeModeChange:i,onShadcnCustomColorsChange:o=()=>{}}){const{t:l}=le("app"),[c,d]=f.useState(!1),[u,m]=f.useState(()=>Math.max(0,Lt.findIndex(x=>x.value===e))),h=f.useRef(null),v=f.useRef([]),y=f.useMemo(()=>Lt.find(x=>x.value===e)??Lt[0],[e]),g="theme-dropdown-listbox";f.useEffect(()=>{if(!c)return;const x=C=>{h.current&&!h.current.contains(C.target)&&d(!1)};return document.addEventListener("pointerdown",x),()=>document.removeEventListener("pointerdown",x)},[c]),f.useEffect(()=>{m(Math.max(0,Lt.findIndex(x=>x.value===e)))},[e]),f.useEffect(()=>{c&&v.current[u]?.focus()},[u,c]);const p=x=>{t(x),d(!1)},b=x=>{if(x.key==="ArrowDown"||x.key==="ArrowUp"||x.key==="Enter"||x.key===" "){x.preventDefault();const C=Math.max(0,Lt.findIndex(w=>w.value===e));m(x.key==="ArrowUp"?Math.max(0,C-1):C),d(!0)}},j=(x,C,w)=>{if(x.key==="Escape"){x.preventDefault(),d(!1);return}if(x.key==="ArrowDown"||x.key==="ArrowUp"){x.preventDefault();const P=x.key==="ArrowDown"?1:-1;m((C+P+Lt.length)%Lt.length);return}if(x.key==="Home"){x.preventDefault(),m(0);return}if(x.key==="End"){x.preventDefault(),m(Lt.length-1);return}(x.key==="Enter"||x.key===" ")&&(x.preventDefault(),p(w))};return s.jsxs("div",{className:`theme-dropdown${c?" open":""}`,ref:h,children:[s.jsxs("button",{type:"button",className:"theme-dropdown-trigger btn","aria-haspopup":"listbox","aria-expanded":c,"aria-controls":g,onClick:()=>d(x=>!x),onKeyDown:b,children:[s.jsx(Hv,{className:y.className}),s.jsx("span",{className:"theme-dropdown-trigger-label",children:l(`theme.colorTheme.${y.value}`,y.label)}),s.jsx(xi,{size:16,"aria-hidden":"true"})]}),r&&i?s.jsx("div",{className:"theme-dropdown-modes",role:"radiogroup","aria-label":l("theme.modeLabel","Theme mode"),children:i0.map(({value:x,label:C,icon:w})=>s.jsxs("button",{type:"button",className:`theme-dropdown-mode-btn btn btn-sm${r===x?" active":""}`,"aria-pressed":r===x,onClick:()=>i(x),title:l(`theme.${x}Mode`,`${C} mode`),children:[s.jsx(w,{size:16,"aria-hidden":"true"}),s.jsx("span",{children:l(`theme.${x}`,C)})]},x))}):null,e==="shadcn-custom"?s.jsx(s0,{value:n,onChange:o,resolvedThemeMode:a}):null,c?s.jsx("div",{className:"theme-dropdown-popover",role:"presentation",children:s.jsx("div",{id:g,className:"theme-dropdown-list",role:"listbox","aria-label":l("theme.colorThemeLabel","Color theme"),children:Lt.map(({value:x,label:C,className:w},P)=>{const O=e===x;return s.jsxs("button",{ref:k=>{v.current[P]=k},type:"button",className:`theme-dropdown-option${O?" active":""}`,role:"option","aria-selected":O,tabIndex:P===u?0:-1,onClick:()=>p(x),onKeyDown:k=>j(k,P,x),children:[s.jsx(Hv,{className:w}),s.jsx("span",{className:"theme-dropdown-option-label",children:l(`theme.colorTheme.${x}`,C)}),O?s.jsx(Yx,{size:16,"aria-hidden":"true"}):null]},x)})})}):null]})}const Gv=500,yr={maxConcurrent:us.maxConcurrent,maxTriageConcurrent:us.maxTriageConcurrent,maxWorktrees:us.maxWorktrees},xr={maxConcurrent:{min:1,max:50},maxTriageConcurrent:{min:1,max:50},maxWorktrees:{min:1,max:50}},i$={maxConcurrent:{key:"commandCenter.controls.concurrency.maxConcurrent",defaultValue:"Max concurrent tasks"},maxTriageConcurrent:{key:"commandCenter.controls.concurrency.maxTriageConcurrent",defaultValue:"Max triage concurrent"},maxWorktrees:{key:"commandCenter.controls.concurrency.maxWorktrees",defaultValue:"Max worktrees"}};function Pl(e,t,r){return Math.min(r,Math.max(t,e))}function jn(e,t){return Math.max(xr[e].max,t)}function Xv(e,t){return t<=0?0:Pl(e/t,0,1)}function Yv(e){return{"--use-pct":`${e*100}%`,"--use-offset":`calc((var(--cc-controls-range-thumb-size) / 2) + ((100% - var(--cc-controls-range-thumb-size)) * ${e}))`}}function s$(e,t){return Object.keys(e).filter(r=>e[r]!==t[r])}function o$({paused:e,label:t}){return s.jsxs("span",{className:"cc-controls-status-pill",children:[s.jsx("span",{className:`status-dot ${e?"status-dot--pending":"status-dot--online"}`,"aria-hidden":"true"}),s.jsx("span",{children:t})]})}function l$({projectId:e,colorTheme:t,themeMode:r,shadcnCustomColors:n={},resolvedThemeMode:a=r==="light"?"light":"dark",onColorThemeChange:i,onThemeModeChange:o,onShadcnCustomColorsChange:l=()=>{},onChangeView:c}){const{t:d}=le("app"),{confirm:u}=th(),{globalPaused:m,toggleGlobalPause:h,refresh:v}=rh(e),[y,g]=f.useState({status:"loading",data:null,error:null}),[p,b]=f.useState(!1),[j,x]=f.useState("idle"),C=f.useRef(yr),w=f.useRef(null),P=f.useRef(!1),[O,k]=f.useState(null),[N,S]=f.useState(!1),A=f.useRef(!1),_=Zx();f.useEffect(()=>{let G=!1;return b(!1),x("idle"),g({status:"loading",data:null,error:null}),(async()=>{try{const[ie,se]=await Promise.all([Jx(e),nh(e)]);if(!G){const re={maxConcurrent:se.maxConcurrent??ie.maxConcurrent??yr.maxConcurrent,maxTriageConcurrent:se.maxTriageConcurrent??yr.maxTriageConcurrent,maxWorktrees:se.maxWorktrees??yr.maxWorktrees};C.current=re,w.current=null,P.current=!1,g({status:"loaded",data:re,error:null})}}catch(ie){G||g({status:"error",data:yr,error:ie instanceof Error?ie.message:d("commandCenter.controls.concurrency.error","Unable to load concurrency settings")})}})(),()=>{G=!0}},[e,d]),f.useEffect(()=>{if(!p||!y.data||P.current)return;const G=y.data,ie=setTimeout(()=>{const se=C.current,re=s$(G,se);if(re.length===0){b(!1),w.current=null;return}P.current=!0;const W=re.map(ne=>{const we=i$[ne];return d("commandCenter.controls.concurrency.confirmChangeSummaryItem","{{setting}} from {{oldValue}} to {{newValue}}",{setting:d(we.key,we.defaultValue),oldValue:se[ne],newValue:G[ne]})}),$=re.length===1?d("commandCenter.controls.concurrency.confirmMessage","Change {{setting}}?",{setting:W[0]}):d("commandCenter.controls.concurrency.confirmMultipleMessage","Change these concurrency settings: {{settings}}?",{settings:W.join("; ")});u({title:d("commandCenter.controls.concurrency.confirmTitle","Confirm concurrency change"),message:$,confirmLabel:d("commandCenter.controls.concurrency.confirmSave","Save change"),cancelLabel:d("commandCenter.controls.concurrency.confirmCancel","Cancel")}).then(ne=>{if(P.current=!1,!ne){g({status:"loaded",data:C.current,error:null}),b(!1),w.current=null,x("idle");return}x("saving"),ah(G,e).then(async()=>{await v(),C.current=G,b(!1),w.current=null,x("saved")}).catch(()=>{x("error")})})},Gv);return()=>clearTimeout(ie)},[u,p,y.data,e,v,d]);const I=(G,ie,se,re)=>{const W=Pl(Number(ie),se,re);w.current=G,g($=>({status:"loaded",data:{...$.data??yr,[G]:W},error:null})),b(!0),x("idle")},D=G=>{const ie=Pl(Number(G),_.min,_.sliderMax);k(ie),S(!0)};f.useEffect(()=>{if(!N||O===null||!_.interactive||A.current)return;const G=O,ie=_.value,se=setTimeout(()=>{if(G===ie){k(null),S(!1);return}A.current=!0,u({title:d("commandCenter.controls.concurrency.confirmTitle","Confirm concurrency change"),message:d("commandCenter.controls.concurrency.confirmMessage","Change {{setting}} from {{oldValue}} to {{newValue}}?",{setting:d("settings.scheduling.globalMaxConcurrent","Global Max Concurrent"),oldValue:ie,newValue:G}),confirmLabel:d("commandCenter.controls.concurrency.confirmSave","Save change"),cancelLabel:d("commandCenter.controls.concurrency.confirmCancel","Cancel")}).then(re=>{A.current=!1,re&&_.setValue(String(G)),k(null),S(!1)})},Gv);return()=>clearTimeout(se)},[u,_.interactive,_.setValue,_.value,N,O,d]);const F=m,V=y.data??yr,U=_.status==="loaded",te=_.projectActiveCount(e),q=O??_.value,ee=Math.max(_.sliderMax,q),L=jn("maxConcurrent",V.maxConcurrent),B=Xv(_.currentlyActive,ee),X=Xv(te,L),Q=_.status==="loading"||_.status==="idle"?d("commandCenter.controls.status.loading","Loading…"):_.status==="error"?d("commandCenter.controls.status.loadError","Load failed"):_.saveState==="saving"?d("commandCenter.controls.status.saving","Saving…"):_.saveState==="saved"?d("commandCenter.controls.status.saved","Saved"):_.saveState==="error"?d("commandCenter.controls.status.saveError","Save failed"):d("commandCenter.controls.status.ready","Ready");return s.jsx("section",{className:"cc-controls","data-testid":"command-center-controls","aria-label":d("commandCenter.controls.title","Operator controls"),children:s.jsxs("div",{className:"cc-controls-grid",children:[s.jsxs("section",{className:"card cc-controls-card","data-testid":"cc-controls-engine",children:[s.jsxs("div",{className:"cc-controls-card-header",children:[s.jsxs("div",{children:[s.jsx("h3",{children:d("commandCenter.controls.engine.title","AI engine")}),s.jsx("p",{children:d("commandCenter.controls.engine.description","Stopping the engine halts all AI work.")})]}),s.jsx(o$,{paused:F,label:F?d("commandCenter.controls.status.stopped","Stopped"):d("commandCenter.controls.status.running","Running")})]}),s.jsxs("button",{type:"button",className:"btn btn-secondary cc-controls-action",onClick:()=>void h(),children:[s.jsx(c0,{size:16,"aria-hidden":"true"}),s.jsx("span",{children:F?d("header.startAiEngine","Start AI Engine"):d("header.stopAiEngine","Stop AI Engine")})]}),c?s.jsxs("div",{className:"cc-overview-engine-nav","data-testid":"command-center-engine-panel",children:[s.jsx("button",{type:"button",className:"btn btn-secondary cc-overview-engine-nav-btn",onClick:()=>c("board"),children:d("commandCenter.controls.engine.viewBoard","View Board")}),s.jsx("button",{type:"button",className:"btn btn-secondary cc-overview-engine-nav-btn",onClick:()=>c("agents"),children:d("commandCenter.controls.engine.viewAgents","View Agents")})]}):null]}),s.jsxs("section",{className:"card cc-controls-card","data-testid":"cc-controls-theme",children:[s.jsx("div",{className:"cc-controls-card-header",children:s.jsxs("div",{children:[s.jsx("h3",{children:d("commandCenter.controls.theme.title","Theme")}),s.jsx("p",{children:d("commandCenter.controls.theme.description","Switch the dashboard theme with live color previews.")})]})}),s.jsx(a$,{colorTheme:t,themeMode:r,shadcnCustomColors:n,resolvedThemeMode:a,onColorThemeChange:i,onThemeModeChange:o,onShadcnCustomColorsChange:l})]}),s.jsxs("section",{className:"card cc-controls-card cc-controls-card--concurrency","data-testid":"cc-controls-concurrency",children:[s.jsxs("div",{className:"cc-controls-card-header",children:[s.jsxs("div",{children:[s.jsx("h3",{children:d("commandCenter.controls.concurrency.title","Concurrency")}),s.jsx("p",{children:d("commandCenter.controls.concurrency.description","Tune live scheduler capacity.")})]}),s.jsx("span",{className:`cc-controls-save-state cc-controls-save-state--${j}`,"aria-live":"polite",children:y.status==="loading"?d("commandCenter.controls.status.loading","Loading…"):j==="saving"?d("commandCenter.controls.status.saving","Saving…"):j==="saved"?d("commandCenter.controls.status.saved","Saved"):j==="error"?d("commandCenter.controls.status.saveError","Save failed"):d("commandCenter.controls.status.ready","Ready")})]}),s.jsxs("div",{className:"cc-controls-sliders",children:[s.jsxs("label",{className:"cc-controls-slider cc-controls-slider--global",htmlFor:"cc-global-max-concurrent",children:[s.jsxs("span",{className:"cc-controls-slider-label",children:[d("settings.scheduling.globalMaxConcurrent","Global Max Concurrent"),s.jsx("strong",{children:q})]}),s.jsx("small",{className:"cc-controls-slider-caption",children:d("settings.scheduling.maximumConcurrentAgentsAcrossAllProjects","Maximum concurrent agents across all projects")}),U?s.jsx("small",{className:"cc-controls-slider-caption","data-testid":"cc-global-running",children:d("commandCenter.controls.concurrency.runningGlobal","{{count}} running (all projects)",{count:_.currentlyActive})}):null,s.jsxs("span",{className:"cc-controls-range-wrap",children:[s.jsx("input",{id:"cc-global-max-concurrent",className:"cc-controls-touch-slider",type:"range",min:_.min,max:ee,value:q,disabled:!_.interactive,onChange:G=>D(G.target.value)}),U?s.jsx("span",{className:"status-dot status-dot--online cc-controls-use-marker",style:Yv(B),"data-testid":"cc-global-use-marker","aria-hidden":"true"}):null]}),s.jsx("span",{className:`cc-controls-save-state cc-controls-save-state--${_.saveState}`,"aria-live":"polite",children:Q}),_.status==="error"?s.jsx("small",{className:"cc-controls-error",role:"alert",children:d("commandCenter.controls.concurrency.error","Unable to load concurrency settings")}):null]}),s.jsxs("label",{className:"cc-controls-slider",htmlFor:"cc-max-concurrent",children:[s.jsxs("span",{className:"cc-controls-slider-label",children:[d("commandCenter.controls.concurrency.maxConcurrent","Max concurrent tasks"),s.jsx("strong",{children:V.maxConcurrent})]}),U?s.jsx("small",{className:"cc-controls-slider-caption","data-testid":"cc-project-running",children:d("commandCenter.controls.concurrency.runningProject","{{count}} running (this project)",{count:te})}):null,s.jsxs("span",{className:"cc-controls-range-wrap",children:[s.jsx("input",{id:"cc-max-concurrent",className:"cc-controls-touch-slider",type:"range",min:xr.maxConcurrent.min,max:L,value:V.maxConcurrent,disabled:y.status==="loading",onChange:G=>I("maxConcurrent",G.target.value,xr.maxConcurrent.min,L)}),U?s.jsx("span",{className:"status-dot status-dot--online cc-controls-use-marker",style:Yv(X),"data-testid":"cc-project-use-marker","aria-hidden":"true"}):null]})]}),s.jsxs("label",{className:"cc-controls-slider",htmlFor:"cc-max-triage-concurrent",children:[s.jsxs("span",{className:"cc-controls-slider-label",children:[d("commandCenter.controls.concurrency.maxTriageConcurrent","Max triage concurrent"),s.jsx("strong",{children:V.maxTriageConcurrent})]}),s.jsx("input",{id:"cc-max-triage-concurrent",className:"cc-controls-touch-slider",type:"range",min:xr.maxTriageConcurrent.min,max:jn("maxTriageConcurrent",V.maxTriageConcurrent),value:V.maxTriageConcurrent,disabled:y.status==="loading",onChange:G=>I("maxTriageConcurrent",G.target.value,xr.maxTriageConcurrent.min,jn("maxTriageConcurrent",V.maxTriageConcurrent))})]}),s.jsxs("label",{className:"cc-controls-slider",htmlFor:"cc-max-worktrees",children:[s.jsxs("span",{className:"cc-controls-slider-label",children:[d("commandCenter.controls.concurrency.maxWorktrees","Max worktrees"),s.jsx("strong",{children:V.maxWorktrees})]}),s.jsx("input",{id:"cc-max-worktrees",className:"cc-controls-touch-slider",type:"range",min:xr.maxWorktrees.min,max:jn("maxWorktrees",V.maxWorktrees),value:V.maxWorktrees,disabled:y.status==="loading",onChange:G=>I("maxWorktrees",G.target.value,xr.maxWorktrees.min,jn("maxWorktrees",V.maxWorktrees))})]})]}),y.status==="error"?s.jsx("p",{className:"cc-controls-error",role:"alert",children:y.error}):null]})]})})}function Zv(e){return`${(e*100).toFixed(1)}%`}function Jv(e){return e===null?"—":`${(e/6e4).toFixed(1)}m`}function ba(e){if(!e)return"—";const t=new Date(e);return Number.isNaN(t.getTime())?e:t.toLocaleString()}function c$(){const{t:e}=le("app"),[t,r]=f.useState(null),[n,a]=f.useState(!0),[i,o]=f.useState(null),[l,c]=f.useState(!1),[d,u]=f.useState(!1),[m,h]=f.useState(null),v=f.useCallback(async()=>{a(!0),o(null);try{const S=await fetch("/api/health/reliability");if(!S.ok)throw new Error(`Failed to load reliability metrics (${S.status})`);const A=await S.json();r(A)}catch(S){o(S instanceof Error?S.message:e("reliability.failedToLoad","Failed to load reliability metrics"))}finally{a(!1)}},[e]),y=f.useCallback(async()=>{h(null);const S=await fetch("/api/health/reliability/reset",{method:"POST"});if(!S.ok)throw new Error(`Failed to reset reliability metrics (${S.status})`);await v(),u(!1)},[v]);f.useEffect(()=>{v();const S=setInterval(()=>{v()},6e4);return()=>clearInterval(S)},[v]);const g=t?.headline.inReviewFailureRate7d,p=f.useMemo(()=>g==null?null:Math.max(0,Math.min(1,1-g)),[g]),b=f.useMemo(()=>p===null?"var(--text-muted)":p>=.95?"var(--color-success)":p>=.9?"var(--color-warning)":"var(--color-error)",[p]),j=f.useMemo(()=>(t?.perDay??[]).reduce((S,A)=>S+A.tasksEnteredInReview,0),[t?.perDay]),x=f.useMemo(()=>(t?.perDay??[]).reduce((S,A)=>S+A.tasksBouncedToInProgress,0),[t?.perDay]),C=f.useMemo(()=>t?.perDay?[...l?t.perDay:t.perDay.filter(A=>A.hasSamples!==!1)].sort((A,_)=>A.date.localeCompare(_.date)):[],[t?.perDay,l]),w=f.useMemo(()=>C.some(A=>A.tasksEnteredInReview>0||A.tasksBouncedToInProgress>0)?[{label:e("reliability.flowChart.entered","Entered"),values:C.map(A=>A.tasksEnteredInReview)},{label:e("reliability.flowChart.bounced","Bounced"),values:C.map(A=>A.tasksBouncedToInProgress)}]:[],[C,e]),P=f.useMemo(()=>Object.entries(t?.mergeAttempts.histogram??{}).sort(([S],[A])=>S.localeCompare(A,void 0,{numeric:!0})),[t?.mergeAttempts.histogram]),O=f.useMemo(()=>P.map(([S,A])=>({label:S,value:A})),[P]),k=f.useMemo(()=>P.reduce((S,[,A])=>S+A,0),[P]),N=t?ba(t.resetAt??new Date(Date.parse(t.generatedAt)-t.windowDays*864e5).toISOString()):"—";return n&&t===null?s.jsxs("div",{className:"reliability-loading","data-testid":"reliability-loading",children:[s.jsx(El,{size:24,className:"spin"}),s.jsx("p",{children:e("reliability.loading","Loading reliability data...")})]}):i!==null&&t===null?s.jsxs("div",{className:"reliability-error","data-testid":"reliability-error",role:"alert",children:[s.jsx(gi,{size:24}),s.jsx("p",{children:i})]}):s.jsxs("section",{className:"reliability-view",children:[s.jsxs("div",{className:"card reliability-card reliability-headline-card",children:[s.jsxs("div",{className:"reliability-section-header",children:[s.jsx("h2",{children:e("reliability.heading","Reliability")}),s.jsx("button",{className:"btn btn-danger btn-sm",onClick:()=>u(!0),children:e("reliability.resetStats","Reset stats")})]}),s.jsx("div",{className:"reliability-headline",style:{color:b},children:g==null?e("reliability.insufficientData","Insufficient data — {{reason}}",{reason:t?.headline.reason??"unknown"}):Zv(p??0)}),p!==null?s.jsx("div",{className:"reliability-muted",children:e("reliability.successRateLabel","In-review success rate (last 7d)")}):null,t?.resetAt?s.jsx("div",{className:"reliability-muted",children:e("reliability.countingSince","Counting since {{date}}",{date:ba(t.resetAt)})}):null,s.jsxs("details",{className:"reliability-details",children:[s.jsx("summary",{children:e("reliability.details","Details")}),s.jsxs("div",{className:"reliability-details-content",children:[s.jsx("div",{children:e("reliability.bouncedEntered","{{bounced}} bounced / {{entered}} entered (last {{days}}d)",{bounced:x,entered:j,days:t?.windowDays??7})}),g!=null?s.jsx("div",{children:e("reliability.failureRate","Failure rate: {{rate}}",{rate:Zv(g)})}):null,s.jsx("div",{children:e("reliability.window","Window: {{start}} → {{end}}",{start:N,end:ba(t?.generatedAt)})}),t?.resetAt?s.jsx("div",{children:e("reliability.resetBaseline","Reset baseline: {{date}}",{date:ba(t.resetAt)})}):null,t?.headline.reason?s.jsx("div",{children:e("reliability.reason","Reason: {{reason}}",{reason:t.headline.reason})}):null]})]})]}),s.jsxs("div",{className:"reliability-grid",children:[s.jsxs("div",{className:"card reliability-card",children:[s.jsxs("div",{className:"reliability-section-header",children:[s.jsx("h3",{children:e("reliability.inReviewFlow","In-review flow")}),s.jsx("button",{className:"btn btn-sm",onClick:()=>c(S=>!S),children:l?e("reliability.hideEmptyDays","Hide empty days"):e("reliability.showEmptyDays","Show empty days")})]}),s.jsxs("div",{className:"reliability-chart-section","data-testid":"reliability-flow-chart",children:[s.jsx("h4",{children:e("reliability.flowChart.heading","Entered vs bounced trend")}),s.jsx(cr,{series:w,ariaLabel:e("reliability.flowChart.aria","In-review entered vs bounced per day"),emptyLabel:e("reliability.flowChart.empty","No in-review flow data")})]}),s.jsxs("table",{className:"reliability-table",children:[s.jsx("thead",{children:s.jsxs("tr",{children:[s.jsx("th",{children:e("reliability.table.date","Date")}),s.jsx("th",{children:e("reliability.table.entered","Entered")}),s.jsx("th",{children:e("reliability.table.bounced","Bounced")})]})}),s.jsx("tbody",{children:C.map(S=>s.jsxs("tr",{children:[s.jsx("td",{children:S.date}),s.jsx("td",{children:S.tasksEnteredInReview}),s.jsx("td",{children:S.tasksBouncedToInProgress})]},S.date))})]})]}),s.jsxs("div",{className:"card reliability-card",children:[s.jsx("h3",{children:e("reliability.duration.heading","Duration")}),s.jsxs("div",{className:"reliability-stat-row",children:[s.jsx("span",{children:e("reliability.duration.p50","P50")}),s.jsx("strong",{children:Jv(t?.duration.p50Ms??null)})]}),s.jsxs("div",{className:"reliability-stat-row",children:[s.jsx("span",{children:e("reliability.duration.p95","P95")}),s.jsx("strong",{children:Jv(t?.duration.p95Ms??null)})]}),s.jsx("div",{className:"reliability-muted",children:e("reliability.duration.samples","Samples: {{count}}",{count:t?.duration.sampleCount??0})}),s.jsxs("details",{className:"reliability-details",children:[s.jsx("summary",{children:e("reliability.duration.moreStats","More stats")}),s.jsxs("div",{className:"reliability-details-content",children:[s.jsx("div",{children:e("reliability.duration.p50Raw","P50 raw: {{value}} ms",{value:t?.duration.p50Ms??"—"})}),s.jsx("div",{children:e("reliability.duration.p95Raw","P95 raw: {{value}} ms",{value:t?.duration.p95Ms??"—"})}),s.jsx("div",{children:e("reliability.duration.sampleCount","Sample count: {{count}}",{count:t?.duration.sampleCount??0})}),t?.duration.reason?s.jsx("div",{children:e("reliability.duration.reason","Reason: {{reason}}",{reason:t.duration.reason})}):null]})]})]}),s.jsxs("div",{className:"card reliability-card",children:[s.jsx("h3",{children:e("reliability.mergeAttempts.heading","Merge attempts")}),s.jsxs("div",{className:"reliability-stat-row",children:[s.jsx("span",{children:e("reliability.mergeAttempts.mean","Mean")}),s.jsx("strong",{children:t?.mergeAttempts.mean?.toFixed(2)??"—"})]}),s.jsxs("div",{className:"reliability-stat-row",children:[s.jsx("span",{children:e("reliability.mergeAttempts.max","Max")}),s.jsx("strong",{children:t?.mergeAttempts.max??"—"})]}),s.jsxs("div",{className:"reliability-chart-section","data-testid":"reliability-merge-attempts-chart",children:[s.jsx("h4",{children:e("reliability.mergeAttemptsChart.heading","Attempts distribution")}),s.jsx(kt,{data:O,ariaLabel:e("reliability.mergeAttemptsChart.aria","Merge attempts histogram"),emptyLabel:e("reliability.mergeAttemptsChart.empty","No merge attempt data")})]}),s.jsx("ul",{className:"reliability-histogram",children:P.map(([S,A])=>s.jsxs("li",{children:[s.jsx("span",{children:S}),s.jsx("div",{className:"reliability-histogram-bar-wrap",children:s.jsx("div",{className:"reliability-histogram-bar",style:{width:`${Math.min(A*20,100)}%`}})}),s.jsx("strong",{children:A})]},S))}),s.jsxs("details",{className:"reliability-details",children:[s.jsx("summary",{children:e("reliability.mergeAttempts.moreStats","More stats")}),s.jsxs("div",{className:"reliability-details-content",children:[s.jsx("div",{children:e("reliability.mergeAttempts.tasksCounted","Tasks counted: {{count}}",{count:k})}),s.jsx("div",{children:e("reliability.mergeAttempts.histogramTotal","Histogram total: {{count}}",{count:k})}),t?.mergeAttempts.reason?s.jsx("div",{children:e("reliability.mergeAttempts.reason","Reason: {{reason}}",{reason:t.mergeAttempts.reason})}):null]})]})]})]}),d?s.jsx("div",{className:"modal-overlay open",role:"presentation",children:s.jsxs("div",{className:"modal",role:"dialog","aria-modal":"true","aria-labelledby":"reliability-reset-title",children:[s.jsx("div",{className:"modal-header",children:s.jsx("h2",{id:"reliability-reset-title",children:e("reliability.resetModal.title","Reset reliability stats?")})}),s.jsx("p",{children:e("reliability.resetModal.description","This sets a new baseline for reliability statistics. Historical events older than the reset time are excluded from counts but are not deleted.")}),m?s.jsx("div",{className:"form-error",children:m}):null,s.jsxs("div",{className:"modal-actions",children:[s.jsx("button",{className:"btn",onClick:()=>u(!1),children:e("common.cancel","Cancel")}),s.jsx("button",{className:"btn btn-danger",onClick:()=>{y().catch(S=>{h(S instanceof Error?S.message:e("reliability.resetModal.failedError","Failed to reset reliability stats"))})},children:e("reliability.resetModal.confirm","Confirm reset")})]})]})}):null]})}function Eo(e){const{lastSyncAt:t,remoteReachable:r,diff:n}=e,a=Object.values(n.workflowSettings).reduce((o,l)=>o+l.length,0),i=n.global.length+n.project.length+a;return t===null?{syncState:"never-synced",lastSyncAt:t,diffCount:0}:r?i>0?{syncState:"diff",lastSyncAt:t,diffCount:i}:{syncState:"synced",lastSyncAt:t,diffCount:0}:{syncState:"error",lastSyncAt:t,diffCount:i}}function Sl(e){if(e===null)return"Never synced";const t=new Date(e);if(Number.isNaN(t.getTime()))return"Never synced";const n=Date.now()-t.getTime(),a=Math.floor(n/1e3),i=Math.floor(a/60),o=Math.floor(i/60),l=Math.floor(o/24);return i<1?"Synced just now":i<60?`Synced ${i}m ago`:o<24?`Synced ${o}h ago`:`Synced ${l}d ago`}function u$(e){switch(e){case"synced":return"var(--color-success)";case"pending":return"var(--color-warning)";case"diff":return"var(--color-warning)";case"error":return"var(--color-error)";case"never-synced":return"var(--text-muted)"}}const d$=3e4;function f$(){const{t:e}=le("app"),[t,r]=f.useState({}),[n,a]=f.useState(!1),[i,o]=f.useState({}),[l,c]=f.useState(null),d=f.useRef(new Set),u=f.useRef(!1),m=f.useRef(null),h=f.useRef(null),v=f.useCallback(async(k,N)=>{try{const S=await Qx(k);r(A=>({...A,[k]:S})),c(null)}catch(S){console.error(`Failed to fetch sync status for node ${k}:`,S),c(S instanceof Error?S.message:e("nodeSync.error.failedToFetchStatus","Failed to fetch sync status"))}},[e]),y=f.useCallback(async()=>{const k=Array.from(d.current);if(k.length===0)return;m.current&&m.current.abort(),m.current=new AbortController;const N=!u.current;N&&a(!0),c(null);try{const S=await Promise.allSettled(k.map(_=>v(_,N)));u.current=!0,S.filter(_=>_.status==="rejected").length>0&&c(e("nodeSync.error.someRequestsFailed","Some sync status requests failed"))}catch(S){if(S instanceof Error&&S.name==="AbortError")return;c(S instanceof Error?S.message:e("nodeSync.error.failedToFetchStatus","Failed to fetch sync status")),u.current=!0}finally{a(!1)}},[v,e]),g=f.useCallback(()=>{h.current&&clearInterval(h.current),h.current=setInterval(()=>{y()},d$)},[y]),p=f.useCallback(()=>{h.current&&(clearInterval(h.current),h.current=null)},[]);f.useEffect(()=>(y(),g(),()=>{p(),m.current&&m.current.abort()}),[y,g,p]);const b=f.useCallback(k=>{d.current.has(k)||(d.current.add(k),v(k,!u.current))},[v]),j=f.useCallback(k=>{d.current.delete(k),r(N=>{const S={...N};return delete S[k],S}),d.current.size===0&&p()},[p]),x=f.useCallback(async k=>{o(N=>({...N,[k]:!0})),c(null);try{const N=await ej(k);return v(k,!1),!N.success&&N.error&&c(N.error),N}catch(N){const S=N instanceof Error?N.message:e("nodeSync.error.pushFailed","Push settings failed");throw c(S),N}finally{o(N=>{const S={...N};return delete S[k],S})}},[v,e]),C=f.useCallback(async k=>{o(N=>({...N,[k]:!0})),c(null);try{const N=await tj(k);return v(k,!1),!N.success&&N.error&&c(N.error),N}catch(N){const S=N instanceof Error?N.message:e("nodeSync.error.pullFailed","Pull settings failed");throw c(S),N}finally{o(N=>{const S={...N};return delete S[k],S})}},[v,e]),w=f.useCallback(async k=>{o(N=>({...N,[k]:!0})),c(null);try{return await rj(k)}catch(N){const S=N instanceof Error?N.message:e("nodeSync.error.authSyncFailed","Auth sync failed");throw c(S),N}finally{o(N=>{const S={...N};return delete S[k],S})}},[e]),P=f.useCallback(k=>t[k]?.authMatch,[t]),O=f.useCallback(k=>t[k]?.authDiff,[t]);return{syncStatusMap:t,loading:n,actionLoading:i,error:l,refresh:y,trackNode:b,untrackNode:j,pushSettings:x,pullSettings:C,syncAuth:w,getAuthSyncState:P,getAuthProviders:O}}const m$=1e4,v$=1e3;function h$(){const{t:e}=le("app"),[t,r]=f.useState([]),[n,a]=f.useState(!0),[i,o]=f.useState(null),l=f.useRef(null),c=f.useRef(0),d=f.useRef(t),u=sh();f.useEffect(()=>{d.current=t},[t]);const m=f.useCallback(v=>d.current.length>0&&oh(v,u.wasRecentlyHidden()),[u]),h=f.useCallback(async()=>{try{o(null);const v=await hu();r(v.nodes)}catch(v){const y=v instanceof Error?v.message:e("mesh.failedToFetchMeshState","Failed to fetch mesh state");m(y)||o(y)}},[m,e]);return f.useEffect(()=>{let v=!1;async function y(){a(!0);try{const p=await hu();v||(r(p.nodes),o(null))}catch(p){const b=p instanceof Error?p.message:e("mesh.failedToFetchMeshState","Failed to fetch mesh state");!v&&!m(b)&&o(b)}finally{v||a(!1)}}y();const g=()=>{if(document.visibilityState!=="visible")return;const p=Date.now(),b=p-c.current;if(b<v$){Aa({view:"useMeshState",trigger:"visibility",projectId:void 0,replayAttempted:!1,reason:"debounce-skipped",detail:{timeSinceLastRefreshMs:b}});return}c.current=p,Aa({view:"useMeshState",trigger:"visibility",projectId:void 0,replayAttempted:!1,reason:"debounced-refresh"}),h()};return document.addEventListener("visibilitychange",g),()=>{v=!0,document.removeEventListener("visibilitychange",g)}},[h,m,e]),f.useEffect(()=>{if(!n)return l.current=setInterval(()=>{h()},m$),()=>{l.current&&(clearInterval(l.current),l.current=null)}},[n,h]),{meshState:t,loading:n,error:i,refresh:h}}function p$(e){return{online:{label:e("nodes.status.online","Online"),color:"var(--color-success)",className:"node-card__status--online"},offline:{label:e("nodes.status.offline","Offline"),color:"var(--color-error)",className:"node-card__status--offline"},connecting:{label:e("nodes.status.connecting","Connecting"),color:"var(--color-warning)",className:"node-card__status--connecting"},error:{label:e("nodes.status.error","Error"),color:"var(--color-error)",className:"node-card__status--error"},creating:{label:e("nodes.status.creating","Creating"),color:"var(--color-warning)",className:"node-card__status--creating"},recreating:{label:e("nodes.status.recreating","Recreating"),color:"var(--color-warning)",className:"node-card__status--recreating"},deleting:{label:e("nodes.status.deleting","Deleting"),color:"var(--color-error)",className:"node-card__status--deleting"},running:{label:e("nodes.status.running","Running"),color:"var(--color-success)",className:"node-card__status--online"},stopped:{label:e("nodes.status.stopped","Stopped"),color:"var(--color-error)",className:"node-card__status--offline"},exited:{label:e("nodes.status.exited","Exited"),color:"var(--color-error)",className:"node-card__status--offline"}}}const y$={match:"var(--color-success)",differs:"var(--color-warning)","not-synced":"var(--text-muted)"};function g$(e,t,r){if(e==="match")return r?r("nodes.auth.match","Auth credentials match"):"Auth credentials match";if(e==="not-synced")return r?r("nodes.auth.notSynced","Auth not synced"):"Auth not synced";if(t&&Object.keys(t).length>0){const n=Object.entries(t).filter(([,a])=>a==="differs").map(([a])=>a);if(n.length>0)return r?r("nodes.auth.differProviders","Auth credentials differ: {{providers}}",{providers:n.join(", ")}):`Auth credentials differ: ${n.join(", ")}`}return r?r("nodes.auth.differ","Auth credentials differ"):"Auth credentials differ"}function b$(e,t=42){return e.length<=t?e:`${e.slice(0,t-3)}...`}function x$(e,t){const r=e.node,n=t.node;if(r.id!==n.id||r.name!==n.name||r.type!==n.type||r.url!==n.url||r.status!==n.status||r.maxConcurrent!==n.maxConcurrent||r.updatedAt!==n.updatedAt||e.isLoading!==t.isLoading)return!1;const a=e.managedDockerNode,i=t.managedDockerNode;if(!!a!=!!i||a&&i&&(a.id!==i.id||a.status!==i.status||a.imageTag!==i.imageTag||a.updatedAt!==i.updatedAt))return!1;const o=e.syncStatus,l=t.syncStatus;if(!(!o&&!l)){if(!o||!l)return!1;if(o.syncState!==l.syncState||o.lastSyncAt!==l.lastSyncAt||o.diffCount!==l.diffCount)return!1}if(e.authSyncState!==t.authSyncState)return!1;const c=e.authSyncProviders,d=t.authSyncProviders;if(c!==d){if(!c||!d)return!1;{const h=Object.keys(c),v=Object.keys(d);if(h.length!==v.length||h.some(y=>c[y]!==d[y]))return!1}}const u=To(e.projects,r),m=To(t.projects,n);return u===m}function j$({node:e,projects:t,onHealthCheck:r,onEdit:n,onRemove:a,isLoading:i=!1,syncStatus:o,authSyncState:l,authSyncProviders:c,managedDockerNode:d}){const{t:u}=le("app"),[m,h]=f.useState(!1),v=p$(u),y=v[e.status]??v.offline,g=d?v[d.status]??v.error:null,p=d?.hostConfig.type==="remote"?u("nodes.dockerHost.remote","Remote: {{host}}",{host:d.hostConfig.host??"unknown"}):u("nodes.dockerHost.local","Local Docker"),b=f.useMemo(()=>To(t,e),[t,e]),j=f.useCallback(()=>{n(e)},[n,e]),x=f.useCallback(O=>{O.stopPropagation(),r(e.id)},[r,e.id]),C=f.useCallback(O=>{O.stopPropagation(),n(e)},[n,e]),w=f.useCallback(O=>{if(O.stopPropagation(),!m){h(!0);return}a(e.id),h(!1)},[m,a,e.id]),P=f.useCallback(O=>{(O.key==="Enter"||O.key===" ")&&(O.preventDefault(),n(e))},[n,e]);return s.jsxs("article",{className:`node-card ${i?"node-card--loading":""}`,"data-node-id":e.id,role:"button",tabIndex:0,onClick:j,onKeyDown:P,children:[s.jsx("header",{className:"node-card__header",children:s.jsxs("div",{className:"node-card__title-wrap",children:[s.jsx("div",{className:"node-card__icon",children:s.jsx(lh,{size:18})}),s.jsxs("div",{children:[s.jsx("h3",{className:"node-card__name",title:e.name,children:e.name}),s.jsxs("div",{className:"node-card__meta-row",children:[s.jsx("span",{className:"node-card__type-badge",children:e.type==="local"?u("nodes.type.local","Local"):u("nodes.type.remote","Remote")}),d&&s.jsxs("span",{className:"node-card__docker-badge",title:u("nodes.dockerBadge","Managed Docker node"),children:[s.jsx(Io,{size:12,"aria-hidden":!0}),u("nodes.dockerLabel","Docker")]}),s.jsxs("span",{className:`node-card__status ${y.className}`,style:{color:y.color},"data-status":e.status,children:[s.jsx("span",{className:"node-card__status-indicator",style:{backgroundColor:y.color},"aria-hidden":!0}),y.label]}),d&&g&&s.jsxs("span",{className:`node-card__status ${g.className}`,style:{color:g.color},"data-status":d.status,children:[s.jsx("span",{className:"node-card__status-indicator",style:{backgroundColor:g.color},"aria-hidden":!0}),g.label]}),e.type==="remote"&&l&&s.jsx("span",{className:`node-card__auth-indicator node-card__auth-indicator--${l}`,title:g$(l,c,u),"aria-label":u("nodes.authSync.label","Auth sync: {{status}}",{status:l==="match"?u("nodes.authSync.match","credentials match"):l==="differs"?u("nodes.authSync.differ","credentials differ"):u("nodes.authSync.notSynced","not synced")}),style:{color:y$[l]},children:s.jsx(ch,{size:14})})]})]})]})}),s.jsxs("div",{className:"node-card__body",children:[e.type==="remote"&&e.url&&s.jsx("div",{className:"node-card__url",title:e.url,children:b$(e.url)}),d&&s.jsxs("div",{className:"node-card__docker-meta",children:[s.jsxs("span",{title:`${d.imageName}:${d.imageTag}`,children:[d.imageName,":",d.imageTag]}),s.jsx("span",{title:p,children:p})]}),s.jsxs("div",{className:"node-card__metrics",children:[s.jsxs("div",{className:"node-card__metric",children:[s.jsx("span",{className:"node-card__metric-label",children:u("nodes.metrics.projects","Projects")}),s.jsx("span",{className:"node-card__metric-value",children:b})]}),s.jsxs("div",{className:"node-card__metric",children:[s.jsx("span",{className:"node-card__metric-label",children:u("nodes.metrics.concurrency","Concurrency")}),s.jsx("span",{className:"node-card__metric-value",children:e.maxConcurrent})]})]}),e.type==="remote"&&o&&s.jsxs("div",{className:"node-card__sync","data-sync-state":o.syncState,"data-testid":"node-card-sync",children:[s.jsx("span",{className:"node-card__sync-dot",style:{backgroundColor:u$(o.syncState)},"aria-hidden":!0}),s.jsx("span",{className:"node-card__sync-time",children:Sl(o.lastSyncAt)})]})]}),s.jsxs("footer",{className:"node-card__actions",children:[s.jsxs("button",{className:"btn btn-sm node-card__action",type:"button",onClick:x,disabled:i,"aria-label":u("nodes.actions.health.ariaLabel","Run node health check"),title:u("nodes.actions.health.title","Health Check"),children:[s.jsx(uh,{size:14}),s.jsx("span",{children:u("nodes.actions.health.label","Health")})]}),s.jsxs("button",{className:"btn btn-sm node-card__action",type:"button",onClick:C,disabled:i,"aria-label":u("nodes.actions.edit.ariaLabel","Edit node"),title:u("nodes.actions.edit.title","Edit"),children:[s.jsx(nj,{size:14}),s.jsx("span",{children:u("nodes.actions.edit.label","Edit")})]}),d&&s.jsxs(s.Fragment,{children:[s.jsxs("button",{className:"btn btn-sm node-card__action",type:"button",disabled:!0,"aria-label":u("nodes.actions.start.ariaLabel","Start node container"),title:u("nodes.actions.start.title","Available after FN-3113"),children:[s.jsx(Il,{size:14}),s.jsx("span",{children:u("nodes.actions.start.label","Start")})]}),s.jsxs("button",{className:"btn btn-sm node-card__action",type:"button",disabled:!0,"aria-label":u("nodes.actions.stop.ariaLabel","Stop node container"),title:u("nodes.actions.stop.title","Available after FN-3113"),children:[s.jsx(dh,{size:14}),s.jsx("span",{children:u("nodes.actions.stop.label","Stop")})]}),s.jsxs("button",{className:"btn btn-sm node-card__action",type:"button",disabled:!0,"aria-label":u("nodes.actions.restart.ariaLabel","Restart node container"),title:u("nodes.actions.restart.title","Available after FN-3113"),children:[s.jsx(aj,{size:14}),s.jsx("span",{children:u("nodes.actions.restart.label","Restart")})]})]}),s.jsxs("button",{className:`btn btn-sm node-card__action node-card__action--remove ${m?"btn-danger is-armed":""}`,type:"button",onClick:w,disabled:i,"aria-label":m?u("nodes.actions.remove.ariaLabelConfirm","Confirm remove node"):u("nodes.actions.remove.ariaLabel","Remove node"),title:m?u("nodes.actions.remove.titleConfirm","Confirm remove"):u("nodes.actions.remove.title","Remove"),children:[s.jsx(Do,{size:14}),s.jsx("span",{children:m?u("nodes.actions.remove.labelConfirm","Confirm"):u("nodes.actions.remove.label","Remove")})]})]})]})}const w$=f.memo(j$,x$),wn={online:"var(--success, var(--color-success))",offline:"var(--text-dim)",connecting:"var(--color-warning)",error:"var(--color-error)"},xa=28,C$=12,k$=300,P$=120;function S$({nodes:e,className:t}){const{t:r}=le("app"),n=f.useMemo(()=>e.find(u=>u.nodeType==="local")??e[0],[e]),a=f.useMemo(()=>e.filter(u=>u.nodeId!==n?.nodeId),[e,n?.nodeId]),i=f.useMemo(()=>k$+Math.max(0,a.length-4)*20,[a.length]),o=i/2,l=i/2,c=f.useMemo(()=>{const u=new Map;if(n&&u.set(n.nodeId,{x:o,y:l,node:n}),a.length>0){const m=Math.min(P$,i/2-xa-10),h=2*Math.PI/a.length,v=-Math.PI/2;a.forEach((y,g)=>{const p=v+g*h;u.set(y.nodeId,{node:y,x:o+m*Math.cos(p),y:l+m*Math.sin(p)})})}return u},[o,l,n,a,i]),d=f.useMemo(()=>{const u=new Set,m=[];for(const h of e){const v=c.get(h.nodeId);if(v)for(const y of h.knownPeers){const g=c.get(y.peerNodeId);if(!g)continue;const p=[h.nodeId,y.peerNodeId].sort().join("::");u.has(p)||(u.add(p),m.push({key:p,from:v,to:g}))}}return m},[c,e]);return e.length===0?s.jsx("div",{className:`mesh-topology mesh-topology--empty ${t??""}`,children:s.jsx("div",{className:"mesh-topology__empty-state",children:s.jsx("p",{children:r("mesh.noNodes","No nodes to display")})})}):s.jsxs("div",{className:`mesh-topology ${t??""}`,children:[s.jsxs("svg",{className:"mesh-topology__svg",viewBox:`0 0 ${i} ${i}`,preserveAspectRatio:"xMidYMid meet","aria-label":r("mesh.ariaLabel","Node mesh topology visualization"),children:[d.map(u=>s.jsx("line",{className:"mesh-topology__link mesh-topology__peer-line",x1:u.from.x,y1:u.from.y,x2:u.to.x,y2:u.to.y},u.key)),Array.from(c.values()).map(({node:u,x:m,y:h})=>s.jsxs("g",{className:"mesh-topology__node",transform:`translate(${m}, ${h})`,children:[s.jsx("circle",{className:"mesh-topology__node-circle",r:xa,fill:wn[u.status],"aria-label":`${u.nodeName} (${u.status})`}),s.jsx("text",{className:"mesh-topology__node-label",y:xa+C$,textAnchor:"middle",children:u.nodeName.length>12?`${u.nodeName.slice(0,10)}…`:u.nodeName}),s.jsxs("g",{className:"mesh-topology__node-type",transform:`translate(0 ${-xa-10})`,children:[s.jsx("circle",{className:"mesh-topology__node-type-badge",r:"8"}),s.jsx("text",{className:"mesh-topology__node-type-text",textAnchor:"middle",dominantBaseline:"middle",children:u.nodeType==="local"?"L":"R"})]})]},u.nodeId))]}),s.jsxs("div",{className:"mesh-topology__legend",children:[s.jsxs("div",{className:"mesh-topology__legend-item",children:[s.jsx("span",{className:"mesh-topology__legend-dot",style:{background:wn.online}}),s.jsx("span",{children:r("mesh.online","Online")})]}),s.jsxs("div",{className:"mesh-topology__legend-item",children:[s.jsx("span",{className:"mesh-topology__legend-dot",style:{background:wn.offline}}),s.jsx("span",{children:r("mesh.offline","Offline")})]}),s.jsxs("div",{className:"mesh-topology__legend-item",children:[s.jsx("span",{className:"mesh-topology__legend-dot",style:{background:wn.connecting}}),s.jsx("span",{children:r("mesh.connecting","Connecting")})]}),s.jsxs("div",{className:"mesh-topology__legend-item",children:[s.jsx("span",{className:"mesh-topology__legend-dot",style:{background:wn.error}}),s.jsx("span",{children:r("mesh.error","Error")})]})]}),d.length===0&&s.jsx("p",{className:"mesh-topology__notice",children:r("mesh.noPeers","Peer-to-peer discovery data unavailable.")})]})}const N$=f.memo(S$),Nl=1,Ol=10;function O$(e,t){const r={projectMappings:{}};e.name.trim()||(r.name=t("nodes.nameRequired","Name is required")),e.type==="remote"&&!e.url?.trim()&&(r.url=t("nodes.urlRequired","URL is required for remote nodes")),(!Number.isFinite(e.maxConcurrent)||e.maxConcurrent<Nl||e.maxConcurrent>Ol)&&(r.maxConcurrent=t("nodes.concurrencyRange","Concurrency must be between {{min}} and {{max}}",{min:Nl,max:Ol}));for(const n of e.projectMappings){const a=o0(n.path);a.valid||(r.projectMappings[n.projectId]=a.error??t("nodes.pathInvalid","Path is invalid"))}return r}function A$({isOpen:e,onClose:t,onSubmit:r,onDiscoverRemoteProjects:n,addToast:a,projects:i}){const{t:o}=le("app");ij(e);const[l,c]=f.useState(""),[d,u]=f.useState("local"),[m,h]=f.useState(""),[v,y]=f.useState(""),[g,p]=f.useState(2),[b,j]=f.useState("auto-generate"),[x,C]=f.useState({}),[w,P]=f.useState({projectMappings:{}}),[O,k]=f.useState(!1),[N,S]=f.useState("idle"),[A,_]=f.useState(null),[I,D]=f.useState([]),F=f.useCallback(()=>{c(""),u("local"),h(""),y(""),p(2),j("auto-generate"),C({}),P({projectMappings:{}}),k(!1),S("idle"),_(null),D([])},[]),V=f.useCallback(()=>{O||(F(),t())},[O,t,F]);f.useEffect(()=>{if(!e){F();return}const B=X=>{X.key==="Escape"&&(X.preventDefault(),V())};return document.addEventListener("keydown",B),()=>{document.removeEventListener("keydown",B)}},[V,e,F]);const U=f.useMemo(()=>({name:l.trim(),type:d,url:d==="remote"&&m.trim()||void 0,apiKey:d==="remote"&&b==="provide"&&v||void 0,maxConcurrent:g,apiKeyMode:b,projectMappings:Object.entries(x).map(([B,X])=>({projectId:B,path:X.trim()}))}),[v,b,g,l,x,d,m]),te=f.useCallback(async()=>{if(O||N==="loading")return;const B=m.trim();if(!B){P(X=>({...X,url:o("nodes.urlRequired","URL is required for remote nodes")}));return}S("loading"),_(null);try{const X=await n({url:B,apiKey:b==="provide"&&v.trim().length>0?v:void 0});D(X.projects),S("success"),C(Q=>{if(Object.keys(Q).length===0)return Q;const G={...Q};for(const ie of i){if(!(ie.id in G))continue;const se=X.projects.filter(re=>re.name===ie.name);se.length===1&&(G[ie.id]=se[0].path)}return G})}catch(X){S("error"),D([]),_(X instanceof Error?X.message:o("nodes.discoveryFailed","Failed to discover remote projects"))}},[v,b,N,O,n,i,o,m]);f.useEffect(()=>{if(d!=="remote"){S("idle"),_(null),D([]);return}S("idle"),_(null),D([])},[v,b,d,m]);const q=f.useCallback(async()=>{if(O)return;const B=O$(U,o);if(P(B),!(B.name||B.url||B.maxConcurrent||Object.keys(B.projectMappings).length>0)){if(U.type==="remote"&&N!=="success"){_(o("nodes.discoverBeforeAdding","Discover remote projects before adding this node."));return}k(!0);try{await r(U),a(o("nodes.registered",'Node "{{name}}" registered',{name:U.name}),"success"),V()}catch(X){const Q=X instanceof Error?X.message:o("nodes.registerFailed","Failed to register node");a(Q,"error")}finally{k(!1)}}},[a,V,N,U,O,r,o]),ee=B=>{C(X=>{if(B.id in X){const{[B.id]:Q,...G}=X;return G}if(d==="remote"&&N==="success"){const Q=I.filter(G=>G.name===B.name);return Q.length===1?{...X,[B.id]:Q[0].path}:{...X,[B.id]:""}}return{...X,[B.id]:B.path}})},L=(B,X)=>{C(Q=>({...Q,[B]:X}))};return e?s.jsx("div",{className:"modal-overlay open",onClick:V,children:s.jsxs("div",{className:"modal modal-md add-node-modal",onClick:B=>B.stopPropagation(),role:"dialog","aria-modal":"true","aria-label":o("nodes.addNode","Add Node"),children:[s.jsxs("div",{className:"modal-header",children:[s.jsx("h3",{children:o("nodes.addNode","Add Node")}),s.jsx("button",{className:"modal-close",onClick:V,disabled:O,"aria-label":o("nodes.closeNodeModal","Close add node modal"),children:"×"})]}),s.jsxs("div",{className:"modal-body add-node-modal__body",children:[s.jsx("p",{className:"add-node-modal__description",children:o("nodes.description","Register an existing Fusion node by providing its connection details and concurrency settings.")}),s.jsxs("label",{className:"add-node-modal__field",children:[s.jsx("span",{children:o("nodes.name","Name")}),s.jsx("input",{className:"input",type:"text",value:l,onChange:B=>c(B.target.value),placeholder:o("nodes.namePlaceholder","Build Machine"),disabled:O,"aria-invalid":!!w.name,autoFocus:!0}),w.name&&s.jsx("span",{className:"form-error add-node-modal__error",children:w.name})]}),s.jsxs("div",{className:"add-node-modal__type-toggle",children:[s.jsx("button",{type:"button",className:`add-node-modal__type-btn ${d==="local"?"active":""}`,"data-type":"local",onClick:()=>u("local"),disabled:O,"aria-pressed":d==="local",children:o("nodes.local","Local")}),s.jsx("button",{type:"button",className:`add-node-modal__type-btn ${d==="remote"?"active":""}`,"data-type":"remote",onClick:()=>u("remote"),disabled:O,"aria-pressed":d==="remote",children:o("nodes.remote","Remote")})]}),d==="remote"&&s.jsxs("div",{className:"add-node-modal__remote-fields","data-testid":"remote-fields-container","data-visible":!0,children:[s.jsxs("label",{className:"add-node-modal__field",children:[s.jsx("span",{children:o("nodes.reachableUrl","Reachable URL / Hostname")}),s.jsx("input",{className:"input",type:"text",value:m,onChange:B=>h(B.target.value),placeholder:"https://node.example.com",disabled:O,"aria-invalid":!!w.url}),w.url&&s.jsx("span",{className:"form-error add-node-modal__error",children:w.url})]}),s.jsxs("label",{className:"add-node-modal__field",children:[s.jsx("span",{children:o("nodes.apiKeyMode","API Key Mode")}),s.jsxs("select",{className:"select",value:b,onChange:B=>j(B.target.value),disabled:O,children:[s.jsx("option",{value:"auto-generate",children:o("nodes.autoGenerate","Auto-generate")}),s.jsx("option",{value:"provide",children:o("nodes.provideManually","Provide key manually")})]})]}),b==="provide"&&s.jsxs("label",{className:"add-node-modal__field",children:[s.jsx("span",{children:o("nodes.apiKey","API Key")}),s.jsx("input",{className:"input",type:"password",value:v,onChange:B=>y(B.target.value),placeholder:o("nodes.apiKeyPlaceholder","Enter node API key"),disabled:O})]}),s.jsxs("div",{className:"add-node-modal__discovery-actions",children:[s.jsx("button",{type:"button",className:"btn btn-sm",onClick:()=>void te(),disabled:O||N==="loading",children:N==="loading"?o("nodes.discovering","Discovering..."):o("nodes.discoverRemoteProjects","Discover Remote Projects")}),N==="success"&&s.jsx("span",{className:"add-node-modal__discovery-state","data-state":"success",children:I.length>0?o("nodes.discoveredCount","Discovered {{count}} remote project{{plural}}",{count:I.length,plural:I.length===1?"":"s"}):o("nodes.noProjectsDiscovered","No projects discovered on remote node.")}),N==="error"&&A&&s.jsx("span",{className:"form-error add-node-modal__error",children:A}),N==="idle"&&s.jsx("span",{className:"add-node-modal__hint",children:o("nodes.discoverBeforeAdding","Discover remote projects before adding this node.")})]}),N==="success"&&I.length>0&&s.jsx("div",{className:"add-node-modal__discovered-list","aria-label":o("nodes.discoveredRemoteProjectsLabel","Discovered remote projects"),children:I.map(B=>s.jsxs("div",{className:"card add-node-modal__discovered-card",children:[s.jsxs("div",{className:"add-node-modal__discovered-row",children:[s.jsx("strong",{children:B.name}),s.jsx("span",{className:"card-status-badge card-status-badge--in-review",children:B.status})]}),s.jsx("div",{className:"add-node-modal__hint",children:B.path})]},`${B.id}-${B.path}`))})]}),s.jsxs("label",{className:"add-node-modal__field",children:[s.jsx("span",{children:o("nodes.maxConcurrent","Max Concurrent")}),s.jsx("input",{className:"input",type:"number",min:Nl,max:Ol,value:g,onChange:B=>p(Number(B.target.value)),disabled:O,"aria-invalid":!!w.maxConcurrent}),s.jsx("span",{className:"add-node-modal__hint",children:o("nodes.maxConcurrentHint","Max simultaneous task agents (1–10)")}),w.maxConcurrent&&s.jsx("span",{className:"form-error add-node-modal__error",children:w.maxConcurrent})]}),s.jsxs("section",{className:"add-node-modal__projects","aria-label":o("nodes.projectPathMappingsLabel","Project path mappings"),children:[s.jsx("h4",{className:"add-node-modal__projects-title",children:o("nodes.attachProjects","Attach Existing Projects")}),s.jsx("p",{className:"add-node-modal__hint",children:o("nodes.attachProjectsHint","Select existing projects to run on this node and provide the node-specific absolute path for each one.")}),i.length===0?s.jsx("p",{className:"add-node-modal__hint",children:o("nodes.noProjects","No projects are currently registered.")}):s.jsx("div",{className:"add-node-modal__project-list",children:i.map(B=>{const X=B.id in x,Q=w.projectMappings[B.id];return s.jsxs("div",{className:"card add-node-modal__project-card",children:[s.jsxs("label",{className:"checkbox-label add-node-modal__project-toggle",children:[s.jsx("input",{type:"checkbox",checked:X,onChange:()=>ee(B),disabled:O}),s.jsx("span",{children:B.name})]}),X&&s.jsxs("label",{className:"add-node-modal__field",children:[s.jsx("span",{children:o("nodes.pathOnNode","Path on this node")}),d==="remote"&&N==="success"&&s.jsx("span",{className:"add-node-modal__hint",children:(()=>{const G=I.filter(ie=>ie.name===B.name);return G.length===1?o("nodes.pathDiscovered","Remote-authoritative path discovered: {{path}}",{path:G[0].path}):G.length>1?o("nodes.multipleMatches","Multiple remote projects matched this name. Enter the correct path manually."):o("nodes.noMatch","No exact remote name match. Enter this path manually.")})()}),s.jsx("input",{className:"input",type:"text",value:x[B.id]??"",onChange:G=>L(B.id,G.target.value),disabled:O,placeholder:"/absolute/path/to/project","aria-invalid":!!Q}),Q&&s.jsx("span",{className:"form-error add-node-modal__error",children:Q})]})]},B.id)})})]})]}),s.jsxs("div",{className:"modal-actions",children:[s.jsx("button",{className:"btn btn-sm",onClick:V,disabled:O,children:o("common.cancel","Cancel")}),s.jsx("button",{className:"btn btn-primary btn-sm","data-testid":"add-node-submit",onClick:q,disabled:O,children:O?o("nodes.adding","Adding..."):o("nodes.addNode","Add Node")})]})]})}):null}function E$(){const[e,t]=f.useState([]),[r,n]=f.useState(!1),[a,i]=f.useState(null),[o,l]=f.useState(!1),[c,d]=f.useState(null),[u,m]=f.useState(!1),h=f.useCallback(async()=>{n(!0),i(null);try{const g=await fetch("/api/docker/contexts");if(!g.ok)throw new Error(`Failed to load Docker contexts (${g.status})`);const p=await g.json();return t(p),p}catch(g){const p=g instanceof Error?g.message:String(g);throw i(p),g}finally{n(!1)}},[]),v=f.useCallback(async g=>{l(!0);try{const p=await fetch("/api/docker/test-connection",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({hostConfig:g})});if(!p.ok)throw new Error(`Failed to test Docker connection (${p.status})`);const b=await p.json();return d(b),b}finally{l(!1)}},[]),y=f.useCallback(async()=>{m(!0);try{const g=await fetch("/api/docker/local-available");if(!g.ok)throw new Error(`Failed to check local Docker availability (${g.status})`);return await g.json()}finally{m(!1)}},[]);return{contexts:e,isLoadingContexts:r,contextsError:a,loadContexts:h,isTestingConnection:o,lastTestResult:c,testConnection:v,isCheckingLocal:u,checkLocalDocker:y}}function _$({value:e,onChange:t}){const{t:r}=le("app"),[n,a]=f.useState(!!(e?.tlsCaPath||e?.tlsCertPath||e?.tlsKeyPath||e?.tlsVerify));f.useEffect(()=>{n||t({tlsVerify:void 0,tlsCaPath:void 0,tlsCertPath:void 0,tlsKeyPath:void 0})},[n,t]);const i=f.useMemo(()=>({tlsVerify:e?.tlsVerify??!0,tlsCaPath:e?.tlsCaPath??"",tlsCertPath:e?.tlsCertPath??"",tlsKeyPath:e?.tlsKeyPath??""}),[e]);return s.jsxs("div",{className:"docker-tls-config",children:[s.jsxs("label",{className:"checkbox-label",children:[s.jsx("input",{type:"checkbox",checked:n,onChange:o=>a(o.target.checked)}),r("docker.useTls","Use TLS")]}),n&&s.jsxs("div",{className:"docker-tls-config__fields",children:[s.jsxs("div",{className:"docker-tls-config__field",children:[s.jsx("label",{htmlFor:"docker-tls-ca-path",children:r("docker.caPath","CA Certificate Path")}),s.jsx("input",{id:"docker-tls-ca-path",className:"input",value:i.tlsCaPath,onChange:o=>t({...i,tlsCaPath:o.target.value}),placeholder:"/etc/docker/ca.pem"})]}),s.jsxs("div",{className:"docker-tls-config__field",children:[s.jsx("label",{htmlFor:"docker-tls-cert-path",children:r("docker.certPath","Client Certificate Path")}),s.jsx("input",{id:"docker-tls-cert-path",className:"input",value:i.tlsCertPath,onChange:o=>t({...i,tlsCertPath:o.target.value}),placeholder:"/etc/docker/cert.pem"})]}),s.jsxs("div",{className:"docker-tls-config__field",children:[s.jsx("label",{htmlFor:"docker-tls-key-path",children:r("docker.keyPath","Client Key Path")}),s.jsx("input",{id:"docker-tls-key-path",className:"input",value:i.tlsKeyPath,onChange:o=>t({...i,tlsKeyPath:o.target.value}),placeholder:"/etc/docker/key.pem"})]}),s.jsxs("label",{className:"checkbox-label",children:[s.jsx("input",{type:"checkbox",checked:i.tlsVerify,onChange:o=>t({...i,tlsVerify:o.target.checked})}),r("docker.verifyTls","Verify TLS Certificate")]})]})]})}function M$({value:e,onChange:t,onError:r}){const{t:n}=le("app"),a=e?.context?"context":e?.host?"host":"local",[i,o]=f.useState(a),[l,c]=f.useState(e?.context??""),[d,u]=f.useState(e?.host??""),[m,h]=f.useState(null),{contexts:v,isLoadingContexts:y,contextsError:g,loadContexts:p,testConnection:b,isTestingConnection:j,lastTestResult:x,checkLocalDocker:C,isCheckingLocal:w}=E$(),P=f.useMemo(()=>({tlsVerify:e?.tlsVerify,tlsCaPath:e?.tlsCaPath,tlsCertPath:e?.tlsCertPath,tlsKeyPath:e?.tlsKeyPath}),[e]);f.useEffect(()=>{if(i==="local"){t({});return}if(i==="context"){p().catch(k=>r?.(k instanceof Error?k.message:String(k))),t(l?{context:l}:{});return}t({host:d,...P})},[i]);const O=f.useCallback(k=>{i==="host"&&t({host:d,...k})},[d,i,t]);return s.jsxs("div",{className:"docker-target-selector",children:[s.jsxs("div",{className:"docker-target-selector__modes",role:"group","aria-label":n("docker.targetMode","Docker target mode"),children:[s.jsx("button",{type:"button",className:`btn btn-sm ${i==="local"?"docker-target-selector__mode-active":""}`,onClick:()=>{o("local"),C().then(k=>{if(k.available){const N=k.version?` (${k.version})`:"";h(n("docker.available","Docker is available{{version}}",{version:N}))}else{const N=k.error?`: ${k.error}`:"";h(n("docker.notFound","Docker not found{{error}}",{error:N}))}}).catch(k=>{const N=k instanceof Error?k.message:String(k);h(n("docker.notFoundError","Docker not found: {{message}}",{message:N})),r?.(N)})},children:n("docker.local","Local Docker")}),s.jsx("button",{type:"button",className:`btn btn-sm ${i==="context"?"docker-target-selector__mode-active":""}`,onClick:()=>o("context"),children:n("docker.context","Docker Context")}),s.jsx("button",{type:"button",className:`btn btn-sm ${i==="host"?"docker-target-selector__mode-active":""}`,onClick:()=>o("host"),children:n("docker.remote","Remote Host")})]}),i==="local"&&m&&s.jsx("div",{className:"docker-target-selector__status",children:m}),i==="context"&&s.jsxs("div",{className:"docker-target-selector__panel",children:[s.jsxs("div",{className:"docker-target-selector__context-row",children:[s.jsxs("select",{className:"select",value:l,onChange:k=>{const N=k.target.value;c(N),t(N?{context:N}:{})},children:[s.jsx("option",{value:"",children:n("docker.selectContext","Select context")}),v.map(k=>s.jsxs("option",{value:k.name,children:[k.name,k.isCurrentContext?" (current)":"",k.dockerHost?` — ${k.dockerHost}`:""]},k.name))]}),s.jsx("button",{type:"button",className:"btn btn-sm btn-icon",onClick:()=>void p(),disabled:y,"aria-label":n("docker.refreshContexts","Refresh contexts"),children:s.jsx(Gr,{size:14})})]}),g&&s.jsx("div",{className:"docker-target-selector__error",children:g})]}),i==="host"&&s.jsxs("div",{className:"docker-target-selector__panel",children:[s.jsxs("div",{className:"docker-target-selector__field",children:[s.jsx("label",{htmlFor:"docker-target-selector-host",children:n("docker.host","Docker Host")}),s.jsx("input",{id:"docker-target-selector-host",className:"input",placeholder:n("docker.hostPlaceholder","tcp://host:2376"),value:d,onChange:k=>{const N=k.target.value;u(N),t({host:N,...P})}})]}),s.jsx(_$,{value:P,onChange:O})]}),s.jsx("button",{type:"button",className:"btn btn-sm",onClick:()=>void b(i==="local"?void 0:i==="context"?{context:l}:{host:d,...P}),disabled:j||w,children:j?n("docker.testing","Testing..."):n("docker.testConnection","Test Connection")}),x&&s.jsx("div",{className:x.success?"docker-target-selector__success":"docker-target-selector__error",children:x.success?n("docker.connected","Connected{{version}}",{version:x.dockerVersion?` (Docker ${x.dockerVersion})`:""}):x.error??n("docker.connectionFailed","Connection failed")})]})}const _o="http://localhost:4040",Qv={readWrite:"rw",readOnly:"ro"};function T$({isOpen:e,onClose:t,onSubmit:r,addToast:n}){const{t:a}=le("app"),[i,o]=f.useState(""),[l,c]=f.useState({}),[d,u]=f.useState(_o),[m,h]=f.useState("auto"),[v,y]=f.useState(""),[g,p]=f.useState(!1),[b,j]=f.useState(!1),[x,C]=f.useState(!0),[w,P]=f.useState(4096),[O,k]=f.useState(2),[N,S]=f.useState(!1),[A,_]=f.useState("runfusion/fusion"),[I,D]=f.useState("latest"),[F,V]=f.useState([]),[U,te]=f.useState([]),[q,ee]=f.useState({}),[L,B]=f.useState(!1),X=f.useCallback(()=>{o(""),c({}),u(_o),h("auto"),y(""),p(!1),j(!1),C(!0),P(4096),k(2),S(!1),_("runfusion/fusion"),D("latest"),V([]),te([]),ee({}),B(!1)},[]),Q=f.useCallback(()=>{L||(X(),t())},[t,X,L]);f.useEffect(()=>{if(!e){X();return}const z=fe=>{fe.key==="Escape"&&(fe.preventDefault(),Q())};return document.addEventListener("keydown",z),()=>document.removeEventListener("keydown",z)},[Q,e,X]);const G=f.useMemo(()=>({nodeId:null,name:i.trim(),imageName:A.trim()||"runfusion/fusion",imageTag:I.trim()||"latest",hostConfig:{context:l.context?.trim()||void 0,host:l.host?.trim()||void 0,tlsVerify:l.tlsVerify,tlsCaPath:l.tlsCaPath?.trim()||void 0,tlsCertPath:l.tlsCertPath?.trim()||void 0,tlsKeyPath:l.tlsKeyPath?.trim()||void 0},envVars:Object.fromEntries(F.map(z=>[z.key.trim(),z.value]).filter(([z])=>!!z)),volumeMounts:U.map(z=>({hostPath:z.hostPath.trim(),containerPath:z.containerPath.trim(),mode:z.mode})).filter(z=>z.hostPath&&z.containerPath),resourceSizing:{memoryMB:w,cpus:O},extraClis:[g?"claude-cli":null,b?"droid-cli":null].filter(Boolean),persistentStorage:x,reachableUrl:d.trim()||null,apiKey:m==="manual"&&v.trim()||null}),[v,m,O,l,F,A,I,g,b,w,U,i,x,d]),ie=f.useCallback(()=>{V(z=>[...z,{key:"",value:""}])},[]),se=f.useCallback((z,fe)=>{V(be=>be.map((ye,nt)=>nt===z?fe:ye))},[]),re=f.useCallback(z=>{V(fe=>fe.filter((be,ye)=>ye!==z))},[]),W=f.useCallback(()=>{te(z=>[...z,{hostPath:"",containerPath:"",mode:"rw"}])},[]),$=f.useCallback((z,fe)=>{te(be=>be.map((ye,nt)=>nt===z?fe:ye))},[]),ne=f.useCallback(z=>{te(fe=>fe.filter((be,ye)=>ye!==z))},[]),we=f.useCallback(async()=>{if(L)return;const z={};if((!G.name||G.name.length>64)&&(z.name=a("docker.errors.nameRequired","Name is required and must be 64 characters or fewer")),G.reachableUrl||(z.reachableUrl=a("docker.errors.urlRequired","URL is required")),w<512&&(z.memoryMB=a("docker.errors.memoryMinimum","Memory must be at least 512 MB")),O<.5&&(z.cpus=a("docker.errors.cpusMinimum","CPUs must be at least 0.5")),ee(z),!(Object.keys(z).length>0)){B(!0);try{await r(G),Q()}catch{}finally{B(!1)}}},[Q,O,G,w,r,L,a]);return e?s.jsx("div",{className:"modal-overlay open",onClick:Q,children:s.jsxs("div",{className:"modal docker-onboarding",role:"dialog","aria-modal":"true","aria-label":a("docker.ariaLabels.modal","Docker node onboarding"),onClick:z=>z.stopPropagation(),children:[s.jsxs("div",{className:"modal-header",children:[s.jsx("h3",{children:a("docker.titles.provisionNode","Provision Docker Node")}),s.jsx("button",{className:"modal-close",onClick:Q,disabled:L,"aria-label":a("docker.ariaLabels.closeModal","Close onboarding modal"),children:"×"})]}),s.jsxs("div",{className:"modal-body docker-onboarding__body",children:[s.jsxs("section",{className:"docker-onboarding__section",children:[s.jsx("h4",{className:"docker-onboarding__section-title",children:a("docker.sections.requiredSettings","Required Settings")}),s.jsxs("label",{className:"docker-onboarding__field",children:[s.jsx("span",{children:a("docker.labels.nodeName","Node Name")}),s.jsx("input",{className:"input",value:i,onChange:z=>o(z.target.value),disabled:L,placeholder:a("docker.placeholders.nodeName","my-docker-node"),autoFocus:!0})]}),q.name&&s.jsx("div",{className:"form-error",children:q.name}),s.jsx(M$,{value:l,onChange:c}),s.jsxs("label",{className:"docker-onboarding__field",children:[s.jsx("span",{children:a("docker.labels.reachableUrl","Reachable URL")}),s.jsx("input",{className:"input",value:d,onChange:z=>u(z.target.value),disabled:L,placeholder:_o})]}),q.reachableUrl&&s.jsx("div",{className:"form-error",children:q.reachableUrl}),s.jsxs("div",{className:"docker-onboarding__radio-group",children:[s.jsxs("label",{className:"checkbox-label",children:[s.jsx("input",{type:"radio",checked:m==="auto",onChange:()=>h("auto"),disabled:L}),a("docker.options.autoGenerate","Auto-generate")]}),s.jsxs("label",{className:"checkbox-label",children:[s.jsx("input",{type:"radio",checked:m==="manual",onChange:()=>h("manual"),disabled:L}),a("docker.options.provideManually","Provide manually")]})]}),m==="manual"&&s.jsxs("label",{className:"docker-onboarding__field",children:[s.jsx("span",{children:a("docker.labels.apiKey","API Key")}),s.jsx("input",{className:"input",type:"password",value:v,onChange:z=>y(z.target.value),disabled:L,placeholder:a("docker.placeholders.apiKey","Enter API key")})]}),s.jsxs("div",{className:"docker-onboarding__checkbox-group",children:[s.jsxs("label",{className:"checkbox-label",children:[s.jsx("input",{type:"checkbox",checked:g,onChange:z=>p(z.target.checked),disabled:L}),a("docker.options.claudeCli","Claude CLI")]}),s.jsxs("label",{className:"checkbox-label",children:[s.jsx("input",{type:"checkbox",checked:b,onChange:z=>j(z.target.checked),disabled:L}),a("docker.options.droidCli","Droid CLI")]}),s.jsxs("label",{className:"checkbox-label",children:[s.jsx("input",{type:"checkbox",checked:x,onChange:z=>C(z.target.checked),disabled:L}),a("docker.options.persistentStorage","Keep data across container recreations")]})]}),s.jsxs("div",{className:"docker-onboarding__inline-fields",children:[s.jsxs("label",{className:"docker-onboarding__field",children:[s.jsx("span",{children:a("docker.labels.memory","Memory (MB)")}),s.jsx("input",{className:"input",type:"number",min:512,value:w,onChange:z=>P(Number(z.target.value)),disabled:L})]}),s.jsxs("label",{className:"docker-onboarding__field",children:[s.jsx("span",{children:a("docker.labels.cpus","CPUs")}),s.jsx("input",{className:"input",type:"number",min:.5,step:.5,value:O,onChange:z=>k(Number(z.target.value)),disabled:L})]})]}),q.memoryMB&&s.jsx("div",{className:"form-error",children:q.memoryMB}),q.cpus&&s.jsx("div",{className:"form-error",children:q.cpus})]}),s.jsxs("section",{className:"docker-onboarding__section",children:[s.jsxs("button",{type:"button",className:`docker-onboarding__advanced-toggle ${N?"is-expanded":""}`,onClick:()=>S(z=>!z),disabled:L,children:[s.jsx("span",{children:a("docker.sections.advanced","Advanced")}),s.jsx(xi,{})]}),s.jsx("div",{className:`docker-onboarding__advanced-content ${N?"is-expanded":""}`,children:s.jsxs("div",{children:[s.jsxs("div",{className:"docker-onboarding__inline-fields",children:[s.jsxs("label",{className:"docker-onboarding__field",children:[s.jsx("span",{children:a("docker.labels.image","Image")}),s.jsx("input",{className:"input",value:A,onChange:z=>_(z.target.value),disabled:L,placeholder:a("docker.placeholders.image","runfusion/fusion")})]}),s.jsxs("label",{className:"docker-onboarding__field",children:[s.jsx("span",{children:a("docker.labels.tag","Tag")}),s.jsx("input",{className:"input",value:I,onChange:z=>D(z.target.value),disabled:L,placeholder:a("docker.placeholders.tag","latest")})]})]}),s.jsxs("div",{className:"docker-onboarding__kv-list",children:[s.jsx("h5",{children:a("docker.sections.environmentVariables","Environment Variables")}),F.map((z,fe)=>s.jsxs("div",{className:"docker-onboarding__kv-row docker-onboarding__kv-row--env",children:[s.jsx("input",{className:"input",placeholder:a("docker.placeholders.envVarKey","KEY"),value:z.key,disabled:L,onChange:be=>se(fe,{key:be.target.value,value:z.value})}),s.jsx("input",{className:"input",placeholder:a("docker.placeholders.envVarValue","Value"),value:z.value,disabled:L,onChange:be=>se(fe,{key:z.key,value:be.target.value})}),s.jsx("button",{type:"button",className:"btn btn-icon","aria-label":a("docker.ariaLabels.removeVariable","Remove environment variable"),onClick:()=>re(fe),disabled:L,children:s.jsx(Do,{size:14})})]},`env-${fe}`)),s.jsxs("button",{type:"button",className:"btn btn-sm docker-onboarding__kv-add",onClick:ie,disabled:L,children:[s.jsx(Ea,{size:14}),a("docker.actions.addVariable","Add variable")]})]}),s.jsxs("div",{className:"docker-onboarding__kv-list",children:[s.jsx("h5",{children:a("docker.sections.volumeMounts","Volume Mounts")}),U.map((z,fe)=>s.jsxs("div",{className:"docker-onboarding__kv-row docker-onboarding__kv-row--mount",children:[s.jsx("input",{className:"input",placeholder:a("docker.placeholders.hostPath","Host path"),value:z.hostPath,disabled:L,onChange:be=>$(fe,{hostPath:be.target.value,containerPath:z.containerPath,mode:z.mode})}),s.jsx("input",{className:"input",placeholder:a("docker.placeholders.containerPath","Container path"),value:z.containerPath,disabled:L,onChange:be=>$(fe,{hostPath:z.hostPath,containerPath:be.target.value,mode:z.mode})}),s.jsxs("select",{className:"select",value:z.mode,disabled:L,onChange:be=>$(fe,{hostPath:z.hostPath,containerPath:z.containerPath,mode:be.target.value==="ro"?"ro":"rw"}),children:[s.jsx("option",{value:"rw",children:Qv.readWrite}),s.jsx("option",{value:"ro",children:Qv.readOnly})]}),s.jsx("button",{type:"button",className:"btn btn-icon","aria-label":a("docker.ariaLabels.removeMount","Remove volume mount"),onClick:()=>ne(fe),disabled:L,children:s.jsx(Do,{size:14})})]},`mount-${fe}`)),s.jsxs("button",{type:"button",className:"btn btn-sm docker-onboarding__kv-add",onClick:W,disabled:L,children:[s.jsx(Ea,{size:14}),a("docker.actions.addMount","Add mount")]})]})]})})]})]}),s.jsxs("div",{className:"modal-actions",children:[s.jsx("button",{className:"btn",onClick:Q,disabled:L,children:a("docker.actions.cancel","Cancel")}),s.jsx("button",{className:"btn btn-primary",onClick:()=>void we(),disabled:L,children:L?a("docker.states.creating","Creating..."):a("docker.actions.createNode","Create Docker Node")})]})]})}):null}function I$({nodeId:e,entries:t,loading:r=!1,singleNode:n=!1}){const{t:a}=le("app"),[i,o]=f.useState(!1),[l,c]=f.useState("all"),[d,u]=f.useState("all"),m=f.useCallback(()=>{o(b=>!b)},[]),h=f.useMemo(()=>{const b=new Set;for(const j of t)b.add(j.nodeName);return Array.from(b).sort()},[t]),v=f.useMemo(()=>{let b=[...t];return l!=="all"&&(b=b.filter(j=>j.direction===l)),!n&&d!=="all"&&(b=b.filter(j=>j.nodeName===d)),b.sort((j,x)=>{const C=new Date(j.timestamp).getTime();return new Date(x.timestamp).getTime()-C}),b},[t,l,d,n]),y=f.useCallback(b=>new Date(b).toLocaleString(),[]),g=f.useCallback(b=>{switch(b){case"success":return"settings-sync-log__badge--success";case"conflict":return"settings-sync-log__badge--conflict";case"error":return"settings-sync-log__badge--error";default:return""}},[]),p=f.useCallback(b=>{switch(b){case"success":return a("syncLog.resultSuccess","Success");case"conflict":return a("syncLog.resultConflict","Conflict");case"error":return a("syncLog.resultError","Error");default:return b}},[a]);return s.jsxs("div",{className:"settings-sync-log",children:[s.jsxs("button",{className:"settings-sync-log__header",type:"button",onClick:m,"aria-expanded":i,"data-testid":"settings-sync-log-header",children:[s.jsx(xi,{size:16,className:`settings-sync-log__chevron ${i?"settings-sync-log__chevron--expanded":""}`}),s.jsx("span",{children:a("syncLog.entryCount",{count:t.length,defaultValue_one:"{{count}} entry",defaultValue_other:"{{count}} entries"})})]}),i&&s.jsxs(s.Fragment,{children:[s.jsxs("div",{className:"settings-sync-log__filters",children:[s.jsxs("label",{children:[a("syncLog.filterDirection","Direction:"),s.jsxs("select",{value:l,onChange:b=>c(b.target.value),children:[s.jsx("option",{value:"all",children:a("syncLog.filterAll","All")}),s.jsx("option",{value:"push",children:a("syncLog.filterPush","Push")}),s.jsx("option",{value:"pull",children:a("syncLog.filterPull","Pull")})]})]}),!n&&s.jsxs("label",{children:[a("syncLog.filterNode","Node:"),s.jsxs("select",{value:d,onChange:b=>u(b.target.value),children:[s.jsx("option",{value:"all",children:a("syncLog.filterAllNodes","All Nodes")}),h.map(b=>s.jsx("option",{value:b,children:b},b))]})]})]}),r&&t.length===0?s.jsx("div",{className:"settings-sync-log__empty",children:s.jsx(Tl,{label:a("syncLog.loading","Loading...")})}):v.length===0?s.jsx("div",{className:"settings-sync-log__empty",children:a("syncLog.noHistory","No sync history available")}):s.jsx("div",{className:"settings-sync-log__list",children:v.map(b=>s.jsxs("div",{className:"settings-sync-log__entry",children:[s.jsx("span",{className:"settings-sync-log__entry-timestamp",children:y(b.timestamp)}),s.jsx("span",{className:"settings-sync-log__entry-direction",children:b.direction==="push"?s.jsx(bh,{size:14,"data-testid":"upload-icon"}):s.jsx(fh,{size:14,"data-testid":"download-icon"})}),s.jsx("span",{className:`settings-sync-log__entry-result ${g(b.result)}`,children:p(b.result)}),!n&&s.jsx("span",{className:"settings-sync-log__entry-node",children:b.nodeName}),b.details&&s.jsx("span",{className:"settings-sync-log__entry-details",title:b.details,children:sj(b.details??"")})]},b.id))})]})]})}function D$(e,t){const r=typeof e=="string"?e:JSON.stringify(e,null,2),n=typeof t=="string"?t:JSON.stringify(t,null,2);if(r===n)return r;const a=r.split(`
68
+ */var qm;function T1(){if(qm)return me;qm=1;var e=60103,t=60106,r=60107,n=60108,a=60114,i=60109,o=60110,l=60112,c=60113,d=60120,u=60115,m=60116,h=60121,v=60122,g=60117,y=60129,p=60131;if(typeof Symbol=="function"&&Symbol.for){var b=Symbol.for;e=b("react.element"),t=b("react.portal"),r=b("react.fragment"),n=b("react.strict_mode"),a=b("react.profiler"),i=b("react.provider"),o=b("react.context"),l=b("react.forward_ref"),c=b("react.suspense"),d=b("react.suspense_list"),u=b("react.memo"),m=b("react.lazy"),h=b("react.block"),v=b("react.server.block"),g=b("react.fundamental"),y=b("react.debug_trace_mode"),p=b("react.legacy_hidden")}function j(I){if(typeof I=="object"&&I!==null){var D=I.$$typeof;switch(D){case e:switch(I=I.type,I){case r:case a:case n:case c:case d:return I;default:switch(I=I&&I.$$typeof,I){case o:case l:case m:case u:case i:return I;default:return D}}case t:return D}}}var x=i,C=e,w=l,P=r,O=m,k=u,N=t,S=a,A=n,_=c;return me.ContextConsumer=o,me.ContextProvider=x,me.Element=C,me.ForwardRef=w,me.Fragment=P,me.Lazy=O,me.Memo=k,me.Portal=N,me.Profiler=S,me.StrictMode=A,me.Suspense=_,me.isAsyncMode=function(){return!1},me.isConcurrentMode=function(){return!1},me.isContextConsumer=function(I){return j(I)===o},me.isContextProvider=function(I){return j(I)===i},me.isElement=function(I){return typeof I=="object"&&I!==null&&I.$$typeof===e},me.isForwardRef=function(I){return j(I)===l},me.isFragment=function(I){return j(I)===r},me.isLazy=function(I){return j(I)===m},me.isMemo=function(I){return j(I)===u},me.isPortal=function(I){return j(I)===t},me.isProfiler=function(I){return j(I)===a},me.isStrictMode=function(I){return j(I)===n},me.isSuspense=function(I){return j(I)===c},me.isValidElementType=function(I){return typeof I=="string"||typeof I=="function"||I===r||I===a||I===y||I===n||I===c||I===d||I===p||typeof I=="object"&&I!==null&&(I.$$typeof===m||I.$$typeof===u||I.$$typeof===i||I.$$typeof===o||I.$$typeof===l||I.$$typeof===g||I.$$typeof===h||I[0]===v)},me.typeOf=j,me}var Um;function I1(){return Um||(Um=1,bo.exports=T1()),bo.exports}var D1=I1(),Wm=e=>typeof e=="string"?e:e?e.displayName||e.name||"Component":"",Hm=null,xo=null,yb=e=>{if(e===Hm&&Array.isArray(xo))return xo;var t=[];return f.Children.forEach(e,r=>{De(r)||(D1.isFragment(r)?t=t.concat(yb(r.props.children)):t.push(r))}),xo=t,Hm=e,t};function gb(e,t){var r=[],n=[];return Array.isArray(t)?n=t.map(a=>Wm(a)):n=[Wm(t)],yb(e).forEach(a=>{var i=Nr(a,"type.displayName")||Nr(a,"type.name");i&&n.indexOf(i)!==-1&&r.push(a)}),r}var bb=e=>e&&typeof e=="object"&&"clipDot"in e?!!e.clipDot:!0,jo={},Gm;function L1(){return Gm||(Gm=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(r){if(typeof r!="object"||r==null)return!1;if(Object.getPrototypeOf(r)===null)return!0;if(Object.prototype.toString.call(r)!=="[object Object]"){const a=r[Symbol.toStringTag];return a==null||!Object.getOwnPropertyDescriptor(r,Symbol.toStringTag)?.writable?!1:r.toString()===`[object ${a}]`}let n=r;for(;Object.getPrototypeOf(n)!==null;)n=Object.getPrototypeOf(n);return Object.getPrototypeOf(r)===n}e.isPlainObject=t})(jo)),jo}var wo,Xm;function R1(){return Xm||(Xm=1,wo=L1().isPlainObject),wo}var $1=R1();const B1=nn($1);var Ym,Zm,Jm,Qm,ev;function tv(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),r.push.apply(r,n)}return r}function rv(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?tv(Object(r),!0).forEach(function(n){F1(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):tv(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function F1(e,t,r){return(t=z1(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function z1(e){var t=K1(e,"string");return typeof t=="symbol"?t:t+""}function K1(e,t){if(typeof e!="object"||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var n=r.call(e,t);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function si(){return si=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)({}).hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},si.apply(null,arguments)}function gn(e,t){return t||(t=e.slice(0)),Object.freeze(Object.defineProperties(e,{raw:{value:Object.freeze(t)}}))}var nv=(e,t,r,n,a)=>{var i=r-n,o;return o=Ne(Ym||(Ym=gn(["M ",",",""])),e,t),o+=Ne(Zm||(Zm=gn(["L ",",",""])),e+r,t),o+=Ne(Jm||(Jm=gn(["L ",",",""])),e+r-i/2,t+a),o+=Ne(Qm||(Qm=gn(["L ",",",""])),e+r-i/2-n,t+a),o+=Ne(ev||(ev=gn(["L ",","," Z"])),e,t),o},V1={x:0,y:0,upperWidth:0,lowerWidth:0,height:0,isUpdateAnimationActive:!1,animationBegin:0,animationDuration:1500,animationEasing:"ease"},q1=e=>{var t=Le(e,V1),{x:r,y:n,upperWidth:a,lowerWidth:i,height:o,className:l}=t,{animationEasing:c,animationDuration:d,animationBegin:u,isUpdateAnimationActive:m}=t,h=f.useRef(null),[v,g]=f.useState(-1),y=f.useRef(a),p=f.useRef(i),b=f.useRef(o),j=f.useRef(r),x=f.useRef(n),C=Ui(e,"trapezoid-");if(f.useEffect(()=>{if(h.current&&h.current.getTotalLength)try{var D=h.current.getTotalLength();D&&g(D)}catch{}},[]),r!==+r||n!==+n||a!==+a||i!==+i||o!==+o||a===0&&i===0||o===0)return null;var w=de("recharts-trapezoid",l);if(!m)return f.createElement("g",null,f.createElement("path",si({},Je(t),{className:w,d:nv(r,n,a,i,o)})));var P=y.current,O=p.current,k=b.current,N=j.current,S=x.current,A="0px ".concat(v===-1?1:v,"px"),_="".concat(v,"px ").concat(v,"px"),I=uy(["strokeDasharray"],d,c);return f.createElement(qi,{animationId:C,key:C,canBegin:v>0,duration:d,easing:c,isActive:m,begin:u},D=>{var F=He(P,a,D),V=He(O,i,D),q=He(k,o,D),te=He(N,r,D),U=He(S,n,D);h.current&&(y.current=F,p.current=V,b.current=q,j.current=te,x.current=U);var ee=D>0?{transition:I,strokeDasharray:_}:{strokeDasharray:A};return f.createElement("path",si({},Je(t),{className:w,d:nv(te,U,F,V,q),ref:h,style:rv(rv({},ee),t.style)}))})},U1=["option","shapeType","activeClassName","inActiveClassName"];function W1(e,t){if(e==null)return{};var r,n,a=H1(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)===-1&&{}.propertyIsEnumerable.call(e,r)&&(a[r]=e[r])}return a}function H1(e,t){if(e==null)return{};var r={};for(var n in e)if({}.hasOwnProperty.call(e,n)){if(t.indexOf(n)!==-1)continue;r[n]=e[n]}return r}function av(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),r.push.apply(r,n)}return r}function oi(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?av(Object(r),!0).forEach(function(n){G1(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):av(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function G1(e,t,r){return(t=X1(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function X1(e){var t=Y1(e,"string");return typeof t=="symbol"?t:t+""}function Y1(e,t){if(typeof e!="object"||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var n=r.call(e,t);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function Z1(e,t){return oi(oi({},t),e)}function J1(e,t){return e==="symbols"}function iv(e){var{shapeType:t,elementProps:r}=e;switch(t){case"rectangle":return f.createElement(vy,r);case"trapezoid":return f.createElement(q1,r);case"sector":return f.createElement(gy,r);case"symbols":if(J1(t))return f.createElement(Yl,r);break;case"curve":return f.createElement(mc,r);default:return null}}function Q1(e){return f.isValidElement(e)?e.props:e}function xb(e){var{option:t,shapeType:r,activeClassName:n="recharts-active-shape",inActiveClassName:a="recharts-shape"}=e,i=W1(e,U1),o;if(f.isValidElement(t))o=f.cloneElement(t,oi(oi({},i),Q1(t)));else if(typeof t=="function")o=t(i,i.index);else if(B1(t)&&typeof t!="boolean"){var l=Z1(t,i);o=f.createElement(iv,{shapeType:r,elementProps:l})}else{var c=i;o=f.createElement(iv,{shapeType:r,elementProps:c})}return i.isActive?f.createElement(Qe,{className:n},o):f.createElement(Qe,{className:a},o)}var eM=(e,t,r)=>{var n=ve();return(a,i)=>o=>{e?.(a,i,o),n(wg({activeIndex:String(i),activeDataKey:t,activeCoordinate:a.tooltipPosition,activeGraphicalItemId:r}))}},tM=e=>{var t=ve();return(r,n)=>a=>{e?.(r,n,a),t(nA())}},rM=(e,t,r)=>{var n=ve();return(a,i)=>o=>{e?.(a,i,o),n(aA({activeIndex:String(i),activeDataKey:t,activeCoordinate:a.tooltipPosition,activeGraphicalItemId:r}))}};function jb(e){var{tooltipEntrySettings:t}=e,r=ve(),n=rt(),a=f.useRef(null);return f.useLayoutEffect(()=>{n||(a.current===null?r(QO(t)):a.current!==t&&r(eA({prev:a.current,next:t})),a.current=t)},[t,r,n]),f.useLayoutEffect(()=>()=>{a.current&&(r(tA(a.current)),a.current=null)},[r]),null}function nM(e){var{legendPayload:t}=e,r=ve(),n=rt(),a=f.useRef(null);return f.useLayoutEffect(()=>{n||(a.current===null?r(iy(t)):a.current!==t&&r(sy({prev:a.current,next:t})),a.current=t)},[r,n,t]),f.useLayoutEffect(()=>()=>{a.current&&(r(oy(a.current)),a.current=null)},[r]),null}function aM(e){var{legendPayload:t}=e,r=ve(),n=Y(ge),a=f.useRef(null);return f.useLayoutEffect(()=>{n!=="centric"&&n!=="radial"||(a.current===null?r(iy(t)):a.current!==t&&r(sy({prev:a.current,next:t})),a.current=t)},[r,n,t]),f.useLayoutEffect(()=>()=>{a.current&&(r(oy(a.current)),a.current=null)},[r]),null}var Co,iM=()=>{var[e]=f.useState(()=>An("uid-"));return e},sM=(Co=Lx.useId)!==null&&Co!==void 0?Co:iM;function oM(e,t){var r=sM();return t||(e?"".concat(e,"-").concat(r):r)}var lM=f.createContext(void 0),wb=e=>{var{id:t,type:r,children:n}=e,a=oM("recharts-".concat(r),t);return f.createElement(lM.Provider,{value:a},n(a))},cM={cartesianItems:[],polarItems:[]},Cb=Ye({name:"graphicalItems",initialState:cM,reducers:{addCartesianGraphicalItem:{reducer(e,t){e.cartesianItems.push(t.payload)},prepare:xe()},replaceCartesianGraphicalItem:{reducer(e,t){var{prev:r,next:n}=t.payload,a=pt(e).cartesianItems.indexOf(r);a>-1&&(e.cartesianItems[a]=n)},prepare:xe()},removeCartesianGraphicalItem:{reducer(e,t){var r=pt(e).cartesianItems.indexOf(t.payload);r>-1&&e.cartesianItems.splice(r,1)},prepare:xe()},addPolarGraphicalItem:{reducer(e,t){e.polarItems.push(t.payload)},prepare:xe()},removePolarGraphicalItem:{reducer(e,t){var r=pt(e).polarItems.indexOf(t.payload);r>-1&&e.polarItems.splice(r,1)},prepare:xe()},replacePolarGraphicalItem:{reducer(e,t){var{prev:r,next:n}=t.payload,a=pt(e).polarItems.indexOf(r);a>-1&&(e.polarItems[a]=n)},prepare:xe()}}}),{addCartesianGraphicalItem:uM,replaceCartesianGraphicalItem:dM,removeCartesianGraphicalItem:fM,addPolarGraphicalItem:mM,removePolarGraphicalItem:vM,replacePolarGraphicalItem:hM}=Cb.actions,pM=Cb.reducer,yM=e=>{var t=ve(),r=f.useRef(null);return f.useLayoutEffect(()=>{r.current===null?t(uM(e)):r.current!==e&&t(dM({prev:r.current,next:e})),r.current=e},[t,e]),f.useLayoutEffect(()=>()=>{r.current&&(t(fM(r.current)),r.current=null)},[t]),null},gM=f.memo(yM),bM=e=>{var t=ve(),r=f.useRef(null);return f.useLayoutEffect(()=>{r.current===null?t(mM(e)):r.current!==e&&t(hM({prev:r.current,next:e})),r.current=e},[t,e]),f.useLayoutEffect(()=>()=>{r.current&&(t(vM(r.current)),r.current=null)},[t]),null},xM=f.memo(bM),jM=["key"],wM=["onMouseEnter","onClick","onMouseLeave"],CM=["id"],kM=["id"];function ir(){return ir=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)({}).hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},ir.apply(null,arguments)}function ss(e,t){if(e==null)return{};var r,n,a=PM(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)===-1&&{}.propertyIsEnumerable.call(e,r)&&(a[r]=e[r])}return a}function PM(e,t){if(e==null)return{};var r={};for(var n in e)if({}.hasOwnProperty.call(e,n)){if(t.indexOf(n)!==-1)continue;r[n]=e[n]}return r}function sv(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),r.push.apply(r,n)}return r}function Ce(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?sv(Object(r),!0).forEach(function(n){SM(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):sv(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function SM(e,t,r){return(t=NM(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function NM(e){var t=OM(e,"string");return typeof t=="symbol"?t:t+""}function OM(e,t){if(typeof e!="object"||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var n=r.call(e,t);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function AM(e){var t=f.useMemo(()=>gb(e.children,rs),[e.children]),r=Y(n=>_1(n,e.id,t));return r==null?null:f.createElement(aM,{legendPayload:r})}function EM(e){if(!(e==null||typeof e=="boolean"||typeof e=="function")){if(f.isValidElement(e)){var t,r=(t=e.props)===null||t===void 0?void 0:t.fill;return typeof r=="string"?r:void 0}var{fill:n}=e;return typeof n=="string"?n:void 0}}var _M=f.memo(e=>{var{dataKey:t,nameKey:r,sectors:n,stroke:a,strokeWidth:i,fill:o,name:l,hide:c,tooltipType:d,id:u,activeShape:m}=e,h=EM(m),v=n.map(y=>{var p=y.tooltipPayload;return h==null||p==null?p:p.map(b=>Ce(Ce({},b),{},{color:h,fill:h}))}),g={dataDefinedOnItem:v,getPosition:y=>{var p;return(p=n[Number(y)])===null||p===void 0?void 0:p.tooltipPosition},settings:{stroke:a,strokeWidth:i,fill:o,dataKey:t,nameKey:r,name:Di(l,t),hide:c,type:d,color:o,unit:"",graphicalItemId:u}};return f.createElement(jb,{tooltipEntrySettings:g})}),MM=(e,t)=>e>t?"start":e<t?"end":"middle",TM=(e,t,r)=>ot(typeof t=="function"?t(e):t,r,r*.8),IM=(e,t,r)=>{var{top:n,left:a,width:i,height:o}=t,l=hy(i,o),c=a+ot(e.cx,i,i/2),d=n+ot(e.cy,o,o/2),u=ot(e.innerRadius,l,0),m=TM(r,e.outerRadius,l),h=e.maxRadius||Math.sqrt(i*i+o*o)/2;return{cx:c,cy:d,innerRadius:u,outerRadius:m,maxRadius:h}},DM=(e,t)=>{var r=Ge(t-e),n=Math.min(Math.abs(t-e),360);return r*n},LM=(e,t)=>{if(f.isValidElement(e))return f.cloneElement(e,t);if(typeof e=="function")return e(t);var r=de("recharts-pie-label-line",typeof e!="boolean"?e.className:""),{key:n}=t,a=ss(t,jM);return f.createElement(mc,ir({},a,{type:"linear",className:r}))},RM=(e,t,r)=>{if(f.isValidElement(e))return f.cloneElement(e,t);var n=r;if(typeof e=="function"&&(n=e(t),f.isValidElement(n)))return n;var a=de("recharts-pie-label-text",hb(e));return f.createElement(ns,ir({},t,{alignmentBaseline:"middle",className:a}),n)};function $M(e){var{sectors:t,props:r,showLabels:n}=e,{label:a,labelLine:i,dataKey:o}=r;if(!n||!a||!t)return null;var l=yt(r),c=Xr(a),d=Xr(i),u=typeof a=="object"&&"offsetRadius"in a&&typeof a.offsetRadius=="number"&&a.offsetRadius||20,m=t.map((h,v)=>{var g=(h.startAngle+h.endAngle)/2,y=Ee(h.cx,h.cy,h.outerRadius+u,g),p=Ce(Ce(Ce(Ce({},l),h),{},{stroke:"none"},c),{},{index:v,textAnchor:MM(y.x,h.cx)},y),b=Ce(Ce(Ce(Ce({},l),h),{},{fill:"none",stroke:h.fill},d),{},{index:v,points:[Ee(h.cx,h.cy,h.outerRadius,g),y],key:"line"});return f.createElement(Pt,{zIndex:Ve.label,key:"label-".concat(h.startAngle,"-").concat(h.endAngle,"-").concat(h.midAngle,"-").concat(v)},f.createElement(Qe,null,i&&LM(i,b),RM(a,p,he(h,o))))});return f.createElement(Qe,{className:"recharts-pie-labels"},m)}function BM(e){var{sectors:t,props:r,showLabels:n}=e,{label:a}=r;return typeof a=="object"&&a!=null&&"position"in a?f.createElement(ub,{label:a}):f.createElement($M,{sectors:t,props:r,showLabels:n})}function FM(e){var{sectors:t,activeShape:r,inactiveShape:n,allOtherPieProps:a,shape:i,id:o}=e,l=Y(rn),c=Y($g),d=Y(Bg),{onMouseEnter:u,onClick:m,onMouseLeave:h}=a,v=ss(a,wM),g=eM(u,a.dataKey,o),y=tM(h),p=rM(m,a.dataKey,o);return t==null||t.length===0?null:f.createElement(f.Fragment,null,t.map((b,j)=>{if(b?.startAngle===0&&b?.endAngle===0&&t.length!==1)return null;var x=d==null||d===o,C=String(j)===l&&(c==null||a.dataKey===c)&&x,w=l?n:null,P=r&&C?r:w,O=Ce(Ce({},b),{},{stroke:b.stroke,tabIndex:-1,[Up]:j,[Wp]:o});return f.createElement(Qe,ir({key:"sector-".concat(b?.startAngle,"-").concat(b?.endAngle,"-").concat(b.midAngle,"-").concat(j),tabIndex:-1,className:"recharts-pie-sector"},Jl(v,b,j),{onMouseEnter:g(b,j),onMouseLeave:y(b,j),onClick:p(b,j)}),f.createElement(xb,ir({option:i??P,index:j,shapeType:"sector",isActive:C},O)))}))}function zM(e){var t,{pieSettings:r,displayedData:n,cells:a,offset:i}=e,{cornerRadius:o,startAngle:l,endAngle:c,dataKey:d,nameKey:u,tooltipType:m}=r,h=Math.abs(r.minAngle),v=DM(l,c),g=Math.abs(v),y=n.length<=1?0:(t=r.paddingAngle)!==null&&t!==void 0?t:0,p=n.filter(k=>he(k,d,0)!==0).length,b=(g>=360?p:p-1)*y,j=n.reduce((k,N)=>{var S=he(N,d,0);return k+(Z(S)?S:0)},0),x=h>0&&j>0&&n.some(k=>{var N=he(k,d,0),S=(Z(N)?N:0)/j;return N!==0&&S*g<h}),C=x?h:0,w=g-p*C-b,P;if(j>0){var O;P=n.map((k,N)=>{var S=he(k,d,0),A=he(k,u,N),_=IM(r,i,k),I=(Z(S)?S:0)/j,D,F=Ce(Ce({},k),a&&a[N]&&a[N].props),V=F!=null&&"fill"in F&&typeof F.fill=="string"?F.fill:r.fill;N?D=O.endAngle+Ge(v)*y*(S!==0?1:0):D=l;var q=D+Ge(v)*((S!==0?C:0)+I*w),te=(D+q)/2,U=(_.innerRadius+_.outerRadius)/2,ee=[{name:A,value:S,payload:F,dataKey:d,type:m,color:V,fill:V,graphicalItemId:r.id}],L=Ee(_.cx,_.cy,U,te);return O=Ce(Ce(Ce(Ce({},r.presentationProps),{},{percent:I,cornerRadius:typeof o=="string"?parseFloat(o):o,name:A,tooltipPayload:ee,midAngle:te,middleRadius:U,tooltipPosition:L},F),_),{},{value:S,dataKey:d,startAngle:D,endAngle:q,payload:F,paddingAngle:S!==0?Ge(v)*y:0}),O})}return P}function KM(e){var{showLabels:t,sectors:r,children:n}=e,a=f.useMemo(()=>!t||!r?[]:r.map(i=>({value:i.value,payload:i.payload,clockWise:!1,parentViewBox:void 0,viewBox:{cx:i.cx,cy:i.cy,innerRadius:i.innerRadius,outerRadius:i.outerRadius,startAngle:i.startAngle,endAngle:i.endAngle,clockWise:!1},fill:i.fill})),[r,t]);return f.createElement(v1,{value:t?a:void 0},n)}function VM(e){var{props:t,previousSectorsRef:r,id:n}=e,{sectors:a,isAnimationActive:i,animationBegin:o,animationDuration:l,animationEasing:c,activeShape:d,inactiveShape:u,onAnimationStart:m,onAnimationEnd:h}=t,v=Ui(t,"recharts-pie-"),g=r.current,[y,p]=f.useState(!1),b=f.useCallback(()=>{typeof h=="function"&&h(),p(!1)},[h]),j=f.useCallback(()=>{typeof m=="function"&&m(),p(!0)},[m]);return f.createElement(KM,{showLabels:!y,sectors:a},f.createElement(qi,{animationId:v,begin:o,duration:l,isActive:i,easing:c,onAnimationStart:j,onAnimationEnd:b,key:v},x=>{var C,w=[],P=a&&a[0],O=(C=P?.startAngle)!==null&&C!==void 0?C:0;return a?.forEach((k,N)=>{var S=g&&g[N],A=N>0?Nr(k,"paddingAngle",0):0;if(S){var _=He(S.endAngle-S.startAngle,k.endAngle-k.startAngle,x),I=Ce(Ce({},k),{},{startAngle:O+A,endAngle:O+_+A});w.push(I),O=I.endAngle}else{var{endAngle:D,startAngle:F}=k,V=He(0,D-F,x),q=Ce(Ce({},k),{},{startAngle:O+A,endAngle:O+V+A});w.push(q),O=q.endAngle}}),r.current=w,f.createElement(Qe,null,f.createElement(FM,{sectors:w,activeShape:d,inactiveShape:u,allOtherPieProps:t,shape:t.shape,id:n}))}),f.createElement(BM,{showLabels:!y,sectors:a,props:t}),t.children)}var qM={animationBegin:400,animationDuration:1500,animationEasing:"ease",cx:"50%",cy:"50%",dataKey:"value",endAngle:360,fill:"#808080",hide:!1,innerRadius:0,isAnimationActive:"auto",label:!1,labelLine:!0,legendType:"rect",minAngle:0,nameKey:"name",outerRadius:"80%",paddingAngle:0,rootTabIndex:0,startAngle:0,stroke:"#fff",zIndex:Ve.area};function UM(e){var{id:t}=e,r=ss(e,CM),{hide:n,className:a,rootTabIndex:i}=e,o=f.useMemo(()=>gb(e.children,rs),[e.children]),l=Y(u=>M1(u,t,o)),c=f.useRef(null),d=de("recharts-pie",a);return n||l==null?(c.current=null,f.createElement(Qe,{tabIndex:i,className:d})):f.createElement(Pt,{zIndex:e.zIndex},f.createElement(_M,{dataKey:e.dataKey,nameKey:e.nameKey,sectors:l,stroke:e.stroke,strokeWidth:e.strokeWidth,fill:e.fill,name:e.name,hide:e.hide,tooltipType:e.tooltipType,id:t,activeShape:e.activeShape}),f.createElement(Qe,{tabIndex:i,className:d},f.createElement(VM,{props:Ce(Ce({},r),{},{sectors:l}),previousSectorsRef:c,id:t})))}function WM(e){var t=Le(e,qM),{id:r}=t,n=ss(t,kM),a=yt(n);return f.createElement(wb,{id:r,type:"pie"},i=>f.createElement(f.Fragment,null,f.createElement(xM,{type:"pie",id:i,data:n.data,dataKey:n.dataKey,hide:n.hide,angleAxisId:0,radiusAxisId:0,name:n.name,nameKey:n.nameKey,tooltipType:n.tooltipType,legendType:n.legendType,fill:n.fill,cx:n.cx,cy:n.cy,startAngle:n.startAngle,endAngle:n.endAngle,paddingAngle:n.paddingAngle,minAngle:n.minAngle,innerRadius:n.innerRadius,outerRadius:n.outerRadius,cornerRadius:n.cornerRadius,presentationProps:a,maxRadius:t.maxRadius}),f.createElement(AM,ir({},n,{id:i})),f.createElement(UM,ir({},n,{id:i}))))}var kb=WM;kb.displayName="Pie";var HM=["points"];function ov(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),r.push.apply(r,n)}return r}function ko(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?ov(Object(r),!0).forEach(function(n){GM(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):ov(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function GM(e,t,r){return(t=XM(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function XM(e){var t=YM(e,"string");return typeof t=="symbol"?t:t+""}function YM(e,t){if(typeof e!="object"||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var n=r.call(e,t);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function li(){return li=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)({}).hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},li.apply(null,arguments)}function ZM(e,t){if(e==null)return{};var r,n,a=JM(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)===-1&&{}.propertyIsEnumerable.call(e,r)&&(a[r]=e[r])}return a}function JM(e,t){if(e==null)return{};var r={};for(var n in e)if({}.hasOwnProperty.call(e,n)){if(t.indexOf(n)!==-1)continue;r[n]=e[n]}return r}function QM(e){var{option:t,dotProps:r,className:n}=e;if(f.isValidElement(t))return f.cloneElement(t,r);if(typeof t=="function")return t(r);var a=de(n,typeof t!="boolean"?t.className:""),i=r??{},{points:o}=i,l=ZM(i,HM);return f.createElement(db,li({},l,{className:a}))}function eT(e,t){return e==null?!1:t?!0:e.length===1}function tT(e){var{points:t,dot:r,className:n,dotClassName:a,dataKey:i,baseProps:o,needClip:l,clipPathId:c,zIndex:d=Ve.scatter}=e;if(!eT(t,r))return null;var u=bb(r),m=nw(r),h=t.map((g,y)=>{var p,b,j=ko(ko(ko({r:3},o),m),{},{index:y,cx:(p=g.x)!==null&&p!==void 0?p:void 0,cy:(b=g.y)!==null&&b!==void 0?b:void 0,dataKey:i,value:g.value,payload:g.payload,points:t});return f.createElement(QM,{key:"dot-".concat(y),option:r,dotProps:j,className:a})}),v={};return l&&c!=null&&(v.clipPath="url(#clipPath-".concat(u?"":"dots-").concat(c,")")),f.createElement(Pt,{zIndex:d},f.createElement(Qe,li({className:n},v),h))}function lv(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),r.push.apply(r,n)}return r}function cv(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?lv(Object(r),!0).forEach(function(n){rT(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):lv(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function rT(e,t,r){return(t=nT(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function nT(e){var t=aT(e,"string");return typeof t=="symbol"?t:t+""}function aT(e,t){if(typeof e!="object"||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var n=r.call(e,t);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}var iT={xAxis:{},yAxis:{},zAxis:{}},Pb=Ye({name:"cartesianAxis",initialState:iT,reducers:{addXAxis:{reducer(e,t){e.xAxis[t.payload.id]=t.payload},prepare:xe()},replaceXAxis:{reducer(e,t){var{prev:r,next:n}=t.payload;e.xAxis[r.id]!==void 0&&(r.id!==n.id&&delete e.xAxis[r.id],e.xAxis[n.id]=n)},prepare:xe()},removeXAxis:{reducer(e,t){delete e.xAxis[t.payload.id]},prepare:xe()},addYAxis:{reducer(e,t){e.yAxis[t.payload.id]=t.payload},prepare:xe()},replaceYAxis:{reducer(e,t){var{prev:r,next:n}=t.payload;e.yAxis[r.id]!==void 0&&(r.id!==n.id&&delete e.yAxis[r.id],e.yAxis[n.id]=n)},prepare:xe()},removeYAxis:{reducer(e,t){delete e.yAxis[t.payload.id]},prepare:xe()},addZAxis:{reducer(e,t){e.zAxis[t.payload.id]=t.payload},prepare:xe()},replaceZAxis:{reducer(e,t){var{prev:r,next:n}=t.payload;e.zAxis[r.id]!==void 0&&(r.id!==n.id&&delete e.zAxis[r.id],e.zAxis[n.id]=n)},prepare:xe()},removeZAxis:{reducer(e,t){delete e.zAxis[t.payload.id]},prepare:xe()},updateYAxisWidth(e,t){var{id:r,width:n}=t.payload,a=e.yAxis[r];if(a){var i,o=a.widthHistory||[];if(o.length===3&&o[0]===o[2]&&n===o[1]&&n!==a.width&&Math.abs(n-((i=o[0])!==null&&i!==void 0?i:0))<=1)return;var l=[...o,n].slice(-3);e.yAxis[r]=cv(cv({},a),{},{width:n,widthHistory:l})}}}}),{addXAxis:sT,replaceXAxis:oT,removeXAxis:lT,addYAxis:cT,replaceYAxis:uT,removeYAxis:dT,addZAxis:O2,replaceZAxis:A2,removeZAxis:E2,updateYAxisWidth:fT}=Pb.actions,mT=Pb.reducer,vT=M([Be],e=>({top:e.top,bottom:e.bottom,left:e.left,right:e.right})),hT=M([vT,Ht,Gt],(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)}}),ru=()=>Y(hT),pT=()=>Y(JA);function uv(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),r.push.apply(r,n)}return r}function Po(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?uv(Object(r),!0).forEach(function(n){yT(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):uv(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function yT(e,t,r){return(t=gT(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function gT(e){var t=bT(e,"string");return typeof t=="symbol"?t:t+""}function bT(e,t){if(typeof e!="object"||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var n=r.call(e,t);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}var xT=e=>{var{point:t,childIndex:r,mainColor:n,activeDot:a,dataKey:i,clipPath:o}=e;if(a===!1||t.x==null||t.y==null)return null;var l={index:r,dataKey:i,cx:t.x,cy:t.y,r:4,fill:n??"none",strokeWidth:2,stroke:"#fff",payload:t.payload,value:t.value},c=Po(Po(Po({},l),Xr(a)),Zl(a)),d;return f.isValidElement(a)?d=f.cloneElement(a,c):typeof a=="function"?d=a(c):d=f.createElement(db,c),f.createElement(Qe,{className:"recharts-active-dot",clipPath:o},d)};function jT(e){var{points:t,mainColor:r,activeDot:n,itemDataKey:a,clipPath:i,zIndex:o=Ve.activeDot}=e,l=Y(rn),c=pT();if(t==null||c==null)return null;var d=t.find(u=>c.includes(u.payload));return De(d)?null:f.createElement(Pt,{zIndex:o},f.createElement(xT,{point:d,childIndex:Number(l),mainColor:r,dataKey:a,activeDot:n,clipPath:i}))}var Sb=e=>{var{chartData:t}=e,r=ve(),n=rt();return f.useEffect(()=>n?()=>{}:(r(wm(t)),()=>{r(wm(void 0))}),[t,r,n]),null},dv={x:0,y:0,width:0,height:0,padding:{top:0,right:0,bottom:0,left:0}},Nb=Ye({name:"brush",initialState:dv,reducers:{setBrushSettings(e,t){return t.payload==null?dv:t.payload}}}),{setBrushSettings:_2}=Nb.actions,wT=Nb.reducer;function CT(e){return(e%180+180)%180}var kT=function(t){var{width:r,height:n}=t,a=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,i=CT(a),o=i*Math.PI/180,l=Math.atan(n/r),c=o>l&&o<Math.PI-l?n/Math.sin(o):r/Math.cos(o);return Math.abs(c)},PT={dots:[],areas:[],lines:[]},Ob=Ye({name:"referenceElements",initialState:PT,reducers:{addDot:(e,t)=>{e.dots.push(t.payload)},removeDot:(e,t)=>{var r=pt(e).dots.findIndex(n=>n===t.payload);r!==-1&&e.dots.splice(r,1)},addArea:(e,t)=>{e.areas.push(t.payload)},removeArea:(e,t)=>{var r=pt(e).areas.findIndex(n=>n===t.payload);r!==-1&&e.areas.splice(r,1)},addLine:(e,t)=>{e.lines.push(t.payload)},removeLine:(e,t)=>{var r=pt(e).lines.findIndex(n=>n===t.payload);r!==-1&&e.lines.splice(r,1)}}}),{addDot:M2,removeDot:T2,addArea:I2,removeArea:D2,addLine:L2,removeLine:R2}=Ob.actions,ST=Ob.reducer,NT=f.createContext(void 0),OT=e=>{var{children:t}=e,[r]=f.useState("".concat(An("recharts"),"-clip")),n=ru();if(n==null)return null;var{x:a,y:i,width:o,height:l}=n;return f.createElement(NT.Provider,{value:r},f.createElement("defs",null,f.createElement("clipPath",{id:r},f.createElement("rect",{x:a,y:i,height:l,width:o}))),t)};function Ab(e,t){if(t<1)return[];if(t===1)return e;for(var r=[],n=0;n<e.length;n+=t){var a=e[n];a!==void 0&&r.push(a)}return r}function AT(e,t,r){var n={width:e.width+t.width,height:e.height+t.height};return kT(n,r)}function ET(e,t,r){var n=r==="width",{x:a,y:i,width:o,height:l}=e;return t===1?{start:n?a:i,end:n?a+o:i+l}:{start:n?a+o:i+l,end:n?a:i}}function Bn(e,t,r,n,a){if(e*t<e*n||e*t>e*a)return!1;var i=r();return e*(t-e*i/2-n)>=0&&e*(t+e*i/2-a)<=0}function _T(e,t){return Ab(e,t+1)}function MT(e,t,r,n,a){for(var i=(n||[]).slice(),{start:o,end:l}=t,c=0,d=1,u=o,m=function(){var g=n?.[c];if(g===void 0)return{v:Ab(n,d)};var y=c,p,b=()=>(p===void 0&&(p=r(g,y)),p),j=g.coordinate,x=c===0||Bn(e,j,b,u,l);x||(c=0,u=o,d+=1),x&&(u=j+e*(b()/2+a),c+=d)},h;d<=i.length;)if(h=m(),h)return h.v;return[]}function TT(e,t,r,n,a){var i=(n||[]).slice(),o=i.length;if(o===0)return[];for(var{start:l,end:c}=t,d=1;d<=o;d++){for(var u=(o-1)%d,m=l,h=!0,v=function(){var C=n[y];if(C==null)return 0;var w=y,P,O=()=>(P===void 0&&(P=r(C,w)),P),k=C.coordinate,N=y===u||Bn(e,k,O,m,c);if(!N)return h=!1,1;N&&(m=k+e*(O()/2+a))},g,y=u;y<o&&(g=v(),!(g!==0&&g===1));y+=d);if(h){for(var p=[],b=u;b<o;b+=d){var j=n[b];j!=null&&p.push(j)}return p}}return[]}function fv(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),r.push.apply(r,n)}return r}function Ue(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?fv(Object(r),!0).forEach(function(n){IT(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):fv(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function IT(e,t,r){return(t=DT(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function DT(e){var t=LT(e,"string");return typeof t=="symbol"?t:t+""}function LT(e,t){if(typeof e!="object"||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var n=r.call(e,t);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function RT(e,t,r,n,a){for(var i=(n||[]).slice(),o=i.length,{start:l}=t,{end:c}=t,d=function(h){var v=i[h];if(v==null)return 1;var g=v,y,p=()=>(y===void 0&&(y=r(v,h)),y);if(h===o-1){var b=e*(g.coordinate+e*p()/2-c);i[h]=g=Ue(Ue({},g),{},{tickCoord:b>0?g.coordinate-b*e:g.coordinate})}else i[h]=g=Ue(Ue({},g),{},{tickCoord:g.coordinate});if(g.tickCoord!=null){var j=Bn(e,g.tickCoord,p,l,c);j&&(c=g.tickCoord-e*(p()/2+a),i[h]=Ue(Ue({},g),{},{isShow:!0}))}},u=o-1;u>=0;u--)d(u);return i}function $T(e,t,r,n,a,i){var o=(n||[]).slice(),l=o.length,{start:c,end:d}=t;if(i){var u=n[l-1];if(u!=null){var m=r(u,l-1),h=e*(u.coordinate+e*m/2-d);if(o[l-1]=u=Ue(Ue({},u),{},{tickCoord:h>0?u.coordinate-h*e:u.coordinate}),u.tickCoord!=null){var v=Bn(e,u.tickCoord,()=>m,c,d);v&&(d=u.tickCoord-e*(m/2+a),o[l-1]=Ue(Ue({},u),{},{isShow:!0}))}}}for(var g=i?l-1:l,y=function(j){var x=o[j];if(x==null)return 1;var C=x,w,P=()=>(w===void 0&&(w=r(x,j)),w);if(j===0){var O=e*(C.coordinate-e*P()/2-c);o[j]=C=Ue(Ue({},C),{},{tickCoord:O<0?C.coordinate-O*e:C.coordinate})}else o[j]=C=Ue(Ue({},C),{},{tickCoord:C.coordinate});if(C.tickCoord!=null){var k=Bn(e,C.tickCoord,P,c,d);k&&(c=C.tickCoord+e*(P()/2+a),o[j]=Ue(Ue({},C),{},{isShow:!0}))}},p=0;p<g;p++)y(p);return o}function nu(e,t,r){var{tick:n,ticks:a,viewBox:i,minTickGap:o,orientation:l,interval:c,tickFormatter:d,unit:u,angle:m}=e;if(!a||!a.length||!n)return[];if(Z(c)||Xn.isSsr){var h;return(h=_T(a,Z(c)?c:0))!==null&&h!==void 0?h:[]}var v=[],g=l==="top"||l==="bottom"?"width":"height",y=u&&g==="width"?On(u,{fontSize:t,letterSpacing:r}):{width:0,height:0},p=(w,P)=>{var O=typeof d=="function"?d(w.value,P):w.value;return g==="width"?AT(On(O,{fontSize:t,letterSpacing:r}),y,m):On(O,{fontSize:t,letterSpacing:r})[g]},b=a[0],j=a[1],x=a.length>=2&&b!=null&&j!=null?Ge(j.coordinate-b.coordinate):1,C=ET(i,x,g);return c==="equidistantPreserveStart"?MT(x,C,p,a,o):c==="equidistantPreserveEnd"?TT(x,C,p,a,o):(c==="preserveStart"||c==="preserveStartEnd"?v=$T(x,C,p,a,o,c==="preserveStartEnd"):v=RT(x,C,p,a,o),v.filter(w=>w.isShow))}var BT=e=>{var{ticks:t,label:r,labelGapWithTick:n=5,tickSize:a=0,tickMargin:i=0}=e,o=0;if(t){Array.from(t).forEach(u=>{if(u){var m=u.getBoundingClientRect();m.width>o&&(o=m.width)}});var l=r?r.getBoundingClientRect().width:0,c=a+i,d=o+c+l+(r?n:0);return Math.round(d)}return 0},FT={xAxis:{},yAxis:{}},Eb=Ye({name:"renderedTicks",initialState:FT,reducers:{setRenderedTicks:(e,t)=>{var{axisType:r,axisId:n,ticks:a}=t.payload;e[r][n]=a},removeRenderedTicks:(e,t)=>{var{axisType:r,axisId:n}=t.payload;delete e[r][n]}}}),{setRenderedTicks:zT,removeRenderedTicks:KT}=Eb.actions,VT=Eb.reducer,qT=["axisLine","width","height","className","hide","ticks","axisType","axisId"];function UT(e,t){if(e==null)return{};var r,n,a=WT(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)===-1&&{}.propertyIsEnumerable.call(e,r)&&(a[r]=e[r])}return a}function WT(e,t){if(e==null)return{};var r={};for(var n in e)if({}.hasOwnProperty.call(e,n)){if(t.indexOf(n)!==-1)continue;r[n]=e[n]}return r}function Tr(){return Tr=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)({}).hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},Tr.apply(null,arguments)}function mv(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),r.push.apply(r,n)}return r}function Se(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?mv(Object(r),!0).forEach(function(n){HT(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):mv(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function HT(e,t,r){return(t=GT(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function GT(e){var t=XT(e,"string");return typeof t=="symbol"?t:t+""}function XT(e,t){if(typeof e!="object"||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var n=r.call(e,t);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}var Kt={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:Ve.axis};function YT(e){var{x:t,y:r,width:n,height:a,orientation:i,mirror:o,axisLine:l,otherSvgProps:c}=e;if(!l)return null;var d=Se(Se(Se({},c),yt(l)),{},{fill:"none"});if(i==="top"||i==="bottom"){var u=+(i==="top"&&!o||i==="bottom"&&o);d=Se(Se({},d),{},{x1:t,y1:r+u*a,x2:t+n,y2:r+u*a})}else{var m=+(i==="left"&&!o||i==="right"&&o);d=Se(Se({},d),{},{x1:t+m*n,y1:r,x2:t+m*n,y2:r+a})}return f.createElement("line",Tr({},d,{className:de("recharts-cartesian-axis-line",Nr(l,"className"))}))}function ZT(e,t,r,n,a,i,o,l,c){var d,u,m,h,v,g,y=l?-1:1,p=e.tickSize||o,b=Z(e.tickCoord)?e.tickCoord:e.coordinate;switch(i){case"top":d=u=e.coordinate,h=r+ +!l*a,m=h-y*p,g=m-y*c,v=b;break;case"left":m=h=e.coordinate,u=t+ +!l*n,d=u-y*p,v=d-y*c,g=b;break;case"right":m=h=e.coordinate,u=t+ +l*n,d=u+y*p,v=d+y*c,g=b;break;default:d=u=e.coordinate,h=r+ +l*a,m=h+y*p,g=m+y*c,v=b;break}return{line:{x1:d,y1:m,x2:u,y2:h},tick:{x:v,y:g}}}function JT(e,t){switch(e){case"left":return t?"start":"end";case"right":return t?"end":"start";default:return"middle"}}function QT(e,t){switch(e){case"left":case"right":return"middle";case"top":return t?"start":"end";default:return t?"end":"start"}}function eI(e){var{option:t,tickProps:r,value:n}=e,a,i=de(r.className,"recharts-cartesian-axis-tick-value");if(f.isValidElement(t))a=f.cloneElement(t,Se(Se({},r),{},{className:i}));else if(typeof t=="function")a=t(Se(Se({},r),{},{className:i}));else{var o="recharts-cartesian-axis-tick-value";typeof t!="boolean"&&(o=de(o,hb(t))),a=f.createElement(ns,Tr({},r,{className:o}),n)}return a}function tI(e){var{ticks:t,axisType:r,axisId:n}=e,a=ve();return f.useEffect(()=>{if(n==null||r==null)return Kn;var i=t.map(o=>({value:o.value,coordinate:o.coordinate,offset:o.offset,index:o.index}));return a(zT({ticks:i,axisId:n,axisType:r})),()=>{a(KT({axisId:n,axisType:r}))}},[a,t,n,r]),null}var rI=f.forwardRef((e,t)=>{var{ticks:r=[],tick:n,tickLine:a,stroke:i,tickFormatter:o,unit:l,padding:c,tickTextProps:d,orientation:u,mirror:m,x:h,y:v,width:g,height:y,tickSize:p,tickMargin:b,fontSize:j,letterSpacing:x,getTicksConfig:C,events:w,axisType:P,axisId:O}=e,k=nu(Se(Se({},C),{},{ticks:r}),j,x),N=yt(C),S=Xr(n),A=rb(N.textAnchor)?N.textAnchor:JT(u,m),_=QT(u,m),I={};typeof a=="object"&&(I=a);var D=Se(Se({},N),{},{fill:"none"},I),F=k.map(te=>Se({entry:te},ZT(te,h,v,g,y,u,p,m,b))),V=F.map(te=>{var{entry:U,line:ee}=te;return f.createElement(Qe,{className:"recharts-cartesian-axis-tick",key:"tick-".concat(U.value,"-").concat(U.coordinate,"-").concat(U.tickCoord)},a&&f.createElement("line",Tr({},D,ee,{className:de("recharts-cartesian-axis-tick-line",Nr(a,"className"))})))}),q=F.map((te,U)=>{var ee,L,{entry:B,tick:X}=te,Q=Se(Se(Se(Se({verticalAnchor:_},N),{},{textAnchor:A,stroke:"none",fill:i},X),{},{index:U,payload:B,visibleTicksCount:k.length,tickFormatter:o,padding:c},d),{},{angle:(ee=(L=d?.angle)!==null&&L!==void 0?L:N.angle)!==null&&ee!==void 0?ee:0}),G=Se(Se({},Q),S);return f.createElement(Qe,Tr({className:"recharts-cartesian-axis-tick-label",key:"tick-label-".concat(B.value,"-").concat(B.coordinate,"-").concat(B.tickCoord)},Jl(w,B,U)),n&&f.createElement(eI,{option:n,tickProps:G,value:"".concat(typeof o=="function"?o(B.value,U):B.value).concat(l||"")}))});return f.createElement("g",{className:"recharts-cartesian-axis-ticks recharts-".concat(P,"-ticks")},f.createElement(tI,{ticks:k,axisId:O,axisType:P}),q.length>0&&f.createElement(Pt,{zIndex:Ve.label},f.createElement("g",{className:"recharts-cartesian-axis-tick-labels recharts-".concat(P,"-tick-labels"),ref:t},q)),V.length>0&&f.createElement("g",{className:"recharts-cartesian-axis-tick-lines recharts-".concat(P,"-tick-lines")},V))}),nI=f.forwardRef((e,t)=>{var{axisLine:r,width:n,height:a,className:i,hide:o,ticks:l,axisType:c,axisId:d}=e,u=UT(e,qT),[m,h]=f.useState(""),[v,g]=f.useState(""),y=f.useRef(null);f.useImperativeHandle(t,()=>({getCalculatedWidth:()=>{var b;return BT({ticks:y.current,label:(b=e.labelRef)===null||b===void 0?void 0:b.current,labelGapWithTick:5,tickSize:e.tickSize,tickMargin:e.tickMargin})}}));var p=f.useCallback(b=>{if(b){var j=b.getElementsByClassName("recharts-cartesian-axis-tick-value");y.current=j;var x=j[0];if(x){var C=window.getComputedStyle(x),w=C.fontSize,P=C.letterSpacing;(w!==m||P!==v)&&(h(w),g(P))}}},[m,v]);return o||n!=null&&n<=0||a!=null&&a<=0?null:f.createElement(Pt,{zIndex:e.zIndex},f.createElement(Qe,{className:de("recharts-cartesian-axis",i)},f.createElement(YT,{x:e.x,y:e.y,width:n,height:a,orientation:e.orientation,mirror:e.mirror,axisLine:r,otherSvgProps:yt(e)}),f.createElement(rI,{ref:p,axisType:c,events:u,fontSize:m,getTicksConfig:e,height:e.height,letterSpacing:v,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:l,unit:e.unit,width:e.width,x:e.x,y:e.y,axisId:d}),f.createElement(J_,{x:e.x,y:e.y,width:e.width,height:e.height,lowerWidth:e.width,upperWidth:e.width},f.createElement(l1,{label:e.label,labelRef:e.labelRef}),e.children)))}),au=f.forwardRef((e,t)=>{var r=Le(e,Kt);return f.createElement(nI,Tr({},r,{ref:t}))});au.displayName="CartesianAxis";var aI=["x1","y1","x2","y2","key"],iI=["offset"],sI=["xAxisId","yAxisId"],oI=["xAxisId","yAxisId"];function vv(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),r.push.apply(r,n)}return r}function We(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?vv(Object(r),!0).forEach(function(n){lI(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):vv(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function lI(e,t,r){return(t=cI(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function cI(e){var t=uI(e,"string");return typeof t=="symbol"?t:t+""}function uI(e,t){if(typeof e!="object"||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var n=r.call(e,t);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function wr(){return wr=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)({}).hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},wr.apply(null,arguments)}function ci(e,t){if(e==null)return{};var r,n,a=dI(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)===-1&&{}.propertyIsEnumerable.call(e,r)&&(a[r]=e[r])}return a}function dI(e,t){if(e==null)return{};var r={};for(var n in e)if({}.hasOwnProperty.call(e,n)){if(t.indexOf(n)!==-1)continue;r[n]=e[n]}return r}var fI=e=>{var{fill:t}=e;if(!t||t==="none")return null;var{fillOpacity:r,x:n,y:a,width:i,height:o,ry:l}=e;return f.createElement("rect",{x:n,y:a,ry:l,width:i,height:o,stroke:"none",fill:t,fillOpacity:r,className:"recharts-cartesian-grid-bg"})};function _b(e){var{option:t,lineItemProps:r}=e,n;if(f.isValidElement(t))n=f.cloneElement(t,r);else if(typeof t=="function")n=t(r);else{var a,{x1:i,y1:o,x2:l,y2:c,key:d}=r,u=ci(r,aI),m=(a=yt(u))!==null&&a!==void 0?a:{},{offset:h}=m,v=ci(m,iI);n=f.createElement("line",wr({},v,{x1:i,y1:o,x2:l,y2:c,fill:"none",key:d}))}return n}function mI(e){var{x:t,width:r,horizontal:n=!0,horizontalPoints:a}=e;if(!n||!a||!a.length)return null;var{xAxisId:i,yAxisId:o}=e,l=ci(e,sI),c=a.map((d,u)=>{var m=We(We({},l),{},{x1:t,y1:d,x2:t+r,y2:d,key:"line-".concat(u),index:u});return f.createElement(_b,{key:"line-".concat(u),option:n,lineItemProps:m})});return f.createElement("g",{className:"recharts-cartesian-grid-horizontal"},c)}function vI(e){var{y:t,height:r,vertical:n=!0,verticalPoints:a}=e;if(!n||!a||!a.length)return null;var{xAxisId:i,yAxisId:o}=e,l=ci(e,oI),c=a.map((d,u)=>{var m=We(We({},l),{},{x1:d,y1:t,x2:d,y2:t+r,key:"line-".concat(u),index:u});return f.createElement(_b,{option:n,lineItemProps:m,key:"line-".concat(u)})});return f.createElement("g",{className:"recharts-cartesian-grid-vertical"},c)}function hI(e){var{horizontalFill:t,fillOpacity:r,x:n,y:a,width:i,height:o,horizontalPoints:l,horizontal:c=!0}=e;if(!c||!t||!t.length||l==null)return null;var d=l.map(m=>Math.round(m+a-a)).sort((m,h)=>m-h);a!==d[0]&&d.unshift(0);var u=d.map((m,h)=>{var v=d[h+1],g=v==null,y=g?a+o-m:v-m;if(y<=0)return null;var p=h%t.length;return f.createElement("rect",{key:"react-".concat(h),y:m,x:n,height:y,width:i,stroke:"none",fill:t[p],fillOpacity:r,className:"recharts-cartesian-grid-bg"})});return f.createElement("g",{className:"recharts-cartesian-gridstripes-horizontal"},u)}function pI(e){var{vertical:t=!0,verticalFill:r,fillOpacity:n,x:a,y:i,width:o,height:l,verticalPoints:c}=e;if(!t||!r||!r.length)return null;var d=c.map(m=>Math.round(m+a-a)).sort((m,h)=>m-h);a!==d[0]&&d.unshift(0);var u=d.map((m,h)=>{var v=d[h+1],g=v==null,y=g?a+o-m:v-m;if(y<=0)return null;var p=h%r.length;return f.createElement("rect",{key:"react-".concat(h),x:m,y:i,width:y,height:l,stroke:"none",fill:r[p],fillOpacity:n,className:"recharts-cartesian-grid-bg"})});return f.createElement("g",{className:"recharts-cartesian-gridstripes-vertical"},u)}var yI=(e,t)=>{var{xAxis:r,width:n,height:a,offset:i}=e;return Kp(nu(We(We(We({},Kt),r),{},{ticks:Vp(r),viewBox:{x:0,y:0,width:n,height:a}})),i.left,i.left+i.width,t)},gI=(e,t)=>{var{yAxis:r,width:n,height:a,offset:i}=e;return Kp(nu(We(We(We({},Kt),r),{},{ticks:Vp(r),viewBox:{x:0,y:0,width:n,height:a}})),i.top,i.top+i.height,t)},bI={horizontal:!0,vertical:!0,horizontalPoints:[],verticalPoints:[],stroke:"#ccc",fill:"none",verticalFill:[],horizontalFill:[],xAxisId:0,yAxisId:0,syncWithTicks:!1,zIndex:Ve.grid};function Mb(e){var t=lc(),r=cc(),n=Xp(),a=We(We({},Le(e,bI)),{},{x:Z(e.x)?e.x:n.left,y:Z(e.y)?e.y:n.top,width:Z(e.width)?e.width:n.width,height:Z(e.height)?e.height:n.height}),{xAxisId:i,yAxisId:o,x:l,y:c,width:d,height:u,syncWithTicks:m,horizontalValues:h,verticalValues:v}=a,g=rt(),y=Y(N=>cm(N,"xAxis",i,g)),p=Y(N=>cm(N,"yAxis",o,g));if(!Zr(d)||!Zr(u)||!Z(l)||!Z(c))return null;var b=a.verticalCoordinatesGenerator||yI,j=a.horizontalCoordinatesGenerator||gI,{horizontalPoints:x,verticalPoints:C}=a;if((!x||!x.length)&&typeof j=="function"){var w=h&&h.length,P=j({yAxis:p?We(We({},p),{},{ticks:w?h:p.ticks}):void 0,width:t??d,height:r??u,offset:n},w?!0:m);Xd(Array.isArray(P),"horizontalCoordinatesGenerator should return Array but instead it returned [".concat(typeof P,"]")),Array.isArray(P)&&(x=P)}if((!C||!C.length)&&typeof b=="function"){var O=v&&v.length,k=b({xAxis:y?We(We({},y),{},{ticks:O?v:y.ticks}):void 0,width:t??d,height:r??u,offset:n},O?!0:m);Xd(Array.isArray(k),"verticalCoordinatesGenerator should return Array but instead it returned [".concat(typeof k,"]")),Array.isArray(k)&&(C=k)}return f.createElement(Pt,{zIndex:a.zIndex},f.createElement("g",{className:"recharts-cartesian-grid"},f.createElement(fI,{fill:a.fill,fillOpacity:a.fillOpacity,x:a.x,y:a.y,width:a.width,height:a.height,ry:a.ry}),f.createElement(hI,wr({},a,{horizontalPoints:x})),f.createElement(pI,wr({},a,{verticalPoints:C})),f.createElement(mI,wr({},a,{offset:n,horizontalPoints:x,xAxis:y,yAxis:p})),f.createElement(vI,wr({},a,{offset:n,verticalPoints:C,xAxis:y,yAxis:p}))))}Mb.displayName="CartesianGrid";var xI={},Tb=Ye({name:"errorBars",initialState:xI,reducers:{addErrorBar:(e,t)=>{var{itemId:r,errorBar:n}=t.payload;e[r]||(e[r]=[]),e[r].push(n)},replaceErrorBar:(e,t)=>{var{itemId:r,prev:n,next:a}=t.payload;e[r]&&(e[r]=e[r].map(i=>i.dataKey===n.dataKey&&i.direction===n.direction?a:i))},removeErrorBar:(e,t)=>{var{itemId:r,errorBar:n}=t.payload;e[r]&&(e[r]=e[r].filter(a=>a.dataKey!==n.dataKey||a.direction!==n.direction))}}}),{addErrorBar:$2,replaceErrorBar:B2,removeErrorBar:F2}=Tb.actions,jI=Tb.reducer,wI=["children"];function CI(e,t){if(e==null)return{};var r,n,a=kI(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)===-1&&{}.propertyIsEnumerable.call(e,r)&&(a[r]=e[r])}return a}function kI(e,t){if(e==null)return{};var r={};for(var n in e)if({}.hasOwnProperty.call(e,n)){if(t.indexOf(n)!==-1)continue;r[n]=e[n]}return r}var PI={data:[],xAxisId:"xAxis-0",yAxisId:"yAxis-0",dataPointFormatter:()=>({x:0,y:0,value:0}),errorBarOffset:0},SI=f.createContext(PI);function NI(e){var{children:t}=e,r=CI(e,wI);return f.createElement(SI.Provider,{value:r},t)}function Ib(e,t){var r,n,a=Y(d=>Xt(d,e)),i=Y(d=>Yt(d,t)),o=(r=a?.allowDataOverflow)!==null&&r!==void 0?r:Me.allowDataOverflow,l=(n=i?.allowDataOverflow)!==null&&n!==void 0?n:Te.allowDataOverflow,c=o||l;return{needClip:c,needClipX:o,needClipY:l}}function OI(e){var{xAxisId:t,yAxisId:r,clipPathId:n}=e,a=ru(),{needClipX:i,needClipY:o,needClip:l}=Ib(t,r);if(!l||!a)return null;var{x:c,y:d,width:u,height:m}=a;return f.createElement("clipPath",{id:"clipPath-".concat(n)},f.createElement("rect",{x:i?c:c-u/2,y:o?d:d-m/2,width:i?u:u*2,height:o?m:m*2}))}var Db=(e,t,r,n)=>pg(e,"xAxis",t,n),Lb=(e,t,r,n)=>hg(e,"xAxis",t,n),Rb=(e,t,r,n)=>pg(e,"yAxis",r,n),$b=(e,t,r,n)=>hg(e,"yAxis",r,n),AI=M([ge,Db,Rb,Lb,$b],(e,t,r,n,a)=>Wt(e,"xAxis")?qa(t,n,!1):qa(r,a,!1)),EI=(e,t,r,n,a)=>a;function _I(e){return e.type==="line"}var MI=M([Hy,EI],(e,t)=>e.filter(_I).find(r=>r.id===t)),TI=M([ge,Db,Rb,Lb,$b,MI,AI,Yn],(e,t,r,n,a,i,o,l)=>{var{chartData:c,dataStartIndex:d,dataEndIndex:u}=l;if(!(i==null||t==null||r==null||n==null||a==null||n.length===0||a.length===0||o==null||e!=="horizontal"&&e!=="vertical")){var{dataKey:m,data:h}=i,v;if(h!=null&&h.length>0?v=h:v=c?.slice(d,u+1),v!=null)return eD({layout:e,xAxis:t,yAxis:r,xAxisTicks:n,yAxisTicks:a,dataKey:m,bandSize:o,displayedData:v})}});function II(e){var t=Xr(e),r=3,n=2;if(t!=null){var{r:a,strokeWidth:i}=t,o=Number(a),l=Number(i);return(Number.isNaN(o)||o<0)&&(o=r),(Number.isNaN(l)||l<0)&&(l=n),{r:o,strokeWidth:l}}return{r,strokeWidth:n}}var DI=["id"],LI=["type","layout","connectNulls","needClip","shape"],RI=["activeDot","animateNewValues","animationBegin","animationDuration","animationEasing","connectNulls","dot","hide","isAnimationActive","label","legendType","xAxisId","yAxisId","id"];function Fn(){return Fn=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)({}).hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},Fn.apply(null,arguments)}function hv(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),r.push.apply(r,n)}return r}function Et(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?hv(Object(r),!0).forEach(function(n){$I(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):hv(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function $I(e,t,r){return(t=BI(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function BI(e){var t=FI(e,"string");return typeof t=="symbol"?t:t+""}function FI(e,t){if(typeof e!="object"||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var n=r.call(e,t);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function iu(e,t){if(e==null)return{};var r,n,a=zI(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)===-1&&{}.propertyIsEnumerable.call(e,r)&&(a[r]=e[r])}return a}function zI(e,t){if(e==null)return{};var r={};for(var n in e)if({}.hasOwnProperty.call(e,n)){if(t.indexOf(n)!==-1)continue;r[n]=e[n]}return r}var KI=e=>{var{dataKey:t,name:r,stroke:n,legendType:a,hide:i}=e;return[{inactive:i,dataKey:t,type:a,color:n,value:Di(r,t),payload:e}]},VI=f.memo(e=>{var{dataKey:t,data:r,stroke:n,strokeWidth:a,fill:i,name:o,hide:l,unit:c,tooltipType:d,id:u}=e,m={dataDefinedOnItem:r,getPosition:Kn,settings:{stroke:n,strokeWidth:a,fill:i,dataKey:t,nameKey:void 0,name:Di(o,t),hide:l,type:d,color:n,unit:c,graphicalItemId:u}};return f.createElement(jb,{tooltipEntrySettings:m})}),Bb=(e,t)=>"".concat(t,"px ").concat(e,"px");function qI(e,t){for(var r=e.length%2!==0?[...e,0]:e,n=[],a=0;a<t;++a)n.push(...r);return n}var UI=(e,t,r)=>{var n=r.reduce((h,v)=>h+v,0);if(!n)return Bb(t,e);for(var a=Math.floor(e/n),i=e%n,o=[],l=0,c=0;l<r.length;c+=(d=r[l])!==null&&d!==void 0?d:0,++l){var d,u=r[l];if(u!=null&&c+u>i){o=[...r.slice(0,l),i-c];break}}var m=o.length%2===0?[0,t]:[t];return[...qI(r,a),...o,...m].map(h=>"".concat(h,"px")).join(", ")};function WI(e){var{clipPathId:t,points:r,props:n}=e,{dot:a,dataKey:i,needClip:o}=n,{id:l}=n,c=iu(n,DI),d=yt(c);return f.createElement(tT,{points:r,dot:a,className:"recharts-line-dots",dotClassName:"recharts-line-dot",dataKey:i,baseProps:d,needClip:o,clipPathId:t})}function HI(e){var{showLabels:t,children:r,points:n}=e,a=f.useMemo(()=>n?.map(i=>{var o,l,c={x:(o=i.x)!==null&&o!==void 0?o:0,y:(l=i.y)!==null&&l!==void 0?l:0,width:0,lowerWidth:0,upperWidth:0,height:0};return Et(Et({},c),{},{value:i.value,payload:i.payload,viewBox:c,parentViewBox:void 0,fill:void 0})}),[n]);return f.createElement(m1,{value:t?a:void 0},r)}function pv(e){var{clipPathId:t,pathRef:r,points:n,strokeDasharray:a,props:i}=e,{type:o,layout:l,connectNulls:c,needClip:d,shape:u}=i,m=iu(i,LI),h=Et(Et({},Je(m)),{},{fill:"none",className:"recharts-line-curve",clipPath:d?"url(#clipPath-".concat(t,")"):void 0,points:n,type:o,layout:l,connectNulls:c,strokeDasharray:a??i.strokeDasharray});return f.createElement(f.Fragment,null,n?.length>1&&f.createElement(xb,Fn({shapeType:"curve",option:u},h,{pathRef:r})),f.createElement(WI,{points:n,clipPathId:t,props:i}))}function GI(e){try{return e&&e.getTotalLength&&e.getTotalLength()||0}catch{return 0}}function XI(e){var{clipPathId:t,props:r,pathRef:n,previousPointsRef:a,longestAnimatedLengthRef:i}=e,{points:o,strokeDasharray:l,isAnimationActive:c,animationBegin:d,animationDuration:u,animationEasing:m,animateNewValues:h,width:v,height:g,onAnimationEnd:y,onAnimationStart:p}=r,b=a.current,j=Ui(o,"recharts-line-"),x=f.useRef(j),[C,w]=f.useState(!1),P=!C,O=f.useCallback(()=>{typeof y=="function"&&y(),w(!1)},[y]),k=f.useCallback(()=>{typeof p=="function"&&p(),w(!0)},[p]),N=GI(n.current),S=f.useRef(0);x.current!==j&&(S.current=i.current,x.current=j);var A=S.current;return f.createElement(HI,{points:o,showLabels:P},r.children,f.createElement(qi,{animationId:j,begin:d,duration:u,isActive:c,easing:m,onAnimationEnd:O,onAnimationStart:k,key:j},_=>{var I=He(A,N+A,_),D=Math.min(I,N),F;if(c)if(l){var V="".concat(l).split(/[,\s]+/gim).map(U=>parseFloat(U));F=UI(D,N,V)}else F=Bb(N,D);else F=l==null?void 0:String(l);if(_>0&&N>0&&(a.current=o,i.current=Math.max(i.current,D)),b){var q=b.length/o.length,te=_===1?o:o.map((U,ee)=>{var L=Math.floor(ee*q);if(b[L]){var B=b[L];return Et(Et({},U),{},{x:He(B.x,U.x,_),y:He(B.y,U.y,_)})}return h?Et(Et({},U),{},{x:He(v*2,U.x,_),y:He(g/2,U.y,_)}):Et(Et({},U),{},{x:U.x,y:U.y})});return a.current=te,f.createElement(pv,{props:r,points:te,clipPathId:t,pathRef:n,strokeDasharray:F})}return f.createElement(pv,{props:r,points:o,clipPathId:t,pathRef:n,strokeDasharray:F})}),f.createElement(ub,{label:r.label}))}function YI(e){var{clipPathId:t,props:r}=e,n=f.useRef(null),a=f.useRef(0),i=f.useRef(null);return f.createElement(XI,{props:r,clipPathId:t,previousPointsRef:n,longestAnimatedLengthRef:a,pathRef:i})}var ZI=(e,t)=>{var r,n;return{x:(r=e.x)!==null&&r!==void 0?r:void 0,y:(n=e.y)!==null&&n!==void 0?n:void 0,value:e.value,errorVal:he(e.payload,t)}};class JI extends f.Component{render(){var{hide:t,dot:r,points:n,className:a,xAxisId:i,yAxisId:o,top:l,left:c,width:d,height:u,id:m,needClip:h,zIndex:v}=this.props;if(t)return null;var g=de("recharts-line",a),y=m,{r:p,strokeWidth:b}=II(r),j=bb(r),x=p*2+b,C=h?"url(#clipPath-".concat(j?"":"dots-").concat(y,")"):void 0;return f.createElement(Pt,{zIndex:v},f.createElement(Qe,{className:g},h&&f.createElement("defs",null,f.createElement(OI,{clipPathId:y,xAxisId:i,yAxisId:o}),!j&&f.createElement("clipPath",{id:"clipPath-dots-".concat(y)},f.createElement("rect",{x:c-x/2,y:l-x/2,width:d+x,height:u+x}))),f.createElement(NI,{xAxisId:i,yAxisId:o,data:n,dataPointFormatter:ZI,errorBarOffset:0},f.createElement(YI,{props:this.props,clipPathId:y}))),f.createElement(jT,{activeDot:this.props.activeDot,points:n,mainColor:this.props.stroke,itemDataKey:this.props.dataKey,clipPath:C}))}}var Fb={activeDot:!0,animateNewValues:!0,animationBegin:0,animationDuration:1500,animationEasing:"ease",connectNulls:!1,dot:!0,fill:"#fff",hide:!1,isAnimationActive:"auto",label:!1,legendType:"line",stroke:"#3182bd",strokeWidth:1,xAxisId:0,yAxisId:0,zIndex:Ve.line,type:"linear"};function QI(e){var t=Le(e,Fb),{activeDot:r,animateNewValues:n,animationBegin:a,animationDuration:i,animationEasing:o,connectNulls:l,dot:c,hide:d,isAnimationActive:u,label:m,legendType:h,xAxisId:v,yAxisId:g,id:y}=t,p=iu(t,RI),{needClip:b}=Ib(v,g),j=ru(),x=an(),C=rt(),w=Y(S=>TI(S,v,g,C,y));if(x!=="horizontal"&&x!=="vertical"||w==null||j==null)return null;var{height:P,width:O,x:k,y:N}=j;return f.createElement(JI,Fn({},p,{id:y,connectNulls:l,dot:c,activeDot:r,animateNewValues:n,animationBegin:a,animationDuration:i,animationEasing:o,isAnimationActive:u,hide:d,label:m,legendType:h,xAxisId:v,yAxisId:g,points:w,layout:x,height:P,width:O,left:k,top:N,needClip:b}))}function eD(e){var{layout:t,xAxis:r,yAxis:n,xAxisTicks:a,yAxisTicks:i,dataKey:o,bandSize:l,displayedData:c}=e;return c.map((d,u)=>{var m=he(d,o);if(t==="horizontal"){var h=qd({axis:r,ticks:a,bandSize:l,entry:d,index:u}),v=De(m)?null:n.scale.map(m);return{x:h,y:v??null,value:m,payload:d}}var g=De(m)?null:r.scale.map(m),y=qd({axis:n,ticks:i,bandSize:l,entry:d,index:u});return g==null||y==null?null:{x:g,y,value:m,payload:d}}).filter(Boolean)}function tD(e){var t=Le(e,Fb),r=rt();return f.createElement(wb,{id:t.id,type:"line"},n=>f.createElement(f.Fragment,null,f.createElement(nM,{legendPayload:KI(t)}),f.createElement(VI,{dataKey:t.dataKey,data:t.data,stroke:t.stroke,strokeWidth:t.strokeWidth,fill:t.fill,name:t.name,hide:t.hide,unit:t.unit,tooltipType:t.tooltipType,id:n}),f.createElement(gM,{type:"line",id:n,data:t.data,xAxisId:t.xAxisId,yAxisId:t.yAxisId,zAxisId:0,dataKey:t.dataKey,hide:t.hide,isPanorama:r}),f.createElement(QI,Fn({},t,{id:n}))))}var zb=f.memo(tD,Gn);zb.displayName="Line";var rD=["domain","range"],nD=["domain","range"];function yv(e,t){if(e==null)return{};var r,n,a=aD(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)===-1&&{}.propertyIsEnumerable.call(e,r)&&(a[r]=e[r])}return a}function aD(e,t){if(e==null)return{};var r={};for(var n in e)if({}.hasOwnProperty.call(e,n)){if(t.indexOf(n)!==-1)continue;r[n]=e[n]}return r}function gv(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 Kb(e,t){if(e===t)return!0;var{domain:r,range:n}=e,a=yv(e,rD),{domain:i,range:o}=t,l=yv(t,nD);return!gv(r,i)||!gv(n,o)?!1:Gn(a,l)}var iD=["type"],sD=["dangerouslySetInnerHTML","ticks","scale"],oD=["id","scale"];function yl(){return yl=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)({}).hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},yl.apply(null,arguments)}function bv(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),r.push.apply(r,n)}return r}function xv(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?bv(Object(r),!0).forEach(function(n){lD(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):bv(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function lD(e,t,r){return(t=cD(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function cD(e){var t=uD(e,"string");return typeof t=="symbol"?t:t+""}function uD(e,t){if(typeof e!="object"||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var n=r.call(e,t);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function gl(e,t){if(e==null)return{};var r,n,a=dD(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)===-1&&{}.propertyIsEnumerable.call(e,r)&&(a[r]=e[r])}return a}function dD(e,t){if(e==null)return{};var r={};for(var n in e)if({}.hasOwnProperty.call(e,n)){if(t.indexOf(n)!==-1)continue;r[n]=e[n]}return r}function fD(e){var t=ve(),r=f.useRef(null),n=Yp(),{type:a}=e,i=gl(e,iD),o=Gi(n,"xAxis",a),l=f.useMemo(()=>{if(o!=null)return xv(xv({},i),{},{type:o})},[i,o]);return f.useLayoutEffect(()=>{l!=null&&(r.current===null?t(sT(l)):r.current!==l&&t(oT({prev:r.current,next:l})),r.current=l)},[l,t]),f.useLayoutEffect(()=>()=>{r.current&&(t(lT(r.current)),r.current=null)},[t]),null}var mD=e=>{var{xAxisId:t,className:r}=e,n=Y(Hp),a=rt(),i="xAxis",o=Y(b=>vg(b,i,t,a)),l=Y(b=>IO(b,t)),c=Y(b=>FO(b,t)),d=Y(b=>qy(b,t));if(l==null||c==null||d==null)return null;var{dangerouslySetInnerHTML:u,ticks:m,scale:h}=e,v=gl(e,sD),{id:g,scale:y}=d,p=gl(d,oD);return f.createElement(au,yl({},v,p,{x:c.x,y:c.y,width:l.width,height:l.height,className:de("recharts-".concat(i," ").concat(i),r),viewBox:n,ticks:o,axisType:i,axisId:t}))},vD={allowDataOverflow:Me.allowDataOverflow,allowDecimals:Me.allowDecimals,allowDuplicatedCategory:Me.allowDuplicatedCategory,angle:Me.angle,axisLine:Kt.axisLine,height:Me.height,hide:!1,includeHidden:Me.includeHidden,interval:Me.interval,label:!1,minTickGap:Me.minTickGap,mirror:Me.mirror,orientation:Me.orientation,padding:Me.padding,reversed:Me.reversed,scale:Me.scale,tick:Me.tick,tickCount:Me.tickCount,tickLine:Kt.tickLine,tickSize:Kt.tickSize,type:Me.type,niceTicks:Me.niceTicks,xAxisId:0},hD=e=>{var t=Le(e,vD);return f.createElement(f.Fragment,null,f.createElement(fD,{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}),f.createElement(mD,t))},Vb=f.memo(hD,Kb);Vb.displayName="XAxis";var pD=["type"],yD=["dangerouslySetInnerHTML","ticks","scale"],gD=["id","scale"];function bl(){return bl=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)({}).hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},bl.apply(null,arguments)}function jv(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),r.push.apply(r,n)}return r}function wv(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?jv(Object(r),!0).forEach(function(n){bD(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):jv(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function bD(e,t,r){return(t=xD(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function xD(e){var t=jD(e,"string");return typeof t=="symbol"?t:t+""}function jD(e,t){if(typeof e!="object"||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var n=r.call(e,t);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function xl(e,t){if(e==null)return{};var r,n,a=wD(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)===-1&&{}.propertyIsEnumerable.call(e,r)&&(a[r]=e[r])}return a}function wD(e,t){if(e==null)return{};var r={};for(var n in e)if({}.hasOwnProperty.call(e,n)){if(t.indexOf(n)!==-1)continue;r[n]=e[n]}return r}function CD(e){var t=ve(),r=f.useRef(null),n=Yp(),{type:a}=e,i=xl(e,pD),o=Gi(n,"yAxis",a),l=f.useMemo(()=>{if(o!=null)return wv(wv({},i),{},{type:o})},[o,i]);return f.useLayoutEffect(()=>{l!=null&&(r.current===null?t(cT(l)):r.current!==l&&t(uT({prev:r.current,next:l})),r.current=l)},[l,t]),f.useLayoutEffect(()=>()=>{r.current&&(t(dT(r.current)),r.current=null)},[t]),null}function kD(e){var{yAxisId:t,className:r,width:n,label:a}=e,i=f.useRef(null),o=f.useRef(null),l=Y(Hp),c=rt(),d=ve(),u="yAxis",m=Y(P=>VO(P,t)),h=Y(P=>KO(P,t)),v=Y(P=>vg(P,u,t,c)),g=Y(P=>Uy(P,t));if(f.useLayoutEffect(()=>{if(!(n!=="auto"||!m||Qc(a)||f.isValidElement(a)||g==null)){var P=i.current;if(P){var O=P.getCalculatedWidth();Math.round(m.width)!==Math.round(O)&&d(fT({id:t,width:O}))}}},[v,m,d,a,t,n,g]),m==null||h==null||g==null)return null;var{dangerouslySetInnerHTML:y,ticks:p,scale:b}=e,j=xl(e,yD),{id:x,scale:C}=g,w=xl(g,gD);return f.createElement(au,bl({},j,w,{ref:i,labelRef:o,x:h.x,y:h.y,tickTextProps:n==="auto"?{width:void 0}:{width:n},width:m.width,height:m.height,className:de("recharts-".concat(u," ").concat(u),r),viewBox:l,ticks:v,axisType:u,axisId:t}))}var PD={allowDataOverflow:Te.allowDataOverflow,allowDecimals:Te.allowDecimals,allowDuplicatedCategory:Te.allowDuplicatedCategory,angle:Te.angle,axisLine:Kt.axisLine,hide:!1,includeHidden:Te.includeHidden,interval:Te.interval,label:!1,minTickGap:Te.minTickGap,mirror:Te.mirror,orientation:Te.orientation,padding:Te.padding,reversed:Te.reversed,scale:Te.scale,tick:Te.tick,tickCount:Te.tickCount,tickLine:Kt.tickLine,tickSize:Kt.tickSize,type:Te.type,niceTicks:Te.niceTicks,width:Te.width,yAxisId:0},SD=e=>{var t=Le(e,PD);return f.createElement(f.Fragment,null,f.createElement(CD,{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}),f.createElement(kD,t))},qb=f.memo(SD,Kb);qb.displayName="YAxis";var ND=(e,t)=>t,su=M([ND,ge,Ry,Fe,Ig,Zt,dE,Be],gE);function OD(e){return"getBBox"in e.currentTarget&&typeof e.currentTarget.getBBox=="function"}function ou(e){var t=e.currentTarget.getBoundingClientRect(),r,n;if(OD(e)){var a=e.currentTarget.getBBox();r=a.width>0?t.width/a.width:1,n=a.height>0?t.height/a.height:1}else{var i=e.currentTarget;r=i.offsetWidth>0?t.width/i.offsetWidth:1,n=i.offsetHeight>0?t.height/i.offsetHeight:1}var o=(l,c)=>({relativeX:Math.round((l-t.left)/r),relativeY:Math.round((c-t.top)/n)});return"touches"in e?Array.from(e.touches).map(l=>o(l.clientX,l.clientY)):o(e.clientX,e.clientY)}var Ub=ct("mouseClick"),Wb=qn();Wb.startListening({actionCreator:Ub,effect:(e,t)=>{var r=e.payload,n=su(t.getState(),ou(r));n?.activeIndex!=null&&t.dispatch(iA({activeIndex:n.activeIndex,activeDataKey:void 0,activeCoordinate:n.activeCoordinate}))}});var jl=ct("mouseMove"),Hb=qn(),Fr=null,mr=null,So=null;Hb.startListening({actionCreator:jl,effect:(e,t)=>{var r=e.payload,n=t.getState(),{throttleDelay:a,throttledEvents:i}=n.eventSettings,o=i==="all"||i?.includes("mousemove");Fr!==null&&(cancelAnimationFrame(Fr),Fr=null),mr!==null&&(typeof a!="number"||!o)&&(clearTimeout(mr),mr=null),So=ou(r);var l=()=>{var c=t.getState(),d=ta(c,c.tooltip.settings.shared);if(!So){Fr=null,mr=null;return}if(d==="axis"){var u=su(c,So);u?.activeIndex!=null?t.dispatch(kg({activeIndex:u.activeIndex,activeDataKey:void 0,activeCoordinate:u.activeCoordinate})):t.dispatch(Cg())}Fr=null,mr=null};if(!o){l();return}a==="raf"?Fr=requestAnimationFrame(l):typeof a=="number"&&mr===null&&(mr=setTimeout(l,a))}});function AD(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 Cv={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},Gb=Ye({name:"rootProps",initialState:Cv,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:Cv.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}}}),ED=Gb.reducer,{updateOptions:_D}=Gb.actions,MD=null,TD={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)},Xb=Ye({name:"polarOptions",initialState:MD,reducers:TD}),{updatePolarOptions:ID}=Xb.actions,DD=Xb.reducer,Yb=ct("keyDown"),Zb=ct("focus"),Jb=ct("blur"),os=qn(),zr=null,vr=null,ha=null;os.startListening({actionCreator:Yb,effect:(e,t)=>{ha=e.payload,zr!==null&&(cancelAnimationFrame(zr),zr=null);var r=t.getState(),{throttleDelay:n,throttledEvents:a}=r.eventSettings,i=a==="all"||a.includes("keydown");vr!==null&&(typeof n!="number"||!i)&&(clearTimeout(vr),vr=null);var o=()=>{try{var l=t.getState(),c=l.rootProps.accessibilityLayer!==!1;if(!c)return;var{keyboardInteraction:d}=l.tooltip,u=ha;if(u!=="ArrowRight"&&u!=="ArrowLeft"&&u!=="Enter")return;var m=Nn(d,Mr(l),en(l),tn(l)),h=m==null?-1:Number(m),v=!Number.isFinite(h)||h<0,g=Zt(l),y=Mr(l),p=ta(l,l.tooltip.settings.shared);if(u==="Enter"){if(v)return;var b=ai(l,p,"hover",String(d.index));t.dispatch(ni({active:!d.active,activeIndex:d.index,activeCoordinate:b}));return}var j=GO(l),x=j==="left-to-right"?1:-1,C=u==="ArrowRight"?1:-1,w;if(v){var P=en(l),O=tn(l),k=C*x,N=D=>({active:!1,index:String(D),dataKey:void 0,graphicalItemId:void 0,coordinate:void 0});if(w=-1,k>0){for(var S=0;S<y.length;S++)if(Nn(N(S),y,P,O)!=null){w=S;break}}else for(var A=y.length-1;A>=0;A--)if(Nn(N(A),y,P,O)!=null){w=A;break}if(w<0)return}else{w=h+C*x;var _=g?.length||y.length;if(_===0||w>=_||w<0)return}var I=ai(l,p,"hover",String(w));t.dispatch(ni({active:!0,activeIndex:w.toString(),activeCoordinate:I}))}finally{zr=null,vr=null}};if(!i){o();return}n==="raf"?zr=requestAnimationFrame(o):typeof n=="number"&&vr===null&&(o(),ha=null,vr=setTimeout(()=>{ha?o():(vr=null,zr=null)},n))}});os.startListening({actionCreator:Zb,effect:(e,t)=>{var r=t.getState(),n=r.rootProps.accessibilityLayer!==!1;if(n){var{keyboardInteraction:a}=r.tooltip;if(!a.active&&a.index==null){var i="0",o=ta(r,r.tooltip.settings.shared),l=ai(r,o,"hover",String(i));t.dispatch(ni({active:!0,activeIndex:i,activeCoordinate:l}))}}}});os.startListening({actionCreator:Jb,effect:(e,t)=>{var r=t.getState(),n=r.rootProps.accessibilityLayer!==!1;if(n){var{keyboardInteraction:a}=r.tooltip;a.active&&t.dispatch(ni({active:!1,activeIndex:a.index,activeCoordinate:a.coordinate}))}}});function Qb(e){e.persist();var{currentTarget:t}=e;return new Proxy(e,{get:(r,n)=>{if(n==="currentTarget")return t;var a=Reflect.get(r,n);return typeof a=="function"?a.bind(r):a}})}var vt=ct("externalEvent"),ex=qn(),pa=new Map,bn=new Map,No=new Map;ex.startListening({actionCreator:vt,effect:(e,t)=>{var{handler:r,reactEvent:n}=e.payload;if(r!=null){var a=n.type,i=Qb(n);No.set(a,{handler:r,reactEvent:i});var o=pa.get(a);o!==void 0&&(cancelAnimationFrame(o),pa.delete(a));var l=t.getState(),{throttleDelay:c,throttledEvents:d}=l.eventSettings,u=d,m=u==="all"||u?.includes(a),h=bn.get(a);h!==void 0&&(typeof c!="number"||!m)&&(clearTimeout(h),bn.delete(a));var v=()=>{var p=No.get(a);try{if(!p)return;var{handler:b,reactEvent:j}=p,x=t.getState(),C={activeCoordinate:XA(x),activeDataKey:$g(x),activeIndex:rn(x),activeLabel:Rg(x),activeTooltipIndex:rn(x),isTooltipActive:YA(x)};b&&b(C,j)}finally{pa.delete(a),bn.delete(a),No.delete(a)}};if(!m){v();return}if(c==="raf"){var g=requestAnimationFrame(v);pa.set(a,g)}else if(typeof c=="number"){if(!bn.has(a)){v();var y=setTimeout(v,c);bn.set(a,y)}}else v()}}});var LD=M([fn],e=>e.tooltipItemPayloads),RD=M([LD,(e,t)=>t,(e,t,r)=>r],(e,t,r)=>{if(t!=null){var n=e.find(i=>i.settings.graphicalItemId===r);if(n!=null){var{getPosition:a}=n;if(a!=null)return a(t)}}}),tx=ct("touchMove"),rx=qn(),hr=null,Qt=null,kv=null,xn=null;rx.startListening({actionCreator:tx,effect:(e,t)=>{var r=e.payload;if(!(r.touches==null||r.touches.length===0)){xn=Qb(r);var n=t.getState(),{throttleDelay:a,throttledEvents:i}=n.eventSettings,o=i==="all"||i.includes("touchmove");hr!==null&&(cancelAnimationFrame(hr),hr=null),Qt!==null&&(typeof a!="number"||!o)&&(clearTimeout(Qt),Qt=null),kv=Array.from(r.touches).map(c=>ou({clientX:c.clientX,clientY:c.clientY,currentTarget:r.currentTarget}));var l=()=>{if(xn!=null){var c=t.getState(),d=ta(c,c.tooltip.settings.shared);if(d==="axis"){var u,m=(u=kv)===null||u===void 0?void 0:u[0];if(m==null){hr=null,Qt=null;return}var h=su(c,m);h?.activeIndex!=null&&t.dispatch(kg({activeIndex:h.activeIndex,activeDataKey:void 0,activeCoordinate:h.activeCoordinate}))}else if(d==="item"){var v,g=xn.touches[0];if(document.elementFromPoint==null||g==null)return;var y=document.elementFromPoint(g.clientX,g.clientY);if(!y||!y.getAttribute)return;var p=y.getAttribute(Up),b=(v=y.getAttribute(Wp))!==null&&v!==void 0?v:void 0,j=Dr(c).find(w=>w.id===b);if(p==null||j==null||b==null)return;var{dataKey:x}=j,C=RD(c,p,b);t.dispatch(wg({activeDataKey:x,activeIndex:p,activeCoordinate:C,activeGraphicalItemId:b}))}hr=null,Qt=null}};if(!o){l();return}a==="raf"?hr=requestAnimationFrame(l):typeof a=="number"&&Qt===null&&(l(),xn=null,Qt=setTimeout(()=>{xn?l():(Qt=null,hr=null)},a))}}});var lu={throttleDelay:"raf",throttledEvents:["mousemove","touchmove","pointermove","scroll","wheel"]},nx=Ye({name:"eventSettings",initialState:lu,reducers:{setEventSettings:(e,t)=>{t.payload.throttleDelay!=null&&(e.throttleDelay=t.payload.throttleDelay),t.payload.throttledEvents!=null&&(e.throttledEvents=t.payload.throttledEvents)}}}),{setEventSettings:$D}=nx.actions,BD=nx.reducer,FD=mp({brush:wT,cartesianAxis:mT,chartData:GE,errorBars:jI,eventSettings:BD,graphicalItems:pM,layout:Ek,legend:bP,options:VE,polarAxis:P1,polarOptions:DD,referenceElements:ST,renderedTicks:VT,rootProps:ED,tooltip:sA,zIndex:_E}),zD=function(t){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"Chart";return tk({reducer:FD,preloadedState:t,middleware:n=>{var a;return n({serializableCheck:!1,immutableCheck:!["commonjs","es6","production"].includes((a="es6")!==null&&a!==void 0?a:"")}).concat([Wb.middleware,Hb.middleware,os.middleware,ex.middleware,rx.middleware])},enhancers:n=>{var a=n;return typeof n=="function"&&(a=n()),a.concat(Op({type:"raf"}))},devTools:{serialize:{replacer:AD},name:"recharts-".concat(r)}})};function ax(e){var{preloadedState:t,children:r,reduxStoreName:n}=e,a=rt(),i=f.useRef(null);if(a)return r;i.current==null&&(i.current=zD(t,n));var o=ec;return f.createElement(RP,{context:o,store:i.current},r)}function KD(e){var{layout:t,margin:r}=e,n=ve(),a=rt();return f.useEffect(()=>{a||(n(Nk(t)),n(Sk(r)))},[n,a,t,r]),null}var ix=f.memo(KD,Gn);function sx(e){var t=ve();return f.useEffect(()=>{t(_D(e))},[t,e]),null}var VD=e=>{var t=ve();return f.useEffect(()=>{t($D(e))},[t,e]),null},ox=f.memo(VD,Gn);function Pv(e){var{zIndex:t,isPanorama:r}=e,n=f.useRef(null),a=ve();return f.useLayoutEffect(()=>(n.current&&a(AE({zIndex:t,element:n.current,isPanorama:r})),()=>{a(EE({zIndex:t,isPanorama:r}))}),[a,t,r]),f.createElement("g",{tabIndex:-1,ref:n,className:"recharts-zIndex-layer_".concat(t)})}function Sv(e){var{children:t,isPanorama:r}=e,n=Y(xE);if(!n||n.length===0)return t;var a=n.filter(o=>o<0),i=n.filter(o=>o>0);return f.createElement(f.Fragment,null,a.map(o=>f.createElement(Pv,{key:o,zIndex:o,isPanorama:r})),t,i.map(o=>f.createElement(Pv,{key:o,zIndex:o,isPanorama:r})))}var qD=["children"];function UD(e,t){if(e==null)return{};var r,n,a=WD(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)===-1&&{}.propertyIsEnumerable.call(e,r)&&(a[r]=e[r])}return a}function WD(e,t){if(e==null)return{};var r={};for(var n in e)if({}.hasOwnProperty.call(e,n)){if(t.indexOf(n)!==-1)continue;r[n]=e[n]}return r}function ui(){return ui=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)({}).hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},ui.apply(null,arguments)}var HD={width:"100%",height:"100%",display:"block"},GD=f.forwardRef((e,t)=>{var r=lc(),n=cc(),a=cy();if(!Zr(r)||!Zr(n))return null;var{children:i,otherAttributes:o,title:l,desc:c}=e,d,u;return o!=null&&(typeof o.tabIndex=="number"?d=o.tabIndex:d=a?0:void 0,typeof o.role=="string"?u=o.role:u=a?"application":void 0),f.createElement(Wl,ui({},o,{title:l,desc:c,role:u,tabIndex:d,width:r,height:n,style:HD,ref:t}),i)}),XD=e=>{var{children:t}=e,r=Y(Bi);if(!r)return null;var{width:n,height:a,y:i,x:o}=r;return f.createElement(Wl,{width:n,height:a,x:o,y:i},t)},Nv=f.forwardRef((e,t)=>{var{children:r}=e,n=UD(e,qD),a=rt();return a?f.createElement(XD,null,f.createElement(Sv,{isPanorama:!0},r)):f.createElement(GD,ui({ref:t},n),f.createElement(Sv,{isPanorama:!1},r))});function YD(){var e=ve(),[t,r]=f.useState(null),n=Y(qk);return f.useEffect(()=>{if(t!=null){var a=t.getBoundingClientRect(),i=a.width/t.offsetWidth;ue(i)&&i!==n&&e(Ak(i))}},[t,e,n]),r}function Ov(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),r.push.apply(r,n)}return r}function ZD(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?Ov(Object(r),!0).forEach(function(n){JD(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):Ov(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function JD(e,t,r){return(t=QD(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function QD(e){var t=eL(e,"string");return typeof t=="symbol"?t:t+""}function eL(e,t){if(typeof e!="object"||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var n=r.call(e,t);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function ar(){return ar=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)({}).hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},ar.apply(null,arguments)}var tL=()=>(n_(),null);function di(e){if(typeof e=="number")return e;if(typeof e=="string"){var t=parseFloat(e);if(!Number.isNaN(t))return t}return 0}var rL=f.forwardRef((e,t)=>{var r,n,a=f.useRef(null),[i,o]=f.useState({containerWidth:di((r=e.style)===null||r===void 0?void 0:r.width),containerHeight:di((n=e.style)===null||n===void 0?void 0:n.height)}),l=f.useCallback((d,u)=>{o(m=>{var h=Math.round(d),v=Math.round(u);return m.containerWidth===h&&m.containerHeight===v?m:{containerWidth:h,containerHeight:v}})},[]),c=f.useCallback(d=>{if(typeof t=="function"&&t(d),a.current!=null&&(a.current.disconnect(),a.current=null),d!=null&&typeof ResizeObserver<"u"){var{width:u,height:m}=d.getBoundingClientRect();l(u,m);var h=g=>{var y=g[0];if(y!=null){var{width:p,height:b}=y.contentRect;l(p,b)}},v=new ResizeObserver(h);v.observe(d),a.current=v}},[t,l]);return f.useEffect(()=>()=>{var d=a.current;d?.disconnect()},[l]),f.createElement(f.Fragment,null,f.createElement(Wn,{width:i.containerWidth,height:i.containerHeight}),f.createElement("div",ar({ref:c},e)))}),nL=f.forwardRef((e,t)=>{var{width:r,height:n}=e,[a,i]=f.useState({containerWidth:di(r),containerHeight:di(n)}),o=f.useCallback((c,d)=>{i(u=>{var m=Math.round(c),h=Math.round(d);return u.containerWidth===m&&u.containerHeight===h?u:{containerWidth:m,containerHeight:h}})},[]),l=f.useCallback(c=>{if(typeof t=="function"&&t(c),c!=null){var{width:d,height:u}=c.getBoundingClientRect();o(d,u)}},[t,o]);return f.createElement(f.Fragment,null,f.createElement(Wn,{width:a.containerWidth,height:a.containerHeight}),f.createElement("div",ar({ref:l},e)))}),aL=f.forwardRef((e,t)=>{var{width:r,height:n}=e;return f.createElement(f.Fragment,null,f.createElement(Wn,{width:r,height:n}),f.createElement("div",ar({ref:t},e)))}),iL=f.forwardRef((e,t)=>{var{width:r,height:n}=e;return typeof r=="string"||typeof n=="string"?f.createElement(nL,ar({},e,{ref:t})):typeof r=="number"&&typeof n=="number"?f.createElement(aL,ar({},e,{width:r,height:n,ref:t})):f.createElement(f.Fragment,null,f.createElement(Wn,{width:r,height:n}),f.createElement("div",ar({ref:t},e)))});function sL(e){return e?rL:iL}var oL=f.forwardRef((e,t)=>{var{children:r,className:n,height:a,onClick:i,onContextMenu:o,onDoubleClick:l,onMouseDown:c,onMouseEnter:d,onMouseLeave:u,onMouseMove:m,onMouseUp:h,onTouchEnd:v,onTouchMove:g,onTouchStart:y,style:p,width:b,responsive:j,dispatchTouchEvents:x=!0}=e,C=f.useRef(null),w=ve(),[P,O]=f.useState(null),[k,N]=f.useState(null),S=YD(),A=Gp(),_=A?.width>0?A.width:b,I=A?.height>0?A.height:a,D=f.useCallback($=>{S($),typeof t=="function"&&t($),O($),N($),$!=null&&(C.current=$)},[S,t,O,N]),F=f.useCallback($=>{w(Ub($)),w(vt({handler:i,reactEvent:$}))},[w,i]),V=f.useCallback($=>{w(jl($)),w(vt({handler:d,reactEvent:$}))},[w,d]),q=f.useCallback($=>{w(Cg()),w(vt({handler:u,reactEvent:$}))},[w,u]),te=f.useCallback($=>{w(jl($)),w(vt({handler:m,reactEvent:$}))},[w,m]),U=f.useCallback(()=>{w(Zb())},[w]),ee=f.useCallback(()=>{w(Jb())},[w]),L=f.useCallback($=>{w(Yb($.key))},[w]),B=f.useCallback($=>{w(vt({handler:o,reactEvent:$}))},[w,o]),X=f.useCallback($=>{w(vt({handler:l,reactEvent:$}))},[w,l]),Q=f.useCallback($=>{w(vt({handler:c,reactEvent:$}))},[w,c]),G=f.useCallback($=>{w(vt({handler:h,reactEvent:$}))},[w,h]),ie=f.useCallback($=>{w(vt({handler:y,reactEvent:$}))},[w,y]),se=f.useCallback($=>{x&&w(tx($)),w(vt({handler:g,reactEvent:$}))},[w,x,g]),re=f.useCallback($=>{w(vt({handler:v,reactEvent:$}))},[w,v]),W=sL(j);return f.createElement(Wg.Provider,{value:P},f.createElement(qh.Provider,{value:k},f.createElement(W,{width:_??p?.width,height:I??p?.height,className:de("recharts-wrapper",n),style:ZD({position:"relative",cursor:"default",width:_,height:I},p),onClick:F,onContextMenu:B,onDoubleClick:X,onFocus:U,onBlur:ee,onKeyDown:L,onMouseDown:Q,onMouseEnter:V,onMouseLeave:q,onMouseMove:te,onMouseUp:G,onTouchEnd:re,onTouchMove:se,onTouchStart:ie,ref:D},f.createElement(tL,null),r)))}),lL=["width","height","responsive","children","className","style","compact","title","desc"];function cL(e,t){if(e==null)return{};var r,n,a=uL(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)===-1&&{}.propertyIsEnumerable.call(e,r)&&(a[r]=e[r])}return a}function uL(e,t){if(e==null)return{};var r={};for(var n in e)if({}.hasOwnProperty.call(e,n)){if(t.indexOf(n)!==-1)continue;r[n]=e[n]}return r}var lx=f.forwardRef((e,t)=>{var{width:r,height:n,responsive:a,children:i,className:o,style:l,compact:c,title:d,desc:u}=e,m=cL(e,lL),h=yt(m);return c?f.createElement(f.Fragment,null,f.createElement(Wn,{width:r,height:n}),f.createElement(Nv,{otherAttributes:h,title:d,desc:u},i)):f.createElement(oL,{className:o,style:l,width:r,height:n,responsive:a??!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},f.createElement(Nv,{otherAttributes:h,title:d,desc:u,ref:t},f.createElement(OT,null,i)))});function wl(){return wl=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)({}).hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},wl.apply(null,arguments)}function Av(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),r.push.apply(r,n)}return r}function dL(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?Av(Object(r),!0).forEach(function(n){fL(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):Av(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function fL(e,t,r){return(t=mL(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function mL(e){var t=vL(e,"string");return typeof t=="symbol"?t:t+""}function vL(e,t){if(typeof e!="object"||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var n=r.call(e,t);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}var hL={top:5,right:5,bottom:5,left:5},pL=dL({accessibilityLayer:!0,barCategoryGap:"10%",barGap:4,layout:"horizontal",margin:hL,responsive:!1,reverseStackOrder:!1,stackOffset:"none",syncMethod:"index"},lu),yL=f.forwardRef(function(t,r){var n,a=Le(t.categoricalChartProps,pL),{chartName:i,defaultTooltipEventType:o,validateTooltipEventTypes:l,tooltipPayloadSearcher:c,categoricalChartProps:d}=t,u={chartName:i,defaultTooltipEventType:o,validateTooltipEventTypes:l,tooltipPayloadSearcher:c,eventEmitter:void 0};return f.createElement(ax,{preloadedState:{options:u},reduxStoreName:(n=d.id)!==null&&n!==void 0?n:i},f.createElement(Sb,{chartData:d.data}),f.createElement(ix,{layout:a.layout,margin:a.margin}),f.createElement(ox,{throttleDelay:a.throttleDelay,throttledEvents:a.throttledEvents}),f.createElement(sx,{baseValue:a.baseValue,accessibilityLayer:a.accessibilityLayer,barCategoryGap:a.barCategoryGap,maxBarSize:a.maxBarSize,stackOffset:a.stackOffset,barGap:a.barGap,barSize:a.barSize,syncId:a.syncId,syncMethod:a.syncMethod,className:a.className,reverseStackOrder:a.reverseStackOrder}),f.createElement(lx,wl({},a,{ref:r})))}),gL=["axis"],bL=f.forwardRef((e,t)=>f.createElement(yL,{chartName:"LineChart",defaultTooltipEventType:"axis",validateTooltipEventTypes:gL,tooltipPayloadSearcher:Hg,categoricalChartProps:e,ref:t}));function xL(e){var t=ve();return f.useEffect(()=>{t(ID(e))},[t,e]),null}var jL=["layout"];function Cl(){return Cl=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)({}).hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},Cl.apply(null,arguments)}function wL(e,t){if(e==null)return{};var r,n,a=CL(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)===-1&&{}.propertyIsEnumerable.call(e,r)&&(a[r]=e[r])}return a}function CL(e,t){if(e==null)return{};var r={};for(var n in e)if({}.hasOwnProperty.call(e,n)){if(t.indexOf(n)!==-1)continue;r[n]=e[n]}return r}function Ev(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),r.push.apply(r,n)}return r}function kL(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?Ev(Object(r),!0).forEach(function(n){PL(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):Ev(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function PL(e,t,r){return(t=SL(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function SL(e){var t=NL(e,"string");return typeof t=="symbol"?t:t+""}function NL(e,t){if(typeof e!="object"||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var n=r.call(e,t);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}var OL={top:5,right:5,bottom:5,left:5},cx=kL({accessibilityLayer:!0,stackOffset:"none",barCategoryGap:"10%",barGap:4,margin:OL,reverseStackOrder:!1,syncMethod:"index",layout:"radial",responsive:!1,cx:"50%",cy:"50%",innerRadius:0,outerRadius:"80%"},lu),AL=f.forwardRef(function(t,r){var n,a=Le(t.categoricalChartProps,cx),{layout:i}=a,o=wL(a,jL),{chartName:l,defaultTooltipEventType:c,validateTooltipEventTypes:d,tooltipPayloadSearcher:u}=t,m={chartName:l,defaultTooltipEventType:c,validateTooltipEventTypes:d,tooltipPayloadSearcher:u,eventEmitter:void 0};return f.createElement(ax,{preloadedState:{options:m},reduxStoreName:(n=a.id)!==null&&n!==void 0?n:l},f.createElement(Sb,{chartData:a.data}),f.createElement(ix,{layout:i,margin:a.margin}),f.createElement(ox,{throttleDelay:a.throttleDelay,throttledEvents:a.throttledEvents}),f.createElement(sx,{baseValue:void 0,accessibilityLayer:a.accessibilityLayer,barCategoryGap:a.barCategoryGap,maxBarSize:a.maxBarSize,stackOffset:a.stackOffset,barGap:a.barGap,barSize:a.barSize,syncId:a.syncId,syncMethod:a.syncMethod,className:a.className,reverseStackOrder:a.reverseStackOrder}),f.createElement(xL,{cx:a.cx,cy:a.cy,startAngle:a.startAngle,endAngle:a.endAngle,innerRadius:a.innerRadius,outerRadius:a.outerRadius}),f.createElement(lx,Cl({},o,{ref:r})))});function _v(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),r.push.apply(r,n)}return r}function Mv(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?_v(Object(r),!0).forEach(function(n){EL(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):_v(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function EL(e,t,r){return(t=_L(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function _L(e){var t=ML(e,"string");return typeof t=="symbol"?t:t+""}function ML(e,t){if(typeof e!="object"||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var n=r.call(e,t);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}var TL=["item"],IL=Mv(Mv({},cx),{},{layout:"centric",startAngle:0,endAngle:360}),DL=f.forwardRef((e,t)=>{var r=Le(e,IL);return f.createElement(AL,{chartName:"PieChart",defaultTooltipEventType:"item",validateTooltipEventTypes:TL,tooltipPayloadSearcher:Hg,categoricalChartProps:r,ref:t})});const fi="currentColor",LL=["--accent","--todo","--in-progress","--in-review","--triage","--color-success","--color-warning","--color-error"];function pr(e,t=fi){if(typeof document>"u"||typeof getComputedStyle!="function")return t;const r=getComputedStyle(document.documentElement).getPropertyValue(e).trim();return r.length>0?r:t}function cu(){const e=pr("--text"),t=pr("--text-muted",e),r=pr("--accent"),n=pr("--surface-1",""),a=pr("--surface-2",n),i=pr("--border-subtle",""),o=LL.map(l=>pr(l)).filter(l=>l.length>0);return{stroke:r,fill:a,grid:i,tick:t,tooltipBackground:n,tooltipBorder:i,tooltipText:e,legendText:t,palette:o.length>0?o:[fi]}}function ux(e,t=cu()){if(t.palette.length===0)return fi;const r=Number.isFinite(e)&&e>=0?Math.floor(e):0;return t.palette[r%t.palette.length]??fi}const RL={width:320,height:220},dx=120,fx=120;function $L(){return typeof window<"u"&&typeof window.matchMedia=="function"&&window.matchMedia("(prefers-reduced-motion: reduce)").matches}function BL(e){return e.map(t=>({label:t.label,value:Number.isFinite(t.value)&&t.value>0?t.value:0})).filter(t=>t.value>0)}function Tv(e,t){return e!==void 0||t!==void 0?{width:e,height:t}:void 0}function Iv(e){return typeof e=="number"||typeof e=="string"&&/^\d+(?:\.\d+)?%$/.test(e)?e:"100%"}function mi(e,t){return Number.isFinite(e)&&e>=t?e:null}function FL(e,t,r){return{width:typeof t=="number"&&t>0?t:e.width,height:typeof r=="number"&&r>0?r:e.height}}function zL(e,t){return Math.abs(e.width-t.width)<.5&&Math.abs(e.height-t.height)<.5}function KL(e){const t=e.getBoundingClientRect(),r=mi(t.width,dx),n=mi(t.height,fx);return r===null||n===null?null:{width:r,height:n}}function VL(){const e=f.useRef(null),[t,r]=f.useState(RL);return f.useLayoutEffect(()=>{const n=e.current;if(!n)return;const a=o=>{o&&r(l=>zL(l,o)?l:o)};if(a(KL(n)),typeof ResizeObserver>"u")return;const i=new ResizeObserver(o=>{const l=o[0];if(!l)return;const c=mi(l.contentRect.width,dx),d=mi(l.contentRect.height,fx);a(c===null||d===null?null:{width:c,height:d})});return i.observe(n),()=>i.disconnect()},[]),{ref:e,dimensions:t}}function St({data:e,ariaLabel:t,width:r,height:n,emptyLabel:a="No chart data"}){const i=cu(),{ref:o,dimensions:l}=VL(),c=FL(l,r,n),d=BL(e);return d.length===0?s.jsx("div",{className:"cc-recharts-empty",role:"img","aria-label":t,style:Tv(r,n),children:a}):s.jsx("div",{ref:o,className:"cc-recharts-chart",role:"img","aria-label":t,style:Tv(r,n),"data-responsive-width":Iv(r),"data-responsive-height":Iv(n),children:s.jsxs(DL,{width:c.width,height:c.height,children:[s.jsx(kb,{data:d,dataKey:"value",nameKey:"label",isAnimationActive:!$L(),children:d.map((u,m)=>s.jsx(rs,{fill:ux(m,i),stroke:i.tooltipBorder},u.label))}),s.jsx(Yg,{contentStyle:{background:i.tooltipBackground,borderColor:i.tooltipBorder,color:i.tooltipText},itemStyle:{color:i.tooltipText},labelStyle:{color:i.tooltipText}}),s.jsx(fc,{wrapperStyle:{color:i.legendText}})]})})}const qL={width:360,height:220},mx=120,vx=120;function UL(){return typeof window<"u"&&typeof window.matchMedia=="function"&&window.matchMedia("(prefers-reduced-motion: reduce)").matches}function WL(e){return Number.isFinite(e)&&e>0?e:0}function HL(e){const t=e.reduce((r,n)=>n>r?n:r,0);return t<=0?e.map(()=>0):e.map(r=>r/t*100)}function GL(e,t){return e.map((r,n)=>{const a=r.values.map(WL);return{label:r.label,dataKey:`series${n}`,values:a,plotKey:t==="series"?`series${n}Normalized`:`series${n}`,plotValues:t==="series"?HL(a):a}}).filter(r=>r.values.length>0)}function XL(e){const t=e.reduce((r,n)=>Math.max(r,n.values.length),0);return Array.from({length:t},(r,n)=>{const a={index:n+1};for(const i of e)a[i.dataKey]=i.values[n]??0,a[i.plotKey]=i.plotValues[n]??0;return a})}function Dv(e,t){return e!==void 0||t!==void 0?{width:e,height:t}:void 0}function Lv(e){return typeof e=="number"||typeof e=="string"&&/^\d+(?:\.\d+)?%$/.test(e)?e:"100%"}function vi(e,t){return Number.isFinite(e)&&e>=t?e:null}function YL(e,t,r){return{width:typeof t=="number"&&t>0?t:e.width,height:typeof r=="number"&&r>0?r:e.height}}function ZL(e,t){return Math.abs(e.width-t.width)<.5&&Math.abs(e.height-t.height)<.5}function JL(e){const t=e.getBoundingClientRect(),r=vi(t.width,mx),n=vi(t.height,vx);return r===null||n===null?null:{width:r,height:n}}function QL(){const e=f.useRef(null),[t,r]=f.useState(qL);return f.useLayoutEffect(()=>{const n=e.current;if(!n)return;const a=o=>{o&&r(l=>ZL(l,o)?l:o)};if(a(JL(n)),typeof ResizeObserver>"u")return;const i=new ResizeObserver(o=>{const l=o[0];if(!l)return;const c=vi(l.contentRect.width,mx),d=vi(l.contentRect.height,vx);a(c===null||d===null?null:{width:c,height:d})});return i.observe(n),()=>i.disconnect()},[]),{ref:e,dimensions:t}}function cr({series:e,ariaLabel:t,width:r,height:n,emptyLabel:a="No chart data",xAxisLabels:i,valueFormatter:o,scaleMode:l="shared"}){const c=cu(),{ref:d,dimensions:u}=QL(),m=YL(u,r,n),h=GL(e,l),v=XL(h),g=p=>{const b=typeof p=="number"?p:Number(p);return Number.isFinite(b)?i?.[b-1]??String(p):String(p)},y=p=>{const b=typeof p=="number"?p:Number(p);return o&&Number.isFinite(b)?o(b):String(p)};return h.length===0||v.length===0?s.jsx("div",{className:"cc-recharts-empty",role:"img","aria-label":t,style:Dv(r,n),children:a}):s.jsx("div",{ref:d,className:"cc-recharts-chart",role:"img","aria-label":t,style:Dv(r,n),"data-scale-mode":l,"data-responsive-width":Lv(r),"data-responsive-height":Lv(n),children:s.jsxs(bL,{width:m.width,height:m.height,data:v,children:[s.jsx(Mb,{stroke:c.grid}),s.jsx(Vb,{dataKey:"index",stroke:c.tick,tick:{fill:c.tick},tickFormatter:i?g:void 0}),s.jsx(qb,{stroke:c.tick,tick:{fill:c.tick},domain:l==="series"?[0,100]:void 0,tickFormatter:l==="series"?p=>`${p}%`:o}),s.jsx(Yg,{contentStyle:{background:c.tooltipBackground,borderColor:c.tooltipBorder,color:c.tooltipText},itemStyle:{color:c.tooltipText},labelStyle:{color:c.tooltipText},formatter:o?p=>y(p):void 0,labelFormatter:i?g:void 0}),s.jsx(fc,{wrapperStyle:{color:c.legendText}}),h.map((p,b)=>s.jsx(zb,{type:"monotone",dataKey:p.plotKey,name:p.label,stroke:ux(b,c),isAnimationActive:!UL()},p.dataKey))]})})}function bt({testId:e,isLoading:t,error:r,isEmpty:n,emptyMessage:a,children:i}){const{t:o}=le("app");return t?s.jsxs("div",{className:"cc-loading-inline","data-testid":`cc-area-${e}-loading`,children:[s.jsx(El,{size:18,className:"spin"}),s.jsx("span",{children:o("commandCenter.area.loading","Loading…")})]}):r!==null?s.jsxs("div",{className:"cc-area-error","data-testid":`cc-area-${e}-error`,role:"alert",children:[s.jsx(gi,{size:22}),s.jsx("p",{children:r})]}):n?s.jsxs("div",{className:"cc-area-empty","data-testid":`cc-area-${e}-empty`,children:[s.jsx(bi,{size:24}),s.jsx("p",{children:a??o("commandCenter.area.empty","No data for the selected range.")})]}):s.jsx("div",{className:"cc-area","data-testid":`cc-area-${e}`,children:i})}function eR(e,t){if(t==="")return e;const r=t.slice(1);return`${e}${e.includes("?")?"&":"?"}${r}`}function qe(e,t,r={}){const[n,a]=f.useState(null),i=f.useRef(null),[o,l]=f.useState(!0),[c,d]=f.useState(null),u=Z0(t),m=Fh(t),h=f.useCallback(async()=>{if(m){l(!1);return}i.current!==null||l(!0),d(null);try{const y=await _l(eR(e,u));i.current=y,a(y)}catch(y){d(y instanceof Error?y.message:"Failed to load analytics")}finally{l(!1)}},[e,u,m]);f.useEffect(()=>{h()},[h]),f.useEffect(()=>{if(m||r.pollMs===void 0)return;const g=window.setInterval(()=>{h()},r.pollMs);return()=>window.clearInterval(g)},[m,h,r.pollMs]);const v=f.useCallback(()=>{h()},[h]);return{data:n,isLoading:o,error:c!==null&&n===null?c:null,reload:v}}const tR=15e3,rR=["hour","day","week"];function Rv(e){return e.unavailable||e.usd===null?-1:e.usd}function $v(e){return e.key??"unknown"}function Bv(e,t){return e.key??t}function hx(e){return Ml(e.key??"")}function nR({group:e,unknownLabel:t}){const r=e.key??t;return s.jsxs("span",{className:"cc-model-label",children:[s.jsx(eh,{provider:hx(e),size:"sm"}),s.jsx("span",{className:"cc-model-label-text",children:r})]})}function aR(e,t,r){const n=[...e];return n.sort((a,i)=>{let o=0;return t==="key"?o=(a.key??"").localeCompare(i.key??""):t==="totalTokens"?o=a.totalTokens-i.totalTokens:o=Rv(a.cost)-Rv(i.cost),o===0&&(o=(a.key??"").localeCompare(i.key??"")),o*r}),n}function iR({range:e}){const{t}=le("app"),[r,n]=f.useState("day"),a=`/command-center/tokens?groupBy=model&granularity=${r}`,{data:i,isLoading:o,error:l}=qe(a,e,{pollMs:tR}),c=f.useMemo(()=>i?.groups??[],[i?.groups]),d=f.useMemo(()=>i?.series??[],[i?.series]),[u,m]=f.useState("totalTokens"),[h,v]=f.useState(-1),g=f.useMemo(()=>c.map(A=>A.key??"∅").join(" "),[c]),y=f.useRef(null);f.useEffect(()=>{if(y.current===null){y.current=g;return}y.current!==g&&(y.current=g,m("totalTokens"),v(-1))},[g]);const p=f.useMemo(()=>aR(c,u,h),[c,u,h]),b=f.useMemo(()=>[...c].sort((A,_)=>_.totalTokens-A.totalTokens||(A.key??"").localeCompare(_.key??"")),[c]),j=f.useMemo(()=>b.map(A=>({label:Bv(A,t("commandCenter.tokens.unknownModel","(unknown)")),value:A.totalTokens,valueLabel:K(A.totalTokens),iconProvider:hx(A)})),[b,t]),x=f.useMemo(()=>b.map(A=>({label:Bv(A,t("commandCenter.tokens.unknownModel","(unknown)")),value:A.totalTokens})),[b,t]),C=f.useMemo(()=>[{label:t("commandCenter.tokens.input","Input"),values:d.map(A=>A.inputTokens)},{label:t("commandCenter.tokens.output","Output"),values:d.map(A=>A.outputTokens)},{label:t("commandCenter.tokens.cached","Cached"),values:d.map(A=>A.cachedTokens)},{label:t("commandCenter.tokens.total","Total"),values:d.map(A=>A.totalTokens)}],[d,t]);function w(A){A===u?v(_=>_===1?-1:1):(m(A),v(A==="key"?1:-1))}function P(A){return A!==u?null:s.jsx("span",{className:"cc-sort-caret",children:h===1?"▲":"▼"})}const O=i?.totals,k=f.useMemo(()=>d.map(A=>A.bucket).join(" "),[d]),N=O?.totalTokens??0,S=!i||N===0;return s.jsxs(bt,{testId:"tokens",isLoading:o,error:l,isEmpty:S,children:[s.jsxs("div",{className:"cc-area-section",children:[s.jsx("h3",{className:"cc-area-section-title",children:t("commandCenter.tokens.totalsTitle","Totals")}),s.jsxs("div",{className:"cc-stat-grid",children:[s.jsxs("div",{className:"card cc-stat-card","data-testid":"cc-tokens-total",children:[s.jsx("div",{className:"cc-stat-label",children:t("commandCenter.tokens.totalTokens","Total tokens")}),s.jsx("div",{className:"cc-stat-value cc-token-count-live",children:K(N)},N)]}),s.jsxs("div",{className:"card cc-stat-card","data-testid":"cc-tokens-cost",children:[s.jsx("div",{className:"cc-stat-label",children:t("commandCenter.tokens.cost","Estimated cost")}),s.jsx("div",{className:"cc-stat-value",children:i?Sr(i.cost.usd,i.cost.unavailable):"—"}),i?.cost.stale?s.jsx("span",{className:"cc-stat-sub",children:t("commandCenter.tokens.stalePricing","pricing may be stale")}):null]}),s.jsxs("div",{className:"card cc-stat-card",children:[s.jsx("div",{className:"cc-stat-label",children:t("commandCenter.tokens.tasks","Tasks")}),s.jsx("div",{className:"cc-stat-value",children:K(O?.nTasks??0)})]}),s.jsxs("div",{className:"card cc-stat-card",children:[s.jsx("div",{className:"cc-stat-label",children:t("commandCenter.tokens.chatMessages","Chat turns")}),s.jsx("div",{className:"cc-stat-value",children:K(O?.nChatMessages??0)})]})]})]}),s.jsxs("div",{className:"cc-area-section",children:[s.jsxs("div",{className:"cc-area-section-header",children:[s.jsx("h3",{className:"cc-area-section-title",children:t("commandCenter.tokens.overTimeChart","Tokens over time")}),s.jsx("div",{className:"cc-token-granularity",role:"group","aria-label":t("commandCenter.tokens.granularity","Token chart granularity"),children:rR.map(A=>s.jsx("button",{type:"button",className:`btn ${A===r?"active":""}`,"aria-pressed":A===r,"data-testid":`cc-token-granularity-${A}`,onClick:()=>n(A),children:t(`commandCenter.tokens.granularity.${A}`,A)},A))})]}),s.jsx(Q0,{points:d,ariaLabel:t("commandCenter.tokens.overTimeChart","Tokens over time")},k)]}),d.length>0?s.jsxs("div",{className:"cc-area-section","data-testid":"cc-tokens-line",children:[s.jsx("h3",{className:"cc-area-section-title",children:t("commandCenter.tokens.rechartsLine","Tokens trend")}),s.jsx(cr,{series:C,ariaLabel:t("commandCenter.tokens.rechartsLine","Tokens trend")})]}):null,s.jsxs("div",{className:"cc-area-section",children:[s.jsx("h3",{className:"cc-area-section-title",children:t("commandCenter.tokens.byModelChart","Tokens by model")}),s.jsx(Xe,{data:j,ariaLabel:t("commandCenter.tokens.byModelChart","Tokens by model")})]}),x.length>0?s.jsxs("div",{className:"cc-area-section","data-testid":"cc-tokens-pie",children:[s.jsx("h3",{className:"cc-area-section-title",children:t("commandCenter.tokens.pieChart","Token share by model")}),s.jsx(St,{data:x,ariaLabel:t("commandCenter.tokens.pieChart","Token share by model")})]}):null,s.jsxs("div",{className:"cc-area-section",children:[s.jsx("h3",{className:"cc-area-section-title",children:t("commandCenter.tokens.tableTitle","Per-model breakdown")}),s.jsx("div",{className:"cc-table-wrap",children:s.jsxs("table",{className:"cc-table","data-testid":"cc-tokens-table",children:[s.jsx("thead",{children:s.jsxs("tr",{children:[s.jsxs("th",{className:"cc-sortable",onClick:()=>w("key"),"data-testid":"cc-tokens-sort-key",children:[t("commandCenter.tokens.model","Model"),P("key")]}),s.jsx("th",{children:t("commandCenter.tokens.input","Input")}),s.jsx("th",{children:t("commandCenter.tokens.output","Output")}),s.jsx("th",{children:t("commandCenter.tokens.cached","Cached")}),s.jsxs("th",{className:"cc-sortable",onClick:()=>w("totalTokens"),"data-testid":"cc-tokens-sort-total",children:[t("commandCenter.tokens.total","Total"),P("totalTokens")]}),s.jsxs("th",{className:"cc-sortable",onClick:()=>w("cost"),"data-testid":"cc-tokens-sort-cost",children:[t("commandCenter.tokens.costCol","Cost"),P("cost")]})]})}),s.jsx("tbody",{children:p.map(A=>s.jsxs("tr",{"data-testid":`cc-tokens-row-${$v(A)}`,children:[s.jsx("td",{children:s.jsx(nR,{group:A,unknownLabel:t("commandCenter.tokens.unknownModel","(unknown)")})}),s.jsx("td",{children:K(A.inputTokens)}),s.jsx("td",{children:K(A.outputTokens)}),s.jsx("td",{children:K(A.cachedTokens)}),s.jsx("td",{children:K(A.totalTokens)}),s.jsx("td",{children:A.cost.unavailable||A.cost.usd===null?s.jsx("span",{className:"cc-unavailable",title:t("commandCenter.tokens.costUnavailable","No pricing for this model"),children:"—"}):Sr(A.cost.usd,A.cost.unavailable)})]},$v(A)))})]})})]})]})}function sR({range:e}){const{t}=le("app"),{data:r,isLoading:n,error:a}=qe("/command-center/tools",e),i=f.useMemo(()=>[...r?.byCategory??[]].sort((u,m)=>m.count-u.count||u.category.localeCompare(m.category)),[r?.byCategory]),o=f.useMemo(()=>i.map(u=>({label:u.category,value:u.count,valueLabel:K(u.count)})),[i]),l=f.useMemo(()=>i.map(u=>({label:u.category,value:u.count})),[i]),c=!r||r.toolCalls===0,d=r?r.fullyAutonomous?t("commandCenter.tools.ratioAutonomous","{{ratio}} calls/session (fully autonomous)",{ratio:r.autonomyRatio.toFixed(1)}):`${r.autonomyRatio.toFixed(1)}:1`:"—";return s.jsxs(bt,{testId:"tools",isLoading:n,error:a,isEmpty:c,children:[s.jsxs("div",{className:"cc-area-section",children:[s.jsx("h3",{className:"cc-area-section-title",children:t("commandCenter.tools.summaryTitle","Summary")}),s.jsxs("div",{className:"cc-stat-grid",children:[s.jsxs("div",{className:"card cc-stat-card","data-testid":"cc-tools-autonomy",children:[s.jsx("div",{className:"cc-stat-label",children:t("commandCenter.tools.autonomyRatio","Autonomy ratio")}),s.jsx("div",{className:"cc-stat-value",children:d}),s.jsx("span",{className:"cc-stat-sub",children:t("commandCenter.tools.autonomyHint","tool calls per human intervention")})]}),s.jsxs("div",{className:"card cc-stat-card",children:[s.jsx("div",{className:"cc-stat-label",children:t("commandCenter.tools.toolCalls","Tool calls")}),s.jsx("div",{className:"cc-stat-value",children:K(r?.toolCalls??0)})]}),s.jsxs("div",{className:"card cc-stat-card",children:[s.jsx("div",{className:"cc-stat-label",children:t("commandCenter.tools.interventions","Interventions")}),s.jsx("div",{className:"cc-stat-value",children:K(r?.interventions.total??0)}),s.jsx("span",{className:"cc-stat-sub",children:t("commandCenter.tools.interventionBreakdown","{{approvals}} approvals · {{steers}} steers",{approvals:K(r?.interventions.approvals??0),steers:K(r?.interventions.userSteers??0)})})]}),s.jsxs("div",{className:"card cc-stat-card",children:[s.jsx("div",{className:"cc-stat-label",children:t("commandCenter.tools.sessions","Sessions")}),s.jsx("div",{className:"cc-stat-value",children:K(r?.sessions??0)})]})]})]}),s.jsxs("div",{className:"cc-area-section",children:[s.jsx("h3",{className:"cc-area-section-title",children:t("commandCenter.tools.categoriesTitle","Tool categories")}),s.jsx(Xe,{data:o,ariaLabel:t("commandCenter.tools.categoriesTitle","Tool categories")})]}),l.length>0?s.jsxs("div",{className:"cc-area-section","data-testid":"cc-tools-pie",children:[s.jsx("h3",{className:"cc-area-section-title",children:t("commandCenter.tools.pieChart","Tool category share")}),s.jsx(St,{data:l,ariaLabel:t("commandCenter.tools.pieChart","Tool category share")})]}):null]})}const oR=250,lR=100,kl=1.8,Ur=3,cR={width:oR,height:lR};function uR(e,t){if(!Number.isFinite(e)||e<=0)return 0;const r=Number.isFinite(t)&&t>0?t:1;return Math.max(0,Math.min(100,e/r*100))}function Fv(e){return Number.isFinite(e)?e:0}function dR(e,t){return!Number.isFinite(e)||!Number.isFinite(t)||e<=0||t<=0?null:{width:Math.max(e,Ur*2+kl*2),height:Math.max(t,Ur*2+kl*2)}}function fR(e,t,r,n,a){const i=Math.max(0,a.width-Ur*2),o=Math.max(0,a.height-Ur*2),l=r<=1?a.width/2:Ur+t/(r-1)*i,c=uR(e,n);return{x:Fv(l),y:Fv(Ur+o*(1-c/100))}}function mR(e,t,r){return e.map((n,a)=>fR(n,a,e.length,t,r))}function vR(e){return e.map(t=>`${t.x},${t.y}`).join(" ")}function hR(e,t){return Number.isFinite(t)&&t!==void 0&&t>0?t:e.reduce((r,n)=>{const a=n.values.reduce((i,o)=>Number.isFinite(o)&&o>i?o:i,0);return a>r?a:r},0)}function zv(e){return dR(e.width,e.height)}function pR(e,t){return Math.abs(e.width-t.width)<.5&&Math.abs(e.height-t.height)<.5}function ya({series:e,ariaLabel:t,max:r}){const n=f.useRef(null),[a,i]=f.useState(cR),o=hR(e,r);return f.useLayoutEffect(()=>{const l=n.current;if(!l)return;const c=u=>{u&&i(m=>pR(m,u)?m:u)};if(c(zv(l.getBoundingClientRect())),typeof ResizeObserver>"u")return;const d=new ResizeObserver(u=>{const m=u[0];m&&c(zv(m.contentRect))});return d.observe(l),()=>d.disconnect()},[]),s.jsx("svg",{ref:n,className:"cc-line-chart",role:"img","aria-label":t,viewBox:`0 0 ${a.width} ${a.height}`,preserveAspectRatio:"none",children:e.map((l,c)=>{const d=mR(l.values,o,a),u=vR(d);return s.jsxs("g",{className:"cc-line-chart-series","aria-label":l.label,children:[d.length>1?s.jsx("polyline",{className:"cc-line-chart-path",points:u,pathLength:a.width,vectorEffect:"non-scaling-stroke","aria-hidden":"true"}):null,d.map((m,h)=>s.jsx("circle",{className:"cc-line-chart-point",cx:m.x,cy:m.y,r:kl,vectorEffect:"non-scaling-stroke","aria-hidden":"true"},h))]},c)})})}function yR(e,t){if(!Number.isFinite(e)||e<=0)return 0;const r=Number.isFinite(t)&&t>0?t:1;return Math.max(0,Math.min(100,e/r*100))}function wt({values:e,ariaLabel:t,max:r}){const n=r??e.reduce((a,i)=>i>a?i:a,0);return s.jsx("div",{className:"cc-sparkline",role:"img","aria-label":t,children:e.map((a,i)=>{const o=yR(a,n);return s.jsx("div",{className:"cc-sparkline-bar",style:{height:`${o}%`},"aria-hidden":"true"},i)})})}const gR=15e3;function bR({range:e}){const{t}=le("app"),{data:r,isLoading:n,error:a,reload:i}=qe("/command-center/activity",e),o=f.useMemo(()=>r?.daily??[],[r?.daily]),l=f.useMemo(()=>o.map(j=>j.messages),[o]),c=f.useMemo(()=>o.map(j=>j.activeAgents),[o]),d=f.useMemo(()=>o.map(j=>j.activeNodes),[o]),u=f.useMemo(()=>o.map(j=>j.agentRuns),[o]),m=f.useMemo(()=>o.map(j=>j.messages+j.activeAgents+j.activeNodes),[o]),h=f.useMemo(()=>[{label:t("commandCenter.activity.messages","Messages"),values:l},{label:t("commandCenter.activity.activeAgents","Active agents"),values:c},{label:t("commandCenter.activity.agentRuns","Agent runs"),values:u}],[u,c,l,t]),v=Fh(e),g=n&&r===null;f.useEffect(()=>{if(v)return;const j=window.setInterval(()=>{i()},gR);return()=>window.clearInterval(j)},[v,i]);const y=r?.agentRuns??{total:0,active:0,completed:0,failed:0},p=f.useMemo(()=>[{label:t("commandCenter.activity.agentRunsActive","Active"),value:y.active},{label:t("commandCenter.activity.agentRunsCompleted","Completed"),value:y.completed},{label:t("commandCenter.activity.agentRunsFailed","Failed"),value:y.failed}].filter(j=>j.value>0),[y.active,y.completed,y.failed,t]),b=!r||r.sessions===0&&r.messages===0&&r.activeNodes===0&&r.activeAgents===0&&y.total===0;return s.jsxs(bt,{testId:"activity",isLoading:g,error:a,isEmpty:b,children:[s.jsxs("div",{className:"cc-area-section",children:[s.jsx("h3",{className:"cc-area-section-title",children:t("commandCenter.activity.summaryTitle","Summary")}),s.jsxs("div",{className:"cc-stat-grid",children:[s.jsxs("div",{className:"card cc-stat-card","data-testid":"cc-activity-sessions",children:[s.jsx("div",{className:"cc-stat-label",children:t("commandCenter.activity.sessions","Sessions")}),s.jsx("div",{className:"cc-stat-value",children:K(r?.sessions??0)})]}),s.jsxs("div",{className:"card cc-stat-card","data-testid":"cc-activity-messages",children:[s.jsx("div",{className:"cc-stat-label",children:t("commandCenter.activity.messages","Messages")}),s.jsx("div",{className:"cc-stat-value",children:K(r?.messages??0)})]}),s.jsxs("div",{className:"card cc-stat-card","data-testid":"cc-activity-nodes",children:[s.jsx("div",{className:"cc-stat-label",children:t("commandCenter.activity.activeNodes","Active nodes")}),s.jsx("div",{className:"cc-stat-value",children:K(r?.activeNodes??0)})]}),s.jsxs("div",{className:"card cc-stat-card","data-testid":"cc-activity-agents",children:[s.jsx("div",{className:"cc-stat-label",children:t("commandCenter.activity.activeAgents","Active agents")}),s.jsx("div",{className:"cc-stat-value",children:K(r?.activeAgents??0)})]}),s.jsxs("div",{className:"card cc-stat-card","data-testid":"cc-activity-agent-runs",children:[s.jsx("div",{className:"cc-stat-label",children:t("commandCenter.activity.agentRuns","Agent runs")}),s.jsx("div",{className:"cc-stat-value",children:K(y.total)})]}),s.jsxs("div",{className:"card cc-stat-card","data-testid":"cc-activity-agent-runs-active",children:[s.jsx("div",{className:"cc-stat-label",children:t("commandCenter.activity.agentRunsActive","Active")}),s.jsx("div",{className:"cc-stat-value",children:K(y.active)})]}),s.jsxs("div",{className:"card cc-stat-card","data-testid":"cc-activity-agent-runs-completed",children:[s.jsx("div",{className:"cc-stat-label",children:t("commandCenter.activity.agentRunsCompleted","Completed")}),s.jsx("div",{className:"cc-stat-value",children:K(y.completed)})]}),s.jsxs("div",{className:"card cc-stat-card","data-testid":"cc-activity-agent-runs-failed",children:[s.jsx("div",{className:"cc-stat-label",children:t("commandCenter.activity.agentRunsFailed","Failed")}),s.jsx("div",{className:"cc-stat-value",children:K(y.failed)})]}),s.jsxs("div",{className:"card cc-stat-card","data-testid":"cc-activity-stickiness",children:[s.jsx("div",{className:"cc-stat-label",children:t("commandCenter.activity.stickiness","Stickiness")}),s.jsx("div",{className:"cc-stat-value",children:r?`${Math.round(r.stickiness*100)}%`:"—"}),s.jsx("span",{className:"cc-stat-sub",children:t("commandCenter.activity.stickinessHint","DAU / MAU")})]})]})]}),o.length>0?s.jsxs("div",{className:"cc-area-section","data-testid":"cc-activity-line",children:[s.jsx("h3",{className:"cc-area-section-title",children:t("commandCenter.activity.rechartsLine","Activity trend")}),s.jsx(cr,{series:h,ariaLabel:t("commandCenter.activity.rechartsLine","Activity trend"),scaleMode:"series"})]}):null,p.length>0?s.jsxs("div",{className:"cc-area-section","data-testid":"cc-activity-pie",children:[s.jsx("h3",{className:"cc-area-section-title",children:t("commandCenter.activity.agentRunOutcomeShare","Agent run outcome share")}),s.jsx(St,{data:p,ariaLabel:t("commandCenter.activity.agentRunOutcomeShare","Agent run outcome share")})]}):null,s.jsxs("div",{className:"cc-area-section","data-testid":"cc-activity-line-messages",children:[s.jsx("h3",{className:"cc-area-section-title",children:t("commandCenter.activity.messagesPerDay","Messages / day")}),s.jsx(ya,{series:[{label:t("commandCenter.activity.messages","Messages"),values:l}],ariaLabel:t("commandCenter.activity.messagesPerDay","Messages / day")})]}),s.jsxs("div",{className:"cc-area-section","data-testid":"cc-activity-line-agents",children:[s.jsx("h3",{className:"cc-area-section-title",children:t("commandCenter.activity.agentsPerDay","Active agents / day")}),s.jsx(ya,{series:[{label:t("commandCenter.activity.activeAgents","Active agents"),values:c}],ariaLabel:t("commandCenter.activity.agentsPerDay","Active agents / day")})]}),s.jsxs("div",{className:"cc-area-section","data-testid":"cc-activity-line-nodes",children:[s.jsx("h3",{className:"cc-area-section-title",children:t("commandCenter.activity.nodesPerDay","Active nodes / day")}),s.jsx(ya,{series:[{label:t("commandCenter.activity.activeNodes","Active nodes"),values:d}],ariaLabel:t("commandCenter.activity.nodesPerDay","Active nodes / day")})]}),s.jsxs("div",{className:"cc-area-section","data-testid":"cc-activity-agent-runs-sparkline",children:[s.jsx("h3",{className:"cc-area-section-title",children:t("commandCenter.activity.agentRunsPerDay","Agent runs / day")}),s.jsx(wt,{values:u,ariaLabel:t("commandCenter.activity.agentRunsPerDay","Agent runs / day")})]}),s.jsxs("div",{className:"cc-area-section","data-testid":"cc-activity-line-throughput",children:[s.jsx("h3",{className:"cc-area-section-title",children:t("commandCenter.activity.throughputPerDay","Throughput / day")}),s.jsx(ya,{series:[{label:t("commandCenter.activity.throughput","Throughput"),values:m}],ariaLabel:t("commandCenter.activity.throughputPerDay","Throughput / day")})]})]})}function xR({range:e}){const{t}=le("app"),{confirm:r}=th(),{data:n,isLoading:a,error:i}=qe("/command-center/productivity",e),[o,l]=f.useState(!1),[c,d]=f.useState(null),[u,m]=f.useState(null),h=f.useCallback(async()=>{if(!o){l(!0),m(null),d(null);try{const D=await fu({dryRun:!0});d(D)}catch(D){m(D instanceof Error?D.message:t("commandCenter.productivity.backfillFailed","Failed to backfill historical LOC stats"))}finally{l(!1)}}},[o,t]),v=f.useCallback(async()=>{if(!(o||!await r({title:t("commandCenter.productivity.backfillConfirmTitle","Apply LOC backfill?"),message:t("commandCenter.productivity.backfillConfirmMessage","This will persist diff stats to task_commit_associations for historical commit associations. Review the dry-run counts before applying."),confirmLabel:t("commandCenter.productivity.backfillApply","Apply backfill"),cancelLabel:t("common.cancel","Cancel"),danger:!0}))){l(!0),m(null);try{const F=await fu({dryRun:!1});d(F)}catch(F){m(F instanceof Error?F.message:t("commandCenter.productivity.backfillFailed","Failed to backfill historical LOC stats"))}finally{l(!1)}}},[r,o,t]),g=f.useMemo(()=>(n?.byLanguage??[]).slice(0,12).map(D=>({label:D.language,value:D.count,valueLabel:K(D.count)})),[n?.byLanguage]),y=f.useMemo(()=>(n?.byLanguage??[]).slice(0,12).map(D=>({label:D.language,value:D.count})),[n?.byLanguage]),p=n?.taskDuration??{completedTasks:0,averageMs:null,medianMs:null,p90Ms:null,totalMs:null,unavailable:!0},b=f.useMemo(()=>(n?.taskDurationTrend??[]).filter(D=>!D.unavailable&&D.completedTasks>0&&D.averageMs!==null&&D.medianMs!==null&&Number.isFinite(D.averageMs)&&Number.isFinite(D.medianMs)),[n?.taskDurationTrend]),j=f.useMemo(()=>[{label:t("commandCenter.productivity.averageDuration","Average"),values:b.map(D=>D.averageMs??0)},{label:t("commandCenter.productivity.medianDuration","Median"),values:b.map(D=>D.medianMs??0)}],[t,b]),x=f.useMemo(()=>b.map(D=>D.bucket),[b]),C=b.length>0,w=n?.loc??{value:null,unavailable:!0},P=n?.hoursSaved??{value:null,unavailable:!0},O=!n||n.modifiedFiles===0&&n.commits===0&&n.pullRequests===0&&p.completedTasks===0,k=!n||w.unavailable||w.value===null,N=!n||P.unavailable||P.value===null,S=!n||p.unavailable,A=t("commandCenter.productivity.durationUnavailable","Task duration is unavailable until completed tasks have active execution time recorded"),_=u?"cc-productivity-backfill-status--error":o?"cc-productivity-backfill-status--warning":"",I=(D,F)=>S||D===null?s.jsx("span",{className:"cc-unavailable",title:A,"data-testid":F,children:"—"}):Eu(D);return s.jsxs(bt,{testId:"productivity",isLoading:a,error:i,isEmpty:O,children:[s.jsxs("div",{className:"cc-area-section",children:[s.jsx("h3",{className:"cc-area-section-title",children:t("commandCenter.productivity.outcomesTitle","Outcomes")}),s.jsxs("div",{className:"cc-stat-grid",children:[s.jsxs("div",{className:"card cc-stat-card","data-testid":"cc-productivity-commits",children:[s.jsx("div",{className:"cc-stat-label",children:t("commandCenter.productivity.commits","Commits")}),s.jsx("div",{className:"cc-stat-value",children:K(n?.commits??0)})]}),s.jsxs("div",{className:"card cc-stat-card","data-testid":"cc-productivity-prs",children:[s.jsx("div",{className:"cc-stat-label",children:t("commandCenter.productivity.pullRequests","Pull requests")}),s.jsx("div",{className:"cc-stat-value",children:K(n?.pullRequests??0)})]}),s.jsxs("div",{className:"card cc-stat-card","data-testid":"cc-productivity-hours-saved",children:[s.jsx("div",{className:"cc-stat-label",children:t("commandCenter.productivity.hoursSaved","Human hours saved")}),s.jsx("div",{className:"cc-stat-value",children:N?s.jsx("span",{className:"cc-unavailable",title:t("commandCenter.productivity.hoursSavedUnavailable","Estimated human hours saved is unavailable until commit diff stats exist"),"data-testid":"cc-productivity-hours-saved-unavailable",children:"—"}):K(P.value??0)}),s.jsx("span",{className:"cc-stat-sub",children:t("commandCenter.productivity.hoursSavedEstimate","estimate from lines changed")})]})]})]}),s.jsxs("div",{className:"cc-area-section",children:[s.jsx("h3",{className:"cc-area-section-title",children:t("commandCenter.productivity.volumeTitle","Volume (proxy)")}),s.jsxs("div",{className:"cc-stat-grid",children:[s.jsxs("div",{className:"card cc-stat-card","data-testid":"cc-productivity-files",children:[s.jsx("div",{className:"cc-stat-label",children:t("commandCenter.productivity.modifiedFiles","Files modified")}),s.jsx("div",{className:"cc-stat-value",children:K(n?.modifiedFiles??0)}),s.jsx("span",{className:"cc-stat-sub",children:t("commandCenter.productivity.volumeHint","volume, not outcome")})]}),s.jsxs("div",{className:"card cc-stat-card","data-testid":"cc-productivity-loc",children:[s.jsx("div",{className:"cc-stat-label",children:t("commandCenter.productivity.loc","Lines changed")}),s.jsx("div",{className:"cc-stat-value",children:k?s.jsx("span",{className:"cc-unavailable",title:t("commandCenter.productivity.locUnavailable","LOC is unavailable until commit diff stats are recorded"),"data-testid":"cc-productivity-loc-unavailable",children:"—"}):K(w.value??0)}),s.jsx("span",{className:"cc-stat-sub",children:t("commandCenter.productivity.volumeHint","volume, not outcome")}),s.jsxs("div",{className:"cc-productivity-backfill-actions",children:[s.jsxs("button",{type:"button",className:"btn","data-testid":"cc-productivity-backfill-button",onClick:()=>void h(),disabled:o,children:[s.jsx(Gr,{className:o?"spin":void 0}),s.jsx("span",{children:o?t("commandCenter.productivity.backfillBusy","Checking historical LOC…"):t("commandCenter.productivity.backfillButton","Preview LOC backfill")})]}),c?.dryRun?s.jsx("button",{type:"button",className:"btn","data-testid":"cc-productivity-backfill-apply-button",onClick:()=>void v(),disabled:o,children:t("commandCenter.productivity.backfillApply","Apply backfill")}):null]}),o||c||u?s.jsxs("div",{className:`cc-productivity-backfill-status ${_}`.trim(),"data-testid":"cc-productivity-backfill-result",role:"status",children:[o?s.jsx("span",{children:t("commandCenter.productivity.backfillPending","LOC backfill check is running.")}):null,u?s.jsx("span",{children:u}):null,c?s.jsxs(s.Fragment,{children:[s.jsx("span",{children:t("commandCenter.productivity.backfillResult","Backfill report")}),s.jsx("span",{children:c.dryRun?t("commandCenter.productivity.backfillPreviewLabel","Dry-run preview"):t("commandCenter.productivity.backfillAppliedLabel","Applied")}),s.jsxs("span",{children:[t("commandCenter.productivity.backfillScannedRows","Scanned rows"),": ",c.scannedRows]}),s.jsxs("span",{children:[t("commandCenter.productivity.backfillDistinctCommits","Distinct commits"),": ",c.distinctCommits]}),s.jsxs("span",{children:[t("commandCenter.productivity.backfillUpdatedRows","Updated rows"),": ",c.updatedRows]}),s.jsxs("span",{children:[t("commandCenter.productivity.backfillSkippedUnavailableCommits","Skipped unavailable commits"),": ",c.skippedUnavailableCommits]}),s.jsxs("span",{children:[t("commandCenter.productivity.backfillSkippedInvalidShas","Skipped invalid SHAs"),": ",c.skippedInvalidShas]})]}):null]}):null]})]})]}),s.jsxs("div",{className:"cc-area-section",children:[s.jsx("h3",{className:"cc-area-section-title",children:t("commandCenter.productivity.durationTitle","Task duration")}),s.jsxs("div",{className:"cc-stat-grid",children:[s.jsxs("div",{className:"card cc-stat-card","data-testid":"cc-productivity-duration-completed",children:[s.jsx("div",{className:"cc-stat-label",children:t("commandCenter.productivity.completedTasks","Completed tasks")}),s.jsx("div",{className:"cc-stat-value",children:K(p.completedTasks)})]}),s.jsxs("div",{className:"card cc-stat-card","data-testid":"cc-productivity-duration-avg",children:[s.jsx("div",{className:"cc-stat-label",children:t("commandCenter.productivity.averageDuration","Average")}),s.jsx("div",{className:"cc-stat-value",children:I(p.averageMs,"cc-productivity-duration-avg-unavailable")})]}),s.jsxs("div",{className:"card cc-stat-card","data-testid":"cc-productivity-duration-median",children:[s.jsx("div",{className:"cc-stat-label",children:t("commandCenter.productivity.medianDuration","Median")}),s.jsx("div",{className:"cc-stat-value",children:I(p.medianMs,"cc-productivity-duration-median-unavailable")})]}),s.jsxs("div",{className:"card cc-stat-card","data-testid":"cc-productivity-duration-p90",children:[s.jsx("div",{className:"cc-stat-label",children:t("commandCenter.productivity.p90Duration","P90")}),s.jsx("div",{className:"cc-stat-value",children:I(p.p90Ms,"cc-productivity-duration-p90-unavailable")})]}),s.jsxs("div",{className:"card cc-stat-card","data-testid":"cc-productivity-duration-total",children:[s.jsx("div",{className:"cc-stat-label",children:t("commandCenter.productivity.totalDuration","Total active")}),s.jsx("div",{className:"cc-stat-value",children:I(p.totalMs,"cc-productivity-duration-total-unavailable")})]})]})]}),C?s.jsxs("div",{className:"cc-area-section","data-testid":"cc-productivity-duration-trend",children:[s.jsx("h3",{className:"cc-area-section-title",children:t("commandCenter.productivity.durationTrendTitle","Task duration over time")}),s.jsx(cr,{series:j,ariaLabel:t("commandCenter.productivity.durationTrendTitle","Task duration over time"),xAxisLabels:x,valueFormatter:Eu})]}):null,s.jsxs("div",{className:"cc-area-section",children:[s.jsx("h3",{className:"cc-area-section-title",children:t("commandCenter.productivity.byLanguage","Files by language")}),s.jsx(Xe,{data:g,ariaLabel:t("commandCenter.productivity.byLanguage","Files by language")})]}),y.length>0?s.jsxs("div",{className:"cc-area-section","data-testid":"cc-productivity-pie",children:[s.jsx("h3",{className:"cc-area-section-title",children:t("commandCenter.productivity.languagePie","Language share")}),s.jsx(St,{data:y,ariaLabel:t("commandCenter.productivity.languagePie","Language share")})]}):null]})}const jR=15e3,wR=1e4,CR=4,Oo=[.1,.25,.5,1,2,3,5,10];function Kv(e){return e.unavailable||e.usd===null?-1:e.usd}function hi(e,t){return e.agentName??e.agentId??t}function kR(e){switch(e){case"running":return"status-dot status-dot--connecting";case"active":case"idle":return"status-dot status-dot--online";case"error":case"failed":return"status-dot status-dot--error";case"starting":case"pending":return"status-dot status-dot--pending";default:return"status-dot status-dot--pending"}}function PR(e,t,r,n){const a=[...e];return a.sort((i,o)=>{let l=0;return t==="agent"?l=hi(i,n).localeCompare(hi(o,n)):t==="tokens"?l=i.tokens.totalTokens-o.tokens.totalTokens:t==="cost"?l=Kv(i.cost)-Kv(o.cost):t==="filesChanged"?l=i.filesChanged-o.filesChanged:t==="tasksCompleted"?l=i.tasksCompleted-o.tasksCompleted:l=i.tasksInProgress-o.tasksInProgress,l===0&&(l=i.agentId.localeCompare(o.agentId)),l*r}),a}function Vv(e,t,r){return[...e].sort((n,a)=>t(a)-t(n)||n.agentId.localeCompare(a.agentId)).slice(0,12).map(n=>{const a=t(n);return{label:hi(n,r),value:a,valueLabel:K(a)}})}function SR(e,t){if(!e)return t;const r=new Date(e);return Number.isNaN(r.getTime())?t:r.toLocaleString()}function NR({paused:e,label:t}){return s.jsxs("span",{className:"cc-team-status-pill",children:[s.jsx("span",{className:`status-dot ${e?"status-dot--pending":"status-dot--online"}`,"aria-hidden":"true"}),s.jsx("span",{children:t})]})}function px({node:e}){const t=e.children.length>0;return s.jsxs("li",{className:"cc-team-org-item",children:[s.jsx("div",{className:"cc-team-org-card",children:s.jsxs("div",{className:"cc-team-org-card-header",children:[s.jsx("span",{className:"cc-team-org-avatar",children:s.jsx(Kx,{agent:e.agent,size:20})}),s.jsx("span",{className:"cc-team-org-name",children:e.agent.name}),s.jsx("span",{className:"cc-team-org-badge",children:e.agent.state})]})}),t?s.jsx("ul",{className:"cc-team-org-children",children:e.children.map(r=>s.jsx(px,{node:r},r.agent.id))}):null]})}function OR({range:e,projectId:t,addToast:r}){const{t:n}=le("app"),{globalPaused:a,enginePaused:i,toggleEnginePause:o}=rh(t),[l,c]=f.useState(1),[d,u]=f.useState(!1),[m,h]=f.useState({status:"loading",data:null,error:null}),[v,g]=f.useState({status:"loading",data:null,error:null}),y=f.useRef(null),p=f.useRef(!0);f.useEffect(()=>(p.current=!0,()=>{p.current=!1,y.current&&clearTimeout(y.current)}),[]);const b=f.useRef(null),j=f.useRef(null),x=f.useRef(!1),[C,w]=f.useState(!1),[P,O]=f.useState(0),{data:k,isLoading:N,error:S}=qe("/command-center/team",e,{pollMs:jR});f.useEffect(()=>{let E=!1;return h({status:"loading",data:null,error:null}),(async()=>{try{const T=await $x(t);E||h({status:"loaded",data:T,error:null})}catch(T){E||h({status:"error",data:null,error:T instanceof Error?T.message:n("commandCenter.controls.orgChart.error","Unable to load org chart")})}})(),()=>{E=!0}},[t,n]),f.useEffect(()=>{const E=b.current;if(!E)return;const T=()=>{O(E.clientWidth)};T();const J=typeof ResizeObserver<"u"?new ResizeObserver(T):null;return J?.observe(E),window.addEventListener("resize",T),()=>{J?.disconnect(),window.removeEventListener("resize",T)}},[m.status]),f.useEffect(()=>{let E=!1,T;const J=async()=>{try{const dt=await zx(t);E||g({status:"loaded",data:dt,error:null})}catch(dt){E||g({status:"error",data:null,error:dt instanceof Error?dt.message:n("commandCenter.controls.status.error","Unable to load live scheduler status")})}finally{E||(T=setTimeout(J,wR))}};return g({status:"loading",data:null,error:null}),J(),()=>{E=!0,T&&clearTimeout(T)}},[t,n]),f.useEffect(()=>{let E=!1;return nh(t).then(T=>{E||c(T.heartbeatMultiplier??1)}).catch(()=>{}),()=>{E=!0}},[t]);const A=f.useCallback(E=>{const T=Number.isFinite(E)&&E>0?E:1;c(T),y.current&&clearTimeout(y.current),y.current=setTimeout(()=>{y.current=null,p.current&&u(!0),(async()=>{try{await ah({heartbeatMultiplier:T},t),p.current&&r?.(n("agents.heartbeatSpeedSet","Heartbeat speed set to ×{{value}}",{value:T.toFixed(1)}),"success")}catch(J){p.current&&r?.(n("agents.heartbeatSpeedSaveFailed","Failed to save heartbeat multiplier: {{error}}",{error:Bx(J)}),"error")}finally{p.current&&u(!1)}})()},300)},[t,r,n]),_=f.useMemo(()=>k?.agents??[],[k?.agents]),I=n("commandCenter.team.unknownAgent","(unknown agent)"),D=n("commandCenter.team.unknownRole","Unknown role"),F=n("commandCenter.team.noChartData","No non-zero values for this chart yet."),[V,q]=f.useState("tokens"),[te,U]=f.useState(-1),ee=f.useMemo(()=>_.map(E=>E.agentId).join(" "),[_]),L=f.useRef(null);f.useEffect(()=>{if(L.current===null){L.current=ee;return}L.current!==ee&&(L.current=ee,q("tokens"),U(-1))},[ee]);const B=f.useMemo(()=>PR(_,V,te,I),[_,te,V,I]),X=f.useMemo(()=>Vv(_,E=>E.tokens.totalTokens,I),[_,I]),Q=f.useMemo(()=>X.map(E=>({label:E.label,value:E.value})),[X]),G=f.useMemo(()=>Vv(_,E=>E.tasksCompleted,I),[_,I]),ie=X.some(E=>E.value>0),se=G.some(E=>E.value>0),re=f.useMemo(()=>_.flatMap(E=>[E.tokens.totalTokens,E.filesChanged,E.tasksCompleted]),[_]);function W(E){E===V?U(T=>T===1?-1:1):(q(E),U(E==="agent"?1:-1))}function $(E){return E!==V?null:s.jsx("span",{className:"cc-sort-caret",children:te===1?"▲":"▼"})}const ne=f.useCallback(E=>{const T=j.current;!T||T.pointerId!==E.pointerId||(E.currentTarget.hasPointerCapture?.(E.pointerId)&&E.currentTarget.releasePointerCapture?.(E.pointerId),j.current=null,w(!1))},[]),we=f.useCallback(E=>{if(E.pointerType==="touch"||E.button!==0)return;const T=E.currentTarget;x.current=!1,j.current={pointerId:E.pointerId,startX:E.clientX,startY:E.clientY,startScrollLeft:T.scrollLeft,startScrollTop:T.scrollTop,isPanning:!1},T.setPointerCapture?.(E.pointerId)},[]),z=f.useCallback(E=>{const T=j.current;if(!T||T.pointerId!==E.pointerId)return;const J=E.clientX-T.startX,dt=E.clientY-T.startY;if(!T.isPanning&&Math.hypot(J,dt)<CR)return;T.isPanning||(T.isPanning=!0,x.current=!0,w(!0)),E.preventDefault();const dr=E.currentTarget;dr.scrollLeft=T.startScrollLeft-J,dr.scrollTop=T.startScrollTop-dt},[]),fe=f.useCallback(E=>{x.current&&(x.current=!1,E.preventDefault(),E.stopPropagation())},[]),be=f.useMemo(()=>m.status!=="loaded"||P<=0&&m.data.length>1?"vertical":n0({tree:m.data,availableWidth:P,preference:"auto"}),[P,m]),ye=v.data?.globalPause??a,nt=v.data?.enginePaused??i,ur=SR(v.data?.lastActivityAt,n("commandCenter.controls.status.noActivity","No recent activity"));return s.jsxs("div",{className:"cc-team-area",children:[s.jsxs("div",{className:"cc-team-ops-grid","data-testid":"cc-team-ops",children:[s.jsxs("section",{className:"card cc-team-ops-card cc-team-ops-card--org","data-testid":"cc-team-org-chart",children:[s.jsx("div",{className:"cc-team-ops-card-header",children:s.jsx("div",{children:s.jsx("h3",{children:n("commandCenter.controls.orgChart.title","Agent org chart")})})}),s.jsx("div",{className:`cc-team-org-scroll${C?" is-dragging":""}`,"data-layout":be,ref:b,"aria-live":"polite",onPointerDown:we,onPointerMove:z,onPointerUp:ne,onPointerCancel:ne,onPointerLeave:ne,onClickCapture:fe,children:m.status==="loading"?s.jsx("p",{className:"cc-team-muted",children:s.jsx(Tl,{label:n("commandCenter.controls.orgChart.loading","Loading org chart…")})}):m.status==="error"?s.jsx("p",{className:"cc-team-error",role:"alert",children:m.error}):m.data.length===0?s.jsx("p",{className:"cc-team-muted",children:n("commandCenter.controls.orgChart.empty","No agents are reporting in yet.")}):s.jsx("ul",{className:"cc-team-org-roots",children:m.data.map(E=>s.jsx(px,{node:E},E.agent.id))})})]}),s.jsxs("section",{className:"card cc-team-ops-card cc-team-ops-card--heartbeat","data-testid":"cc-team-heartbeat",children:[s.jsxs("div",{className:"cc-team-ops-card-header",children:[s.jsxs("div",{children:[s.jsx("h3",{children:n("commandCenter.controls.heartbeat.title","Heartbeat control")}),s.jsx("p",{children:n("commandCenter.controls.heartbeat.description","Pause or resume the scheduling heartbeat.")})]}),s.jsx(NR,{paused:nt,label:nt?n("commandCenter.controls.status.paused","Paused"):n("commandCenter.controls.status.running","Running")})]}),s.jsxs("dl",{className:"cc-team-facts",children:[s.jsxs("div",{children:[s.jsx("dt",{children:n("commandCenter.controls.status.lastActivity","Last activity")}),s.jsx("dd",{children:v.status==="loading"?n("commandCenter.controls.status.loading","Loading…"):ur})]}),s.jsxs("div",{children:[s.jsx("dt",{children:n("commandCenter.controls.status.maxConcurrent","Max concurrent")}),s.jsx("dd",{children:v.data?.maxConcurrent??"—"})]})]}),v.status==="error"?s.jsx("p",{className:"cc-team-error",role:"alert",children:v.error}):null,s.jsxs("button",{type:"button",className:"btn btn-secondary cc-team-action",onClick:()=>void o(),disabled:ye,children:[nt?s.jsx(Il,{size:16,"aria-hidden":"true"}):s.jsx(Fx,{size:16,"aria-hidden":"true"}),s.jsx("span",{children:nt?n("commandCenter.controls.heartbeat.resume","Resume heartbeat"):n("commandCenter.controls.heartbeat.pause","Pause heartbeat")})]}),ye?s.jsx("p",{className:"cc-team-muted",children:n("commandCenter.controls.heartbeat.disabledByStop","Start the AI engine before resuming the heartbeat.")}):null,s.jsxs("div",{className:"cc-team-heartbeat-multiplier heartbeat-multiplier-group",children:[s.jsxs("div",{className:"heartbeat-multiplier-controls",children:[s.jsx("label",{htmlFor:"ccHeartbeatMultiplier",className:"heartbeat-multiplier-label",children:n("agents.heartbeatSpeed","Heartbeat Speed")}),s.jsx("input",{id:"ccHeartbeatMultiplier",className:"heartbeat-multiplier-slider touch-target",type:"range",min:.1,max:10,step:.1,value:l,onChange:E=>{const T=Number(E.target.value);A(Number.isFinite(T)&&T>0?T:1)},disabled:d}),s.jsxs("span",{className:"heartbeat-multiplier-value",children:["×",l.toFixed(1)]}),s.jsx("select",{className:"heartbeat-multiplier-preset",value:String(Oo.reduce((E,T)=>Math.abs(T-l)<Math.abs(E-l)?T:E,Oo[0])),onChange:E=>{const T=Number(E.target.value);A(Number.isFinite(T)&&T>0?T:1)},disabled:d,"aria-label":n("agents.heartbeatSpeedPreset","Heartbeat speed preset"),children:Oo.map(E=>s.jsxs("option",{value:String(E),children:["×",E]},E))})]}),s.jsx("small",{className:"text-secondary",children:n("agents.heartbeatSpeedHint","Scales all agent heartbeat intervals. ×0.5 = twice as fast, ×2.0 = twice as slow. Default: ×1.0")})]})]})]}),s.jsxs(bt,{testId:"team",isLoading:N,error:S,isEmpty:!k||k.agents.length===0,emptyMessage:n("commandCenter.team.empty","No agents have reported team analytics yet."),children:[s.jsxs("div",{className:"cc-area-section",children:[s.jsx("h3",{className:"cc-area-section-title",children:n("commandCenter.team.totalsTitle","Team totals")}),s.jsxs("div",{className:"cc-stat-grid",children:[s.jsxs("div",{className:"card cc-stat-card","data-testid":"cc-team-total-tokens",children:[s.jsx("div",{className:"cc-stat-label",children:n("commandCenter.team.totalTokens","Total tokens")}),s.jsx("div",{className:"cc-stat-value",children:K(k?.totals.tokens.totalTokens??0)})]}),s.jsxs("div",{className:"card cc-stat-card","data-testid":"cc-team-total-cost",children:[s.jsx("div",{className:"cc-stat-label",children:n("commandCenter.team.totalCost","Estimated cost")}),s.jsx("div",{className:"cc-stat-value",children:k?Sr(k.totals.cost.usd,k.totals.cost.unavailable):"—"})]}),s.jsxs("div",{className:"card cc-stat-card","data-testid":"cc-team-total-files",children:[s.jsx("div",{className:"cc-stat-label",children:n("commandCenter.team.filesChanged","Files changed")}),s.jsx("div",{className:"cc-stat-value",children:K(k?.totals.filesChanged??0)})]}),s.jsxs("div",{className:"card cc-stat-card","data-testid":"cc-team-total-completed",children:[s.jsx("div",{className:"cc-stat-label",children:n("commandCenter.team.tasksCompleted","Tasks done")}),s.jsx("div",{className:"cc-stat-value",children:K(k?.totals.tasksCompleted??0)})]})]})]}),s.jsxs("div",{className:"cc-area-section cc-team-chart-grid",children:[ie?s.jsxs("div",{className:"cc-team-chart-panel","data-testid":"cc-team-pie",children:[s.jsx("h3",{className:"cc-area-section-title",children:n("commandCenter.team.tokenShareByAgent","Token share by agent")}),s.jsx(St,{data:Q,ariaLabel:n("commandCenter.team.tokenShareByAgent","Token share by agent")})]}):null,s.jsxs("div",{className:"cc-team-chart-panel","data-testid":"cc-team-tokens-chart",children:[s.jsx("h3",{className:"cc-area-section-title",children:n("commandCenter.team.tokensByAgent","Tokens by agent")}),ie?s.jsx(Xe,{data:X,ariaLabel:n("commandCenter.team.tokensByAgent","Tokens by agent")}):s.jsx("p",{className:"cc-muted-hint",children:F})]}),s.jsxs("div",{className:"cc-team-chart-panel","data-testid":"cc-team-completed-chart",children:[s.jsx("h3",{className:"cc-area-section-title",children:n("commandCenter.team.completedByAgent","Tasks done by agent")}),se?s.jsx(Xe,{data:G,ariaLabel:n("commandCenter.team.completedByAgent","Tasks done by agent")}):s.jsx("p",{className:"cc-muted-hint",children:F})]}),s.jsxs("div",{className:"cc-team-chart-panel cc-team-spark-panel","data-testid":"cc-team-spread-chart",children:[s.jsx("h3",{className:"cc-area-section-title",children:n("commandCenter.team.spread","Team spread")}),s.jsx(wt,{values:re,ariaLabel:n("commandCenter.team.spread","Team spread")})]})]}),s.jsxs("div",{className:"cc-area-section",children:[s.jsx("h3",{className:"cc-area-section-title",children:n("commandCenter.team.tableTitle","Per-agent breakdown")}),s.jsx("div",{className:"cc-table-wrap",children:s.jsxs("table",{className:"cc-table","data-testid":"cc-team-table",children:[s.jsx("thead",{children:s.jsxs("tr",{children:[s.jsxs("th",{className:"cc-sortable",onClick:()=>W("agent"),"data-testid":"cc-team-sort-agent",children:[n("commandCenter.team.agent","Agent"),$("agent")]}),s.jsxs("th",{className:"cc-sortable",onClick:()=>W("tokens"),"data-testid":"cc-team-sort-tokens",children:[n("commandCenter.team.tokens","Tokens"),$("tokens")]}),s.jsxs("th",{className:"cc-sortable",onClick:()=>W("cost"),"data-testid":"cc-team-sort-cost",children:[n("commandCenter.team.cost","Cost"),$("cost")]}),s.jsxs("th",{className:"cc-sortable",onClick:()=>W("filesChanged"),"data-testid":"cc-team-sort-files",children:[n("commandCenter.team.files","Files changed"),$("filesChanged")]}),s.jsxs("th",{className:"cc-sortable",onClick:()=>W("tasksCompleted"),"data-testid":"cc-team-sort-completed",children:[n("commandCenter.team.done","Tasks done"),$("tasksCompleted")]}),s.jsxs("th",{className:"cc-sortable",onClick:()=>W("tasksInProgress"),"data-testid":"cc-team-sort-progress",children:[n("commandCenter.team.inProgress","In progress"),$("tasksInProgress")]})]})}),s.jsx("tbody",{children:B.map(E=>s.jsxs("tr",{"data-testid":`cc-team-row-${E.agentId}`,children:[s.jsx("td",{children:s.jsxs("span",{className:"cc-team-agent-cell",children:[s.jsx("span",{className:kR(E.state),"aria-label":n("commandCenter.team.state","Agent state: {{state}}",{state:E.state??n("commandCenter.team.unknownState","unknown")})}),s.jsxs("span",{children:[s.jsx("span",{className:"cc-team-agent-name",children:hi(E,I)}),s.jsx("span",{className:"cc-team-agent-role",children:E.role??D})]})]})}),s.jsx("td",{children:K(E.tokens.totalTokens)}),s.jsx("td",{children:Sr(E.cost.usd,E.cost.unavailable)}),s.jsx("td",{children:K(E.filesChanged)}),s.jsx("td",{children:K(E.tasksCompleted)}),s.jsx("td",{children:K(E.tasksInProgress)})]},E.agentId))})]})})]})]})]})}function yx(e,t){return e.workflowName||e.workflowId||t}function AR(e,t,r,n){const a=[...e];return a.sort((i,o)=>{let l=0;return l=i.tokens.totalTokens-o.tokens.totalTokens,l===0&&(l=i.workflowId.localeCompare(o.workflowId)),l*r}),a}function qv(e,t,r){return[...e].sort((n,a)=>t(a)-t(n)||n.workflowId.localeCompare(a.workflowId)).slice(0,12).map(n=>{const a=t(n);return{label:yx(n,r),value:a,valueLabel:K(a)}})}function ER({range:e}){const{t}=le("app"),{data:r,isLoading:n,error:a}=qe("/command-center/workflows",e),i=t("commandCenter.workflows.unknownWorkflow","(unknown workflow)"),o=t("commandCenter.workflows.noChartData","No non-zero values for this chart yet."),l=r?.workflows??[],c=AR(l,"tokens",-1),d=qv(l,v=>v.tokens.totalTokens,i),u=qv(l,v=>v.tasksCompleted,i),m=d.some(v=>v.value>0),h=u.some(v=>v.value>0);return s.jsxs(bt,{testId:"workflows",isLoading:n,error:a,isEmpty:!r||r.workflows.length===0,emptyMessage:t("commandCenter.workflows.empty","No workflow analytics have been recorded for this range yet."),children:[s.jsxs("div",{className:"cc-area-section",children:[s.jsx("h3",{className:"cc-area-section-title",children:t("commandCenter.workflows.totalsTitle","Workflow totals")}),s.jsxs("div",{className:"cc-stat-grid",children:[s.jsxs("div",{className:"card cc-stat-card","data-testid":"cc-workflows-total-tokens",children:[s.jsx("div",{className:"cc-stat-label",children:t("commandCenter.workflows.totalTokens","Total tokens")}),s.jsx("div",{className:"cc-stat-value",children:K(r?.totals.tokens.totalTokens??0)})]}),s.jsxs("div",{className:"card cc-stat-card","data-testid":"cc-workflows-total-cost",children:[s.jsx("div",{className:"cc-stat-label",children:t("commandCenter.workflows.totalCost","Estimated cost")}),s.jsx("div",{className:"cc-stat-value",children:r?Sr(r.totals.cost.usd,r.totals.cost.unavailable):"—"})]}),s.jsxs("div",{className:"card cc-stat-card","data-testid":"cc-workflows-total-files",children:[s.jsx("div",{className:"cc-stat-label",children:t("commandCenter.workflows.filesChanged","Files changed")}),s.jsx("div",{className:"cc-stat-value",children:K(r?.totals.filesChanged??0)})]}),s.jsxs("div",{className:"card cc-stat-card","data-testid":"cc-workflows-total-completed",children:[s.jsx("div",{className:"cc-stat-label",children:t("commandCenter.workflows.tasksCompleted","Tasks done")}),s.jsx("div",{className:"cc-stat-value",children:K(r?.totals.tasksCompleted??0)})]})]})]}),s.jsxs("div",{className:"cc-area-section cc-team-chart-grid",children:[s.jsxs("div",{className:"cc-team-chart-panel","data-testid":"cc-workflows-tokens-chart",children:[s.jsx("h3",{className:"cc-area-section-title",children:t("commandCenter.workflows.tokensByWorkflow","Tokens by workflow")}),m?s.jsx(Xe,{data:d,ariaLabel:t("commandCenter.workflows.tokensByWorkflow","Tokens by workflow")}):s.jsx("p",{className:"cc-muted-hint",children:o})]}),s.jsxs("div",{className:"cc-team-chart-panel","data-testid":"cc-workflows-completed-chart",children:[s.jsx("h3",{className:"cc-area-section-title",children:t("commandCenter.workflows.completedByWorkflow","Tasks done by workflow")}),h?s.jsx(Xe,{data:u,ariaLabel:t("commandCenter.workflows.completedByWorkflow","Tasks done by workflow")}):s.jsx("p",{className:"cc-muted-hint",children:o})]})]}),s.jsxs("div",{className:"cc-area-section",children:[s.jsx("h3",{className:"cc-area-section-title",children:t("commandCenter.workflows.tableTitle","Per-workflow breakdown")}),s.jsx("div",{className:"cc-table-wrap",children:s.jsxs("table",{className:"cc-table","data-testid":"cc-workflows-table",children:[s.jsx("thead",{children:s.jsxs("tr",{children:[s.jsx("th",{children:t("commandCenter.workflows.workflow","Workflow")}),s.jsx("th",{children:t("commandCenter.workflows.tokens","Tokens")}),s.jsx("th",{children:t("commandCenter.workflows.cost","Cost")}),s.jsx("th",{children:t("commandCenter.workflows.files","Files changed")}),s.jsx("th",{children:t("commandCenter.workflows.done","Tasks done")}),s.jsx("th",{children:t("commandCenter.workflows.inProgress","In progress")}),s.jsx("th",{children:t("commandCenter.workflows.inReview","In review")})]})}),s.jsx("tbody",{children:c.map(v=>s.jsxs("tr",{"data-testid":`cc-workflows-row-${v.workflowId}`,children:[s.jsx("td",{children:s.jsxs("span",{className:"cc-team-agent-cell",children:[s.jsx(Vx,{workflowId:v.workflowId,icon:v.workflowIcon,decorative:!0}),s.jsxs("span",{children:[s.jsx("span",{className:"cc-team-agent-name",children:yx(v,i)}),s.jsx("span",{className:"cc-team-agent-role",children:v.workflowId})]})]})}),s.jsx("td",{children:K(v.tokens.totalTokens)}),s.jsx("td",{children:Sr(v.cost.usd,v.cost.unavailable)}),s.jsx("td",{children:K(v.filesChanged)}),s.jsx("td",{children:K(v.tasksCompleted)}),s.jsx("td",{children:K(v.tasksInProgress)}),s.jsx("td",{children:K(v.tasksInReview)})]},v.workflowId))})]})})]})]})}function _R({range:e}){const{t}=le("app"),{data:r,isLoading:n,error:a}=qe("/command-center/tokens?groupBy=model&granularity=day",e),{data:i,isLoading:o}=qe("/command-center/plugin-activations",e),l=f.useMemo(()=>(r?.groups??[]).filter(b=>(b.key??"").trim().length>0),[r?.groups]),c=l.length,d=f.useMemo(()=>[...l].sort((b,j)=>j.nTasks-b.nTasks||(b.key??"").localeCompare(j.key??"")).slice(0,12).map(b=>({label:b.key??t("commandCenter.tokens.unknownModel","(unknown)"),value:b.nTasks,valueLabel:K(b.nTasks),iconProvider:Ml(b.key??"")})),[l,t]),u=f.useMemo(()=>d.map(b=>({label:b.label,value:b.value})),[d]),m=f.useMemo(()=>[{label:t("commandCenter.ecosystem.tokenTrendSeries","Tokens"),values:(r?.series??[]).map(b=>b.totalTokens)},{label:t("commandCenter.ecosystem.taskTrendSeries","Tasks"),values:(r?.series??[]).map(b=>b.nTasks)}],[r?.series,t]),h=u.some(b=>b.value>0),v=(r?.series??[]).length>0,g=i?.unavailable===!1,y=(!r||c===0)&&!g,p=n||o&&!r;return s.jsxs(bt,{testId:"ecosystem",isLoading:p,error:a,isEmpty:y,emptyMessage:t("commandCenter.ecosystem.empty","No models or plugins active in the selected range."),children:[s.jsxs("div",{className:"cc-area-section",children:[s.jsx("h3",{className:"cc-area-section-title",children:t("commandCenter.ecosystem.breadthTitle","Ecosystem breadth")}),s.jsxs("div",{className:"cc-stat-grid",children:[s.jsxs("div",{className:"card cc-stat-card","data-testid":"cc-ecosystem-unique-models",children:[s.jsx("div",{className:"cc-stat-label",children:t("commandCenter.ecosystem.uniqueModels","Active models")}),s.jsx("div",{className:"cc-stat-value",children:K(c)})]}),s.jsxs("div",{className:"card cc-stat-card","data-testid":"cc-ecosystem-plugins",children:[s.jsx("div",{className:"cc-stat-label",children:t("commandCenter.ecosystem.plugins","Plugin activations")}),s.jsx("div",{className:"cc-stat-value",children:g?s.jsx("span",{"data-testid":"cc-ecosystem-plugins-value",children:K(i?.activations??0)}):s.jsx("span",{className:"cc-unavailable",title:t("commandCenter.ecosystem.pluginsUnavailable","Plugin-activation metrics are not yet recorded"),"data-testid":"cc-ecosystem-plugins-unavailable",children:"—"})})]})]})]}),h?s.jsxs("div",{className:"cc-area-section","data-testid":"cc-ecosystem-pie",children:[s.jsx("h3",{className:"cc-area-section-title",children:t("commandCenter.ecosystem.modelShareTitle","Task share by model")}),s.jsx(St,{data:u,ariaLabel:t("commandCenter.ecosystem.modelShareTitle","Task share by model")})]}):null,v?s.jsxs("div",{className:"cc-area-section","data-testid":"cc-ecosystem-line",children:[s.jsx("h3",{className:"cc-area-section-title",children:t("commandCenter.ecosystem.trendTitle","Ecosystem trend")}),s.jsx(cr,{series:m,ariaLabel:t("commandCenter.ecosystem.trendTitle","Ecosystem trend")})]}):null,s.jsxs("div",{className:"cc-area-section",children:[s.jsx("h3",{className:"cc-area-section-title",children:t("commandCenter.ecosystem.perModelTitle","Tasks per model")}),s.jsx(Xe,{data:d,ariaLabel:t("commandCenter.ecosystem.perModelTitle","Tasks per model")})]})]})}const Uv=100,MR=1e3;function TR(e,t){const r=new Date(e);return Number.isNaN(r.getTime())?t:r.toLocaleString()}function IR({range:e}){const{t}=le("app"),{data:r,isLoading:n,error:a}=qe("/command-center/github",e),[i,o]=f.useState(!1),[l,c]=f.useState(null),[d,u]=f.useState(null),m=f.useCallback(async()=>{if(!i){o(!0),c(null),u(null);try{let D=0;const F={scanned:0,filled:0,skipped:0,errors:0};for(let V=0;V<MR;V+=1){const q=await qx({offset:D,limit:Uv});if(F.scanned+=q.scanned,F.filled+=q.filled,F.skipped+=q.skipped,F.errors+=q.errors,!q.hasMore){c(F);return}D+=Uv}c(F),u(t("commandCenter.github.backfillMaxBatches","Backfill stopped after the safety limit; rerun after checking server logs."))}catch(D){u(D instanceof Error?D.message:t("commandCenter.github.backfillFailed","Failed to backfill GitHub source issue close times"))}finally{o(!1)}}},[i,t]),h=f.useMemo(()=>r?.daily??[],[r?.daily]),v=f.useMemo(()=>r?.byRepo??[],[r?.byRepo]),g=f.useMemo(()=>r?.resolved??[],[r?.resolved]),y=f.useMemo(()=>h.map(D=>D.filed),[h]),p=f.useMemo(()=>h.map(D=>D.fixed),[h]),b=f.useMemo(()=>Math.max(0,...y,...p),[y,p]),j=f.useMemo(()=>v.slice(0,12).map(D=>({label:D.repo,value:D.filed+D.fixed,valueLabel:t("commandCenter.github.repoValue","{{filed}} filed / {{fixed}} fixed",{filed:K(D.filed),fixed:K(D.fixed)})})),[v,t]),x=f.useMemo(()=>[{label:t("commandCenter.github.filed","Filed by Fusion"),value:r?.filed??0},{label:t("commandCenter.github.fixed","Fixed by Fusion"),value:r?.fixed??0}],[r?.filed,r?.fixed,t]),C=f.useMemo(()=>[{label:t("commandCenter.github.filedTrend","Filed"),values:y},{label:t("commandCenter.github.fixedTrend","Fixed"),values:p}],[y,p,t]),w=r?.filed??0,P=r?.fixed??0,O=r?.net??w-P,k=!r||w===0&&P===0,N=h.length>0,S=w+P>0,A=j.length>0,_=g.length>0,I=d||(l?.errors??0)>0?"cc-github-backfill-status--error":i?"cc-github-backfill-status--warning":"";return s.jsxs(bt,{testId:"github",isLoading:n,error:a,isEmpty:!1,emptyMessage:t("commandCenter.github.empty","No GitHub issue activity in the selected range."),children:[s.jsxs("div",{className:"cc-area-section",children:[s.jsx("h3",{className:"cc-area-section-title",children:t("commandCenter.github.totalsTitle","GitHub issue flow")}),k?s.jsx("span",{className:"cc-stat-sub",children:t("commandCenter.github.empty","No GitHub issue activity in the selected range.")}):null,s.jsxs("div",{className:"cc-stat-grid",children:[s.jsxs("div",{className:"card cc-stat-card","data-testid":"cc-github-filed",children:[s.jsx("div",{className:"cc-stat-label",children:t("commandCenter.github.filed","Filed by Fusion")}),s.jsx("div",{className:"cc-stat-value",children:K(w)})]}),s.jsxs("div",{className:"card cc-stat-card","data-testid":"cc-github-fixed",children:[s.jsx("div",{className:"cc-stat-label",children:t("commandCenter.github.fixed","Fixed by Fusion")}),s.jsx("div",{className:"cc-stat-value",children:K(P)}),s.jsx("span",{className:"cc-stat-sub",children:t("commandCenter.github.fixedApproximation","Uses done tasks updated in range")}),s.jsx("div",{className:"cc-github-backfill-actions",children:s.jsxs("button",{type:"button",className:"btn","data-testid":"cc-github-backfill-button",onClick:()=>void m(),disabled:i,children:[s.jsx(Gr,{className:i?"spin":void 0}),s.jsx("span",{children:i?t("commandCenter.github.backfillBusy","Backfilling close times…"):t("commandCenter.github.backfillButton","Backfill exact close times")})]})}),i||l||d?s.jsxs("div",{className:`cc-github-backfill-status ${I}`.trim(),"data-testid":"cc-github-backfill-result",role:"status",children:[i?s.jsx("span",{children:t("commandCenter.github.backfillPending","Backfill is running in paginated batches.")}):null,d?s.jsx("span",{children:d}):null,l?s.jsx("span",{children:l.scanned===0&&l.filled===0?t("commandCenter.github.backfillNothing","Nothing to backfill. Scanned {{scanned}}, filled {{filled}}, skipped {{skipped}}, errors {{errors}}.",l):t("commandCenter.github.backfillResult","Backfill complete. Scanned {{scanned}}, filled {{filled}}, skipped {{skipped}}, errors {{errors}}.",l)}):null]}):null]}),s.jsxs("div",{className:"card cc-stat-card","data-testid":"cc-github-net",children:[s.jsx("div",{className:"cc-stat-label",children:t("commandCenter.github.net","Net")}),s.jsx("div",{className:"cc-stat-value",children:K(O)})]})]})]}),S?s.jsxs("div",{className:"cc-area-section","data-testid":"cc-github-pie",children:[s.jsx("h3",{className:"cc-area-section-title",children:t("commandCenter.github.issueFlowShare","Filed vs fixed share")}),s.jsx(St,{data:x,ariaLabel:t("commandCenter.github.issueFlowShare","Filed vs fixed share")})]}):null,N?s.jsxs("div",{className:"cc-area-section","data-testid":"cc-github-line",children:[s.jsx("h3",{className:"cc-area-section-title",children:t("commandCenter.github.dailyLine","Filed vs fixed line")}),s.jsx(cr,{series:C,ariaLabel:t("commandCenter.github.dailyLine","Filed vs fixed line")})]}):null,N?s.jsxs("div",{className:"cc-area-section","data-testid":"cc-github-daily-trend",children:[s.jsx("h3",{className:"cc-area-section-title",children:t("commandCenter.github.dailyTrend","Filed vs fixed trend")}),s.jsxs("div",{className:"cc-stat-grid",children:[s.jsxs("div",{className:"card cc-stat-card",children:[s.jsx("div",{className:"cc-stat-label",children:t("commandCenter.github.filedTrend","Filed")}),s.jsx(wt,{values:y,max:b,ariaLabel:t("commandCenter.github.filedTrend","Filed")})]}),s.jsxs("div",{className:"card cc-stat-card",children:[s.jsx("div",{className:"cc-stat-label",children:t("commandCenter.github.fixedTrend","Fixed")}),s.jsx(wt,{values:p,max:b,ariaLabel:t("commandCenter.github.fixedTrend","Fixed")})]})]})]}):null,A?s.jsxs("div",{className:"cc-area-section","data-testid":"cc-github-by-repo",children:[s.jsx("h3",{className:"cc-area-section-title",children:t("commandCenter.github.byRepo","By repository")}),s.jsx(Xe,{data:j,ariaLabel:t("commandCenter.github.byRepo","By repository")})]}):null,_?s.jsxs("div",{className:"cc-area-section","data-testid":"cc-github-resolved",children:[s.jsx("h3",{className:"cc-area-section-title",children:t("commandCenter.github.resolvedTitle","Resolved issues")}),s.jsx("div",{className:"cc-table-wrap",children:s.jsxs("table",{className:"cc-table",children:[s.jsx("thead",{children:s.jsxs("tr",{children:[s.jsx("th",{scope:"col",children:t("commandCenter.github.resolvedIssue","Issue")}),s.jsx("th",{scope:"col",children:t("commandCenter.github.resolvedTask","Resolving task")}),s.jsx("th",{scope:"col",children:t("commandCenter.github.resolvedAt","Resolved at")})]})}),s.jsx("tbody",{children:g.map(D=>{const F=D.issueNumber===null?D.repo:`${D.repo}#${D.issueNumber}`,V=TR(D.resolvedAt,t("commandCenter.github.resolvedAtUnknown","Unknown"));return s.jsxs("tr",{children:[s.jsx("td",{children:D.url?s.jsx("a",{href:D.url,target:"_blank",rel:"noopener noreferrer","aria-label":t("commandCenter.github.openResolvedIssue","Open GitHub issue {{issue}}",{issue:F}),children:F}):s.jsx("span",{children:F})}),s.jsxs("td",{children:[s.jsx("span",{children:D.taskTitle||D.taskId})," ",s.jsxs("span",{className:"cc-stat-sub",children:["(",D.taskId,")"]})]}),s.jsxs("td",{children:[s.jsx("span",{children:V})," ",D.resolvedAtExact?null:s.jsx("span",{className:"cc-stat-sub",children:t("commandCenter.github.resolvedApprox","approx")})]})]},D.taskId)})})]})})]}):null]})}function DR(e,t){const r=new Date(e);return Number.isNaN(r.getTime())?t:r.toLocaleString()}function LR({range:e}){const{t}=le("app"),{data:r,isLoading:n,error:a}=qe("/command-center/gitlab",e),i=f.useMemo(()=>r?.daily??[],[r?.daily]),o=f.useMemo(()=>r?.byProject??[],[r?.byProject]),l=f.useMemo(()=>r?.resolved??[],[r?.resolved]),c=f.useMemo(()=>i.map(p=>p.filed),[i]),d=f.useMemo(()=>i.map(p=>p.fixed),[i]),u=f.useMemo(()=>Math.max(0,...c,...d),[c,d]),m=f.useMemo(()=>o.slice(0,12).map(p=>({label:p.project,value:p.filed+p.fixed,valueLabel:t("commandCenter.gitlab.projectValue","{{filed}} filed / {{fixed}} fixed",{filed:K(p.filed),fixed:K(p.fixed)})})),[o,t]),h=r?.filed??0,v=r?.fixed??0,g=r?.net??h-v,y=!r||h===0&&v===0;return s.jsxs(bt,{testId:"gitlab",isLoading:n,error:a,isEmpty:!1,emptyMessage:t("commandCenter.gitlab.empty","No GitLab issue or merge request activity in the selected range."),children:[s.jsxs("div",{className:"cc-area-section",children:[s.jsx("h3",{className:"cc-area-section-title",children:t("commandCenter.gitlab.totalsTitle","GitLab issue and MR flow")}),y?s.jsx("span",{className:"cc-stat-sub",children:t("commandCenter.gitlab.empty","No GitLab issue or merge request activity in the selected range.")}):null,s.jsxs("div",{className:"cc-stat-grid",children:[s.jsxs("div",{className:"card cc-stat-card","data-testid":"cc-gitlab-filed",children:[s.jsx("div",{className:"cc-stat-label",children:t("commandCenter.gitlab.filed","Filed by Fusion")}),s.jsx("div",{className:"cc-stat-value",children:K(h)})]}),s.jsxs("div",{className:"card cc-stat-card","data-testid":"cc-gitlab-fixed",children:[s.jsx("div",{className:"cc-stat-label",children:t("commandCenter.gitlab.fixed","Fixed by Fusion")}),s.jsx("div",{className:"cc-stat-value",children:K(v)}),s.jsx("span",{className:"cc-stat-sub",children:t("commandCenter.gitlab.fixedApproximation","Uses persisted GitLab close times when available")})]}),s.jsxs("div",{className:"card cc-stat-card","data-testid":"cc-gitlab-net",children:[s.jsx("div",{className:"cc-stat-label",children:t("commandCenter.gitlab.net","Net")}),s.jsx("div",{className:"cc-stat-value",children:K(g)})]})]})]}),s.jsxs("div",{className:"cc-area-section",children:[s.jsx("h3",{className:"cc-area-section-title",children:t("commandCenter.gitlab.dailyTitle","Daily GitLab flow")}),i.length>0?s.jsxs("div",{className:"cc-chart-grid",children:[s.jsxs("div",{className:"card cc-chart-card",children:[s.jsx("h4",{children:t("commandCenter.gitlab.filedTrend","Filed")}),s.jsx(wt,{values:c,max:u})]}),s.jsxs("div",{className:"card cc-chart-card",children:[s.jsx("h4",{children:t("commandCenter.gitlab.fixedTrend","Fixed")}),s.jsx(wt,{values:d,max:u})]})]}):s.jsx("span",{className:"cc-stat-sub",children:t("commandCenter.gitlab.noDaily","No daily GitLab trend data yet.")})]}),s.jsxs("div",{className:"cc-area-section",children:[s.jsx("h3",{className:"cc-area-section-title",children:t("commandCenter.gitlab.projectsTitle","Projects and groups")}),m.length>0?s.jsx(Xe,{data:m}):s.jsx("span",{className:"cc-stat-sub",children:t("commandCenter.gitlab.noProjects","No GitLab project activity yet.")})]}),s.jsxs("div",{className:"cc-area-section",children:[s.jsx("h3",{className:"cc-area-section-title",children:t("commandCenter.gitlab.resolvedTitle","Resolved GitLab source items")}),l.length>0?s.jsx("div",{className:"cc-resolved-list","data-testid":"cc-gitlab-resolved-list",children:l.slice(0,12).map(p=>{const j=`${p.issueNumber===null?p.project:`${p.project}#${p.issueNumber}`} · ${p.taskId}`;return s.jsxs("div",{className:"card cc-resolved-item",children:[s.jsxs("div",{children:[p.url?s.jsx("a",{href:p.url,target:"_blank",rel:"noopener noreferrer",children:j}):s.jsx("strong",{children:j}),s.jsx("div",{className:"cc-stat-sub",children:p.taskTitle})]}),s.jsxs("span",{className:"cc-stat-sub",children:[DR(p.resolvedAt,p.resolvedAt),p.resolvedAtExact?"":` ${t("commandCenter.gitlab.approximate","(approx.)")}`]})]},`${p.taskId}:${p.resolvedAt}`)})}):s.jsx("span",{className:"cc-stat-sub",children:t("commandCenter.gitlab.noResolved","No resolved GitLab source items in range.")})]})]})}function RR({range:e}){const{t}=le("app"),{data:r,isLoading:n}=qe("/command-center/signals",e),{data:a,isLoading:i}=qe("/command-center/signals/connectors",e),o=f.useMemo(()=>(r?.bySource??[]).map(y=>({label:y.source,value:y.count,valueLabel:K(y.count)})),[r?.bySource]),l=f.useMemo(()=>(r?.bySeverity??[]).map(y=>({label:y.severity,value:y.count,valueLabel:K(y.count)})),[r?.bySeverity]),c=f.useMemo(()=>[{label:t("commandCenter.signals.open","Open"),value:r?.open??0},{label:t("commandCenter.signals.resolved","Resolved"),value:r?.resolved??0}],[r?.open,r?.resolved,t]),d=!r||r.totalSignals===0,m=(Array.isArray(a?.connectors)?a.connectors.filter(y=>y.configured).map(y=>y.provider):void 0)??r?.connectors?.configured??[],v=m.length>0||r?.connectors?.anyConfigured===!0?t("commandCenter.signals.emptyAwaitingSignals","Connector configured, awaiting signals in this range. Configured providers: {{providers}}.",{providers:m.length>0?m.join(", "):t("commandCenter.signals.providersUnknown","unknown")}):t("commandCenter.signals.emptyNoConnectorConfigured","No signal connector configured. Connect GitLab, Sentry, Datadog, PagerDuty, or a generic webhook to see incident metrics here."),g=!d&&c.some(y=>y.value>0);return s.jsxs(bt,{testId:"signals",isLoading:n||i,error:null,isEmpty:d,emptyMessage:v,children:[s.jsxs("div",{className:"cc-area-section",children:[s.jsx("h3",{className:"cc-area-section-title",children:t("commandCenter.signals.summaryTitle","Summary")}),s.jsxs("div",{className:"cc-stat-grid",children:[s.jsxs("div",{className:"card cc-stat-card","data-testid":"cc-signals-total",children:[s.jsx("div",{className:"cc-stat-label",children:t("commandCenter.signals.total","Total signals")}),s.jsx("div",{className:"cc-stat-value",children:K(r?.totalSignals??0)})]}),s.jsxs("div",{className:"card cc-stat-card","data-testid":"cc-signals-open",children:[s.jsx("div",{className:"cc-stat-label",children:t("commandCenter.signals.open","Open")}),s.jsx("div",{className:"cc-stat-value",children:K(r?.open??0)})]}),s.jsxs("div",{className:"card cc-stat-card","data-testid":"cc-signals-resolved",children:[s.jsx("div",{className:"cc-stat-label",children:t("commandCenter.signals.resolved","Resolved")}),s.jsx("div",{className:"cc-stat-value",children:K(r?.resolved??0)})]}),s.jsxs("div",{className:"card cc-stat-card","data-testid":"cc-signals-mttr",children:[s.jsx("div",{className:"cc-stat-label",children:t("commandCenter.signals.mttr","MTTR")}),s.jsx("div",{className:"cc-stat-value",children:r&&r.mttr.value!==null&&!r.mttr.unavailable?t("commandCenter.signals.mttrValue","{{min}} min",{min:Math.round(r.mttr.value)}):s.jsx("span",{className:"cc-unavailable",title:t("commandCenter.signals.mttrUnavailable","MTTR is unavailable until incident data is recorded"),children:"—"})})]})]})]}),g?s.jsxs("div",{className:"cc-area-section","data-testid":"cc-signals-pie",children:[s.jsx("h3",{className:"cc-area-section-title",children:t("commandCenter.signals.statusShare","Signal status share")}),s.jsx(St,{data:c,ariaLabel:t("commandCenter.signals.statusShare","Signal status share")})]}):null,s.jsxs("div",{className:"cc-area-section",children:[s.jsx("h3",{className:"cc-area-section-title",children:t("commandCenter.signals.bySource","By source")}),s.jsx(Xe,{data:o,ariaLabel:t("commandCenter.signals.bySource","By source")})]}),s.jsxs("div",{className:"cc-area-section",children:[s.jsx("h3",{className:"cc-area-section-title",children:t("commandCenter.signals.bySeverity","By severity")}),s.jsx(Xe,{data:l,ariaLabel:t("commandCenter.signals.bySeverity","By severity")})]})]})}function gx(e){return e===null||!Number.isFinite(e)||e<=0?0:Math.max(0,Math.min(1,e))}function $R(e){if(e===null)return"—";const t=gx(e);return`${Math.round(t*100)}%`}function Oa({value:e,label:t,ariaLabel:r}){const n=gx(e),a=$R(e),i={"--cc-radial-value":`${n*100}%`};return s.jsxs("div",{className:"cc-radial-gauge",role:"img","aria-label":r,style:i,children:[s.jsx("div",{className:"cc-radial-gauge-ring","aria-hidden":"true",children:s.jsx("div",{className:"cc-radial-gauge-core",children:s.jsx("span",{className:"cc-radial-gauge-value",children:a})})}),s.jsx("span",{className:"cc-radial-gauge-label",children:t})]})}const BR=5e3,FR=30,zR=["triage","todo","in-progress","in-review","done"],KR=["idle","active","running","error"];function at(e){if(!Number.isFinite(e)||e<0)return"—";const t=e/(1024*1024);return t<1024?`${t.toFixed(0)} MB`:`${(t/1024).toFixed(2)} GB`}function Wv(e,t){return!Number.isFinite(e)||!Number.isFinite(t)||t<=0?"—":`${(e/t*100).toFixed(1)}%`}function VR(e,t){if(t<=0)return"normal";const r=e/t;return r>=.85?"critical":r>=.65?"warning":"normal"}function qR(e,t){if(t<=0)return"normal";const r=e/t;return r>=.5?"critical":r>=.25?"warning":"normal"}function UR(e,t){if(t<=0)return"normal";const r=e/t;return r>=.9?"critical":r>=.75?"warning":"normal"}function WR(e,t){if(e===null||!Number.isFinite(e)||e<0)return"normal";const r=t>0?e/t:e;return r>=80?"critical":r>=50?"warning":"normal"}function ga(e){return e==="critical"?"cc-system-value--critical":e==="warning"?"cc-system-value--warning":""}function HR(e,t){if(!e)return t;const r=new Date(e);return Number.isNaN(r.getTime())?t:r.toLocaleString()}function pi(e,t){return!Number.isFinite(e)||!Number.isFinite(t)||t<=0?0:Math.max(0,Math.min(1,e/t))}function Sn(e){return e==null||!Number.isFinite(e)?0:Math.max(0,Math.min(100,e))}function GR(e){const t=e.systemStats,r=t.systemTotalMem-t.systemFreeMem;return{cpuPercent:Sn(t.cpuPercent),usedSystemMemPercent:pi(r,t.systemTotalMem)*100,heapUsedPercent:pi(t.heapUsed,t.heapLimit)*100}}function XR({projectId:e}){const{t}=le("app"),[r,n]=f.useState(null),[a,i]=f.useState([]),[o,l]=f.useState(!0),[c,d]=f.useState(null),[u,m]=f.useState(!0),[h,v]=f.useState(90),[g,y]=f.useState(!1),[p,b]=f.useState(!1),[j,x]=f.useState(null),[C,w]=f.useState(null),[P,O]=f.useState(null),[k,N]=f.useState(null),{nodes:S}=ih(),A=f.useMemo(()=>S.find(E=>E.type==="local")?.id,[S]),_=k??A??null,I=S.find(E=>E.id===_)??null,D=S.length>1,F=I?.name??t("systemStats.localNodeFallback","Local node"),V=f.useCallback(E=>{const T=[];return E.type==="local"&&T.push(t("systemStats.thisNodeSuffix","this node")),E.status&&E.status!=="online"&&T.push(t("systemStats.nodeStatusSuffix","{{status}}",{status:E.status})),T.length>0?`${E.name} (${T.join(" · ")})`:E.name},[S,t]),q=f.useCallback(async E=>{l(!0);try{const T=_&&_!==A?await Ux(_,e):await Wx(e);n(T),i(J=>[...J,GR(T)].slice(-FR)),d(null),O(Date.now()),E?.preserveKillResult||x(null)}catch(T){d(T instanceof Error?T.message:t("systemStats.errorLoadStats","Failed to load system stats"))}finally{l(!1)}},[_,A,e,t]);f.useEffect(()=>{q();const E=window.setInterval(()=>{q()},BR);return()=>{window.clearInterval(E)}},[q]),f.useEffect(()=>{N(E=>E&&S.some(T=>T.id===E)?E:null)},[S]),f.useEffect(()=>{i([]),d(null),x(null),b(!1)},[_]),f.useEffect(()=>{let E=!1;return(async()=>{try{const J=await Hx();if(E)return;m(J.vitestAutoKillEnabled??!0),v(J.vitestKillThresholdPct??90),w(null)}catch(J){E||w(J instanceof Error?J.message:t("systemStats.errorLoadVitestSettings","Failed to load vitest settings"))}})(),()=>{E=!0}},[t]);const te=f.useCallback(async E=>{m(E);try{await mu({vitestAutoKillEnabled:E}),w(null)}catch(T){w(T instanceof Error?T.message:t("systemStats.errorSaveVitestSettings","Failed to save vitest settings"))}},[t]),U=f.useCallback(async E=>{const T=Math.min(99,Math.max(50,Number.isFinite(E)?Math.round(E):90));v(T);try{await mu({vitestKillThresholdPct:T}),w(null)}catch(J){w(J instanceof Error?J.message:t("systemStats.errorSaveVitestSettings","Failed to save vitest settings"))}},[t]),ee=f.useCallback(async()=>{if(!g){if(!p){b(!0);return}y(!0);try{const E=_&&_!==A?await vu(e,_,A):await vu(e);x(E),b(!1),await q({preserveKillResult:!0})}catch(E){d(E instanceof Error?E.message:t("systemStats.errorKillVitest","Failed to kill vitest processes"))}finally{y(!1)}}},[p,_,g,q,A,e,t]),L=r?.systemStats,B=r?.taskStats,X=L?L.systemTotalMem-L.systemFreeMem:0,Q=L?pi(X,L.systemTotalMem):0,G=L?pi(L.heapUsed,L.heapLimit):0,ie=L?.cpuPercent===null||L?.cpuPercent===void 0?null:Sn(L.cpuPercent)/100,se=L?.cpuPercent===null||L?.cpuPercent===void 0?t("systemStats.cpuSampling","Sampling…"):`${L.cpuPercent.toFixed(1)}%`,re=P?t("systemStats.updatedAt","Updated {{time}}",{time:new Date(P).toLocaleTimeString([],{hour:"2-digit",minute:"2-digit",second:"2-digit"})}):t("systemStats.waitingFirstUpdate","Waiting for first update"),W=f.useMemo(()=>{const E=B?.byColumn??{};return(Object.keys(E).length>0?Object.keys(E):zR).map(J=>({label:J,value:E[J]??0,valueLabel:K(E[J]??0)}))},[B?.byColumn]),$=f.useMemo(()=>W.map(E=>({label:E.label,value:E.value})),[W]),ne=f.useMemo(()=>[{label:t("commandCenter.system.cpuSeries","CPU"),values:a.map(E=>Sn(E.cpuPercent))},{label:t("commandCenter.system.memorySeries","Memory"),values:a.map(E=>Sn(E.usedSystemMemPercent))},{label:t("commandCenter.system.heapSeries","Heap"),values:a.map(E=>Sn(E.heapUsedPercent))}],[a,t]),we=$.some(E=>E.value>0),z=a.length>0,fe=f.useMemo(()=>{const E=B?.agents;return KR.map(T=>({label:t(`systemStats.agent${T[0].toUpperCase()}${T.slice(1)}`,T),value:E?.[T]??0,valueLabel:K(E?.[T]??0)}))},[B?.agents,t]),be=f.useMemo(()=>{const E=L?ga(VR(L.heapUsed,L.heapLimit)):"",T=L?ga(qR(L.rss,L.systemTotalMem)):"",J=L?ga(UR(X,L.systemTotalMem)):"",dt=L?ga(WR(L.cpuPercent,L.cpuCount)):"";return[{label:t("systemStats.rowAppCpu","App CPU"),value:se,detail:L?.cpuPercent===null?t("systemStats.cpuFirstSamplePending","First sample pending"):t("systemStats.cpuProcessUsage","process usage"),className:dt},{label:t("systemStats.rowRss","RSS"),value:L?at(L.rss):"—",detail:L?Wv(L.rss,L.systemTotalMem):"—",className:T},{label:t("systemStats.rowHeapUsed","Heap Used"),value:L?at(L.heapUsed):"—",detail:L?t("systemStats.rowHeapUsedDetail","of {{total}}",{total:at(L.heapTotal)}):"—",className:E},{label:t("systemStats.rowHeapLimit","Heap Limit"),value:L?at(L.heapLimit):"—",detail:t("systemStats.rowHeapLimitDetail","V8 limit")},{label:t("systemStats.rowExternal","External"),value:L?at(L.external):"—"},{label:t("systemStats.rowArrayBuffers","Array Buffers"),value:L?at(L.arrayBuffers):"—"},{label:t("systemStats.rowLoadAvg","Load Avg"),value:L?.loadAvg.map(dr=>dr.toFixed(2)).join(" ")??"—"},{label:t("systemStats.rowCores","Cores"),value:L?.cpuCount??"—"},{label:t("systemStats.rowPlatform","Platform"),value:L?.platform??"—"},{label:t("systemStats.rowNode","Node"),value:L?.nodeVersion??"—"},{label:t("systemStats.rowPid","PID"),value:L?.pid??"—"},{label:t("systemStats.rowMemoryUsed","Memory Used"),value:L?at(X):"—",detail:L?`${Wv(X,L.systemTotalMem)} of ${at(L.systemTotalMem)}`:"—",className:J},{label:t("systemStats.rowMemoryFree","Memory Free"),value:L?at(L.systemFreeMem):"—"}]},[se,L,t,X]),ye=r?.vitestProcessCount,nt=HR(r?.vitestLastAutoKillAt,t("systemStats.notYet","Not yet")),ur=o&&!!r;return s.jsxs(bt,{testId:"system",isLoading:o&&!r,error:r?null:c,isEmpty:!1,children:[s.jsxs("div",{className:"cc-area-section",children:[s.jsxs("div",{className:"cc-area-section-header",children:[s.jsx("h3",{className:"cc-area-section-title",children:t("commandCenter.system.healthTitle","Live system health")}),s.jsxs("div",{className:"cc-system-refresh","aria-live":"polite",children:[D?s.jsxs("label",{className:"cc-system-node-selector",htmlFor:"cc-system-node-select",children:[s.jsx("span",{children:t("systemStats.nodeSelectorLabel","Node")}),s.jsx("select",{id:"cc-system-node-select",className:"input","data-testid":"cc-system-node-select","aria-label":t("systemStats.nodeSelectorAriaLabel","Select system stats node"),value:_??"",onChange:E=>{i([]),x(null),b(!1),N(E.target.value||null)},children:S.map(E=>s.jsx("option",{value:E.id,children:V(E)},E.id))})]}):null,s.jsx("span",{children:t("systemStats.viewingNode","Viewing {{node}}",{node:F})}),s.jsx("span",{children:t("systemStats.autoRefresh","Auto-refresh · 5s")}),s.jsx("span",{children:re}),s.jsx("button",{type:"button",className:"btn-icon",onClick:()=>void q(),title:t("systemStats.refreshTitle","Refresh"),"aria-label":t("systemStats.refreshAriaLabel","Refresh system stats"),children:s.jsx(Gr,{size:16,className:ur?"spin":void 0})})]})]}),c&&r?s.jsx("p",{className:"cc-system-note cc-system-note--error",role:"status",children:t("systemStats.footerRefreshFailed","Latest refresh failed: {{error}}",{error:c})}):null,s.jsxs("div",{className:"cc-stat-grid cc-system-gauges",children:[s.jsxs("div",{className:"card cc-stat-card cc-stat-card--gauge","data-testid":"cc-system-cpu-gauge",children:[s.jsx(Oa,{value:ie,label:t("systemStats.rowAppCpu","App CPU"),ariaLabel:t("commandCenter.system.cpuGauge","App CPU usage")}),s.jsx("span",{className:"cc-stat-sub",children:se})]}),s.jsxs("div",{className:"card cc-stat-card cc-stat-card--gauge","data-testid":"cc-system-mem-gauge",children:[s.jsx(Oa,{value:Q,label:t("systemStats.rowMemoryUsed","Memory Used"),ariaLabel:t("commandCenter.system.memoryGauge","System memory used")}),s.jsx("span",{className:"cc-stat-sub",children:L?`${at(X)} / ${at(L.systemTotalMem)}`:"—"})]}),s.jsxs("div",{className:"card cc-stat-card cc-stat-card--gauge","data-testid":"cc-system-heap-gauge",children:[s.jsx(Oa,{value:G,label:t("systemStats.rowHeapUsed","Heap Used"),ariaLabel:t("commandCenter.system.heapGauge","Heap used")}),s.jsx("span",{className:"cc-stat-sub",children:L?`${at(L.heapUsed)} / ${at(L.heapLimit)}`:"—"})]})]})]}),s.jsxs("div",{className:"cc-area-section",children:[s.jsx("h3",{className:"cc-area-section-title",children:t("commandCenter.system.trendsTitle","Live trends")}),z?s.jsxs("div",{className:"card cc-stat-card","data-testid":"cc-system-line",children:[s.jsx("div",{className:"cc-stat-label",children:t("commandCenter.system.resourceTrend","Resource trend")}),s.jsx(cr,{series:ne,ariaLabel:t("commandCenter.system.resourceTrend","Resource trend")})]}):null,s.jsxs("div",{className:"cc-stat-grid",children:[s.jsxs("div",{className:"card cc-stat-card","data-testid":"cc-system-cpu-trend",children:[s.jsx("div",{className:"cc-stat-label",children:t("commandCenter.system.cpuTrend","CPU over time")}),s.jsx(wt,{values:a.map(E=>E.cpuPercent),max:100,ariaLabel:t("commandCenter.system.cpuTrend","CPU over time")})]}),s.jsxs("div",{className:"card cc-stat-card","data-testid":"cc-system-memory-trend",children:[s.jsx("div",{className:"cc-stat-label",children:t("commandCenter.system.memoryTrend","Memory over time")}),s.jsx(wt,{values:a.map(E=>E.usedSystemMemPercent),max:100,ariaLabel:t("commandCenter.system.memoryTrend","Memory over time")})]}),s.jsxs("div",{className:"card cc-stat-card","data-testid":"cc-system-heap-trend",children:[s.jsx("div",{className:"cc-stat-label",children:t("commandCenter.system.heapTrend","Heap over time")}),s.jsx(wt,{values:a.map(E=>E.heapUsedPercent),max:100,ariaLabel:t("commandCenter.system.heapTrend","Heap over time")})]})]})]}),s.jsxs("div",{className:"cc-area-section",children:[s.jsx("h3",{className:"cc-area-section-title",children:t("commandCenter.system.workloadTitle","Workload")}),s.jsxs("div",{className:"cc-system-chart-grid",children:[we?s.jsxs("div",{className:"card cc-stat-card","data-testid":"cc-system-pie",children:[s.jsx("div",{className:"cc-stat-label",children:t("commandCenter.system.taskShare","Task distribution")}),s.jsx(St,{data:$,ariaLabel:t("commandCenter.system.taskShare","Task distribution")})]}):null,s.jsxs("div",{className:"card cc-stat-card","data-testid":"cc-system-tasks-bar",children:[s.jsx("div",{className:"cc-stat-label",children:t("systemStats.sectionTasks","Tasks")}),s.jsx(Xe,{data:W,ariaLabel:t("systemStats.sectionTasksAriaLabel","Task stats")})]}),s.jsxs("div",{className:"card cc-stat-card","data-testid":"cc-system-agents-bar",children:[s.jsx("div",{className:"cc-stat-label",children:t("systemStats.sectionAgents","Agents")}),s.jsx(Xe,{data:fe,ariaLabel:t("systemStats.sectionAgentsAriaLabel","Agent stats")})]})]})]}),s.jsxs("div",{className:"cc-area-section",children:[s.jsx("h3",{className:"cc-area-section-title",children:t("commandCenter.system.detailsTitle","Runtime details")}),s.jsx("div",{className:"cc-stat-grid","data-testid":"cc-system-details-grid",children:be.map(E=>s.jsxs("div",{className:"card cc-stat-card",children:[s.jsx("div",{className:"cc-stat-label",children:E.label}),s.jsx("div",{className:`cc-stat-value ${E.className??""}`.trim(),children:E.value}),E.detail?s.jsx("span",{className:"cc-stat-sub",children:E.detail}):null]},E.label))})]}),s.jsxs("div",{className:"cc-area-section","data-testid":"cc-system-vitest-controls",children:[s.jsxs("h3",{className:"cc-area-section-title cc-system-section-title-with-icon",children:[s.jsx(a0,{}),s.jsx("span",{children:t("systemStats.sectionVitest","Vitest Controls")})]}),s.jsxs("div",{className:"cc-stat-grid",children:[s.jsxs("div",{className:"card cc-stat-card",children:[s.jsx("div",{className:"cc-stat-label",children:t("systemStats.vitestProcesses","Vitest Processes")}),s.jsx("div",{className:"cc-stat-value",children:ye??"—"})]}),s.jsxs("div",{className:"card cc-stat-card",children:[s.jsx("div",{className:"cc-stat-label",children:t("systemStats.lastAutoKill","Last auto-kill: {{time}}",{time:""}).trim()}),s.jsx("div",{className:"cc-stat-value",children:nt})]})]}),s.jsxs("div",{className:"card cc-system-vitest-card",children:[s.jsxs("button",{type:"button",className:"btn btn-danger","data-testid":"cc-system-kill-vitest",onClick:()=>void ee(),disabled:g||ye===0,children:[s.jsx(d0,{}),s.jsx("span",{children:p?t("systemStats.confirmKill","Confirm Kill?"):t("systemStats.killVitest","Kill Vitest Processes")})]}),s.jsxs("label",{className:"cc-system-toggle-row",children:[s.jsx("input",{type:"checkbox",checked:u,onChange:E=>{te(E.target.checked)}}),s.jsx("span",{children:t("systemStats.autoKillLabel","Auto-kill vitest on memory pressure")})]}),s.jsxs("div",{className:"cc-system-threshold-row",children:[s.jsx("label",{htmlFor:"cc-system-vitest-threshold-number",children:t("systemStats.killThresholdLabel","Kill threshold (%)")}),s.jsxs("div",{className:"cc-system-threshold-controls",children:[s.jsx("input",{id:"cc-system-vitest-threshold-range",type:"range",min:50,max:99,value:h,"aria-label":t("systemStats.killThresholdSliderAriaLabel","Kill threshold slider (%)"),onChange:E=>{const T=Number.parseInt(E.target.value,10);U(Number.isNaN(T)?90:T)}}),s.jsx("input",{id:"cc-system-vitest-threshold-number",type:"number",className:"input",min:50,max:99,value:h,"aria-label":t("systemStats.killThresholdInputAriaLabel","Kill threshold (%)"),onChange:E=>{const T=Number.parseInt(E.target.value,10);U(Number.isNaN(T)?90:T)},onBlur:()=>{U(h)}})]})]}),j?s.jsx("p",{className:`cc-system-note ${j.killed>0?"cc-system-note--success":"cc-system-note--error"}`,children:t("systemStats.killedProcesses","Killed {{count}} processes",{count:j.killed})}):null,C?s.jsx("p",{className:"cc-system-note cc-system-note--error",children:C}):null]})]})]})}function YR(e,t){if(!Number.isFinite(e)||e<=0)return 0;const r=Number.isFinite(t)&&t>0?t:1;return Math.max(0,Math.min(100,e/r*100))}function ZR(e,t){return t===null?null:!Number.isFinite(t)||t<=0?"—":`${Math.max(0,Math.min(100,e/t*100)).toFixed(0)}%`}function bx({stages:e,ariaLabel:t}){const r=e.reduce((n,a)=>a.value>n?a.value:n,0);return s.jsx("ol",{className:"cc-funnel","aria-label":t,children:e.map((n,a)=>{const i=YR(n.value,r),o=a>0?e[a-1].value:null,l=ZR(n.value,o),c=String(Number.isFinite(n.value)?n.value:0);return s.jsxs("li",{className:"cc-funnel-stage",children:[s.jsxs("div",{className:"cc-funnel-header",children:[s.jsx("span",{className:"cc-funnel-label",children:n.label}),l!==null?s.jsx("span",{className:"cc-funnel-conversion",children:l}):null]}),s.jsx("div",{className:"cc-funnel-track",children:s.jsx("div",{className:"cc-funnel-fill",style:{width:`${i}%`},role:"img","aria-label":`${n.label}: ${c}`})}),s.jsx("span",{className:"cc-funnel-value",children:c})]},n.label)})})}const JR=5e3,QR=3e4,e$=["session:updated","session:completed","run:created","run:updated","run:completed","run:cancelled","run:failed","agent:stateChanged","task:moved","task:updated","task:created","task:deleted"],Ao=[{id:"triage",match:e=>e==="triage"||e==="signal"||e==="backlog"},{id:"todo",match:e=>e==="todo"||e==="to-do"||e==="to do"||e==="ready"},{id:"in-progress",match:e=>e==="in-progress"||e==="in progress"||e==="doing"},{id:"in-review",match:e=>e==="in-review"||e==="in review"||e==="review"},{id:"done",match:e=>e==="done"||e==="complete"||e==="completed"||e==="shipped"}];function t$(){const[e,t]=f.useState(null),[r,n]=f.useState(!0),[a,i]=f.useState(null),[o,l]=f.useState(!1),c=f.useRef(null),d=f.useRef(null),u=f.useRef(!1),m=f.useRef(!0),h=f.useCallback(()=>{d.current!==null&&(clearInterval(d.current),d.current=null,l(!1))},[]),v=f.useCallback(async()=>{if(!u.current){u.current=!0;try{const y=await _l("/command-center/live");if(!m.current)return;c.current=y,t(y),i(null)}catch(y){if(!m.current)return;i(y instanceof Error?y.message:"Failed to load live snapshot")}finally{if(u.current=!1,m.current){n(!1);const y=c.current;!!y&&(y.activeSessions>0||y.activeRuns>0)?d.current===null&&(d.current=setInterval(()=>{v()},JR),l(!0)):h()}}}},[h]);f.useEffect(()=>{m.current=!0,v();const y=Xx("/api/events",{events:Object.fromEntries(e$.map(p=>[p,()=>void v()])),onReconnect:()=>void v()});return()=>{m.current=!1,y(),h()}},[v,h]);const g=f.useCallback(()=>{v()},[v]);return{snapshot:e,isLoading:r,error:a!==null&&e===null?a:null,polling:o,reload:g}}function r$(e){const t=e.split(/[/\\]/).filter(Boolean);return t.length>0?t[t.length-1]:e}function n$(e,t){const r=Date.parse(t),n=new Map;for(const a of e){if(!a.worktreePath)continue;const i=n.get(a.worktreePath)??{count:0,freshestMs:0},o=Date.parse(a.updatedAt);n.set(a.worktreePath,{count:i.count+1,freshestMs:Number.isFinite(o)?Math.max(i.freshestMs,o):i.freshestMs})}return Array.from(n.entries()).map(([a,i])=>{const o=Number.isFinite(r)&&i.freshestMs>0?r-i.freshestMs:0;return{path:a,label:r$(a),sessionCount:i.count,inactive:o>QR}}).sort((a,i)=>i.sessionCount-a.sessionCount)}function a$(e,t){const r=new Map;for(const i of Ao)r.set(i.id,0);let n=0;for(const i of e){const o=i.column.trim().toLowerCase(),l=Ao.find(c=>c.match(o));l?r.set(l.id,(r.get(l.id)??0)+i.count):n+=i.count}const a=Ao.map(i=>({label:t(`commandCenter.missionControl.stage.${i.id}`,i.id),value:r.get(i.id)??0}));return n>0&&a.push({label:t("commandCenter.missionControl.stage.other","Other"),value:n}),a}function i$(){const{t:e}=le("app"),{snapshot:t,isLoading:r,error:n}=t$(),a=f.useMemo(()=>t?.sessions??[],[t?.sessions]),i=f.useMemo(()=>t?n$(t.sessions,t.capturedAt):[],[t]),o=f.useMemo(()=>t?a$(t.columns,e):[],[t,e]);if(r&&!t)return s.jsxs("div",{className:"cc-loading-inline","data-testid":"mission-control-loading",children:[s.jsx(El,{size:18,className:"spin"}),s.jsx("span",{children:e("commandCenter.missionControl.loading","Loading live activity…")})]});if(n!==null)return s.jsxs("div",{className:"cc-area-error","data-testid":"mission-control-error",role:"alert",children:[s.jsx(gi,{size:22}),s.jsx("p",{children:n})]});const l=(t?.activeSessions??0)>0||(t?.activeRuns??0)>0;return s.jsxs("div",{className:"cc-mission-control","data-testid":"mission-control",children:[s.jsxs("div",{className:"cc-stat-grid","data-testid":"mission-control-summary",children:[s.jsxs("div",{className:"card cc-stat-card","data-testid":"mission-control-active-sessions",children:[s.jsx("div",{className:"cc-stat-label",children:e("commandCenter.missionControl.activeSessions","Active sessions")}),s.jsx("div",{className:"cc-stat-value",children:t?.activeSessions??0})]}),s.jsxs("div",{className:"card cc-stat-card","data-testid":"mission-control-active-runs",children:[s.jsx("div",{className:"cc-stat-label",children:e("commandCenter.missionControl.activeRuns","Active runs")}),s.jsx("div",{className:"cc-stat-value",children:t?.activeRuns??0})]}),s.jsxs("div",{className:"card cc-stat-card","data-testid":"mission-control-active-nodes",children:[s.jsx("div",{className:"cc-stat-label",children:e("commandCenter.missionControl.activeNodes","Active nodes")}),s.jsx("div",{className:"cc-stat-value",children:t?.activeNodes??0})]})]}),l?null:s.jsxs("div",{className:"cc-area-empty","data-testid":"mission-control-idle",children:[s.jsx(Gx,{size:24}),s.jsx("p",{children:e("commandCenter.missionControl.idle","No active sessions. Live updates resume when work starts.")})]}),s.jsxs("div",{className:"cc-mc-columns",children:[s.jsxs("section",{className:"cc-mc-section","data-testid":"mission-control-sessions",children:[s.jsx("h3",{className:"cc-area-section-title",children:e("commandCenter.missionControl.sessionsTitle","Sessions")}),a.length===0?s.jsx("p",{className:"cc-mc-muted","data-testid":"mission-control-sessions-empty",children:e("commandCenter.missionControl.noSessions","No active sessions.")}):s.jsx("ul",{className:"cc-mc-list",children:a.map(c=>s.jsxs("li",{className:"cc-mc-session","data-testid":`mission-control-session-${c.id}`,children:[s.jsx("span",{className:"cc-mc-session-purpose",children:c.purpose||c.adapterId}),s.jsxs("span",{className:"cc-mc-session-meta",children:[s.jsx("span",{className:"cc-mc-badge",children:c.agentState}),c.taskId?s.jsx("span",{className:"cc-mc-task",children:c.taskId}):null]})]},c.id))})]}),s.jsxs("section",{className:"cc-mc-section","data-testid":"mission-control-nodes",children:[s.jsx("h3",{className:"cc-area-section-title",children:e("commandCenter.missionControl.nodesTitle","Nodes")}),i.length===0?s.jsx("p",{className:"cc-mc-muted","data-testid":"mission-control-nodes-empty",children:e("commandCenter.missionControl.noNodes","No active nodes.")}):s.jsx("ul",{className:"cc-mc-list",children:i.map(c=>s.jsxs("li",{className:`cc-mc-node${c.inactive?" inactive":""}`,"data-testid":`mission-control-node-${c.label}`,"data-inactive":c.inactive?"true":"false",children:[s.jsx("span",{className:"cc-mc-node-label",children:c.label}),s.jsxs("span",{className:"cc-mc-node-meta",children:[c.inactive?s.jsx("span",{className:"cc-mc-badge inactive",children:e("commandCenter.missionControl.inactive","inactive")}):null,s.jsx("span",{className:"cc-mc-node-count",children:e("commandCenter.missionControl.sessionCount","{{count}} session",{count:c.sessionCount})})]})]},c.path))})]})]}),s.jsxs("section",{className:"cc-mc-section","data-testid":"mission-control-funnel",children:[s.jsx("h3",{className:"cc-area-section-title",children:e("commandCenter.missionControl.funnelTitle","SDLC funnel (live)")}),s.jsx(bx,{stages:o,ariaLabel:e("commandCenter.missionControl.funnelTitle","SDLC funnel (live)")})]})]})}function Hv({className:e}){return s.jsxs("span",{className:`theme-option-swatch ${e}`,"aria-hidden":"true",children:[s.jsx("span",{className:"theme-option-swatch-sample theme-option-swatch-sample-1"}),s.jsx("span",{className:"theme-option-swatch-sample theme-option-swatch-sample-2"}),s.jsx("span",{className:"theme-option-swatch-sample theme-option-swatch-sample-3"}),s.jsx("span",{className:"theme-option-swatch-sample theme-option-swatch-sample-4"})]})}function s$({colorTheme:e,onColorThemeChange:t,themeMode:r,shadcnCustomColors:n={},resolvedThemeMode:a=r==="light"?"light":"dark",onThemeModeChange:i,onShadcnCustomColorsChange:o=()=>{}}){const{t:l}=le("app"),[c,d]=f.useState(!1),[u,m]=f.useState(()=>Math.max(0,Rt.findIndex(x=>x.value===e))),h=f.useRef(null),v=f.useRef([]),g=f.useMemo(()=>Rt.find(x=>x.value===e)??Rt[0],[e]),y="theme-dropdown-listbox";f.useEffect(()=>{if(!c)return;const x=C=>{h.current&&!h.current.contains(C.target)&&d(!1)};return document.addEventListener("pointerdown",x),()=>document.removeEventListener("pointerdown",x)},[c]),f.useEffect(()=>{m(Math.max(0,Rt.findIndex(x=>x.value===e)))},[e]),f.useEffect(()=>{c&&v.current[u]?.focus()},[u,c]);const p=x=>{t(x),d(!1)},b=x=>{if(x.key==="ArrowDown"||x.key==="ArrowUp"||x.key==="Enter"||x.key===" "){x.preventDefault();const C=Math.max(0,Rt.findIndex(w=>w.value===e));m(x.key==="ArrowUp"?Math.max(0,C-1):C),d(!0)}},j=(x,C,w)=>{if(x.key==="Escape"){x.preventDefault(),d(!1);return}if(x.key==="ArrowDown"||x.key==="ArrowUp"){x.preventDefault();const P=x.key==="ArrowDown"?1:-1;m((C+P+Rt.length)%Rt.length);return}if(x.key==="Home"){x.preventDefault(),m(0);return}if(x.key==="End"){x.preventDefault(),m(Rt.length-1);return}(x.key==="Enter"||x.key===" ")&&(x.preventDefault(),p(w))};return s.jsxs("div",{className:`theme-dropdown${c?" open":""}`,ref:h,children:[s.jsxs("button",{type:"button",className:"theme-dropdown-trigger btn","aria-haspopup":"listbox","aria-expanded":c,"aria-controls":y,onClick:()=>d(x=>!x),onKeyDown:b,children:[s.jsx(Hv,{className:g.className}),s.jsx("span",{className:"theme-dropdown-trigger-label",children:l(`theme.colorTheme.${g.value}`,g.label)}),s.jsx(xi,{size:16,"aria-hidden":"true"})]}),r&&i?s.jsx("div",{className:"theme-dropdown-modes",role:"radiogroup","aria-label":l("theme.modeLabel","Theme mode"),children:i0.map(({value:x,label:C,icon:w})=>s.jsxs("button",{type:"button",className:`theme-dropdown-mode-btn btn btn-sm${r===x?" active":""}`,"aria-pressed":r===x,onClick:()=>i(x),title:l(`theme.${x}Mode`,`${C} mode`),children:[s.jsx(w,{size:16,"aria-hidden":"true"}),s.jsx("span",{children:l(`theme.${x}`,C)})]},x))}):null,e==="shadcn-custom"?s.jsx(s0,{value:n,onChange:o,resolvedThemeMode:a}):null,c?s.jsx("div",{className:"theme-dropdown-popover",role:"presentation",children:s.jsx("div",{id:y,className:"theme-dropdown-list",role:"listbox","aria-label":l("theme.colorThemeLabel","Color theme"),children:Rt.map(({value:x,label:C,className:w},P)=>{const O=e===x;return s.jsxs("button",{ref:k=>{v.current[P]=k},type:"button",className:`theme-dropdown-option${O?" active":""}`,role:"option","aria-selected":O,tabIndex:P===u?0:-1,onClick:()=>p(x),onKeyDown:k=>j(k,P,x),children:[s.jsx(Hv,{className:w}),s.jsx("span",{className:"theme-dropdown-option-label",children:l(`theme.colorTheme.${x}`,C)}),O?s.jsx(Yx,{size:16,"aria-hidden":"true"}):null]},x)})})}):null]})}const Gv=500,yr={maxConcurrent:us.maxConcurrent,maxTriageConcurrent:us.maxTriageConcurrent,maxWorktrees:us.maxWorktrees},xr={maxConcurrent:{min:1,max:50},maxTriageConcurrent:{min:1,max:50},maxWorktrees:{min:1,max:50}},o$={maxConcurrent:{key:"commandCenter.controls.concurrency.maxConcurrent",defaultValue:"Max concurrent tasks"},maxTriageConcurrent:{key:"commandCenter.controls.concurrency.maxTriageConcurrent",defaultValue:"Max triage concurrent"},maxWorktrees:{key:"commandCenter.controls.concurrency.maxWorktrees",defaultValue:"Max worktrees"}};function Pl(e,t,r){return Math.min(r,Math.max(t,e))}function jn(e,t){return Math.max(xr[e].max,t)}function Xv(e,t){return t<=0?0:Pl(e/t,0,1)}function Yv(e){return{"--use-pct":`${e*100}%`,"--use-offset":`calc((var(--cc-controls-range-thumb-size) / 2) + ((100% - var(--cc-controls-range-thumb-size)) * ${e}))`}}function l$(e,t){return Object.keys(e).filter(r=>e[r]!==t[r])}function c$({paused:e,label:t}){return s.jsxs("span",{className:"cc-controls-status-pill",children:[s.jsx("span",{className:`status-dot ${e?"status-dot--pending":"status-dot--online"}`,"aria-hidden":"true"}),s.jsx("span",{children:t})]})}function u$({projectId:e,colorTheme:t,themeMode:r,shadcnCustomColors:n={},resolvedThemeMode:a=r==="light"?"light":"dark",onColorThemeChange:i,onThemeModeChange:o,onShadcnCustomColorsChange:l=()=>{},onChangeView:c}){const{t:d}=le("app"),{confirm:u}=th(),{globalPaused:m,toggleGlobalPause:h,refresh:v}=rh(e),[g,y]=f.useState({status:"loading",data:null,error:null}),[p,b]=f.useState(!1),[j,x]=f.useState("idle"),C=f.useRef(yr),w=f.useRef(null),P=f.useRef(!1),[O,k]=f.useState(null),[N,S]=f.useState(!1),A=f.useRef(!1),_=Zx();f.useEffect(()=>{let G=!1;return b(!1),x("idle"),y({status:"loading",data:null,error:null}),(async()=>{try{const[ie,se]=await Promise.all([Jx(e),nh(e)]);if(!G){const re={maxConcurrent:se.maxConcurrent??ie.maxConcurrent??yr.maxConcurrent,maxTriageConcurrent:se.maxTriageConcurrent??yr.maxTriageConcurrent,maxWorktrees:se.maxWorktrees??yr.maxWorktrees};C.current=re,w.current=null,P.current=!1,y({status:"loaded",data:re,error:null})}}catch(ie){G||y({status:"error",data:yr,error:ie instanceof Error?ie.message:d("commandCenter.controls.concurrency.error","Unable to load concurrency settings")})}})(),()=>{G=!0}},[e,d]),f.useEffect(()=>{if(!p||!g.data||P.current)return;const G=g.data,ie=setTimeout(()=>{const se=C.current,re=l$(G,se);if(re.length===0){b(!1),w.current=null;return}P.current=!0;const W=re.map(ne=>{const we=o$[ne];return d("commandCenter.controls.concurrency.confirmChangeSummaryItem","{{setting}} from {{oldValue}} to {{newValue}}",{setting:d(we.key,we.defaultValue),oldValue:se[ne],newValue:G[ne]})}),$=re.length===1?d("commandCenter.controls.concurrency.confirmMessage","Change {{setting}}?",{setting:W[0]}):d("commandCenter.controls.concurrency.confirmMultipleMessage","Change these concurrency settings: {{settings}}?",{settings:W.join("; ")});u({title:d("commandCenter.controls.concurrency.confirmTitle","Confirm concurrency change"),message:$,confirmLabel:d("commandCenter.controls.concurrency.confirmSave","Save change"),cancelLabel:d("commandCenter.controls.concurrency.confirmCancel","Cancel")}).then(ne=>{if(P.current=!1,!ne){y({status:"loaded",data:C.current,error:null}),b(!1),w.current=null,x("idle");return}x("saving"),ah(G,e).then(async()=>{await v(),C.current=G,b(!1),w.current=null,x("saved")}).catch(()=>{x("error")})})},Gv);return()=>clearTimeout(ie)},[u,p,g.data,e,v,d]);const I=(G,ie,se,re)=>{const W=Pl(Number(ie),se,re);w.current=G,y($=>({status:"loaded",data:{...$.data??yr,[G]:W},error:null})),b(!0),x("idle")},D=G=>{const ie=Pl(Number(G),_.min,_.sliderMax);k(ie),S(!0)};f.useEffect(()=>{if(!N||O===null||!_.interactive||A.current)return;const G=O,ie=_.value,se=setTimeout(()=>{if(G===ie){k(null),S(!1);return}A.current=!0,u({title:d("commandCenter.controls.concurrency.confirmTitle","Confirm concurrency change"),message:d("commandCenter.controls.concurrency.confirmMessage","Change {{setting}} from {{oldValue}} to {{newValue}}?",{setting:d("settings.scheduling.globalMaxConcurrent","Global Max Concurrent"),oldValue:ie,newValue:G}),confirmLabel:d("commandCenter.controls.concurrency.confirmSave","Save change"),cancelLabel:d("commandCenter.controls.concurrency.confirmCancel","Cancel")}).then(re=>{A.current=!1,re&&_.setValue(String(G)),k(null),S(!1)})},Gv);return()=>clearTimeout(se)},[u,_.interactive,_.setValue,_.value,N,O,d]);const F=m,V=g.data??yr,q=_.status==="loaded",te=_.projectActiveCount(e),U=O??_.value,ee=Math.max(_.sliderMax,U),L=jn("maxConcurrent",V.maxConcurrent),B=Xv(_.currentlyActive,ee),X=Xv(te,L),Q=_.status==="loading"||_.status==="idle"?d("commandCenter.controls.status.loading","Loading…"):_.status==="error"?d("commandCenter.controls.status.loadError","Load failed"):_.saveState==="saving"?d("commandCenter.controls.status.saving","Saving…"):_.saveState==="saved"?d("commandCenter.controls.status.saved","Saved"):_.saveState==="error"?d("commandCenter.controls.status.saveError","Save failed"):d("commandCenter.controls.status.ready","Ready");return s.jsx("section",{className:"cc-controls","data-testid":"command-center-controls","aria-label":d("commandCenter.controls.title","Operator controls"),children:s.jsxs("div",{className:"cc-controls-grid",children:[s.jsxs("section",{className:"card cc-controls-card","data-testid":"cc-controls-engine",children:[s.jsxs("div",{className:"cc-controls-card-header",children:[s.jsxs("div",{children:[s.jsx("h3",{children:d("commandCenter.controls.engine.title","AI engine")}),s.jsx("p",{children:d("commandCenter.controls.engine.description","Stopping the engine halts all AI work.")})]}),s.jsx(c$,{paused:F,label:F?d("commandCenter.controls.status.stopped","Stopped"):d("commandCenter.controls.status.running","Running")})]}),s.jsxs("button",{type:"button",className:"btn btn-secondary cc-controls-action",onClick:()=>void h(),children:[s.jsx(c0,{size:16,"aria-hidden":"true"}),s.jsx("span",{children:F?d("header.startAiEngine","Start AI Engine"):d("header.stopAiEngine","Stop AI Engine")})]}),c?s.jsxs("div",{className:"cc-overview-engine-nav","data-testid":"command-center-engine-panel",children:[s.jsx("button",{type:"button",className:"btn btn-secondary cc-overview-engine-nav-btn",onClick:()=>c("board"),children:d("commandCenter.controls.engine.viewBoard","View Board")}),s.jsx("button",{type:"button",className:"btn btn-secondary cc-overview-engine-nav-btn",onClick:()=>c("agents"),children:d("commandCenter.controls.engine.viewAgents","View Agents")})]}):null]}),s.jsxs("section",{className:"card cc-controls-card","data-testid":"cc-controls-theme",children:[s.jsx("div",{className:"cc-controls-card-header",children:s.jsxs("div",{children:[s.jsx("h3",{children:d("commandCenter.controls.theme.title","Theme")}),s.jsx("p",{children:d("commandCenter.controls.theme.description","Switch the dashboard theme with live color previews.")})]})}),s.jsx(s$,{colorTheme:t,themeMode:r,shadcnCustomColors:n,resolvedThemeMode:a,onColorThemeChange:i,onThemeModeChange:o,onShadcnCustomColorsChange:l})]}),s.jsxs("section",{className:"card cc-controls-card cc-controls-card--concurrency","data-testid":"cc-controls-concurrency",children:[s.jsxs("div",{className:"cc-controls-card-header",children:[s.jsxs("div",{children:[s.jsx("h3",{children:d("commandCenter.controls.concurrency.title","Concurrency")}),s.jsx("p",{children:d("commandCenter.controls.concurrency.description","Tune live scheduler capacity.")})]}),s.jsx("span",{className:`cc-controls-save-state cc-controls-save-state--${j}`,"aria-live":"polite",children:g.status==="loading"?d("commandCenter.controls.status.loading","Loading…"):j==="saving"?d("commandCenter.controls.status.saving","Saving…"):j==="saved"?d("commandCenter.controls.status.saved","Saved"):j==="error"?d("commandCenter.controls.status.saveError","Save failed"):d("commandCenter.controls.status.ready","Ready")})]}),s.jsxs("div",{className:"cc-controls-sliders",children:[s.jsxs("label",{className:"cc-controls-slider cc-controls-slider--global",htmlFor:"cc-global-max-concurrent",children:[s.jsxs("span",{className:"cc-controls-slider-label",children:[d("settings.scheduling.globalMaxConcurrent","Global Max Concurrent"),s.jsx("strong",{children:U})]}),s.jsx("small",{className:"cc-controls-slider-caption",children:d("settings.scheduling.maximumConcurrentAgentsAcrossAllProjects","Maximum concurrent agents across all projects")}),q?s.jsx("small",{className:"cc-controls-slider-caption","data-testid":"cc-global-running",children:d("commandCenter.controls.concurrency.runningGlobal","{{count}} running (all projects)",{count:_.currentlyActive})}):null,s.jsxs("span",{className:"cc-controls-range-wrap",children:[s.jsx("input",{id:"cc-global-max-concurrent",className:"cc-controls-touch-slider",type:"range",min:_.min,max:ee,value:U,disabled:!_.interactive,onChange:G=>D(G.target.value)}),q?s.jsx("span",{className:"status-dot status-dot--online cc-controls-use-marker",style:Yv(B),"data-testid":"cc-global-use-marker","aria-hidden":"true"}):null]}),s.jsx("span",{className:`cc-controls-save-state cc-controls-save-state--${_.saveState}`,"aria-live":"polite",children:Q}),_.status==="error"?s.jsx("small",{className:"cc-controls-error",role:"alert",children:d("commandCenter.controls.concurrency.error","Unable to load concurrency settings")}):null]}),s.jsxs("label",{className:"cc-controls-slider",htmlFor:"cc-max-concurrent",children:[s.jsxs("span",{className:"cc-controls-slider-label",children:[d("commandCenter.controls.concurrency.maxConcurrent","Max concurrent tasks"),s.jsx("strong",{children:V.maxConcurrent})]}),q?s.jsx("small",{className:"cc-controls-slider-caption","data-testid":"cc-project-running",children:d("commandCenter.controls.concurrency.runningProject","{{count}} running (this project)",{count:te})}):null,s.jsxs("span",{className:"cc-controls-range-wrap",children:[s.jsx("input",{id:"cc-max-concurrent",className:"cc-controls-touch-slider",type:"range",min:xr.maxConcurrent.min,max:L,value:V.maxConcurrent,disabled:g.status==="loading",onChange:G=>I("maxConcurrent",G.target.value,xr.maxConcurrent.min,L)}),q?s.jsx("span",{className:"status-dot status-dot--online cc-controls-use-marker",style:Yv(X),"data-testid":"cc-project-use-marker","aria-hidden":"true"}):null]})]}),s.jsxs("label",{className:"cc-controls-slider",htmlFor:"cc-max-triage-concurrent",children:[s.jsxs("span",{className:"cc-controls-slider-label",children:[d("commandCenter.controls.concurrency.maxTriageConcurrent","Max triage concurrent"),s.jsx("strong",{children:V.maxTriageConcurrent})]}),s.jsx("input",{id:"cc-max-triage-concurrent",className:"cc-controls-touch-slider",type:"range",min:xr.maxTriageConcurrent.min,max:jn("maxTriageConcurrent",V.maxTriageConcurrent),value:V.maxTriageConcurrent,disabled:g.status==="loading",onChange:G=>I("maxTriageConcurrent",G.target.value,xr.maxTriageConcurrent.min,jn("maxTriageConcurrent",V.maxTriageConcurrent))})]}),s.jsxs("label",{className:"cc-controls-slider",htmlFor:"cc-max-worktrees",children:[s.jsxs("span",{className:"cc-controls-slider-label",children:[d("commandCenter.controls.concurrency.maxWorktrees","Max worktrees"),s.jsx("strong",{children:V.maxWorktrees})]}),s.jsx("input",{id:"cc-max-worktrees",className:"cc-controls-touch-slider",type:"range",min:xr.maxWorktrees.min,max:jn("maxWorktrees",V.maxWorktrees),value:V.maxWorktrees,disabled:g.status==="loading",onChange:G=>I("maxWorktrees",G.target.value,xr.maxWorktrees.min,jn("maxWorktrees",V.maxWorktrees))})]})]}),g.status==="error"?s.jsx("p",{className:"cc-controls-error",role:"alert",children:g.error}):null]})]})})}function Zv(e){return`${(e*100).toFixed(1)}%`}function Jv(e){return e===null?"—":`${(e/6e4).toFixed(1)}m`}function ba(e){if(!e)return"—";const t=new Date(e);return Number.isNaN(t.getTime())?e:t.toLocaleString()}function d$(){const{t:e}=le("app"),[t,r]=f.useState(null),[n,a]=f.useState(!0),[i,o]=f.useState(null),[l,c]=f.useState(!1),[d,u]=f.useState(!1),[m,h]=f.useState(null),v=f.useCallback(async()=>{a(!0),o(null);try{const S=await fetch("/api/health/reliability");if(!S.ok)throw new Error(`Failed to load reliability metrics (${S.status})`);const A=await S.json();r(A)}catch(S){o(S instanceof Error?S.message:e("reliability.failedToLoad","Failed to load reliability metrics"))}finally{a(!1)}},[e]),g=f.useCallback(async()=>{h(null);const S=await fetch("/api/health/reliability/reset",{method:"POST"});if(!S.ok)throw new Error(`Failed to reset reliability metrics (${S.status})`);await v(),u(!1)},[v]);f.useEffect(()=>{v();const S=setInterval(()=>{v()},6e4);return()=>clearInterval(S)},[v]);const y=t?.headline.inReviewFailureRate7d,p=f.useMemo(()=>y==null?null:Math.max(0,Math.min(1,1-y)),[y]),b=f.useMemo(()=>p===null?"var(--text-muted)":p>=.95?"var(--color-success)":p>=.9?"var(--color-warning)":"var(--color-error)",[p]),j=f.useMemo(()=>(t?.perDay??[]).reduce((S,A)=>S+A.tasksEnteredInReview,0),[t?.perDay]),x=f.useMemo(()=>(t?.perDay??[]).reduce((S,A)=>S+A.tasksBouncedToInProgress,0),[t?.perDay]),C=f.useMemo(()=>t?.perDay?[...l?t.perDay:t.perDay.filter(A=>A.hasSamples!==!1)].sort((A,_)=>A.date.localeCompare(_.date)):[],[t?.perDay,l]),w=f.useMemo(()=>C.some(A=>A.tasksEnteredInReview>0||A.tasksBouncedToInProgress>0)?[{label:e("reliability.flowChart.entered","Entered"),values:C.map(A=>A.tasksEnteredInReview)},{label:e("reliability.flowChart.bounced","Bounced"),values:C.map(A=>A.tasksBouncedToInProgress)}]:[],[C,e]),P=f.useMemo(()=>Object.entries(t?.mergeAttempts.histogram??{}).sort(([S],[A])=>S.localeCompare(A,void 0,{numeric:!0})),[t?.mergeAttempts.histogram]),O=f.useMemo(()=>P.map(([S,A])=>({label:S,value:A})),[P]),k=f.useMemo(()=>P.reduce((S,[,A])=>S+A,0),[P]),N=t?ba(t.resetAt??new Date(Date.parse(t.generatedAt)-t.windowDays*864e5).toISOString()):"—";return n&&t===null?s.jsxs("div",{className:"reliability-loading","data-testid":"reliability-loading",children:[s.jsx(El,{size:24,className:"spin"}),s.jsx("p",{children:e("reliability.loading","Loading reliability data...")})]}):i!==null&&t===null?s.jsxs("div",{className:"reliability-error","data-testid":"reliability-error",role:"alert",children:[s.jsx(gi,{size:24}),s.jsx("p",{children:i})]}):s.jsxs("section",{className:"reliability-view",children:[s.jsxs("div",{className:"card reliability-card reliability-headline-card",children:[s.jsxs("div",{className:"reliability-section-header",children:[s.jsx("h2",{children:e("reliability.heading","Reliability")}),s.jsx("button",{className:"btn btn-danger btn-sm",onClick:()=>u(!0),children:e("reliability.resetStats","Reset stats")})]}),s.jsx("div",{className:"reliability-headline",style:{color:b},children:y==null?e("reliability.insufficientData","Insufficient data — {{reason}}",{reason:t?.headline.reason??"unknown"}):Zv(p??0)}),p!==null?s.jsx("div",{className:"reliability-muted",children:e("reliability.successRateLabel","In-review success rate (last 7d)")}):null,t?.resetAt?s.jsx("div",{className:"reliability-muted",children:e("reliability.countingSince","Counting since {{date}}",{date:ba(t.resetAt)})}):null,s.jsxs("details",{className:"reliability-details",children:[s.jsx("summary",{children:e("reliability.details","Details")}),s.jsxs("div",{className:"reliability-details-content",children:[s.jsx("div",{children:e("reliability.bouncedEntered","{{bounced}} bounced / {{entered}} entered (last {{days}}d)",{bounced:x,entered:j,days:t?.windowDays??7})}),y!=null?s.jsx("div",{children:e("reliability.failureRate","Failure rate: {{rate}}",{rate:Zv(y)})}):null,s.jsx("div",{children:e("reliability.window","Window: {{start}} → {{end}}",{start:N,end:ba(t?.generatedAt)})}),t?.resetAt?s.jsx("div",{children:e("reliability.resetBaseline","Reset baseline: {{date}}",{date:ba(t.resetAt)})}):null,t?.headline.reason?s.jsx("div",{children:e("reliability.reason","Reason: {{reason}}",{reason:t.headline.reason})}):null]})]})]}),s.jsxs("div",{className:"reliability-grid",children:[s.jsxs("div",{className:"card reliability-card",children:[s.jsxs("div",{className:"reliability-section-header",children:[s.jsx("h3",{children:e("reliability.inReviewFlow","In-review flow")}),s.jsx("button",{className:"btn btn-sm",onClick:()=>c(S=>!S),children:l?e("reliability.hideEmptyDays","Hide empty days"):e("reliability.showEmptyDays","Show empty days")})]}),s.jsxs("div",{className:"reliability-chart-section","data-testid":"reliability-flow-chart",children:[s.jsx("h4",{children:e("reliability.flowChart.heading","Entered vs bounced trend")}),s.jsx(cr,{series:w,ariaLabel:e("reliability.flowChart.aria","In-review entered vs bounced per day"),emptyLabel:e("reliability.flowChart.empty","No in-review flow data")})]}),s.jsxs("table",{className:"reliability-table",children:[s.jsx("thead",{children:s.jsxs("tr",{children:[s.jsx("th",{children:e("reliability.table.date","Date")}),s.jsx("th",{children:e("reliability.table.entered","Entered")}),s.jsx("th",{children:e("reliability.table.bounced","Bounced")})]})}),s.jsx("tbody",{children:C.map(S=>s.jsxs("tr",{children:[s.jsx("td",{children:S.date}),s.jsx("td",{children:S.tasksEnteredInReview}),s.jsx("td",{children:S.tasksBouncedToInProgress})]},S.date))})]})]}),s.jsxs("div",{className:"card reliability-card",children:[s.jsx("h3",{children:e("reliability.duration.heading","Duration")}),s.jsxs("div",{className:"reliability-stat-row",children:[s.jsx("span",{children:e("reliability.duration.p50","P50")}),s.jsx("strong",{children:Jv(t?.duration.p50Ms??null)})]}),s.jsxs("div",{className:"reliability-stat-row",children:[s.jsx("span",{children:e("reliability.duration.p95","P95")}),s.jsx("strong",{children:Jv(t?.duration.p95Ms??null)})]}),s.jsx("div",{className:"reliability-muted",children:e("reliability.duration.samples","Samples: {{count}}",{count:t?.duration.sampleCount??0})}),s.jsxs("details",{className:"reliability-details",children:[s.jsx("summary",{children:e("reliability.duration.moreStats","More stats")}),s.jsxs("div",{className:"reliability-details-content",children:[s.jsx("div",{children:e("reliability.duration.p50Raw","P50 raw: {{value}} ms",{value:t?.duration.p50Ms??"—"})}),s.jsx("div",{children:e("reliability.duration.p95Raw","P95 raw: {{value}} ms",{value:t?.duration.p95Ms??"—"})}),s.jsx("div",{children:e("reliability.duration.sampleCount","Sample count: {{count}}",{count:t?.duration.sampleCount??0})}),t?.duration.reason?s.jsx("div",{children:e("reliability.duration.reason","Reason: {{reason}}",{reason:t.duration.reason})}):null]})]})]}),s.jsxs("div",{className:"card reliability-card",children:[s.jsx("h3",{children:e("reliability.mergeAttempts.heading","Merge attempts")}),s.jsxs("div",{className:"reliability-stat-row",children:[s.jsx("span",{children:e("reliability.mergeAttempts.mean","Mean")}),s.jsx("strong",{children:t?.mergeAttempts.mean?.toFixed(2)??"—"})]}),s.jsxs("div",{className:"reliability-stat-row",children:[s.jsx("span",{children:e("reliability.mergeAttempts.max","Max")}),s.jsx("strong",{children:t?.mergeAttempts.max??"—"})]}),s.jsxs("div",{className:"reliability-chart-section","data-testid":"reliability-merge-attempts-chart",children:[s.jsx("h4",{children:e("reliability.mergeAttemptsChart.heading","Attempts distribution")}),s.jsx(St,{data:O,ariaLabel:e("reliability.mergeAttemptsChart.aria","Merge attempts histogram"),emptyLabel:e("reliability.mergeAttemptsChart.empty","No merge attempt data")})]}),s.jsx("ul",{className:"reliability-histogram",children:P.map(([S,A])=>s.jsxs("li",{children:[s.jsx("span",{children:S}),s.jsx("div",{className:"reliability-histogram-bar-wrap",children:s.jsx("div",{className:"reliability-histogram-bar",style:{width:`${Math.min(A*20,100)}%`}})}),s.jsx("strong",{children:A})]},S))}),s.jsxs("details",{className:"reliability-details",children:[s.jsx("summary",{children:e("reliability.mergeAttempts.moreStats","More stats")}),s.jsxs("div",{className:"reliability-details-content",children:[s.jsx("div",{children:e("reliability.mergeAttempts.tasksCounted","Tasks counted: {{count}}",{count:k})}),s.jsx("div",{children:e("reliability.mergeAttempts.histogramTotal","Histogram total: {{count}}",{count:k})}),t?.mergeAttempts.reason?s.jsx("div",{children:e("reliability.mergeAttempts.reason","Reason: {{reason}}",{reason:t.mergeAttempts.reason})}):null]})]})]})]}),d?s.jsx("div",{className:"modal-overlay open",role:"presentation",children:s.jsxs("div",{className:"modal",role:"dialog","aria-modal":"true","aria-labelledby":"reliability-reset-title",children:[s.jsx("div",{className:"modal-header",children:s.jsx("h2",{id:"reliability-reset-title",children:e("reliability.resetModal.title","Reset reliability stats?")})}),s.jsx("p",{children:e("reliability.resetModal.description","This sets a new baseline for reliability statistics. Historical events older than the reset time are excluded from counts but are not deleted.")}),m?s.jsx("div",{className:"form-error",children:m}):null,s.jsxs("div",{className:"modal-actions",children:[s.jsx("button",{className:"btn",onClick:()=>u(!1),children:e("common.cancel","Cancel")}),s.jsx("button",{className:"btn btn-danger",onClick:()=>{g().catch(S=>{h(S instanceof Error?S.message:e("reliability.resetModal.failedError","Failed to reset reliability stats"))})},children:e("reliability.resetModal.confirm","Confirm reset")})]})]})}):null]})}function Eo(e){const{lastSyncAt:t,remoteReachable:r,diff:n}=e,a=Object.values(n.workflowSettings).reduce((o,l)=>o+l.length,0),i=n.global.length+n.project.length+a;return t===null?{syncState:"never-synced",lastSyncAt:t,diffCount:0}:r?i>0?{syncState:"diff",lastSyncAt:t,diffCount:i}:{syncState:"synced",lastSyncAt:t,diffCount:0}:{syncState:"error",lastSyncAt:t,diffCount:i}}function Sl(e){if(e===null)return"Never synced";const t=new Date(e);if(Number.isNaN(t.getTime()))return"Never synced";const n=Date.now()-t.getTime(),a=Math.floor(n/1e3),i=Math.floor(a/60),o=Math.floor(i/60),l=Math.floor(o/24);return i<1?"Synced just now":i<60?`Synced ${i}m ago`:o<24?`Synced ${o}h ago`:`Synced ${l}d ago`}function f$(e){switch(e){case"synced":return"var(--color-success)";case"pending":return"var(--color-warning)";case"diff":return"var(--color-warning)";case"error":return"var(--color-error)";case"never-synced":return"var(--text-muted)"}}const m$=3e4;function v$(){const{t:e}=le("app"),[t,r]=f.useState({}),[n,a]=f.useState(!1),[i,o]=f.useState({}),[l,c]=f.useState(null),d=f.useRef(new Set),u=f.useRef(!1),m=f.useRef(null),h=f.useRef(null),v=f.useCallback(async(k,N)=>{try{const S=await Qx(k);r(A=>({...A,[k]:S})),c(null)}catch(S){console.error(`Failed to fetch sync status for node ${k}:`,S),c(S instanceof Error?S.message:e("nodeSync.error.failedToFetchStatus","Failed to fetch sync status"))}},[e]),g=f.useCallback(async()=>{const k=Array.from(d.current);if(k.length===0)return;m.current&&m.current.abort(),m.current=new AbortController;const N=!u.current;N&&a(!0),c(null);try{const S=await Promise.allSettled(k.map(_=>v(_,N)));u.current=!0,S.filter(_=>_.status==="rejected").length>0&&c(e("nodeSync.error.someRequestsFailed","Some sync status requests failed"))}catch(S){if(S instanceof Error&&S.name==="AbortError")return;c(S instanceof Error?S.message:e("nodeSync.error.failedToFetchStatus","Failed to fetch sync status")),u.current=!0}finally{a(!1)}},[v,e]),y=f.useCallback(()=>{h.current&&clearInterval(h.current),h.current=setInterval(()=>{g()},m$)},[g]),p=f.useCallback(()=>{h.current&&(clearInterval(h.current),h.current=null)},[]);f.useEffect(()=>(g(),y(),()=>{p(),m.current&&m.current.abort()}),[g,y,p]);const b=f.useCallback(k=>{d.current.has(k)||(d.current.add(k),v(k,!u.current))},[v]),j=f.useCallback(k=>{d.current.delete(k),r(N=>{const S={...N};return delete S[k],S}),d.current.size===0&&p()},[p]),x=f.useCallback(async k=>{o(N=>({...N,[k]:!0})),c(null);try{const N=await ej(k);return v(k,!1),!N.success&&N.error&&c(N.error),N}catch(N){const S=N instanceof Error?N.message:e("nodeSync.error.pushFailed","Push settings failed");throw c(S),N}finally{o(N=>{const S={...N};return delete S[k],S})}},[v,e]),C=f.useCallback(async k=>{o(N=>({...N,[k]:!0})),c(null);try{const N=await tj(k);return v(k,!1),!N.success&&N.error&&c(N.error),N}catch(N){const S=N instanceof Error?N.message:e("nodeSync.error.pullFailed","Pull settings failed");throw c(S),N}finally{o(N=>{const S={...N};return delete S[k],S})}},[v,e]),w=f.useCallback(async k=>{o(N=>({...N,[k]:!0})),c(null);try{return await rj(k)}catch(N){const S=N instanceof Error?N.message:e("nodeSync.error.authSyncFailed","Auth sync failed");throw c(S),N}finally{o(N=>{const S={...N};return delete S[k],S})}},[e]),P=f.useCallback(k=>t[k]?.authMatch,[t]),O=f.useCallback(k=>t[k]?.authDiff,[t]);return{syncStatusMap:t,loading:n,actionLoading:i,error:l,refresh:g,trackNode:b,untrackNode:j,pushSettings:x,pullSettings:C,syncAuth:w,getAuthSyncState:P,getAuthProviders:O}}const h$=1e4,p$=1e3;function y$(){const{t:e}=le("app"),[t,r]=f.useState([]),[n,a]=f.useState(!0),[i,o]=f.useState(null),l=f.useRef(null),c=f.useRef(0),d=f.useRef(t),u=sh();f.useEffect(()=>{d.current=t},[t]);const m=f.useCallback(v=>d.current.length>0&&oh(v,u.wasRecentlyHidden()),[u]),h=f.useCallback(async()=>{try{o(null);const v=await hu();r(v.nodes)}catch(v){const g=v instanceof Error?v.message:e("mesh.failedToFetchMeshState","Failed to fetch mesh state");m(g)||o(g)}},[m,e]);return f.useEffect(()=>{let v=!1;async function g(){a(!0);try{const p=await hu();v||(r(p.nodes),o(null))}catch(p){const b=p instanceof Error?p.message:e("mesh.failedToFetchMeshState","Failed to fetch mesh state");!v&&!m(b)&&o(b)}finally{v||a(!1)}}g();const y=()=>{if(document.visibilityState!=="visible")return;const p=Date.now(),b=p-c.current;if(b<p$){Aa({view:"useMeshState",trigger:"visibility",projectId:void 0,replayAttempted:!1,reason:"debounce-skipped",detail:{timeSinceLastRefreshMs:b}});return}c.current=p,Aa({view:"useMeshState",trigger:"visibility",projectId:void 0,replayAttempted:!1,reason:"debounced-refresh"}),h()};return document.addEventListener("visibilitychange",y),()=>{v=!0,document.removeEventListener("visibilitychange",y)}},[h,m,e]),f.useEffect(()=>{if(!n)return l.current=setInterval(()=>{h()},h$),()=>{l.current&&(clearInterval(l.current),l.current=null)}},[n,h]),{meshState:t,loading:n,error:i,refresh:h}}function g$(e){return{online:{label:e("nodes.status.online","Online"),color:"var(--color-success)",className:"node-card__status--online"},offline:{label:e("nodes.status.offline","Offline"),color:"var(--color-error)",className:"node-card__status--offline"},connecting:{label:e("nodes.status.connecting","Connecting"),color:"var(--color-warning)",className:"node-card__status--connecting"},error:{label:e("nodes.status.error","Error"),color:"var(--color-error)",className:"node-card__status--error"},creating:{label:e("nodes.status.creating","Creating"),color:"var(--color-warning)",className:"node-card__status--creating"},recreating:{label:e("nodes.status.recreating","Recreating"),color:"var(--color-warning)",className:"node-card__status--recreating"},deleting:{label:e("nodes.status.deleting","Deleting"),color:"var(--color-error)",className:"node-card__status--deleting"},running:{label:e("nodes.status.running","Running"),color:"var(--color-success)",className:"node-card__status--online"},stopped:{label:e("nodes.status.stopped","Stopped"),color:"var(--color-error)",className:"node-card__status--offline"},exited:{label:e("nodes.status.exited","Exited"),color:"var(--color-error)",className:"node-card__status--offline"}}}const b$={match:"var(--color-success)",differs:"var(--color-warning)","not-synced":"var(--text-muted)"};function x$(e,t,r){if(e==="match")return r?r("nodes.auth.match","Auth credentials match"):"Auth credentials match";if(e==="not-synced")return r?r("nodes.auth.notSynced","Auth not synced"):"Auth not synced";if(t&&Object.keys(t).length>0){const n=Object.entries(t).filter(([,a])=>a==="differs").map(([a])=>a);if(n.length>0)return r?r("nodes.auth.differProviders","Auth credentials differ: {{providers}}",{providers:n.join(", ")}):`Auth credentials differ: ${n.join(", ")}`}return r?r("nodes.auth.differ","Auth credentials differ"):"Auth credentials differ"}function j$(e,t=42){return e.length<=t?e:`${e.slice(0,t-3)}...`}function w$(e,t){const r=e.node,n=t.node;if(r.id!==n.id||r.name!==n.name||r.type!==n.type||r.url!==n.url||r.status!==n.status||r.maxConcurrent!==n.maxConcurrent||r.updatedAt!==n.updatedAt||e.isLoading!==t.isLoading)return!1;const a=e.managedDockerNode,i=t.managedDockerNode;if(!!a!=!!i||a&&i&&(a.id!==i.id||a.status!==i.status||a.imageTag!==i.imageTag||a.updatedAt!==i.updatedAt))return!1;const o=e.syncStatus,l=t.syncStatus;if(!(!o&&!l)){if(!o||!l)return!1;if(o.syncState!==l.syncState||o.lastSyncAt!==l.lastSyncAt||o.diffCount!==l.diffCount)return!1}if(e.authSyncState!==t.authSyncState)return!1;const c=e.authSyncProviders,d=t.authSyncProviders;if(c!==d){if(!c||!d)return!1;{const h=Object.keys(c),v=Object.keys(d);if(h.length!==v.length||h.some(g=>c[g]!==d[g]))return!1}}const u=To(e.projects,r),m=To(t.projects,n);return u===m}function C$({node:e,projects:t,onHealthCheck:r,onEdit:n,onRemove:a,isLoading:i=!1,syncStatus:o,authSyncState:l,authSyncProviders:c,managedDockerNode:d}){const{t:u}=le("app"),[m,h]=f.useState(!1),v=g$(u),g=v[e.status]??v.offline,y=d?v[d.status]??v.error:null,p=d?.hostConfig.type==="remote"?u("nodes.dockerHost.remote","Remote: {{host}}",{host:d.hostConfig.host??"unknown"}):u("nodes.dockerHost.local","Local Docker"),b=f.useMemo(()=>To(t,e),[t,e]),j=f.useCallback(()=>{n(e)},[n,e]),x=f.useCallback(O=>{O.stopPropagation(),r(e.id)},[r,e.id]),C=f.useCallback(O=>{O.stopPropagation(),n(e)},[n,e]),w=f.useCallback(O=>{if(O.stopPropagation(),!m){h(!0);return}a(e.id),h(!1)},[m,a,e.id]),P=f.useCallback(O=>{(O.key==="Enter"||O.key===" ")&&(O.preventDefault(),n(e))},[n,e]);return s.jsxs("article",{className:`node-card ${i?"node-card--loading":""}`,"data-node-id":e.id,role:"button",tabIndex:0,onClick:j,onKeyDown:P,children:[s.jsx("header",{className:"node-card__header",children:s.jsxs("div",{className:"node-card__title-wrap",children:[s.jsx("div",{className:"node-card__icon",children:s.jsx(lh,{size:18})}),s.jsxs("div",{children:[s.jsx("h3",{className:"node-card__name",title:e.name,children:e.name}),s.jsxs("div",{className:"node-card__meta-row",children:[s.jsx("span",{className:"node-card__type-badge",children:e.type==="local"?u("nodes.type.local","Local"):u("nodes.type.remote","Remote")}),d&&s.jsxs("span",{className:"node-card__docker-badge",title:u("nodes.dockerBadge","Managed Docker node"),children:[s.jsx(Io,{size:12,"aria-hidden":!0}),u("nodes.dockerLabel","Docker")]}),s.jsxs("span",{className:`node-card__status ${g.className}`,style:{color:g.color},"data-status":e.status,children:[s.jsx("span",{className:"node-card__status-indicator",style:{backgroundColor:g.color},"aria-hidden":!0}),g.label]}),d&&y&&s.jsxs("span",{className:`node-card__status ${y.className}`,style:{color:y.color},"data-status":d.status,children:[s.jsx("span",{className:"node-card__status-indicator",style:{backgroundColor:y.color},"aria-hidden":!0}),y.label]}),e.type==="remote"&&l&&s.jsx("span",{className:`node-card__auth-indicator node-card__auth-indicator--${l}`,title:x$(l,c,u),"aria-label":u("nodes.authSync.label","Auth sync: {{status}}",{status:l==="match"?u("nodes.authSync.match","credentials match"):l==="differs"?u("nodes.authSync.differ","credentials differ"):u("nodes.authSync.notSynced","not synced")}),style:{color:b$[l]},children:s.jsx(ch,{size:14})})]})]})]})}),s.jsxs("div",{className:"node-card__body",children:[e.type==="remote"&&e.url&&s.jsx("div",{className:"node-card__url",title:e.url,children:j$(e.url)}),d&&s.jsxs("div",{className:"node-card__docker-meta",children:[s.jsxs("span",{title:`${d.imageName}:${d.imageTag}`,children:[d.imageName,":",d.imageTag]}),s.jsx("span",{title:p,children:p})]}),s.jsxs("div",{className:"node-card__metrics",children:[s.jsxs("div",{className:"node-card__metric",children:[s.jsx("span",{className:"node-card__metric-label",children:u("nodes.metrics.projects","Projects")}),s.jsx("span",{className:"node-card__metric-value",children:b})]}),s.jsxs("div",{className:"node-card__metric",children:[s.jsx("span",{className:"node-card__metric-label",children:u("nodes.metrics.concurrency","Concurrency")}),s.jsx("span",{className:"node-card__metric-value",children:e.maxConcurrent})]})]}),e.type==="remote"&&o&&s.jsxs("div",{className:"node-card__sync","data-sync-state":o.syncState,"data-testid":"node-card-sync",children:[s.jsx("span",{className:"node-card__sync-dot",style:{backgroundColor:f$(o.syncState)},"aria-hidden":!0}),s.jsx("span",{className:"node-card__sync-time",children:Sl(o.lastSyncAt)})]})]}),s.jsxs("footer",{className:"node-card__actions",children:[s.jsxs("button",{className:"btn btn-sm node-card__action",type:"button",onClick:x,disabled:i,"aria-label":u("nodes.actions.health.ariaLabel","Run node health check"),title:u("nodes.actions.health.title","Health Check"),children:[s.jsx(uh,{size:14}),s.jsx("span",{children:u("nodes.actions.health.label","Health")})]}),s.jsxs("button",{className:"btn btn-sm node-card__action",type:"button",onClick:C,disabled:i,"aria-label":u("nodes.actions.edit.ariaLabel","Edit node"),title:u("nodes.actions.edit.title","Edit"),children:[s.jsx(nj,{size:14}),s.jsx("span",{children:u("nodes.actions.edit.label","Edit")})]}),d&&s.jsxs(s.Fragment,{children:[s.jsxs("button",{className:"btn btn-sm node-card__action",type:"button",disabled:!0,"aria-label":u("nodes.actions.start.ariaLabel","Start node container"),title:u("nodes.actions.start.title","Available after FN-3113"),children:[s.jsx(Il,{size:14}),s.jsx("span",{children:u("nodes.actions.start.label","Start")})]}),s.jsxs("button",{className:"btn btn-sm node-card__action",type:"button",disabled:!0,"aria-label":u("nodes.actions.stop.ariaLabel","Stop node container"),title:u("nodes.actions.stop.title","Available after FN-3113"),children:[s.jsx(dh,{size:14}),s.jsx("span",{children:u("nodes.actions.stop.label","Stop")})]}),s.jsxs("button",{className:"btn btn-sm node-card__action",type:"button",disabled:!0,"aria-label":u("nodes.actions.restart.ariaLabel","Restart node container"),title:u("nodes.actions.restart.title","Available after FN-3113"),children:[s.jsx(aj,{size:14}),s.jsx("span",{children:u("nodes.actions.restart.label","Restart")})]})]}),s.jsxs("button",{className:`btn btn-sm node-card__action node-card__action--remove ${m?"btn-danger is-armed":""}`,type:"button",onClick:w,disabled:i,"aria-label":m?u("nodes.actions.remove.ariaLabelConfirm","Confirm remove node"):u("nodes.actions.remove.ariaLabel","Remove node"),title:m?u("nodes.actions.remove.titleConfirm","Confirm remove"):u("nodes.actions.remove.title","Remove"),children:[s.jsx(Do,{size:14}),s.jsx("span",{children:m?u("nodes.actions.remove.labelConfirm","Confirm"):u("nodes.actions.remove.label","Remove")})]})]})]})}const k$=f.memo(C$,w$),wn={online:"var(--success, var(--color-success))",offline:"var(--text-dim)",connecting:"var(--color-warning)",error:"var(--color-error)"},xa=28,P$=12,S$=300,N$=120;function O$({nodes:e,className:t}){const{t:r}=le("app"),n=f.useMemo(()=>e.find(u=>u.nodeType==="local")??e[0],[e]),a=f.useMemo(()=>e.filter(u=>u.nodeId!==n?.nodeId),[e,n?.nodeId]),i=f.useMemo(()=>S$+Math.max(0,a.length-4)*20,[a.length]),o=i/2,l=i/2,c=f.useMemo(()=>{const u=new Map;if(n&&u.set(n.nodeId,{x:o,y:l,node:n}),a.length>0){const m=Math.min(N$,i/2-xa-10),h=2*Math.PI/a.length,v=-Math.PI/2;a.forEach((g,y)=>{const p=v+y*h;u.set(g.nodeId,{node:g,x:o+m*Math.cos(p),y:l+m*Math.sin(p)})})}return u},[o,l,n,a,i]),d=f.useMemo(()=>{const u=new Set,m=[];for(const h of e){const v=c.get(h.nodeId);if(v)for(const g of h.knownPeers){const y=c.get(g.peerNodeId);if(!y)continue;const p=[h.nodeId,g.peerNodeId].sort().join("::");u.has(p)||(u.add(p),m.push({key:p,from:v,to:y}))}}return m},[c,e]);return e.length===0?s.jsx("div",{className:`mesh-topology mesh-topology--empty ${t??""}`,children:s.jsx("div",{className:"mesh-topology__empty-state",children:s.jsx("p",{children:r("mesh.noNodes","No nodes to display")})})}):s.jsxs("div",{className:`mesh-topology ${t??""}`,children:[s.jsxs("svg",{className:"mesh-topology__svg",viewBox:`0 0 ${i} ${i}`,preserveAspectRatio:"xMidYMid meet","aria-label":r("mesh.ariaLabel","Node mesh topology visualization"),children:[d.map(u=>s.jsx("line",{className:"mesh-topology__link mesh-topology__peer-line",x1:u.from.x,y1:u.from.y,x2:u.to.x,y2:u.to.y},u.key)),Array.from(c.values()).map(({node:u,x:m,y:h})=>s.jsxs("g",{className:"mesh-topology__node",transform:`translate(${m}, ${h})`,children:[s.jsx("circle",{className:"mesh-topology__node-circle",r:xa,fill:wn[u.status],"aria-label":`${u.nodeName} (${u.status})`}),s.jsx("text",{className:"mesh-topology__node-label",y:xa+P$,textAnchor:"middle",children:u.nodeName.length>12?`${u.nodeName.slice(0,10)}…`:u.nodeName}),s.jsxs("g",{className:"mesh-topology__node-type",transform:`translate(0 ${-xa-10})`,children:[s.jsx("circle",{className:"mesh-topology__node-type-badge",r:"8"}),s.jsx("text",{className:"mesh-topology__node-type-text",textAnchor:"middle",dominantBaseline:"middle",children:u.nodeType==="local"?"L":"R"})]})]},u.nodeId))]}),s.jsxs("div",{className:"mesh-topology__legend",children:[s.jsxs("div",{className:"mesh-topology__legend-item",children:[s.jsx("span",{className:"mesh-topology__legend-dot",style:{background:wn.online}}),s.jsx("span",{children:r("mesh.online","Online")})]}),s.jsxs("div",{className:"mesh-topology__legend-item",children:[s.jsx("span",{className:"mesh-topology__legend-dot",style:{background:wn.offline}}),s.jsx("span",{children:r("mesh.offline","Offline")})]}),s.jsxs("div",{className:"mesh-topology__legend-item",children:[s.jsx("span",{className:"mesh-topology__legend-dot",style:{background:wn.connecting}}),s.jsx("span",{children:r("mesh.connecting","Connecting")})]}),s.jsxs("div",{className:"mesh-topology__legend-item",children:[s.jsx("span",{className:"mesh-topology__legend-dot",style:{background:wn.error}}),s.jsx("span",{children:r("mesh.error","Error")})]})]}),d.length===0&&s.jsx("p",{className:"mesh-topology__notice",children:r("mesh.noPeers","Peer-to-peer discovery data unavailable.")})]})}const A$=f.memo(O$),Nl=1,Ol=10;function E$(e,t){const r={projectMappings:{}};e.name.trim()||(r.name=t("nodes.nameRequired","Name is required")),e.type==="remote"&&!e.url?.trim()&&(r.url=t("nodes.urlRequired","URL is required for remote nodes")),(!Number.isFinite(e.maxConcurrent)||e.maxConcurrent<Nl||e.maxConcurrent>Ol)&&(r.maxConcurrent=t("nodes.concurrencyRange","Concurrency must be between {{min}} and {{max}}",{min:Nl,max:Ol}));for(const n of e.projectMappings){const a=o0(n.path);a.valid||(r.projectMappings[n.projectId]=a.error??t("nodes.pathInvalid","Path is invalid"))}return r}function _$({isOpen:e,onClose:t,onSubmit:r,onDiscoverRemoteProjects:n,addToast:a,projects:i}){const{t:o}=le("app");ij(e);const[l,c]=f.useState(""),[d,u]=f.useState("local"),[m,h]=f.useState(""),[v,g]=f.useState(""),[y,p]=f.useState(2),[b,j]=f.useState("auto-generate"),[x,C]=f.useState({}),[w,P]=f.useState({projectMappings:{}}),[O,k]=f.useState(!1),[N,S]=f.useState("idle"),[A,_]=f.useState(null),[I,D]=f.useState([]),F=f.useCallback(()=>{c(""),u("local"),h(""),g(""),p(2),j("auto-generate"),C({}),P({projectMappings:{}}),k(!1),S("idle"),_(null),D([])},[]),V=f.useCallback(()=>{O||(F(),t())},[O,t,F]);f.useEffect(()=>{if(!e){F();return}const B=X=>{X.key==="Escape"&&(X.preventDefault(),V())};return document.addEventListener("keydown",B),()=>{document.removeEventListener("keydown",B)}},[V,e,F]);const q=f.useMemo(()=>({name:l.trim(),type:d,url:d==="remote"&&m.trim()||void 0,apiKey:d==="remote"&&b==="provide"&&v||void 0,maxConcurrent:y,apiKeyMode:b,projectMappings:Object.entries(x).map(([B,X])=>({projectId:B,path:X.trim()}))}),[v,b,y,l,x,d,m]),te=f.useCallback(async()=>{if(O||N==="loading")return;const B=m.trim();if(!B){P(X=>({...X,url:o("nodes.urlRequired","URL is required for remote nodes")}));return}S("loading"),_(null);try{const X=await n({url:B,apiKey:b==="provide"&&v.trim().length>0?v:void 0});D(X.projects),S("success"),C(Q=>{if(Object.keys(Q).length===0)return Q;const G={...Q};for(const ie of i){if(!(ie.id in G))continue;const se=X.projects.filter(re=>re.name===ie.name);se.length===1&&(G[ie.id]=se[0].path)}return G})}catch(X){S("error"),D([]),_(X instanceof Error?X.message:o("nodes.discoveryFailed","Failed to discover remote projects"))}},[v,b,N,O,n,i,o,m]);f.useEffect(()=>{if(d!=="remote"){S("idle"),_(null),D([]);return}S("idle"),_(null),D([])},[v,b,d,m]);const U=f.useCallback(async()=>{if(O)return;const B=E$(q,o);if(P(B),!(B.name||B.url||B.maxConcurrent||Object.keys(B.projectMappings).length>0)){if(q.type==="remote"&&N!=="success"){_(o("nodes.discoverBeforeAdding","Discover remote projects before adding this node."));return}k(!0);try{await r(q),a(o("nodes.registered",'Node "{{name}}" registered',{name:q.name}),"success"),V()}catch(X){const Q=X instanceof Error?X.message:o("nodes.registerFailed","Failed to register node");a(Q,"error")}finally{k(!1)}}},[a,V,N,q,O,r,o]),ee=B=>{C(X=>{if(B.id in X){const{[B.id]:Q,...G}=X;return G}if(d==="remote"&&N==="success"){const Q=I.filter(G=>G.name===B.name);return Q.length===1?{...X,[B.id]:Q[0].path}:{...X,[B.id]:""}}return{...X,[B.id]:B.path}})},L=(B,X)=>{C(Q=>({...Q,[B]:X}))};return e?s.jsx("div",{className:"modal-overlay open",onClick:V,children:s.jsxs("div",{className:"modal modal-md add-node-modal",onClick:B=>B.stopPropagation(),role:"dialog","aria-modal":"true","aria-label":o("nodes.addNode","Add Node"),children:[s.jsxs("div",{className:"modal-header",children:[s.jsx("h3",{children:o("nodes.addNode","Add Node")}),s.jsx("button",{className:"modal-close",onClick:V,disabled:O,"aria-label":o("nodes.closeNodeModal","Close add node modal"),children:"×"})]}),s.jsxs("div",{className:"modal-body add-node-modal__body",children:[s.jsx("p",{className:"add-node-modal__description",children:o("nodes.description","Register an existing Fusion node by providing its connection details and concurrency settings.")}),s.jsxs("label",{className:"add-node-modal__field",children:[s.jsx("span",{children:o("nodes.name","Name")}),s.jsx("input",{className:"input",type:"text",value:l,onChange:B=>c(B.target.value),placeholder:o("nodes.namePlaceholder","Build Machine"),disabled:O,"aria-invalid":!!w.name,autoFocus:!0}),w.name&&s.jsx("span",{className:"form-error add-node-modal__error",children:w.name})]}),s.jsxs("div",{className:"add-node-modal__type-toggle",children:[s.jsx("button",{type:"button",className:`add-node-modal__type-btn ${d==="local"?"active":""}`,"data-type":"local",onClick:()=>u("local"),disabled:O,"aria-pressed":d==="local",children:o("nodes.local","Local")}),s.jsx("button",{type:"button",className:`add-node-modal__type-btn ${d==="remote"?"active":""}`,"data-type":"remote",onClick:()=>u("remote"),disabled:O,"aria-pressed":d==="remote",children:o("nodes.remote","Remote")})]}),d==="remote"&&s.jsxs("div",{className:"add-node-modal__remote-fields","data-testid":"remote-fields-container","data-visible":!0,children:[s.jsxs("label",{className:"add-node-modal__field",children:[s.jsx("span",{children:o("nodes.reachableUrl","Reachable URL / Hostname")}),s.jsx("input",{className:"input",type:"text",value:m,onChange:B=>h(B.target.value),placeholder:"https://node.example.com",disabled:O,"aria-invalid":!!w.url}),w.url&&s.jsx("span",{className:"form-error add-node-modal__error",children:w.url})]}),s.jsxs("label",{className:"add-node-modal__field",children:[s.jsx("span",{children:o("nodes.apiKeyMode","API Key Mode")}),s.jsxs("select",{className:"select",value:b,onChange:B=>j(B.target.value),disabled:O,children:[s.jsx("option",{value:"auto-generate",children:o("nodes.autoGenerate","Auto-generate")}),s.jsx("option",{value:"provide",children:o("nodes.provideManually","Provide key manually")})]})]}),b==="provide"&&s.jsxs("label",{className:"add-node-modal__field",children:[s.jsx("span",{children:o("nodes.apiKey","API Key")}),s.jsx("input",{className:"input",type:"password",value:v,onChange:B=>g(B.target.value),placeholder:o("nodes.apiKeyPlaceholder","Enter node API key"),disabled:O})]}),s.jsxs("div",{className:"add-node-modal__discovery-actions",children:[s.jsx("button",{type:"button",className:"btn btn-sm",onClick:()=>void te(),disabled:O||N==="loading",children:N==="loading"?o("nodes.discovering","Discovering..."):o("nodes.discoverRemoteProjects","Discover Remote Projects")}),N==="success"&&s.jsx("span",{className:"add-node-modal__discovery-state","data-state":"success",children:I.length>0?o("nodes.discoveredCount","Discovered {{count}} remote project{{plural}}",{count:I.length,plural:I.length===1?"":"s"}):o("nodes.noProjectsDiscovered","No projects discovered on remote node.")}),N==="error"&&A&&s.jsx("span",{className:"form-error add-node-modal__error",children:A}),N==="idle"&&s.jsx("span",{className:"add-node-modal__hint",children:o("nodes.discoverBeforeAdding","Discover remote projects before adding this node.")})]}),N==="success"&&I.length>0&&s.jsx("div",{className:"add-node-modal__discovered-list","aria-label":o("nodes.discoveredRemoteProjectsLabel","Discovered remote projects"),children:I.map(B=>s.jsxs("div",{className:"card add-node-modal__discovered-card",children:[s.jsxs("div",{className:"add-node-modal__discovered-row",children:[s.jsx("strong",{children:B.name}),s.jsx("span",{className:"card-status-badge card-status-badge--in-review",children:B.status})]}),s.jsx("div",{className:"add-node-modal__hint",children:B.path})]},`${B.id}-${B.path}`))})]}),s.jsxs("label",{className:"add-node-modal__field",children:[s.jsx("span",{children:o("nodes.maxConcurrent","Max Concurrent")}),s.jsx("input",{className:"input",type:"number",min:Nl,max:Ol,value:y,onChange:B=>p(Number(B.target.value)),disabled:O,"aria-invalid":!!w.maxConcurrent}),s.jsx("span",{className:"add-node-modal__hint",children:o("nodes.maxConcurrentHint","Max simultaneous task agents (1–10)")}),w.maxConcurrent&&s.jsx("span",{className:"form-error add-node-modal__error",children:w.maxConcurrent})]}),s.jsxs("section",{className:"add-node-modal__projects","aria-label":o("nodes.projectPathMappingsLabel","Project path mappings"),children:[s.jsx("h4",{className:"add-node-modal__projects-title",children:o("nodes.attachProjects","Attach Existing Projects")}),s.jsx("p",{className:"add-node-modal__hint",children:o("nodes.attachProjectsHint","Select existing projects to run on this node and provide the node-specific absolute path for each one.")}),i.length===0?s.jsx("p",{className:"add-node-modal__hint",children:o("nodes.noProjects","No projects are currently registered.")}):s.jsx("div",{className:"add-node-modal__project-list",children:i.map(B=>{const X=B.id in x,Q=w.projectMappings[B.id];return s.jsxs("div",{className:"card add-node-modal__project-card",children:[s.jsxs("label",{className:"checkbox-label add-node-modal__project-toggle",children:[s.jsx("input",{type:"checkbox",checked:X,onChange:()=>ee(B),disabled:O}),s.jsx("span",{children:B.name})]}),X&&s.jsxs("label",{className:"add-node-modal__field",children:[s.jsx("span",{children:o("nodes.pathOnNode","Path on this node")}),d==="remote"&&N==="success"&&s.jsx("span",{className:"add-node-modal__hint",children:(()=>{const G=I.filter(ie=>ie.name===B.name);return G.length===1?o("nodes.pathDiscovered","Remote-authoritative path discovered: {{path}}",{path:G[0].path}):G.length>1?o("nodes.multipleMatches","Multiple remote projects matched this name. Enter the correct path manually."):o("nodes.noMatch","No exact remote name match. Enter this path manually.")})()}),s.jsx("input",{className:"input",type:"text",value:x[B.id]??"",onChange:G=>L(B.id,G.target.value),disabled:O,placeholder:"/absolute/path/to/project","aria-invalid":!!Q}),Q&&s.jsx("span",{className:"form-error add-node-modal__error",children:Q})]})]},B.id)})})]})]}),s.jsxs("div",{className:"modal-actions",children:[s.jsx("button",{className:"btn btn-sm",onClick:V,disabled:O,children:o("common.cancel","Cancel")}),s.jsx("button",{className:"btn btn-primary btn-sm","data-testid":"add-node-submit",onClick:U,disabled:O,children:O?o("nodes.adding","Adding..."):o("nodes.addNode","Add Node")})]})]})}):null}function M$(){const[e,t]=f.useState([]),[r,n]=f.useState(!1),[a,i]=f.useState(null),[o,l]=f.useState(!1),[c,d]=f.useState(null),[u,m]=f.useState(!1),h=f.useCallback(async()=>{n(!0),i(null);try{const y=await fetch("/api/docker/contexts");if(!y.ok)throw new Error(`Failed to load Docker contexts (${y.status})`);const p=await y.json();return t(p),p}catch(y){const p=y instanceof Error?y.message:String(y);throw i(p),y}finally{n(!1)}},[]),v=f.useCallback(async y=>{l(!0);try{const p=await fetch("/api/docker/test-connection",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({hostConfig:y})});if(!p.ok)throw new Error(`Failed to test Docker connection (${p.status})`);const b=await p.json();return d(b),b}finally{l(!1)}},[]),g=f.useCallback(async()=>{m(!0);try{const y=await fetch("/api/docker/local-available");if(!y.ok)throw new Error(`Failed to check local Docker availability (${y.status})`);return await y.json()}finally{m(!1)}},[]);return{contexts:e,isLoadingContexts:r,contextsError:a,loadContexts:h,isTestingConnection:o,lastTestResult:c,testConnection:v,isCheckingLocal:u,checkLocalDocker:g}}function T$({value:e,onChange:t}){const{t:r}=le("app"),[n,a]=f.useState(!!(e?.tlsCaPath||e?.tlsCertPath||e?.tlsKeyPath||e?.tlsVerify));f.useEffect(()=>{n||t({tlsVerify:void 0,tlsCaPath:void 0,tlsCertPath:void 0,tlsKeyPath:void 0})},[n,t]);const i=f.useMemo(()=>({tlsVerify:e?.tlsVerify??!0,tlsCaPath:e?.tlsCaPath??"",tlsCertPath:e?.tlsCertPath??"",tlsKeyPath:e?.tlsKeyPath??""}),[e]);return s.jsxs("div",{className:"docker-tls-config",children:[s.jsxs("label",{className:"checkbox-label",children:[s.jsx("input",{type:"checkbox",checked:n,onChange:o=>a(o.target.checked)}),r("docker.useTls","Use TLS")]}),n&&s.jsxs("div",{className:"docker-tls-config__fields",children:[s.jsxs("div",{className:"docker-tls-config__field",children:[s.jsx("label",{htmlFor:"docker-tls-ca-path",children:r("docker.caPath","CA Certificate Path")}),s.jsx("input",{id:"docker-tls-ca-path",className:"input",value:i.tlsCaPath,onChange:o=>t({...i,tlsCaPath:o.target.value}),placeholder:"/etc/docker/ca.pem"})]}),s.jsxs("div",{className:"docker-tls-config__field",children:[s.jsx("label",{htmlFor:"docker-tls-cert-path",children:r("docker.certPath","Client Certificate Path")}),s.jsx("input",{id:"docker-tls-cert-path",className:"input",value:i.tlsCertPath,onChange:o=>t({...i,tlsCertPath:o.target.value}),placeholder:"/etc/docker/cert.pem"})]}),s.jsxs("div",{className:"docker-tls-config__field",children:[s.jsx("label",{htmlFor:"docker-tls-key-path",children:r("docker.keyPath","Client Key Path")}),s.jsx("input",{id:"docker-tls-key-path",className:"input",value:i.tlsKeyPath,onChange:o=>t({...i,tlsKeyPath:o.target.value}),placeholder:"/etc/docker/key.pem"})]}),s.jsxs("label",{className:"checkbox-label",children:[s.jsx("input",{type:"checkbox",checked:i.tlsVerify,onChange:o=>t({...i,tlsVerify:o.target.checked})}),r("docker.verifyTls","Verify TLS Certificate")]})]})]})}function I$({value:e,onChange:t,onError:r}){const{t:n}=le("app"),a=e?.context?"context":e?.host?"host":"local",[i,o]=f.useState(a),[l,c]=f.useState(e?.context??""),[d,u]=f.useState(e?.host??""),[m,h]=f.useState(null),{contexts:v,isLoadingContexts:g,contextsError:y,loadContexts:p,testConnection:b,isTestingConnection:j,lastTestResult:x,checkLocalDocker:C,isCheckingLocal:w}=M$(),P=f.useMemo(()=>({tlsVerify:e?.tlsVerify,tlsCaPath:e?.tlsCaPath,tlsCertPath:e?.tlsCertPath,tlsKeyPath:e?.tlsKeyPath}),[e]);f.useEffect(()=>{if(i==="local"){t({});return}if(i==="context"){p().catch(k=>r?.(k instanceof Error?k.message:String(k))),t(l?{context:l}:{});return}t({host:d,...P})},[i]);const O=f.useCallback(k=>{i==="host"&&t({host:d,...k})},[d,i,t]);return s.jsxs("div",{className:"docker-target-selector",children:[s.jsxs("div",{className:"docker-target-selector__modes",role:"group","aria-label":n("docker.targetMode","Docker target mode"),children:[s.jsx("button",{type:"button",className:`btn btn-sm ${i==="local"?"docker-target-selector__mode-active":""}`,onClick:()=>{o("local"),C().then(k=>{if(k.available){const N=k.version?` (${k.version})`:"";h(n("docker.available","Docker is available{{version}}",{version:N}))}else{const N=k.error?`: ${k.error}`:"";h(n("docker.notFound","Docker not found{{error}}",{error:N}))}}).catch(k=>{const N=k instanceof Error?k.message:String(k);h(n("docker.notFoundError","Docker not found: {{message}}",{message:N})),r?.(N)})},children:n("docker.local","Local Docker")}),s.jsx("button",{type:"button",className:`btn btn-sm ${i==="context"?"docker-target-selector__mode-active":""}`,onClick:()=>o("context"),children:n("docker.context","Docker Context")}),s.jsx("button",{type:"button",className:`btn btn-sm ${i==="host"?"docker-target-selector__mode-active":""}`,onClick:()=>o("host"),children:n("docker.remote","Remote Host")})]}),i==="local"&&m&&s.jsx("div",{className:"docker-target-selector__status",children:m}),i==="context"&&s.jsxs("div",{className:"docker-target-selector__panel",children:[s.jsxs("div",{className:"docker-target-selector__context-row",children:[s.jsxs("select",{className:"select",value:l,onChange:k=>{const N=k.target.value;c(N),t(N?{context:N}:{})},children:[s.jsx("option",{value:"",children:n("docker.selectContext","Select context")}),v.map(k=>s.jsxs("option",{value:k.name,children:[k.name,k.isCurrentContext?" (current)":"",k.dockerHost?` — ${k.dockerHost}`:""]},k.name))]}),s.jsx("button",{type:"button",className:"btn btn-sm btn-icon",onClick:()=>void p(),disabled:g,"aria-label":n("docker.refreshContexts","Refresh contexts"),children:s.jsx(Gr,{size:14})})]}),y&&s.jsx("div",{className:"docker-target-selector__error",children:y})]}),i==="host"&&s.jsxs("div",{className:"docker-target-selector__panel",children:[s.jsxs("div",{className:"docker-target-selector__field",children:[s.jsx("label",{htmlFor:"docker-target-selector-host",children:n("docker.host","Docker Host")}),s.jsx("input",{id:"docker-target-selector-host",className:"input",placeholder:n("docker.hostPlaceholder","tcp://host:2376"),value:d,onChange:k=>{const N=k.target.value;u(N),t({host:N,...P})}})]}),s.jsx(T$,{value:P,onChange:O})]}),s.jsx("button",{type:"button",className:"btn btn-sm",onClick:()=>void b(i==="local"?void 0:i==="context"?{context:l}:{host:d,...P}),disabled:j||w,children:j?n("docker.testing","Testing..."):n("docker.testConnection","Test Connection")}),x&&s.jsx("div",{className:x.success?"docker-target-selector__success":"docker-target-selector__error",children:x.success?n("docker.connected","Connected{{version}}",{version:x.dockerVersion?` (Docker ${x.dockerVersion})`:""}):x.error??n("docker.connectionFailed","Connection failed")})]})}const _o="http://localhost:4040",Qv={readWrite:"rw",readOnly:"ro"};function D$({isOpen:e,onClose:t,onSubmit:r,addToast:n}){const{t:a}=le("app"),[i,o]=f.useState(""),[l,c]=f.useState({}),[d,u]=f.useState(_o),[m,h]=f.useState("auto"),[v,g]=f.useState(""),[y,p]=f.useState(!1),[b,j]=f.useState(!1),[x,C]=f.useState(!0),[w,P]=f.useState(4096),[O,k]=f.useState(2),[N,S]=f.useState(!1),[A,_]=f.useState("runfusion/fusion"),[I,D]=f.useState("latest"),[F,V]=f.useState([]),[q,te]=f.useState([]),[U,ee]=f.useState({}),[L,B]=f.useState(!1),X=f.useCallback(()=>{o(""),c({}),u(_o),h("auto"),g(""),p(!1),j(!1),C(!0),P(4096),k(2),S(!1),_("runfusion/fusion"),D("latest"),V([]),te([]),ee({}),B(!1)},[]),Q=f.useCallback(()=>{L||(X(),t())},[t,X,L]);f.useEffect(()=>{if(!e){X();return}const z=fe=>{fe.key==="Escape"&&(fe.preventDefault(),Q())};return document.addEventListener("keydown",z),()=>document.removeEventListener("keydown",z)},[Q,e,X]);const G=f.useMemo(()=>({nodeId:null,name:i.trim(),imageName:A.trim()||"runfusion/fusion",imageTag:I.trim()||"latest",hostConfig:{context:l.context?.trim()||void 0,host:l.host?.trim()||void 0,tlsVerify:l.tlsVerify,tlsCaPath:l.tlsCaPath?.trim()||void 0,tlsCertPath:l.tlsCertPath?.trim()||void 0,tlsKeyPath:l.tlsKeyPath?.trim()||void 0},envVars:Object.fromEntries(F.map(z=>[z.key.trim(),z.value]).filter(([z])=>!!z)),volumeMounts:q.map(z=>({hostPath:z.hostPath.trim(),containerPath:z.containerPath.trim(),mode:z.mode})).filter(z=>z.hostPath&&z.containerPath),resourceSizing:{memoryMB:w,cpus:O},extraClis:[y?"claude-cli":null,b?"droid-cli":null].filter(Boolean),persistentStorage:x,reachableUrl:d.trim()||null,apiKey:m==="manual"&&v.trim()||null}),[v,m,O,l,F,A,I,y,b,w,q,i,x,d]),ie=f.useCallback(()=>{V(z=>[...z,{key:"",value:""}])},[]),se=f.useCallback((z,fe)=>{V(be=>be.map((ye,nt)=>nt===z?fe:ye))},[]),re=f.useCallback(z=>{V(fe=>fe.filter((be,ye)=>ye!==z))},[]),W=f.useCallback(()=>{te(z=>[...z,{hostPath:"",containerPath:"",mode:"rw"}])},[]),$=f.useCallback((z,fe)=>{te(be=>be.map((ye,nt)=>nt===z?fe:ye))},[]),ne=f.useCallback(z=>{te(fe=>fe.filter((be,ye)=>ye!==z))},[]),we=f.useCallback(async()=>{if(L)return;const z={};if((!G.name||G.name.length>64)&&(z.name=a("docker.errors.nameRequired","Name is required and must be 64 characters or fewer")),G.reachableUrl||(z.reachableUrl=a("docker.errors.urlRequired","URL is required")),w<512&&(z.memoryMB=a("docker.errors.memoryMinimum","Memory must be at least 512 MB")),O<.5&&(z.cpus=a("docker.errors.cpusMinimum","CPUs must be at least 0.5")),ee(z),!(Object.keys(z).length>0)){B(!0);try{await r(G),Q()}catch{}finally{B(!1)}}},[Q,O,G,w,r,L,a]);return e?s.jsx("div",{className:"modal-overlay open",onClick:Q,children:s.jsxs("div",{className:"modal docker-onboarding",role:"dialog","aria-modal":"true","aria-label":a("docker.ariaLabels.modal","Docker node onboarding"),onClick:z=>z.stopPropagation(),children:[s.jsxs("div",{className:"modal-header",children:[s.jsx("h3",{children:a("docker.titles.provisionNode","Provision Docker Node")}),s.jsx("button",{className:"modal-close",onClick:Q,disabled:L,"aria-label":a("docker.ariaLabels.closeModal","Close onboarding modal"),children:"×"})]}),s.jsxs("div",{className:"modal-body docker-onboarding__body",children:[s.jsxs("section",{className:"docker-onboarding__section",children:[s.jsx("h4",{className:"docker-onboarding__section-title",children:a("docker.sections.requiredSettings","Required Settings")}),s.jsxs("label",{className:"docker-onboarding__field",children:[s.jsx("span",{children:a("docker.labels.nodeName","Node Name")}),s.jsx("input",{className:"input",value:i,onChange:z=>o(z.target.value),disabled:L,placeholder:a("docker.placeholders.nodeName","my-docker-node"),autoFocus:!0})]}),U.name&&s.jsx("div",{className:"form-error",children:U.name}),s.jsx(I$,{value:l,onChange:c}),s.jsxs("label",{className:"docker-onboarding__field",children:[s.jsx("span",{children:a("docker.labels.reachableUrl","Reachable URL")}),s.jsx("input",{className:"input",value:d,onChange:z=>u(z.target.value),disabled:L,placeholder:_o})]}),U.reachableUrl&&s.jsx("div",{className:"form-error",children:U.reachableUrl}),s.jsxs("div",{className:"docker-onboarding__radio-group",children:[s.jsxs("label",{className:"checkbox-label",children:[s.jsx("input",{type:"radio",checked:m==="auto",onChange:()=>h("auto"),disabled:L}),a("docker.options.autoGenerate","Auto-generate")]}),s.jsxs("label",{className:"checkbox-label",children:[s.jsx("input",{type:"radio",checked:m==="manual",onChange:()=>h("manual"),disabled:L}),a("docker.options.provideManually","Provide manually")]})]}),m==="manual"&&s.jsxs("label",{className:"docker-onboarding__field",children:[s.jsx("span",{children:a("docker.labels.apiKey","API Key")}),s.jsx("input",{className:"input",type:"password",value:v,onChange:z=>g(z.target.value),disabled:L,placeholder:a("docker.placeholders.apiKey","Enter API key")})]}),s.jsxs("div",{className:"docker-onboarding__checkbox-group",children:[s.jsxs("label",{className:"checkbox-label",children:[s.jsx("input",{type:"checkbox",checked:y,onChange:z=>p(z.target.checked),disabled:L}),a("docker.options.claudeCli","Claude CLI")]}),s.jsxs("label",{className:"checkbox-label",children:[s.jsx("input",{type:"checkbox",checked:b,onChange:z=>j(z.target.checked),disabled:L}),a("docker.options.droidCli","Droid CLI")]}),s.jsxs("label",{className:"checkbox-label",children:[s.jsx("input",{type:"checkbox",checked:x,onChange:z=>C(z.target.checked),disabled:L}),a("docker.options.persistentStorage","Keep data across container recreations")]})]}),s.jsxs("div",{className:"docker-onboarding__inline-fields",children:[s.jsxs("label",{className:"docker-onboarding__field",children:[s.jsx("span",{children:a("docker.labels.memory","Memory (MB)")}),s.jsx("input",{className:"input",type:"number",min:512,value:w,onChange:z=>P(Number(z.target.value)),disabled:L})]}),s.jsxs("label",{className:"docker-onboarding__field",children:[s.jsx("span",{children:a("docker.labels.cpus","CPUs")}),s.jsx("input",{className:"input",type:"number",min:.5,step:.5,value:O,onChange:z=>k(Number(z.target.value)),disabled:L})]})]}),U.memoryMB&&s.jsx("div",{className:"form-error",children:U.memoryMB}),U.cpus&&s.jsx("div",{className:"form-error",children:U.cpus})]}),s.jsxs("section",{className:"docker-onboarding__section",children:[s.jsxs("button",{type:"button",className:`docker-onboarding__advanced-toggle ${N?"is-expanded":""}`,onClick:()=>S(z=>!z),disabled:L,children:[s.jsx("span",{children:a("docker.sections.advanced","Advanced")}),s.jsx(xi,{})]}),s.jsx("div",{className:`docker-onboarding__advanced-content ${N?"is-expanded":""}`,children:s.jsxs("div",{children:[s.jsxs("div",{className:"docker-onboarding__inline-fields",children:[s.jsxs("label",{className:"docker-onboarding__field",children:[s.jsx("span",{children:a("docker.labels.image","Image")}),s.jsx("input",{className:"input",value:A,onChange:z=>_(z.target.value),disabled:L,placeholder:a("docker.placeholders.image","runfusion/fusion")})]}),s.jsxs("label",{className:"docker-onboarding__field",children:[s.jsx("span",{children:a("docker.labels.tag","Tag")}),s.jsx("input",{className:"input",value:I,onChange:z=>D(z.target.value),disabled:L,placeholder:a("docker.placeholders.tag","latest")})]})]}),s.jsxs("div",{className:"docker-onboarding__kv-list",children:[s.jsx("h5",{children:a("docker.sections.environmentVariables","Environment Variables")}),F.map((z,fe)=>s.jsxs("div",{className:"docker-onboarding__kv-row docker-onboarding__kv-row--env",children:[s.jsx("input",{className:"input",placeholder:a("docker.placeholders.envVarKey","KEY"),value:z.key,disabled:L,onChange:be=>se(fe,{key:be.target.value,value:z.value})}),s.jsx("input",{className:"input",placeholder:a("docker.placeholders.envVarValue","Value"),value:z.value,disabled:L,onChange:be=>se(fe,{key:z.key,value:be.target.value})}),s.jsx("button",{type:"button",className:"btn btn-icon","aria-label":a("docker.ariaLabels.removeVariable","Remove environment variable"),onClick:()=>re(fe),disabled:L,children:s.jsx(Do,{size:14})})]},`env-${fe}`)),s.jsxs("button",{type:"button",className:"btn btn-sm docker-onboarding__kv-add",onClick:ie,disabled:L,children:[s.jsx(Ea,{size:14}),a("docker.actions.addVariable","Add variable")]})]}),s.jsxs("div",{className:"docker-onboarding__kv-list",children:[s.jsx("h5",{children:a("docker.sections.volumeMounts","Volume Mounts")}),q.map((z,fe)=>s.jsxs("div",{className:"docker-onboarding__kv-row docker-onboarding__kv-row--mount",children:[s.jsx("input",{className:"input",placeholder:a("docker.placeholders.hostPath","Host path"),value:z.hostPath,disabled:L,onChange:be=>$(fe,{hostPath:be.target.value,containerPath:z.containerPath,mode:z.mode})}),s.jsx("input",{className:"input",placeholder:a("docker.placeholders.containerPath","Container path"),value:z.containerPath,disabled:L,onChange:be=>$(fe,{hostPath:z.hostPath,containerPath:be.target.value,mode:z.mode})}),s.jsxs("select",{className:"select",value:z.mode,disabled:L,onChange:be=>$(fe,{hostPath:z.hostPath,containerPath:z.containerPath,mode:be.target.value==="ro"?"ro":"rw"}),children:[s.jsx("option",{value:"rw",children:Qv.readWrite}),s.jsx("option",{value:"ro",children:Qv.readOnly})]}),s.jsx("button",{type:"button",className:"btn btn-icon","aria-label":a("docker.ariaLabels.removeMount","Remove volume mount"),onClick:()=>ne(fe),disabled:L,children:s.jsx(Do,{size:14})})]},`mount-${fe}`)),s.jsxs("button",{type:"button",className:"btn btn-sm docker-onboarding__kv-add",onClick:W,disabled:L,children:[s.jsx(Ea,{size:14}),a("docker.actions.addMount","Add mount")]})]})]})})]})]}),s.jsxs("div",{className:"modal-actions",children:[s.jsx("button",{className:"btn",onClick:Q,disabled:L,children:a("docker.actions.cancel","Cancel")}),s.jsx("button",{className:"btn btn-primary",onClick:()=>void we(),disabled:L,children:L?a("docker.states.creating","Creating..."):a("docker.actions.createNode","Create Docker Node")})]})]})}):null}function L$({nodeId:e,entries:t,loading:r=!1,singleNode:n=!1}){const{t:a}=le("app"),[i,o]=f.useState(!1),[l,c]=f.useState("all"),[d,u]=f.useState("all"),m=f.useCallback(()=>{o(b=>!b)},[]),h=f.useMemo(()=>{const b=new Set;for(const j of t)b.add(j.nodeName);return Array.from(b).sort()},[t]),v=f.useMemo(()=>{let b=[...t];return l!=="all"&&(b=b.filter(j=>j.direction===l)),!n&&d!=="all"&&(b=b.filter(j=>j.nodeName===d)),b.sort((j,x)=>{const C=new Date(j.timestamp).getTime();return new Date(x.timestamp).getTime()-C}),b},[t,l,d,n]),g=f.useCallback(b=>new Date(b).toLocaleString(),[]),y=f.useCallback(b=>{switch(b){case"success":return"settings-sync-log__badge--success";case"conflict":return"settings-sync-log__badge--conflict";case"error":return"settings-sync-log__badge--error";default:return""}},[]),p=f.useCallback(b=>{switch(b){case"success":return a("syncLog.resultSuccess","Success");case"conflict":return a("syncLog.resultConflict","Conflict");case"error":return a("syncLog.resultError","Error");default:return b}},[a]);return s.jsxs("div",{className:"settings-sync-log",children:[s.jsxs("button",{className:"settings-sync-log__header",type:"button",onClick:m,"aria-expanded":i,"data-testid":"settings-sync-log-header",children:[s.jsx(xi,{size:16,className:`settings-sync-log__chevron ${i?"settings-sync-log__chevron--expanded":""}`}),s.jsx("span",{children:a("syncLog.entryCount",{count:t.length,defaultValue_one:"{{count}} entry",defaultValue_other:"{{count}} entries"})})]}),i&&s.jsxs(s.Fragment,{children:[s.jsxs("div",{className:"settings-sync-log__filters",children:[s.jsxs("label",{children:[a("syncLog.filterDirection","Direction:"),s.jsxs("select",{value:l,onChange:b=>c(b.target.value),children:[s.jsx("option",{value:"all",children:a("syncLog.filterAll","All")}),s.jsx("option",{value:"push",children:a("syncLog.filterPush","Push")}),s.jsx("option",{value:"pull",children:a("syncLog.filterPull","Pull")})]})]}),!n&&s.jsxs("label",{children:[a("syncLog.filterNode","Node:"),s.jsxs("select",{value:d,onChange:b=>u(b.target.value),children:[s.jsx("option",{value:"all",children:a("syncLog.filterAllNodes","All Nodes")}),h.map(b=>s.jsx("option",{value:b,children:b},b))]})]})]}),r&&t.length===0?s.jsx("div",{className:"settings-sync-log__empty",children:s.jsx(Tl,{label:a("syncLog.loading","Loading...")})}):v.length===0?s.jsx("div",{className:"settings-sync-log__empty",children:a("syncLog.noHistory","No sync history available")}):s.jsx("div",{className:"settings-sync-log__list",children:v.map(b=>s.jsxs("div",{className:"settings-sync-log__entry",children:[s.jsx("span",{className:"settings-sync-log__entry-timestamp",children:g(b.timestamp)}),s.jsx("span",{className:"settings-sync-log__entry-direction",children:b.direction==="push"?s.jsx(bh,{size:14,"data-testid":"upload-icon"}):s.jsx(fh,{size:14,"data-testid":"download-icon"})}),s.jsx("span",{className:`settings-sync-log__entry-result ${y(b.result)}`,children:p(b.result)}),!n&&s.jsx("span",{className:"settings-sync-log__entry-node",children:b.nodeName}),b.details&&s.jsx("span",{className:"settings-sync-log__entry-details",title:b.details,children:sj(b.details??"")})]},b.id))})]})]})}function R$(e,t){const r=typeof e=="string"?e:JSON.stringify(e,null,2),n=typeof t=="string"?t:JSON.stringify(t,null,2);if(r===n)return r;const a=r.split(`
69
69
  `),i=n.split(`
70
70
  `),o=[],l=Math.max(a.length,i.length);for(let c=0;c<l;c++){const d=a[c],u=i[c];d!==void 0&&d!==u&&o.push(`- ${d}`),u!==void 0&&u!==d&&o.push(`+ ${u}`),d!==void 0&&d===u&&o.push(` ${d}`)}return o.join(`
71
- `)}function L$({isOpen:e,onClose:t,onResolve:r,conflicts:n,localNodeName:a,remoteNodeName:i,addToast:o}){const{t:l}=le("app"),[c,d]=f.useState({}),[u,m]=f.useState(!1);f.useEffect(()=>{const b={};for(const j of n)c[j.key]||(b[j.key]={resolution:"local"});Object.keys(b).length>0&&d(j=>({...j,...b}))},[n,c]),f.useEffect(()=>{if(!e)return;const b=j=>{j.key==="Escape"&&(j.preventDefault(),t())};return document.addEventListener("keydown",b),()=>document.removeEventListener("keydown",b)},[e,t]);const h=f.useCallback((b,j)=>{d(x=>{const C=x[b]??{};return j==="manual"?{...x,[b]:{resolution:"manual",manualValue:C.manualValue??JSON.stringify(n.find(w=>w.key===b)?.localValue??null,null,2)}}:{...x,[b]:{resolution:j}}})},[n]),v=f.useCallback((b,j)=>{d(x=>({...x,[b]:{...x[b],resolution:"manual",manualValue:j}}))},[]),y=f.useCallback(b=>{const j={};for(const x of n)j[x.key]={resolution:b};d(j)},[n]),g=f.useCallback(async()=>{m(!0);try{const b=n.map(j=>{const x=c[j.key]??{resolution:"local"};let C;switch(x.resolution){case"remote":C=j.remoteValue;break;case"manual":try{C=JSON.parse(x.manualValue??"null")}catch{C=x.manualValue??null}break;case"local":default:C=j.localValue;break}return{key:j.key,value:C}});await r(b),o(l("settings.resolvedSuccess","Settings conflicts resolved successfully"),"success"),t()}catch(b){const j=b instanceof Error?b.message:l("settings.resolveFailed","Failed to resolve conflicts");o(j,"error")}finally{m(!1)}},[o,n,t,r,c]),p=f.useMemo(()=>{const b={};for(const j of n)b[j.key]=D$(j.localValue,j.remoteValue);return b},[n]);return!e||n.length===0?null:s.jsx("div",{className:"modal-overlay open",onClick:t,children:s.jsxs("div",{className:"modal modal-lg settings-sync-conflict-modal",onClick:b=>b.stopPropagation(),role:"dialog","aria-modal":"true","aria-label":l("settings.conflictModalTitle","Resolve Settings Conflicts"),children:[s.jsxs("div",{className:"modal-header",children:[s.jsx("h3",{children:l("settings.conflictModalTitle","Resolve Settings Conflicts")}),s.jsx("button",{className:"modal-close",onClick:t,"aria-label":l("settings.closeModal","Close conflict modal"),children:"×"})]}),s.jsxs("div",{className:"modal-body",children:[s.jsx("div",{className:"settings-sync-conflict-modal__conflict-list",children:n.map(b=>{const j=c[b.key]??{resolution:"local"},x=p[b.key];return s.jsxs("div",{className:"settings-sync-conflict-modal__conflict-item",children:[s.jsx("div",{className:"settings-sync-conflict-modal__key",children:b.key}),s.jsxs("div",{className:"settings-sync-conflict-modal__diff-panel",children:[s.jsxs("div",{className:"settings-sync-conflict-modal__diff-side",children:[s.jsx("div",{className:"settings-sync-conflict-modal__diff-label",children:a}),s.jsx("div",{className:"settings-sync-conflict-modal__diff-content",children:s.jsx("pre",{style:{margin:0,whiteSpace:"pre-wrap"},children:x})})]}),s.jsxs("div",{className:"settings-sync-conflict-modal__diff-side",children:[s.jsx("div",{className:"settings-sync-conflict-modal__diff-label",children:i}),s.jsx("div",{className:"settings-sync-conflict-modal__diff-content",children:s.jsx("pre",{style:{margin:0,whiteSpace:"pre-wrap"},children:x})})]})]}),s.jsxs("div",{className:"settings-sync-conflict-modal__resolution",children:[s.jsxs("label",{children:[s.jsx("input",{type:"radio",name:`resolution-${b.key}`,checked:j.resolution==="local",onChange:()=>h(b.key,"local")}),l("settings.keepLocal","Keep Local")]}),s.jsxs("label",{children:[s.jsx("input",{type:"radio",name:`resolution-${b.key}`,checked:j.resolution==="remote",onChange:()=>h(b.key,"remote")}),l("settings.keepRemote","Keep Remote")]}),s.jsxs("label",{children:[s.jsx("input",{type:"radio",name:`resolution-${b.key}`,checked:j.resolution==="manual",onChange:()=>h(b.key,"manual")}),l("settings.mergeManually","Merge Manually")]})]}),j.resolution==="manual"&&s.jsx("textarea",{className:"settings-sync-conflict-modal__manual-input",value:j.manualValue??"",onChange:C=>v(b.key,C.target.value),placeholder:l("settings.jsonPlaceholder","Enter JSON value...")})]},b.key)})}),s.jsxs("div",{className:"settings-sync-conflict-modal__bulk-actions",children:[s.jsx("button",{className:"btn btn-sm",onClick:()=>y("local"),type:"button",children:l("settings.resolveAllLocal","Resolve All: Keep Local")}),s.jsx("button",{className:"btn btn-sm",onClick:()=>y("remote"),type:"button",children:l("settings.resolveAllRemote","Resolve All: Keep Remote")})]})]}),s.jsxs("div",{className:"modal-actions settings-sync-conflict-modal__footer",children:[s.jsx("button",{className:"btn btn-sm",onClick:t,children:l("actions.cancel","Cancel")}),s.jsx("button",{className:"btn btn-primary btn-sm",onClick:g,disabled:u,children:u?l("settings.resolving","Resolving..."):l("actions.confirm","Confirm")})]})]})})}const ja={readWrite:"rw",readOnly:"ro",volume:"volume",bind:"bind"},xx=/(KEY|TOKEN|SECRET|PASSWORD)/i;function Mo(e){if(!e)return"—";const t=new Date(e);return Number.isNaN(t.getTime())?"—":t.toLocaleString()}function R$(e){if(!e)return"—";const t=new Date(e),r=Date.now();if(Number.isNaN(t.getTime())||t.getTime()>r)return"—";const n=Math.floor((r-t.getTime())/1e3);if(n<60)return`${n}s`;const a=Math.floor(n/60);if(a<60)return`${a}m`;const i=Math.floor(a/60);return i<24?`${i}h ${a%60}m`:`${Math.floor(i/24)}d ${i%24}h`}function $$(e){switch(e){case"synced":return"node-detail-modal__sync-dot--synced";case"diff":return"node-detail-modal__sync-dot--diff";case"error":return"node-detail-modal__sync-dot--error";case"pending":return"node-detail-modal__sync-dot--pending";case"never-synced":default:return"node-detail-modal__sync-dot--never"}}function B$(e){return e==="running"?"success":e==="creating"||e==="recreating"||e==="restarting"?"warning":"error"}function F$(e){return e?`${e.charAt(0).toUpperCase()}${e.slice(1)}`:"Unknown"}function z$(e){if(!e)return"—";try{const t=new URL(e);return t.port?t.port:t.protocol==="https:"?"443":t.protocol==="http:"?"80":"—"}catch{return"—"}}function K$(e,t){return xx.test(e)?"••••••••":t}function V$({isOpen:e,onClose:t,node:r,projects:n,onUpdate:a,onHealthCheck:i,addToast:o,syncStatus:l,onPushSettings:c,onPullSettings:d,onSyncAuth:u,syncHistory:m=[],onResolveConflicts:h,managedDockerNode:v,containerStatus:y,onFetchContainerStatus:g,onFetchLogs:p,onUpdateDockerConfig:b,onFetchDockerConfigDiff:j}){const{t:x}=le("app"),C=f.useRef(!0),[w,P]=f.useState(!1),[O,k]=f.useState(""),[N,S]=f.useState(""),[A,_]=f.useState(""),[I,D]=f.useState(2),[F,V]=f.useState(!1),[U,te]=f.useState(!1),[q,ee]=f.useState(!1),[L,B]=f.useState(!1),[X,Q]=f.useState(null),[G,ie]=f.useState(!1),[se]=f.useState([]),[re,W]=f.useState(y),[$,ne]=f.useState(!1),[we,z]=f.useState(!1),[fe,be]=f.useState(""),[ye,nt]=f.useState(!1),[ur,E]=f.useState(!1),[T,J]=f.useState(r?.dockerConfig??null),[dt,dr]=f.useState({}),[na,uu]=f.useState(!1),[jx,du]=f.useState(!1);f.useEffect(()=>(C.current=!0,()=>{C.current=!1}),[]),f.useEffect(()=>{W(y)},[y]),f.useEffect(()=>{if(!r||!e){P(!1),z(!1),be("");return}k(r.name),S(r.url??""),_(r.apiKey??""),D(r.maxConcurrent),P(!1),J(r.dockerConfig??null),E(!1),dr({})},[e,r]),f.useEffect(()=>{if(!e)return;const R=ae=>{ae.key==="Escape"&&(ae.preventDefault(),t())};return document.addEventListener("keydown",R),()=>document.removeEventListener("keydown",R)},[e,t]);const ls=f.useMemo(()=>r?oj(n,r):[],[r,n]),wx=f.useMemo(()=>v?v.hostConfig.type==="remote"?v.hostConfig.host??"—":x("nodes.localDocker","Local Docker"):"—",[v,x]),Cx=f.useMemo(()=>!v?.resourceSizing?.cpuLimit&&!v?.resourceSizing?.memoryLimit?x("nodes.dockerResourceDefault","Default"):`${v.resourceSizing?.cpuLimit??x("nodes.dockerDefaultCpu","Default CPU")} / ${v.resourceSizing?.memoryLimit??x("nodes.dockerDefaultMemory","Default memory")}`,[v,x]),kx=f.useCallback(async()=>{if(r)try{if(await i(r.id),!C.current)return;o(x("nodes.healthCheckSuccess","Health check completed for {{name}}",{name:r.name}),"success")}catch(R){if(!C.current)return;const ae=R instanceof Error?R.message:x("nodes.healthCheckFailed","Health check failed");o(ae,"error")}},[o,r,i]),Px=f.useCallback(async()=>{if(!(!r||!c)){Q(null),te(!0);try{if(await c(r.id),!C.current)return;o(x("nodes.pushSettingsSuccess","Settings pushed successfully"),"success")}catch(R){if(!C.current)return;const ae=R instanceof Error?R.message:x("nodes.pushSettingsFailed","Push settings failed");Q(ae),o(ae,"error")}finally{C.current&&te(!1)}}},[o,r,c]),Sx=f.useCallback(async()=>{if(!(!r||!d)){Q(null),ee(!0);try{if(await d(r.id),!C.current)return;o(x("nodes.pullSettingsSuccess","Settings pulled successfully"),"success")}catch(R){if(!C.current)return;const ae=R instanceof Error?R.message:x("nodes.pullSettingsFailed","Pull settings failed");Q(ae),o(ae,"error")}finally{C.current&&ee(!1)}}},[o,r,d]),Nx=f.useCallback(async()=>{if(!(!r||!u)){Q(null),B(!0);try{if(await u(r.id),!C.current)return;o(x("nodes.syncAuthSuccess","Auth credentials synced successfully"),"success")}catch(R){if(!C.current)return;const ae=R instanceof Error?R.message:x("nodes.syncAuthFailed","Auth sync failed");Q(ae),o(ae,"error")}finally{C.current&&B(!1)}}},[o,r,u]),Ox=f.useCallback(()=>{Q(null)},[]),Ax=f.useCallback(async()=>{if(!(!v||!g)){ne(!0);try{const R=await g(v.id);if(!C.current)return;W(R)}catch(R){const ae=R instanceof Error?R.message:x("nodes.fetchContainerStatusFailed","Failed to fetch container status");o(ae,"error")}finally{C.current&&ne(!1)}}},[o,v,g]),Ex=f.useCallback(async()=>{if(!(!v||!p)){z(!0),nt(!0);try{const R=await p(v.id);if(!C.current)return;be(R)}catch(R){if(!C.current)return;be("");const ae=R instanceof Error?R.message:x("nodes.fetchContainerLogsFailed","Failed to fetch container logs");o(ae,"error")}finally{C.current&&nt(!1)}}},[o,v,p]),_x=f.useCallback(async()=>{if(!r||F)return;const R=O.trim();if(!R){o(x("nodes.nameRequired","Name is required"),"error");return}if(r.type==="remote"&&!N.trim()){o(x("nodes.urlRequired","URL is required for remote nodes"),"error");return}if(!Number.isFinite(I)||I<1){o(x("nodes.concurrencyMin","Concurrency must be at least 1"),"error");return}V(!0);try{await a(r.id,{name:R,url:r.type==="remote"&&N.trim()||void 0,apiKey:r.type==="remote"&&A||void 0,maxConcurrent:I}),o(x("nodes.updateSuccess","Updated {{name}}",{name:R}),"success"),P(!1)}catch(ae){const Ye=ae instanceof Error?ae.message:x("nodes.updateFailed","Failed to update node");o(Ye,"error")}finally{V(!1)}},[o,A,F,I,O,r,a,N]);f.useEffect(()=>{!r?.dockerConfig||!j||!e||j(r.id).then(R=>{C.current&&du(R.needsRecreate)}).catch(()=>{C.current&&du(!1)})},[e,r,j]);const Mx=f.useCallback(async()=>{if(!(!r||!T||!b||na)){uu(!0);try{const R=await b(r.id,{image:T.image,volumeMounts:T.volumeMounts,environment:T.environment,resources:T.resources,host:T.host,extraClis:T.extraClis,persistence:T.persistence,containerName:T.containerName});if(!C.current)return;J(R),o(x("nodes.dockerConfigSaveSuccess","Docker config saved"),"success")}catch(R){if(!C.current)return;const ae=R instanceof Error?R.message:x("nodes.dockerConfigSaveFailed","Failed to save Docker config");o(ae,"error")}finally{C.current&&uu(!1)}}},[o,T,na,r,b]),Tx=f.useCallback(()=>{r&&(k(r.name),S(r.url??""),_(r.apiKey??""),D(r.maxConcurrent),P(!1))},[r]);if(!e||!r)return null;const Jt=re?.status??v?.status,Ix=B$(Jt);return s.jsxs("div",{className:"modal-overlay open",onClick:t,children:[s.jsxs("div",{className:"modal modal-lg node-detail-modal",onClick:R=>R.stopPropagation(),role:"dialog","aria-modal":"true","aria-label":x("nodes.modalAriaLabel","Node details for {{name}}",{name:r.name}),children:[s.jsxs("div",{className:"modal-header",children:[s.jsx("h3",{children:x("nodes.modalTitle","Node Details")}),s.jsx("button",{className:"modal-close",onClick:t,"aria-label":x("nodes.closeModalAriaLabel","Close node detail modal"),children:"×"})]}),s.jsxs("div",{className:"modal-body node-detail-modal__body",children:[s.jsxs("section",{className:"node-detail-modal__section",children:[s.jsxs("div",{className:"node-detail-modal__section-header",children:[s.jsx("h4",{children:x("nodes.sectionOverview","Overview")}),!w&&s.jsxs("button",{className:"btn btn-sm",onClick:()=>P(!0),children:[s.jsx(lj,{size:14}),x("nodes.editButton","Edit")]})]}),s.jsxs("div",{className:"node-detail-modal__grid",children:[s.jsxs("label",{className:"node-detail-modal__field",children:[s.jsx("span",{children:x("nodes.fieldName","Name")}),w?s.jsx("input",{className:"input",value:O,onChange:R=>k(R.target.value),disabled:F}):s.jsx("strong",{children:r.name})]}),s.jsxs("div",{className:"node-detail-modal__field",children:[s.jsx("span",{children:x("nodes.fieldType","Type")}),s.jsx("strong",{children:r.type==="local"?x("nodes.typeLocal","Local"):x("nodes.typeRemote","Remote")})]}),s.jsxs("div",{className:"node-detail-modal__field",children:[s.jsx("span",{children:x("nodes.fieldStatus","Status")}),s.jsx("strong",{children:r.status})]}),s.jsxs("label",{className:"node-detail-modal__field",children:[s.jsx("span",{children:x("nodes.fieldMaxConcurrent","Max Concurrent")}),w?s.jsx("input",{className:"input",type:"number",min:1,max:10,value:I,onChange:R=>D(Number(R.target.value)),disabled:F}):s.jsx("strong",{children:r.maxConcurrent})]}),r.type==="remote"&&s.jsxs(s.Fragment,{children:[s.jsxs("label",{className:"node-detail-modal__field node-detail-modal__field--full",children:[s.jsx("span",{children:x("nodes.fieldUrl","URL")}),w?s.jsx("input",{className:"input",value:N,onChange:R=>S(R.target.value),disabled:F}):s.jsx("strong",{children:r.url??"—"})]}),s.jsxs("label",{className:"node-detail-modal__field node-detail-modal__field--full",children:[s.jsx("span",{children:x("nodes.fieldApiKey","API Key")}),w?s.jsx("input",{className:"input",type:"password",value:A,onChange:R=>_(R.target.value),placeholder:x("nodes.apiKeyPlaceholder","Leave blank to keep unchanged"),disabled:F}):s.jsx("strong",{children:r.apiKey?"••••••••":x("nodes.apiKeyNotConfigured","Not configured")})]})]}),s.jsxs("div",{className:"node-detail-modal__field",children:[s.jsx("span",{children:x("nodes.fieldCreated","Created")}),s.jsx("strong",{children:Mo(r.createdAt)})]}),s.jsxs("div",{className:"node-detail-modal__field",children:[s.jsx("span",{children:x("nodes.fieldUpdated","Updated")}),s.jsx("strong",{children:Mo(r.updatedAt)})]})]}),w&&s.jsxs("div",{className:"node-detail-modal__edit-actions",children:[s.jsxs("button",{className:"btn btn-primary btn-sm",onClick:_x,disabled:F,children:[s.jsx(pu,{size:14}),F?x("nodes.saving","Saving..."):x("nodes.saveButton","Save")]}),s.jsxs("button",{className:"btn btn-sm",onClick:Tx,disabled:F,children:[s.jsx(wa,{size:14}),x("nodes.cancelButton","Cancel")]})]})]}),s.jsxs("section",{className:"node-detail-modal__section",children:[s.jsxs("h4",{children:[r.type==="local"?x("nodes.sectionProjects","Projects"):x("nodes.sectionAssignedProjects","Assigned Projects")," (",ls.length,")"]}),ls.length===0?s.jsx("p",{className:"node-detail-modal__empty",children:r.type==="local"?x("nodes.noProjectsRunning","No projects are running on this node."):x("nodes.noProjectsAssigned","No projects are assigned to this node.")}):s.jsx("ul",{className:"node-detail-modal__project-list",children:ls.map(R=>s.jsxs("li",{className:"node-detail-modal__project-item",children:[s.jsx("span",{children:R.name}),s.jsx("code",{children:R.id})]},R.id))})]}),s.jsxs("section",{className:"node-detail-modal__section",children:[s.jsx("h4",{children:x("nodes.sectionHealth","Health")}),s.jsxs("div",{className:"node-detail-modal__health-row",children:[s.jsxs("span",{children:[x("nodes.healthStatus","Status:")," ",s.jsx("strong",{children:r.status})]}),s.jsxs("span",{children:[x("nodes.healthLastCheck","Last check:")," ",s.jsx("strong",{children:Mo(r.updatedAt)})]})]})]}),T&&s.jsxs("section",{className:"node-detail-modal__section node-detail-modal__docker-config",children:[s.jsxs("button",{className:"btn btn-sm node-detail-modal__docker-toggle",onClick:()=>E(R=>!R),"aria-expanded":ur,children:[s.jsx(xi,{size:14,className:ur?"node-detail-modal__docker-toggle-icon--expanded":""}),x("nodes.dockerConfiguration","Docker Configuration")]}),ur&&s.jsxs("div",{className:"node-detail-modal__docker-config-content",children:[s.jsx("div",{className:"node-detail-modal__grid",children:s.jsxs("label",{className:"node-detail-modal__field node-detail-modal__field--full",children:[s.jsx("span",{children:x("nodes.dockerFieldImage","Image")}),s.jsx("input",{className:"input",value:T.image,onChange:R=>J({...T,image:R.target.value})})]})}),s.jsxs("details",{children:[s.jsx("summary",{children:x("nodes.dockerVolumeMounts","Volume Mounts")}),s.jsxs("div",{className:"node-detail-modal__docker-list",children:[T.volumeMounts.map((R,ae)=>s.jsxs("div",{className:"node-detail-modal__docker-row",children:[s.jsx("input",{className:"input",value:R.hostPath,placeholder:x("nodes.dockerHostPath","Host path"),onChange:Ye=>{const ce=[...T.volumeMounts];ce[ae]={...ce[ae],hostPath:Ye.target.value},J({...T,volumeMounts:ce})}}),s.jsx("input",{className:"input",value:R.containerPath,placeholder:x("nodes.dockerContainerPath","Container path"),onChange:Ye=>{const ce=[...T.volumeMounts];ce[ae]={...ce[ae],containerPath:Ye.target.value},J({...T,volumeMounts:ce})}}),s.jsxs("select",{className:"input",value:R.mode??"rw",onChange:Ye=>{const ce=[...T.volumeMounts];ce[ae]={...ce[ae],mode:Ye.target.value},J({...T,volumeMounts:ce})},children:[s.jsx("option",{value:"rw",children:ja.readWrite}),s.jsx("option",{value:"ro",children:ja.readOnly})]}),s.jsxs("select",{className:"input",value:R.type??"volume",onChange:Ye=>{const ce=[...T.volumeMounts];ce[ae]={...ce[ae],type:Ye.target.value},J({...T,volumeMounts:ce})},children:[s.jsx("option",{value:"volume",children:ja.volume}),s.jsx("option",{value:"bind",children:ja.bind})]}),s.jsx("button",{className:"btn btn-sm",onClick:()=>J({...T,volumeMounts:T.volumeMounts.filter((Ye,ce)=>ce!==ae)}),children:x("nodes.removeButton","Remove")})]},`${R.hostPath}-${R.containerPath}-${ae}`)),s.jsx("button",{className:"btn btn-sm",onClick:()=>J({...T,volumeMounts:[...T.volumeMounts,{hostPath:"",containerPath:"",mode:"rw",type:"volume"}]}),children:x("nodes.addMountButton","Add Mount")})]})]}),s.jsxs("details",{children:[s.jsx("summary",{children:x("nodes.dockerEnvVars","Environment Variables")}),s.jsxs("div",{className:"node-detail-modal__docker-list",children:[Object.entries(T.environment).map(([R,ae])=>{const Ye=xx.test(R)&&!dt[R];return s.jsxs("div",{className:"node-detail-modal__docker-row",children:[s.jsx("input",{className:"input",value:R,onChange:ce=>{const cs={...T.environment};delete cs[R],cs[ce.target.value]=ae,J({...T,environment:cs})}}),s.jsx("input",{className:"input",value:Ye?"***":String(ae),onChange:ce=>J({...T,environment:{...T.environment,[R]:ce.target.value}})}),s.jsx("button",{className:"btn btn-sm",onClick:()=>dr(ce=>({...ce,[R]:!ce[R]})),children:dt[R]?s.jsx(cj,{size:14}):s.jsx(uj,{size:14})}),s.jsx("button",{className:"btn btn-sm",onClick:()=>{const ce={...T.environment};delete ce[R],J({...T,environment:ce})},children:x("nodes.removeButton","Remove")})]},R)}),s.jsx("button",{className:"btn btn-sm",onClick:()=>{const R=`NEW_VAR_${Object.keys(T.environment).length+1}`;J({...T,environment:{...T.environment,[R]:""}})},children:x("nodes.addVariableButton","Add Variable")})]})]}),s.jsxs("details",{children:[s.jsx("summary",{children:x("nodes.dockerResources","Resources")}),s.jsxs("div",{className:"node-detail-modal__docker-stack",children:[s.jsx("input",{className:"input",type:"number",placeholder:x("nodes.dockerMemoryBytes","Memory bytes (2 GB = 2147483648)"),value:T.resources?.memoryBytes??"",onChange:R=>J({...T,resources:{...T.resources,memoryBytes:R.target.value?Number(R.target.value):void 0}})}),s.jsx("input",{className:"input",type:"number",placeholder:x("nodes.dockerCpuCount","CPU count"),value:T.resources?.cpuCount??"",onChange:R=>J({...T,resources:{...T.resources,cpuCount:R.target.value?Number(R.target.value):void 0}})}),s.jsx("input",{className:"input",type:"number",placeholder:x("nodes.dockerPidsLimit","PIDs limit"),value:T.resources?.pidsLimit??"",onChange:R=>J({...T,resources:{...T.resources,pidsLimit:R.target.value?Number(R.target.value):void 0}})})]})]}),s.jsxs("details",{children:[s.jsx("summary",{children:x("nodes.dockerHostConfig","Host Config")}),s.jsxs("div",{className:"node-detail-modal__docker-stack",children:[s.jsx("input",{className:"input",placeholder:x("nodes.dockerContextName","Context name"),value:T.host?.contextName??"",onChange:R=>J({...T,host:{...T.host,contextName:R.target.value}})}),s.jsx("input",{className:"input",placeholder:x("nodes.dockerHostUrl","Docker host URL"),value:T.host?.dockerHost??"",onChange:R=>J({...T,host:{...T.host,dockerHost:R.target.value}})}),s.jsx("input",{className:"input",placeholder:x("nodes.dockerTlsCaCert","TLS CA cert path"),value:T.host?.tlsCaCert??"",onChange:R=>J({...T,host:{...T.host,tlsCaCert:R.target.value}})}),s.jsx("input",{className:"input",placeholder:x("nodes.dockerTlsCert","TLS cert path"),value:T.host?.tlsCert??"",onChange:R=>J({...T,host:{...T.host,tlsCert:R.target.value}})}),s.jsx("input",{className:"input",placeholder:x("nodes.dockerTlsKey","TLS key path"),value:T.host?.tlsKey??"",onChange:R=>J({...T,host:{...T.host,tlsKey:R.target.value}})}),s.jsxs("label",{className:"node-detail-modal__checkbox",children:[s.jsx("input",{type:"checkbox",checked:T.host?.tlsVerify??!0,onChange:R=>J({...T,host:{...T.host,tlsVerify:R.target.checked}})}),x("nodes.dockerTlsVerify","TLS verify")]})]})]}),s.jsxs("details",{children:[s.jsx("summary",{children:x("nodes.dockerExtraClis","Extra CLIs")}),s.jsxs("div",{className:"node-detail-modal__docker-list",children:[(T.extraClis??[]).map((R,ae)=>s.jsxs("div",{className:"node-detail-modal__docker-row",children:[s.jsx("input",{className:"input",value:R,onChange:Ye=>{const ce=[...T.extraClis??[]];ce[ae]=Ye.target.value,J({...T,extraClis:ce})}}),s.jsx("button",{className:"btn btn-sm",onClick:()=>J({...T,extraClis:(T.extraClis??[]).filter((Ye,ce)=>ce!==ae)}),children:x("nodes.removeButton","Remove")})]},`${R}-${ae}`)),s.jsx("button",{className:"btn btn-sm",onClick:()=>J({...T,extraClis:[...T.extraClis??[],""]}),children:x("nodes.addCliButton","Add CLI")})]})]}),s.jsxs("details",{children:[s.jsx("summary",{children:x("nodes.dockerPersistence","Persistence")}),s.jsxs("div",{className:"node-detail-modal__docker-stack",children:[s.jsx("input",{className:"input",placeholder:x("nodes.dockerVolumeName","Volume name"),value:T.persistence?.volumeName??"",onChange:R=>J({...T,persistence:{...T.persistence,volumeName:R.target.value}})}),s.jsxs("label",{className:"node-detail-modal__checkbox",children:[s.jsx("input",{type:"checkbox",checked:T.persistence?.retainOnDelete??!1,onChange:R=>J({...T,persistence:{...T.persistence,retainOnDelete:R.target.checked}})}),x("nodes.dockerRetainOnDelete","Retain on delete")]})]})]}),s.jsxs("div",{className:"node-detail-modal__docker-meta",children:[s.jsx("span",{children:x("nodes.dockerConfigMeta","Config v{{version}} • Updated {{updated}}",{version:T.configVersion,updated:Sl(T.lastUpdated??r.updatedAt)})}),jx&&s.jsx("span",{className:"node-detail-modal__docker-recreate",children:x("nodes.dockerNeedsRecreate","Needs Recreate")})]}),s.jsxs("button",{className:"btn btn-primary btn-sm",onClick:()=>void Mx(),disabled:na,children:[s.jsx(pu,{size:14}),na?x("nodes.saving","Saving..."):x("nodes.saveDockerConfig","Save Docker Config")]})]})]}),v&&s.jsxs("section",{className:"node-detail-modal__section docker-management",children:[s.jsx("h4",{children:x("nodes.sectionDockerManagement","Docker Management")}),s.jsxs("div",{className:"docker-management__status-card",children:[s.jsxs("div",{className:"docker-management__status-row",children:[s.jsx("span",{className:`docker-management__status-dot docker-management__status-dot--${Ix}`,"aria-hidden":!0}),s.jsx("strong",{children:Jt?F$(Jt):x("nodes.dockerStatusUnknown","Unknown")}),(Jt==="creating"||Jt==="recreating"||Jt==="restarting")&&s.jsx(yu,{size:14,className:"spin","aria-hidden":!0})]}),s.jsxs("div",{className:"docker-management__status-meta",children:[Jt==="running"&&s.jsxs("span",{children:[x("nodes.dockerUptime","Uptime:")," ",R$(re?.startedAt)]}),Jt!=="running"&&re?.exitCode!==void 0&&s.jsxs("span",{children:[x("nodes.dockerExitCode","Exit code:")," ",re.exitCode]}),(re?.error||v.errorMessage)&&s.jsx("span",{children:re?.error??v.errorMessage})]}),s.jsx("button",{className:"btn btn-sm",onClick:()=>void Ax(),disabled:!g||$,children:$?x("nodes.refreshing","Refreshing..."):x("nodes.refreshStatus","Refresh Status")})]}),s.jsxs("div",{className:"node-detail-modal__grid docker-management__info-grid",children:[s.jsxs("div",{className:"node-detail-modal__field",children:[s.jsx("span",{children:x("nodes.dockerFieldImage","Image")}),s.jsx("strong",{children:s.jsxs("code",{children:[v.imageName,":",v.imageTag]})})]}),s.jsxs("div",{className:"node-detail-modal__field",children:[s.jsx("span",{children:x("nodes.dockerContainerId","Container ID")}),s.jsx("strong",{children:s.jsx("code",{children:v.containerId?v.containerId.slice(0,12):"—"})})]}),s.jsxs("div",{className:"node-detail-modal__field",children:[s.jsx("span",{children:x("nodes.dockerHostLabel","Host")}),s.jsx("strong",{children:wx})]}),s.jsxs("div",{className:"node-detail-modal__field",children:[s.jsx("span",{children:x("nodes.dockerPersistentStorage","Persistent Storage")}),s.jsx("strong",{children:v.persistentStorage?x("nodes.yes","Yes"):x("nodes.no","No")})]}),s.jsxs("div",{className:"node-detail-modal__field",children:[s.jsx("span",{children:x("nodes.dockerPort","Port")}),s.jsx("strong",{children:z$(v.reachableUrl)})]}),s.jsxs("div",{className:"node-detail-modal__field",children:[s.jsx("span",{children:x("nodes.dockerResourceSizing","Resource Sizing")}),s.jsx("strong",{children:Cx})]})]}),s.jsxs("div",{className:"docker-management__actions",children:[s.jsxs("button",{className:"btn btn-sm",disabled:!0,title:x("nodes.availableSoon","Available after FN-3113"),children:[s.jsx(Il,{size:14}),x("nodes.startButton","Start")]}),s.jsxs("button",{className:"btn btn-sm",disabled:!0,title:x("nodes.availableSoon","Available after FN-3113"),children:[s.jsx(dh,{size:14}),x("nodes.stopButton","Stop")]}),s.jsxs("button",{className:"btn btn-sm",disabled:!0,title:x("nodes.availableSoon","Available after FN-3113"),children:[s.jsx(yu,{size:14}),x("nodes.restartButton","Restart")]}),s.jsxs("button",{className:"btn btn-sm",onClick:()=>void Ex(),disabled:!p,children:[s.jsx(dj,{size:14}),x("nodes.viewLogsButton","View Logs")]})]}),we&&s.jsxs("div",{className:"docker-management__log-viewer",children:[s.jsxs("div",{className:"docker-management__log-viewer-header",children:[s.jsx("strong",{children:x("nodes.containerLogs","Container Logs")}),s.jsx("button",{className:"btn-icon",onClick:()=>z(!1),"aria-label":x("nodes.closeLogsAriaLabel","Close logs"),children:s.jsx(wa,{size:14})})]}),ye?s.jsx("p",{children:x("nodes.fetchingLogs","Fetching logs...")}):s.jsx("pre",{children:fe.trim()||x("nodes.noLogsAvailable","No logs available")})]}),s.jsxs("details",{children:[s.jsx("summary",{children:x("nodes.dockerEnvVars","Environment Variables")}),s.jsx("dl",{className:"docker-management__env-list",children:Object.entries(v.envVars).map(([R,ae])=>s.jsxs("div",{children:[s.jsx("dt",{children:R}),s.jsx("dd",{children:K$(R,ae)})]},R))})]}),s.jsxs("details",{children:[s.jsx("summary",{children:x("nodes.dockerVolumeMounts","Volume Mounts")}),s.jsx("ul",{className:"docker-management__mounts-list",children:v.volumeMounts.map(R=>s.jsxs("li",{children:[s.jsxs("span",{children:[R.hostPath," → ",R.containerPath]}),R.readOnly&&s.jsx("span",{className:"node-card__type-badge",children:x("nodes.readOnly","Read-only")})]},`${R.hostPath}:${R.containerPath}`))})]})]}),r.type==="remote"&&s.jsxs("section",{className:"node-detail-modal__section",children:[s.jsx("h4",{children:x("nodes.sectionSettingsSync","Settings Sync")}),l&&s.jsxs("div",{className:"node-detail-modal__sync-status",children:[s.jsx("span",{className:`node-detail-modal__sync-dot ${$$(l.syncState)}`,"aria-hidden":!0}),s.jsxs("span",{children:[x("nodes.syncLastSync","Last sync:")," ",s.jsx("strong",{children:l.lastSyncAt?Sl(l.lastSyncAt):x("nodes.syncNeverSynced","Never synced")})]}),l.diffCount>0&&s.jsxs("span",{className:"node-detail-modal__sync-diff",children:[x("nodes.syncDifferences","Differences:")," ",s.jsx("strong",{children:l.diffCount})]})]}),s.jsxs("div",{className:"node-detail-modal__sync-actions",children:[s.jsxs("button",{className:"btn btn-sm",onClick:Px,disabled:U||!c,children:[s.jsx(bh,{size:14}),U?x("nodes.pushing","Pushing..."):x("nodes.pushSettings","Push Settings")]}),s.jsxs("button",{className:"btn btn-sm",onClick:Sx,disabled:q||!d,children:[s.jsx(fh,{size:14}),q?x("nodes.pulling","Pulling..."):x("nodes.pullSettings","Pull Settings")]}),s.jsxs("button",{className:"btn btn-sm",onClick:Nx,disabled:L||!u,children:[s.jsx(ch,{size:14}),L?x("nodes.syncing","Syncing..."):x("nodes.syncAuth","Sync Auth")]})]}),X&&s.jsxs("div",{className:"node-detail-modal__sync-error",children:[s.jsx("span",{children:X}),s.jsx("button",{className:"node-detail-modal__sync-error-dismiss",onClick:Ox,"aria-label":x("nodes.dismissError","Dismiss error"),children:s.jsx(wa,{size:14})})]})]}),r.type==="remote"&&s.jsxs("section",{className:"node-detail-modal__section",children:[s.jsx("h4",{children:x("nodes.sectionSyncHistory","Sync History")}),s.jsx(I$,{nodeId:r.id,entries:m,singleNode:!0})]})]}),s.jsxs("div",{className:"modal-actions node-detail-modal__actions",children:[s.jsxs("button",{className:"btn btn-sm",onClick:kx,children:[s.jsx(uh,{size:14}),x("nodes.healthCheckButton","Health Check")]}),s.jsx("button",{className:"btn btn-sm",onClick:t,children:x("nodes.closeButton","Close")})]})]}),r.type==="remote"&&s.jsx(L$,{isOpen:G,onClose:()=>ie(!1),onResolve:h??(async()=>{}),conflicts:se,localNodeName:x("nodes.localNodeName","Local"),remoteNodeName:r.name,addToast:o})]})}const U$=15e3,q$=1e3;function W$(){const[e,t]=f.useState([]),[r,n]=f.useState(!0),[a,i]=f.useState(null),o=f.useRef(null),l=f.useRef(0),c=f.useRef(e),d=sh();f.useEffect(()=>{c.current=e},[e]);const u=f.useCallback(g=>c.current.length>0&&oh(g,d.wasRecentlyHidden()),[d]),m=f.useCallback(async()=>{try{i(null);const g=await gu();t(g)}catch(g){const p=g instanceof Error?g.message:"Failed to fetch managed Docker nodes";u(p)||i(p)}},[u]);f.useEffect(()=>{let g=!1;async function p(){n(!0);try{const j=await gu();g||(t(j),i(null))}catch(j){const x=j instanceof Error?j.message:"Failed to fetch managed Docker nodes";!g&&!u(x)&&i(x)}finally{g||n(!1)}}p();const b=()=>{if(document.visibilityState!=="visible")return;const j=Date.now(),x=j-l.current;if(x<q$){Aa({view:"useManagedDockerNodes",trigger:"visibility",projectId:void 0,replayAttempted:!1,reason:"debounce-skipped",detail:{timeSinceLastRefreshMs:x}});return}l.current=j,Aa({view:"useManagedDockerNodes",trigger:"visibility",projectId:void 0,replayAttempted:!1,reason:"debounced-refresh"}),m()};return document.addEventListener("visibilitychange",b),()=>{g=!0,document.removeEventListener("visibilitychange",b)}},[m,u]),f.useEffect(()=>{if(!r)return o.current=setInterval(()=>{m()},U$),()=>{o.current&&(clearInterval(o.current),o.current=null)}},[r,m]);const h=f.useCallback(async g=>fj(g),[]),v=f.useCallback(async(g,p)=>(await mj(g,p)).logs,[]),y=f.useCallback(async g=>{const p=await vj(g),b={...p,nodeId:p.nodeId??void 0,containerId:p.containerId??void 0,status:p.status,hostConfig:{type:p.hostConfig.host||p.hostConfig.context?"remote":"local",host:p.hostConfig.host,context:p.hostConfig.context},reachableUrl:p.reachableUrl??void 0,volumeMounts:p.volumeMounts.map(j=>({hostPath:j.hostPath,containerPath:j.containerPath,readOnly:j.mode==="ro"?!0:void 0})),persistentStorage:p.persistentStorage,resourceSizing:{cpuLimit:p.resourceSizing.cpus!==void 0?String(p.resourceSizing.cpus):void 0,memoryLimit:p.resourceSizing.memoryMB!==void 0?`${p.resourceSizing.memoryMB}MB`:void 0},errorMessage:p.errorMessage??void 0};return t(j=>[...j,b]),b},[]);return{dockerNodes:e,loading:r,error:a,refresh:m,getContainerStatus:h,getLogs:v,create:y}}function H$({addToast:e,onClose:t}){const{t:r}=le("app"),{nodes:n,loading:a,error:i,refresh:o,register:l,update:c,unregister:d,healthCheck:u,patchDockerConfig:m,fetchDockerDiff:h,discoverRemoteProjects:v}=ih(),{projects:y,refresh:g}=hj(),{meshState:p,loading:b,error:j}=h$(),{syncStatusMap:x,pushSettings:C,pullSettings:w,syncAuth:P,trackNode:O,getAuthSyncState:k,getAuthProviders:N}=f$(),{dockerNodes:S,loading:A,refresh:_,getContainerStatus:I,getLogs:D,create:F}=W$(),[V,U]=f.useState(!1),[te,q]=f.useState(!1),[ee,L]=f.useState(null);f.useEffect(()=>{const $=n.filter(ne=>ne.type==="remote");for(const ne of $)O(ne.id)},[n,O]),f.useEffect(()=>{if(!ee)return;const $=n.find(ne=>ne.id===ee.id)??null;L($)},[n,ee]);const B=f.useMemo(()=>{const $=n.length,ne=n.filter(ye=>ye.status==="online").length,we=n.filter(ye=>ye.status==="offline"||ye.status==="error").length,z=n.filter(ye=>ye.type==="remote").length,fe=n.filter(ye=>ye.type==="remote"&&x[ye.id]&&Eo(x[ye.id]).syncState==="synced").length,be=S.length;return{total:$,online:ne,offline:we,remote:z,synced:fe,docker:be}},[S.length,n,x]),X=f.useCallback(async $=>{await l($),await g()},[g,l]),Q=f.useCallback(async $=>{try{await F($),e(r("nodes.dockerNodeCreated",'Docker node "{{name}}" created',{name:$.name}),"success"),q(!1)}catch(ne){const we=ne instanceof Error?ne.message:r("nodes.failedCreateDocker","Failed to create Docker node");throw e(we,"error"),ne}},[e,F,r]),G=f.useMemo(()=>{const $=new Map;for(const ne of S)ne.nodeId&&$.set(ne.nodeId,ne);return $},[S]),ie=f.useCallback(async()=>{try{await Promise.all([o(),_()])}catch{e(r("nodes.failedRefresh","Failed to refresh nodes"),"error")}},[e,o,_,r]),se=f.useCallback(async $=>{try{await u($),e(r("nodes.healthCheckComplete","Node health check complete"),"success")}catch(ne){const we=ne instanceof Error?ne.message:r("nodes.healthCheckFailed","Health check failed");e(we,"error")}},[e,u,r]),re=f.useCallback(async $=>{try{await d($),e(r("nodes.removed","Node removed"),"success"),ee?.id===$&&L(null)}catch(ne){const we=ne instanceof Error?ne.message:r("nodes.failedRemove","Failed to remove node");e(we,"error")}},[e,ee?.id,d,r]),W=f.useCallback(async($,ne)=>{await c($,ne)},[c]);return s.jsxs("div",{className:"nodes-view","data-testid":"nodes-view",children:[s.jsxs("div",{className:"nodes-view-header",children:[s.jsxs("div",{className:"nodes-view-title",children:[s.jsxs("h2",{children:[s.jsx(lh,{size:20}),r("nodes.heading","Nodes")]}),s.jsx("span",{className:"nodes-view-count",children:r("nodes.registeredCount","{{count}} registered",{count:n.length})})]}),s.jsxs("div",{className:"nodes-view-actions",children:[t?s.jsx("button",{className:"btn-icon nodes-view-close",onClick:t,"aria-label":r("nodes.closeAriaLabel","Close nodes view"),children:s.jsx(wa,{size:16})}):null,s.jsxs("button",{className:"btn btn-sm",onClick:()=>void ie(),disabled:a||A,children:[s.jsx(Gr,{size:14,className:a?"spin":""}),r("nodes.refresh","Refresh")]}),s.jsxs("button",{className:"btn btn-sm",onClick:()=>U(!0),children:[s.jsx(Ea,{size:14}),r("nodes.addNode","Add Node")]}),s.jsxs("button",{className:"btn btn-sm",onClick:()=>q(!0),title:r("nodes.addDockerNodeTitle","Add a managed Docker node"),children:[s.jsx(Io,{size:14}),r("nodes.addDockerNode","Add Docker Node")]})]})]}),s.jsxs("div",{className:"nodes-view-stats",children:[s.jsxs("div",{className:"nodes-view-stat","data-testid":"nodes-stat-total",children:[s.jsx("span",{children:r("nodes.total","Total")}),s.jsx("strong",{children:B.total})]}),s.jsxs("div",{className:"nodes-view-stat nodes-view-stat--online","data-testid":"nodes-stat-online",children:[s.jsxs("span",{children:[s.jsx(h0,{size:14})," ",r("nodes.online","Online")]}),s.jsx("strong",{children:B.online})]}),s.jsxs("div",{className:"nodes-view-stat nodes-view-stat--offline","data-testid":"nodes-stat-offline",children:[s.jsxs("span",{children:[s.jsx(m0,{size:14})," ",r("nodes.offline","Offline")]}),s.jsx("strong",{children:B.offline})]}),s.jsxs("div",{className:"nodes-view-stat","data-testid":"nodes-stat-remote",children:[s.jsxs("span",{children:[s.jsx(pj,{size:14})," ",r("nodes.remote","Remote")]}),s.jsx("strong",{children:B.remote})]}),s.jsxs("div",{className:"nodes-view-stat nodes-view-stat--synced","data-testid":"nodes-stat-synced",children:[s.jsxs("span",{children:[s.jsx(Gr,{size:14})," ",r("nodes.synced","Synced")]}),s.jsx("strong",{children:B.synced})]}),s.jsxs("div",{className:"nodes-view-stat","data-testid":"nodes-stat-docker",children:[s.jsxs("span",{children:[s.jsx(Io,{size:14})," ",r("nodes.docker","Docker")]}),s.jsx("strong",{children:B.docker})]})]}),(i||j)&&s.jsx("div",{className:"nodes-view-error",children:i??j}),!b&&p.length>0&&s.jsxs("section",{className:"nodes-view-topology","aria-label":r("nodes.meshTopologyAriaLabel","Mesh Topology"),children:[s.jsx("h3",{className:"nodes-view-section-title",children:r("nodes.meshTopology","Mesh Topology")}),s.jsx(N$,{nodes:p})]}),a?s.jsx("div",{className:"nodes-view-grid",children:Array.from({length:4}).map(($,ne)=>s.jsx("div",{className:"node-card node-card--loading","aria-hidden":!0},ne))}):n.length===0?s.jsxs("div",{className:"nodes-view-empty",children:[s.jsx("p",{children:r("nodes.noRegistered","No nodes are registered yet.")}),s.jsxs("button",{className:"btn btn-primary",onClick:()=>U(!0),children:[s.jsx(Ea,{size:14}),r("nodes.addFirstNode","Add First Node")]})]}):s.jsx("div",{className:"nodes-view-grid",children:n.map($=>{const ne=$.type==="remote"&&x[$.id]?Eo(x[$.id]):void 0;return s.jsx(w$,{node:$,projects:y,onHealthCheck:we=>{se(we)},onEdit:we=>L(we),onRemove:we=>{re(we)},isLoading:a,syncStatus:ne,authSyncState:$.type==="remote"?k($.id):void 0,authSyncProviders:$.type==="remote"?N($.id):void 0,managedDockerNode:G.get($.id)},$.id)})}),s.jsx(A$,{isOpen:V,onClose:()=>U(!1),onSubmit:X,onDiscoverRemoteProjects:v,addToast:e,projects:y}),s.jsx(T$,{isOpen:te,onClose:()=>q(!1),onSubmit:Q,addToast:e}),s.jsx(V$,{isOpen:ee!==null,onClose:()=>L(null),node:ee,projects:y,onUpdate:W,onHealthCheck:se,addToast:e,syncStatus:ee?.type==="remote"&&ee&&x[ee.id]?Eo(x[ee.id]):void 0,onPushSettings:C,onPullSettings:w,onSyncAuth:P,managedDockerNode:ee?G.get(ee.id):void 0,onFetchContainerStatus:I,onFetchLogs:D,onUpdateDockerConfig:m,onFetchDockerConfigDiff:h})]})}function G$(){const{t:e}=le("app");return t=>{switch(t){case"triage":return e("commandCenter.funnel.stage.triage","Triage");case"todo":return e("commandCenter.funnel.stage.todo","Todo");case"in-progress":return e("commandCenter.funnel.stage.inProgress","In progress");case"in-review":return e("commandCenter.funnel.stage.inReview","In review");case"done":return e("commandCenter.funnel.stage.done","Done");case"other":return e("commandCenter.funnel.stage.other","Other");default:return t}}}function X$(e){return Number.isFinite(e)?e.toFixed(2):"—"}function Y$({range:e}){const{t}=le("app"),r=G$(),{data:n,isLoading:a,error:i}=Ge("/command-center/activity",e),o=n?.funnel??null,l=f.useMemo(()=>(o?.stages??[]).map(d=>({label:r(d.stage),value:d.entered})),[o?.stages,r]),c=!o||o.stages.every(d=>d.entered===0);return s.jsxs(Pt,{testId:"funnel",isLoading:a,error:i,isEmpty:c,emptyMessage:t("commandCenter.funnel.empty","No task transitions in the selected range."),children:[s.jsxs("div",{className:"cc-area-section",children:[s.jsx("h3",{className:"cc-area-section-title",children:t("commandCenter.funnel.title","SDLC funnel")}),s.jsx(bx,{stages:l,ariaLabel:t("commandCenter.funnel.ariaLabel","Tasks per workflow stage")})]}),s.jsxs("div",{className:"cc-area-section",children:[s.jsx("h3",{className:"cc-area-section-title",children:t("commandCenter.funnel.throughputTitle","Throughput")}),s.jsxs("div",{className:"cc-stat-grid",children:[s.jsxs("div",{className:"card cc-stat-card cc-stat-card--gauge","data-testid":"cc-funnel-completion-rate",children:[s.jsx(Oa,{value:o?.completionRate??null,label:t("commandCenter.funnel.completionRate","Completion rate"),ariaLabel:t("commandCenter.funnel.completionRateAria","Completion rate for in-range triage entrants")}),s.jsx("span",{className:"cc-stat-sub",children:t("commandCenter.funnel.completionRateHint","Done ÷ entered (in range)")})]}),s.jsxs("div",{className:"card cc-stat-card","data-testid":"cc-funnel-throughput",children:[s.jsx("div",{className:"cc-stat-label",children:t("commandCenter.funnel.throughputPerDay","Tasks done / day")}),s.jsx("div",{className:"cc-stat-value",children:X$(o?.throughputPerDay??0)}),s.jsx("span",{className:"cc-stat-sub",children:t("commandCenter.funnel.rangeDays","{{count}} day range",{count:o?.rangeDays??0})})]}),s.jsxs("div",{className:"card cc-stat-card","data-testid":"cc-funnel-done",children:[s.jsx("div",{className:"cc-stat-label",children:t("commandCenter.funnel.doneInRange","Reached done")}),s.jsx("div",{className:"cc-stat-value",children:K(o?.doneInRange??0)})]}),s.jsxs("div",{className:"card cc-stat-card","data-testid":"cc-funnel-entered",children:[s.jsx("div",{className:"cc-stat-label",children:t("commandCenter.funnel.enteredInRange","Entered triage")}),s.jsx("div",{className:"cc-stat-value",children:K(o?.enteredInRange??0)})]})]})]})]})}const Z$=8;function J$(e){const{t}=le("app");return[{id:"overview",label:t("commandCenter.tabs.overview","Overview")},{id:"tokens",label:t("commandCenter.tabs.tokens","Tokens")},{id:"tools",label:t("commandCenter.tabs.tools","Tools")},{id:"activity",label:t("commandCenter.tabs.activity","Activity")},{id:"productivity",label:t("commandCenter.tabs.productivity","Productivity")},{id:"team",label:t("commandCenter.tabs.team","Team")},{id:"workflows",label:t("commandCenter.tabs.workflows","Workflows")},{id:"ecosystem",label:t("commandCenter.tabs.ecosystem","Ecosystem")},{id:"github",label:t("commandCenter.tabs.github","GitHub")},{id:"signals",label:t("commandCenter.tabs.signals","Signals")},{id:"system",label:t("commandCenter.tabs.system","System")},...e?[{id:"nodes",label:t("commandCenter.tabs.nodes","Nodes")}]:[],{id:"reliability",label:t("commandCenter.tabs.reliability","Reliability")},{id:"mission-control",label:t("commandCenter.tabs.missionControl","Mission Control")}]}const Q$=15e3;function e2({range:e,projectId:t,colorTheme:r="default",themeMode:n="system",shadcnCustomColors:a={},resolvedThemeMode:i=n==="light"?"light":"dark",onColorThemeChange:o=()=>{},onThemeModeChange:l=()=>{},onShadcnCustomColorsChange:c=()=>{},onChangeView:d}){const{t:u}=le("app"),m=Ge("/command-center/tokens?groupBy=model",e,{pollMs:Q$}),h=Ge("/command-center/tools",e),v=Ge("/command-center/activity",e),y=Ge("/command-center/signals",e),[g,p]=f.useState(null),[b,j]=f.useState(!0);f.useEffect(()=>{let W=!1;return j(!0),(async()=>{try{const $=await _l("/command-center/live");W||p($)}catch{W||p(null)}finally{W||j(!1)}})(),()=>{W=!0}},[]);const x=m.data?.totals?.totalTokens??0,C=h.data?.toolCalls??0,w=v.data?.activeNodes??0,P=v.data?.activeAgents??0,O=v.data?.sessions??0,k=v.data?.agentRuns?.total??0,N=v.data?.funnel?.doneInRange??0,S=g?.columns.find(W=>W.column==="in-progress")?.count??0,A=m.data?.groups?.length??0,_=f.useMemo(()=>[...m.data?.groups??[]].sort((W,$)=>$.totalTokens-W.totalTokens||(W.key??"").localeCompare($.key??"")).slice(0,Z$).map(W=>({label:W.key??u("commandCenter.tokens.unknownModel","(unknown)"),value:W.totalTokens,valueLabel:K(W.totalTokens),iconProvider:Ml(W.key??"")})),[m.data?.groups,u]),I=f.useMemo(()=>[...h.data?.byCategory??[]].sort((W,$)=>$.count-W.count||W.category.localeCompare($.category)).map(W=>({label:W.category,value:W.count,valueLabel:K(W.count)})),[h.data?.byCategory]),D=f.useMemo(()=>_.map(W=>({label:W.label,value:W.value})),[_]),F=f.useMemo(()=>(v.data?.daily??[]).map(W=>W.messages+W.activeAgents+(W.agentRuns??0)),[v.data?.daily]),V=f.useMemo(()=>[{label:u("commandCenter.activity.messages","Messages"),values:(v.data?.daily??[]).map(W=>W.messages)},{label:u("commandCenter.activity.activeAgents","Active agents"),values:(v.data?.daily??[]).map(W=>W.activeAgents)},{label:u("commandCenter.activity.agentRuns","Agent runs"),values:(v.data?.daily??[]).map(W=>W.agentRuns)}],[v.data?.daily,u]),U=F.length>0?F:[O,v.data?.messages??0,P,w,N],te=_.length>0||I.length>0||F.length>0,q=O>0||(v.data?.messages??0)>0||w>0||P>0||k>0||N>0,ee=x>0||C>0||q,B=!(m.data!==null&&h.data!==null&&v.data!==null)&&(m.isLoading||h.isLoading||v.isLoading),X=m.error??h.error??v.error,Q=m.data?Sr(m.data.cost?.usd??null,m.data.cost?.unavailable??!0):"—",G=h.data?h.data.fullyAutonomous?u("commandCenter.tools.ratioAutonomous","{{ratio}} calls/session (fully autonomous)",{ratio:h.data.autonomyRatio.toFixed(1)}):`${h.data.autonomyRatio.toFixed(1)}:1`:"—",ie=[{id:"tokens",label:u("commandCenter.overview.tokensCost","Tokens & cost"),value:K(x),subLabel:Q},{id:"autonomy",label:u("commandCenter.overview.autonomy","Autonomy ratio"),value:G},{id:"agentRuns",label:u("commandCenter.overview.agentRuns","Agent runs"),value:K(k)},{id:"tasksDone",label:u("commandCenter.overview.tasksDone","Tasks done"),value:K(N)},{id:"models",label:u("commandCenter.overview.uniqueModels","Unique models"),value:K(A)},{id:"signals",label:u("commandCenter.overview.openSignals","Open signals"),value:y.isLoading?"—":y.data?K(y.data.open??0):"—"}],se=s.jsx(s.Fragment,{children:s.jsx(l$,{projectId:t,colorTheme:r,themeMode:n,shadcnCustomColors:a,resolvedThemeMode:i,onColorThemeChange:o,onThemeModeChange:l,onShadcnCustomColorsChange:c,onChangeView:d})}),re=s.jsx("div",{className:"cc-overview-throughput","data-testid":"command-center-throughput",children:s.jsx(Y$,{range:e})});return B?s.jsxs("div",{className:"cc-overview",children:[se,s.jsxs("div",{className:"cc-loading","data-testid":"command-center-overview-loading",children:[s.jsx("div",{className:"cc-chart-skeleton"}),s.jsx("p",{children:s.jsx(Tl,{label:u("commandCenter.loading","Loading dashboard...")})})]}),re]}):X!==null&&!ee?s.jsxs("div",{className:"cc-overview",children:[se,s.jsxs("div",{className:"cc-error","data-testid":"command-center-overview-error",role:"alert",children:[s.jsx(gi,{size:24}),s.jsx("p",{children:X})]}),re]}):ee?s.jsxs("div",{className:"cc-overview",children:[se,s.jsx("div",{className:"cc-stat-grid",children:ie.map(W=>s.jsxs("div",{className:"card cc-stat-card","data-testid":`command-center-stat-${W.id}`,children:[s.jsx("div",{className:"cc-stat-label",children:W.label}),s.jsx("div",{className:`cc-stat-value ${W.id==="tokens"?"cc-token-count-live":""}`,children:W.value},W.value),W.subLabel?s.jsx("span",{className:"cc-stat-sub",children:W.subLabel}):null]},W.id))}),s.jsxs("div",{className:"cc-live-strip","data-testid":"command-center-live-strip",children:[s.jsxs("div",{className:"cc-live-strip-heading",children:[s.jsx("span",{className:"status-dot status-dot--connecting","aria-hidden":"true"}),s.jsx("span",{className:"cc-live-strip-label",children:u("commandCenter.overview.liveStrip","Live activity snapshot")})]}),s.jsxs("div",{className:"cc-live-strip-metrics","data-testid":"command-center-live-snapshot",children:[s.jsxs("span",{className:"cc-live-metric","data-testid":"command-center-live-tasks-in-progress",children:[s.jsx("span",{className:"cc-live-metric-value",children:b?"—":K(S)}),s.jsx("span",{className:"cc-live-metric-label",children:u("commandCenter.overview.tasksInProgress","tasks in progress")})]}),s.jsxs("span",{className:"cc-live-metric","data-testid":"command-center-live-agents-working",children:[s.jsx("span",{className:"cc-live-metric-value",children:K(P)}),s.jsx("span",{className:"cc-live-metric-label",children:u("commandCenter.overview.agentsWorking","agents working")})]}),s.jsxs("span",{className:"cc-live-metric","data-testid":"command-center-live-tokens",children:[s.jsx("span",{className:"cc-live-metric-value cc-token-count-live",children:K(x)},x),s.jsx("span",{className:"cc-live-metric-label",children:u("commandCenter.overview.liveTokens","tokens")})]}),s.jsxs("span",{className:"cc-live-metric","data-testid":"command-center-live-open-signals",children:[s.jsx("span",{className:"cc-live-metric-value",children:y.isLoading?"—":y.data?K(y.data.open??0):"—"}),s.jsx("span",{className:"cc-live-metric-label",children:u("commandCenter.overview.openSignals","open signals")})]})]}),s.jsxs("div",{className:"cc-live-trend","data-testid":"command-center-throughput-trend",children:[s.jsx("span",{className:"cc-live-trend-label",children:u("commandCenter.overview.throughputTrend","throughput trend")}),s.jsx(Kt,{values:U,ariaLabel:u("commandCenter.overview.throughputTrendAria","Recent activity throughput trend")})]})]}),te?s.jsxs("section",{className:"cc-overview-charts","data-testid":"command-center-overview-charts",children:[_.length>0?s.jsxs("div",{className:"card cc-overview-chart-card","data-testid":"command-center-overview-chart-tokens",children:[s.jsxs("div",{className:"cc-overview-chart-header",children:[s.jsx("h3",{className:"cc-area-section-title",children:u("commandCenter.overview.tokensByModel","Tokens by model")}),s.jsx("p",{children:u("commandCenter.overview.tokensByModelHint","Top model token consumers in this range")})]}),s.jsx(Ze,{data:_,ariaLabel:u("commandCenter.overview.tokensByModel","Tokens by model")})]}):null,D.length>0?s.jsxs("div",{className:"card cc-overview-chart-card","data-testid":"cc-overview-pie",children:[s.jsxs("div",{className:"cc-overview-chart-header",children:[s.jsx("h3",{className:"cc-area-section-title",children:u("commandCenter.overview.tokensByModelPie","Token share by model")}),s.jsx("p",{children:u("commandCenter.overview.tokensByModelPieHint","Top model token share in this range")})]}),s.jsx(kt,{data:D,ariaLabel:u("commandCenter.overview.tokensByModelPie","Token share by model")})]}):null,I.length>0?s.jsxs("div",{className:"card cc-overview-chart-card","data-testid":"command-center-overview-chart-tools",children:[s.jsxs("div",{className:"cc-overview-chart-header",children:[s.jsx("h3",{className:"cc-area-section-title",children:u("commandCenter.overview.toolCategories","Tool categories")}),s.jsx("p",{children:u("commandCenter.overview.toolCategoriesHint","Autonomous work grouped by tool family")})]}),s.jsx(Ze,{data:I,ariaLabel:u("commandCenter.overview.toolCategories","Tool categories")})]}):null,F.length>0?s.jsxs("div",{className:"card cc-overview-chart-card cc-overview-chart-card--trend","data-testid":"cc-overview-line",children:[s.jsxs("div",{className:"cc-overview-chart-header",children:[s.jsx("h3",{className:"cc-area-section-title",children:u("commandCenter.overview.dailyActivityLine","Daily activity line")}),s.jsx("p",{children:u("commandCenter.overview.dailyActivityLineHint","Messages, agents, and runs by day")})]}),s.jsx(cr,{series:V,ariaLabel:u("commandCenter.overview.dailyActivityLine","Daily activity line")})]}):null,F.length>0?s.jsxs("div",{className:"card cc-overview-chart-card cc-overview-chart-card--trend","data-testid":"command-center-overview-chart-activity",children:[s.jsxs("div",{className:"cc-overview-chart-header",children:[s.jsx("h3",{className:"cc-area-section-title",children:u("commandCenter.overview.dailyActivity","Daily activity trend")}),s.jsx("p",{children:u("commandCenter.overview.dailyActivityHint","Messages plus active agents per day")})]}),s.jsx(Kt,{values:F,ariaLabel:u("commandCenter.overview.dailyActivityAria","Daily activity trend")})]}):null]}):null,re]}):s.jsxs("div",{className:"cc-overview",children:[se,s.jsxs("div",{className:"cc-empty","data-testid":"command-center-empty",children:[s.jsx(bi,{size:28}),s.jsx("p",{children:u("commandCenter.empty","No usage data yet. Run some agents to populate the Dashboard.")})]}),re]})}function t2({tabId:e}){const{t}=le("app");return s.jsxs("div",{className:"cc-empty","data-testid":`command-center-placeholder-${e}`,children:[s.jsx(bi,{size:28}),s.jsx("p",{children:t("commandCenter.areaPending","This area renders once metrics data is available.")})]})}function B2({projectId:e,colorTheme:t="default",themeMode:r="system",shadcnCustomColors:n={},resolvedThemeMode:a=r==="light"?"light":"dark",onColorThemeChange:i=()=>{},onThemeModeChange:o=()=>{},onShadcnCustomColorsChange:l=()=>{},addToast:c=()=>{},nodesEnabled:d=!1,onChangeView:u}={}){const{t:m}=le("app"),h=J$(d),[v,y]=f.useState("overview"),[g,p]=f.useState(()=>Bh($h((w,P)=>P)[1])),b=f.useRef([]),j=f.useCallback(w=>{const P=(w+h.length)%h.length;y(h[P].id),b.current[P]?.focus()},[h]),x=f.useCallback((w,P)=>{switch(w.key){case"ArrowRight":case"ArrowDown":w.preventDefault(),j(P+1);break;case"ArrowLeft":case"ArrowUp":w.preventDefault(),j(P-1);break;case"Home":w.preventDefault(),j(0);break;case"End":w.preventDefault(),j(h.length-1);break;case"Enter":case" ":w.preventDefault(),y(h[P].id);break}},[j,h]);function C(){switch(v){case"overview":return s.jsx(e2,{range:g,projectId:e,colorTheme:t,themeMode:r,shadcnCustomColors:n,resolvedThemeMode:a,onColorThemeChange:i,onThemeModeChange:o,onShadcnCustomColorsChange:l,onChangeView:u});case"tokens":return s.jsx(iR,{range:g});case"tools":return s.jsx(sR,{range:g});case"activity":return s.jsx(bR,{range:g});case"productivity":return s.jsx(xR,{range:g});case"team":return s.jsx(OR,{range:g,projectId:e,addToast:c});case"workflows":return s.jsx(ER,{range:g});case"ecosystem":return s.jsx(_R,{range:g});case"github":return s.jsx(IR,{range:g});case"signals":return s.jsx(DR,{range:g});case"system":return s.jsx(HR,{});case"nodes":return s.jsx(H$,{addToast:c});case"reliability":return s.jsx(c$,{});case"mission-control":return s.jsx(n$,{});default:return s.jsx(t2,{tabId:v})}}return s.jsxs("section",{className:"command-center","data-testid":"command-center",children:[s.jsxs("header",{className:"cc-header",children:[s.jsxs("h2",{className:"cc-title",children:[s.jsx(bi,{size:20}),m("commandCenter.heading","Dashboard")]}),s.jsx(X0,{value:g,onChange:p})]}),s.jsx("div",{className:"cc-tablist",role:"tablist","aria-label":m("commandCenter.tablistLabel","Dashboard sections"),children:h.map((w,P)=>{const O=w.id===v;return s.jsx("button",{ref:k=>{b.current[P]=k},role:"tab",id:`cc-tab-${w.id}`,"aria-selected":O,"aria-controls":`cc-tabpanel-${w.id}`,tabIndex:O?0:-1,className:`cc-tab${O?" active":""}`,onClick:()=>y(w.id),onKeyDown:k=>x(k,P),"data-testid":`command-center-tab-${w.id}`,children:w.label},w.id)})}),s.jsx("div",{role:"tabpanel",id:`cc-tabpanel-${v}`,"aria-labelledby":`cc-tab-${v}`,tabIndex:0,className:"cc-tabpanel","data-testid":`command-center-panel-${v}`,children:C()})]})}export{B2 as CommandCenter};
71
+ `)}function $$({isOpen:e,onClose:t,onResolve:r,conflicts:n,localNodeName:a,remoteNodeName:i,addToast:o}){const{t:l}=le("app"),[c,d]=f.useState({}),[u,m]=f.useState(!1);f.useEffect(()=>{const b={};for(const j of n)c[j.key]||(b[j.key]={resolution:"local"});Object.keys(b).length>0&&d(j=>({...j,...b}))},[n,c]),f.useEffect(()=>{if(!e)return;const b=j=>{j.key==="Escape"&&(j.preventDefault(),t())};return document.addEventListener("keydown",b),()=>document.removeEventListener("keydown",b)},[e,t]);const h=f.useCallback((b,j)=>{d(x=>{const C=x[b]??{};return j==="manual"?{...x,[b]:{resolution:"manual",manualValue:C.manualValue??JSON.stringify(n.find(w=>w.key===b)?.localValue??null,null,2)}}:{...x,[b]:{resolution:j}}})},[n]),v=f.useCallback((b,j)=>{d(x=>({...x,[b]:{...x[b],resolution:"manual",manualValue:j}}))},[]),g=f.useCallback(b=>{const j={};for(const x of n)j[x.key]={resolution:b};d(j)},[n]),y=f.useCallback(async()=>{m(!0);try{const b=n.map(j=>{const x=c[j.key]??{resolution:"local"};let C;switch(x.resolution){case"remote":C=j.remoteValue;break;case"manual":try{C=JSON.parse(x.manualValue??"null")}catch{C=x.manualValue??null}break;case"local":default:C=j.localValue;break}return{key:j.key,value:C}});await r(b),o(l("settings.resolvedSuccess","Settings conflicts resolved successfully"),"success"),t()}catch(b){const j=b instanceof Error?b.message:l("settings.resolveFailed","Failed to resolve conflicts");o(j,"error")}finally{m(!1)}},[o,n,t,r,c]),p=f.useMemo(()=>{const b={};for(const j of n)b[j.key]=R$(j.localValue,j.remoteValue);return b},[n]);return!e||n.length===0?null:s.jsx("div",{className:"modal-overlay open",onClick:t,children:s.jsxs("div",{className:"modal modal-lg settings-sync-conflict-modal",onClick:b=>b.stopPropagation(),role:"dialog","aria-modal":"true","aria-label":l("settings.conflictModalTitle","Resolve Settings Conflicts"),children:[s.jsxs("div",{className:"modal-header",children:[s.jsx("h3",{children:l("settings.conflictModalTitle","Resolve Settings Conflicts")}),s.jsx("button",{className:"modal-close",onClick:t,"aria-label":l("settings.closeModal","Close conflict modal"),children:"×"})]}),s.jsxs("div",{className:"modal-body",children:[s.jsx("div",{className:"settings-sync-conflict-modal__conflict-list",children:n.map(b=>{const j=c[b.key]??{resolution:"local"},x=p[b.key];return s.jsxs("div",{className:"settings-sync-conflict-modal__conflict-item",children:[s.jsx("div",{className:"settings-sync-conflict-modal__key",children:b.key}),s.jsxs("div",{className:"settings-sync-conflict-modal__diff-panel",children:[s.jsxs("div",{className:"settings-sync-conflict-modal__diff-side",children:[s.jsx("div",{className:"settings-sync-conflict-modal__diff-label",children:a}),s.jsx("div",{className:"settings-sync-conflict-modal__diff-content",children:s.jsx("pre",{style:{margin:0,whiteSpace:"pre-wrap"},children:x})})]}),s.jsxs("div",{className:"settings-sync-conflict-modal__diff-side",children:[s.jsx("div",{className:"settings-sync-conflict-modal__diff-label",children:i}),s.jsx("div",{className:"settings-sync-conflict-modal__diff-content",children:s.jsx("pre",{style:{margin:0,whiteSpace:"pre-wrap"},children:x})})]})]}),s.jsxs("div",{className:"settings-sync-conflict-modal__resolution",children:[s.jsxs("label",{children:[s.jsx("input",{type:"radio",name:`resolution-${b.key}`,checked:j.resolution==="local",onChange:()=>h(b.key,"local")}),l("settings.keepLocal","Keep Local")]}),s.jsxs("label",{children:[s.jsx("input",{type:"radio",name:`resolution-${b.key}`,checked:j.resolution==="remote",onChange:()=>h(b.key,"remote")}),l("settings.keepRemote","Keep Remote")]}),s.jsxs("label",{children:[s.jsx("input",{type:"radio",name:`resolution-${b.key}`,checked:j.resolution==="manual",onChange:()=>h(b.key,"manual")}),l("settings.mergeManually","Merge Manually")]})]}),j.resolution==="manual"&&s.jsx("textarea",{className:"settings-sync-conflict-modal__manual-input",value:j.manualValue??"",onChange:C=>v(b.key,C.target.value),placeholder:l("settings.jsonPlaceholder","Enter JSON value...")})]},b.key)})}),s.jsxs("div",{className:"settings-sync-conflict-modal__bulk-actions",children:[s.jsx("button",{className:"btn btn-sm",onClick:()=>g("local"),type:"button",children:l("settings.resolveAllLocal","Resolve All: Keep Local")}),s.jsx("button",{className:"btn btn-sm",onClick:()=>g("remote"),type:"button",children:l("settings.resolveAllRemote","Resolve All: Keep Remote")})]})]}),s.jsxs("div",{className:"modal-actions settings-sync-conflict-modal__footer",children:[s.jsx("button",{className:"btn btn-sm",onClick:t,children:l("actions.cancel","Cancel")}),s.jsx("button",{className:"btn btn-primary btn-sm",onClick:y,disabled:u,children:u?l("settings.resolving","Resolving..."):l("actions.confirm","Confirm")})]})]})})}const ja={readWrite:"rw",readOnly:"ro",volume:"volume",bind:"bind"},xx=/(KEY|TOKEN|SECRET|PASSWORD)/i;function Mo(e){if(!e)return"—";const t=new Date(e);return Number.isNaN(t.getTime())?"—":t.toLocaleString()}function B$(e){if(!e)return"—";const t=new Date(e),r=Date.now();if(Number.isNaN(t.getTime())||t.getTime()>r)return"—";const n=Math.floor((r-t.getTime())/1e3);if(n<60)return`${n}s`;const a=Math.floor(n/60);if(a<60)return`${a}m`;const i=Math.floor(a/60);return i<24?`${i}h ${a%60}m`:`${Math.floor(i/24)}d ${i%24}h`}function F$(e){switch(e){case"synced":return"node-detail-modal__sync-dot--synced";case"diff":return"node-detail-modal__sync-dot--diff";case"error":return"node-detail-modal__sync-dot--error";case"pending":return"node-detail-modal__sync-dot--pending";case"never-synced":default:return"node-detail-modal__sync-dot--never"}}function z$(e){return e==="running"?"success":e==="creating"||e==="recreating"||e==="restarting"?"warning":"error"}function K$(e){return e?`${e.charAt(0).toUpperCase()}${e.slice(1)}`:"Unknown"}function V$(e){if(!e)return"—";try{const t=new URL(e);return t.port?t.port:t.protocol==="https:"?"443":t.protocol==="http:"?"80":"—"}catch{return"—"}}function q$(e,t){return xx.test(e)?"••••••••":t}function U$({isOpen:e,onClose:t,node:r,projects:n,onUpdate:a,onHealthCheck:i,addToast:o,syncStatus:l,onPushSettings:c,onPullSettings:d,onSyncAuth:u,syncHistory:m=[],onResolveConflicts:h,managedDockerNode:v,containerStatus:g,onFetchContainerStatus:y,onFetchLogs:p,onUpdateDockerConfig:b,onFetchDockerConfigDiff:j}){const{t:x}=le("app"),C=f.useRef(!0),[w,P]=f.useState(!1),[O,k]=f.useState(""),[N,S]=f.useState(""),[A,_]=f.useState(""),[I,D]=f.useState(2),[F,V]=f.useState(!1),[q,te]=f.useState(!1),[U,ee]=f.useState(!1),[L,B]=f.useState(!1),[X,Q]=f.useState(null),[G,ie]=f.useState(!1),[se]=f.useState([]),[re,W]=f.useState(g),[$,ne]=f.useState(!1),[we,z]=f.useState(!1),[fe,be]=f.useState(""),[ye,nt]=f.useState(!1),[ur,E]=f.useState(!1),[T,J]=f.useState(r?.dockerConfig??null),[dt,dr]=f.useState({}),[na,uu]=f.useState(!1),[jx,du]=f.useState(!1);f.useEffect(()=>(C.current=!0,()=>{C.current=!1}),[]),f.useEffect(()=>{W(g)},[g]),f.useEffect(()=>{if(!r||!e){P(!1),z(!1),be("");return}k(r.name),S(r.url??""),_(r.apiKey??""),D(r.maxConcurrent),P(!1),J(r.dockerConfig??null),E(!1),dr({})},[e,r]),f.useEffect(()=>{if(!e)return;const R=ae=>{ae.key==="Escape"&&(ae.preventDefault(),t())};return document.addEventListener("keydown",R),()=>document.removeEventListener("keydown",R)},[e,t]);const ls=f.useMemo(()=>r?oj(n,r):[],[r,n]),wx=f.useMemo(()=>v?v.hostConfig.type==="remote"?v.hostConfig.host??"—":x("nodes.localDocker","Local Docker"):"—",[v,x]),Cx=f.useMemo(()=>!v?.resourceSizing?.cpuLimit&&!v?.resourceSizing?.memoryLimit?x("nodes.dockerResourceDefault","Default"):`${v.resourceSizing?.cpuLimit??x("nodes.dockerDefaultCpu","Default CPU")} / ${v.resourceSizing?.memoryLimit??x("nodes.dockerDefaultMemory","Default memory")}`,[v,x]),kx=f.useCallback(async()=>{if(r)try{if(await i(r.id),!C.current)return;o(x("nodes.healthCheckSuccess","Health check completed for {{name}}",{name:r.name}),"success")}catch(R){if(!C.current)return;const ae=R instanceof Error?R.message:x("nodes.healthCheckFailed","Health check failed");o(ae,"error")}},[o,r,i]),Px=f.useCallback(async()=>{if(!(!r||!c)){Q(null),te(!0);try{if(await c(r.id),!C.current)return;o(x("nodes.pushSettingsSuccess","Settings pushed successfully"),"success")}catch(R){if(!C.current)return;const ae=R instanceof Error?R.message:x("nodes.pushSettingsFailed","Push settings failed");Q(ae),o(ae,"error")}finally{C.current&&te(!1)}}},[o,r,c]),Sx=f.useCallback(async()=>{if(!(!r||!d)){Q(null),ee(!0);try{if(await d(r.id),!C.current)return;o(x("nodes.pullSettingsSuccess","Settings pulled successfully"),"success")}catch(R){if(!C.current)return;const ae=R instanceof Error?R.message:x("nodes.pullSettingsFailed","Pull settings failed");Q(ae),o(ae,"error")}finally{C.current&&ee(!1)}}},[o,r,d]),Nx=f.useCallback(async()=>{if(!(!r||!u)){Q(null),B(!0);try{if(await u(r.id),!C.current)return;o(x("nodes.syncAuthSuccess","Auth credentials synced successfully"),"success")}catch(R){if(!C.current)return;const ae=R instanceof Error?R.message:x("nodes.syncAuthFailed","Auth sync failed");Q(ae),o(ae,"error")}finally{C.current&&B(!1)}}},[o,r,u]),Ox=f.useCallback(()=>{Q(null)},[]),Ax=f.useCallback(async()=>{if(!(!v||!y)){ne(!0);try{const R=await y(v.id);if(!C.current)return;W(R)}catch(R){const ae=R instanceof Error?R.message:x("nodes.fetchContainerStatusFailed","Failed to fetch container status");o(ae,"error")}finally{C.current&&ne(!1)}}},[o,v,y]),Ex=f.useCallback(async()=>{if(!(!v||!p)){z(!0),nt(!0);try{const R=await p(v.id);if(!C.current)return;be(R)}catch(R){if(!C.current)return;be("");const ae=R instanceof Error?R.message:x("nodes.fetchContainerLogsFailed","Failed to fetch container logs");o(ae,"error")}finally{C.current&&nt(!1)}}},[o,v,p]),_x=f.useCallback(async()=>{if(!r||F)return;const R=O.trim();if(!R){o(x("nodes.nameRequired","Name is required"),"error");return}if(r.type==="remote"&&!N.trim()){o(x("nodes.urlRequired","URL is required for remote nodes"),"error");return}if(!Number.isFinite(I)||I<1){o(x("nodes.concurrencyMin","Concurrency must be at least 1"),"error");return}V(!0);try{await a(r.id,{name:R,url:r.type==="remote"&&N.trim()||void 0,apiKey:r.type==="remote"&&A||void 0,maxConcurrent:I}),o(x("nodes.updateSuccess","Updated {{name}}",{name:R}),"success"),P(!1)}catch(ae){const Ze=ae instanceof Error?ae.message:x("nodes.updateFailed","Failed to update node");o(Ze,"error")}finally{V(!1)}},[o,A,F,I,O,r,a,N]);f.useEffect(()=>{!r?.dockerConfig||!j||!e||j(r.id).then(R=>{C.current&&du(R.needsRecreate)}).catch(()=>{C.current&&du(!1)})},[e,r,j]);const Mx=f.useCallback(async()=>{if(!(!r||!T||!b||na)){uu(!0);try{const R=await b(r.id,{image:T.image,volumeMounts:T.volumeMounts,environment:T.environment,resources:T.resources,host:T.host,extraClis:T.extraClis,persistence:T.persistence,containerName:T.containerName});if(!C.current)return;J(R),o(x("nodes.dockerConfigSaveSuccess","Docker config saved"),"success")}catch(R){if(!C.current)return;const ae=R instanceof Error?R.message:x("nodes.dockerConfigSaveFailed","Failed to save Docker config");o(ae,"error")}finally{C.current&&uu(!1)}}},[o,T,na,r,b]),Tx=f.useCallback(()=>{r&&(k(r.name),S(r.url??""),_(r.apiKey??""),D(r.maxConcurrent),P(!1))},[r]);if(!e||!r)return null;const Jt=re?.status??v?.status,Ix=z$(Jt);return s.jsxs("div",{className:"modal-overlay open",onClick:t,children:[s.jsxs("div",{className:"modal modal-lg node-detail-modal",onClick:R=>R.stopPropagation(),role:"dialog","aria-modal":"true","aria-label":x("nodes.modalAriaLabel","Node details for {{name}}",{name:r.name}),children:[s.jsxs("div",{className:"modal-header",children:[s.jsx("h3",{children:x("nodes.modalTitle","Node Details")}),s.jsx("button",{className:"modal-close",onClick:t,"aria-label":x("nodes.closeModalAriaLabel","Close node detail modal"),children:"×"})]}),s.jsxs("div",{className:"modal-body node-detail-modal__body",children:[s.jsxs("section",{className:"node-detail-modal__section",children:[s.jsxs("div",{className:"node-detail-modal__section-header",children:[s.jsx("h4",{children:x("nodes.sectionOverview","Overview")}),!w&&s.jsxs("button",{className:"btn btn-sm",onClick:()=>P(!0),children:[s.jsx(lj,{size:14}),x("nodes.editButton","Edit")]})]}),s.jsxs("div",{className:"node-detail-modal__grid",children:[s.jsxs("label",{className:"node-detail-modal__field",children:[s.jsx("span",{children:x("nodes.fieldName","Name")}),w?s.jsx("input",{className:"input",value:O,onChange:R=>k(R.target.value),disabled:F}):s.jsx("strong",{children:r.name})]}),s.jsxs("div",{className:"node-detail-modal__field",children:[s.jsx("span",{children:x("nodes.fieldType","Type")}),s.jsx("strong",{children:r.type==="local"?x("nodes.typeLocal","Local"):x("nodes.typeRemote","Remote")})]}),s.jsxs("div",{className:"node-detail-modal__field",children:[s.jsx("span",{children:x("nodes.fieldStatus","Status")}),s.jsx("strong",{children:r.status})]}),s.jsxs("label",{className:"node-detail-modal__field",children:[s.jsx("span",{children:x("nodes.fieldMaxConcurrent","Max Concurrent")}),w?s.jsx("input",{className:"input",type:"number",min:1,max:10,value:I,onChange:R=>D(Number(R.target.value)),disabled:F}):s.jsx("strong",{children:r.maxConcurrent})]}),r.type==="remote"&&s.jsxs(s.Fragment,{children:[s.jsxs("label",{className:"node-detail-modal__field node-detail-modal__field--full",children:[s.jsx("span",{children:x("nodes.fieldUrl","URL")}),w?s.jsx("input",{className:"input",value:N,onChange:R=>S(R.target.value),disabled:F}):s.jsx("strong",{children:r.url??"—"})]}),s.jsxs("label",{className:"node-detail-modal__field node-detail-modal__field--full",children:[s.jsx("span",{children:x("nodes.fieldApiKey","API Key")}),w?s.jsx("input",{className:"input",type:"password",value:A,onChange:R=>_(R.target.value),placeholder:x("nodes.apiKeyPlaceholder","Leave blank to keep unchanged"),disabled:F}):s.jsx("strong",{children:r.apiKey?"••••••••":x("nodes.apiKeyNotConfigured","Not configured")})]})]}),s.jsxs("div",{className:"node-detail-modal__field",children:[s.jsx("span",{children:x("nodes.fieldCreated","Created")}),s.jsx("strong",{children:Mo(r.createdAt)})]}),s.jsxs("div",{className:"node-detail-modal__field",children:[s.jsx("span",{children:x("nodes.fieldUpdated","Updated")}),s.jsx("strong",{children:Mo(r.updatedAt)})]})]}),w&&s.jsxs("div",{className:"node-detail-modal__edit-actions",children:[s.jsxs("button",{className:"btn btn-primary btn-sm",onClick:_x,disabled:F,children:[s.jsx(pu,{size:14}),F?x("nodes.saving","Saving..."):x("nodes.saveButton","Save")]}),s.jsxs("button",{className:"btn btn-sm",onClick:Tx,disabled:F,children:[s.jsx(wa,{size:14}),x("nodes.cancelButton","Cancel")]})]})]}),s.jsxs("section",{className:"node-detail-modal__section",children:[s.jsxs("h4",{children:[r.type==="local"?x("nodes.sectionProjects","Projects"):x("nodes.sectionAssignedProjects","Assigned Projects")," (",ls.length,")"]}),ls.length===0?s.jsx("p",{className:"node-detail-modal__empty",children:r.type==="local"?x("nodes.noProjectsRunning","No projects are running on this node."):x("nodes.noProjectsAssigned","No projects are assigned to this node.")}):s.jsx("ul",{className:"node-detail-modal__project-list",children:ls.map(R=>s.jsxs("li",{className:"node-detail-modal__project-item",children:[s.jsx("span",{children:R.name}),s.jsx("code",{children:R.id})]},R.id))})]}),s.jsxs("section",{className:"node-detail-modal__section",children:[s.jsx("h4",{children:x("nodes.sectionHealth","Health")}),s.jsxs("div",{className:"node-detail-modal__health-row",children:[s.jsxs("span",{children:[x("nodes.healthStatus","Status:")," ",s.jsx("strong",{children:r.status})]}),s.jsxs("span",{children:[x("nodes.healthLastCheck","Last check:")," ",s.jsx("strong",{children:Mo(r.updatedAt)})]})]})]}),T&&s.jsxs("section",{className:"node-detail-modal__section node-detail-modal__docker-config",children:[s.jsxs("button",{className:"btn btn-sm node-detail-modal__docker-toggle",onClick:()=>E(R=>!R),"aria-expanded":ur,children:[s.jsx(xi,{size:14,className:ur?"node-detail-modal__docker-toggle-icon--expanded":""}),x("nodes.dockerConfiguration","Docker Configuration")]}),ur&&s.jsxs("div",{className:"node-detail-modal__docker-config-content",children:[s.jsx("div",{className:"node-detail-modal__grid",children:s.jsxs("label",{className:"node-detail-modal__field node-detail-modal__field--full",children:[s.jsx("span",{children:x("nodes.dockerFieldImage","Image")}),s.jsx("input",{className:"input",value:T.image,onChange:R=>J({...T,image:R.target.value})})]})}),s.jsxs("details",{children:[s.jsx("summary",{children:x("nodes.dockerVolumeMounts","Volume Mounts")}),s.jsxs("div",{className:"node-detail-modal__docker-list",children:[T.volumeMounts.map((R,ae)=>s.jsxs("div",{className:"node-detail-modal__docker-row",children:[s.jsx("input",{className:"input",value:R.hostPath,placeholder:x("nodes.dockerHostPath","Host path"),onChange:Ze=>{const ce=[...T.volumeMounts];ce[ae]={...ce[ae],hostPath:Ze.target.value},J({...T,volumeMounts:ce})}}),s.jsx("input",{className:"input",value:R.containerPath,placeholder:x("nodes.dockerContainerPath","Container path"),onChange:Ze=>{const ce=[...T.volumeMounts];ce[ae]={...ce[ae],containerPath:Ze.target.value},J({...T,volumeMounts:ce})}}),s.jsxs("select",{className:"input",value:R.mode??"rw",onChange:Ze=>{const ce=[...T.volumeMounts];ce[ae]={...ce[ae],mode:Ze.target.value},J({...T,volumeMounts:ce})},children:[s.jsx("option",{value:"rw",children:ja.readWrite}),s.jsx("option",{value:"ro",children:ja.readOnly})]}),s.jsxs("select",{className:"input",value:R.type??"volume",onChange:Ze=>{const ce=[...T.volumeMounts];ce[ae]={...ce[ae],type:Ze.target.value},J({...T,volumeMounts:ce})},children:[s.jsx("option",{value:"volume",children:ja.volume}),s.jsx("option",{value:"bind",children:ja.bind})]}),s.jsx("button",{className:"btn btn-sm",onClick:()=>J({...T,volumeMounts:T.volumeMounts.filter((Ze,ce)=>ce!==ae)}),children:x("nodes.removeButton","Remove")})]},`${R.hostPath}-${R.containerPath}-${ae}`)),s.jsx("button",{className:"btn btn-sm",onClick:()=>J({...T,volumeMounts:[...T.volumeMounts,{hostPath:"",containerPath:"",mode:"rw",type:"volume"}]}),children:x("nodes.addMountButton","Add Mount")})]})]}),s.jsxs("details",{children:[s.jsx("summary",{children:x("nodes.dockerEnvVars","Environment Variables")}),s.jsxs("div",{className:"node-detail-modal__docker-list",children:[Object.entries(T.environment).map(([R,ae])=>{const Ze=xx.test(R)&&!dt[R];return s.jsxs("div",{className:"node-detail-modal__docker-row",children:[s.jsx("input",{className:"input",value:R,onChange:ce=>{const cs={...T.environment};delete cs[R],cs[ce.target.value]=ae,J({...T,environment:cs})}}),s.jsx("input",{className:"input",value:Ze?"***":String(ae),onChange:ce=>J({...T,environment:{...T.environment,[R]:ce.target.value}})}),s.jsx("button",{className:"btn btn-sm",onClick:()=>dr(ce=>({...ce,[R]:!ce[R]})),children:dt[R]?s.jsx(cj,{size:14}):s.jsx(uj,{size:14})}),s.jsx("button",{className:"btn btn-sm",onClick:()=>{const ce={...T.environment};delete ce[R],J({...T,environment:ce})},children:x("nodes.removeButton","Remove")})]},R)}),s.jsx("button",{className:"btn btn-sm",onClick:()=>{const R=`NEW_VAR_${Object.keys(T.environment).length+1}`;J({...T,environment:{...T.environment,[R]:""}})},children:x("nodes.addVariableButton","Add Variable")})]})]}),s.jsxs("details",{children:[s.jsx("summary",{children:x("nodes.dockerResources","Resources")}),s.jsxs("div",{className:"node-detail-modal__docker-stack",children:[s.jsx("input",{className:"input",type:"number",placeholder:x("nodes.dockerMemoryBytes","Memory bytes (2 GB = 2147483648)"),value:T.resources?.memoryBytes??"",onChange:R=>J({...T,resources:{...T.resources,memoryBytes:R.target.value?Number(R.target.value):void 0}})}),s.jsx("input",{className:"input",type:"number",placeholder:x("nodes.dockerCpuCount","CPU count"),value:T.resources?.cpuCount??"",onChange:R=>J({...T,resources:{...T.resources,cpuCount:R.target.value?Number(R.target.value):void 0}})}),s.jsx("input",{className:"input",type:"number",placeholder:x("nodes.dockerPidsLimit","PIDs limit"),value:T.resources?.pidsLimit??"",onChange:R=>J({...T,resources:{...T.resources,pidsLimit:R.target.value?Number(R.target.value):void 0}})})]})]}),s.jsxs("details",{children:[s.jsx("summary",{children:x("nodes.dockerHostConfig","Host Config")}),s.jsxs("div",{className:"node-detail-modal__docker-stack",children:[s.jsx("input",{className:"input",placeholder:x("nodes.dockerContextName","Context name"),value:T.host?.contextName??"",onChange:R=>J({...T,host:{...T.host,contextName:R.target.value}})}),s.jsx("input",{className:"input",placeholder:x("nodes.dockerHostUrl","Docker host URL"),value:T.host?.dockerHost??"",onChange:R=>J({...T,host:{...T.host,dockerHost:R.target.value}})}),s.jsx("input",{className:"input",placeholder:x("nodes.dockerTlsCaCert","TLS CA cert path"),value:T.host?.tlsCaCert??"",onChange:R=>J({...T,host:{...T.host,tlsCaCert:R.target.value}})}),s.jsx("input",{className:"input",placeholder:x("nodes.dockerTlsCert","TLS cert path"),value:T.host?.tlsCert??"",onChange:R=>J({...T,host:{...T.host,tlsCert:R.target.value}})}),s.jsx("input",{className:"input",placeholder:x("nodes.dockerTlsKey","TLS key path"),value:T.host?.tlsKey??"",onChange:R=>J({...T,host:{...T.host,tlsKey:R.target.value}})}),s.jsxs("label",{className:"node-detail-modal__checkbox",children:[s.jsx("input",{type:"checkbox",checked:T.host?.tlsVerify??!0,onChange:R=>J({...T,host:{...T.host,tlsVerify:R.target.checked}})}),x("nodes.dockerTlsVerify","TLS verify")]})]})]}),s.jsxs("details",{children:[s.jsx("summary",{children:x("nodes.dockerExtraClis","Extra CLIs")}),s.jsxs("div",{className:"node-detail-modal__docker-list",children:[(T.extraClis??[]).map((R,ae)=>s.jsxs("div",{className:"node-detail-modal__docker-row",children:[s.jsx("input",{className:"input",value:R,onChange:Ze=>{const ce=[...T.extraClis??[]];ce[ae]=Ze.target.value,J({...T,extraClis:ce})}}),s.jsx("button",{className:"btn btn-sm",onClick:()=>J({...T,extraClis:(T.extraClis??[]).filter((Ze,ce)=>ce!==ae)}),children:x("nodes.removeButton","Remove")})]},`${R}-${ae}`)),s.jsx("button",{className:"btn btn-sm",onClick:()=>J({...T,extraClis:[...T.extraClis??[],""]}),children:x("nodes.addCliButton","Add CLI")})]})]}),s.jsxs("details",{children:[s.jsx("summary",{children:x("nodes.dockerPersistence","Persistence")}),s.jsxs("div",{className:"node-detail-modal__docker-stack",children:[s.jsx("input",{className:"input",placeholder:x("nodes.dockerVolumeName","Volume name"),value:T.persistence?.volumeName??"",onChange:R=>J({...T,persistence:{...T.persistence,volumeName:R.target.value}})}),s.jsxs("label",{className:"node-detail-modal__checkbox",children:[s.jsx("input",{type:"checkbox",checked:T.persistence?.retainOnDelete??!1,onChange:R=>J({...T,persistence:{...T.persistence,retainOnDelete:R.target.checked}})}),x("nodes.dockerRetainOnDelete","Retain on delete")]})]})]}),s.jsxs("div",{className:"node-detail-modal__docker-meta",children:[s.jsx("span",{children:x("nodes.dockerConfigMeta","Config v{{version}} • Updated {{updated}}",{version:T.configVersion,updated:Sl(T.lastUpdated??r.updatedAt)})}),jx&&s.jsx("span",{className:"node-detail-modal__docker-recreate",children:x("nodes.dockerNeedsRecreate","Needs Recreate")})]}),s.jsxs("button",{className:"btn btn-primary btn-sm",onClick:()=>void Mx(),disabled:na,children:[s.jsx(pu,{size:14}),na?x("nodes.saving","Saving..."):x("nodes.saveDockerConfig","Save Docker Config")]})]})]}),v&&s.jsxs("section",{className:"node-detail-modal__section docker-management",children:[s.jsx("h4",{children:x("nodes.sectionDockerManagement","Docker Management")}),s.jsxs("div",{className:"docker-management__status-card",children:[s.jsxs("div",{className:"docker-management__status-row",children:[s.jsx("span",{className:`docker-management__status-dot docker-management__status-dot--${Ix}`,"aria-hidden":!0}),s.jsx("strong",{children:Jt?K$(Jt):x("nodes.dockerStatusUnknown","Unknown")}),(Jt==="creating"||Jt==="recreating"||Jt==="restarting")&&s.jsx(yu,{size:14,className:"spin","aria-hidden":!0})]}),s.jsxs("div",{className:"docker-management__status-meta",children:[Jt==="running"&&s.jsxs("span",{children:[x("nodes.dockerUptime","Uptime:")," ",B$(re?.startedAt)]}),Jt!=="running"&&re?.exitCode!==void 0&&s.jsxs("span",{children:[x("nodes.dockerExitCode","Exit code:")," ",re.exitCode]}),(re?.error||v.errorMessage)&&s.jsx("span",{children:re?.error??v.errorMessage})]}),s.jsx("button",{className:"btn btn-sm",onClick:()=>void Ax(),disabled:!y||$,children:$?x("nodes.refreshing","Refreshing..."):x("nodes.refreshStatus","Refresh Status")})]}),s.jsxs("div",{className:"node-detail-modal__grid docker-management__info-grid",children:[s.jsxs("div",{className:"node-detail-modal__field",children:[s.jsx("span",{children:x("nodes.dockerFieldImage","Image")}),s.jsx("strong",{children:s.jsxs("code",{children:[v.imageName,":",v.imageTag]})})]}),s.jsxs("div",{className:"node-detail-modal__field",children:[s.jsx("span",{children:x("nodes.dockerContainerId","Container ID")}),s.jsx("strong",{children:s.jsx("code",{children:v.containerId?v.containerId.slice(0,12):"—"})})]}),s.jsxs("div",{className:"node-detail-modal__field",children:[s.jsx("span",{children:x("nodes.dockerHostLabel","Host")}),s.jsx("strong",{children:wx})]}),s.jsxs("div",{className:"node-detail-modal__field",children:[s.jsx("span",{children:x("nodes.dockerPersistentStorage","Persistent Storage")}),s.jsx("strong",{children:v.persistentStorage?x("nodes.yes","Yes"):x("nodes.no","No")})]}),s.jsxs("div",{className:"node-detail-modal__field",children:[s.jsx("span",{children:x("nodes.dockerPort","Port")}),s.jsx("strong",{children:V$(v.reachableUrl)})]}),s.jsxs("div",{className:"node-detail-modal__field",children:[s.jsx("span",{children:x("nodes.dockerResourceSizing","Resource Sizing")}),s.jsx("strong",{children:Cx})]})]}),s.jsxs("div",{className:"docker-management__actions",children:[s.jsxs("button",{className:"btn btn-sm",disabled:!0,title:x("nodes.availableSoon","Available after FN-3113"),children:[s.jsx(Il,{size:14}),x("nodes.startButton","Start")]}),s.jsxs("button",{className:"btn btn-sm",disabled:!0,title:x("nodes.availableSoon","Available after FN-3113"),children:[s.jsx(dh,{size:14}),x("nodes.stopButton","Stop")]}),s.jsxs("button",{className:"btn btn-sm",disabled:!0,title:x("nodes.availableSoon","Available after FN-3113"),children:[s.jsx(yu,{size:14}),x("nodes.restartButton","Restart")]}),s.jsxs("button",{className:"btn btn-sm",onClick:()=>void Ex(),disabled:!p,children:[s.jsx(dj,{size:14}),x("nodes.viewLogsButton","View Logs")]})]}),we&&s.jsxs("div",{className:"docker-management__log-viewer",children:[s.jsxs("div",{className:"docker-management__log-viewer-header",children:[s.jsx("strong",{children:x("nodes.containerLogs","Container Logs")}),s.jsx("button",{className:"btn-icon",onClick:()=>z(!1),"aria-label":x("nodes.closeLogsAriaLabel","Close logs"),children:s.jsx(wa,{size:14})})]}),ye?s.jsx("p",{children:x("nodes.fetchingLogs","Fetching logs...")}):s.jsx("pre",{children:fe.trim()||x("nodes.noLogsAvailable","No logs available")})]}),s.jsxs("details",{children:[s.jsx("summary",{children:x("nodes.dockerEnvVars","Environment Variables")}),s.jsx("dl",{className:"docker-management__env-list",children:Object.entries(v.envVars).map(([R,ae])=>s.jsxs("div",{children:[s.jsx("dt",{children:R}),s.jsx("dd",{children:q$(R,ae)})]},R))})]}),s.jsxs("details",{children:[s.jsx("summary",{children:x("nodes.dockerVolumeMounts","Volume Mounts")}),s.jsx("ul",{className:"docker-management__mounts-list",children:v.volumeMounts.map(R=>s.jsxs("li",{children:[s.jsxs("span",{children:[R.hostPath," → ",R.containerPath]}),R.readOnly&&s.jsx("span",{className:"node-card__type-badge",children:x("nodes.readOnly","Read-only")})]},`${R.hostPath}:${R.containerPath}`))})]})]}),r.type==="remote"&&s.jsxs("section",{className:"node-detail-modal__section",children:[s.jsx("h4",{children:x("nodes.sectionSettingsSync","Settings Sync")}),l&&s.jsxs("div",{className:"node-detail-modal__sync-status",children:[s.jsx("span",{className:`node-detail-modal__sync-dot ${F$(l.syncState)}`,"aria-hidden":!0}),s.jsxs("span",{children:[x("nodes.syncLastSync","Last sync:")," ",s.jsx("strong",{children:l.lastSyncAt?Sl(l.lastSyncAt):x("nodes.syncNeverSynced","Never synced")})]}),l.diffCount>0&&s.jsxs("span",{className:"node-detail-modal__sync-diff",children:[x("nodes.syncDifferences","Differences:")," ",s.jsx("strong",{children:l.diffCount})]})]}),s.jsxs("div",{className:"node-detail-modal__sync-actions",children:[s.jsxs("button",{className:"btn btn-sm",onClick:Px,disabled:q||!c,children:[s.jsx(bh,{size:14}),q?x("nodes.pushing","Pushing..."):x("nodes.pushSettings","Push Settings")]}),s.jsxs("button",{className:"btn btn-sm",onClick:Sx,disabled:U||!d,children:[s.jsx(fh,{size:14}),U?x("nodes.pulling","Pulling..."):x("nodes.pullSettings","Pull Settings")]}),s.jsxs("button",{className:"btn btn-sm",onClick:Nx,disabled:L||!u,children:[s.jsx(ch,{size:14}),L?x("nodes.syncing","Syncing..."):x("nodes.syncAuth","Sync Auth")]})]}),X&&s.jsxs("div",{className:"node-detail-modal__sync-error",children:[s.jsx("span",{children:X}),s.jsx("button",{className:"node-detail-modal__sync-error-dismiss",onClick:Ox,"aria-label":x("nodes.dismissError","Dismiss error"),children:s.jsx(wa,{size:14})})]})]}),r.type==="remote"&&s.jsxs("section",{className:"node-detail-modal__section",children:[s.jsx("h4",{children:x("nodes.sectionSyncHistory","Sync History")}),s.jsx(L$,{nodeId:r.id,entries:m,singleNode:!0})]})]}),s.jsxs("div",{className:"modal-actions node-detail-modal__actions",children:[s.jsxs("button",{className:"btn btn-sm",onClick:kx,children:[s.jsx(uh,{size:14}),x("nodes.healthCheckButton","Health Check")]}),s.jsx("button",{className:"btn btn-sm",onClick:t,children:x("nodes.closeButton","Close")})]})]}),r.type==="remote"&&s.jsx($$,{isOpen:G,onClose:()=>ie(!1),onResolve:h??(async()=>{}),conflicts:se,localNodeName:x("nodes.localNodeName","Local"),remoteNodeName:r.name,addToast:o})]})}const W$=15e3,H$=1e3;function G$(){const[e,t]=f.useState([]),[r,n]=f.useState(!0),[a,i]=f.useState(null),o=f.useRef(null),l=f.useRef(0),c=f.useRef(e),d=sh();f.useEffect(()=>{c.current=e},[e]);const u=f.useCallback(y=>c.current.length>0&&oh(y,d.wasRecentlyHidden()),[d]),m=f.useCallback(async()=>{try{i(null);const y=await gu();t(y)}catch(y){const p=y instanceof Error?y.message:"Failed to fetch managed Docker nodes";u(p)||i(p)}},[u]);f.useEffect(()=>{let y=!1;async function p(){n(!0);try{const j=await gu();y||(t(j),i(null))}catch(j){const x=j instanceof Error?j.message:"Failed to fetch managed Docker nodes";!y&&!u(x)&&i(x)}finally{y||n(!1)}}p();const b=()=>{if(document.visibilityState!=="visible")return;const j=Date.now(),x=j-l.current;if(x<H$){Aa({view:"useManagedDockerNodes",trigger:"visibility",projectId:void 0,replayAttempted:!1,reason:"debounce-skipped",detail:{timeSinceLastRefreshMs:x}});return}l.current=j,Aa({view:"useManagedDockerNodes",trigger:"visibility",projectId:void 0,replayAttempted:!1,reason:"debounced-refresh"}),m()};return document.addEventListener("visibilitychange",b),()=>{y=!0,document.removeEventListener("visibilitychange",b)}},[m,u]),f.useEffect(()=>{if(!r)return o.current=setInterval(()=>{m()},W$),()=>{o.current&&(clearInterval(o.current),o.current=null)}},[r,m]);const h=f.useCallback(async y=>fj(y),[]),v=f.useCallback(async(y,p)=>(await mj(y,p)).logs,[]),g=f.useCallback(async y=>{const p=await vj(y),b={...p,nodeId:p.nodeId??void 0,containerId:p.containerId??void 0,status:p.status,hostConfig:{type:p.hostConfig.host||p.hostConfig.context?"remote":"local",host:p.hostConfig.host,context:p.hostConfig.context},reachableUrl:p.reachableUrl??void 0,volumeMounts:p.volumeMounts.map(j=>({hostPath:j.hostPath,containerPath:j.containerPath,readOnly:j.mode==="ro"?!0:void 0})),persistentStorage:p.persistentStorage,resourceSizing:{cpuLimit:p.resourceSizing.cpus!==void 0?String(p.resourceSizing.cpus):void 0,memoryLimit:p.resourceSizing.memoryMB!==void 0?`${p.resourceSizing.memoryMB}MB`:void 0},errorMessage:p.errorMessage??void 0};return t(j=>[...j,b]),b},[]);return{dockerNodes:e,loading:r,error:a,refresh:m,getContainerStatus:h,getLogs:v,create:g}}function X$({addToast:e,onClose:t}){const{t:r}=le("app"),{nodes:n,loading:a,error:i,refresh:o,register:l,update:c,unregister:d,healthCheck:u,patchDockerConfig:m,fetchDockerDiff:h,discoverRemoteProjects:v}=ih(),{projects:g,refresh:y}=hj(),{meshState:p,loading:b,error:j}=y$(),{syncStatusMap:x,pushSettings:C,pullSettings:w,syncAuth:P,trackNode:O,getAuthSyncState:k,getAuthProviders:N}=v$(),{dockerNodes:S,loading:A,refresh:_,getContainerStatus:I,getLogs:D,create:F}=G$(),[V,q]=f.useState(!1),[te,U]=f.useState(!1),[ee,L]=f.useState(null);f.useEffect(()=>{const $=n.filter(ne=>ne.type==="remote");for(const ne of $)O(ne.id)},[n,O]),f.useEffect(()=>{if(!ee)return;const $=n.find(ne=>ne.id===ee.id)??null;L($)},[n,ee]);const B=f.useMemo(()=>{const $=n.length,ne=n.filter(ye=>ye.status==="online").length,we=n.filter(ye=>ye.status==="offline"||ye.status==="error").length,z=n.filter(ye=>ye.type==="remote").length,fe=n.filter(ye=>ye.type==="remote"&&x[ye.id]&&Eo(x[ye.id]).syncState==="synced").length,be=S.length;return{total:$,online:ne,offline:we,remote:z,synced:fe,docker:be}},[S.length,n,x]),X=f.useCallback(async $=>{await l($),await y()},[y,l]),Q=f.useCallback(async $=>{try{await F($),e(r("nodes.dockerNodeCreated",'Docker node "{{name}}" created',{name:$.name}),"success"),U(!1)}catch(ne){const we=ne instanceof Error?ne.message:r("nodes.failedCreateDocker","Failed to create Docker node");throw e(we,"error"),ne}},[e,F,r]),G=f.useMemo(()=>{const $=new Map;for(const ne of S)ne.nodeId&&$.set(ne.nodeId,ne);return $},[S]),ie=f.useCallback(async()=>{try{await Promise.all([o(),_()])}catch{e(r("nodes.failedRefresh","Failed to refresh nodes"),"error")}},[e,o,_,r]),se=f.useCallback(async $=>{try{await u($),e(r("nodes.healthCheckComplete","Node health check complete"),"success")}catch(ne){const we=ne instanceof Error?ne.message:r("nodes.healthCheckFailed","Health check failed");e(we,"error")}},[e,u,r]),re=f.useCallback(async $=>{try{await d($),e(r("nodes.removed","Node removed"),"success"),ee?.id===$&&L(null)}catch(ne){const we=ne instanceof Error?ne.message:r("nodes.failedRemove","Failed to remove node");e(we,"error")}},[e,ee?.id,d,r]),W=f.useCallback(async($,ne)=>{await c($,ne)},[c]);return s.jsxs("div",{className:"nodes-view","data-testid":"nodes-view",children:[s.jsxs("div",{className:"nodes-view-header",children:[s.jsxs("div",{className:"nodes-view-title",children:[s.jsxs("h2",{children:[s.jsx(lh,{size:20}),r("nodes.heading","Nodes")]}),s.jsx("span",{className:"nodes-view-count",children:r("nodes.registeredCount","{{count}} registered",{count:n.length})})]}),s.jsxs("div",{className:"nodes-view-actions",children:[t?s.jsx("button",{className:"btn-icon nodes-view-close",onClick:t,"aria-label":r("nodes.closeAriaLabel","Close nodes view"),children:s.jsx(wa,{size:16})}):null,s.jsxs("button",{className:"btn btn-sm",onClick:()=>void ie(),disabled:a||A,children:[s.jsx(Gr,{size:14,className:a?"spin":""}),r("nodes.refresh","Refresh")]}),s.jsxs("button",{className:"btn btn-sm",onClick:()=>q(!0),children:[s.jsx(Ea,{size:14}),r("nodes.addNode","Add Node")]}),s.jsxs("button",{className:"btn btn-sm",onClick:()=>U(!0),title:r("nodes.addDockerNodeTitle","Add a managed Docker node"),children:[s.jsx(Io,{size:14}),r("nodes.addDockerNode","Add Docker Node")]})]})]}),s.jsxs("div",{className:"nodes-view-stats",children:[s.jsxs("div",{className:"nodes-view-stat","data-testid":"nodes-stat-total",children:[s.jsx("span",{children:r("nodes.total","Total")}),s.jsx("strong",{children:B.total})]}),s.jsxs("div",{className:"nodes-view-stat nodes-view-stat--online","data-testid":"nodes-stat-online",children:[s.jsxs("span",{children:[s.jsx(h0,{size:14})," ",r("nodes.online","Online")]}),s.jsx("strong",{children:B.online})]}),s.jsxs("div",{className:"nodes-view-stat nodes-view-stat--offline","data-testid":"nodes-stat-offline",children:[s.jsxs("span",{children:[s.jsx(m0,{size:14})," ",r("nodes.offline","Offline")]}),s.jsx("strong",{children:B.offline})]}),s.jsxs("div",{className:"nodes-view-stat","data-testid":"nodes-stat-remote",children:[s.jsxs("span",{children:[s.jsx(pj,{size:14})," ",r("nodes.remote","Remote")]}),s.jsx("strong",{children:B.remote})]}),s.jsxs("div",{className:"nodes-view-stat nodes-view-stat--synced","data-testid":"nodes-stat-synced",children:[s.jsxs("span",{children:[s.jsx(Gr,{size:14})," ",r("nodes.synced","Synced")]}),s.jsx("strong",{children:B.synced})]}),s.jsxs("div",{className:"nodes-view-stat","data-testid":"nodes-stat-docker",children:[s.jsxs("span",{children:[s.jsx(Io,{size:14})," ",r("nodes.docker","Docker")]}),s.jsx("strong",{children:B.docker})]})]}),(i||j)&&s.jsx("div",{className:"nodes-view-error",children:i??j}),!b&&p.length>0&&s.jsxs("section",{className:"nodes-view-topology","aria-label":r("nodes.meshTopologyAriaLabel","Mesh Topology"),children:[s.jsx("h3",{className:"nodes-view-section-title",children:r("nodes.meshTopology","Mesh Topology")}),s.jsx(A$,{nodes:p})]}),a?s.jsx("div",{className:"nodes-view-grid",children:Array.from({length:4}).map(($,ne)=>s.jsx("div",{className:"node-card node-card--loading","aria-hidden":!0},ne))}):n.length===0?s.jsxs("div",{className:"nodes-view-empty",children:[s.jsx("p",{children:r("nodes.noRegistered","No nodes are registered yet.")}),s.jsxs("button",{className:"btn btn-primary",onClick:()=>q(!0),children:[s.jsx(Ea,{size:14}),r("nodes.addFirstNode","Add First Node")]})]}):s.jsx("div",{className:"nodes-view-grid",children:n.map($=>{const ne=$.type==="remote"&&x[$.id]?Eo(x[$.id]):void 0;return s.jsx(k$,{node:$,projects:g,onHealthCheck:we=>{se(we)},onEdit:we=>L(we),onRemove:we=>{re(we)},isLoading:a,syncStatus:ne,authSyncState:$.type==="remote"?k($.id):void 0,authSyncProviders:$.type==="remote"?N($.id):void 0,managedDockerNode:G.get($.id)},$.id)})}),s.jsx(_$,{isOpen:V,onClose:()=>q(!1),onSubmit:X,onDiscoverRemoteProjects:v,addToast:e,projects:g}),s.jsx(D$,{isOpen:te,onClose:()=>U(!1),onSubmit:Q,addToast:e}),s.jsx(U$,{isOpen:ee!==null,onClose:()=>L(null),node:ee,projects:g,onUpdate:W,onHealthCheck:se,addToast:e,syncStatus:ee?.type==="remote"&&ee&&x[ee.id]?Eo(x[ee.id]):void 0,onPushSettings:C,onPullSettings:w,onSyncAuth:P,managedDockerNode:ee?G.get(ee.id):void 0,onFetchContainerStatus:I,onFetchLogs:D,onUpdateDockerConfig:m,onFetchDockerConfigDiff:h})]})}function Y$(){const{t:e}=le("app");return t=>{switch(t){case"triage":return e("commandCenter.funnel.stage.triage","Triage");case"todo":return e("commandCenter.funnel.stage.todo","Todo");case"in-progress":return e("commandCenter.funnel.stage.inProgress","In progress");case"in-review":return e("commandCenter.funnel.stage.inReview","In review");case"done":return e("commandCenter.funnel.stage.done","Done");case"other":return e("commandCenter.funnel.stage.other","Other");default:return t}}}function Z$(e){return Number.isFinite(e)?e.toFixed(2):"—"}function J$({range:e}){const{t}=le("app"),r=Y$(),{data:n,isLoading:a,error:i}=qe("/command-center/activity",e),o=n?.funnel??null,l=f.useMemo(()=>(o?.stages??[]).map(d=>({label:r(d.stage),value:d.entered})),[o?.stages,r]),c=!o||o.stages.every(d=>d.entered===0);return s.jsxs(bt,{testId:"funnel",isLoading:a,error:i,isEmpty:c,emptyMessage:t("commandCenter.funnel.empty","No task transitions in the selected range."),children:[s.jsxs("div",{className:"cc-area-section",children:[s.jsx("h3",{className:"cc-area-section-title",children:t("commandCenter.funnel.title","SDLC funnel")}),s.jsx(bx,{stages:l,ariaLabel:t("commandCenter.funnel.ariaLabel","Tasks per workflow stage")})]}),s.jsxs("div",{className:"cc-area-section",children:[s.jsx("h3",{className:"cc-area-section-title",children:t("commandCenter.funnel.throughputTitle","Throughput")}),s.jsxs("div",{className:"cc-stat-grid",children:[s.jsxs("div",{className:"card cc-stat-card cc-stat-card--gauge","data-testid":"cc-funnel-completion-rate",children:[s.jsx(Oa,{value:o?.completionRate??null,label:t("commandCenter.funnel.completionRate","Completion rate"),ariaLabel:t("commandCenter.funnel.completionRateAria","Completion rate for in-range triage entrants")}),s.jsx("span",{className:"cc-stat-sub",children:t("commandCenter.funnel.completionRateHint","Done ÷ entered (in range)")})]}),s.jsxs("div",{className:"card cc-stat-card","data-testid":"cc-funnel-throughput",children:[s.jsx("div",{className:"cc-stat-label",children:t("commandCenter.funnel.throughputPerDay","Tasks done / day")}),s.jsx("div",{className:"cc-stat-value",children:Z$(o?.throughputPerDay??0)}),s.jsx("span",{className:"cc-stat-sub",children:t("commandCenter.funnel.rangeDays","{{count}} day range",{count:o?.rangeDays??0})})]}),s.jsxs("div",{className:"card cc-stat-card","data-testid":"cc-funnel-done",children:[s.jsx("div",{className:"cc-stat-label",children:t("commandCenter.funnel.doneInRange","Reached done")}),s.jsx("div",{className:"cc-stat-value",children:K(o?.doneInRange??0)})]}),s.jsxs("div",{className:"card cc-stat-card","data-testid":"cc-funnel-entered",children:[s.jsx("div",{className:"cc-stat-label",children:t("commandCenter.funnel.enteredInRange","Entered triage")}),s.jsx("div",{className:"cc-stat-value",children:K(o?.enteredInRange??0)})]})]})]})]})}const Q$=8;function e2(e){const{t}=le("app");return[{id:"overview",label:t("commandCenter.tabs.overview","Overview")},{id:"tokens",label:t("commandCenter.tabs.tokens","Tokens")},{id:"tools",label:t("commandCenter.tabs.tools","Tools")},{id:"activity",label:t("commandCenter.tabs.activity","Activity")},{id:"productivity",label:t("commandCenter.tabs.productivity","Productivity")},{id:"team",label:t("commandCenter.tabs.team","Team")},{id:"workflows",label:t("commandCenter.tabs.workflows","Workflows")},{id:"ecosystem",label:t("commandCenter.tabs.ecosystem","Ecosystem")},{id:"github",label:t("commandCenter.tabs.github","GitHub")},{id:"gitlab",label:t("commandCenter.tabs.gitlab","GitLab")},{id:"signals",label:t("commandCenter.tabs.signals","Signals")},{id:"system",label:t("commandCenter.tabs.system","System")},...e?[{id:"nodes",label:t("commandCenter.tabs.nodes","Nodes")}]:[],{id:"reliability",label:t("commandCenter.tabs.reliability","Reliability")},{id:"mission-control",label:t("commandCenter.tabs.missionControl","Mission Control")}]}const t2=15e3;function r2({range:e,projectId:t,colorTheme:r="default",themeMode:n="system",shadcnCustomColors:a={},resolvedThemeMode:i=n==="light"?"light":"dark",onColorThemeChange:o=()=>{},onThemeModeChange:l=()=>{},onShadcnCustomColorsChange:c=()=>{},onChangeView:d}){const{t:u}=le("app"),m=qe("/command-center/tokens?groupBy=model",e,{pollMs:t2}),h=qe("/command-center/tools",e),v=qe("/command-center/activity",e),g=qe("/command-center/signals",e),[y,p]=f.useState(null),[b,j]=f.useState(!0);f.useEffect(()=>{let W=!1;return j(!0),(async()=>{try{const $=await _l("/command-center/live");W||p($)}catch{W||p(null)}finally{W||j(!1)}})(),()=>{W=!0}},[]);const x=m.data?.totals?.totalTokens??0,C=h.data?.toolCalls??0,w=v.data?.activeNodes??0,P=v.data?.activeAgents??0,O=v.data?.sessions??0,k=v.data?.agentRuns?.total??0,N=v.data?.funnel?.doneInRange??0,S=y?.columns.find(W=>W.column==="in-progress")?.count??0,A=m.data?.groups?.length??0,_=f.useMemo(()=>[...m.data?.groups??[]].sort((W,$)=>$.totalTokens-W.totalTokens||(W.key??"").localeCompare($.key??"")).slice(0,Q$).map(W=>({label:W.key??u("commandCenter.tokens.unknownModel","(unknown)"),value:W.totalTokens,valueLabel:K(W.totalTokens),iconProvider:Ml(W.key??"")})),[m.data?.groups,u]),I=f.useMemo(()=>[...h.data?.byCategory??[]].sort((W,$)=>$.count-W.count||W.category.localeCompare($.category)).map(W=>({label:W.category,value:W.count,valueLabel:K(W.count)})),[h.data?.byCategory]),D=f.useMemo(()=>_.map(W=>({label:W.label,value:W.value})),[_]),F=f.useMemo(()=>(v.data?.daily??[]).map(W=>W.messages+W.activeAgents+(W.agentRuns??0)),[v.data?.daily]),V=f.useMemo(()=>[{label:u("commandCenter.activity.messages","Messages"),values:(v.data?.daily??[]).map(W=>W.messages)},{label:u("commandCenter.activity.activeAgents","Active agents"),values:(v.data?.daily??[]).map(W=>W.activeAgents)},{label:u("commandCenter.activity.agentRuns","Agent runs"),values:(v.data?.daily??[]).map(W=>W.agentRuns)}],[v.data?.daily,u]),q=F.length>0?F:[O,v.data?.messages??0,P,w,N],te=_.length>0||I.length>0||F.length>0,U=O>0||(v.data?.messages??0)>0||w>0||P>0||k>0||N>0,ee=x>0||C>0||U,B=!(m.data!==null&&h.data!==null&&v.data!==null)&&(m.isLoading||h.isLoading||v.isLoading),X=m.error??h.error??v.error,Q=m.data?Sr(m.data.cost?.usd??null,m.data.cost?.unavailable??!0):"—",G=h.data?h.data.fullyAutonomous?u("commandCenter.tools.ratioAutonomous","{{ratio}} calls/session (fully autonomous)",{ratio:h.data.autonomyRatio.toFixed(1)}):`${h.data.autonomyRatio.toFixed(1)}:1`:"—",ie=[{id:"tokens",label:u("commandCenter.overview.tokensCost","Tokens & cost"),value:K(x),subLabel:Q},{id:"autonomy",label:u("commandCenter.overview.autonomy","Autonomy ratio"),value:G},{id:"agentRuns",label:u("commandCenter.overview.agentRuns","Agent runs"),value:K(k)},{id:"tasksDone",label:u("commandCenter.overview.tasksDone","Tasks done"),value:K(N)},{id:"models",label:u("commandCenter.overview.uniqueModels","Unique models"),value:K(A)},{id:"signals",label:u("commandCenter.overview.openSignals","Open signals"),value:g.isLoading?"—":g.data?K(g.data.open??0):"—"}],se=s.jsx(s.Fragment,{children:s.jsx(u$,{projectId:t,colorTheme:r,themeMode:n,shadcnCustomColors:a,resolvedThemeMode:i,onColorThemeChange:o,onThemeModeChange:l,onShadcnCustomColorsChange:c,onChangeView:d})}),re=s.jsx("div",{className:"cc-overview-throughput","data-testid":"command-center-throughput",children:s.jsx(J$,{range:e})});return B?s.jsxs("div",{className:"cc-overview",children:[se,s.jsxs("div",{className:"cc-loading","data-testid":"command-center-overview-loading",children:[s.jsx("div",{className:"cc-chart-skeleton"}),s.jsx("p",{children:s.jsx(Tl,{label:u("commandCenter.loading","Loading dashboard...")})})]}),re]}):X!==null&&!ee?s.jsxs("div",{className:"cc-overview",children:[se,s.jsxs("div",{className:"cc-error","data-testid":"command-center-overview-error",role:"alert",children:[s.jsx(gi,{size:24}),s.jsx("p",{children:X})]}),re]}):ee?s.jsxs("div",{className:"cc-overview",children:[se,s.jsx("div",{className:"cc-stat-grid",children:ie.map(W=>s.jsxs("div",{className:"card cc-stat-card","data-testid":`command-center-stat-${W.id}`,children:[s.jsx("div",{className:"cc-stat-label",children:W.label}),s.jsx("div",{className:`cc-stat-value ${W.id==="tokens"?"cc-token-count-live":""}`,children:W.value},W.value),W.subLabel?s.jsx("span",{className:"cc-stat-sub",children:W.subLabel}):null]},W.id))}),s.jsxs("div",{className:"cc-live-strip","data-testid":"command-center-live-strip",children:[s.jsxs("div",{className:"cc-live-strip-heading",children:[s.jsx("span",{className:"status-dot status-dot--connecting","aria-hidden":"true"}),s.jsx("span",{className:"cc-live-strip-label",children:u("commandCenter.overview.liveStrip","Live activity snapshot")})]}),s.jsxs("div",{className:"cc-live-strip-metrics","data-testid":"command-center-live-snapshot",children:[s.jsxs("span",{className:"cc-live-metric","data-testid":"command-center-live-tasks-in-progress",children:[s.jsx("span",{className:"cc-live-metric-value",children:b?"—":K(S)}),s.jsx("span",{className:"cc-live-metric-label",children:u("commandCenter.overview.tasksInProgress","tasks in progress")})]}),s.jsxs("span",{className:"cc-live-metric","data-testid":"command-center-live-agents-working",children:[s.jsx("span",{className:"cc-live-metric-value",children:K(P)}),s.jsx("span",{className:"cc-live-metric-label",children:u("commandCenter.overview.agentsWorking","agents working")})]}),s.jsxs("span",{className:"cc-live-metric","data-testid":"command-center-live-tokens",children:[s.jsx("span",{className:"cc-live-metric-value cc-token-count-live",children:K(x)},x),s.jsx("span",{className:"cc-live-metric-label",children:u("commandCenter.overview.liveTokens","tokens")})]}),s.jsxs("span",{className:"cc-live-metric","data-testid":"command-center-live-open-signals",children:[s.jsx("span",{className:"cc-live-metric-value",children:g.isLoading?"—":g.data?K(g.data.open??0):"—"}),s.jsx("span",{className:"cc-live-metric-label",children:u("commandCenter.overview.openSignals","open signals")})]})]}),s.jsxs("div",{className:"cc-live-trend","data-testid":"command-center-throughput-trend",children:[s.jsx("span",{className:"cc-live-trend-label",children:u("commandCenter.overview.throughputTrend","throughput trend")}),s.jsx(wt,{values:q,ariaLabel:u("commandCenter.overview.throughputTrendAria","Recent activity throughput trend")})]})]}),te?s.jsxs("section",{className:"cc-overview-charts","data-testid":"command-center-overview-charts",children:[_.length>0?s.jsxs("div",{className:"card cc-overview-chart-card","data-testid":"command-center-overview-chart-tokens",children:[s.jsxs("div",{className:"cc-overview-chart-header",children:[s.jsx("h3",{className:"cc-area-section-title",children:u("commandCenter.overview.tokensByModel","Tokens by model")}),s.jsx("p",{children:u("commandCenter.overview.tokensByModelHint","Top model token consumers in this range")})]}),s.jsx(Xe,{data:_,ariaLabel:u("commandCenter.overview.tokensByModel","Tokens by model")})]}):null,D.length>0?s.jsxs("div",{className:"card cc-overview-chart-card","data-testid":"cc-overview-pie",children:[s.jsxs("div",{className:"cc-overview-chart-header",children:[s.jsx("h3",{className:"cc-area-section-title",children:u("commandCenter.overview.tokensByModelPie","Token share by model")}),s.jsx("p",{children:u("commandCenter.overview.tokensByModelPieHint","Top model token share in this range")})]}),s.jsx(St,{data:D,ariaLabel:u("commandCenter.overview.tokensByModelPie","Token share by model")})]}):null,I.length>0?s.jsxs("div",{className:"card cc-overview-chart-card","data-testid":"command-center-overview-chart-tools",children:[s.jsxs("div",{className:"cc-overview-chart-header",children:[s.jsx("h3",{className:"cc-area-section-title",children:u("commandCenter.overview.toolCategories","Tool categories")}),s.jsx("p",{children:u("commandCenter.overview.toolCategoriesHint","Autonomous work grouped by tool family")})]}),s.jsx(Xe,{data:I,ariaLabel:u("commandCenter.overview.toolCategories","Tool categories")})]}):null,F.length>0?s.jsxs("div",{className:"card cc-overview-chart-card cc-overview-chart-card--trend","data-testid":"cc-overview-line",children:[s.jsxs("div",{className:"cc-overview-chart-header",children:[s.jsx("h3",{className:"cc-area-section-title",children:u("commandCenter.overview.dailyActivityLine","Daily activity line")}),s.jsx("p",{children:u("commandCenter.overview.dailyActivityLineHint","Messages, agents, and runs by day")})]}),s.jsx(cr,{series:V,ariaLabel:u("commandCenter.overview.dailyActivityLine","Daily activity line")})]}):null,F.length>0?s.jsxs("div",{className:"card cc-overview-chart-card cc-overview-chart-card--trend","data-testid":"command-center-overview-chart-activity",children:[s.jsxs("div",{className:"cc-overview-chart-header",children:[s.jsx("h3",{className:"cc-area-section-title",children:u("commandCenter.overview.dailyActivity","Daily activity trend")}),s.jsx("p",{children:u("commandCenter.overview.dailyActivityHint","Messages plus active agents per day")})]}),s.jsx(wt,{values:F,ariaLabel:u("commandCenter.overview.dailyActivityAria","Daily activity trend")})]}):null]}):null,re]}):s.jsxs("div",{className:"cc-overview",children:[se,s.jsxs("div",{className:"cc-empty","data-testid":"command-center-empty",children:[s.jsx(bi,{size:28}),s.jsx("p",{children:u("commandCenter.empty","No usage data yet. Run some agents to populate the Dashboard.")})]}),re]})}function n2({tabId:e}){const{t}=le("app");return s.jsxs("div",{className:"cc-empty","data-testid":`command-center-placeholder-${e}`,children:[s.jsx(bi,{size:28}),s.jsx("p",{children:t("commandCenter.areaPending","This area renders once metrics data is available.")})]})}function z2({projectId:e,colorTheme:t="default",themeMode:r="system",shadcnCustomColors:n={},resolvedThemeMode:a=r==="light"?"light":"dark",onColorThemeChange:i=()=>{},onThemeModeChange:o=()=>{},onShadcnCustomColorsChange:l=()=>{},addToast:c=()=>{},nodesEnabled:d=!1,onChangeView:u}={}){const{t:m}=le("app"),h=e2(d),[v,g]=f.useState("overview"),[y,p]=f.useState(()=>Bh($h((w,P)=>P)[1])),b=f.useRef([]),j=f.useCallback(w=>{const P=(w+h.length)%h.length;g(h[P].id),b.current[P]?.focus()},[h]),x=f.useCallback((w,P)=>{switch(w.key){case"ArrowRight":case"ArrowDown":w.preventDefault(),j(P+1);break;case"ArrowLeft":case"ArrowUp":w.preventDefault(),j(P-1);break;case"Home":w.preventDefault(),j(0);break;case"End":w.preventDefault(),j(h.length-1);break;case"Enter":case" ":w.preventDefault(),g(h[P].id);break}},[j,h]);function C(){switch(v){case"overview":return s.jsx(r2,{range:y,projectId:e,colorTheme:t,themeMode:r,shadcnCustomColors:n,resolvedThemeMode:a,onColorThemeChange:i,onThemeModeChange:o,onShadcnCustomColorsChange:l,onChangeView:u});case"tokens":return s.jsx(iR,{range:y});case"tools":return s.jsx(sR,{range:y});case"activity":return s.jsx(bR,{range:y});case"productivity":return s.jsx(xR,{range:y});case"team":return s.jsx(OR,{range:y,projectId:e,addToast:c});case"workflows":return s.jsx(ER,{range:y});case"ecosystem":return s.jsx(_R,{range:y});case"github":return s.jsx(IR,{range:y});case"gitlab":return s.jsx(LR,{range:y});case"signals":return s.jsx(RR,{range:y});case"system":return s.jsx(XR,{});case"nodes":return s.jsx(X$,{addToast:c});case"reliability":return s.jsx(d$,{});case"mission-control":return s.jsx(i$,{});default:return s.jsx(n2,{tabId:v})}}return s.jsxs("section",{className:"command-center","data-testid":"command-center",children:[s.jsxs("header",{className:"cc-header",children:[s.jsxs("h2",{className:"cc-title",children:[s.jsx(bi,{size:20}),m("commandCenter.heading","Dashboard")]}),s.jsx(X0,{value:y,onChange:p})]}),s.jsx("div",{className:"cc-tablist",role:"tablist","aria-label":m("commandCenter.tablistLabel","Dashboard sections"),children:h.map((w,P)=>{const O=w.id===v;return s.jsx("button",{ref:k=>{b.current[P]=k},role:"tab",id:`cc-tab-${w.id}`,"aria-selected":O,"aria-controls":`cc-tabpanel-${w.id}`,tabIndex:O?0:-1,className:`cc-tab${O?" active":""}`,onClick:()=>g(w.id),onKeyDown:k=>x(k,P),"data-testid":`command-center-tab-${w.id}`,children:w.label},w.id)})}),s.jsx("div",{role:"tabpanel",id:`cc-tabpanel-${v}`,"aria-labelledby":`cc-tab-${v}`,tabIndex:0,className:"cc-tabpanel","data-testid":`command-center-panel-${v}`,children:C()})]})}export{z2 as CommandCenter};