@mcp-graph-workflow/mcp-graph 5.6.0 → 5.7.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.
- package/README.md +2 -2
- package/dist/api/routes/code-graph.d.ts.map +1 -1
- package/dist/api/routes/code-graph.js +4 -1
- package/dist/api/routes/code-graph.js.map +1 -1
- package/dist/core/code/code-indexer.d.ts.map +1 -1
- package/dist/core/code/code-indexer.js +17 -2
- package/dist/core/code/code-indexer.js.map +1 -1
- package/dist/core/code/code-types.d.ts +1 -0
- package/dist/core/code/code-types.d.ts.map +1 -1
- package/dist/core/code/code-types.js.map +1 -1
- package/dist/core/code/ts-analyzer.d.ts +6 -0
- package/dist/core/code/ts-analyzer.d.ts.map +1 -1
- package/dist/core/code/ts-analyzer.js +9 -0
- package/dist/core/code/ts-analyzer.js.map +1 -1
- package/dist/core/importer/import-graph.d.ts +23 -0
- package/dist/core/importer/import-graph.d.ts.map +1 -0
- package/dist/core/importer/import-graph.js +127 -0
- package/dist/core/importer/import-graph.js.map +1 -0
- package/dist/core/rag/benchmark-indexer.d.ts +32 -0
- package/dist/core/rag/benchmark-indexer.d.ts.map +1 -0
- package/dist/core/rag/benchmark-indexer.js +85 -0
- package/dist/core/rag/benchmark-indexer.js.map +1 -0
- package/dist/core/rag/citation-mapper.d.ts +32 -0
- package/dist/core/rag/citation-mapper.d.ts.map +1 -0
- package/dist/core/rag/citation-mapper.js +45 -0
- package/dist/core/rag/citation-mapper.js.map +1 -0
- package/dist/core/rag/enrichment-pipeline.d.ts +48 -0
- package/dist/core/rag/enrichment-pipeline.d.ts.map +1 -0
- package/dist/core/rag/enrichment-pipeline.js +127 -0
- package/dist/core/rag/enrichment-pipeline.js.map +1 -0
- package/dist/core/rag/post-retrieval.d.ts +40 -0
- package/dist/core/rag/post-retrieval.d.ts.map +1 -0
- package/dist/core/rag/post-retrieval.js +119 -0
- package/dist/core/rag/post-retrieval.js.map +1 -0
- package/dist/core/rag/query-cache.d.ts +54 -0
- package/dist/core/rag/query-cache.d.ts.map +1 -0
- package/dist/core/rag/query-cache.js +104 -0
- package/dist/core/rag/query-cache.js.map +1 -0
- package/dist/core/rag/query-understanding.d.ts +37 -0
- package/dist/core/rag/query-understanding.d.ts.map +1 -0
- package/dist/core/rag/query-understanding.js +123 -0
- package/dist/core/rag/query-understanding.js.map +1 -0
- package/dist/core/rag/rag-trace.d.ts +67 -0
- package/dist/core/rag/rag-trace.d.ts.map +1 -0
- package/dist/core/rag/rag-trace.js +82 -0
- package/dist/core/rag/rag-trace.js.map +1 -0
- package/dist/core/rag/source-contribution.d.ts +37 -0
- package/dist/core/rag/source-contribution.d.ts.map +1 -0
- package/dist/core/rag/source-contribution.js +54 -0
- package/dist/core/rag/source-contribution.js.map +1 -0
- package/dist/core/store/sqlite-store.d.ts +9 -0
- package/dist/core/store/sqlite-store.d.ts.map +1 -1
- package/dist/core/store/sqlite-store.js +42 -0
- package/dist/core/store/sqlite-store.js.map +1 -1
- package/dist/mcp/tools/import-graph.d.ts +4 -0
- package/dist/mcp/tools/import-graph.d.ts.map +1 -0
- package/dist/mcp/tools/import-graph.js +81 -0
- package/dist/mcp/tools/import-graph.js.map +1 -0
- package/dist/mcp/tools/index.d.ts.map +1 -1
- package/dist/mcp/tools/index.js +2 -0
- package/dist/mcp/tools/index.js.map +1 -1
- package/dist/schemas/knowledge.schema.d.ts +2 -0
- package/dist/schemas/knowledge.schema.d.ts.map +1 -1
- package/dist/schemas/knowledge.schema.js +1 -0
- package/dist/schemas/knowledge.schema.js.map +1 -1
- package/dist/web/dashboard/dist/assets/{benchmark-tab-WCcv55oB.js → benchmark-tab-BoMsoQjO.js} +1 -1
- package/dist/web/dashboard/dist/assets/{context-tab-CYnMjkHN.js → context-tab-BLT4qQ77.js} +1 -1
- package/dist/web/dashboard/dist/assets/{gitnexus-tab-Dj0DERUy.js → gitnexus-tab-DDw7DUED.js} +4 -4
- package/dist/web/dashboard/dist/assets/{graph-tab-tI93ZxxW.js → graph-tab-DG9Q6nko.js} +1 -1
- package/dist/web/dashboard/dist/assets/{graph-utils-DeQEwmsr.js → graph-utils-BpYHKE87.js} +1 -1
- package/dist/web/dashboard/dist/assets/{index-DKvjo_C5.css → index-Cu23WCcu.css} +1 -1
- package/dist/web/dashboard/dist/assets/{index-B1PLsGu1.js → index-DtkPX5ZZ.js} +2 -2
- package/dist/web/dashboard/dist/assets/{index-NmopQGmQ.js → index-F9dY4AG_.js} +1 -1
- package/dist/web/dashboard/dist/assets/{insights-tab-X7u4J-xv.js → insights-tab-YN7G6mjm.js} +1 -1
- package/dist/web/dashboard/dist/assets/{journey-tab-Cpz6_3mB.js → journey-tab-BcweuR82.js} +1 -1
- package/dist/web/dashboard/dist/assets/{logs-tab-QB__4Xdl.js → logs-tab-BjdAURdy.js} +1 -1
- package/dist/web/dashboard/dist/assets/{memories-tab-Dry9wz7q.js → memories-tab-CQ2xM2aw.js} +1 -1
- package/dist/web/dashboard/dist/assets/{prd-backlog-tab-OXTksZKv.js → prd-backlog-tab-CIeCpE1a.js} +1 -1
- package/dist/web/dashboard/dist/assets/{siebel-tab-x7OCuCmb.js → siebel-tab-bj5CT4-Z.js} +1 -1
- package/dist/web/dashboard/dist/assets/{skills-tab-DeUEKmpZ.js → skills-tab-Bgk72mKO.js} +1 -1
- package/dist/web/dashboard/dist/assets/{style-C-e8BTyP.js → style-Da3qWU01.js} +1 -1
- package/dist/web/dashboard/dist/index.html +2 -2
- package/package.json +13 -3
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/graph-tab-
|
|
1
|
+
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/graph-tab-DG9Q6nko.js","assets/style-Da3qWU01.js","assets/index-F9dY4AG_.js","assets/style-BZV40eAE.css","assets/graph-utils-BpYHKE87.js","assets/constants-z0QkAiYv.js","assets/prd-backlog-tab-CIeCpE1a.js","assets/journey-tab-BcweuR82.js","assets/gitnexus-tab-DDw7DUED.js","assets/gitnexus-tab-DEqMBSbC.css","assets/insights-tab-YN7G6mjm.js","assets/skills-tab-Bgk72mKO.js"])))=>i.map(i=>d[i]);
|
|
2
2
|
var uv=Object.defineProperty;var nv=(s,T,z)=>T in s?uv(s,T,{enumerable:!0,configurable:!0,writable:!0,value:z}):s[T]=z;var Ln=(s,T,z)=>nv(s,typeof T!="symbol"?T+"":T,z);function cv(s,T){for(var z=0;z<T.length;z++){const o=T[z];if(typeof o!="string"&&!Array.isArray(o)){for(const N in o)if(N!=="default"&&!(N in s)){const M=Object.getOwnPropertyDescriptor(o,N);M&&Object.defineProperty(s,N,M.get?M:{enumerable:!0,get:()=>o[N]})}}}return Object.freeze(Object.defineProperty(s,Symbol.toStringTag,{value:"Module"}))}(function(){const T=document.createElement("link").relList;if(T&&T.supports&&T.supports("modulepreload"))return;for(const N of document.querySelectorAll('link[rel="modulepreload"]'))o(N);new MutationObserver(N=>{for(const M of N)if(M.type==="childList")for(const G of M.addedNodes)G.tagName==="LINK"&&G.rel==="modulepreload"&&o(G)}).observe(document,{childList:!0,subtree:!0});function z(N){const M={};return N.integrity&&(M.integrity=N.integrity),N.referrerPolicy&&(M.referrerPolicy=N.referrerPolicy),N.crossOrigin==="use-credentials"?M.credentials="include":N.crossOrigin==="anonymous"?M.credentials="omit":M.credentials="same-origin",M}function o(N){if(N.ep)return;N.ep=!0;const M=z(N);fetch(N.href,M)}})();function iv(s){return s&&s.__esModule&&Object.prototype.hasOwnProperty.call(s,"default")?s.default:s}var sf={exports:{}},Tu={};/**
|
|
3
3
|
* @license React
|
|
4
4
|
* react-jsx-runtime.production.js
|
|
@@ -52,4 +52,4 @@ Error generating stack: `+a.message+`
|
|
|
52
52
|
bg-red-500/15 text-red-500 rounded-full border border-red-500/30`,children:"⚡ Beta"})}const Ov=[{id:"graph",label:"Graph"},{id:"prd-backlog",label:"PRD & Backlog"},{id:"journey",label:"Journey",beta:!0},{id:"gitnexus",label:"Code Graph"},{id:"siebel",label:"Siebel",beta:!0},{id:"memories",label:"Memories"},{id:"insights",label:"Insights"},{id:"skills",label:"Skills"},{id:"context",label:"Context"},{id:"benchmark",label:"Benchmark"},{id:"logs",label:"Logs"}],Nv=O.memo(function({activeTab:T,onTabChange:z}){return g.jsx("nav",{className:"flex overflow-x-auto border-b border-[var(--color-border)] bg-[var(--color-bg-secondary)]",role:"tablist","aria-label":"Dashboard sections",children:Ov.map(o=>g.jsxs("button",{role:"tab","aria-selected":T===o.id,"aria-controls":`panel-${o.id}`,id:`tab-${o.id}`,tabIndex:T===o.id?0:-1,onClick:()=>z(o.id),className:`px-4 py-2 text-sm font-medium transition-colors border-b-2 whitespace-nowrap ${T===o.id?"border-[var(--color-accent)] text-[var(--color-accent)]":"border-transparent text-[var(--color-text-muted)] hover:text-[var(--color-text)]"}`,children:[o.label,o.beta&&g.jsx(_v,{})]},o.id))})});function jv(){const[s,T]=O.useState(null),[z,o]=O.useState(!0),[N,M]=O.useState(null),G=O.useCallback(async()=>{try{o(!0),M(null);const Y=await Mt.getGraph();T(Y)}catch(Y){M(Y instanceof Error?Y.message:"Failed to load graph")}finally{o(!1)}},[]);return O.useEffect(()=>{G()},[G]),{graph:s,loading:z,error:N,refresh:G}}function Dv(){const[s,T]=O.useState(null),z=O.useCallback(async()=>{try{const o=await Mt.getStats();T(o)}catch{}},[]);return O.useEffect(()=>{z()},[z]),{stats:s,refresh:z}}function Mv(s){const T=O.useRef(s);T.current=s;const z=O.useCallback(()=>{const o=new EventSource("/api/v1/events"),N=G=>{try{const Y=JSON.parse(G.data);T.current(G.type,Y)}catch{}},M=["node:created","node:updated","node:deleted","edge:created","edge:deleted","import:completed"];for(const G of M)o.addEventListener(G,N);return o.onmessage=N,o.onerror=()=>{o.close(),setTimeout(z,5e3)},o},[]);O.useEffect(()=>{const o=z();return()=>o.close()},[z])}function Uv({open:s,onClose:T,onImported:z}){const[o,N]=O.useState(null),[M,G]=O.useState(!1),[Y,D]=O.useState(null),[b,H]=O.useState(!1),[j,J]=O.useState(!1),yl=O.useRef(null),fl=O.useCallback($=>{$.preventDefault(),J(!1),$.dataTransfer.files.length&&N($.dataTransfer.files[0])},[]),Tl=O.useCallback(async()=>{if(o){H(!0),D({type:"info",message:"Uploading and processing..."});try{const $=await Mt.importFile(o,M);D({type:"success",message:`Imported ${$.nodesCreated} nodes and ${$.edgesCreated} edges.`}),setTimeout(()=>{T(),z(),N(null),D(null)},1500)}catch($){D({type:"error",message:$ instanceof Error?$.message:"Import failed"})}finally{H(!1)}}},[o,M,T,z]);return s?g.jsx("div",{className:"fixed inset-0 z-50 flex items-center justify-center bg-black/50",onClick:$=>{$.target===$.currentTarget&&T()},children:g.jsxs("div",{className:"bg-[var(--color-bg)] rounded-lg shadow-xl w-full max-w-md p-6",children:[g.jsxs("div",{className:"flex items-center justify-between mb-4",children:[g.jsx("h2",{className:"text-lg font-semibold",children:"Import PRD"}),g.jsx("button",{onClick:T,className:"text-[var(--color-text-muted)] hover:text-[var(--color-text)] text-xl",children:"×"})]}),g.jsxs("div",{className:`border-2 border-dashed rounded-lg p-8 text-center cursor-pointer transition-colors mb-4 ${j?"border-[var(--color-accent)] bg-[var(--color-accent)]10":"border-[var(--color-border)]"}`,onClick:()=>{var $;return($=yl.current)==null?void 0:$.click()},onDragOver:$=>{$.preventDefault(),J(!0)},onDragLeave:()=>J(!1),onDrop:fl,children:[g.jsx("input",{ref:yl,type:"file",accept:".md,.txt,.pdf,.html,.htm",className:"hidden",onChange:$=>{var El;(El=$.target.files)!=null&&El.length&&N($.target.files[0])}}),g.jsx("p",{className:"text-sm text-[var(--color-text-muted)]",children:o?`Selected: ${o.name} (${Cv(o.size)})`:`Drag & drop a file here
|
|
53
53
|
or click to select`})]}),g.jsxs("label",{className:"flex items-center gap-2 mb-4 text-sm",children:[g.jsx("input",{type:"checkbox",checked:M,onChange:$=>G($.target.checked)}),"Force re-import (overwrite existing)"]}),Y&&g.jsx("div",{className:`text-sm p-2 rounded mb-4 ${Y.type==="success"?"bg-green-500/10 text-green-500":Y.type==="error"?"bg-red-500/10 text-red-500":"bg-blue-500/10 text-blue-500"}`,children:Y.message}),g.jsxs("div",{className:"flex justify-end gap-2",children:[g.jsx("button",{onClick:T,className:"px-3 py-1.5 text-sm border border-[var(--color-border)] rounded hover:bg-[var(--color-bg-tertiary)]",children:"Cancel"}),g.jsx("button",{onClick:Tl,disabled:!o||b,className:"px-3 py-1.5 text-sm bg-[var(--color-accent)] text-white rounded hover:bg-[var(--color-accent-light)] disabled:opacity-50",children:b?"Importing...":"Import"})]})]})}):null}function Cv(s){return s<1024?s+" B":s<1048576?(s/1024).toFixed(1)+" KB":(s/1048576).toFixed(1)+" MB"}function Rv({open:s,onClose:T,onImported:z}){const[o,N]=O.useState(""),[M,G]=O.useState(""),[Y,D]=O.useState(""),[b,H]=O.useState(null),[j,J]=O.useState(null),[yl,fl]=O.useState(!1),Tl=O.useCallback(async()=>{if(!o.trim()){H({type:"error",message:"Please enter a URL"});return}fl(!0),H({type:"info",message:"Capturing page... This may take a few seconds."}),J(null);try{const ul=await Mt.captureUrl(o.trim(),M.trim()||void 0,Y.trim()||void 0);J(ul),H({type:"success",message:`Captured: ${ul.wordCount} words`})}catch(ul){H({type:"error",message:`Capture failed: ${ul instanceof Error?ul.message:"Unknown error"}`})}finally{fl(!1)}},[o,M,Y]),$=O.useCallback(async()=>{if(j){H({type:"info",message:"Importing captured content as PRD..."});try{const ul=new Blob([j.text],{type:"text/markdown"}),_l=(j.title||"captured-page").replace(/[^a-zA-Z0-9-_]/g,"-")+".md",Gl=new File([ul],_l,{type:"text/markdown"});await Mt.importFile(Gl),H({type:"success",message:"Import completed!"}),setTimeout(()=>{T(),z()},1e3)}catch(ul){H({type:"error",message:`Import failed: ${ul instanceof Error?ul.message:"Unknown error"}`})}}},[j,T,z]),El=O.useCallback(async()=>{j&&(await navigator.clipboard.writeText(j.text),H({type:"success",message:"Copied to clipboard!"}))},[j]);return s?g.jsx("div",{className:"fixed inset-0 z-50 flex items-center justify-center bg-black/50",onClick:ul=>{ul.target===ul.currentTarget&&T()},children:g.jsxs("div",{className:"bg-[var(--color-bg)] rounded-lg shadow-xl w-full max-w-lg p-6 max-h-[80vh] overflow-y-auto",children:[g.jsxs("div",{className:"flex items-center justify-between mb-4",children:[g.jsx("h2",{className:"text-lg font-semibold",children:"Capture Web Page"}),g.jsx("button",{onClick:T,className:"text-[var(--color-text-muted)] hover:text-[var(--color-text)] text-xl",children:"×"})]}),g.jsxs("div",{className:"space-y-3 mb-4",children:[g.jsxs("div",{children:[g.jsx("label",{className:"block text-xs font-medium mb-1",children:"URL"}),g.jsx("input",{type:"url",value:o,onChange:ul=>N(ul.target.value),placeholder:"https://example.com/prd",className:"w-full px-2 py-1.5 text-sm border border-[var(--color-border)] rounded bg-[var(--color-bg)]",onKeyDown:ul=>{ul.key==="Enter"&&Tl()}})]}),g.jsxs("div",{children:[g.jsx("label",{className:"block text-xs font-medium mb-1",children:"CSS Selector (optional)"}),g.jsx("input",{type:"text",value:M,onChange:ul=>G(ul.target.value),placeholder:"main, article, .content",className:"w-full px-2 py-1.5 text-sm border border-[var(--color-border)] rounded bg-[var(--color-bg)]"})]}),g.jsxs("div",{children:[g.jsx("label",{className:"block text-xs font-medium mb-1",children:"Wait for Selector (optional)"}),g.jsx("input",{type:"text",value:Y,onChange:ul=>D(ul.target.value),placeholder:".loaded, #content",className:"w-full px-2 py-1.5 text-sm border border-[var(--color-border)] rounded bg-[var(--color-bg)]"})]})]}),b&&g.jsx("div",{className:`text-sm p-2 rounded mb-4 ${b.type==="success"?"bg-green-500/10 text-green-500":b.type==="error"?"bg-red-500/10 text-red-500":"bg-blue-500/10 text-blue-500"}`,children:b.message}),j&&g.jsxs("div",{className:"mb-4 p-3 rounded-lg bg-[var(--color-bg-secondary)] border border-[var(--color-border)]",children:[g.jsx("h3",{className:"text-sm font-medium mb-2",children:"Extracted Content"}),g.jsxs("div",{className:"text-xs text-[var(--color-text-muted)] space-y-0.5 mb-2",children:[g.jsxs("p",{children:[g.jsx("strong",{children:"Title:"})," ",j.title||"—"]}),g.jsxs("p",{children:[g.jsx("strong",{children:"Words:"})," ",j.wordCount]}),g.jsxs("p",{children:[g.jsx("strong",{children:"Captured:"})," ",new Date(j.capturedAt).toLocaleString()]})]}),g.jsxs("pre",{className:"text-xs whitespace-pre-wrap max-h-40 overflow-y-auto p-2 bg-[var(--color-bg-tertiary)] rounded",children:[j.text.substring(0,5e3),j.text.length>5e3&&`
|
|
54
54
|
|
|
55
|
-
... (truncated)`]}),g.jsxs("div",{className:"flex gap-2 mt-2",children:[g.jsx("button",{onClick:$,className:"px-3 py-1 text-xs bg-[var(--color-accent)] text-white rounded hover:bg-[var(--color-accent-light)]",children:"Import as PRD"}),g.jsx("button",{onClick:El,className:"px-3 py-1 text-xs border border-[var(--color-border)] rounded hover:bg-[var(--color-bg-tertiary)]",children:"Copy Text"})]})]}),g.jsx("div",{className:"flex justify-end",children:g.jsx("button",{onClick:Tl,disabled:yl,className:"px-3 py-1.5 text-sm bg-[var(--color-accent)] text-white rounded hover:bg-[var(--color-accent-light)] disabled:opacity-50",children:yl?"Capturing...":"Capture"})})]})}):null}function Hv({open:s,onClose:T,onFolderChanged:z}){const[o,N]=O.useState(""),[M,G]=O.useState(""),[Y,D]=O.useState([]),[b,H]=O.useState(null),[j,J]=O.useState(!1),[yl,fl]=O.useState(""),[Tl,$]=O.useState([]),[El,ul]=O.useState(""),[_l,Gl]=O.useState(!1),[Fl,Xl]=O.useState(""),[F,Ql]=O.useState(!1);O.useEffect(()=>{s&&(H(null),N(""),Ql(!1),$([]),Mt.getFolder().then(Z=>{G(Z.currentPath),D(Z.recentFolders)}).catch(()=>{}))},[s]);const wl=O.useCallback(async Z=>{Gl(!0),Xl("");try{const Ol=await Mt.browseFolder(Z);fl(Ol.path),ul(Ol.parent),$(Ol.entries),Ql(!0)}catch(Ol){Xl(Ol instanceof Error?Ol.message:"Failed to browse")}finally{Gl(!1)}},[]),Ot=O.useCallback(async Z=>{const Ol=Z??o.trim();if(Ol){J(!0),H({type:"info",message:"Opening folder..."});try{const Nl=await Mt.openFolder(Ol);if(!Nl.ok){H({type:"error",message:Nl.error??"Failed to open folder"});return}H({type:"success",message:`Opened: ${Nl.basePath}`}),G(Nl.basePath??Ol),Nl.recentFolders&&D(Nl.recentFolders),setTimeout(()=>{T(),z()},800)}catch(Nl){H({type:"error",message:Nl instanceof Error?Nl.message:"Failed to open folder"})}finally{J(!1)}}},[o,T,z]),yt=O.useCallback(()=>{const Z=M&&M.split("/").slice(0,-1).join("/")||"/";wl(Z)},[M,wl]);return s?g.jsx("div",{className:"fixed inset-0 z-50 flex items-center justify-center bg-black/50",onClick:Z=>{Z.target===Z.currentTarget&&T()},children:g.jsxs("div",{className:"bg-[var(--color-bg)] rounded-lg shadow-xl w-full max-w-lg p-6 max-h-[80vh] flex flex-col",children:[g.jsxs("div",{className:"flex items-center justify-between mb-4",children:[g.jsx("h2",{className:"text-lg font-semibold",children:"Open Folder"}),g.jsx("button",{onClick:T,className:"text-[var(--color-text-muted)] hover:text-[var(--color-text)] text-xl",children:"×"})]}),g.jsxs("div",{className:"text-xs text-[var(--color-text-muted)] mb-3",children:["Current: ",g.jsx("span",{className:"font-mono",children:M||"..."})]}),g.jsxs("div",{className:"mb-3",children:[g.jsx("label",{className:"block text-sm mb-1",children:"Project folder path"}),g.jsxs("div",{className:"flex gap-2",children:[g.jsx("input",{type:"text",value:o,onChange:Z=>N(Z.target.value),onKeyDown:Z=>{Z.key==="Enter"&&Ot()},placeholder:"/path/to/project",className:"flex-1 px-3 py-2 text-sm bg-[var(--color-bg-secondary)] border border-[var(--color-border)] rounded font-mono focus:outline-none focus:border-[var(--color-accent)]",autoFocus:!0}),g.jsx("button",{onClick:()=>void Ot(),disabled:!o.trim()||j,className:"px-4 py-2 text-sm bg-[var(--color-accent)] text-white rounded hover:bg-[var(--color-accent-light)] disabled:opacity-50",children:j?"...":"Open"})]}),g.jsx("button",{onClick:yt,className:"mt-1 text-xs text-[var(--color-accent)] hover:underline",children:"Browse directories..."})]}),b&&g.jsx("div",{className:`text-sm p-2 rounded mb-3 ${b.type==="success"?"bg-green-500/10 text-green-500":b.type==="error"?"bg-red-500/10 text-red-500":"bg-blue-500/10 text-blue-500"}`,children:b.message}),F&&g.jsxs("div",{className:"mb-3 border border-[var(--color-border)] rounded overflow-hidden",children:[g.jsx("div",{className:"flex items-center gap-1 px-3 py-2 bg-[var(--color-bg-secondary)] border-b border-[var(--color-border)] text-xs font-mono overflow-x-auto whitespace-nowrap",children:yl.split("/").filter(Boolean).map((Z,Ol,Nl)=>{const Il="/"+Nl.slice(0,Ol+1).join("/");return g.jsxs("span",{className:"flex items-center gap-1",children:[Ol>0&&g.jsx("span",{className:"text-[var(--color-text-muted)]",children:"/"}),g.jsx("button",{onClick:()=>void wl(Il),className:"hover:text-[var(--color-accent)] hover:underline",children:Z})]},Il)})}),_l&&g.jsx("div",{className:"px-3 py-4 text-sm text-[var(--color-text-muted)] text-center",children:"Loading..."}),Fl&&g.jsx("div",{className:"px-3 py-2 text-sm text-red-500",children:Fl}),!_l&&!Fl&&g.jsxs("ul",{className:"max-h-48 overflow-y-auto",children:[El&&El!==yl&&g.jsx("li",{children:g.jsxs("button",{onClick:()=>void wl(El),className:"w-full text-left px-3 py-1.5 text-sm hover:bg-[var(--color-bg-tertiary)] flex items-center gap-2",children:[g.jsx("span",{className:"text-[var(--color-text-muted)]",children:".."}),g.jsx("span",{className:"text-xs text-[var(--color-text-muted)]",children:"(parent)"})]})}),Tl.length===0&&g.jsx("li",{className:"px-3 py-2 text-sm text-[var(--color-text-muted)]",children:"No subdirectories"}),Tl.map(Z=>g.jsxs("li",{className:"flex items-center",children:[g.jsxs("button",{onClick:()=>void wl(Z.path),className:"flex-1 text-left px-3 py-1.5 text-sm hover:bg-[var(--color-bg-tertiary)] flex items-center gap-2 min-w-0",children:[g.jsx("span",{className:"shrink-0",children:Z.hasGraph?"📂":"📁"}),g.jsx("span",{className:`truncate ${Z.hasGraph?"font-medium text-[var(--color-accent)]":""}`,children:Z.name}),Z.hasGraph&&g.jsx("span",{className:"shrink-0 text-xs bg-[var(--color-accent)]/20 text-[var(--color-accent)] px-1.5 py-0.5 rounded",children:"graph"})]}),Z.hasGraph&&g.jsx("button",{onClick:()=>void Ot(Z.path),disabled:j||Z.path===M,className:"shrink-0 mr-2 px-2 py-1 text-xs bg-[var(--color-accent)] text-white rounded hover:bg-[var(--color-accent-light)] disabled:opacity-50",children:Z.path===M?"current":"Open"})]},Z.path))]})]}),g.jsx("div",{className:"flex-1 min-h-0 overflow-hidden flex flex-col",children:Y.length>0&&g.jsxs("div",{className:"flex-1 min-h-0 flex flex-col",children:[g.jsx("h3",{className:"text-sm font-medium mb-2 text-[var(--color-text-muted)] shrink-0",children:"Recent folders"}),g.jsx("ul",{className:"space-y-1 overflow-y-auto min-h-0",children:Y.map(Z=>g.jsx("li",{children:g.jsxs("button",{onClick:()=>void Ot(Z),disabled:j||Z===M,className:`w-full text-left px-3 py-1.5 text-sm font-mono rounded transition-colors ${Z===M?"bg-[var(--color-accent)]/10 text-[var(--color-accent)] cursor-default":"hover:bg-[var(--color-bg-tertiary)] text-[var(--color-text)]"}`,title:Z,children:[g.jsx("span",{className:"truncate block",children:Z}),Z===M&&g.jsx("span",{className:"text-xs text-[var(--color-accent)]",children:" (current)"})]})},Z))})]})}),g.jsx("div",{className:"flex justify-end mt-4 shrink-0",children:g.jsx("button",{onClick:T,className:"px-3 py-1.5 text-sm border border-[var(--color-border)] rounded hover:bg-[var(--color-bg-tertiary)]",children:"Cancel"})})]})}):null}const Bv=O.lazy(()=>Ut(()=>import("./graph-tab-tI93ZxxW.js"),__vite__mapDeps([0,1,2,3,4,5])).then(s=>({default:s.GraphTab}))),qv=O.lazy(()=>Ut(()=>import("./prd-backlog-tab-OXTksZKv.js"),__vite__mapDeps([6,1,2,3,5,4])).then(s=>({default:s.PrdBacklogTab}))),Yv=O.lazy(()=>Ut(()=>import("./journey-tab-Cpz6_3mB.js"),__vite__mapDeps([7,1,2,3])).then(s=>({default:s.JourneyTab}))),Gv=O.lazy(()=>Ut(()=>import("./gitnexus-tab-Dj0DERUy.js"),__vite__mapDeps([8,5,9])).then(s=>({default:s.GitNexusTab}))),Xv=O.lazy(()=>Ut(()=>import("./memories-tab-Dry9wz7q.js"),[]).then(s=>({default:s.MemoriesTab}))),Qv=O.lazy(()=>Ut(()=>import("./insights-tab-X7u4J-xv.js"),__vite__mapDeps([10,2,5])).then(s=>({default:s.InsightsTab}))),Zv=O.lazy(()=>Ut(()=>import("./skills-tab-DeUEKmpZ.js"),__vite__mapDeps([11,5])).then(s=>({default:s.SkillsTab}))),Lv=O.lazy(()=>Ut(()=>import("./context-tab-CYnMjkHN.js"),[]).then(s=>({default:s.ContextTab}))),Vv=O.lazy(()=>Ut(()=>import("./benchmark-tab-WCcv55oB.js"),[]).then(s=>({default:s.BenchmarkTab}))),Jv=O.lazy(()=>Ut(()=>import("./logs-tab-QB__4Xdl.js"),[]).then(s=>({default:s.LogsTab}))),Kv=O.lazy(()=>Ut(()=>import("./siebel-tab-x7OCuCmb.js"),[]).then(s=>({default:s.SiebelTab})));class wv extends Ud.Component{constructor(){super(...arguments);Ln(this,"state",{hasError:!1,error:null})}static getDerivedStateFromError(z){return{hasError:!0,error:z}}render(){var z;return this.state.hasError?g.jsxs("div",{className:"flex flex-col items-center justify-center h-full gap-4 text-[var(--color-text-muted)]",children:[g.jsx("p",{className:"text-sm",children:"Something went wrong."}),g.jsx("p",{className:"text-xs text-[var(--color-danger)]",children:(z=this.state.error)==null?void 0:z.message}),g.jsx("button",{onClick:()=>window.location.reload(),className:"text-xs px-3 py-1.5 rounded-lg bg-[var(--color-accent)] text-white hover:opacity-90 transition-opacity",children:"Reload"})]}):this.props.children}}function Md(){return g.jsx("div",{className:"flex items-center justify-center h-full text-[var(--color-text-muted)]",children:"Loading..."})}function kv(){const[s,T]=O.useState("graph"),[z,o]=O.useState(!1),[N,M]=O.useState(!1),[G,Y]=O.useState(!1),{graph:D,loading:b,error:H,refresh:j}=jv(),{stats:J,refresh:yl}=Dv(),fl=O.useCallback(async()=>{await Promise.all([j(),yl()])},[j,yl]);return Mv(O.useCallback(()=>{fl()},[fl])),g.jsx(Tv,{onProjectChange:fl,children:g.jsxs("div",{className:"h-screen flex flex-col",children:[g.jsx(Av,{stats:J,onImport:()=>o(!0),onCapture:()=>M(!0),onOpenFolder:()=>Y(!0)}),g.jsx(Nv,{activeTab:s,onTabChange:T}),g.jsx("main",{className:"flex-1 min-h-0 overflow-hidden",children:b?g.jsx(Md,{}):H?g.jsx("div",{className:"flex items-center justify-center h-full text-[var(--color-danger)]",children:H}):g.jsx(wv,{children:g.jsxs(O.Suspense,{fallback:g.jsx(Md,{}),children:[g.jsx("div",{style:{display:s==="graph"?"contents":"none"},children:D&&g.jsx(Bv,{graph:D})}),g.jsx("div",{style:{display:s==="prd-backlog"?"contents":"none"},children:D&&g.jsx(qv,{graph:D})}),s==="journey"&&g.jsx(Yv,{}),s==="gitnexus"&&g.jsx(Gv,{}),s==="memories"&&g.jsx(Xv,{}),s==="insights"&&g.jsx(Qv,{}),s==="skills"&&g.jsx(Zv,{}),s==="context"&&g.jsx(Lv,{}),s==="benchmark"&&g.jsx(Vv,{}),s==="logs"&&g.jsx(Jv,{}),s==="siebel"&&g.jsx(Kv,{})]})})}),g.jsx(Uv,{open:z,onClose:()=>o(!1),onImported:fl}),g.jsx(Rv,{open:N,onClose:()=>M(!1),onImported:fl}),g.jsx(Hv,{open:G,onClose:()=>Y(!1),onFolderChanged:fl})]})})}function Wv(){return g.jsx(pv,{children:g.jsx(kv,{})})}gv.createRoot(document.getElementById("root")).render(g.jsx(O.StrictMode,{children:g.jsx(Wv,{})}));export{Hv as O,Fv as R,Mt as a,gf as b,hv as c,iv as g,g as j,O as r,Ud as t};
|
|
55
|
+
... (truncated)`]}),g.jsxs("div",{className:"flex gap-2 mt-2",children:[g.jsx("button",{onClick:$,className:"px-3 py-1 text-xs bg-[var(--color-accent)] text-white rounded hover:bg-[var(--color-accent-light)]",children:"Import as PRD"}),g.jsx("button",{onClick:El,className:"px-3 py-1 text-xs border border-[var(--color-border)] rounded hover:bg-[var(--color-bg-tertiary)]",children:"Copy Text"})]})]}),g.jsx("div",{className:"flex justify-end",children:g.jsx("button",{onClick:Tl,disabled:yl,className:"px-3 py-1.5 text-sm bg-[var(--color-accent)] text-white rounded hover:bg-[var(--color-accent-light)] disabled:opacity-50",children:yl?"Capturing...":"Capture"})})]})}):null}function Hv({open:s,onClose:T,onFolderChanged:z}){const[o,N]=O.useState(""),[M,G]=O.useState(""),[Y,D]=O.useState([]),[b,H]=O.useState(null),[j,J]=O.useState(!1),[yl,fl]=O.useState(""),[Tl,$]=O.useState([]),[El,ul]=O.useState(""),[_l,Gl]=O.useState(!1),[Fl,Xl]=O.useState(""),[F,Ql]=O.useState(!1);O.useEffect(()=>{s&&(H(null),N(""),Ql(!1),$([]),Mt.getFolder().then(Z=>{G(Z.currentPath),D(Z.recentFolders)}).catch(()=>{}))},[s]);const wl=O.useCallback(async Z=>{Gl(!0),Xl("");try{const Ol=await Mt.browseFolder(Z);fl(Ol.path),ul(Ol.parent),$(Ol.entries),Ql(!0)}catch(Ol){Xl(Ol instanceof Error?Ol.message:"Failed to browse")}finally{Gl(!1)}},[]),Ot=O.useCallback(async Z=>{const Ol=Z??o.trim();if(Ol){J(!0),H({type:"info",message:"Opening folder..."});try{const Nl=await Mt.openFolder(Ol);if(!Nl.ok){H({type:"error",message:Nl.error??"Failed to open folder"});return}H({type:"success",message:`Opened: ${Nl.basePath}`}),G(Nl.basePath??Ol),Nl.recentFolders&&D(Nl.recentFolders),setTimeout(()=>{T(),z()},800)}catch(Nl){H({type:"error",message:Nl instanceof Error?Nl.message:"Failed to open folder"})}finally{J(!1)}}},[o,T,z]),yt=O.useCallback(()=>{const Z=M&&M.split("/").slice(0,-1).join("/")||"/";wl(Z)},[M,wl]);return s?g.jsx("div",{className:"fixed inset-0 z-50 flex items-center justify-center bg-black/50",onClick:Z=>{Z.target===Z.currentTarget&&T()},children:g.jsxs("div",{className:"bg-[var(--color-bg)] rounded-lg shadow-xl w-full max-w-lg p-6 max-h-[80vh] flex flex-col",children:[g.jsxs("div",{className:"flex items-center justify-between mb-4",children:[g.jsx("h2",{className:"text-lg font-semibold",children:"Open Folder"}),g.jsx("button",{onClick:T,className:"text-[var(--color-text-muted)] hover:text-[var(--color-text)] text-xl",children:"×"})]}),g.jsxs("div",{className:"text-xs text-[var(--color-text-muted)] mb-3",children:["Current: ",g.jsx("span",{className:"font-mono",children:M||"..."})]}),g.jsxs("div",{className:"mb-3",children:[g.jsx("label",{className:"block text-sm mb-1",children:"Project folder path"}),g.jsxs("div",{className:"flex gap-2",children:[g.jsx("input",{type:"text",value:o,onChange:Z=>N(Z.target.value),onKeyDown:Z=>{Z.key==="Enter"&&Ot()},placeholder:"/path/to/project",className:"flex-1 px-3 py-2 text-sm bg-[var(--color-bg-secondary)] border border-[var(--color-border)] rounded font-mono focus:outline-none focus:border-[var(--color-accent)]",autoFocus:!0}),g.jsx("button",{onClick:()=>void Ot(),disabled:!o.trim()||j,className:"px-4 py-2 text-sm bg-[var(--color-accent)] text-white rounded hover:bg-[var(--color-accent-light)] disabled:opacity-50",children:j?"...":"Open"})]}),g.jsx("button",{onClick:yt,className:"mt-1 text-xs text-[var(--color-accent)] hover:underline",children:"Browse directories..."})]}),b&&g.jsx("div",{className:`text-sm p-2 rounded mb-3 ${b.type==="success"?"bg-green-500/10 text-green-500":b.type==="error"?"bg-red-500/10 text-red-500":"bg-blue-500/10 text-blue-500"}`,children:b.message}),F&&g.jsxs("div",{className:"mb-3 border border-[var(--color-border)] rounded overflow-hidden",children:[g.jsx("div",{className:"flex items-center gap-1 px-3 py-2 bg-[var(--color-bg-secondary)] border-b border-[var(--color-border)] text-xs font-mono overflow-x-auto whitespace-nowrap",children:yl.split("/").filter(Boolean).map((Z,Ol,Nl)=>{const Il="/"+Nl.slice(0,Ol+1).join("/");return g.jsxs("span",{className:"flex items-center gap-1",children:[Ol>0&&g.jsx("span",{className:"text-[var(--color-text-muted)]",children:"/"}),g.jsx("button",{onClick:()=>void wl(Il),className:"hover:text-[var(--color-accent)] hover:underline",children:Z})]},Il)})}),_l&&g.jsx("div",{className:"px-3 py-4 text-sm text-[var(--color-text-muted)] text-center",children:"Loading..."}),Fl&&g.jsx("div",{className:"px-3 py-2 text-sm text-red-500",children:Fl}),!_l&&!Fl&&g.jsxs("ul",{className:"max-h-48 overflow-y-auto",children:[El&&El!==yl&&g.jsx("li",{children:g.jsxs("button",{onClick:()=>void wl(El),className:"w-full text-left px-3 py-1.5 text-sm hover:bg-[var(--color-bg-tertiary)] flex items-center gap-2",children:[g.jsx("span",{className:"text-[var(--color-text-muted)]",children:".."}),g.jsx("span",{className:"text-xs text-[var(--color-text-muted)]",children:"(parent)"})]})}),Tl.length===0&&g.jsx("li",{className:"px-3 py-2 text-sm text-[var(--color-text-muted)]",children:"No subdirectories"}),Tl.map(Z=>g.jsxs("li",{className:"flex items-center",children:[g.jsxs("button",{onClick:()=>void wl(Z.path),className:"flex-1 text-left px-3 py-1.5 text-sm hover:bg-[var(--color-bg-tertiary)] flex items-center gap-2 min-w-0",children:[g.jsx("span",{className:"shrink-0",children:Z.hasGraph?"📂":"📁"}),g.jsx("span",{className:`truncate ${Z.hasGraph?"font-medium text-[var(--color-accent)]":""}`,children:Z.name}),Z.hasGraph&&g.jsx("span",{className:"shrink-0 text-xs bg-[var(--color-accent)]/20 text-[var(--color-accent)] px-1.5 py-0.5 rounded",children:"graph"})]}),Z.hasGraph&&g.jsx("button",{onClick:()=>void Ot(Z.path),disabled:j||Z.path===M,className:"shrink-0 mr-2 px-2 py-1 text-xs bg-[var(--color-accent)] text-white rounded hover:bg-[var(--color-accent-light)] disabled:opacity-50",children:Z.path===M?"current":"Open"})]},Z.path))]})]}),g.jsx("div",{className:"flex-1 min-h-0 overflow-hidden flex flex-col",children:Y.length>0&&g.jsxs("div",{className:"flex-1 min-h-0 flex flex-col",children:[g.jsx("h3",{className:"text-sm font-medium mb-2 text-[var(--color-text-muted)] shrink-0",children:"Recent folders"}),g.jsx("ul",{className:"space-y-1 overflow-y-auto min-h-0",children:Y.map(Z=>g.jsx("li",{children:g.jsxs("button",{onClick:()=>void Ot(Z),disabled:j||Z===M,className:`w-full text-left px-3 py-1.5 text-sm font-mono rounded transition-colors ${Z===M?"bg-[var(--color-accent)]/10 text-[var(--color-accent)] cursor-default":"hover:bg-[var(--color-bg-tertiary)] text-[var(--color-text)]"}`,title:Z,children:[g.jsx("span",{className:"truncate block",children:Z}),Z===M&&g.jsx("span",{className:"text-xs text-[var(--color-accent)]",children:" (current)"})]})},Z))})]})}),g.jsx("div",{className:"flex justify-end mt-4 shrink-0",children:g.jsx("button",{onClick:T,className:"px-3 py-1.5 text-sm border border-[var(--color-border)] rounded hover:bg-[var(--color-bg-tertiary)]",children:"Cancel"})})]})}):null}const Bv=O.lazy(()=>Ut(()=>import("./graph-tab-DG9Q6nko.js"),__vite__mapDeps([0,1,2,3,4,5])).then(s=>({default:s.GraphTab}))),qv=O.lazy(()=>Ut(()=>import("./prd-backlog-tab-CIeCpE1a.js"),__vite__mapDeps([6,1,2,3,5,4])).then(s=>({default:s.PrdBacklogTab}))),Yv=O.lazy(()=>Ut(()=>import("./journey-tab-BcweuR82.js"),__vite__mapDeps([7,1,2,3])).then(s=>({default:s.JourneyTab}))),Gv=O.lazy(()=>Ut(()=>import("./gitnexus-tab-DDw7DUED.js"),__vite__mapDeps([8,5,9])).then(s=>({default:s.GitNexusTab}))),Xv=O.lazy(()=>Ut(()=>import("./memories-tab-CQ2xM2aw.js"),[]).then(s=>({default:s.MemoriesTab}))),Qv=O.lazy(()=>Ut(()=>import("./insights-tab-YN7G6mjm.js"),__vite__mapDeps([10,2,5])).then(s=>({default:s.InsightsTab}))),Zv=O.lazy(()=>Ut(()=>import("./skills-tab-Bgk72mKO.js"),__vite__mapDeps([11,5])).then(s=>({default:s.SkillsTab}))),Lv=O.lazy(()=>Ut(()=>import("./context-tab-BLT4qQ77.js"),[]).then(s=>({default:s.ContextTab}))),Vv=O.lazy(()=>Ut(()=>import("./benchmark-tab-BoMsoQjO.js"),[]).then(s=>({default:s.BenchmarkTab}))),Jv=O.lazy(()=>Ut(()=>import("./logs-tab-BjdAURdy.js"),[]).then(s=>({default:s.LogsTab}))),Kv=O.lazy(()=>Ut(()=>import("./siebel-tab-bj5CT4-Z.js"),[]).then(s=>({default:s.SiebelTab})));class wv extends Ud.Component{constructor(){super(...arguments);Ln(this,"state",{hasError:!1,error:null})}static getDerivedStateFromError(z){return{hasError:!0,error:z}}render(){var z;return this.state.hasError?g.jsxs("div",{className:"flex flex-col items-center justify-center h-full gap-4 text-[var(--color-text-muted)]",children:[g.jsx("p",{className:"text-sm",children:"Something went wrong."}),g.jsx("p",{className:"text-xs text-[var(--color-danger)]",children:(z=this.state.error)==null?void 0:z.message}),g.jsx("button",{onClick:()=>window.location.reload(),className:"text-xs px-3 py-1.5 rounded-lg bg-[var(--color-accent)] text-white hover:opacity-90 transition-opacity",children:"Reload"})]}):this.props.children}}function Md(){return g.jsx("div",{className:"flex items-center justify-center h-full text-[var(--color-text-muted)]",children:"Loading..."})}function kv(){const[s,T]=O.useState("graph"),[z,o]=O.useState(!1),[N,M]=O.useState(!1),[G,Y]=O.useState(!1),{graph:D,loading:b,error:H,refresh:j}=jv(),{stats:J,refresh:yl}=Dv(),fl=O.useCallback(async()=>{await Promise.all([j(),yl()])},[j,yl]);return Mv(O.useCallback(()=>{fl()},[fl])),g.jsx(Tv,{onProjectChange:fl,children:g.jsxs("div",{className:"h-screen flex flex-col",children:[g.jsx(Av,{stats:J,onImport:()=>o(!0),onCapture:()=>M(!0),onOpenFolder:()=>Y(!0)}),g.jsx(Nv,{activeTab:s,onTabChange:T}),g.jsx("main",{className:"flex-1 min-h-0 overflow-hidden",children:b?g.jsx(Md,{}):H?g.jsx("div",{className:"flex items-center justify-center h-full text-[var(--color-danger)]",children:H}):g.jsx(wv,{children:g.jsxs(O.Suspense,{fallback:g.jsx(Md,{}),children:[g.jsx("div",{style:{display:s==="graph"?"contents":"none"},children:D&&g.jsx(Bv,{graph:D})}),g.jsx("div",{style:{display:s==="prd-backlog"?"contents":"none"},children:D&&g.jsx(qv,{graph:D})}),s==="journey"&&g.jsx(Yv,{}),s==="gitnexus"&&g.jsx(Gv,{}),s==="memories"&&g.jsx(Xv,{}),s==="insights"&&g.jsx(Qv,{}),s==="skills"&&g.jsx(Zv,{}),s==="context"&&g.jsx(Lv,{}),s==="benchmark"&&g.jsx(Vv,{}),s==="logs"&&g.jsx(Jv,{}),s==="siebel"&&g.jsx(Kv,{})]})})}),g.jsx(Uv,{open:z,onClose:()=>o(!1),onImported:fl}),g.jsx(Rv,{open:N,onClose:()=>M(!1),onImported:fl}),g.jsx(Hv,{open:G,onClose:()=>Y(!1),onFolderChanged:fl})]})})}function Wv(){return g.jsx(pv,{children:g.jsx(kv,{})})}gv.createRoot(document.getElementById("root")).render(g.jsx(O.StrictMode,{children:g.jsx(Wv,{})}));export{Hv as O,Fv as R,Mt as a,gf as b,hv as c,iv as g,g as j,O as r,Ud as t};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{b as ce,g as de,c as ge}from"./index-
|
|
1
|
+
import{b as ce,g as de,c as ge}from"./index-DtkPX5ZZ.js";function U(e,r,t){e.prototype=r.prototype=t,t.constructor=e}function se(e,r){var t=Object.create(e.prototype);for(var n in r)t[n]=r[n];return t}function M(){}var E=.7,D=1/E,S="\\s*([+-]?\\d+)\\s*",R="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)\\s*",m="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)%\\s*",be=/^#([0-9a-f]{3,8})$/,pe=new RegExp(`^rgb\\(${S},${S},${S}\\)$`),me=new RegExp(`^rgb\\(${m},${m},${m}\\)$`),ye=new RegExp(`^rgba\\(${S},${S},${S},${R}\\)$`),we=new RegExp(`^rgba\\(${m},${m},${m},${R}\\)$`),ve=new RegExp(`^hsl\\(${R},${m},${m}\\)$`),$e=new RegExp(`^hsla\\(${R},${m},${m},${R}\\)$`),Q={aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:11584734,lightyellow:16777184,lime:65280,limegreen:3329330,linen:16445670,magenta:16711935,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:12211667,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:13047173,midnightblue:1644912,mintcream:16121850,mistyrose:16770273,moccasin:16770229,navajowhite:16768685,navy:128,oldlace:16643558,olive:8421376,olivedrab:7048739,orange:16753920,orangered:16729344,orchid:14315734,palegoldenrod:15657130,palegreen:10025880,paleturquoise:11529966,palevioletred:14381203,papayawhip:16773077,peachpuff:16767673,peru:13468991,pink:16761035,plum:14524637,powderblue:11591910,purple:8388736,rebeccapurple:6697881,red:16711680,rosybrown:12357519,royalblue:4286945,saddlebrown:9127187,salmon:16416882,sandybrown:16032864,seagreen:3050327,seashell:16774638,sienna:10506797,silver:12632256,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:16775930,springgreen:65407,steelblue:4620980,tan:13808780,teal:32896,thistle:14204888,tomato:16737095,turquoise:4251856,violet:15631086,wheat:16113331,white:16777215,whitesmoke:16119285,yellow:16776960,yellowgreen:10145074};U(M,k,{copy(e){return Object.assign(new this.constructor,this,e)},displayable(){return this.rgb().displayable()},hex:X,formatHex:X,formatHex8:Ne,formatHsl:Se,formatRgb:Y,toString:Y});function X(){return this.rgb().formatHex()}function Ne(){return this.rgb().formatHex8()}function Se(){return le(this).formatHsl()}function Y(){return this.rgb().formatRgb()}function k(e){var r,t;return e=(e+"").trim().toLowerCase(),(r=be.exec(e))?(t=r[1].length,r=parseInt(r[1],16),t===6?Z(r):t===3?new h(r>>8&15|r>>4&240,r>>4&15|r&240,(r&15)<<4|r&15,1):t===8?j(r>>24&255,r>>16&255,r>>8&255,(r&255)/255):t===4?j(r>>12&15|r>>8&240,r>>8&15|r>>4&240,r>>4&15|r&240,((r&15)<<4|r&15)/255):null):(r=pe.exec(e))?new h(r[1],r[2],r[3],1):(r=me.exec(e))?new h(r[1]*255/100,r[2]*255/100,r[3]*255/100,1):(r=ye.exec(e))?j(r[1],r[2],r[3],r[4]):(r=we.exec(e))?j(r[1]*255/100,r[2]*255/100,r[3]*255/100,r[4]):(r=ve.exec(e))?te(r[1],r[2]/100,r[3]/100,1):(r=$e.exec(e))?te(r[1],r[2]/100,r[3]/100,r[4]):Q.hasOwnProperty(e)?Z(Q[e]):e==="transparent"?new h(NaN,NaN,NaN,0):null}function Z(e){return new h(e>>16&255,e>>8&255,e&255,1)}function j(e,r,t,n){return n<=0&&(e=r=t=NaN),new h(e,r,t,n)}function Ee(e){return e instanceof M||(e=k(e)),e?(e=e.rgb(),new h(e.r,e.g,e.b,e.opacity)):new h}function W(e,r,t,n){return arguments.length===1?Ee(e):new h(e,r,t,n??1)}function h(e,r,t,n){this.r=+e,this.g=+r,this.b=+t,this.opacity=+n}U(h,W,se(M,{brighter(e){return e=e==null?D:Math.pow(D,e),new h(this.r*e,this.g*e,this.b*e,this.opacity)},darker(e){return e=e==null?E:Math.pow(E,e),new h(this.r*e,this.g*e,this.b*e,this.opacity)},rgb(){return this},clamp(){return new h($(this.r),$(this.g),$(this.b),I(this.opacity))},displayable(){return-.5<=this.r&&this.r<255.5&&-.5<=this.g&&this.g<255.5&&-.5<=this.b&&this.b<255.5&&0<=this.opacity&&this.opacity<=1},hex:ee,formatHex:ee,formatHex8:Re,formatRgb:re,toString:re}));function ee(){return`#${v(this.r)}${v(this.g)}${v(this.b)}`}function Re(){return`#${v(this.r)}${v(this.g)}${v(this.b)}${v((isNaN(this.opacity)?1:this.opacity)*255)}`}function re(){const e=I(this.opacity);return`${e===1?"rgb(":"rgba("}${$(this.r)}, ${$(this.g)}, ${$(this.b)}${e===1?")":`, ${e})`}`}function I(e){return isNaN(e)?1:Math.max(0,Math.min(1,e))}function $(e){return Math.max(0,Math.min(255,Math.round(e)||0))}function v(e){return e=$(e),(e<16?"0":"")+e.toString(16)}function te(e,r,t,n){return n<=0?e=r=t=NaN:t<=0||t>=1?e=r=NaN:r<=0&&(e=NaN),new b(e,r,t,n)}function le(e){if(e instanceof b)return new b(e.h,e.s,e.l,e.opacity);if(e instanceof M||(e=k(e)),!e)return new b;if(e instanceof b)return e;e=e.rgb();var r=e.r/255,t=e.g/255,n=e.b/255,i=Math.min(r,t,n),a=Math.max(r,t,n),f=NaN,u=a-i,c=(a+i)/2;return u?(r===a?f=(t-n)/u+(t<n)*6:t===a?f=(n-r)/u+2:f=(r-t)/u+4,u/=c<.5?a+i:2-a-i,f*=60):u=c>0&&c<1?0:f,new b(f,u,c,e.opacity)}function ke(e,r,t,n){return arguments.length===1?le(e):new b(e,r,t,n??1)}function b(e,r,t,n){this.h=+e,this.s=+r,this.l=+t,this.opacity=+n}U(b,ke,se(M,{brighter(e){return e=e==null?D:Math.pow(D,e),new b(this.h,this.s,this.l*e,this.opacity)},darker(e){return e=e==null?E:Math.pow(E,e),new b(this.h,this.s,this.l*e,this.opacity)},rgb(){var e=this.h%360+(this.h<0)*360,r=isNaN(e)||isNaN(this.s)?0:this.s,t=this.l,n=t+(t<.5?t:1-t)*r,i=2*t-n;return new h(A(e>=240?e-240:e+120,i,n),A(e,i,n),A(e<120?e+240:e-120,i,n),this.opacity)},clamp(){return new b(ne(this.h),_(this.s),_(this.l),I(this.opacity))},displayable(){return(0<=this.s&&this.s<=1||isNaN(this.s))&&0<=this.l&&this.l<=1&&0<=this.opacity&&this.opacity<=1},formatHsl(){const e=I(this.opacity);return`${e===1?"hsl(":"hsla("}${ne(this.h)}, ${_(this.s)*100}%, ${_(this.l)*100}%${e===1?")":`, ${e})`}`}}));function ne(e){return e=(e||0)%360,e<0?e+360:e}function _(e){return Math.max(0,Math.min(1,e||0))}function A(e,r,t){return(e<60?r+(t-r)*e/60:e<180?t:e<240?r+(t-r)*(240-e)/60:r)*255}const B=e=>()=>e;function Me(e,r){return function(t){return e+t*r}}function He(e,r,t){return e=Math.pow(e,t),r=Math.pow(r,t)-e,t=1/t,function(n){return Math.pow(e+n*r,t)}}function qe(e){return(e=+e)==1?xe:function(r,t){return t-r?He(r,t,e):B(isNaN(r)?t:r)}}function xe(e,r){var t=r-e;return t?Me(e,t):B(isNaN(e)?r:e)}const ie=(function e(r){var t=qe(r);function n(i,a){var f=t((i=W(i)).r,(a=W(a)).r),u=t(i.g,a.g),c=t(i.b,a.b),d=xe(i.opacity,a.opacity);return function(s){return i.r=f(s),i.g=u(s),i.b=c(s),i.opacity=d(s),i+""}}return n.gamma=e,n})(1);function je(e,r){r||(r=[]);var t=e?Math.min(r.length,e.length):0,n=r.slice(),i;return function(a){for(i=0;i<t;++i)n[i]=e[i]*(1-a)+r[i]*a;return n}}function _e(e){return ArrayBuffer.isView(e)&&!(e instanceof DataView)}function De(e,r){var t=r?r.length:0,n=e?Math.min(t,e.length):0,i=new Array(n),a=new Array(t),f;for(f=0;f<n;++f)i[f]=he(e[f],r[f]);for(;f<t;++f)a[f]=r[f];return function(u){for(f=0;f<n;++f)a[f]=i[f](u);return a}}function Ie(e,r){var t=new Date;return e=+e,r=+r,function(n){return t.setTime(e*(1-n)+r*n),t}}function G(e,r){return e=+e,r=+r,function(t){return e*(1-t)+r*t}}function Ae(e,r){var t={},n={},i;(e===null||typeof e!="object")&&(e={}),(r===null||typeof r!="object")&&(r={});for(i in r)i in e?t[i]=he(e[i],r[i]):n[i]=r[i];return function(a){for(i in t)n[i]=t[i](a);return n}}var L=/[-+]?(?:\d+\.?\d*|\.?\d+)(?:[eE][-+]?\d+)?/g,V=new RegExp(L.source,"g");function Ve(e){return function(){return e}}function Oe(e){return function(r){return e(r)+""}}function Ce(e,r){var t=L.lastIndex=V.lastIndex=0,n,i,a,f=-1,u=[],c=[];for(e=e+"",r=r+"";(n=L.exec(e))&&(i=V.exec(r));)(a=i.index)>t&&(a=r.slice(t,a),u[f]?u[f]+=a:u[++f]=a),(n=n[0])===(i=i[0])?u[f]?u[f]+=i:u[++f]=i:(u[++f]=null,c.push({i:f,x:G(n,i)})),t=V.lastIndex;return t<r.length&&(a=r.slice(t),u[f]?u[f]+=a:u[++f]=a),u.length<2?c[0]?Oe(c[0].x):Ve(r):(r=c.length,function(d){for(var s=0,o;s<r;++s)u[(o=c[s]).i]=o.x(d);return u.join("")})}function he(e,r){var t=typeof r,n;return r==null||t==="boolean"?B(r):(t==="number"?G:t==="string"?(n=k(r))?(r=n,ie):Ce:r instanceof k?ie:r instanceof Date?Ie:_e(r)?je:Array.isArray(r)?De:typeof r.valueOf!="function"&&typeof r.toString!="function"||isNaN(r)?Ae:G)(e,r)}var O={exports:{}},C={},P={exports:{}},z={};/**
|
|
2
2
|
* @license React
|
|
3
3
|
* use-sync-external-store-shim.production.js
|
|
4
4
|
*
|
package/dist/web/dashboard/dist/assets/{insights-tab-X7u4J-xv.js → insights-tab-YN7G6mjm.js}
RENAMED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
var Ow=Object.defineProperty;var Sw=(e,t,r)=>t in e?Ow(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r;var Fo=(e,t,r)=>Sw(e,typeof t!="symbol"?t+"":t,r);import{r as v,a as Oi,g as Cr,b as Aw,R as Ew,j}from"./index-B1PLsGu1.js";import{d as Fa,w as _w,r as vc,i as jw}from"./index-NmopQGmQ.js";import{S as kw,d as Cw,N as Tw}from"./constants-z0QkAiYv.js";function pc(e,t){return e=+e,t=+t,function(r){return Math.round(e*(1-r)+t*r)}}function Iw(e,t){t===void 0&&(t=e,e=Fa);for(var r=0,n=t.length-1,i=t[0],a=new Array(n<0?0:n);r<n;)a[r]=e(i,i=t[++r]);return function(o){var u=Math.max(0,Math.min(n-1,Math.floor(o*=n)));return a[u](o-u)}}function Mw(e){const{completionRate:t,totalNodes:r,blockedCount:n,missingACCount:i,oversizedCount:a}=e;if(r===0)return 100;const o=t,u=(r-n)/r*100,l=(r-i)/r*100,c=(r-a)/r*100,s=o*.4+u*.25+l*.2+c*.15;return Math.round(Math.max(0,Math.min(100,s)))}function Dw(){const[e,t]=v.useState(null),[r,n]=v.useState(!0),[i,a]=v.useState(null),o=v.useCallback(async()=>{n(!0),a(null);try{const[u,l,c,s]=await Promise.all([Oi.getMetrics(),Oi.getBottlenecks(),Oi.getStats(),Oi.getKnowledgeStats().catch(()=>({total:0,bySource:{}}))]),f=Mw({completionRate:u.completionRate,totalNodes:c.totalNodes,blockedCount:c.byStatus.blocked??0,missingACCount:l.missingAcceptanceCriteria.length,oversizedCount:l.oversizedTasks.length});t({metrics:u,bottlenecks:l,stats:c,knowledgeStats:s,healthScore:f})}catch(u){a(u instanceof Error?u.message:"Failed to load insights")}finally{n(!1)}},[]);return v.useEffect(()=>{o()},[o]),{data:e,loading:r,error:i,refresh:o}}function fm(e){var t,r,n="";if(typeof e=="string"||typeof e=="number")n+=e;else if(typeof e=="object")if(Array.isArray(e)){var i=e.length;for(t=0;t<i;t++)e[t]&&(r=fm(e[t]))&&(n&&(n+=" "),n+=r)}else for(r in e)e[r]&&(n&&(n+=" "),n+=r);return n}function U(){for(var e,t,r=0,n="",i=arguments.length;r<i;r++)(e=arguments[r])&&(t=fm(e))&&(n&&(n+=" "),n+=t);return n}var Nw=["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 hc(e){if(typeof e!="string")return!1;var t=Nw;return t.includes(e)}var Rw=["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"],$w=new Set(Rw);function dm(e){return typeof e!="string"?!1:$w.has(e)}function vm(e){return typeof e=="string"&&e.startsWith("data-")}function Re(e){if(typeof e!="object"||e===null)return{};var t={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&(dm(r)||vm(r))&&(t[r]=e[r]);return t}function wr(e){if(e==null)return null;if(v.isValidElement(e)&&typeof e.props=="object"&&e.props!==null){var t=e.props;return Re(t)}return typeof e=="object"&&!Array.isArray(e)?Re(e):null}function De(e){var t={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&(dm(r)||vm(r)||hc(r))&&(t[r]=e[r]);return t}var Lw=["children","width","height","viewBox","className","style","title","desc"];function vl(){return vl=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},vl.apply(null,arguments)}function Bw(e,t){if(e==null)return{};var r,n,i=zw(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(n=0;n<a.length;n++)r=a[n],t.indexOf(r)===-1&&{}.propertyIsEnumerable.call(e,r)&&(i[r]=e[r])}return i}function zw(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 mc=v.forwardRef((e,t)=>{var{children:r,width:n,height:i,viewBox:a,className:o,style:u,title:l,desc:c}=e,s=Bw(e,Lw),f=a||{width:n,height:i,x:0,y:0},d=U("recharts-surface",o);return v.createElement("svg",vl({},De(s),{className:d,width:n,height:i,style:u,viewBox:"".concat(f.x," ").concat(f.y," ").concat(f.width," ").concat(f.height),ref:t}),v.createElement("title",null,l),v.createElement("desc",null,c),r)}),Fw=["children","className"];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)}function Kw(e,t){if(e==null)return{};var r,n,i=Ww(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(n=0;n<a.length;n++)r=a[n],t.indexOf(r)===-1&&{}.propertyIsEnumerable.call(e,r)&&(i[r]=e[r])}return i}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 ve=v.forwardRef((e,t)=>{var{children:r,className:n}=e,i=Kw(e,Fw),a=U("recharts-layer",n);return v.createElement("g",pl({className:a},De(i),{ref:t}),r)}),pm=v.createContext(null),qw=()=>v.useContext(pm);function re(e){return function(){return e}}const hm=Math.cos,Gi=Math.sin,vt=Math.sqrt,Vi=Math.PI,Ka=2*Vi,hl=Math.PI,ml=2*hl,dr=1e-6,Uw=ml-dr;function mm(e){this._+=e[0];for(let t=1,r=e.length;t<r;++t)this._+=arguments[t]+e[t]}function Hw(e){let t=Math.floor(e);if(!(t>=0))throw new Error(`invalid digits: ${e}`);if(t>15)return mm;const r=10**t;return function(n){this._+=n[0];for(let i=1,a=n.length;i<a;++i)this._+=Math.round(arguments[i]*r)/r+n[i]}}class Yw{constructor(t){this._x0=this._y0=this._x1=this._y1=null,this._="",this._append=t==null?mm:Hw(t)}moveTo(t,r){this._append`M${this._x0=this._x1=+t},${this._y0=this._y1=+r}`}closePath(){this._x1!==null&&(this._x1=this._x0,this._y1=this._y0,this._append`Z`)}lineTo(t,r){this._append`L${this._x1=+t},${this._y1=+r}`}quadraticCurveTo(t,r,n,i){this._append`Q${+t},${+r},${this._x1=+n},${this._y1=+i}`}bezierCurveTo(t,r,n,i,a,o){this._append`C${+t},${+r},${+n},${+i},${this._x1=+a},${this._y1=+o}`}arcTo(t,r,n,i,a){if(t=+t,r=+r,n=+n,i=+i,a=+a,a<0)throw new Error(`negative radius: ${a}`);let o=this._x1,u=this._y1,l=n-t,c=i-r,s=o-t,f=u-r,d=s*s+f*f;if(this._x1===null)this._append`M${this._x1=t},${this._y1=r}`;else if(d>dr)if(!(Math.abs(f*l-c*s)>dr)||!a)this._append`L${this._x1=t},${this._y1=r}`;else{let p=n-o,h=i-u,m=l*l+c*c,y=p*p+h*h,g=Math.sqrt(m),b=Math.sqrt(d),P=a*Math.tan((hl-Math.acos((m+d-y)/(2*g*b)))/2),x=P/b,O=P/g;Math.abs(x-1)>dr&&this._append`L${t+x*s},${r+x*f}`,this._append`A${a},${a},0,0,${+(f*p>s*h)},${this._x1=t+O*l},${this._y1=r+O*c}`}}arc(t,r,n,i,a,o){if(t=+t,r=+r,n=+n,o=!!o,n<0)throw new Error(`negative radius: ${n}`);let u=n*Math.cos(i),l=n*Math.sin(i),c=t+u,s=r+l,f=1^o,d=o?i-a:a-i;this._x1===null?this._append`M${c},${s}`:(Math.abs(this._x1-c)>dr||Math.abs(this._y1-s)>dr)&&this._append`L${c},${s}`,n&&(d<0&&(d=d%ml+ml),d>Uw?this._append`A${n},${n},0,1,${f},${t-u},${r-l}A${n},${n},0,1,${f},${this._x1=c},${this._y1=s}`:d>dr&&this._append`A${n},${n},0,${+(d>=hl)},${f},${this._x1=t+n*Math.cos(a)},${this._y1=r+n*Math.sin(a)}`)}rect(t,r,n,i){this._append`M${this._x0=this._x1=+t},${this._y0=this._y1=+r}h${n=+n}v${+i}h${-n}Z`}toString(){return this._}}function yc(e){let t=3;return e.digits=function(r){if(!arguments.length)return t;if(r==null)t=null;else{const n=Math.floor(r);if(!(n>=0))throw new RangeError(`invalid digits: ${r}`);t=n}return e},()=>new Yw(t)}function gc(e){return typeof e=="object"&&"length"in e?e:Array.from(e)}function ym(e){this._context=e}ym.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._line?this._context.lineTo(e,t):this._context.moveTo(e,t);break;case 1:this._point=2;default:this._context.lineTo(e,t);break}}};function Wa(e){return new ym(e)}function gm(e){return e[0]}function bm(e){return e[1]}function wm(e,t){var r=re(!0),n=null,i=Wa,a=null,o=yc(u);e=typeof e=="function"?e:e===void 0?gm:re(e),t=typeof t=="function"?t:t===void 0?bm:re(t);function u(l){var c,s=(l=gc(l)).length,f,d=!1,p;for(n==null&&(a=i(p=o())),c=0;c<=s;++c)!(c<s&&r(f=l[c],c,l))===d&&((d=!d)?a.lineStart():a.lineEnd()),d&&a.point(+e(f,c,l),+t(f,c,l));if(p)return a=null,p+""||null}return u.x=function(l){return arguments.length?(e=typeof l=="function"?l:re(+l),u):e},u.y=function(l){return arguments.length?(t=typeof l=="function"?l:re(+l),u):t},u.defined=function(l){return arguments.length?(r=typeof l=="function"?l:re(!!l),u):r},u.curve=function(l){return arguments.length?(i=l,n!=null&&(a=i(n)),u):i},u.context=function(l){return arguments.length?(l==null?n=a=null:a=i(n=l),u):n},u}function Si(e,t,r){var n=null,i=re(!0),a=null,o=Wa,u=null,l=yc(c);e=typeof e=="function"?e:e===void 0?gm:re(+e),t=typeof t=="function"?t:re(t===void 0?0:+t),r=typeof r=="function"?r:r===void 0?bm:re(+r);function c(f){var d,p,h,m=(f=gc(f)).length,y,g=!1,b,P=new Array(m),x=new Array(m);for(a==null&&(u=o(b=l())),d=0;d<=m;++d){if(!(d<m&&i(y=f[d],d,f))===g)if(g=!g)p=d,u.areaStart(),u.lineStart();else{for(u.lineEnd(),u.lineStart(),h=d-1;h>=p;--h)u.point(P[h],x[h]);u.lineEnd(),u.areaEnd()}g&&(P[d]=+e(y,d,f),x[d]=+t(y,d,f),u.point(n?+n(y,d,f):P[d],r?+r(y,d,f):x[d]))}if(b)return u=null,b+""||null}function s(){return wm().defined(i).curve(o).context(a)}return c.x=function(f){return arguments.length?(e=typeof f=="function"?f:re(+f),n=null,c):e},c.x0=function(f){return arguments.length?(e=typeof f=="function"?f:re(+f),c):e},c.x1=function(f){return arguments.length?(n=f==null?null:typeof f=="function"?f:re(+f),c):n},c.y=function(f){return arguments.length?(t=typeof f=="function"?f:re(+f),r=null,c):t},c.y0=function(f){return arguments.length?(t=typeof f=="function"?f:re(+f),c):t},c.y1=function(f){return arguments.length?(r=f==null?null:typeof f=="function"?f:re(+f),c):r},c.lineX0=c.lineY0=function(){return s().x(e).y(t)},c.lineY1=function(){return s().x(e).y(r)},c.lineX1=function(){return s().x(n).y(t)},c.defined=function(f){return arguments.length?(i=typeof f=="function"?f:re(!!f),c):i},c.curve=function(f){return arguments.length?(o=f,a!=null&&(u=o(a)),c):o},c.context=function(f){return arguments.length?(f==null?a=u=null:u=o(a=f),c):a},c}class xm{constructor(t,r){this._context=t,this._x=r}areaStart(){this._line=0}areaEnd(){this._line=NaN}lineStart(){this._point=0}lineEnd(){(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line}point(t,r){switch(t=+t,r=+r,this._point){case 0:{this._point=1,this._line?this._context.lineTo(t,r):this._context.moveTo(t,r);break}case 1:this._point=2;default:{this._x?this._context.bezierCurveTo(this._x0=(this._x0+t)/2,this._y0,this._x0,r,t,r):this._context.bezierCurveTo(this._x0,this._y0=(this._y0+r)/2,t,this._y0,t,r);break}}this._x0=t,this._y0=r}}function Gw(e){return new xm(e,!0)}function Vw(e){return new xm(e,!1)}const bc={draw(e,t){const r=vt(t/Vi);e.moveTo(r,0),e.arc(0,0,r,0,Ka)}},Xw={draw(e,t){const r=vt(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()}},Pm=vt(1/3),Zw=Pm*2,Qw={draw(e,t){const r=vt(t/Zw),n=r*Pm;e.moveTo(0,-r),e.lineTo(n,0),e.lineTo(0,r),e.lineTo(-n,0),e.closePath()}},Jw={draw(e,t){const r=vt(t),n=-r/2;e.rect(n,n,r,r)}},ex=.8908130915292852,Om=Gi(Vi/10)/Gi(7*Vi/10),tx=Gi(Ka/10)*Om,rx=-hm(Ka/10)*Om,nx={draw(e,t){const r=vt(t*ex),n=tx*r,i=rx*r;e.moveTo(0,-r),e.lineTo(n,i);for(let a=1;a<5;++a){const o=Ka*a/5,u=hm(o),l=Gi(o);e.lineTo(l*r,-u*r),e.lineTo(u*n-l*i,l*n+u*i)}e.closePath()}},Ko=vt(3),ix={draw(e,t){const r=-vt(t/(Ko*3));e.moveTo(0,r*2),e.lineTo(-Ko*r,-r),e.lineTo(Ko*r,-r),e.closePath()}},tt=-.5,rt=vt(3)/2,yl=1/vt(12),ax=(yl/2+1)*3,ox={draw(e,t){const r=vt(t/ax),n=r/2,i=r*yl,a=n,o=r*yl+r,u=-a,l=o;e.moveTo(n,i),e.lineTo(a,o),e.lineTo(u,l),e.lineTo(tt*n-rt*i,rt*n+tt*i),e.lineTo(tt*a-rt*o,rt*a+tt*o),e.lineTo(tt*u-rt*l,rt*u+tt*l),e.lineTo(tt*n+rt*i,tt*i-rt*n),e.lineTo(tt*a+rt*o,tt*o-rt*a),e.lineTo(tt*u+rt*l,tt*l-rt*u),e.closePath()}};function ux(e,t){let r=null,n=yc(i);e=typeof e=="function"?e:re(e||bc),t=typeof t=="function"?t:re(t===void 0?64:+t);function i(){let a;if(r||(r=a=n()),e.apply(this,arguments).draw(r,+t.apply(this,arguments)),a)return r=null,a+""||null}return i.type=function(a){return arguments.length?(e=typeof a=="function"?a:re(a),i):e},i.size=function(a){return arguments.length?(t=typeof a=="function"?a:re(+a),i):t},i.context=function(a){return arguments.length?(r=a??null,i):r},i}function Xi(){}function Zi(e,t,r){e._context.bezierCurveTo((2*e._x0+e._x1)/3,(2*e._y0+e._y1)/3,(e._x0+2*e._x1)/3,(e._y0+2*e._y1)/3,(e._x0+4*e._x1+t)/6,(e._y0+4*e._y1+r)/6)}function Sm(e){this._context=e}Sm.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},lineEnd:function(){switch(this._point){case 3:Zi(this,this._x1,this._y1);case 2:this._context.lineTo(this._x1,this._y1);break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._line?this._context.lineTo(e,t):this._context.moveTo(e,t);break;case 1:this._point=2;break;case 2:this._point=3,this._context.lineTo((5*this._x0+this._x1)/6,(5*this._y0+this._y1)/6);default:Zi(this,e,t);break}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=t}};function lx(e){return new Sm(e)}function Am(e){this._context=e}Am.prototype={areaStart:Xi,areaEnd:Xi,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._y0=this._y1=this._y2=this._y3=this._y4=NaN,this._point=0},lineEnd:function(){switch(this._point){case 1:{this._context.moveTo(this._x2,this._y2),this._context.closePath();break}case 2:{this._context.moveTo((this._x2+2*this._x3)/3,(this._y2+2*this._y3)/3),this._context.lineTo((this._x3+2*this._x2)/3,(this._y3+2*this._y2)/3),this._context.closePath();break}case 3:{this.point(this._x2,this._y2),this.point(this._x3,this._y3),this.point(this._x4,this._y4);break}}},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._x2=e,this._y2=t;break;case 1:this._point=2,this._x3=e,this._y3=t;break;case 2:this._point=3,this._x4=e,this._y4=t,this._context.moveTo((this._x0+4*this._x1+e)/6,(this._y0+4*this._y1+t)/6);break;default:Zi(this,e,t);break}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=t}};function cx(e){return new Am(e)}function Em(e){this._context=e}Em.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===3)&&this._context.closePath(),this._line=1-this._line},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3;var r=(this._x0+4*this._x1+e)/6,n=(this._y0+4*this._y1+t)/6;this._line?this._context.lineTo(r,n):this._context.moveTo(r,n);break;case 3:this._point=4;default:Zi(this,e,t);break}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=t}};function sx(e){return new Em(e)}function _m(e){this._context=e}_m.prototype={areaStart:Xi,areaEnd:Xi,lineStart:function(){this._point=0},lineEnd:function(){this._point&&this._context.closePath()},point:function(e,t){e=+e,t=+t,this._point?this._context.lineTo(e,t):(this._point=1,this._context.moveTo(e,t))}};function fx(e){return new _m(e)}function wf(e){return e<0?-1:1}function xf(e,t,r){var n=e._x1-e._x0,i=t-e._x1,a=(e._y1-e._y0)/(n||i<0&&-0),o=(r-e._y1)/(i||n<0&&-0),u=(a*i+o*n)/(n+i);return(wf(a)+wf(o))*Math.min(Math.abs(a),Math.abs(o),.5*Math.abs(u))||0}function Pf(e,t){var r=e._x1-e._x0;return r?(3*(e._y1-e._y0)/r-t)/2:t}function Wo(e,t,r){var n=e._x0,i=e._y0,a=e._x1,o=e._y1,u=(a-n)/3;e._context.bezierCurveTo(n+u,i+u*t,a-u,o-u*r,a,o)}function Qi(e){this._context=e}Qi.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=this._t0=NaN,this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x1,this._y1);break;case 3:Wo(this,this._t0,Pf(this,this._t0));break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(e,t){var r=NaN;if(e=+e,t=+t,!(e===this._x1&&t===this._y1)){switch(this._point){case 0:this._point=1,this._line?this._context.lineTo(e,t):this._context.moveTo(e,t);break;case 1:this._point=2;break;case 2:this._point=3,Wo(this,Pf(this,r=xf(this,e,t)),r);break;default:Wo(this,this._t0,r=xf(this,e,t));break}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=t,this._t0=r}}};function jm(e){this._context=new km(e)}(jm.prototype=Object.create(Qi.prototype)).point=function(e,t){Qi.prototype.point.call(this,t,e)};function km(e){this._context=e}km.prototype={moveTo:function(e,t){this._context.moveTo(t,e)},closePath:function(){this._context.closePath()},lineTo:function(e,t){this._context.lineTo(t,e)},bezierCurveTo:function(e,t,r,n,i,a){this._context.bezierCurveTo(t,e,n,r,a,i)}};function dx(e){return new Qi(e)}function vx(e){return new jm(e)}function Cm(e){this._context=e}Cm.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x=[],this._y=[]},lineEnd:function(){var e=this._x,t=this._y,r=e.length;if(r)if(this._line?this._context.lineTo(e[0],t[0]):this._context.moveTo(e[0],t[0]),r===2)this._context.lineTo(e[1],t[1]);else for(var n=Of(e),i=Of(t),a=0,o=1;o<r;++a,++o)this._context.bezierCurveTo(n[0][a],i[0][a],n[1][a],i[1][a],e[o],t[o]);(this._line||this._line!==0&&r===1)&&this._context.closePath(),this._line=1-this._line,this._x=this._y=null},point:function(e,t){this._x.push(+e),this._y.push(+t)}};function Of(e){var t,r=e.length-1,n,i=new Array(r),a=new Array(r),o=new Array(r);for(i[0]=0,a[0]=2,o[0]=e[0]+2*e[1],t=1;t<r-1;++t)i[t]=1,a[t]=4,o[t]=4*e[t]+2*e[t+1];for(i[r-1]=2,a[r-1]=7,o[r-1]=8*e[r-1]+e[r],t=1;t<r;++t)n=i[t]/a[t-1],a[t]-=n,o[t]-=n*o[t-1];for(i[r-1]=o[r-1]/a[r-1],t=r-2;t>=0;--t)i[t]=(o[t]-i[t+1])/a[t];for(a[r-1]=(e[r]+i[r-1])/2,t=0;t<r-1;++t)a[t]=2*e[t+1]-i[t+1];return[i,a]}function px(e){return new Cm(e)}function qa(e,t){this._context=e,this._t=t}qa.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x=this._y=NaN,this._point=0},lineEnd:function(){0<this._t&&this._t<1&&this._point===2&&this._context.lineTo(this._x,this._y),(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line>=0&&(this._t=1-this._t,this._line=1-this._line)},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._line?this._context.lineTo(e,t):this._context.moveTo(e,t);break;case 1:this._point=2;default:{if(this._t<=0)this._context.lineTo(this._x,t),this._context.lineTo(e,t);else{var r=this._x*(1-this._t)+e*this._t;this._context.lineTo(r,this._y),this._context.lineTo(r,t)}break}}this._x=e,this._y=t}};function hx(e){return new qa(e,.5)}function mx(e){return new qa(e,0)}function yx(e){return new qa(e,1)}function xr(e,t){if((o=e.length)>1)for(var r=1,n,i,a=e[t[0]],o,u=a.length;r<o;++r)for(i=a,a=e[t[r]],n=0;n<u;++n)a[n][1]+=a[n][0]=isNaN(i[n][1])?i[n][0]:i[n][1]}function gl(e){for(var t=e.length,r=new Array(t);--t>=0;)r[t]=t;return r}function gx(e,t){return e[t]}function bx(e){const t=[];return t.key=e,t}function wx(){var e=re([]),t=gl,r=xr,n=gx;function i(a){var o=Array.from(e.apply(this,arguments),bx),u,l=o.length,c=-1,s;for(const f of a)for(u=0,++c;u<l;++u)(o[u][c]=[0,+n(f,o[u].key,c,a)]).data=f;for(u=0,s=gc(t(o));u<l;++u)o[s[u]].index=u;return r(o,s),o}return i.keys=function(a){return arguments.length?(e=typeof a=="function"?a:re(Array.from(a)),i):e},i.value=function(a){return arguments.length?(n=typeof a=="function"?a:re(+a),i):n},i.order=function(a){return arguments.length?(t=a==null?gl:typeof a=="function"?a:re(Array.from(a)),i):t},i.offset=function(a){return arguments.length?(r=a??xr,i):r},i}function xx(e,t){if((n=e.length)>0){for(var r,n,i=0,a=e[0].length,o;i<a;++i){for(o=r=0;r<n;++r)o+=e[r][i][1]||0;if(o)for(r=0;r<n;++r)e[r][i][1]/=o}xr(e,t)}}function Px(e,t){if((i=e.length)>0){for(var r=0,n=e[t[0]],i,a=n.length;r<a;++r){for(var o=0,u=0;o<i;++o)u+=e[o][r][1]||0;n[r][1]+=n[r][0]=-u/2}xr(e,t)}}function Ox(e,t){if(!(!((o=e.length)>0)||!((a=(i=e[t[0]]).length)>0))){for(var r=0,n=1,i,a,o;n<a;++n){for(var u=0,l=0,c=0;u<o;++u){for(var s=e[t[u]],f=s[n][1]||0,d=s[n-1][1]||0,p=(f-d)/2,h=0;h<u;++h){var m=e[t[h]],y=m[n][1]||0,g=m[n-1][1]||0;p+=y-g}l+=f,c+=p*f}i[n-1][1]+=i[n-1][0]=r,l&&(r-=c/l)}i[n-1][1]+=i[n-1][0]=r,xr(e,t)}}var qo={},Uo={},Sf;function Sx(){return Sf||(Sf=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(r){return r==="__proto__"}e.isUnsafeProperty=t})(Uo)),Uo}var Ho={},Af;function Tm(){return Af||(Af=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})(Ho)),Ho}var Yo={},Ef;function wc(){return Ef||(Ef=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(r){var n;return typeof r=="string"||typeof r=="symbol"?r:Object.is((n=r==null?void 0:r.valueOf)==null?void 0:n.call(r),-0)?"-0":String(r)}e.toKey=t})(Yo)),Yo}var Go={},Vo={},_f;function Ax(){return _f||(_f=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})(Vo)),Vo}var jf;function xc(){return jf||(jf=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=Ax(),r=wc();function n(i){if(Array.isArray(i))return i.map(r.toKey);if(typeof i=="symbol")return[i];i=t.toString(i);const a=[],o=i.length;if(o===0)return a;let u=0,l="",c="",s=!1;for(i.charCodeAt(0)===46&&(a.push(""),u++);u<o;){const f=i[u];c?f==="\\"&&u+1<o?(u++,l+=i[u]):f===c?c="":l+=f:s?f==='"'||f==="'"?c=f:f==="]"?(s=!1,a.push(l),l=""):l+=f:f==="["?(s=!0,l&&(a.push(l),l="")):f==="."?l&&(a.push(l),l=""):l+=f,u++}return l&&a.push(l),a}e.toPath=n})(Go)),Go}var kf;function Pc(){return kf||(kf=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=Sx(),r=Tm(),n=wc(),i=xc();function a(u,l,c){if(u==null)return c;switch(typeof l){case"string":{if(t.isUnsafeProperty(l))return c;const s=u[l];return s===void 0?r.isDeepKey(l)?a(u,i.toPath(l),c):c:s}case"number":case"symbol":{typeof l=="number"&&(l=n.toKey(l));const s=u[l];return s===void 0?c:s}default:{if(Array.isArray(l))return o(u,l,c);if(Object.is(l==null?void 0:l.valueOf(),-0)?l="-0":l=String(l),t.isUnsafeProperty(l))return c;const s=u[l];return s===void 0?c:s}}}function o(u,l,c){if(l.length===0)return c;let s=u;for(let f=0;f<l.length;f++){if(s==null||t.isUnsafeProperty(l[f]))return c;s=s[l[f]]}return s===void 0?c:s}e.get=a})(qo)),qo}var Xo,Cf;function Ex(){return Cf||(Cf=1,Xo=Pc().get),Xo}var _x=Ex();const Pr=Cr(_x);var jx=4;function Xt(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:jx,r=10**t,n=Math.round(e*r)/r;return Object.is(n,-0)?0:n}function ce(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((i,a,o)=>{var u=r[o-1];return typeof u=="string"?i+u+a:u!==void 0?i+Xt(u)+a:i+a},"")}var Se=e=>e===0?0:e>0?1:-1,xt=e=>typeof e=="number"&&e!=+e,Or=e=>typeof e=="string"&&e.indexOf("%")===e.length-1,L=e=>(typeof e=="number"||e instanceof Number)&&!xt(e),Pt=e=>L(e)||typeof e=="string",kx=0,Dn=e=>{var t=++kx;return"".concat(e||"").concat(t)},Ne=function(t,r){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0,i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1;if(!L(t)&&typeof t!="string")return n;var a;if(Or(t)){if(r==null)return n;var o=t.indexOf("%");a=r*parseFloat(t.slice(0,o))/100}else a=+t;return xt(a)&&(a=n),i&&r!=null&&a>r&&(a=r),a},Im=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 de(e,t,r){return L(e)&&L(t)?Xt(e+r*(t-e)):t}function Cx(e,t,r){if(!(!e||!e.length))return e.find(n=>n&&(typeof t=="function"?t(n):Pr(n,t))===r)}var ge=e=>e===null||typeof e>"u",Yn=e=>ge(e)?e:"".concat(e.charAt(0).toUpperCase()).concat(e.slice(1));function yt(e){return e!=null}function $t(){}var Tx=["type","size","sizeType"];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 Tf(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),r.push.apply(r,n)}return r}function If(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?Tf(Object(r),!0).forEach(function(n){Ix(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):Tf(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function Ix(e,t,r){return(t=Mx(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function Mx(e){var t=Dx(e,"string");return typeof t=="symbol"?t:t+""}function Dx(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 Nx(e,t){if(e==null)return{};var r,n,i=Rx(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(n=0;n<a.length;n++)r=a[n],t.indexOf(r)===-1&&{}.propertyIsEnumerable.call(e,r)&&(i[r]=e[r])}return i}function Rx(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 Mm={symbolCircle:bc,symbolCross:Xw,symbolDiamond:Qw,symbolSquare:Jw,symbolStar:nx,symbolTriangle:ix,symbolWye:ox},$x=Math.PI/180,Lx=e=>{var t="symbol".concat(Yn(e));return Mm[t]||bc},Bx=(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*$x;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}},zx=(e,t)=>{Mm["symbol".concat(Yn(e))]=t},Oc=e=>{var{type:t="circle",size:r=64,sizeType:n="area"}=e,i=Nx(e,Tx),a=If(If({},i),{},{type:t,size:r,sizeType:n}),o="circle";typeof t=="string"&&(o=t);var u=()=>{var d=Lx(o),p=ux().type(d).size(Bx(r,n,o)),h=p();if(h!==null)return h},{className:l,cx:c,cy:s}=a,f=De(a);return L(c)&&L(s)&&L(r)?v.createElement("path",bl({},f,{className:U("recharts-symbols",l),transform:"translate(".concat(c,", ").concat(s,")"),d:u()})):null};Oc.registerSymbol=zx;var Dm=e=>"radius"in e&&"startAngle"in e&&"endAngle"in e,Nm=(e,t)=>{if(!e||typeof e=="function"||typeof e=="boolean")return null;var r=e;if(v.isValidElement(e)&&(r=e.props),typeof r!="object"&&typeof r!="function")return null;var n={};return Object.keys(r).forEach(i=>{hc(i)&&typeof r[i]=="function"&&(n[i]=(a=>r[i](r,a)))}),n},Fx=(e,t,r)=>n=>(e(t,r,n),null),ir=(e,t,r)=>{if(e===null||typeof e!="object"&&typeof e!="function")return null;var n=null;return Object.keys(e).forEach(i=>{var a=e[i];hc(i)&&typeof a=="function"&&(n||(n={}),n[i]=Fx(a,t,r))}),n};function Mf(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),r.push.apply(r,n)}return r}function Kx(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?Mf(Object(r),!0).forEach(function(n){Wx(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):Mf(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function Wx(e,t,r){return(t=qx(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function qx(e){var t=Ux(e,"string");return typeof t=="symbol"?t:t+""}function Ux(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 be(e,t){var r=Kx({},e),n=t,i=Object.keys(t),a=i.reduce((o,u)=>(o[u]===void 0&&n[u]!==void 0&&(o[u]=n[u]),o),r);return a}function Ji(){return Ji=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},Ji.apply(null,arguments)}function Df(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),r.push.apply(r,n)}return r}function Rm(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){Hx(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 Hx(e,t,r){return(t=Yx(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function Yx(e){var t=Gx(e,"string");return typeof t=="symbol"?t:t+""}function Gx(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=32,Vx={align:"center",iconSize:14,inactiveColor:"#ccc",layout:"horizontal",verticalAlign:"middle",labelStyle:{}};function Xx(e){if(typeof e=="object"&&e!==null&&"strokeDasharray"in e)return String(e.strokeDasharray)}function Zx(e){var{data:t,iconType:r,inactiveColor:n}=e,i=it/2,a=it/6,o=it/3,u=t.inactive?n:t.color,l=r??t.type;if(l==="none")return null;if(l==="plainline")return v.createElement("line",{strokeWidth:4,fill:"none",stroke:u,strokeDasharray:Xx(t.payload),x1:0,y1:i,x2:it,y2:i,className:"recharts-legend-icon"});if(l==="line")return v.createElement("path",{strokeWidth:4,fill:"none",stroke:u,d:"M0,".concat(i,"h").concat(o,`
|
|
1
|
+
var Ow=Object.defineProperty;var Sw=(e,t,r)=>t in e?Ow(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r;var Fo=(e,t,r)=>Sw(e,typeof t!="symbol"?t+"":t,r);import{r as v,a as Oi,g as Cr,b as Aw,R as Ew,j}from"./index-DtkPX5ZZ.js";import{d as Fa,w as _w,r as vc,i as jw}from"./index-F9dY4AG_.js";import{S as kw,d as Cw,N as Tw}from"./constants-z0QkAiYv.js";function pc(e,t){return e=+e,t=+t,function(r){return Math.round(e*(1-r)+t*r)}}function Iw(e,t){t===void 0&&(t=e,e=Fa);for(var r=0,n=t.length-1,i=t[0],a=new Array(n<0?0:n);r<n;)a[r]=e(i,i=t[++r]);return function(o){var u=Math.max(0,Math.min(n-1,Math.floor(o*=n)));return a[u](o-u)}}function Mw(e){const{completionRate:t,totalNodes:r,blockedCount:n,missingACCount:i,oversizedCount:a}=e;if(r===0)return 100;const o=t,u=(r-n)/r*100,l=(r-i)/r*100,c=(r-a)/r*100,s=o*.4+u*.25+l*.2+c*.15;return Math.round(Math.max(0,Math.min(100,s)))}function Dw(){const[e,t]=v.useState(null),[r,n]=v.useState(!0),[i,a]=v.useState(null),o=v.useCallback(async()=>{n(!0),a(null);try{const[u,l,c,s]=await Promise.all([Oi.getMetrics(),Oi.getBottlenecks(),Oi.getStats(),Oi.getKnowledgeStats().catch(()=>({total:0,bySource:{}}))]),f=Mw({completionRate:u.completionRate,totalNodes:c.totalNodes,blockedCount:c.byStatus.blocked??0,missingACCount:l.missingAcceptanceCriteria.length,oversizedCount:l.oversizedTasks.length});t({metrics:u,bottlenecks:l,stats:c,knowledgeStats:s,healthScore:f})}catch(u){a(u instanceof Error?u.message:"Failed to load insights")}finally{n(!1)}},[]);return v.useEffect(()=>{o()},[o]),{data:e,loading:r,error:i,refresh:o}}function fm(e){var t,r,n="";if(typeof e=="string"||typeof e=="number")n+=e;else if(typeof e=="object")if(Array.isArray(e)){var i=e.length;for(t=0;t<i;t++)e[t]&&(r=fm(e[t]))&&(n&&(n+=" "),n+=r)}else for(r in e)e[r]&&(n&&(n+=" "),n+=r);return n}function U(){for(var e,t,r=0,n="",i=arguments.length;r<i;r++)(e=arguments[r])&&(t=fm(e))&&(n&&(n+=" "),n+=t);return n}var Nw=["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 hc(e){if(typeof e!="string")return!1;var t=Nw;return t.includes(e)}var Rw=["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"],$w=new Set(Rw);function dm(e){return typeof e!="string"?!1:$w.has(e)}function vm(e){return typeof e=="string"&&e.startsWith("data-")}function Re(e){if(typeof e!="object"||e===null)return{};var t={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&(dm(r)||vm(r))&&(t[r]=e[r]);return t}function wr(e){if(e==null)return null;if(v.isValidElement(e)&&typeof e.props=="object"&&e.props!==null){var t=e.props;return Re(t)}return typeof e=="object"&&!Array.isArray(e)?Re(e):null}function De(e){var t={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&(dm(r)||vm(r)||hc(r))&&(t[r]=e[r]);return t}var Lw=["children","width","height","viewBox","className","style","title","desc"];function vl(){return vl=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},vl.apply(null,arguments)}function Bw(e,t){if(e==null)return{};var r,n,i=zw(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(n=0;n<a.length;n++)r=a[n],t.indexOf(r)===-1&&{}.propertyIsEnumerable.call(e,r)&&(i[r]=e[r])}return i}function zw(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 mc=v.forwardRef((e,t)=>{var{children:r,width:n,height:i,viewBox:a,className:o,style:u,title:l,desc:c}=e,s=Bw(e,Lw),f=a||{width:n,height:i,x:0,y:0},d=U("recharts-surface",o);return v.createElement("svg",vl({},De(s),{className:d,width:n,height:i,style:u,viewBox:"".concat(f.x," ").concat(f.y," ").concat(f.width," ").concat(f.height),ref:t}),v.createElement("title",null,l),v.createElement("desc",null,c),r)}),Fw=["children","className"];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)}function Kw(e,t){if(e==null)return{};var r,n,i=Ww(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(n=0;n<a.length;n++)r=a[n],t.indexOf(r)===-1&&{}.propertyIsEnumerable.call(e,r)&&(i[r]=e[r])}return i}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 ve=v.forwardRef((e,t)=>{var{children:r,className:n}=e,i=Kw(e,Fw),a=U("recharts-layer",n);return v.createElement("g",pl({className:a},De(i),{ref:t}),r)}),pm=v.createContext(null),qw=()=>v.useContext(pm);function re(e){return function(){return e}}const hm=Math.cos,Gi=Math.sin,vt=Math.sqrt,Vi=Math.PI,Ka=2*Vi,hl=Math.PI,ml=2*hl,dr=1e-6,Uw=ml-dr;function mm(e){this._+=e[0];for(let t=1,r=e.length;t<r;++t)this._+=arguments[t]+e[t]}function Hw(e){let t=Math.floor(e);if(!(t>=0))throw new Error(`invalid digits: ${e}`);if(t>15)return mm;const r=10**t;return function(n){this._+=n[0];for(let i=1,a=n.length;i<a;++i)this._+=Math.round(arguments[i]*r)/r+n[i]}}class Yw{constructor(t){this._x0=this._y0=this._x1=this._y1=null,this._="",this._append=t==null?mm:Hw(t)}moveTo(t,r){this._append`M${this._x0=this._x1=+t},${this._y0=this._y1=+r}`}closePath(){this._x1!==null&&(this._x1=this._x0,this._y1=this._y0,this._append`Z`)}lineTo(t,r){this._append`L${this._x1=+t},${this._y1=+r}`}quadraticCurveTo(t,r,n,i){this._append`Q${+t},${+r},${this._x1=+n},${this._y1=+i}`}bezierCurveTo(t,r,n,i,a,o){this._append`C${+t},${+r},${+n},${+i},${this._x1=+a},${this._y1=+o}`}arcTo(t,r,n,i,a){if(t=+t,r=+r,n=+n,i=+i,a=+a,a<0)throw new Error(`negative radius: ${a}`);let o=this._x1,u=this._y1,l=n-t,c=i-r,s=o-t,f=u-r,d=s*s+f*f;if(this._x1===null)this._append`M${this._x1=t},${this._y1=r}`;else if(d>dr)if(!(Math.abs(f*l-c*s)>dr)||!a)this._append`L${this._x1=t},${this._y1=r}`;else{let p=n-o,h=i-u,m=l*l+c*c,y=p*p+h*h,g=Math.sqrt(m),b=Math.sqrt(d),P=a*Math.tan((hl-Math.acos((m+d-y)/(2*g*b)))/2),x=P/b,O=P/g;Math.abs(x-1)>dr&&this._append`L${t+x*s},${r+x*f}`,this._append`A${a},${a},0,0,${+(f*p>s*h)},${this._x1=t+O*l},${this._y1=r+O*c}`}}arc(t,r,n,i,a,o){if(t=+t,r=+r,n=+n,o=!!o,n<0)throw new Error(`negative radius: ${n}`);let u=n*Math.cos(i),l=n*Math.sin(i),c=t+u,s=r+l,f=1^o,d=o?i-a:a-i;this._x1===null?this._append`M${c},${s}`:(Math.abs(this._x1-c)>dr||Math.abs(this._y1-s)>dr)&&this._append`L${c},${s}`,n&&(d<0&&(d=d%ml+ml),d>Uw?this._append`A${n},${n},0,1,${f},${t-u},${r-l}A${n},${n},0,1,${f},${this._x1=c},${this._y1=s}`:d>dr&&this._append`A${n},${n},0,${+(d>=hl)},${f},${this._x1=t+n*Math.cos(a)},${this._y1=r+n*Math.sin(a)}`)}rect(t,r,n,i){this._append`M${this._x0=this._x1=+t},${this._y0=this._y1=+r}h${n=+n}v${+i}h${-n}Z`}toString(){return this._}}function yc(e){let t=3;return e.digits=function(r){if(!arguments.length)return t;if(r==null)t=null;else{const n=Math.floor(r);if(!(n>=0))throw new RangeError(`invalid digits: ${r}`);t=n}return e},()=>new Yw(t)}function gc(e){return typeof e=="object"&&"length"in e?e:Array.from(e)}function ym(e){this._context=e}ym.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._line?this._context.lineTo(e,t):this._context.moveTo(e,t);break;case 1:this._point=2;default:this._context.lineTo(e,t);break}}};function Wa(e){return new ym(e)}function gm(e){return e[0]}function bm(e){return e[1]}function wm(e,t){var r=re(!0),n=null,i=Wa,a=null,o=yc(u);e=typeof e=="function"?e:e===void 0?gm:re(e),t=typeof t=="function"?t:t===void 0?bm:re(t);function u(l){var c,s=(l=gc(l)).length,f,d=!1,p;for(n==null&&(a=i(p=o())),c=0;c<=s;++c)!(c<s&&r(f=l[c],c,l))===d&&((d=!d)?a.lineStart():a.lineEnd()),d&&a.point(+e(f,c,l),+t(f,c,l));if(p)return a=null,p+""||null}return u.x=function(l){return arguments.length?(e=typeof l=="function"?l:re(+l),u):e},u.y=function(l){return arguments.length?(t=typeof l=="function"?l:re(+l),u):t},u.defined=function(l){return arguments.length?(r=typeof l=="function"?l:re(!!l),u):r},u.curve=function(l){return arguments.length?(i=l,n!=null&&(a=i(n)),u):i},u.context=function(l){return arguments.length?(l==null?n=a=null:a=i(n=l),u):n},u}function Si(e,t,r){var n=null,i=re(!0),a=null,o=Wa,u=null,l=yc(c);e=typeof e=="function"?e:e===void 0?gm:re(+e),t=typeof t=="function"?t:re(t===void 0?0:+t),r=typeof r=="function"?r:r===void 0?bm:re(+r);function c(f){var d,p,h,m=(f=gc(f)).length,y,g=!1,b,P=new Array(m),x=new Array(m);for(a==null&&(u=o(b=l())),d=0;d<=m;++d){if(!(d<m&&i(y=f[d],d,f))===g)if(g=!g)p=d,u.areaStart(),u.lineStart();else{for(u.lineEnd(),u.lineStart(),h=d-1;h>=p;--h)u.point(P[h],x[h]);u.lineEnd(),u.areaEnd()}g&&(P[d]=+e(y,d,f),x[d]=+t(y,d,f),u.point(n?+n(y,d,f):P[d],r?+r(y,d,f):x[d]))}if(b)return u=null,b+""||null}function s(){return wm().defined(i).curve(o).context(a)}return c.x=function(f){return arguments.length?(e=typeof f=="function"?f:re(+f),n=null,c):e},c.x0=function(f){return arguments.length?(e=typeof f=="function"?f:re(+f),c):e},c.x1=function(f){return arguments.length?(n=f==null?null:typeof f=="function"?f:re(+f),c):n},c.y=function(f){return arguments.length?(t=typeof f=="function"?f:re(+f),r=null,c):t},c.y0=function(f){return arguments.length?(t=typeof f=="function"?f:re(+f),c):t},c.y1=function(f){return arguments.length?(r=f==null?null:typeof f=="function"?f:re(+f),c):r},c.lineX0=c.lineY0=function(){return s().x(e).y(t)},c.lineY1=function(){return s().x(e).y(r)},c.lineX1=function(){return s().x(n).y(t)},c.defined=function(f){return arguments.length?(i=typeof f=="function"?f:re(!!f),c):i},c.curve=function(f){return arguments.length?(o=f,a!=null&&(u=o(a)),c):o},c.context=function(f){return arguments.length?(f==null?a=u=null:u=o(a=f),c):a},c}class xm{constructor(t,r){this._context=t,this._x=r}areaStart(){this._line=0}areaEnd(){this._line=NaN}lineStart(){this._point=0}lineEnd(){(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line}point(t,r){switch(t=+t,r=+r,this._point){case 0:{this._point=1,this._line?this._context.lineTo(t,r):this._context.moveTo(t,r);break}case 1:this._point=2;default:{this._x?this._context.bezierCurveTo(this._x0=(this._x0+t)/2,this._y0,this._x0,r,t,r):this._context.bezierCurveTo(this._x0,this._y0=(this._y0+r)/2,t,this._y0,t,r);break}}this._x0=t,this._y0=r}}function Gw(e){return new xm(e,!0)}function Vw(e){return new xm(e,!1)}const bc={draw(e,t){const r=vt(t/Vi);e.moveTo(r,0),e.arc(0,0,r,0,Ka)}},Xw={draw(e,t){const r=vt(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()}},Pm=vt(1/3),Zw=Pm*2,Qw={draw(e,t){const r=vt(t/Zw),n=r*Pm;e.moveTo(0,-r),e.lineTo(n,0),e.lineTo(0,r),e.lineTo(-n,0),e.closePath()}},Jw={draw(e,t){const r=vt(t),n=-r/2;e.rect(n,n,r,r)}},ex=.8908130915292852,Om=Gi(Vi/10)/Gi(7*Vi/10),tx=Gi(Ka/10)*Om,rx=-hm(Ka/10)*Om,nx={draw(e,t){const r=vt(t*ex),n=tx*r,i=rx*r;e.moveTo(0,-r),e.lineTo(n,i);for(let a=1;a<5;++a){const o=Ka*a/5,u=hm(o),l=Gi(o);e.lineTo(l*r,-u*r),e.lineTo(u*n-l*i,l*n+u*i)}e.closePath()}},Ko=vt(3),ix={draw(e,t){const r=-vt(t/(Ko*3));e.moveTo(0,r*2),e.lineTo(-Ko*r,-r),e.lineTo(Ko*r,-r),e.closePath()}},tt=-.5,rt=vt(3)/2,yl=1/vt(12),ax=(yl/2+1)*3,ox={draw(e,t){const r=vt(t/ax),n=r/2,i=r*yl,a=n,o=r*yl+r,u=-a,l=o;e.moveTo(n,i),e.lineTo(a,o),e.lineTo(u,l),e.lineTo(tt*n-rt*i,rt*n+tt*i),e.lineTo(tt*a-rt*o,rt*a+tt*o),e.lineTo(tt*u-rt*l,rt*u+tt*l),e.lineTo(tt*n+rt*i,tt*i-rt*n),e.lineTo(tt*a+rt*o,tt*o-rt*a),e.lineTo(tt*u+rt*l,tt*l-rt*u),e.closePath()}};function ux(e,t){let r=null,n=yc(i);e=typeof e=="function"?e:re(e||bc),t=typeof t=="function"?t:re(t===void 0?64:+t);function i(){let a;if(r||(r=a=n()),e.apply(this,arguments).draw(r,+t.apply(this,arguments)),a)return r=null,a+""||null}return i.type=function(a){return arguments.length?(e=typeof a=="function"?a:re(a),i):e},i.size=function(a){return arguments.length?(t=typeof a=="function"?a:re(+a),i):t},i.context=function(a){return arguments.length?(r=a??null,i):r},i}function Xi(){}function Zi(e,t,r){e._context.bezierCurveTo((2*e._x0+e._x1)/3,(2*e._y0+e._y1)/3,(e._x0+2*e._x1)/3,(e._y0+2*e._y1)/3,(e._x0+4*e._x1+t)/6,(e._y0+4*e._y1+r)/6)}function Sm(e){this._context=e}Sm.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},lineEnd:function(){switch(this._point){case 3:Zi(this,this._x1,this._y1);case 2:this._context.lineTo(this._x1,this._y1);break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._line?this._context.lineTo(e,t):this._context.moveTo(e,t);break;case 1:this._point=2;break;case 2:this._point=3,this._context.lineTo((5*this._x0+this._x1)/6,(5*this._y0+this._y1)/6);default:Zi(this,e,t);break}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=t}};function lx(e){return new Sm(e)}function Am(e){this._context=e}Am.prototype={areaStart:Xi,areaEnd:Xi,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._y0=this._y1=this._y2=this._y3=this._y4=NaN,this._point=0},lineEnd:function(){switch(this._point){case 1:{this._context.moveTo(this._x2,this._y2),this._context.closePath();break}case 2:{this._context.moveTo((this._x2+2*this._x3)/3,(this._y2+2*this._y3)/3),this._context.lineTo((this._x3+2*this._x2)/3,(this._y3+2*this._y2)/3),this._context.closePath();break}case 3:{this.point(this._x2,this._y2),this.point(this._x3,this._y3),this.point(this._x4,this._y4);break}}},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._x2=e,this._y2=t;break;case 1:this._point=2,this._x3=e,this._y3=t;break;case 2:this._point=3,this._x4=e,this._y4=t,this._context.moveTo((this._x0+4*this._x1+e)/6,(this._y0+4*this._y1+t)/6);break;default:Zi(this,e,t);break}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=t}};function cx(e){return new Am(e)}function Em(e){this._context=e}Em.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===3)&&this._context.closePath(),this._line=1-this._line},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3;var r=(this._x0+4*this._x1+e)/6,n=(this._y0+4*this._y1+t)/6;this._line?this._context.lineTo(r,n):this._context.moveTo(r,n);break;case 3:this._point=4;default:Zi(this,e,t);break}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=t}};function sx(e){return new Em(e)}function _m(e){this._context=e}_m.prototype={areaStart:Xi,areaEnd:Xi,lineStart:function(){this._point=0},lineEnd:function(){this._point&&this._context.closePath()},point:function(e,t){e=+e,t=+t,this._point?this._context.lineTo(e,t):(this._point=1,this._context.moveTo(e,t))}};function fx(e){return new _m(e)}function wf(e){return e<0?-1:1}function xf(e,t,r){var n=e._x1-e._x0,i=t-e._x1,a=(e._y1-e._y0)/(n||i<0&&-0),o=(r-e._y1)/(i||n<0&&-0),u=(a*i+o*n)/(n+i);return(wf(a)+wf(o))*Math.min(Math.abs(a),Math.abs(o),.5*Math.abs(u))||0}function Pf(e,t){var r=e._x1-e._x0;return r?(3*(e._y1-e._y0)/r-t)/2:t}function Wo(e,t,r){var n=e._x0,i=e._y0,a=e._x1,o=e._y1,u=(a-n)/3;e._context.bezierCurveTo(n+u,i+u*t,a-u,o-u*r,a,o)}function Qi(e){this._context=e}Qi.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=this._t0=NaN,this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x1,this._y1);break;case 3:Wo(this,this._t0,Pf(this,this._t0));break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(e,t){var r=NaN;if(e=+e,t=+t,!(e===this._x1&&t===this._y1)){switch(this._point){case 0:this._point=1,this._line?this._context.lineTo(e,t):this._context.moveTo(e,t);break;case 1:this._point=2;break;case 2:this._point=3,Wo(this,Pf(this,r=xf(this,e,t)),r);break;default:Wo(this,this._t0,r=xf(this,e,t));break}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=t,this._t0=r}}};function jm(e){this._context=new km(e)}(jm.prototype=Object.create(Qi.prototype)).point=function(e,t){Qi.prototype.point.call(this,t,e)};function km(e){this._context=e}km.prototype={moveTo:function(e,t){this._context.moveTo(t,e)},closePath:function(){this._context.closePath()},lineTo:function(e,t){this._context.lineTo(t,e)},bezierCurveTo:function(e,t,r,n,i,a){this._context.bezierCurveTo(t,e,n,r,a,i)}};function dx(e){return new Qi(e)}function vx(e){return new jm(e)}function Cm(e){this._context=e}Cm.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x=[],this._y=[]},lineEnd:function(){var e=this._x,t=this._y,r=e.length;if(r)if(this._line?this._context.lineTo(e[0],t[0]):this._context.moveTo(e[0],t[0]),r===2)this._context.lineTo(e[1],t[1]);else for(var n=Of(e),i=Of(t),a=0,o=1;o<r;++a,++o)this._context.bezierCurveTo(n[0][a],i[0][a],n[1][a],i[1][a],e[o],t[o]);(this._line||this._line!==0&&r===1)&&this._context.closePath(),this._line=1-this._line,this._x=this._y=null},point:function(e,t){this._x.push(+e),this._y.push(+t)}};function Of(e){var t,r=e.length-1,n,i=new Array(r),a=new Array(r),o=new Array(r);for(i[0]=0,a[0]=2,o[0]=e[0]+2*e[1],t=1;t<r-1;++t)i[t]=1,a[t]=4,o[t]=4*e[t]+2*e[t+1];for(i[r-1]=2,a[r-1]=7,o[r-1]=8*e[r-1]+e[r],t=1;t<r;++t)n=i[t]/a[t-1],a[t]-=n,o[t]-=n*o[t-1];for(i[r-1]=o[r-1]/a[r-1],t=r-2;t>=0;--t)i[t]=(o[t]-i[t+1])/a[t];for(a[r-1]=(e[r]+i[r-1])/2,t=0;t<r-1;++t)a[t]=2*e[t+1]-i[t+1];return[i,a]}function px(e){return new Cm(e)}function qa(e,t){this._context=e,this._t=t}qa.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x=this._y=NaN,this._point=0},lineEnd:function(){0<this._t&&this._t<1&&this._point===2&&this._context.lineTo(this._x,this._y),(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line>=0&&(this._t=1-this._t,this._line=1-this._line)},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._line?this._context.lineTo(e,t):this._context.moveTo(e,t);break;case 1:this._point=2;default:{if(this._t<=0)this._context.lineTo(this._x,t),this._context.lineTo(e,t);else{var r=this._x*(1-this._t)+e*this._t;this._context.lineTo(r,this._y),this._context.lineTo(r,t)}break}}this._x=e,this._y=t}};function hx(e){return new qa(e,.5)}function mx(e){return new qa(e,0)}function yx(e){return new qa(e,1)}function xr(e,t){if((o=e.length)>1)for(var r=1,n,i,a=e[t[0]],o,u=a.length;r<o;++r)for(i=a,a=e[t[r]],n=0;n<u;++n)a[n][1]+=a[n][0]=isNaN(i[n][1])?i[n][0]:i[n][1]}function gl(e){for(var t=e.length,r=new Array(t);--t>=0;)r[t]=t;return r}function gx(e,t){return e[t]}function bx(e){const t=[];return t.key=e,t}function wx(){var e=re([]),t=gl,r=xr,n=gx;function i(a){var o=Array.from(e.apply(this,arguments),bx),u,l=o.length,c=-1,s;for(const f of a)for(u=0,++c;u<l;++u)(o[u][c]=[0,+n(f,o[u].key,c,a)]).data=f;for(u=0,s=gc(t(o));u<l;++u)o[s[u]].index=u;return r(o,s),o}return i.keys=function(a){return arguments.length?(e=typeof a=="function"?a:re(Array.from(a)),i):e},i.value=function(a){return arguments.length?(n=typeof a=="function"?a:re(+a),i):n},i.order=function(a){return arguments.length?(t=a==null?gl:typeof a=="function"?a:re(Array.from(a)),i):t},i.offset=function(a){return arguments.length?(r=a??xr,i):r},i}function xx(e,t){if((n=e.length)>0){for(var r,n,i=0,a=e[0].length,o;i<a;++i){for(o=r=0;r<n;++r)o+=e[r][i][1]||0;if(o)for(r=0;r<n;++r)e[r][i][1]/=o}xr(e,t)}}function Px(e,t){if((i=e.length)>0){for(var r=0,n=e[t[0]],i,a=n.length;r<a;++r){for(var o=0,u=0;o<i;++o)u+=e[o][r][1]||0;n[r][1]+=n[r][0]=-u/2}xr(e,t)}}function Ox(e,t){if(!(!((o=e.length)>0)||!((a=(i=e[t[0]]).length)>0))){for(var r=0,n=1,i,a,o;n<a;++n){for(var u=0,l=0,c=0;u<o;++u){for(var s=e[t[u]],f=s[n][1]||0,d=s[n-1][1]||0,p=(f-d)/2,h=0;h<u;++h){var m=e[t[h]],y=m[n][1]||0,g=m[n-1][1]||0;p+=y-g}l+=f,c+=p*f}i[n-1][1]+=i[n-1][0]=r,l&&(r-=c/l)}i[n-1][1]+=i[n-1][0]=r,xr(e,t)}}var qo={},Uo={},Sf;function Sx(){return Sf||(Sf=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(r){return r==="__proto__"}e.isUnsafeProperty=t})(Uo)),Uo}var Ho={},Af;function Tm(){return Af||(Af=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})(Ho)),Ho}var Yo={},Ef;function wc(){return Ef||(Ef=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(r){var n;return typeof r=="string"||typeof r=="symbol"?r:Object.is((n=r==null?void 0:r.valueOf)==null?void 0:n.call(r),-0)?"-0":String(r)}e.toKey=t})(Yo)),Yo}var Go={},Vo={},_f;function Ax(){return _f||(_f=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})(Vo)),Vo}var jf;function xc(){return jf||(jf=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=Ax(),r=wc();function n(i){if(Array.isArray(i))return i.map(r.toKey);if(typeof i=="symbol")return[i];i=t.toString(i);const a=[],o=i.length;if(o===0)return a;let u=0,l="",c="",s=!1;for(i.charCodeAt(0)===46&&(a.push(""),u++);u<o;){const f=i[u];c?f==="\\"&&u+1<o?(u++,l+=i[u]):f===c?c="":l+=f:s?f==='"'||f==="'"?c=f:f==="]"?(s=!1,a.push(l),l=""):l+=f:f==="["?(s=!0,l&&(a.push(l),l="")):f==="."?l&&(a.push(l),l=""):l+=f,u++}return l&&a.push(l),a}e.toPath=n})(Go)),Go}var kf;function Pc(){return kf||(kf=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=Sx(),r=Tm(),n=wc(),i=xc();function a(u,l,c){if(u==null)return c;switch(typeof l){case"string":{if(t.isUnsafeProperty(l))return c;const s=u[l];return s===void 0?r.isDeepKey(l)?a(u,i.toPath(l),c):c:s}case"number":case"symbol":{typeof l=="number"&&(l=n.toKey(l));const s=u[l];return s===void 0?c:s}default:{if(Array.isArray(l))return o(u,l,c);if(Object.is(l==null?void 0:l.valueOf(),-0)?l="-0":l=String(l),t.isUnsafeProperty(l))return c;const s=u[l];return s===void 0?c:s}}}function o(u,l,c){if(l.length===0)return c;let s=u;for(let f=0;f<l.length;f++){if(s==null||t.isUnsafeProperty(l[f]))return c;s=s[l[f]]}return s===void 0?c:s}e.get=a})(qo)),qo}var Xo,Cf;function Ex(){return Cf||(Cf=1,Xo=Pc().get),Xo}var _x=Ex();const Pr=Cr(_x);var jx=4;function Xt(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:jx,r=10**t,n=Math.round(e*r)/r;return Object.is(n,-0)?0:n}function ce(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((i,a,o)=>{var u=r[o-1];return typeof u=="string"?i+u+a:u!==void 0?i+Xt(u)+a:i+a},"")}var Se=e=>e===0?0:e>0?1:-1,xt=e=>typeof e=="number"&&e!=+e,Or=e=>typeof e=="string"&&e.indexOf("%")===e.length-1,L=e=>(typeof e=="number"||e instanceof Number)&&!xt(e),Pt=e=>L(e)||typeof e=="string",kx=0,Dn=e=>{var t=++kx;return"".concat(e||"").concat(t)},Ne=function(t,r){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0,i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1;if(!L(t)&&typeof t!="string")return n;var a;if(Or(t)){if(r==null)return n;var o=t.indexOf("%");a=r*parseFloat(t.slice(0,o))/100}else a=+t;return xt(a)&&(a=n),i&&r!=null&&a>r&&(a=r),a},Im=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 de(e,t,r){return L(e)&&L(t)?Xt(e+r*(t-e)):t}function Cx(e,t,r){if(!(!e||!e.length))return e.find(n=>n&&(typeof t=="function"?t(n):Pr(n,t))===r)}var ge=e=>e===null||typeof e>"u",Yn=e=>ge(e)?e:"".concat(e.charAt(0).toUpperCase()).concat(e.slice(1));function yt(e){return e!=null}function $t(){}var Tx=["type","size","sizeType"];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 Tf(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),r.push.apply(r,n)}return r}function If(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?Tf(Object(r),!0).forEach(function(n){Ix(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):Tf(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function Ix(e,t,r){return(t=Mx(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function Mx(e){var t=Dx(e,"string");return typeof t=="symbol"?t:t+""}function Dx(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 Nx(e,t){if(e==null)return{};var r,n,i=Rx(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(n=0;n<a.length;n++)r=a[n],t.indexOf(r)===-1&&{}.propertyIsEnumerable.call(e,r)&&(i[r]=e[r])}return i}function Rx(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 Mm={symbolCircle:bc,symbolCross:Xw,symbolDiamond:Qw,symbolSquare:Jw,symbolStar:nx,symbolTriangle:ix,symbolWye:ox},$x=Math.PI/180,Lx=e=>{var t="symbol".concat(Yn(e));return Mm[t]||bc},Bx=(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*$x;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}},zx=(e,t)=>{Mm["symbol".concat(Yn(e))]=t},Oc=e=>{var{type:t="circle",size:r=64,sizeType:n="area"}=e,i=Nx(e,Tx),a=If(If({},i),{},{type:t,size:r,sizeType:n}),o="circle";typeof t=="string"&&(o=t);var u=()=>{var d=Lx(o),p=ux().type(d).size(Bx(r,n,o)),h=p();if(h!==null)return h},{className:l,cx:c,cy:s}=a,f=De(a);return L(c)&&L(s)&&L(r)?v.createElement("path",bl({},f,{className:U("recharts-symbols",l),transform:"translate(".concat(c,", ").concat(s,")"),d:u()})):null};Oc.registerSymbol=zx;var Dm=e=>"radius"in e&&"startAngle"in e&&"endAngle"in e,Nm=(e,t)=>{if(!e||typeof e=="function"||typeof e=="boolean")return null;var r=e;if(v.isValidElement(e)&&(r=e.props),typeof r!="object"&&typeof r!="function")return null;var n={};return Object.keys(r).forEach(i=>{hc(i)&&typeof r[i]=="function"&&(n[i]=(a=>r[i](r,a)))}),n},Fx=(e,t,r)=>n=>(e(t,r,n),null),ir=(e,t,r)=>{if(e===null||typeof e!="object"&&typeof e!="function")return null;var n=null;return Object.keys(e).forEach(i=>{var a=e[i];hc(i)&&typeof a=="function"&&(n||(n={}),n[i]=Fx(a,t,r))}),n};function Mf(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),r.push.apply(r,n)}return r}function Kx(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?Mf(Object(r),!0).forEach(function(n){Wx(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):Mf(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function Wx(e,t,r){return(t=qx(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function qx(e){var t=Ux(e,"string");return typeof t=="symbol"?t:t+""}function Ux(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 be(e,t){var r=Kx({},e),n=t,i=Object.keys(t),a=i.reduce((o,u)=>(o[u]===void 0&&n[u]!==void 0&&(o[u]=n[u]),o),r);return a}function Ji(){return Ji=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},Ji.apply(null,arguments)}function Df(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),r.push.apply(r,n)}return r}function Rm(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){Hx(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 Hx(e,t,r){return(t=Yx(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function Yx(e){var t=Gx(e,"string");return typeof t=="symbol"?t:t+""}function Gx(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=32,Vx={align:"center",iconSize:14,inactiveColor:"#ccc",layout:"horizontal",verticalAlign:"middle",labelStyle:{}};function Xx(e){if(typeof e=="object"&&e!==null&&"strokeDasharray"in e)return String(e.strokeDasharray)}function Zx(e){var{data:t,iconType:r,inactiveColor:n}=e,i=it/2,a=it/6,o=it/3,u=t.inactive?n:t.color,l=r??t.type;if(l==="none")return null;if(l==="plainline")return v.createElement("line",{strokeWidth:4,fill:"none",stroke:u,strokeDasharray:Xx(t.payload),x1:0,y1:i,x2:it,y2:i,className:"recharts-legend-icon"});if(l==="line")return v.createElement("path",{strokeWidth:4,fill:"none",stroke:u,d:"M0,".concat(i,"h").concat(o,`
|
|
2
2
|
A`).concat(a,",").concat(a,",0,1,1,").concat(2*o,",").concat(i,`
|
|
3
3
|
H`).concat(it,"M").concat(2*o,",").concat(i,`
|
|
4
4
|
A`).concat(a,",").concat(a,",0,1,1,").concat(o,",").concat(i),className:"recharts-legend-icon"});if(l==="rect")return v.createElement("path",{stroke:"none",fill:u,d:"M0,".concat(it/8,"h").concat(it,"v").concat(it*3/4,"h").concat(-it,"z"),className:"recharts-legend-icon"});if(v.isValidElement(t.legendIcon)){var c=Rm({},t);return delete c.legendIcon,v.cloneElement(t.legendIcon,c)}return v.createElement(Oc,{fill:u,cx:i,cy:i,size:it,sizeType:"diameter",type:l})}function Qx(e){var{payload:t,iconSize:r,layout:n,formatter:i,inactiveColor:a,iconType:o,labelStyle:u}=e,l={x:0,y:0,width:it,height:it},c={display:n==="horizontal"?"inline-block":"block",marginRight:10},s={display:"inline-block",verticalAlign:"middle",marginRight:4};return t.map((f,d)=>{var p=f.formatter||i,h=U({"recharts-legend-item":!0,["legend-item-".concat(d)]:!0,inactive:f.inactive});if(f.type==="none")return null;var m=typeof u=="object"?Rm({},u):{};m.color=f.inactive?a:m.color||f.color;var y=p?p(f.value,f,d):f.value;return v.createElement("li",Ji({className:h,style:c,key:"legend-item-".concat(d)},ir(e,f,d)),v.createElement(mc,{width:r,height:r,viewBox:l,style:s,"aria-label":"".concat(y," legend icon")},v.createElement(Zx,{data:f,iconType:o,inactiveColor:a})),v.createElement("span",{className:"recharts-legend-item-text",style:m},y))})}var Jx=e=>{var t=be(e,Vx),{payload:r,layout:n,align:i}=t;if(!r||!r.length)return null;var a={padding:0,margin:0,textAlign:n==="horizontal"?i:"left"};return v.createElement("ul",{className:"recharts-default-legend",style:a},v.createElement(Qx,Ji({},t,{payload:r})))},Zo={},Qo={},Nf;function eP(){return Nf||(Nf=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(r,n){const i=new Map;for(let a=0;a<r.length;a++){const o=r[a],u=n(o,a,r);i.has(u)||i.set(u,o)}return Array.from(i.values())}e.uniqBy=t})(Qo)),Qo}var Jo={},Rf;function tP(){return Rf||(Rf=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(r,n){return function(...i){return r.apply(this,i.slice(0,n))}}e.ary=t})(Jo)),Jo}var eu={},$f;function $m(){return $f||($f=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(r){return r}e.identity=t})(eu)),eu}var tu={},ru={},nu={},Lf;function rP(){return Lf||(Lf=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(r){return Number.isSafeInteger(r)&&r>=0}e.isLength=t})(nu)),nu}var Bf;function Lm(){return Bf||(Bf=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=rP();function r(n){return n!=null&&typeof n!="function"&&t.isLength(n.length)}e.isArrayLike=r})(ru)),ru}var iu={},zf;function nP(){return zf||(zf=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(r){return typeof r=="object"&&r!==null}e.isObjectLike=t})(iu)),iu}var Ff;function iP(){return Ff||(Ff=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=Lm(),r=nP();function n(i){return r.isObjectLike(i)&&t.isArrayLike(i)}e.isArrayLikeObject=n})(tu)),tu}var au={},ou={},Kf;function aP(){return Kf||(Kf=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=Pc();function r(n){return function(i){return t.get(i,n)}}e.property=r})(ou)),ou}var uu={},lu={},cu={},su={},Wf;function Bm(){return Wf||(Wf=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})(su)),su}var fu={},qf;function zm(){return qf||(qf=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})(fu)),fu}var du={},Uf;function Fm(){return Uf||(Uf=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})(du)),du}var Hf;function oP(){return Hf||(Hf=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=Bm(),r=zm(),n=Fm();function i(s,f,d){return typeof d!="function"?i(s,f,()=>{}):a(s,f,function p(h,m,y,g,b,P){const x=d(h,m,y,g,b,P);return x!==void 0?!!x:a(h,m,p,P)},new Map)}function a(s,f,d,p){if(f===s)return!0;switch(typeof f){case"object":return o(s,f,d,p);case"function":return Object.keys(f).length>0?a(s,{...f},d,p):n.isEqualsSameValueZero(s,f);default:return t.isObject(s)?typeof f=="string"?f==="":!0:n.isEqualsSameValueZero(s,f)}}function o(s,f,d,p){if(f==null)return!0;if(Array.isArray(f))return l(s,f,d,p);if(f instanceof Map)return u(s,f,d,p);if(f instanceof Set)return c(s,f,d,p);const h=Object.keys(f);if(s==null||r.isPrimitive(s))return h.length===0;if(h.length===0)return!0;if(p!=null&&p.has(f))return p.get(f)===s;p==null||p.set(f,s);try{for(let m=0;m<h.length;m++){const y=h[m];if(!r.isPrimitive(s)&&!(y in s)||f[y]===void 0&&s[y]!==void 0||f[y]===null&&s[y]!==null||!d(s[y],f[y],y,s,f,p))return!1}return!0}finally{p==null||p.delete(f)}}function u(s,f,d,p){if(f.size===0)return!0;if(!(s instanceof Map))return!1;for(const[h,m]of f.entries()){const y=s.get(h);if(d(y,m,h,s,f,p)===!1)return!1}return!0}function l(s,f,d,p){if(f.length===0)return!0;if(!Array.isArray(s))return!1;const h=new Set;for(let m=0;m<f.length;m++){const y=f[m];let g=!1;for(let b=0;b<s.length;b++){if(h.has(b))continue;const P=s[b];let x=!1;if(d(P,y,m,s,f,p)&&(x=!0),x){h.add(b),g=!0;break}}if(!g)return!1}return!0}function c(s,f,d,p){return f.size===0?!0:s instanceof Set?l([...s],[...f],d,p):!1}e.isMatchWith=i,e.isSetMatch=c})(cu)),cu}var Yf;function Km(){return Yf||(Yf=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=oP();function r(n,i){return t.isMatchWith(n,i,()=>{})}e.isMatch=r})(lu)),lu}var vu={},pu={},hu={},Gf;function uP(){return Gf||(Gf=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})(hu)),hu}var mu={},Vf;function Sc(){return Vf||(Vf=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})(mu)),mu}var yu={},Xf;function Wm(){return Xf||(Xf=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t="[object RegExp]",r="[object String]",n="[object Number]",i="[object Boolean]",a="[object Arguments]",o="[object Symbol]",u="[object Date]",l="[object Map]",c="[object Set]",s="[object Array]",f="[object Function]",d="[object ArrayBuffer]",p="[object Object]",h="[object Error]",m="[object DataView]",y="[object Uint8Array]",g="[object Uint8ClampedArray]",b="[object Uint16Array]",P="[object Uint32Array]",x="[object BigUint64Array]",O="[object Int8Array]",w="[object Int16Array]",A="[object Int32Array]",E="[object BigInt64Array]",k="[object Float32Array]",C="[object Float64Array]";e.argumentsTag=a,e.arrayBufferTag=d,e.arrayTag=s,e.bigInt64ArrayTag=E,e.bigUint64ArrayTag=x,e.booleanTag=i,e.dataViewTag=m,e.dateTag=u,e.errorTag=h,e.float32ArrayTag=k,e.float64ArrayTag=C,e.functionTag=f,e.int16ArrayTag=w,e.int32ArrayTag=A,e.int8ArrayTag=O,e.mapTag=l,e.numberTag=n,e.objectTag=p,e.regexpTag=t,e.setTag=c,e.stringTag=r,e.symbolTag=o,e.uint16ArrayTag=b,e.uint32ArrayTag=P,e.uint8ArrayTag=y,e.uint8ClampedArrayTag=g})(yu)),yu}var gu={},Zf;function lP(){return Zf||(Zf=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(r){return ArrayBuffer.isView(r)&&!(r instanceof DataView)}e.isTypedArray=t})(gu)),gu}var Qf;function qm(){return Qf||(Qf=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=uP(),r=Sc(),n=Wm(),i=zm(),a=lP();function o(s,f){return u(s,void 0,s,new Map,f)}function u(s,f,d,p=new Map,h=void 0){const m=h==null?void 0:h(s,f,d,p);if(m!==void 0)return m;if(i.isPrimitive(s))return s;if(p.has(s))return p.get(s);if(Array.isArray(s)){const y=new Array(s.length);p.set(s,y);for(let g=0;g<s.length;g++)y[g]=u(s[g],g,d,p,h);return Object.hasOwn(s,"index")&&(y.index=s.index),Object.hasOwn(s,"input")&&(y.input=s.input),y}if(s instanceof Date)return new Date(s.getTime());if(s instanceof RegExp){const y=new RegExp(s.source,s.flags);return y.lastIndex=s.lastIndex,y}if(s instanceof Map){const y=new Map;p.set(s,y);for(const[g,b]of s)y.set(g,u(b,g,d,p,h));return y}if(s instanceof Set){const y=new Set;p.set(s,y);for(const g of s)y.add(u(g,void 0,d,p,h));return y}if(typeof Buffer<"u"&&Buffer.isBuffer(s))return s.subarray();if(a.isTypedArray(s)){const y=new(Object.getPrototypeOf(s)).constructor(s.length);p.set(s,y);for(let g=0;g<s.length;g++)y[g]=u(s[g],g,d,p,h);return y}if(s instanceof ArrayBuffer||typeof SharedArrayBuffer<"u"&&s instanceof SharedArrayBuffer)return s.slice(0);if(s instanceof DataView){const y=new DataView(s.buffer.slice(0),s.byteOffset,s.byteLength);return p.set(s,y),l(y,s,d,p,h),y}if(typeof File<"u"&&s instanceof File){const y=new File([s],s.name,{type:s.type});return p.set(s,y),l(y,s,d,p,h),y}if(typeof Blob<"u"&&s instanceof Blob){const y=new Blob([s],{type:s.type});return p.set(s,y),l(y,s,d,p,h),y}if(s instanceof Error){const y=structuredClone(s);return p.set(s,y),y.message=s.message,y.name=s.name,y.stack=s.stack,y.cause=s.cause,y.constructor=s.constructor,l(y,s,d,p,h),y}if(s instanceof Boolean){const y=new Boolean(s.valueOf());return p.set(s,y),l(y,s,d,p,h),y}if(s instanceof Number){const y=new Number(s.valueOf());return p.set(s,y),l(y,s,d,p,h),y}if(s instanceof String){const y=new String(s.valueOf());return p.set(s,y),l(y,s,d,p,h),y}if(typeof s=="object"&&c(s)){const y=Object.create(Object.getPrototypeOf(s));return p.set(s,y),l(y,s,d,p,h),y}return s}function l(s,f,d=s,p,h){const m=[...Object.keys(f),...t.getSymbols(f)];for(let y=0;y<m.length;y++){const g=m[y],b=Object.getOwnPropertyDescriptor(s,g);(b==null||b.writable)&&(s[g]=u(f[g],g,d,p,h))}}function c(s){switch(r.getTag(s)){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=u,e.copyProperties=l})(pu)),pu}var Jf;function cP(){return Jf||(Jf=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=qm();function r(n){return t.cloneDeepWithImpl(n,void 0,n,new Map,void 0)}e.cloneDeep=r})(vu)),vu}var ed;function sP(){return ed||(ed=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=Km(),r=cP();function n(i){return i=r.cloneDeep(i),a=>t.isMatch(a,i)}e.matches=n})(uu)),uu}var bu={},wu={},xu={},td;function fP(){return td||(td=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=qm(),r=Sc(),n=Wm();function i(a,o){return t.cloneDeepWith(a,(u,l,c,s)=>{const f=o==null?void 0:o(u,l,c,s);if(f!==void 0)return f;if(typeof a=="object"){if(r.getTag(a)===n.objectTag&&typeof a.constructor!="function"){const d={};return s.set(a,d),t.copyProperties(d,a,c,s),d}switch(Object.prototype.toString.call(a)){case n.numberTag:case n.stringTag:case n.booleanTag:{const d=new a.constructor(a==null?void 0:a.valueOf());return t.copyProperties(d,a),d}case n.argumentsTag:{const d={};return t.copyProperties(d,a),d.length=a.length,d[Symbol.iterator]=a[Symbol.iterator],d}default:return}}})}e.cloneDeepWith=i})(xu)),xu}var rd;function dP(){return rd||(rd=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=fP();function r(n){return t.cloneDeepWith(n)}e.cloneDeep=r})(wu)),wu}var Pu={},Ou={},nd;function Um(){return nd||(nd=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=/^(?:0|[1-9]\d*)$/;function r(n,i=Number.MAX_SAFE_INTEGER){switch(typeof n){case"number":return Number.isInteger(n)&&n>=0&&n<i;case"symbol":return!1;case"string":return t.test(n)}}e.isIndex=r})(Ou)),Ou}var Su={},id;function vP(){return id||(id=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=Sc();function r(n){return n!==null&&typeof n=="object"&&t.getTag(n)==="[object Arguments]"}e.isArguments=r})(Su)),Su}var ad;function pP(){return ad||(ad=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=Tm(),r=Um(),n=vP(),i=xc();function a(o,u){let l;if(Array.isArray(u)?l=u:typeof u=="string"&&t.isDeepKey(u)&&(o==null?void 0:o[u])==null?l=i.toPath(u):l=[u],l.length===0)return!1;let c=o;for(let s=0;s<l.length;s++){const f=l[s];if((c==null||!Object.hasOwn(c,f))&&!((Array.isArray(c)||n.isArguments(c))&&r.isIndex(f)&&f<c.length))return!1;c=c[f]}return!0}e.has=a})(Pu)),Pu}var od;function hP(){return od||(od=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=Km(),r=wc(),n=dP(),i=Pc(),a=pP();function o(u,l){switch(typeof u){case"object":{Object.is(u==null?void 0:u.valueOf(),-0)&&(u="-0");break}case"number":{u=r.toKey(u);break}}return l=n.cloneDeep(l),function(c){const s=i.get(c,u);return s===void 0?a.has(c,u):l===void 0?s===void 0:t.isMatch(s,l)}}e.matchesProperty=o})(bu)),bu}var ud;function mP(){return ud||(ud=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=$m(),r=aP(),n=sP(),i=hP();function a(o){if(o==null)return t.identity;switch(typeof o){case"function":return o;case"object":return Array.isArray(o)&&o.length===2?i.matchesProperty(o[0],o[1]):n.matches(o);case"string":case"symbol":case"number":return r.property(o)}}e.iteratee=a})(au)),au}var ld;function yP(){return ld||(ld=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=eP(),r=tP(),n=$m(),i=iP(),a=mP();function o(u,l=n.identity){return i.isArrayLikeObject(u)?t.uniqBy(Array.from(u),r.ary(a.iteratee(l),1)):[]}e.uniqBy=o})(Zo)),Zo}var Au,cd;function gP(){return cd||(cd=1,Au=yP().uniqBy),Au}var bP=gP();const sd=Cr(bP);function Hm(e,t,r){return t===!0?sd(e,r):typeof t=="function"?sd(e,t):e}var Ac=v.createContext(null),wP=e=>e,Q=()=>{var e=v.useContext(Ac);return e?e.store.dispatch:wP},Wi=()=>{},xP=()=>Wi,PP=(e,t)=>e===t;function D(e){var t=v.useContext(Ac),r=v.useMemo(()=>t?n=>{if(n!=null)return e(n)}:Wi,[t,e]);return _w.useSyncExternalStoreWithSelector(t?t.subscription.addNestedSub:xP,t?t.store.getState:Wi,t?t.store.getState:Wi,r,PP)}function OP(e,t=`expected a function, instead received ${typeof e}`){if(typeof e!="function")throw new TypeError(t)}function SP(e,t=`expected an object, instead received ${typeof e}`){if(typeof e!="object")throw new TypeError(t)}function AP(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 fd=e=>Array.isArray(e)?e:[e];function EP(e){const t=Array.isArray(e[0])?e[0]:e;return AP(t,"createSelector expects all input-selectors to be functions, but received the following types: "),t}function _P(e,t){const r=[],{length:n}=e;for(let i=0;i<n;i++)r.push(e[i].apply(null,t));return r}var jP=class{constructor(e){this.value=e}deref(){return this.value}},kP=typeof WeakRef<"u"?WeakRef:jP,CP=0,dd=1;function Ai(){return{s:CP,v:void 0,o:null,p:null}}function Ym(e,t={}){let r=Ai();const{resultEqualityCheck:n}=t;let i,a=0;function o(){var f;let u=r;const{length:l}=arguments;for(let d=0,p=l;d<p;d++){const h=arguments[d];if(typeof h=="function"||typeof h=="object"&&h!==null){let m=u.o;m===null&&(u.o=m=new WeakMap);const y=m.get(h);y===void 0?(u=Ai(),m.set(h,u)):u=y}else{let m=u.p;m===null&&(u.p=m=new Map);const y=m.get(h);y===void 0?(u=Ai(),m.set(h,u)):u=y}}const c=u;let s;if(u.s===dd)s=u.v;else if(s=e.apply(null,arguments),a++,n){const d=((f=i==null?void 0:i.deref)==null?void 0:f.call(i))??i;d!=null&&n(d,s)&&(s=d,a!==0&&a--),i=typeof s=="object"&&s!==null||typeof s=="function"?new kP(s):s}return c.s=dd,c.v=s,s}return o.clearCache=()=>{r=Ai(),o.resetResultsCount()},o.resultsCount=()=>a,o.resetResultsCount=()=>{a=0},o}function TP(e,...t){const r=typeof e=="function"?{memoize:e,memoizeOptions:t}:e,n=(...i)=>{let a=0,o=0,u,l={},c=i.pop();typeof c=="object"&&(l=c,c=i.pop()),OP(c,`createSelector expects an output function after the inputs, but received: [${typeof c}]`);const s={...r,...l},{memoize:f,memoizeOptions:d=[],argsMemoize:p=Ym,argsMemoizeOptions:h=[]}=s,m=fd(d),y=fd(h),g=EP(i),b=f(function(){return a++,c.apply(null,arguments)},...m),P=p(function(){o++;const O=_P(g,arguments);return u=b.apply(null,O),u},...y);return Object.assign(P,{resultFunc:c,memoizedResultFunc:b,dependencies:g,dependencyRecomputations:()=>o,resetDependencyRecomputations:()=>{o=0},lastResult:()=>u,recomputations:()=>a,resetRecomputations:()=>{a=0},memoize:f,argsMemoize:p})};return Object.assign(n,{withTypes:()=>n}),n}var S=TP(Ym),IP=Object.assign((e,t=S)=>{SP(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(a=>e[a]);return t(n,(...a)=>a.reduce((o,u,l)=>(o[r[l]]=u,o),{}))},{withTypes:()=>IP}),Eu={},_u={},ju={},vd;function MP(){return vd||(vd=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,i,a)=>{if(n!==i){const o=t(n),u=t(i);if(o===u&&o===0){if(n<i)return a==="desc"?1:-1;if(n>i)return a==="desc"?-1:1}return a==="desc"?u-o:o-u}return 0};e.compareValues=r})(ju)),ju}var ku={},Cu={},pd;function Gm(){return pd||(pd=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(r){return typeof r=="symbol"||r instanceof Symbol}e.isSymbol=t})(Cu)),Cu}var hd;function DP(){return hd||(hd=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=Gm(),r=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,n=/^\w*$/;function i(a,o){return Array.isArray(a)?!1:typeof a=="number"||typeof a=="boolean"||a==null||t.isSymbol(a)?!0:typeof a=="string"&&(n.test(a)||!r.test(a))||o!=null&&Object.hasOwn(o,a)}e.isKey=i})(ku)),ku}var md;function NP(){return md||(md=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=MP(),r=DP(),n=xc();function i(a,o,u,l){if(a==null)return[];u=l?void 0:u,Array.isArray(a)||(a=Object.values(a)),Array.isArray(o)||(o=o==null?[null]:[o]),o.length===0&&(o=[null]),Array.isArray(u)||(u=u==null?[]:[u]),u=u.map(p=>String(p));const c=(p,h)=>{let m=p;for(let y=0;y<h.length&&m!=null;++y)m=m[h[y]];return m},s=(p,h)=>h==null||p==null?h:typeof p=="object"&&"key"in p?Object.hasOwn(h,p.key)?h[p.key]:c(h,p.path):typeof p=="function"?p(h):Array.isArray(p)?c(h,p):typeof h=="object"?h[p]:h,f=o.map(p=>(Array.isArray(p)&&p.length===1&&(p=p[0]),p==null||typeof p=="function"||Array.isArray(p)||r.isKey(p)?p:{key:p,path:n.toPath(p)}));return a.map(p=>({original:p,criteria:f.map(h=>s(h,p))})).slice().sort((p,h)=>{for(let m=0;m<f.length;m++){const y=t.compareValues(p.criteria[m],h.criteria[m],u[m]);if(y!==0)return y}return 0}).map(p=>p.original)}e.orderBy=i})(_u)),_u}var Tu={},yd;function RP(){return yd||(yd=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(r,n=1){const i=[],a=Math.floor(n),o=(u,l)=>{for(let c=0;c<u.length;c++){const s=u[c];Array.isArray(s)&&l<a?o(s,l+1):i.push(s)}};return o(r,0),i}e.flatten=t})(Tu)),Tu}var Iu={},gd;function Vm(){return gd||(gd=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=Um(),r=Lm(),n=Bm(),i=Fm();function a(o,u,l){return n.isObject(l)&&(typeof u=="number"&&r.isArrayLike(l)&&t.isIndex(u)&&u<l.length||typeof u=="string"&&u in l)?i.isEqualsSameValueZero(l[u],o):!1}e.isIterateeCall=a})(Iu)),Iu}var bd;function $P(){return bd||(bd=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=NP(),r=RP(),n=Vm();function i(a,...o){const u=o.length;return u>1&&n.isIterateeCall(a,o[0],o[1])?o=[]:u>2&&n.isIterateeCall(o[0],o[1],o[2])&&(o=[o[0]]),t.orderBy(a,r.flatten(o),["asc"])}e.sortBy=i})(Eu)),Eu}var Mu,wd;function LP(){return wd||(wd=1,Mu=$P().sortBy),Mu}var BP=LP();const Ua=Cr(BP);var Xm=e=>e.legend.settings,zP=e=>e.legend.size,FP=e=>e.legend.payload,KP=S([FP,Xm],(e,t)=>{var{itemSorter:r}=t,n=e.flat(1);return r?Ua(n,r):n});function WP(){return D(KP)}var Ei=1;function Zm(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:[],[t,r]=v.useState({height:0,left:0,top:0,width:0}),n=v.useCallback(i=>{if(i!=null){var a=i.getBoundingClientRect(),o={height:a.height,left:a.left,top:a.top,width:a.width};(Math.abs(o.height-t.height)>Ei||Math.abs(o.left-t.left)>Ei||Math.abs(o.top-t.top)>Ei||Math.abs(o.width-t.width)>Ei)&&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 Ce(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 qP=typeof Symbol=="function"&&Symbol.observable||"@@observable",xd=qP,Du=()=>Math.random().toString(36).substring(7).split("").join("."),UP={INIT:`@@redux/INIT${Du()}`,REPLACE:`@@redux/REPLACE${Du()}`,PROBE_UNKNOWN_ACTION:()=>`@@redux/PROBE_UNKNOWN_ACTION${Du()}`},ea=UP;function Ec(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 Qm(e,t,r){if(typeof e!="function")throw new Error(Ce(2));if(typeof t=="function"&&typeof r=="function"||typeof r=="function"&&typeof arguments[3]=="function")throw new Error(Ce(0));if(typeof t=="function"&&typeof r>"u"&&(r=t,t=void 0),typeof r<"u"){if(typeof r!="function")throw new Error(Ce(1));return r(Qm)(e,t)}let n=e,i=t,a=new Map,o=a,u=0,l=!1;function c(){o===a&&(o=new Map,a.forEach((y,g)=>{o.set(g,y)}))}function s(){if(l)throw new Error(Ce(3));return i}function f(y){if(typeof y!="function")throw new Error(Ce(4));if(l)throw new Error(Ce(5));let g=!0;c();const b=u++;return o.set(b,y),function(){if(g){if(l)throw new Error(Ce(6));g=!1,c(),o.delete(b),a=null}}}function d(y){if(!Ec(y))throw new Error(Ce(7));if(typeof y.type>"u")throw new Error(Ce(8));if(typeof y.type!="string")throw new Error(Ce(17));if(l)throw new Error(Ce(9));try{l=!0,i=n(i,y)}finally{l=!1}return(a=o).forEach(b=>{b()}),y}function p(y){if(typeof y!="function")throw new Error(Ce(10));n=y,d({type:ea.REPLACE})}function h(){const y=f;return{subscribe(g){if(typeof g!="object"||g===null)throw new Error(Ce(11));function b(){const x=g;x.next&&x.next(s())}return b(),{unsubscribe:y(b)}},[xd](){return this}}}return d({type:ea.INIT}),{dispatch:d,subscribe:f,getState:s,replaceReducer:p,[xd]:h}}function HP(e){Object.keys(e).forEach(t=>{const r=e[t];if(typeof r(void 0,{type:ea.INIT})>"u")throw new Error(Ce(12));if(typeof r(void 0,{type:ea.PROBE_UNKNOWN_ACTION()})>"u")throw new Error(Ce(13))})}function Jm(e){const t=Object.keys(e),r={};for(let a=0;a<t.length;a++){const o=t[a];typeof e[o]=="function"&&(r[o]=e[o])}const n=Object.keys(r);let i;try{HP(r)}catch(a){i=a}return function(o={},u){if(i)throw i;let l=!1;const c={};for(let s=0;s<n.length;s++){const f=n[s],d=r[f],p=o[f],h=d(p,u);if(typeof h>"u")throw u&&u.type,new Error(Ce(14));c[f]=h,l=l||h!==p}return l=l||n.length!==Object.keys(o).length,l?c:o}}function ta(...e){return e.length===0?t=>t:e.length===1?e[0]:e.reduce((t,r)=>(...n)=>t(r(...n)))}function YP(...e){return t=>(r,n)=>{const i=t(r,n);let a=()=>{throw new Error(Ce(15))};const o={getState:i.getState,dispatch:(l,...c)=>a(l,...c)},u=e.map(l=>l(o));return a=ta(...u)(i.dispatch),{...i,dispatch:a}}}function ey(e){return Ec(e)&&"type"in e&&typeof e.type=="string"}var ty=Symbol.for("immer-nothing"),Pd=Symbol.for("immer-draftable"),Fe=Symbol.for("immer-state");function st(e,...t){throw new Error(`[Immer] minified error nr: ${e}. Full error at: https://bit.ly/3cXEKWf`)}var Ze=Object,Vr=Ze.getPrototypeOf,ra="constructor",Ha="prototype",wl="configurable",na="enumerable",qi="writable",Nn="value",It=e=>!!e&&!!e[Fe];function dt(e){var t;return e?ry(e)||Ga(e)||!!e[Pd]||!!((t=e[ra])!=null&&t[Pd])||Va(e)||Xa(e):!1}var GP=Ze[Ha][ra].toString(),Od=new WeakMap;function ry(e){if(!e||!_c(e))return!1;const t=Vr(e);if(t===null||t===Ze[Ha])return!0;const r=Ze.hasOwnProperty.call(t,ra)&&t[ra];if(r===Object)return!0;if(!Wr(r))return!1;let n=Od.get(r);return n===void 0&&(n=Function.toString.call(r),Od.set(r,n)),n===GP}function Ya(e,t,r=!0){Gn(e)===0?(r?Reflect.ownKeys(e):Ze.keys(e)).forEach(i=>{t(i,e[i],e)}):e.forEach((n,i)=>t(i,n,e))}function Gn(e){const t=e[Fe];return t?t.type_:Ga(e)?1:Va(e)?2:Xa(e)?3:0}var Sd=(e,t,r=Gn(e))=>r===2?e.has(t):Ze[Ha].hasOwnProperty.call(e,t),xl=(e,t,r=Gn(e))=>r===2?e.get(t):e[t],ia=(e,t,r,n=Gn(e))=>{n===2?e.set(t,r):n===3?e.add(r):e[t]=r};function VP(e,t){return e===t?e!==0||1/e===1/t:e!==e&&t!==t}var Ga=Array.isArray,Va=e=>e instanceof Map,Xa=e=>e instanceof Set,_c=e=>typeof e=="object",Wr=e=>typeof e=="function",Nu=e=>typeof e=="boolean";function XP(e){const t=+e;return Number.isInteger(t)&&String(t)===e}var _t=e=>e.copy_||e.base_,jc=e=>e.modified_?e.copy_:e.base_;function Pl(e,t){if(Va(e))return new Map(e);if(Xa(e))return new Set(e);if(Ga(e))return Array[Ha].slice.call(e);const r=ry(e);if(t===!0||t==="class_only"&&!r){const n=Ze.getOwnPropertyDescriptors(e);delete n[Fe];let i=Reflect.ownKeys(n);for(let a=0;a<i.length;a++){const o=i[a],u=n[o];u[qi]===!1&&(u[qi]=!0,u[wl]=!0),(u.get||u.set)&&(n[o]={[wl]:!0,[qi]:!0,[na]:u[na],[Nn]:e[o]})}return Ze.create(Vr(e),n)}else{const n=Vr(e);if(n!==null&&r)return{...e};const i=Ze.create(n);return Ze.assign(i,e)}}function kc(e,t=!1){return Za(e)||It(e)||!dt(e)||(Gn(e)>1&&Ze.defineProperties(e,{set:_i,add:_i,clear:_i,delete:_i}),Ze.freeze(e),t&&Ya(e,(r,n)=>{kc(n,!0)},!1)),e}function ZP(){st(2)}var _i={[Nn]:ZP};function Za(e){return e===null||!_c(e)?!0:Ze.isFrozen(e)}var aa="MapSet",Ol="Patches",Ad="ArrayMethods",ny={};function Sr(e){const t=ny[e];return t||st(0,e),t}var Ed=e=>!!ny[e],Rn,iy=()=>Rn,QP=(e,t)=>({drafts_:[],parent_:e,immer_:t,canAutoFreeze_:!0,unfinalizedDrafts_:0,handledSet_:new Set,processedForPatches_:new Set,mapSetPlugin_:Ed(aa)?Sr(aa):void 0,arrayMethodsPlugin_:Ed(Ad)?Sr(Ad):void 0});function _d(e,t){t&&(e.patchPlugin_=Sr(Ol),e.patches_=[],e.inversePatches_=[],e.patchListener_=t)}function Sl(e){Al(e),e.drafts_.forEach(JP),e.drafts_=null}function Al(e){e===Rn&&(Rn=e.parent_)}var jd=e=>Rn=QP(Rn,e);function JP(e){const t=e[Fe];t.type_===0||t.type_===1?t.revoke_():t.revoked_=!0}function kd(e,t){t.unfinalizedDrafts_=t.drafts_.length;const r=t.drafts_[0];if(e!==void 0&&e!==r){r[Fe].modified_&&(Sl(t),st(4)),dt(e)&&(e=Cd(t,e));const{patchPlugin_:i}=t;i&&i.generateReplacementPatches_(r[Fe].base_,e,t)}else e=Cd(t,r);return eO(t,e,!0),Sl(t),t.patches_&&t.patchListener_(t.patches_,t.inversePatches_),e!==ty?e:void 0}function Cd(e,t){if(Za(t))return t;const r=t[Fe];if(!r)return oa(t,e.handledSet_,e);if(!Qa(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);uy(r,e)}return r.copy_}function eO(e,t,r=!1){!e.parent_&&e.immer_.autoFreeze_&&e.canAutoFreeze_&&kc(t,r)}function ay(e){e.finalized_=!0,e.scope_.unfinalizedDrafts_--}var Qa=(e,t)=>e.scope_===t,tO=[];function oy(e,t,r,n){const i=_t(e),a=e.type_;if(n!==void 0&&xl(i,n,a)===t){ia(i,n,r,a);return}if(!e.draftLocations_){const u=e.draftLocations_=new Map;Ya(i,(l,c)=>{if(It(c)){const s=u.get(c)||[];s.push(l),u.set(c,s)}})}const o=e.draftLocations_.get(t)??tO;for(const u of o)ia(i,u,r,a)}function rO(e,t,r){e.callbacks_.push(function(i){var u;const a=t;if(!a||!Qa(a,i))return;(u=i.mapSetPlugin_)==null||u.fixSetContents(a);const o=jc(a);oy(e,a.draft_??a,o,r),uy(a,i)})}function uy(e,t){var n;if(e.modified_&&!e.finalized_&&(e.type_===3||e.type_===1&&e.allIndicesReassigned_||(((n=e.assigned_)==null?void 0:n.size)??0)>0)){const{patchPlugin_:i}=t;if(i){const a=i.getPath(e);a&&i.generatePatches_(e,a,t)}ay(e)}}function nO(e,t,r){const{scope_:n}=e;if(It(r)){const i=r[Fe];Qa(i,n)&&i.callbacks_.push(function(){Ui(e);const o=jc(i);oy(e,r,o,t)})}else dt(r)&&e.callbacks_.push(function(){const a=_t(e);e.type_===3?a.has(r)&&oa(r,n.handledSet_,n):xl(a,t,e.type_)===r&&n.drafts_.length>1&&(e.assigned_.get(t)??!1)===!0&&e.copy_&&oa(xl(e.copy_,t,e.type_),n.handledSet_,n)})}function oa(e,t,r){return!r.immer_.autoFreeze_&&r.unfinalizedDrafts_<1||It(e)||t.has(e)||!dt(e)||Za(e)||(t.add(e),Ya(e,(n,i)=>{if(It(i)){const a=i[Fe];if(Qa(a,r)){const o=jc(a);ia(e,n,o,e.type_),ay(a)}}else dt(i)&&oa(i,t,r)})),e}function iO(e,t){const r=Ga(e),n={type_:r?1:0,scope_:t?t.scope_:iy(),modified_:!1,finalized_:!1,assigned_:void 0,parent_:t,base_:e,draft_:null,copy_:null,revoke_:null,isManual_:!1,callbacks_:void 0};let i=n,a=ua;r&&(i=[n],a=$n);const{revoke:o,proxy:u}=Proxy.revocable(i,a);return n.draft_=u,n.revoke_=o,[u,n]}var ua={get(e,t){if(t===Fe)return e;let r=e.scope_.arrayMethodsPlugin_;const n=e.type_===1&&typeof t=="string";if(n&&r!=null&&r.isArrayOperationMethod(t))return r.createMethodInterceptor(e,t);const i=_t(e);if(!Sd(i,t,e.type_))return aO(e,i,t);const a=i[t];if(e.finalized_||!dt(a)||n&&e.operationMethod&&(r!=null&&r.isMutatingArrayMethod(e.operationMethod))&&XP(t))return a;if(a===Ru(e.base_,t)){Ui(e);const o=e.type_===1?+t:t,u=_l(e.scope_,a,e,o);return e.copy_[o]=u}return a},has(e,t){return t in _t(e)},ownKeys(e){return Reflect.ownKeys(_t(e))},set(e,t,r){const n=ly(_t(e),t);if(n!=null&&n.set)return n.set.call(e.draft_,r),!0;if(!e.modified_){const i=Ru(_t(e),t),a=i==null?void 0:i[Fe];if(a&&a.base_===r)return e.copy_[t]=r,e.assigned_.set(t,!1),!0;if(VP(r,i)&&(r!==void 0||Sd(e.base_,t,e.type_)))return!0;Ui(e),El(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),nO(e,t,r)),!0},deleteProperty(e,t){return Ui(e),Ru(e.base_,t)!==void 0||t in e.base_?(e.assigned_.set(t,!1),El(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&&{[qi]:!0,[wl]:e.type_!==1||t!=="length",[na]:n[na],[Nn]:r[t]}},defineProperty(){st(11)},getPrototypeOf(e){return Vr(e.base_)},setPrototypeOf(){st(12)}},$n={};for(let e in ua){let t=ua[e];$n[e]=function(){const r=arguments;return r[0]=r[0][0],t.apply(this,r)}}$n.deleteProperty=function(e,t){return $n.set.call(this,e,t,void 0)};$n.set=function(e,t,r){return ua.set.call(this,e[0],t,r,e[0])};function Ru(e,t){const r=e[Fe];return(r?_t(r):e)[t]}function aO(e,t,r){var i;const n=ly(t,r);return n?Nn in n?n[Nn]:(i=n.get)==null?void 0:i.call(e.draft_):void 0}function ly(e,t){if(!(t in e))return;let r=Vr(e);for(;r;){const n=Object.getOwnPropertyDescriptor(r,t);if(n)return n;r=Vr(r)}}function El(e){e.modified_||(e.modified_=!0,e.parent_&&El(e.parent_))}function Ui(e){e.copy_||(e.assigned_=new Map,e.copy_=Pl(e.base_,e.scope_.immer_.useStrictShallowCopy_))}var oO=class{constructor(t){this.autoFreeze_=!0,this.useStrictShallowCopy_=!1,this.useStrictIteration_=!1,this.produce=(r,n,i)=>{if(Wr(r)&&!Wr(n)){const o=n;n=r;const u=this;return function(c=o,...s){return u.produce(c,f=>n.call(this,f,...s))}}Wr(n)||st(6),i!==void 0&&!Wr(i)&&st(7);let a;if(dt(r)){const o=jd(this),u=_l(o,r,void 0);let l=!0;try{a=n(u),l=!1}finally{l?Sl(o):Al(o)}return _d(o,i),kd(a,o)}else if(!r||!_c(r)){if(a=n(r),a===void 0&&(a=r),a===ty&&(a=void 0),this.autoFreeze_&&kc(a,!0),i){const o=[],u=[];Sr(Ol).generateReplacementPatches_(r,a,{patches_:o,inversePatches_:u}),i(o,u)}return a}else st(1,r)},this.produceWithPatches=(r,n)=>{if(Wr(r))return(u,...l)=>this.produceWithPatches(u,c=>r(c,...l));let i,a;return[this.produce(r,n,(u,l)=>{i=u,a=l}),i,a]},Nu(t==null?void 0:t.autoFreeze)&&this.setAutoFreeze(t.autoFreeze),Nu(t==null?void 0:t.useStrictShallowCopy)&&this.setUseStrictShallowCopy(t.useStrictShallowCopy),Nu(t==null?void 0:t.useStrictIteration)&&this.setUseStrictIteration(t.useStrictIteration)}createDraft(t){dt(t)||st(8),It(t)&&(t=ot(t));const r=jd(this),n=_l(r,t,void 0);return n[Fe].isManual_=!0,Al(r),n}finishDraft(t,r){const n=t&&t[Fe];(!n||!n.isManual_)&&st(9);const{scope_:i}=n;return _d(i,r),kd(void 0,i)}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 a=r[n];if(a.path.length===0&&a.op==="replace"){t=a.value;break}}n>-1&&(r=r.slice(n+1));const i=Sr(Ol).applyPatches_;return It(t)?i(t,r):this.produce(t,a=>i(a,r))}};function _l(e,t,r,n){const[i,a]=Va(t)?Sr(aa).proxyMap_(t,r):Xa(t)?Sr(aa).proxySet_(t,r):iO(t,r);return((r==null?void 0:r.scope_)??iy()).drafts_.push(i),a.callbacks_=(r==null?void 0:r.callbacks_)??[],a.key_=n,r&&n!==void 0?rO(r,a,n):a.callbacks_.push(function(l){var s;(s=l.mapSetPlugin_)==null||s.fixSetContents(a);const{patchPlugin_:c}=l;a.modified_&&c&&c.generatePatches_(a,[],l)}),i}function ot(e){return It(e)||st(10,e),cy(e)}function cy(e){if(!dt(e)||Za(e))return e;const t=e[Fe];let r,n=!0;if(t){if(!t.modified_)return t.base_;t.finalized_=!0,r=Pl(e,t.scope_.immer_.useStrictShallowCopy_),n=t.scope_.immer_.shouldUseStrictIteration()}else r=Pl(e,!0);return Ya(r,(i,a)=>{ia(r,i,cy(a))},n),t&&(t.finalized_=!1),r}var uO=new oO,sy=uO.produce;function fy(e){return({dispatch:r,getState:n})=>i=>a=>typeof a=="function"?a(r,n,e):i(a)}var lO=fy(),cO=fy,sO=typeof window<"u"&&window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__?window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__:function(){if(arguments.length!==0)return typeof arguments[0]=="object"?ta:ta.apply(null,arguments)};function Je(e,t){function r(...n){if(t){let i=t(...n);if(!i)throw new Error(Qe(0));return{type:e,payload:i.payload,..."meta"in i&&{meta:i.meta},..."error"in i&&{error:i.error}}}return{type:e,payload:n[0]}}return r.toString=()=>`${e}`,r.type=e,r.match=n=>ey(n)&&n.type===e,r}var dy=class kn extends Array{constructor(...t){super(...t),Object.setPrototypeOf(this,kn.prototype)}static get[Symbol.species](){return kn}concat(...t){return super.concat.apply(this,t)}prepend(...t){return t.length===1&&Array.isArray(t[0])?new kn(...t[0].concat(this)):new kn(...t.concat(this))}};function Td(e){return dt(e)?sy(e,()=>{}):e}function ji(e,t,r){return e.has(t)?e.get(t):e.set(t,r(t)).get(t)}function fO(e){return typeof e=="boolean"}var dO=()=>function(t){const{thunk:r=!0,immutableCheck:n=!0,serializableCheck:i=!0,actionCreatorCheck:a=!0}=t??{};let o=new dy;return r&&(fO(r)?o.push(lO):o.push(cO(r.extraArgument))),o},vy="RTK_autoBatch",ae=()=>e=>({payload:e,meta:{[vy]:!0}}),Id=e=>t=>{setTimeout(t,e)},py=(e={type:"raf"})=>t=>(...r)=>{const n=t(...r);let i=!0,a=!1,o=!1;const u=new Set,l=e.type==="tick"?queueMicrotask:e.type==="raf"?typeof window<"u"&&window.requestAnimationFrame?window.requestAnimationFrame:Id(10):e.type==="callback"?e.queueNotification:Id(e.timeout),c=()=>{o=!1,a&&(a=!1,u.forEach(s=>s()))};return Object.assign({},n,{subscribe(s){const f=()=>i&&s(),d=n.subscribe(f);return u.add(s),()=>{d(),u.delete(s)}},dispatch(s){var f;try{return i=!((f=s==null?void 0:s.meta)!=null&&f[vy]),a=!i,a&&(o||(o=!0,l(c))),n.dispatch(s)}finally{i=!0}}})},vO=e=>function(r){const{autoBatch:n=!0}=r??{};let i=new dy(e);return n&&i.push(py(typeof n=="object"?n:void 0)),i};function pO(e){const t=dO(),{reducer:r=void 0,middleware:n,devTools:i=!0,preloadedState:a=void 0,enhancers:o=void 0}=e||{};let u;if(typeof r=="function")u=r;else if(Ec(r))u=Jm(r);else throw new Error(Qe(1));let l;typeof n=="function"?l=n(t):l=t();let c=ta;i&&(c=sO({trace:!1,...typeof i=="object"&&i}));const s=YP(...l),f=vO(s);let d=typeof o=="function"?o(f):f();const p=c(...d);return Qm(u,a,p)}function hy(e){const t={},r=[];let n;const i={addCase(a,o){const u=typeof a=="string"?a:a.type;if(!u)throw new Error(Qe(28));if(u in t)throw new Error(Qe(29));return t[u]=o,i},addAsyncThunk(a,o){return o.pending&&(t[a.pending.type]=o.pending),o.rejected&&(t[a.rejected.type]=o.rejected),o.fulfilled&&(t[a.fulfilled.type]=o.fulfilled),o.settled&&r.push({matcher:a.settled,reducer:o.settled}),i},addMatcher(a,o){return r.push({matcher:a,reducer:o}),i},addDefaultCase(a){return n=a,i}};return e(i),[t,r,n]}function hO(e){return typeof e=="function"}function mO(e,t){let[r,n,i]=hy(t),a;if(hO(e))a=()=>Td(e());else{const u=Td(e);a=()=>u}function o(u=a(),l){let c=[r[l.type],...n.filter(({matcher:s})=>s(l)).map(({reducer:s})=>s)];return c.filter(s=>!!s).length===0&&(c=[i]),c.reduce((s,f)=>{if(f)if(It(s)){const p=f(s,l);return p===void 0?s:p}else{if(dt(s))return sy(s,d=>f(d,l));{const d=f(s,l);if(d===void 0){if(s===null)return s;throw Error("A case reducer on a non-draftable value must not return undefined")}return d}}return s},u)}return o.getInitialState=a,o}var yO="ModuleSymbhasOwnPr-0123456789ABCDEFGHNRVfgctiUvz_KqYTJkLxpZXIjQW",gO=(e=21)=>{let t="",r=e;for(;r--;)t+=yO[Math.random()*64|0];return t},bO=Symbol.for("rtk-slice-createasyncthunk");function wO(e,t){return`${e}/${t}`}function xO({creators:e}={}){var r;const t=(r=e==null?void 0:e.asyncThunk)==null?void 0:r[bO];return function(i){const{name:a,reducerPath:o=a}=i;if(!a)throw new Error(Qe(11));const u=(typeof i.reducers=="function"?i.reducers(OO()):i.reducers)||{},l=Object.keys(u),c={sliceCaseReducersByName:{},sliceCaseReducersByType:{},actionCreators:{},sliceMatchers:[]},s={addCase(x,O){const w=typeof x=="string"?x:x.type;if(!w)throw new Error(Qe(12));if(w in c.sliceCaseReducersByType)throw new Error(Qe(13));return c.sliceCaseReducersByType[w]=O,s},addMatcher(x,O){return c.sliceMatchers.push({matcher:x,reducer:O}),s},exposeAction(x,O){return c.actionCreators[x]=O,s},exposeCaseReducer(x,O){return c.sliceCaseReducersByName[x]=O,s}};l.forEach(x=>{const O=u[x],w={reducerName:x,type:wO(a,x),createNotation:typeof i.reducers=="function"};AO(O)?_O(w,O,s,t):SO(w,O,s)});function f(){const[x={},O=[],w=void 0]=typeof i.extraReducers=="function"?hy(i.extraReducers):[i.extraReducers],A={...x,...c.sliceCaseReducersByType};return mO(i.initialState,E=>{for(let k in A)E.addCase(k,A[k]);for(let k of c.sliceMatchers)E.addMatcher(k.matcher,k.reducer);for(let k of O)E.addMatcher(k.matcher,k.reducer);w&&E.addDefaultCase(w)})}const d=x=>x,p=new Map,h=new WeakMap;let m;function y(x,O){return m||(m=f()),m(x,O)}function g(){return m||(m=f()),m.getInitialState()}function b(x,O=!1){function w(E){let k=E[x];return typeof k>"u"&&O&&(k=ji(h,w,g)),k}function A(E=d){const k=ji(p,O,()=>new WeakMap);return ji(k,E,()=>{const C={};for(const[T,_]of Object.entries(i.selectors??{}))C[T]=PO(_,E,()=>ji(h,E,g),O);return C})}return{reducerPath:x,getSelectors:A,get selectors(){return A(w)},selectSlice:w}}const P={name:a,reducer:y,actions:c.actionCreators,caseReducers:c.sliceCaseReducersByName,getInitialState:g,...b(o),injectInto(x,{reducerPath:O,...w}={}){const A=O??o;return x.inject({reducerPath:A,reducer:y},w),{...P,...b(A,!0)}}};return P}}function PO(e,t,r,n){function i(a,...o){let u=t(a);return typeof u>"u"&&n&&(u=r()),e(u,...o)}return i.unwrapped=e,i}var $e=xO();function OO(){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 SO({type:e,reducerName:t,createNotation:r},n,i){let a,o;if("reducer"in n){if(r&&!EO(n))throw new Error(Qe(17));a=n.reducer,o=n.prepare}else a=n;i.addCase(e,a).exposeCaseReducer(t,a).exposeAction(t,o?Je(e,o):Je(e))}function AO(e){return e._reducerDefinitionType==="asyncThunk"}function EO(e){return e._reducerDefinitionType==="reducerWithPrepare"}function _O({type:e,reducerName:t},r,n,i){if(!i)throw new Error(Qe(18));const{payloadCreator:a,fulfilled:o,pending:u,rejected:l,settled:c,options:s}=r,f=i(e,a,s);n.exposeAction(t,f),o&&n.addCase(f.fulfilled,o),u&&n.addCase(f.pending,u),l&&n.addCase(f.rejected,l),c&&n.addMatcher(f.settled,c),n.exposeCaseReducer(t,{fulfilled:o||ki,pending:u||ki,rejected:l||ki,settled:c||ki})}function ki(){}var jO="task",my="listener",yy="completed",Cc="cancelled",kO=`task-${Cc}`,CO=`task-${yy}`,jl=`${my}-${Cc}`,TO=`${my}-${yy}`,Ja=class{constructor(e){Fo(this,"name","TaskAbortError");Fo(this,"message");this.code=e,this.message=`${jO} ${Cc} (reason: ${e})`}},Tc=(e,t)=>{if(typeof e!="function")throw new TypeError(Qe(32))},la=()=>{},gy=(e,t=la)=>(e.catch(t),e),by=(e,t)=>(e.addEventListener("abort",t,{once:!0}),()=>e.removeEventListener("abort",t)),yr=e=>{if(e.aborted)throw new Ja(e.reason)};function wy(e,t){let r=la;return new Promise((n,i)=>{const a=()=>i(new Ja(e.reason));if(e.aborted){a();return}r=by(e,a),t.finally(()=>r()).then(n,i)}).finally(()=>{r=la})}var IO=async(e,t)=>{try{return await Promise.resolve(),{status:"ok",value:await e()}}catch(r){return{status:r instanceof Ja?"cancelled":"rejected",error:r}}finally{t==null||t()}},ca=e=>t=>gy(wy(e,t).then(r=>(yr(e),r))),xy=e=>{const t=ca(e);return r=>t(new Promise(n=>setTimeout(n,r)))},{assign:Yr}=Object,Md={},eo="listenerMiddleware",MO=(e,t)=>{const r=n=>by(e,()=>n.abort(e.reason));return(n,i)=>{Tc(n);const a=new AbortController;r(a);const o=IO(async()=>{yr(e),yr(a.signal);const u=await n({pause:ca(a.signal),delay:xy(a.signal),signal:a.signal});return yr(a.signal),u},()=>a.abort(CO));return i!=null&&i.autoJoin&&t.push(o.catch(la)),{result:ca(e)(o),cancel(){a.abort(kO)}}}},DO=(e,t)=>{const r=async(n,i)=>{yr(t);let a=()=>{};const u=[new Promise((l,c)=>{let s=e({predicate:n,effect:(f,d)=>{d.unsubscribe(),l([f,d.getState(),d.getOriginalState()])}});a=()=>{s(),c()}})];i!=null&&u.push(new Promise(l=>setTimeout(l,i,null)));try{const l=await wy(t,Promise.race(u));return yr(t),l}finally{a()}};return(n,i)=>gy(r(n,i))},Py=e=>{let{type:t,actionCreator:r,matcher:n,predicate:i,effect:a}=e;if(t)i=Je(t).match;else if(r)t=r.type,i=r.match;else if(n)i=n;else if(!i)throw new Error(Qe(21));return Tc(a),{predicate:i,type:t,effect:a}},Oy=Yr(e=>{const{type:t,predicate:r,effect:n}=Py(e);return{id:gO(),effect:n,type:t,predicate:r,pending:new Set,unsubscribe:()=>{throw new Error(Qe(22))}}},{withTypes:()=>Oy}),Dd=(e,t)=>{const{type:r,effect:n,predicate:i}=Py(t);return Array.from(e.values()).find(a=>(typeof r=="string"?a.type===r:a.predicate===i)&&a.effect===n)},kl=e=>{e.pending.forEach(t=>{t.abort(jl)})},NO=(e,t)=>()=>{for(const r of t.keys())kl(r);e.clear()},Nd=(e,t,r)=>{try{e(t,r)}catch(n){setTimeout(()=>{throw n},0)}},Sy=Yr(Je(`${eo}/add`),{withTypes:()=>Sy}),RO=Je(`${eo}/removeAll`),Ay=Yr(Je(`${eo}/remove`),{withTypes:()=>Ay}),$O=(...e)=>{console.error(`${eo}/error`,...e)},Vn=(e={})=>{const t=new Map,r=new Map,n=p=>{const h=r.get(p)??0;r.set(p,h+1)},i=p=>{const h=r.get(p)??1;h===1?r.delete(p):r.set(p,h-1)},{extra:a,onError:o=$O}=e;Tc(o);const u=p=>(p.unsubscribe=()=>t.delete(p.id),t.set(p.id,p),h=>{p.unsubscribe(),h!=null&&h.cancelActive&&kl(p)}),l=p=>{const h=Dd(t,p)??Oy(p);return u(h)};Yr(l,{withTypes:()=>l});const c=p=>{const h=Dd(t,p);return h&&(h.unsubscribe(),p.cancelActive&&kl(h)),!!h};Yr(c,{withTypes:()=>c});const s=async(p,h,m,y)=>{const g=new AbortController,b=DO(l,g.signal),P=[];try{p.pending.add(g),n(p),await Promise.resolve(p.effect(h,Yr({},m,{getOriginalState:y,condition:(x,O)=>b(x,O).then(Boolean),take:b,delay:xy(g.signal),pause:ca(g.signal),extra:a,signal:g.signal,fork:MO(g.signal,P),unsubscribe:p.unsubscribe,subscribe:()=>{t.set(p.id,p)},cancelActiveListeners:()=>{p.pending.forEach((x,O,w)=>{x!==g&&(x.abort(jl),w.delete(x))})},cancel:()=>{g.abort(jl),p.pending.delete(g)},throwIfCancelled:()=>{yr(g.signal)}})))}catch(x){x instanceof Ja||Nd(o,x,{raisedBy:"effect"})}finally{await Promise.all(P),g.abort(TO),i(p),p.pending.delete(g)}},f=NO(t,r);return{middleware:p=>h=>m=>{if(!ey(m))return h(m);if(Sy.match(m))return l(m.payload);if(RO.match(m)){f();return}if(Ay.match(m))return c(m.payload);let y=p.getState();const g=()=>{if(y===Md)throw new Error(Qe(23));return y};let b;try{if(b=h(m),t.size>0){const P=p.getState(),x=Array.from(t.values());for(const O of x){let w=!1;try{w=O.predicate(m,P,y)}catch(A){w=!1,Nd(o,A,{raisedBy:"predicate"})}w&&s(O,m,p,g)}}}finally{y=Md}return b},startListening:l,stopListening:c,clearListeners:f}};function Qe(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 LO={layoutType:"horizontal",width:0,height:0,margin:{top:5,right:5,bottom:5,left:5},scale:1},Ey=$e({name:"chartLayout",initialState:LO,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,i,a;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=(i=t.payload.bottom)!==null&&i!==void 0?i:0,e.margin.left=(a=t.payload.left)!==null&&a!==void 0?a:0},setScale(e,t){e.scale=t.payload}}}),{setMargin:BO,setLayout:zO,setChartSize:FO,setScale:KO}=Ey.actions,WO=Ey.reducer;function _y(e,t,r){return Array.isArray(e)&&e&&t+r!==0?e.slice(t,r+1):e}function V(e){return Number.isFinite(e)}function Jt(e){return typeof e=="number"&&e>0&&Number.isFinite(e)}function Rd(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).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?Rd(Object(r),!0).forEach(function(n){qO(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):Rd(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function qO(e,t,r){return(t=UO(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function UO(e){var t=HO(e,"string");return typeof t=="symbol"?t:t+""}function HO(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 ne(e,t,r){return ge(e)||ge(t)?r:Pt(t)?Pr(e,t,r):typeof t=="function"?t(e):r}var YO=(e,t,r)=>{if(t&&r){var{width:n,height:i}=r,{align:a,verticalAlign:o,layout:u}=t;if((u==="vertical"||u==="horizontal"&&o==="middle")&&a!=="center"&&L(e[a]))return qr(qr({},e),{},{[a]:e[a]+(n||0)});if((u==="horizontal"||u==="vertical"&&a==="center")&&o!=="middle"&&L(e[o]))return qr(qr({},e),{},{[o]:e[o]+(i||0)})}return e},Lt=(e,t)=>e==="horizontal"&&t==="xAxis"||e==="vertical"&&t==="yAxis"||e==="centric"&&t==="angleAxis"||e==="radial"&&t==="radiusAxis",jy=(e,t)=>{if(!t||t.length!==2||!L(t[0])||!L(t[1]))return e;var r=Math.min(t[0],t[1]),n=Math.max(t[0],t[1]),i=[e[0],e[1]];return(!L(e[0])||e[0]<r)&&(i[0]=r),(!L(e[1])||e[1]>n)&&(i[1]=n),i[0]>n&&(i[0]=n),i[1]<r&&(i[1]=r),i},GO=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 i=0;i<n;++i)for(var a=0,o=0,u=0;u<r;++u){var l=e[u],c=l==null?void 0:l[i];if(c!=null){var s=c[1],f=c[0],d=xt(s)?f:s;d>=0?(c[0]=a,a+=d,c[1]=a):(c[0]=o,o+=d,c[1]=o)}}}},VO=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 i=0;i<n;++i)for(var a=0,o=0;o<r;++o){var u=e[o],l=u==null?void 0:u[i];if(l!=null){var c=xt(l[1])?l[0]:l[1];c>=0?(l[0]=a,a+=c,l[1]=a):(l[0]=0,l[1]=0)}}}},XO={sign:GO,expand:xx,none:xr,silhouette:Px,wiggle:Ox,positive:VO},ZO=(e,t,r)=>{var n,i=(n=XO[r])!==null&&n!==void 0?n:xr,a=wx().keys(t).value((u,l)=>Number(ne(u,l,0))).order(gl).offset(i),o=a(e);return o.forEach((u,l)=>{u.forEach((c,s)=>{var f=ne(e[s],t[l],0);Array.isArray(f)&&f.length===2&&L(f[0])&&L(f[1])&&(c[0]=f[0],c[1]=f[1])})}),o};function Ic(e){return e==null?void 0:String(e)}var sa=e=>{var{axis:t,ticks:r,offset:n,bandSize:i,entry:a,index:o}=e;if(t.type==="category")return r[o]?r[o].coordinate+n:null;var u=ne(a,t.dataKey,t.scale.domain()[o]);if(ge(u))return null;var l=t.scale.map(u);return L(l)?l-i/2+n:null},ky=e=>{var{numericAxis:t}=e,r=t.scale.domain();if(t.type==="number"){var n=Math.min(r[0],r[1]),i=Math.max(r[0],r[1]);return n<=0&&i>=0?0:i<0?i:n}return r[0]},QO=e=>{var t=e.flat(2).filter(L);return[Math.min(...t),Math.max(...t)]},JO=e=>[e[0]===1/0?0:e[0],e[1]===-1/0?0:e[1]],e1=(e,t,r)=>{if(e!=null)return JO(Object.keys(e).reduce((n,i)=>{var a=e[i];if(!a)return n;var{stackedData:o}=a,u=o.reduce((l,c)=>{var s=_y(c,t,r),f=QO(s);return!V(f[0])||!V(f[1])?l:[Math.min(l[0],f[0]),Math.max(l[1],f[1])]},[1/0,-1/0]);return[Math.min(u[0],n[0]),Math.max(u[1],n[1])]},[1/0,-1/0]))},$d=/^dataMin[\s]*-[\s]*([0-9]+([.]{1}[0-9]+){0,1})$/,Ld=/^dataMax[\s]*\+[\s]*([0-9]+([.]{1}[0-9]+){0,1})$/,er=(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 i=Ua(t,s=>s.coordinate),a=1/0,o=1,u=i.length;o<u;o++){var l=i[o],c=i[o-1];a=Math.min(((l==null?void 0:l.coordinate)||0)-((c==null?void 0:c.coordinate)||0),a)}return a===1/0?0:a}return r?void 0:0};function Bd(e){var{tooltipEntrySettings:t,dataKey:r,payload:n,value:i,name:a}=e;return qr(qr({},t),{},{dataKey:r,payload:n,value:i,name:a})}function Xn(e,t){if(e)return String(e);if(typeof t=="string")return t}var t1=(e,t)=>{if(t==="horizontal")return e.relativeX;if(t==="vertical")return e.relativeY},r1=(e,t)=>t==="centric"?e.angle:e.radius,Bt=e=>e.layout.width,zt=e=>e.layout.height,n1=e=>e.layout.scale,Cy=e=>e.layout.margin,to=S(e=>e.cartesianAxis.xAxis,e=>Object.values(e)),ro=S(e=>e.cartesianAxis.yAxis,e=>Object.values(e)),Ty="data-recharts-item-index",Iy="data-recharts-item-id",Zn=60;function zd(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),r.push.apply(r,n)}return r}function Ci(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?zd(Object(r),!0).forEach(function(n){i1(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):zd(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function i1(e,t,r){return(t=a1(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function a1(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 u1=e=>e.brush.height;function l1(e){var t=ro(e);return t.reduce((r,n)=>{if(n.orientation==="left"&&!n.mirror&&!n.hide){var i=typeof n.width=="number"?n.width:Zn;return r+i}return r},0)}function c1(e){var t=ro(e);return t.reduce((r,n)=>{if(n.orientation==="right"&&!n.mirror&&!n.hide){var i=typeof n.width=="number"?n.width:Zn;return r+i}return r},0)}function s1(e){var t=to(e);return t.reduce((r,n)=>n.orientation==="top"&&!n.mirror&&!n.hide?r+n.height:r,0)}function f1(e){var t=to(e);return t.reduce((r,n)=>n.orientation==="bottom"&&!n.mirror&&!n.hide?r+n.height:r,0)}var Ae=S([Bt,zt,Cy,u1,l1,c1,s1,f1,Xm,zP],(e,t,r,n,i,a,o,u,l,c)=>{var s={left:(r.left||0)+i,right:(r.right||0)+a},f={top:(r.top||0)+o,bottom:(r.bottom||0)+u},d=Ci(Ci({},f),s),p=d.bottom;d.bottom+=n,d=YO(d,l,c);var h=e-d.left-d.right,m=t-d.top-d.bottom;return Ci(Ci({brushBottom:p},d),{},{width:Math.max(h,0),height:Math.max(m,0)})}),d1=S(Ae,e=>({x:e.left,y:e.top,width:e.width,height:e.height})),Mc=S(Bt,zt,(e,t)=>({x:0,y:0,width:e,height:t})),v1=v.createContext(null),He=()=>v.useContext(v1)!=null,no=e=>e.brush,io=S([no,Ae,Cy],(e,t,r)=>({height:e.height,x:L(e.x)?e.x:t.left,y:L(e.y)?e.y:t.top+t.height+t.brushBottom-((r==null?void 0:r.bottom)||0),width:L(e.width)?e.width:t.width})),$u={},Lu={},Bu={},Fd;function p1(){return Fd||(Fd=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(r,n,{signal:i,edges:a}={}){let o,u=null;const l=a!=null&&a.includes("leading"),c=a==null||a.includes("trailing"),s=()=>{u!==null&&(r.apply(o,u),o=void 0,u=null)},f=()=>{c&&s(),m()};let d=null;const p=()=>{d!=null&&clearTimeout(d),d=setTimeout(()=>{d=null,f()},n)},h=()=>{d!==null&&(clearTimeout(d),d=null)},m=()=>{h(),o=void 0,u=null},y=()=>{s()},g=function(...b){if(i!=null&&i.aborted)return;o=this,u=b;const P=d==null;p(),l&&P&&s()};return g.schedule=p,g.cancel=m,g.flush=y,i==null||i.addEventListener("abort",m,{once:!0}),g}e.debounce=t})(Bu)),Bu}var Kd;function h1(){return Kd||(Kd=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=p1();function r(n,i=0,a={}){typeof a!="object"&&(a={});const{leading:o=!1,trailing:u=!0,maxWait:l}=a,c=Array(2);o&&(c[0]="leading"),u&&(c[1]="trailing");let s,f=null;const d=t.debounce(function(...m){s=n.apply(this,m),f=null},i,{edges:c}),p=function(...m){return l!=null&&(f===null&&(f=Date.now()),Date.now()-f>=l)?(s=n.apply(this,m),f=Date.now(),d.cancel(),d.schedule(),s):(d.apply(this,m),s)},h=()=>(d.flush(),s);return p.cancel=d.cancel,p.flush=h,p}e.debounce=r})(Lu)),Lu}var Wd;function m1(){return Wd||(Wd=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=h1();function r(n,i=0,a={}){const{leading:o=!0,trailing:u=!0}=a;return t.debounce(n,i,{leading:o,maxWait:i,trailing:u})}e.throttle=r})($u)),$u}var zu,qd;function y1(){return qd||(qd=1,zu=m1().throttle),zu}var g1=y1();const b1=Cr(g1);var Ud=function(t,r){for(var n=arguments.length,i=new Array(n>2?n-2:0),a=2;a<n;a++)i[a-2]=arguments[a];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,()=>i[o++]))}},gt={width:"100%",height:"100%",debounce:0,minWidth:0,initialDimension:{width:-1,height:-1}},My=(e,t,r)=>{var{width:n=gt.width,height:i=gt.height,aspect:a,maxHeight:o}=r,u=Or(n)?e:Number(n),l=Or(i)?t:Number(i);return a&&a>0&&(u?l=u/a:l&&(u=l*a),o&&l!=null&&l>o&&(l=o)),{calculatedWidth:u,calculatedHeight:l}},w1={width:0,height:0,overflow:"visible"},x1={width:0,overflowX:"visible"},P1={height:0,overflowY:"visible"},O1={},S1=e=>{var{width:t,height:r}=e,n=Or(t),i=Or(r);return n&&i?w1:n?x1:i?P1:O1};function A1(e){var{width:t,height:r,aspect:n}=e,i=t,a=r;return i===void 0&&a===void 0?(i=gt.width,a=gt.height):i===void 0?i=n&&n>0?void 0:gt.width:a===void 0&&(a=n&&n>0?void 0:gt.height),{width:i,height:a}}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 Hd(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),r.push.apply(r,n)}return r}function Yd(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?Hd(Object(r),!0).forEach(function(n){E1(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):Hd(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function E1(e,t,r){return(t=_1(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function _1(e){var t=j1(e,"string");return typeof t=="symbol"?t:t+""}function j1(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 Dy=v.createContext(gt.initialDimension);function k1(e){return Jt(e.width)&&Jt(e.height)}function Ny(e){var{children:t,width:r,height:n}=e,i=v.useMemo(()=>({width:r,height:n}),[r,n]);return k1(i)?v.createElement(Dy.Provider,{value:i},t):null}var Dc=()=>v.useContext(Dy),C1=v.forwardRef((e,t)=>{var{aspect:r,initialDimension:n=gt.initialDimension,width:i,height:a,minWidth:o=gt.minWidth,minHeight:u,maxHeight:l,children:c,debounce:s=gt.debounce,id:f,className:d,onResize:p,style:h={}}=e,m=v.useRef(null),y=v.useRef();y.current=p,v.useImperativeHandle(t,()=>m.current);var[g,b]=v.useState({containerWidth:n.width,containerHeight:n.height}),P=v.useCallback((E,k)=>{b(C=>{var T=Math.round(E),_=Math.round(k);return C.containerWidth===T&&C.containerHeight===_?C:{containerWidth:T,containerHeight:_}})},[]);v.useEffect(()=>{if(m.current==null||typeof ResizeObserver>"u")return $t;var E=_=>{var B,$=_[0];if($!=null){var{width:z,height:K}=$.contentRect;P(z,K),(B=y.current)===null||B===void 0||B.call(y,z,K)}};s>0&&(E=b1(E,s,{trailing:!0,leading:!1}));var k=new ResizeObserver(E),{width:C,height:T}=m.current.getBoundingClientRect();return P(C,T),k.observe(m.current),()=>{k.disconnect()}},[P,s]);var{containerWidth:x,containerHeight:O}=g;Ud(!r||r>0,"The aspect(%s) must be greater than zero.",r);var{calculatedWidth:w,calculatedHeight:A}=My(x,O,{width:i,height:a,aspect:r,maxHeight:l});return Ud(w!=null&&w>0||A!=null&&A>0,`The width(%s) and height(%s) of chart should be greater than 0,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{r as c,a as k,j as e}from"./index-B1PLsGu1.js";import{u as F,a as P,i as H,B as z,C as L,M as R,H as J,P as O}from"./style-C-e8BTyP.js";import"./index-NmopQGmQ.js";const M={landing:"#2196f3",form:"#ff9800",selection:"#4caf50",listing:"#9c27b0",comparison:"#e91e63",detail:"#00bcd4",map:"#009688",calculator:"#ffc107",confirmation:"#3f51b5",success:"#4caf50",dashboard:"#607d8b",page:"#757575"},V={navigation:"#6c757d",form_submit:"#2196f3",redirect:"#ff9800",back:"#9e9e9e"},D=280,W=220,X=c.memo(function({data:l}){const{screen:o,screenshotUrl:s,onSelect:a}=l,n=M[o.screenType]??"#757575";return e.jsxs(e.Fragment,{children:[e.jsx(J,{type:"target",position:O.Top,className:"!w-2 !h-2"}),e.jsxs("div",{className:"bg-[var(--color-bg)] border-2 rounded-lg shadow-md hover:shadow-lg transition-shadow cursor-pointer overflow-hidden",style:{borderColor:n,width:D},onClick:()=>a(o),children:[e.jsxs("div",{className:"relative w-full bg-[var(--color-bg-tertiary)]",style:{height:140},children:[s?e.jsx("img",{src:s,alt:o.title,className:"w-full h-full object-cover",loading:"lazy"}):e.jsx("div",{className:"flex items-center justify-center h-full text-[var(--color-text-muted)] text-xs",children:"No screenshot"}),e.jsx("span",{className:"absolute top-1.5 left-1.5 text-[9px] font-bold uppercase px-1.5 py-0.5 rounded text-white",style:{background:n},children:o.screenType})]}),e.jsxs("div",{className:"p-2",children:[e.jsx("div",{className:"text-sm font-semibold leading-tight line-clamp-1",children:o.title}),o.url&&e.jsx("div",{className:"text-[10px] text-[var(--color-text-muted)] truncate mt-0.5",children:o.url}),e.jsxs("div",{className:"flex items-center gap-2 mt-1",children:[o.fields&&o.fields.length>0&&e.jsxs("span",{className:"text-[9px] px-1 py-0.5 rounded bg-[var(--color-bg-tertiary)] text-[var(--color-text-muted)]",children:[o.fields.length," fields"]}),o.ctas&&o.ctas.length>0&&e.jsxs("span",{className:"text-[9px] px-1 py-0.5 rounded bg-[var(--color-bg-tertiary)] text-[var(--color-text-muted)]",children:[o.ctas.length," CTAs"]})]})]})]}),e.jsx(J,{type:"source",position:O.Bottom,className:"!w-2 !h-2"})]})}),Y={journeyScreen:X};function B(t,l){var i;const o=new Map,s=new Map;for(const r of t)o.set(r.id,[]),s.set(r.id,0);for(const r of l)(i=o.get(r.from))==null||i.push(r.to),s.set(r.to,(s.get(r.to)??0)+1);const a=[],n=[],h=new Set;for(const r of t)(s.get(r.id)??0)===0&&n.push(r.id);for(;n.length>0;){const r=[...n];a.push(r),n.length=0;for(const d of r){h.add(d);for(const m of o.get(d)??[])if(!h.has(m)){const b=(s.get(m)??1)-1;s.set(m,b),b<=0&&!h.has(m)&&n.push(m)}}}for(const r of t)h.has(r.id)||(a.length===0&&a.push([]),a[a.length-1].push(r.id));const v=new Map(t.map(r=>[r.id,r])),x=D+60,N=W+80,j=[];for(let r=0;r<a.length;r++){const d=a[r],b=-(d.length*x)/2+x/2;for(let y=0;y<d.length;y++){const u=v.get(d[y]);u&&j.push({id:u.id,type:"journeyScreen",position:{x:u.positionX!==0?u.positionX:b+y*x,y:u.positionY!==0?u.positionY:r*N},data:{screen:u,screenshotUrl:u.screenshot?`/api/v1/journey/screenshots/_/${u.screenshot}`:void 0,onSelect:()=>{}}})}}return j}function G(t){return t.map(l=>({id:l.id,source:l.from,target:l.to,label:l.label??"",type:"smoothstep",animated:l.type==="form_submit",style:{stroke:V[l.type]??"#6c757d",strokeWidth:2},labelStyle:{fontSize:10,fill:"var(--color-text-muted)"},labelBgStyle:{fill:"var(--color-bg)",fillOpacity:.8}}))}function $({screen:t,onClose:l}){const o=M[t.screenType]??"#757575";return e.jsxs("div",{className:"w-80 h-full border-l border-[var(--color-border)] bg-[var(--color-bg)] overflow-y-auto p-4 flex flex-col gap-3",children:[e.jsxs("div",{className:"flex items-center justify-between",children:[e.jsx("span",{className:"text-xs font-bold uppercase px-2 py-0.5 rounded text-white",style:{background:o},children:t.screenType}),e.jsx("button",{onClick:l,className:"text-[var(--color-text-muted)] hover:text-[var(--color-text)]",children:"X"})]}),e.jsx("h3",{className:"text-lg font-semibold",children:t.title}),t.url&&e.jsx("div",{className:"text-xs text-[var(--color-text-muted)] break-all",children:t.url}),t.description&&e.jsx("p",{className:"text-sm text-[var(--color-text-muted)]",children:t.description}),t.screenshot&&e.jsx("div",{className:"rounded-lg overflow-hidden border border-[var(--color-border)]",children:e.jsx("img",{src:`/api/v1/journey/screenshots/_/${t.screenshot}`,alt:t.title,className:"w-full"})}),t.fields&&t.fields.length>0&&e.jsxs("div",{children:[e.jsxs("h4",{className:"text-xs font-semibold uppercase text-[var(--color-text-muted)] mb-1.5",children:["Form Fields (",t.fields.length,")"]}),e.jsx("div",{className:"space-y-1.5",children:t.fields.map(s=>e.jsxs("div",{className:"flex items-center gap-2 text-sm bg-[var(--color-bg-secondary)] rounded px-2 py-1",children:[e.jsx("span",{className:"font-mono text-xs text-[var(--color-accent)]",children:s.type}),e.jsx("span",{children:s.label??s.name}),s.required&&e.jsx("span",{className:"text-[9px] text-red-400 font-bold",children:"*"})]},s.name))})]}),t.ctas&&t.ctas.length>0&&e.jsxs("div",{children:[e.jsxs("h4",{className:"text-xs font-semibold uppercase text-[var(--color-text-muted)] mb-1.5",children:["CTAs (",t.ctas.length,")"]}),e.jsx("div",{className:"flex flex-wrap gap-1",children:t.ctas.map(s=>e.jsx("span",{className:"text-xs px-2 py-0.5 rounded-full bg-[var(--color-accent)] text-white",children:s},s))})]}),t.metadata&&Object.keys(t.metadata).length>0&&e.jsxs("div",{children:[e.jsx("h4",{className:"text-xs font-semibold uppercase text-[var(--color-text-muted)] mb-1.5",children:"Metadata"}),e.jsx("pre",{className:"text-[10px] bg-[var(--color-bg-secondary)] rounded p-2 overflow-x-auto",children:JSON.stringify(t.metadata,null,2)})]})]})}function T({maps:t,selectedId:l,onSelect:o,onImport:s,loading:a}){return a?e.jsx("div",{className:"flex items-center justify-center h-full text-[var(--color-text-muted)]",children:"Loading journey maps..."}):t.length===0?e.jsxs("div",{className:"flex flex-col items-center justify-center h-full gap-4 text-[var(--color-text-muted)]",children:[e.jsx("div",{className:"text-5xl",children:"🗺"}),e.jsx("p",{className:"text-sm font-medium",children:"No journey maps yet"}),e.jsx("p",{className:"text-xs text-center max-w-xs",children:"Import a journey map JSON file or capture website screens to create a journey flow visualization."}),e.jsx("button",{onClick:s,className:"px-4 py-2 rounded-lg bg-[var(--color-accent)] text-white text-sm hover:opacity-90 transition-opacity",children:"Import Journey Map"})]}):e.jsxs("div",{className:"flex items-center gap-2 p-2 border-b border-[var(--color-border)] bg-[var(--color-bg-secondary)]",children:[e.jsx("label",{className:"text-xs font-medium text-[var(--color-text-muted)]",children:"Journey:"}),e.jsx("select",{value:l??"",onChange:n=>o(n.target.value),className:"text-sm bg-[var(--color-bg)] border border-[var(--color-border)] rounded px-2 py-1 flex-1",children:t.map(n=>e.jsx("option",{value:n.id,children:n.name},n.id))}),e.jsx("button",{onClick:s,className:"text-xs px-2 py-1 rounded bg-[var(--color-bg-tertiary)] hover:bg-[var(--color-border)] text-[var(--color-text-muted)]",children:"+ Import"})]})}function U({variants:t,activeVariant:l,onSelect:o}){return t.length===0?null:e.jsxs("div",{className:"flex items-center gap-2 p-2 border-b border-[var(--color-border)]",children:[e.jsx("label",{className:"text-xs font-medium text-[var(--color-text-muted)]",children:"Variant:"}),e.jsx("button",{onClick:()=>o(null),className:`text-xs px-2 py-1 rounded ${l===null?"bg-[var(--color-accent)] text-white":"bg-[var(--color-bg-tertiary)] text-[var(--color-text-muted)]"}`,children:"All"}),t.map(s=>e.jsx("button",{onClick:()=>o(s.id),className:`text-xs px-2 py-1 rounded ${l===s.id?"bg-[var(--color-accent)] text-white":"bg-[var(--color-bg-tertiary)] text-[var(--color-text-muted)]"}`,title:s.description,children:s.name},s.id))]})}function _({open:t,onClose:l,onImported:o}){const[s,a]=c.useState(""),[n,h]=c.useState(null),[v,x]=c.useState(!1);if(!t)return null;const N=async()=>{h(null),x(!0);try{const i=JSON.parse(s);await k.importJourneyMap(i),o(),l(),a("")}catch(i){h(i instanceof Error?i.message:"Import failed")}finally{x(!1)}},j=i=>{var m;const r=(m=i.target.files)==null?void 0:m[0];if(!r)return;const d=new FileReader;d.onload=()=>a(d.result),d.readAsText(r)};return e.jsx("div",{className:"fixed inset-0 z-50 flex items-center justify-center bg-black/50",children:e.jsxs("div",{className:"bg-[var(--color-bg)] rounded-lg shadow-xl w-full max-w-lg p-6 max-h-[80vh] overflow-y-auto",children:[e.jsx("h2",{className:"text-lg font-semibold mb-4",children:"Import Journey Map"}),e.jsxs("div",{className:"mb-3",children:[e.jsx("label",{className:"block text-sm font-medium mb-1",children:"Upload JSON file"}),e.jsx("input",{type:"file",accept:".json",onChange:j,className:"text-sm"})]}),e.jsxs("div",{className:"mb-3",children:[e.jsx("label",{className:"block text-sm font-medium mb-1",children:"Or paste JSON"}),e.jsx("textarea",{value:s,onChange:i=>a(i.target.value),rows:10,className:"w-full text-xs font-mono bg-[var(--color-bg-secondary)] border border-[var(--color-border)] rounded p-2",placeholder:'{"journey": {"name": "..."}, "screens": [...], "edges": [...]}'})]}),n&&e.jsx("div",{className:"text-sm text-[var(--color-danger)] mb-3",children:n}),e.jsxs("div",{className:"flex justify-end gap-2",children:[e.jsx("button",{onClick:l,className:"px-3 py-1.5 text-sm rounded-lg border border-[var(--color-border)] hover:bg-[var(--color-bg-secondary)]",children:"Cancel"}),e.jsx("button",{onClick:N,disabled:!s.trim()||v,className:"px-3 py-1.5 text-sm rounded-lg bg-[var(--color-accent)] text-white hover:opacity-90 disabled:opacity-50",children:v?"Importing...":"Import"})]})]})})}const q={hideAttribution:!0};function ee(){const[t,l]=c.useState([]),[o,s]=c.useState(null),[a,n]=c.useState(null),[h,v]=c.useState(null),[x,N]=c.useState(null),[j,i]=c.useState(!1),[r,d]=c.useState(!0),[m,b,y]=F([]),[u,C,A]=P([]),S=c.useCallback(async()=>{try{const p=await k.getJourneyMaps();l(p.maps),p.maps.length>0&&!o&&s(p.maps[0].id)}catch{l([])}finally{d(!1)}},[o]),E=c.useCallback(async p=>{try{const f=await k.getJourneyMap(p);n(f)}catch{n(null)}},[]);c.useEffect(()=>{S()},[S]),c.useEffect(()=>{o&&E(o)},[o,E]);const w=c.useMemo(()=>{if(!a)return null;if(!x)return a;const p=a.variants.find(g=>g.id===x);if(!p)return a;const f=new Set(p.path);return{...a,screens:a.screens.filter(g=>f.has(g.id)),edges:a.edges.filter(g=>f.has(g.from)&&f.has(g.to))}},[a,x]);c.useEffect(()=>{if(!w){b([]),C([]);return}const f=B(w.screens,w.edges).map(g=>({...g,data:{...g.data,onSelect:v}}));b(f),C(G(w.edges))},[w,b,C]);const I=c.useCallback(()=>{d(!0),S()},[S]);return r||t.length===0?e.jsxs(e.Fragment,{children:[e.jsx(T,{maps:t,selectedId:o,onSelect:s,onImport:()=>i(!0),loading:r}),e.jsx(_,{open:j,onClose:()=>i(!1),onImported:I})]}):e.jsxs("div",{className:"h-full flex flex-col",children:[e.jsx(T,{maps:t,selectedId:o,onSelect:s,onImport:()=>i(!0),loading:!1}),a&&e.jsx(U,{variants:a.variants,activeVariant:x,onSelect:N}),e.jsxs("div",{className:"flex-1 flex min-h-0",children:[e.jsx("div",{className:"flex-1",children:e.jsxs(H,{nodes:m,edges:u,onNodesChange:y,onEdgesChange:A,nodeTypes:Y,proOptions:q,fitView:!0,minZoom:.1,maxZoom:3,defaultViewport:{x:0,y:0,zoom:.7},children:[e.jsx(z,{color:"var(--color-border)",gap:20}),e.jsx(L,{position:"bottom-left"}),e.jsx(R,{nodeColor:p=>{const f=p.data;return M[f.screen.screenType]??"#757575"},maskColor:"rgba(0,0,0,0.1)",position:"bottom-right"})]})}),h&&e.jsx($,{screen:h,onClose:()=>v(null)})]}),e.jsx(_,{open:j,onClose:()=>i(!1),onImported:I})]})}export{ee as JourneyTab};
|
|
1
|
+
import{r as c,a as k,j as e}from"./index-DtkPX5ZZ.js";import{u as F,a as P,i as H,B as z,C as L,M as R,H as J,P as O}from"./style-Da3qWU01.js";import"./index-F9dY4AG_.js";const M={landing:"#2196f3",form:"#ff9800",selection:"#4caf50",listing:"#9c27b0",comparison:"#e91e63",detail:"#00bcd4",map:"#009688",calculator:"#ffc107",confirmation:"#3f51b5",success:"#4caf50",dashboard:"#607d8b",page:"#757575"},V={navigation:"#6c757d",form_submit:"#2196f3",redirect:"#ff9800",back:"#9e9e9e"},D=280,W=220,X=c.memo(function({data:l}){const{screen:o,screenshotUrl:s,onSelect:a}=l,n=M[o.screenType]??"#757575";return e.jsxs(e.Fragment,{children:[e.jsx(J,{type:"target",position:O.Top,className:"!w-2 !h-2"}),e.jsxs("div",{className:"bg-[var(--color-bg)] border-2 rounded-lg shadow-md hover:shadow-lg transition-shadow cursor-pointer overflow-hidden",style:{borderColor:n,width:D},onClick:()=>a(o),children:[e.jsxs("div",{className:"relative w-full bg-[var(--color-bg-tertiary)]",style:{height:140},children:[s?e.jsx("img",{src:s,alt:o.title,className:"w-full h-full object-cover",loading:"lazy"}):e.jsx("div",{className:"flex items-center justify-center h-full text-[var(--color-text-muted)] text-xs",children:"No screenshot"}),e.jsx("span",{className:"absolute top-1.5 left-1.5 text-[9px] font-bold uppercase px-1.5 py-0.5 rounded text-white",style:{background:n},children:o.screenType})]}),e.jsxs("div",{className:"p-2",children:[e.jsx("div",{className:"text-sm font-semibold leading-tight line-clamp-1",children:o.title}),o.url&&e.jsx("div",{className:"text-[10px] text-[var(--color-text-muted)] truncate mt-0.5",children:o.url}),e.jsxs("div",{className:"flex items-center gap-2 mt-1",children:[o.fields&&o.fields.length>0&&e.jsxs("span",{className:"text-[9px] px-1 py-0.5 rounded bg-[var(--color-bg-tertiary)] text-[var(--color-text-muted)]",children:[o.fields.length," fields"]}),o.ctas&&o.ctas.length>0&&e.jsxs("span",{className:"text-[9px] px-1 py-0.5 rounded bg-[var(--color-bg-tertiary)] text-[var(--color-text-muted)]",children:[o.ctas.length," CTAs"]})]})]})]}),e.jsx(J,{type:"source",position:O.Bottom,className:"!w-2 !h-2"})]})}),Y={journeyScreen:X};function B(t,l){var i;const o=new Map,s=new Map;for(const r of t)o.set(r.id,[]),s.set(r.id,0);for(const r of l)(i=o.get(r.from))==null||i.push(r.to),s.set(r.to,(s.get(r.to)??0)+1);const a=[],n=[],h=new Set;for(const r of t)(s.get(r.id)??0)===0&&n.push(r.id);for(;n.length>0;){const r=[...n];a.push(r),n.length=0;for(const d of r){h.add(d);for(const m of o.get(d)??[])if(!h.has(m)){const b=(s.get(m)??1)-1;s.set(m,b),b<=0&&!h.has(m)&&n.push(m)}}}for(const r of t)h.has(r.id)||(a.length===0&&a.push([]),a[a.length-1].push(r.id));const v=new Map(t.map(r=>[r.id,r])),x=D+60,N=W+80,j=[];for(let r=0;r<a.length;r++){const d=a[r],b=-(d.length*x)/2+x/2;for(let y=0;y<d.length;y++){const u=v.get(d[y]);u&&j.push({id:u.id,type:"journeyScreen",position:{x:u.positionX!==0?u.positionX:b+y*x,y:u.positionY!==0?u.positionY:r*N},data:{screen:u,screenshotUrl:u.screenshot?`/api/v1/journey/screenshots/_/${u.screenshot}`:void 0,onSelect:()=>{}}})}}return j}function G(t){return t.map(l=>({id:l.id,source:l.from,target:l.to,label:l.label??"",type:"smoothstep",animated:l.type==="form_submit",style:{stroke:V[l.type]??"#6c757d",strokeWidth:2},labelStyle:{fontSize:10,fill:"var(--color-text-muted)"},labelBgStyle:{fill:"var(--color-bg)",fillOpacity:.8}}))}function $({screen:t,onClose:l}){const o=M[t.screenType]??"#757575";return e.jsxs("div",{className:"w-80 h-full border-l border-[var(--color-border)] bg-[var(--color-bg)] overflow-y-auto p-4 flex flex-col gap-3",children:[e.jsxs("div",{className:"flex items-center justify-between",children:[e.jsx("span",{className:"text-xs font-bold uppercase px-2 py-0.5 rounded text-white",style:{background:o},children:t.screenType}),e.jsx("button",{onClick:l,className:"text-[var(--color-text-muted)] hover:text-[var(--color-text)]",children:"X"})]}),e.jsx("h3",{className:"text-lg font-semibold",children:t.title}),t.url&&e.jsx("div",{className:"text-xs text-[var(--color-text-muted)] break-all",children:t.url}),t.description&&e.jsx("p",{className:"text-sm text-[var(--color-text-muted)]",children:t.description}),t.screenshot&&e.jsx("div",{className:"rounded-lg overflow-hidden border border-[var(--color-border)]",children:e.jsx("img",{src:`/api/v1/journey/screenshots/_/${t.screenshot}`,alt:t.title,className:"w-full"})}),t.fields&&t.fields.length>0&&e.jsxs("div",{children:[e.jsxs("h4",{className:"text-xs font-semibold uppercase text-[var(--color-text-muted)] mb-1.5",children:["Form Fields (",t.fields.length,")"]}),e.jsx("div",{className:"space-y-1.5",children:t.fields.map(s=>e.jsxs("div",{className:"flex items-center gap-2 text-sm bg-[var(--color-bg-secondary)] rounded px-2 py-1",children:[e.jsx("span",{className:"font-mono text-xs text-[var(--color-accent)]",children:s.type}),e.jsx("span",{children:s.label??s.name}),s.required&&e.jsx("span",{className:"text-[9px] text-red-400 font-bold",children:"*"})]},s.name))})]}),t.ctas&&t.ctas.length>0&&e.jsxs("div",{children:[e.jsxs("h4",{className:"text-xs font-semibold uppercase text-[var(--color-text-muted)] mb-1.5",children:["CTAs (",t.ctas.length,")"]}),e.jsx("div",{className:"flex flex-wrap gap-1",children:t.ctas.map(s=>e.jsx("span",{className:"text-xs px-2 py-0.5 rounded-full bg-[var(--color-accent)] text-white",children:s},s))})]}),t.metadata&&Object.keys(t.metadata).length>0&&e.jsxs("div",{children:[e.jsx("h4",{className:"text-xs font-semibold uppercase text-[var(--color-text-muted)] mb-1.5",children:"Metadata"}),e.jsx("pre",{className:"text-[10px] bg-[var(--color-bg-secondary)] rounded p-2 overflow-x-auto",children:JSON.stringify(t.metadata,null,2)})]})]})}function T({maps:t,selectedId:l,onSelect:o,onImport:s,loading:a}){return a?e.jsx("div",{className:"flex items-center justify-center h-full text-[var(--color-text-muted)]",children:"Loading journey maps..."}):t.length===0?e.jsxs("div",{className:"flex flex-col items-center justify-center h-full gap-4 text-[var(--color-text-muted)]",children:[e.jsx("div",{className:"text-5xl",children:"🗺"}),e.jsx("p",{className:"text-sm font-medium",children:"No journey maps yet"}),e.jsx("p",{className:"text-xs text-center max-w-xs",children:"Import a journey map JSON file or capture website screens to create a journey flow visualization."}),e.jsx("button",{onClick:s,className:"px-4 py-2 rounded-lg bg-[var(--color-accent)] text-white text-sm hover:opacity-90 transition-opacity",children:"Import Journey Map"})]}):e.jsxs("div",{className:"flex items-center gap-2 p-2 border-b border-[var(--color-border)] bg-[var(--color-bg-secondary)]",children:[e.jsx("label",{className:"text-xs font-medium text-[var(--color-text-muted)]",children:"Journey:"}),e.jsx("select",{value:l??"",onChange:n=>o(n.target.value),className:"text-sm bg-[var(--color-bg)] border border-[var(--color-border)] rounded px-2 py-1 flex-1",children:t.map(n=>e.jsx("option",{value:n.id,children:n.name},n.id))}),e.jsx("button",{onClick:s,className:"text-xs px-2 py-1 rounded bg-[var(--color-bg-tertiary)] hover:bg-[var(--color-border)] text-[var(--color-text-muted)]",children:"+ Import"})]})}function U({variants:t,activeVariant:l,onSelect:o}){return t.length===0?null:e.jsxs("div",{className:"flex items-center gap-2 p-2 border-b border-[var(--color-border)]",children:[e.jsx("label",{className:"text-xs font-medium text-[var(--color-text-muted)]",children:"Variant:"}),e.jsx("button",{onClick:()=>o(null),className:`text-xs px-2 py-1 rounded ${l===null?"bg-[var(--color-accent)] text-white":"bg-[var(--color-bg-tertiary)] text-[var(--color-text-muted)]"}`,children:"All"}),t.map(s=>e.jsx("button",{onClick:()=>o(s.id),className:`text-xs px-2 py-1 rounded ${l===s.id?"bg-[var(--color-accent)] text-white":"bg-[var(--color-bg-tertiary)] text-[var(--color-text-muted)]"}`,title:s.description,children:s.name},s.id))]})}function _({open:t,onClose:l,onImported:o}){const[s,a]=c.useState(""),[n,h]=c.useState(null),[v,x]=c.useState(!1);if(!t)return null;const N=async()=>{h(null),x(!0);try{const i=JSON.parse(s);await k.importJourneyMap(i),o(),l(),a("")}catch(i){h(i instanceof Error?i.message:"Import failed")}finally{x(!1)}},j=i=>{var m;const r=(m=i.target.files)==null?void 0:m[0];if(!r)return;const d=new FileReader;d.onload=()=>a(d.result),d.readAsText(r)};return e.jsx("div",{className:"fixed inset-0 z-50 flex items-center justify-center bg-black/50",children:e.jsxs("div",{className:"bg-[var(--color-bg)] rounded-lg shadow-xl w-full max-w-lg p-6 max-h-[80vh] overflow-y-auto",children:[e.jsx("h2",{className:"text-lg font-semibold mb-4",children:"Import Journey Map"}),e.jsxs("div",{className:"mb-3",children:[e.jsx("label",{className:"block text-sm font-medium mb-1",children:"Upload JSON file"}),e.jsx("input",{type:"file",accept:".json",onChange:j,className:"text-sm"})]}),e.jsxs("div",{className:"mb-3",children:[e.jsx("label",{className:"block text-sm font-medium mb-1",children:"Or paste JSON"}),e.jsx("textarea",{value:s,onChange:i=>a(i.target.value),rows:10,className:"w-full text-xs font-mono bg-[var(--color-bg-secondary)] border border-[var(--color-border)] rounded p-2",placeholder:'{"journey": {"name": "..."}, "screens": [...], "edges": [...]}'})]}),n&&e.jsx("div",{className:"text-sm text-[var(--color-danger)] mb-3",children:n}),e.jsxs("div",{className:"flex justify-end gap-2",children:[e.jsx("button",{onClick:l,className:"px-3 py-1.5 text-sm rounded-lg border border-[var(--color-border)] hover:bg-[var(--color-bg-secondary)]",children:"Cancel"}),e.jsx("button",{onClick:N,disabled:!s.trim()||v,className:"px-3 py-1.5 text-sm rounded-lg bg-[var(--color-accent)] text-white hover:opacity-90 disabled:opacity-50",children:v?"Importing...":"Import"})]})]})})}const q={hideAttribution:!0};function ee(){const[t,l]=c.useState([]),[o,s]=c.useState(null),[a,n]=c.useState(null),[h,v]=c.useState(null),[x,N]=c.useState(null),[j,i]=c.useState(!1),[r,d]=c.useState(!0),[m,b,y]=F([]),[u,C,A]=P([]),S=c.useCallback(async()=>{try{const p=await k.getJourneyMaps();l(p.maps),p.maps.length>0&&!o&&s(p.maps[0].id)}catch{l([])}finally{d(!1)}},[o]),E=c.useCallback(async p=>{try{const f=await k.getJourneyMap(p);n(f)}catch{n(null)}},[]);c.useEffect(()=>{S()},[S]),c.useEffect(()=>{o&&E(o)},[o,E]);const w=c.useMemo(()=>{if(!a)return null;if(!x)return a;const p=a.variants.find(g=>g.id===x);if(!p)return a;const f=new Set(p.path);return{...a,screens:a.screens.filter(g=>f.has(g.id)),edges:a.edges.filter(g=>f.has(g.from)&&f.has(g.to))}},[a,x]);c.useEffect(()=>{if(!w){b([]),C([]);return}const f=B(w.screens,w.edges).map(g=>({...g,data:{...g.data,onSelect:v}}));b(f),C(G(w.edges))},[w,b,C]);const I=c.useCallback(()=>{d(!0),S()},[S]);return r||t.length===0?e.jsxs(e.Fragment,{children:[e.jsx(T,{maps:t,selectedId:o,onSelect:s,onImport:()=>i(!0),loading:r}),e.jsx(_,{open:j,onClose:()=>i(!1),onImported:I})]}):e.jsxs("div",{className:"h-full flex flex-col",children:[e.jsx(T,{maps:t,selectedId:o,onSelect:s,onImport:()=>i(!0),loading:!1}),a&&e.jsx(U,{variants:a.variants,activeVariant:x,onSelect:N}),e.jsxs("div",{className:"flex-1 flex min-h-0",children:[e.jsx("div",{className:"flex-1",children:e.jsxs(H,{nodes:m,edges:u,onNodesChange:y,onEdgesChange:A,nodeTypes:Y,proOptions:q,fitView:!0,minZoom:.1,maxZoom:3,defaultViewport:{x:0,y:0,zoom:.7},children:[e.jsx(z,{color:"var(--color-border)",gap:20}),e.jsx(L,{position:"bottom-left"}),e.jsx(R,{nodeColor:p=>{const f=p.data;return M[f.screen.screenType]??"#757575"},maskColor:"rgba(0,0,0,0.1)",position:"bottom-right"})]})}),h&&e.jsx($,{screen:h,onClose:()=>v(null)})]}),e.jsx(_,{open:j,onClose:()=>i(!1),onImported:I})]})}export{ee as JourneyTab};
|