@object-ui/runner 0.3.0 → 0.3.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +13 -0
- package/README.md +155 -0
- package/dist/assets/AdvancedChartImpl-CBiVuUeV.js +7 -0
- package/dist/assets/BarChart-CegIWQbY.js +60 -0
- package/dist/assets/ChartImpl-8nTiicYj.js +1 -0
- package/dist/assets/{KanbanImpl-APLTSaom.js → KanbanImpl-BRB-4EEl.js} +1 -1
- package/dist/assets/index-Czlaw_Lh.js +8528 -0
- package/dist/assets/index-DOEBIU-6.css +1 -0
- package/dist/index.html +2 -2
- package/package.json +23 -12
- package/postcss.config.js +9 -1
- package/src/App.tsx +8 -0
- package/src/LayoutRenderer.tsx +8 -0
- package/src/index.css +90 -55
- package/src/lib/MetadataLoader.ts +8 -0
- package/src/lib/mockDataSource.ts +22 -0
- package/src/main.tsx +8 -0
- package/src/plugin-integration.test.ts +64 -0
- package/vite.config.ts +8 -0
- package/dist/assets/AdvancedChartImpl-DZ0-Siqu.js +0 -11
- package/dist/assets/BarChart-C_mJtBYc.js +0 -69
- package/dist/assets/ChartImpl-BcbiBEtK.js +0 -1
- package/dist/assets/index-BAf0tooB.css +0 -1
- package/dist/assets/index-CW0j9o4j.js +0 -16235
- package/tailwind.config.js +0 -63
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,18 @@
|
|
|
1
1
|
# @object-ui/runner
|
|
2
2
|
|
|
3
|
+
## 0.3.1
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- Maintenance release - Documentation and build improvements
|
|
8
|
+
- Updated dependencies
|
|
9
|
+
- @object-ui/types@0.3.1
|
|
10
|
+
- @object-ui/core@0.3.1
|
|
11
|
+
- @object-ui/react@0.3.1
|
|
12
|
+
- @object-ui/components@0.3.1
|
|
13
|
+
- @object-ui/plugin-kanban@0.3.1
|
|
14
|
+
- @object-ui/plugin-charts@0.3.1
|
|
15
|
+
|
|
3
16
|
## 0.3.0
|
|
4
17
|
|
|
5
18
|
### Minor Changes
|
package/README.md
ADDED
|
@@ -0,0 +1,155 @@
|
|
|
1
|
+
# @object-ui/runner
|
|
2
|
+
|
|
3
|
+
Universal Object UI Application Runner - A standalone development server and runtime for testing Object UI schemas.
|
|
4
|
+
|
|
5
|
+
## Features
|
|
6
|
+
|
|
7
|
+
- **Schema Development** - Test and debug Object UI schemas in isolation
|
|
8
|
+
- **Hot Reload** - Automatic reload on schema changes
|
|
9
|
+
- **Plugin Support** - Pre-configured with popular plugins (Kanban, Charts, etc.)
|
|
10
|
+
- **Development Ready** - Built-in Vite development server
|
|
11
|
+
- **Production Build** - Optimized build for deployment
|
|
12
|
+
|
|
13
|
+
## Installation
|
|
14
|
+
|
|
15
|
+
```bash
|
|
16
|
+
pnpm add @object-ui/runner
|
|
17
|
+
```
|
|
18
|
+
|
|
19
|
+
## Usage
|
|
20
|
+
|
|
21
|
+
### As a Development Tool
|
|
22
|
+
|
|
23
|
+
The runner is primarily used for schema development and testing:
|
|
24
|
+
|
|
25
|
+
```bash
|
|
26
|
+
# Start development server
|
|
27
|
+
pnpm dev
|
|
28
|
+
|
|
29
|
+
# Build for production
|
|
30
|
+
pnpm build
|
|
31
|
+
|
|
32
|
+
# Preview production build
|
|
33
|
+
pnpm preview
|
|
34
|
+
```
|
|
35
|
+
|
|
36
|
+
### Programmatic Usage
|
|
37
|
+
|
|
38
|
+
You can also use the runner as a library in your projects:
|
|
39
|
+
|
|
40
|
+
```typescript
|
|
41
|
+
import { createRunner } from '@object-ui/runner';
|
|
42
|
+
|
|
43
|
+
const runner = createRunner({
|
|
44
|
+
schema: mySchema,
|
|
45
|
+
plugins: ['kanban', 'charts'],
|
|
46
|
+
theme: 'light'
|
|
47
|
+
});
|
|
48
|
+
|
|
49
|
+
runner.mount('#app');
|
|
50
|
+
```
|
|
51
|
+
|
|
52
|
+
## Pre-installed Plugins
|
|
53
|
+
|
|
54
|
+
The runner comes with these plugins pre-configured:
|
|
55
|
+
|
|
56
|
+
- **@object-ui/plugin-kanban** - Kanban board components
|
|
57
|
+
- **@object-ui/plugin-charts** - Chart visualization components
|
|
58
|
+
- **Additional plugins can be added as needed**
|
|
59
|
+
|
|
60
|
+
## Schema Loading
|
|
61
|
+
|
|
62
|
+
The runner can load schemas from various sources:
|
|
63
|
+
|
|
64
|
+
```typescript
|
|
65
|
+
// From JSON file
|
|
66
|
+
const schema = await import('./my-schema.json');
|
|
67
|
+
|
|
68
|
+
// From JavaScript/TypeScript
|
|
69
|
+
const schema = {
|
|
70
|
+
type: 'page',
|
|
71
|
+
title: 'My App',
|
|
72
|
+
body: {
|
|
73
|
+
type: 'card',
|
|
74
|
+
content: 'Hello World'
|
|
75
|
+
}
|
|
76
|
+
};
|
|
77
|
+
|
|
78
|
+
// From API endpoint
|
|
79
|
+
const schema = await fetch('/api/schema').then(r => r.json());
|
|
80
|
+
```
|
|
81
|
+
|
|
82
|
+
## Configuration
|
|
83
|
+
|
|
84
|
+
Create a `runner.config.js` file to customize the runner:
|
|
85
|
+
|
|
86
|
+
```javascript
|
|
87
|
+
export default {
|
|
88
|
+
port: 3000,
|
|
89
|
+
host: 'localhost',
|
|
90
|
+
plugins: ['kanban', 'charts'],
|
|
91
|
+
theme: {
|
|
92
|
+
primaryColor: '#3b82f6',
|
|
93
|
+
darkMode: true
|
|
94
|
+
}
|
|
95
|
+
};
|
|
96
|
+
```
|
|
97
|
+
|
|
98
|
+
## Development Workflow
|
|
99
|
+
|
|
100
|
+
1. Create a schema file (JSON or TypeScript)
|
|
101
|
+
2. Start the runner with `pnpm dev`
|
|
102
|
+
3. Edit the schema - changes reload automatically
|
|
103
|
+
4. Test your UI in the browser
|
|
104
|
+
5. Build for production with `pnpm build`
|
|
105
|
+
|
|
106
|
+
## Example Schema
|
|
107
|
+
|
|
108
|
+
```json
|
|
109
|
+
{
|
|
110
|
+
"type": "page",
|
|
111
|
+
"title": "Dashboard",
|
|
112
|
+
"body": {
|
|
113
|
+
"type": "grid",
|
|
114
|
+
"columns": 3,
|
|
115
|
+
"gap": 4,
|
|
116
|
+
"children": [
|
|
117
|
+
{
|
|
118
|
+
"type": "card",
|
|
119
|
+
"title": "Total Users",
|
|
120
|
+
"body": {
|
|
121
|
+
"type": "statistic",
|
|
122
|
+
"value": 1234,
|
|
123
|
+
"trend": "up"
|
|
124
|
+
}
|
|
125
|
+
},
|
|
126
|
+
{
|
|
127
|
+
"type": "card",
|
|
128
|
+
"title": "Revenue",
|
|
129
|
+
"body": {
|
|
130
|
+
"type": "statistic",
|
|
131
|
+
"value": "$56,789",
|
|
132
|
+
"trend": "up"
|
|
133
|
+
}
|
|
134
|
+
},
|
|
135
|
+
{
|
|
136
|
+
"type": "card",
|
|
137
|
+
"title": "Orders",
|
|
138
|
+
"body": {
|
|
139
|
+
"type": "statistic",
|
|
140
|
+
"value": 432,
|
|
141
|
+
"trend": "down"
|
|
142
|
+
}
|
|
143
|
+
}
|
|
144
|
+
]
|
|
145
|
+
}
|
|
146
|
+
}
|
|
147
|
+
```
|
|
148
|
+
|
|
149
|
+
## API Reference
|
|
150
|
+
|
|
151
|
+
For detailed documentation, visit the [Object UI Documentation](https://www.objectui.org/docs/runner).
|
|
152
|
+
|
|
153
|
+
## License
|
|
154
|
+
|
|
155
|
+
MIT
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import{f as X,r as l,j as A}from"./index-Czlaw_Lh.js";import{v as M,w as dt,x as Q,y as S,z as ie,A as aa,D as ra,E as U,F as na,G as ia,H as pt,I as la,J as oa,K as $,M as sa,N as ca,O as ua,P as da,Q as Y,S as pa,U as va,V as fa,W as ma,Y as vt,Z as ha,_ as ya,$ as ga,a0 as ee,a1 as ba,r as H,a2 as Ce,a3 as xa,a4 as te,a5 as ft,h as F,a6 as Pa,a7 as K,a8 as ae,a9 as Se,aa as ke,ab as Le,ac as Ne,ad as Aa,ae as R,af as oe,ag as Ie,ah as Ea,ai as mt,aj as Ia,ak as Oa,al as ja,am as wa,an as Da,ao as Ca,ap as Sa,aq as ka,ar as ht,as as Te,at as La,au as re,av as ce,aw as se,ax as Na,ay as Ta,az as _e,aA as _a,aB as Ra,aC as ue,aD as he,aE as ye,aF as Ka,aG as yt,aH as Re,aI as de,aJ as gt,j as ge,aK as bt,aL as xt,aM as Pt,aN as At,aO as Et,aP as It,aQ as Ot,aR as $a,aS as pe,aT as jt,aU as wt,aV as Wa,aW as Ma,aX as Ke,aY as $e,aZ as Ba,a_ as za,a$ as Fa,b0 as Va,b as Ga,b1 as Xa,b2 as ve,b3 as Ua,b4 as Dt,b5 as We,u as Ya,b6 as Ha,b7 as qa,b8 as Za,b9 as Ja,ba as Qa,bb as er,T as tr,L as ar,R as rr,B as Ge,q as nr,X as ir,t as lr}from"./BarChart-CegIWQbY.js";function Oe(){return Oe=Object.assign?Object.assign.bind():function(t){for(var e=1;e<arguments.length;e++){var a=arguments[e];for(var r in a)({}).hasOwnProperty.call(a,r)&&(t[r]=a[r])}return t},Oe.apply(null,arguments)}var Ct=t=>{var{cx:e,cy:a,r,className:n}=t,i=X("recharts-dot",n);return M(e)&&M(a)&&M(r)?l.createElement("circle",Oe({},Q(t),dt(t),{className:i,cx:e,cy:a,r})):null},St=t=>t.graphicalItems.polarItems,or=S([ie,aa],ra),be=S([St,U,or],na),sr=S([be],ia),xe=S([sr,pt],la),cr=S([xe,U,be],oa);S([xe,U,be],(t,e,a)=>a.length>0?t.flatMap(r=>a.flatMap(n=>{var i,s=$(r,(i=e.dataKey)!==null&&i!==void 0?i:n.dataKey);return{value:s,errorDomain:[]}})).filter(Boolean):(e==null?void 0:e.dataKey)!=null?t.map(r=>({value:$(r,e.dataKey),errorDomain:[]})):t.map(r=>({value:r,errorDomain:[]})));var Xe=()=>{},ur=S([xe,U,be,sa,ie],ca),dr=S([U,ua,da,Xe,ur,Xe,Y,ie],pa),kt=S([U,Y,xe,cr,va,ie,dr],fa),pr=S([kt,ma,vt],ha),vr=S([U,kt,pr,ie],ya);S([vt,vr],ga);function Ue(t,e){var a=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter(function(n){return Object.getOwnPropertyDescriptor(t,n).enumerable})),a.push.apply(a,r)}return a}function Ye(t){for(var e=1;e<arguments.length;e++){var a=arguments[e]!=null?arguments[e]:{};e%2?Ue(Object(a),!0).forEach(function(r){fr(t,r,a[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(a)):Ue(Object(a)).forEach(function(r){Object.defineProperty(t,r,Object.getOwnPropertyDescriptor(a,r))})}return t}function fr(t,e,a){return(e=mr(e))in t?Object.defineProperty(t,e,{value:a,enumerable:!0,configurable:!0,writable:!0}):t[e]=a,t}function mr(t){var e=hr(t,"string");return typeof e=="symbol"?e:e+""}function hr(t,e){if(typeof t!="object"||!t)return t;var a=t[Symbol.toPrimitive];if(a!==void 0){var r=a.call(t,e);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(t)}var yr=(t,e)=>e,Me=S([St,yr],(t,e)=>t.filter(a=>a.type==="pie").find(a=>a.id===e)),gr=[],Be=(t,e,a)=>(a==null?void 0:a.length)===0?gr:a,Lt=S([pt,Me,Be],(t,e,a)=>{var{chartData:r}=t;if(e!=null){var n;if((e==null?void 0:e.data)!=null&&e.data.length>0?n=e.data:n=r,(!n||!n.length)&&a!=null&&(n=a.map(i=>Ye(Ye({},e.presentationProps),i.props))),n!=null)return n}}),br=S([Lt,Me,Be],(t,e,a)=>{if(!(t==null||e==null))return t.map((r,n)=>{var i,s=$(r,e.nameKey,e.name),o;return a!=null&&(i=a[n])!==null&&i!==void 0&&(i=i.props)!==null&&i!==void 0&&i.fill?o=a[n].props.fill:typeof r=="object"&&r!=null&&"fill"in r?o=r.fill:o=e.fill,{value:ee(s,e.dataKey),color:o,payload:r,type:e.legendType}})}),xr=S([Lt,Me,Be,ba],(t,e,a,r)=>{if(!(e==null||t==null))return Mr({offset:r,pieSettings:e,displayedData:t,cells:a})}),Pr=["key"],Ar=["onMouseEnter","onClick","onMouseLeave"],Er=["id"],Ir=["id"];function He(t,e){var a=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter(function(n){return Object.getOwnPropertyDescriptor(t,n).enumerable})),a.push.apply(a,r)}return a}function L(t){for(var e=1;e<arguments.length;e++){var a=arguments[e]!=null?arguments[e]:{};e%2?He(Object(a),!0).forEach(function(r){Or(t,r,a[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(a)):He(Object(a)).forEach(function(r){Object.defineProperty(t,r,Object.getOwnPropertyDescriptor(a,r))})}return t}function Or(t,e,a){return(e=jr(e))in t?Object.defineProperty(t,e,{value:a,enumerable:!0,configurable:!0,writable:!0}):t[e]=a,t}function jr(t){var e=wr(t,"string");return typeof e=="symbol"?e:e+""}function wr(t,e){if(typeof t!="object"||!t)return t;var a=t[Symbol.toPrimitive];if(a!==void 0){var r=a.call(t,e);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(t)}function V(){return V=Object.assign?Object.assign.bind():function(t){for(var e=1;e<arguments.length;e++){var a=arguments[e];for(var r in a)({}).hasOwnProperty.call(a,r)&&(t[r]=a[r])}return t},V.apply(null,arguments)}function Pe(t,e){if(t==null)return{};var a,r,n=Dr(t,e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(t);for(r=0;r<i.length;r++)a=i[r],e.indexOf(a)===-1&&{}.propertyIsEnumerable.call(t,a)&&(n[a]=t[a])}return n}function Dr(t,e){if(t==null)return{};var a={};for(var r in t)if({}.hasOwnProperty.call(t,r)){if(e.indexOf(r)!==-1)continue;a[r]=t[r]}return a}function Cr(t){var e=l.useMemo(()=>ft(t.children,Se),[t.children]),a=F(r=>br(r,t.id,e));return a==null?null:l.createElement(Pa,{legendPayload:a})}var Sr=l.memo(t=>{var{dataKey:e,nameKey:a,sectors:r,stroke:n,strokeWidth:i,fill:s,name:o,hide:c,tooltipType:u,id:d}=t,v={dataDefinedOnItem:r.map(p=>p.tooltipPayload),getPosition:p=>{var f;return(f=r[Number(p)])===null||f===void 0?void 0:f.tooltipPosition},settings:{stroke:n,strokeWidth:i,fill:s,dataKey:e,nameKey:a,name:ee(o,e),hide:c,type:u,color:s,unit:"",graphicalItemId:d}};return l.createElement(ke,{tooltipEntrySettings:v})}),kr=(t,e)=>t>e?"start":t<e?"end":"middle",Lr=(t,e,a)=>typeof e=="function"?re(e(t),a,a*.8):re(e,a,a*.8),Nr=(t,e,a)=>{var{top:r,left:n,width:i,height:s}=e,o=La(i,s),c=n+re(t.cx,i,i/2),u=r+re(t.cy,s,s/2),d=re(t.innerRadius,o,0),v=Lr(a,t.outerRadius,o),p=t.maxRadius||Math.sqrt(i*i+s*s)/2;return{cx:c,cy:u,innerRadius:d,outerRadius:v,maxRadius:p}},Tr=(t,e)=>{var a=oe(e-t),r=Math.min(Math.abs(e-t),360);return a*r},_r=(t,e)=>{if(l.isValidElement(t))return l.cloneElement(t,e);if(typeof t=="function")return t(e);var a=X("recharts-pie-label-line",typeof t!="boolean"?t.className:""),{key:r}=e,n=Pe(e,Pr);return l.createElement(se,V({},n,{type:"linear",className:a}))},Rr=(t,e,a)=>{if(l.isValidElement(t))return l.cloneElement(t,e);var r=a;if(typeof t=="function"&&(r=t(e),l.isValidElement(r)))return r;var n=X("recharts-pie-label-text",Na(t));return l.createElement(Ta,V({},e,{alignmentBaseline:"middle",className:n}),r)};function Kr(t){var{sectors:e,props:a,showLabels:r}=t,{label:n,labelLine:i,dataKey:s}=a;if(!r||!n||!e)return null;var o=Q(a),c=ce(n),u=ce(i),d=typeof n=="object"&&"offsetRadius"in n&&typeof n.offsetRadius=="number"&&n.offsetRadius||20,v=e.map((p,f)=>{var y=(p.startAngle+p.endAngle)/2,g=Ie(p.cx,p.cy,p.outerRadius+d,y),m=L(L(L(L({},o),p),{},{stroke:"none"},c),{},{index:f,textAnchor:kr(g.x,p.cx)},g),h=L(L(L(L({},o),p),{},{fill:"none",stroke:p.fill},u),{},{index:f,points:[Ie(p.cx,p.cy,p.outerRadius,y),g],key:"line"});return l.createElement(ae,{zIndex:te.label,key:"label-".concat(p.startAngle,"-").concat(p.endAngle,"-").concat(p.midAngle,"-").concat(f)},l.createElement(K,null,i&&_r(i,h),Rr(n,m,$(p,s))))});return l.createElement(K,{className:"recharts-pie-labels"},v)}function $r(t){var{sectors:e,props:a,showLabels:r}=t,{label:n}=a;return typeof n=="object"&&n!=null&&"position"in n?l.createElement(Te,{label:n}):l.createElement(Kr,{sectors:e,props:a,showLabels:r})}function Wr(t){var{sectors:e,activeShape:a,inactiveShape:r,allOtherPieProps:n,shape:i,id:s}=t,o=F(mt),c=F(Ia),u=F(Oa),{onMouseEnter:d,onClick:v,onMouseLeave:p}=n,f=Pe(n,Ar),y=ja(d,n.dataKey,s),g=wa(p),m=Da(v,n.dataKey,s);return e==null||e.length===0?null:l.createElement(l.Fragment,null,e.map((h,P)=>{if((h==null?void 0:h.startAngle)===0&&(h==null?void 0:h.endAngle)===0&&e.length!==1)return null;var b=u==null||u===s,x=String(P)===o&&(c==null||n.dataKey===c)&&b,j=o?r:null,I=a&&x?a:j,O=L(L({},h),{},{stroke:h.stroke,tabIndex:-1,[Sa]:P,[Ca]:s});return l.createElement(K,V({key:"sector-".concat(h==null?void 0:h.startAngle,"-").concat(h==null?void 0:h.endAngle,"-").concat(h.midAngle,"-").concat(P),tabIndex:-1,className:"recharts-pie-sector"},ka(f,h,P),{onMouseEnter:y(h,P),onMouseLeave:g(h,P),onClick:m(h,P)}),l.createElement(ht,V({option:i??I,index:P,shapeType:"sector",isActive:x},O)))}))}function Mr(t){var e,{pieSettings:a,displayedData:r,cells:n,offset:i}=t,{cornerRadius:s,startAngle:o,endAngle:c,dataKey:u,nameKey:d,tooltipType:v}=a,p=Math.abs(a.minAngle),f=Tr(o,c),y=Math.abs(f),g=r.length<=1?0:(e=a.paddingAngle)!==null&&e!==void 0?e:0,m=r.filter(I=>$(I,u,0)!==0).length,h=(y>=360?m:m-1)*g,P=y-m*p-h,b=r.reduce((I,O)=>{var E=$(O,u,0);return I+(M(E)?E:0)},0),x;if(b>0){var j;x=r.map((I,O)=>{var E=$(I,u,0),D=$(I,d,O),C=Nr(a,i,I),k=(M(E)?E:0)/b,w,N=L(L({},I),n&&n[O]&&n[O].props);O?w=j.endAngle+oe(f)*g*(E!==0?1:0):w=o;var T=w+oe(f)*((E!==0?p:0)+k*P),_=(w+T)/2,q=(C.innerRadius+C.outerRadius)/2,Z=[{name:D,value:E,payload:N,dataKey:u,type:v,graphicalItemId:a.id}],le=Ie(C.cx,C.cy,q,_);return j=L(L(L(L({},a.presentationProps),{},{percent:k,cornerRadius:typeof s=="string"?parseFloat(s):s,name:D,tooltipPayload:Z,midAngle:_,middleRadius:q,tooltipPosition:le},N),C),{},{value:E,dataKey:u,startAngle:w,endAngle:T,payload:N,paddingAngle:oe(f)*g}),j})}return x}function Br(t){var{showLabels:e,sectors:a,children:r}=t,n=l.useMemo(()=>!e||!a?[]:a.map(i=>({value:i.value,payload:i.payload,clockWise:!1,parentViewBox:void 0,viewBox:{cx:i.cx,cy:i.cy,innerRadius:i.innerRadius,outerRadius:i.outerRadius,startAngle:i.startAngle,endAngle:i.endAngle,clockWise:!1},fill:i.fill})),[a,e]);return l.createElement(Ea,{value:e?n:void 0},r)}function zr(t){var{props:e,previousSectorsRef:a,id:r}=t,{sectors:n,isAnimationActive:i,animationBegin:s,animationDuration:o,animationEasing:c,activeShape:u,inactiveShape:d,onAnimationStart:v,onAnimationEnd:p}=e,f=Le(e,"recharts-pie-"),y=a.current,[g,m]=l.useState(!1),h=l.useCallback(()=>{typeof p=="function"&&p(),m(!1)},[p]),P=l.useCallback(()=>{typeof v=="function"&&v(),m(!0)},[v]);return l.createElement(Br,{showLabels:!g,sectors:n},l.createElement(Ne,{animationId:f,begin:s,duration:o,isActive:i,easing:c,onAnimationStart:P,onAnimationEnd:h,key:f},b=>{var x,j=[],I=n&&n[0],O=(x=I==null?void 0:I.startAngle)!==null&&x!==void 0?x:0;return n==null||n.forEach((E,D)=>{var C=y&&y[D],k=D>0?Aa(E,"paddingAngle",0):0;if(C){var w=R(C.endAngle-C.startAngle,E.endAngle-E.startAngle,b),N=L(L({},E),{},{startAngle:O+k,endAngle:O+w+k});j.push(N),O=N.endAngle}else{var{endAngle:T,startAngle:_}=E,q=R(0,T-_,b),Z=L(L({},E),{},{startAngle:O+k,endAngle:O+q+k});j.push(Z),O=Z.endAngle}}),a.current=j,l.createElement(K,null,l.createElement(Wr,{sectors:j,activeShape:u,inactiveShape:d,allOtherPieProps:e,shape:e.shape,id:r}))}),l.createElement($r,{showLabels:!g,sectors:n,props:e}),e.children)}var Fr={animationBegin:400,animationDuration:1500,animationEasing:"ease",cx:"50%",cy:"50%",dataKey:"value",endAngle:360,fill:"#808080",hide:!1,innerRadius:0,isAnimationActive:"auto",label:!1,labelLine:!0,legendType:"rect",minAngle:0,nameKey:"name",outerRadius:"80%",paddingAngle:0,rootTabIndex:0,startAngle:0,stroke:"#fff",zIndex:te.area};function Vr(t){var{id:e}=t,a=Pe(t,Er),{hide:r,className:n,rootTabIndex:i}=t,s=l.useMemo(()=>ft(t.children,Se),[t.children]),o=F(d=>xr(d,e,s)),c=l.useRef(null),u=X("recharts-pie",n);return r||o==null?(c.current=null,l.createElement(K,{tabIndex:i,className:u})):l.createElement(ae,{zIndex:t.zIndex},l.createElement(Sr,{dataKey:t.dataKey,nameKey:t.nameKey,sectors:o,stroke:t.stroke,strokeWidth:t.strokeWidth,fill:t.fill,name:t.name,hide:t.hide,tooltipType:t.tooltipType,id:e}),l.createElement(K,{tabIndex:i,className:u},l.createElement(zr,{props:L(L({},a),{},{sectors:o}),previousSectorsRef:c,id:e})))}function Nt(t){var e=H(t,Fr),{id:a}=e,r=Pe(e,Ir),n=Q(r);return l.createElement(Ce,{id:a,type:"pie"},i=>l.createElement(l.Fragment,null,l.createElement(xa,{type:"pie",id:i,data:r.data,dataKey:r.dataKey,hide:r.hide,angleAxisId:0,radiusAxisId:0,name:r.name,nameKey:r.nameKey,tooltipType:r.tooltipType,legendType:r.legendType,fill:r.fill,cx:r.cx,cy:r.cy,startAngle:r.startAngle,endAngle:r.endAngle,paddingAngle:r.paddingAngle,minAngle:r.minAngle,innerRadius:r.innerRadius,outerRadius:r.outerRadius,cornerRadius:r.cornerRadius,presentationProps:n,maxRadius:e.maxRadius}),l.createElement(Cr,V({},r,{id:i})),l.createElement(Vr,V({},r,{id:i}))))}Nt.displayName="Pie";var Gr=["points"];function qe(t,e){var a=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter(function(n){return Object.getOwnPropertyDescriptor(t,n).enumerable})),a.push.apply(a,r)}return a}function Ae(t){for(var e=1;e<arguments.length;e++){var a=arguments[e]!=null?arguments[e]:{};e%2?qe(Object(a),!0).forEach(function(r){Xr(t,r,a[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(a)):qe(Object(a)).forEach(function(r){Object.defineProperty(t,r,Object.getOwnPropertyDescriptor(a,r))})}return t}function Xr(t,e,a){return(e=Ur(e))in t?Object.defineProperty(t,e,{value:a,enumerable:!0,configurable:!0,writable:!0}):t[e]=a,t}function Ur(t){var e=Yr(t,"string");return typeof e=="symbol"?e:e+""}function Yr(t,e){if(typeof t!="object"||!t)return t;var a=t[Symbol.toPrimitive];if(a!==void 0){var r=a.call(t,e);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(t)}function fe(){return fe=Object.assign?Object.assign.bind():function(t){for(var e=1;e<arguments.length;e++){var a=arguments[e];for(var r in a)({}).hasOwnProperty.call(a,r)&&(t[r]=a[r])}return t},fe.apply(null,arguments)}function Hr(t,e){if(t==null)return{};var a,r,n=qr(t,e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(t);for(r=0;r<i.length;r++)a=i[r],e.indexOf(a)===-1&&{}.propertyIsEnumerable.call(t,a)&&(n[a]=t[a])}return n}function qr(t,e){if(t==null)return{};var a={};for(var r in t)if({}.hasOwnProperty.call(t,r)){if(e.indexOf(r)!==-1)continue;a[r]=t[r]}return a}function Zr(t){var{option:e,dotProps:a,className:r}=t;if(l.isValidElement(e))return l.cloneElement(e,a);if(typeof e=="function")return e(a);var n=X(r,typeof e!="boolean"?e.className:""),i=a??{},{points:s}=i,o=Hr(i,Gr);return l.createElement(Ct,fe({},o,{className:n}))}function Jr(t,e){return t==null?!1:e?!0:t.length===1}function Tt(t){var{points:e,dot:a,className:r,dotClassName:n,dataKey:i,baseProps:s,needClip:o,clipPathId:c,zIndex:u=te.scatter}=t;if(!Jr(e,a))return null;var d=_e(a),v=_a(a),p=e.map((y,g)=>{var m,h,P=Ae(Ae(Ae({r:3},s),v),{},{index:g,cx:(m=y.x)!==null&&m!==void 0?m:void 0,cy:(h=y.y)!==null&&h!==void 0?h:void 0,dataKey:i,value:y.value,payload:y.payload,points:e});return l.createElement(Zr,{key:"dot-".concat(g),option:a,dotProps:P,className:n})}),f={};return o&&c!=null&&(f.clipPath="url(#clipPath-".concat(d?"":"dots-").concat(c,")")),l.createElement(ae,{zIndex:u},l.createElement(K,fe({className:r},f),p))}function Ze(t,e){var a=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter(function(n){return Object.getOwnPropertyDescriptor(t,n).enumerable})),a.push.apply(a,r)}return a}function Ee(t){for(var e=1;e<arguments.length;e++){var a=arguments[e]!=null?arguments[e]:{};e%2?Ze(Object(a),!0).forEach(function(r){Qr(t,r,a[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(a)):Ze(Object(a)).forEach(function(r){Object.defineProperty(t,r,Object.getOwnPropertyDescriptor(a,r))})}return t}function Qr(t,e,a){return(e=en(e))in t?Object.defineProperty(t,e,{value:a,enumerable:!0,configurable:!0,writable:!0}):t[e]=a,t}function en(t){var e=tn(t,"string");return typeof e=="symbol"?e:e+""}function tn(t,e){if(typeof t!="object"||!t)return t;var a=t[Symbol.toPrimitive];if(a!==void 0){var r=a.call(t,e);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(t)}var an=t=>{var{point:e,childIndex:a,mainColor:r,activeDot:n,dataKey:i,clipPath:s}=t;if(n===!1||e.x==null||e.y==null)return null;var o={index:a,dataKey:i,cx:e.x,cy:e.y,r:4,fill:r??"none",strokeWidth:2,stroke:"#fff",payload:e.payload,value:e.value},c=Ee(Ee(Ee({},o),ce(n)),dt(n)),u;return l.isValidElement(n)?u=l.cloneElement(n,c):typeof n=="function"?u=n(c):u=l.createElement(Ct,c),l.createElement(K,{className:"recharts-active-dot",clipPath:s},u)};function je(t){var{points:e,mainColor:a,activeDot:r,itemDataKey:n,clipPath:i,zIndex:s=te.activeDot}=t,o=F(mt),c=Ra();if(e==null||c==null)return null;var u=e.find(d=>c.includes(d.payload));return ue(u)?null:l.createElement(ae,{zIndex:s},l.createElement(an,{point:u,childIndex:Number(o),mainColor:a,dataKey:n,activeDot:r,clipPath:i}))}var _t=(t,e,a,r)=>he(t,"xAxis",e,r),Rt=(t,e,a,r)=>ye(t,"xAxis",e,r),Kt=(t,e,a,r)=>he(t,"yAxis",a,r),$t=(t,e,a,r)=>ye(t,"yAxis",a,r),rn=S([Y,_t,Kt,Rt,$t],(t,e,a,r,n)=>Re(t,"xAxis")?de(e,r,!1):de(a,n,!1)),nn=(t,e,a,r,n)=>n;function ln(t){return t.type==="line"}var on=S([yt,nn],(t,e)=>t.filter(ln).find(a=>a.id===e)),sn=S([Y,_t,Kt,Rt,$t,on,rn,Ka],(t,e,a,r,n,i,s,o)=>{var{chartData:c,dataStartIndex:u,dataEndIndex:d}=o;if(!(i==null||e==null||a==null||r==null||n==null||r.length===0||n.length===0||s==null||t!=="horizontal"&&t!=="vertical")){var{dataKey:v,data:p}=i,f;if(p!=null&&p.length>0?f=p:f=c==null?void 0:c.slice(u,d+1),f!=null)return Dn({layout:t,xAxis:e,yAxis:a,xAxisTicks:r,yAxisTicks:n,dataKey:v,bandSize:s,displayedData:f})}});function Wt(t){var e=ce(t),a=3,r=2;if(e!=null){var{r:n,strokeWidth:i}=e,s=Number(n),o=Number(i);return(Number.isNaN(s)||s<0)&&(s=a),(Number.isNaN(o)||o<0)&&(o=r),{r:s,strokeWidth:o}}return{r:a,strokeWidth:r}}var cn=["id"],un=["type","layout","connectNulls","needClip","shape"],dn=["activeDot","animateNewValues","animationBegin","animationDuration","animationEasing","connectNulls","dot","hide","isAnimationActive","label","legendType","xAxisId","yAxisId","id"];function ne(){return ne=Object.assign?Object.assign.bind():function(t){for(var e=1;e<arguments.length;e++){var a=arguments[e];for(var r in a)({}).hasOwnProperty.call(a,r)&&(t[r]=a[r])}return t},ne.apply(null,arguments)}function Je(t,e){var a=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter(function(n){return Object.getOwnPropertyDescriptor(t,n).enumerable})),a.push.apply(a,r)}return a}function B(t){for(var e=1;e<arguments.length;e++){var a=arguments[e]!=null?arguments[e]:{};e%2?Je(Object(a),!0).forEach(function(r){pn(t,r,a[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(a)):Je(Object(a)).forEach(function(r){Object.defineProperty(t,r,Object.getOwnPropertyDescriptor(a,r))})}return t}function pn(t,e,a){return(e=vn(e))in t?Object.defineProperty(t,e,{value:a,enumerable:!0,configurable:!0,writable:!0}):t[e]=a,t}function vn(t){var e=fn(t,"string");return typeof e=="symbol"?e:e+""}function fn(t,e){if(typeof t!="object"||!t)return t;var a=t[Symbol.toPrimitive];if(a!==void 0){var r=a.call(t,e);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(t)}function ze(t,e){if(t==null)return{};var a,r,n=mn(t,e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(t);for(r=0;r<i.length;r++)a=i[r],e.indexOf(a)===-1&&{}.propertyIsEnumerable.call(t,a)&&(n[a]=t[a])}return n}function mn(t,e){if(t==null)return{};var a={};for(var r in t)if({}.hasOwnProperty.call(t,r)){if(e.indexOf(r)!==-1)continue;a[r]=t[r]}return a}var hn=t=>{var{dataKey:e,name:a,stroke:r,legendType:n,hide:i}=t;return[{inactive:i,dataKey:e,type:n,color:r,value:ee(a,e),payload:t}]},yn=l.memo(t=>{var{dataKey:e,data:a,stroke:r,strokeWidth:n,fill:i,name:s,hide:o,unit:c,tooltipType:u,id:d}=t,v={dataDefinedOnItem:a,getPosition:Pt,settings:{stroke:r,strokeWidth:n,fill:i,dataKey:e,nameKey:void 0,name:ee(s,e),hide:o,type:u,color:r,unit:c,graphicalItemId:d}};return l.createElement(ke,{tooltipEntrySettings:v})}),Mt=(t,e)=>"".concat(e,"px ").concat(t-e,"px");function gn(t,e){for(var a=t.length%2!==0?[...t,0]:t,r=[],n=0;n<e;++n)r=[...r,...a];return r}var bn=(t,e,a)=>{var r=a.reduce((f,y)=>f+y);if(!r)return Mt(e,t);for(var n=Math.floor(t/r),i=t%r,s=e-t,o=[],c=0,u=0;c<a.length;u+=(d=a[c])!==null&&d!==void 0?d:0,++c){var d,v=a[c];if(v!=null&&u+v>i){o=[...a.slice(0,c),i-u];break}}var p=o.length%2===0?[0,s]:[s];return[...gn(a,n),...o,...p].map(f=>"".concat(f,"px")).join(", ")};function xn(t){var{clipPathId:e,points:a,props:r}=t,{dot:n,dataKey:i,needClip:s}=r,{id:o}=r,c=ze(r,cn),u=Q(c);return l.createElement(Tt,{points:a,dot:n,className:"recharts-line-dots",dotClassName:"recharts-line-dot",dataKey:i,baseProps:u,needClip:s,clipPathId:e})}function Pn(t){var{showLabels:e,children:a,points:r}=t,n=l.useMemo(()=>r==null?void 0:r.map(i=>{var s,o,c={x:(s=i.x)!==null&&s!==void 0?s:0,y:(o=i.y)!==null&&o!==void 0?o:0,width:0,lowerWidth:0,upperWidth:0,height:0};return B(B({},c),{},{value:i.value,payload:i.payload,viewBox:c,parentViewBox:void 0,fill:void 0})}),[r]);return l.createElement(jt,{value:e?n:void 0},a)}function Qe(t){var{clipPathId:e,pathRef:a,points:r,strokeDasharray:n,props:i}=t,{type:s,layout:o,connectNulls:c,needClip:u,shape:d}=i,v=ze(i,un),p=B(B({},wt(v)),{},{fill:"none",className:"recharts-line-curve",clipPath:u?"url(#clipPath-".concat(e,")"):void 0,points:r,type:s,layout:o,connectNulls:c,strokeDasharray:n??i.strokeDasharray});return l.createElement(l.Fragment,null,(r==null?void 0:r.length)>1&&l.createElement(ht,ne({shapeType:"curve",option:d},p,{pathRef:a})),l.createElement(xn,{points:r,clipPathId:e,props:i}))}function An(t){try{return t&&t.getTotalLength&&t.getTotalLength()||0}catch{return 0}}function En(t){var{clipPathId:e,props:a,pathRef:r,previousPointsRef:n,longestAnimatedLengthRef:i}=t,{points:s,strokeDasharray:o,isAnimationActive:c,animationBegin:u,animationDuration:d,animationEasing:v,animateNewValues:p,width:f,height:y,onAnimationEnd:g,onAnimationStart:m}=a,h=n.current,P=Le(s,"recharts-line-"),b=l.useRef(P),[x,j]=l.useState(!1),I=!x,O=l.useCallback(()=>{typeof g=="function"&&g(),j(!1)},[g]),E=l.useCallback(()=>{typeof m=="function"&&m(),j(!0)},[m]),D=An(r.current),C=l.useRef(0);b.current!==P&&(C.current=i.current,b.current=P);var k=C.current;return l.createElement(Pn,{points:s,showLabels:I},a.children,l.createElement(Ne,{animationId:P,begin:u,duration:d,isActive:c,easing:v,onAnimationEnd:O,onAnimationStart:E,key:P},w=>{var N=R(k,D+k,w),T=Math.min(N,D),_;if(c)if(o){var q="".concat(o).split(/[,\s]+/gim).map(W=>parseFloat(W));_=bn(T,D,q)}else _=Mt(D,T);else _=o==null?void 0:String(o);if(w>0&&D>0&&(n.current=s,i.current=Math.max(i.current,T)),h){var Z=h.length/s.length,le=w===1?s:s.map((W,ta)=>{var Fe=Math.floor(ta*Z);if(h[Fe]){var Ve=h[Fe];return B(B({},W),{},{x:R(Ve.x,W.x,w),y:R(Ve.y,W.y,w)})}return p?B(B({},W),{},{x:R(f*2,W.x,w),y:R(y/2,W.y,w)}):B(B({},W),{},{x:W.x,y:W.y})});return n.current=le,l.createElement(Qe,{props:a,points:le,clipPathId:e,pathRef:r,strokeDasharray:_})}return l.createElement(Qe,{props:a,points:s,clipPathId:e,pathRef:r,strokeDasharray:_})}),l.createElement(Te,{label:a.label}))}function In(t){var{clipPathId:e,props:a}=t,r=l.useRef(null),n=l.useRef(0),i=l.useRef(null);return l.createElement(En,{props:a,clipPathId:e,previousPointsRef:r,longestAnimatedLengthRef:n,pathRef:i})}var On=(t,e)=>{var a,r;return{x:(a=t.x)!==null&&a!==void 0?a:void 0,y:(r=t.y)!==null&&r!==void 0?r:void 0,value:t.value,errorVal:$(t.payload,e)}};class jn extends l.Component{render(){var{hide:e,dot:a,points:r,className:n,xAxisId:i,yAxisId:s,top:o,left:c,width:u,height:d,id:v,needClip:p,zIndex:f}=this.props;if(e)return null;var y=X("recharts-line",n),g=v,{r:m,strokeWidth:h}=Wt(a),P=_e(a),b=m*2+h,x=p?"url(#clipPath-".concat(P?"":"dots-").concat(g,")"):void 0;return l.createElement(ae,{zIndex:f},l.createElement(K,{className:y},p&&l.createElement("defs",null,l.createElement(Ot,{clipPathId:g,xAxisId:i,yAxisId:s}),!P&&l.createElement("clipPath",{id:"clipPath-dots-".concat(g)},l.createElement("rect",{x:c-b/2,y:o-b/2,width:u+b,height:d+b}))),l.createElement($a,{xAxisId:i,yAxisId:s,data:r,dataPointFormatter:On,errorBarOffset:0},l.createElement(In,{props:this.props,clipPathId:g}))),l.createElement(je,{activeDot:this.props.activeDot,points:r,mainColor:this.props.stroke,itemDataKey:this.props.dataKey,clipPath:x}))}}var Bt={activeDot:!0,animateNewValues:!0,animationBegin:0,animationDuration:1500,animationEasing:"ease",connectNulls:!1,dot:!0,fill:"#fff",hide:!1,isAnimationActive:"auto",label:!1,legendType:"line",stroke:"#3182bd",strokeWidth:1,xAxisId:0,yAxisId:0,zIndex:te.line,type:"linear"};function wn(t){var e=H(t,Bt),{activeDot:a,animateNewValues:r,animationBegin:n,animationDuration:i,animationEasing:s,connectNulls:o,dot:c,hide:u,isAnimationActive:d,label:v,legendType:p,xAxisId:f,yAxisId:y,id:g}=e,m=ze(e,dn),{needClip:h}=At(f,y),P=Et(),b=It(),x=ge(),j=F(C=>sn(C,f,y,x,g));if(b!=="horizontal"&&b!=="vertical"||j==null||P==null)return null;var{height:I,width:O,x:E,y:D}=P;return l.createElement(jn,ne({},m,{id:g,connectNulls:o,dot:c,activeDot:a,animateNewValues:r,animationBegin:n,animationDuration:i,animationEasing:s,isAnimationActive:d,hide:u,label:v,legendType:p,xAxisId:f,yAxisId:y,points:j,layout:b,height:I,width:O,left:E,top:D,needClip:h}))}function Dn(t){var{layout:e,xAxis:a,yAxis:r,xAxisTicks:n,yAxisTicks:i,dataKey:s,bandSize:o,displayedData:c}=t;return c.map((u,d)=>{var v=$(u,s);if(e==="horizontal"){var p=pe({axis:a,ticks:n,bandSize:o,entry:u,index:d}),f=ue(v)?null:r.scale.map(v);return{x:p,y:f??null,value:v,payload:u}}var y=ue(v)?null:a.scale.map(v),g=pe({axis:r,ticks:i,bandSize:o,entry:u,index:d});return y==null||g==null?null:{x:y,y:g,value:v,payload:u}}).filter(Boolean)}function Cn(t){var e=H(t,Bt),a=ge();return l.createElement(Ce,{id:e.id,type:"line"},r=>l.createElement(l.Fragment,null,l.createElement(bt,{legendPayload:hn(e)}),l.createElement(yn,{dataKey:e.dataKey,data:e.data,stroke:e.stroke,strokeWidth:e.strokeWidth,fill:e.fill,name:e.name,hide:e.hide,unit:e.unit,tooltipType:e.tooltipType,id:r}),l.createElement(xt,{type:"line",id:r,data:e.data,xAxisId:e.xAxisId,yAxisId:e.yAxisId,zAxisId:0,dataKey:e.dataKey,hide:e.hide,isPanorama:a}),l.createElement(wn,ne({},e,{id:r}))))}var zt=l.memo(Cn,gt);zt.displayName="Line";var Ft=(t,e,a)=>he(t,"xAxis",Ke(t,e),a),Vt=(t,e,a)=>ye(t,"xAxis",Ke(t,e),a),Gt=(t,e,a)=>he(t,"yAxis",$e(t,e),a),Xt=(t,e,a)=>ye(t,"yAxis",$e(t,e),a),Sn=S([Y,Ft,Gt,Vt,Xt],(t,e,a,r,n)=>Re(t,"xAxis")?de(e,r,!1):de(a,n,!1)),kn=(t,e)=>e,Ut=S([yt,kn],(t,e)=>t.filter(a=>a.type==="area").find(a=>a.id===e)),Yt=t=>{var e=Y(t),a=Re(e,"xAxis");return a?"yAxis":"xAxis"},Ln=(t,e)=>{var a=Yt(t);return a==="yAxis"?$e(t,e):Ke(t,e)},Nn=(t,e,a)=>Ba(t,Yt(t),Ln(t,e),a),Tn=S([Ut,Nn],(t,e)=>{var a;if(!(t==null||e==null)){var{stackId:r}=t,n=za(t);if(!(r==null||n==null)){var i=(a=e[r])===null||a===void 0?void 0:a.stackedData,s=i==null?void 0:i.find(o=>o.key===n);if(s!=null)return s.map(o=>[o[0],o[1]])}}}),_n=S([Y,Ft,Gt,Vt,Xt,Tn,Wa,Sn,Ut,Ma],(t,e,a,r,n,i,s,o,c,u)=>{var{chartData:d,dataStartIndex:v,dataEndIndex:p}=s;if(!(c==null||t!=="horizontal"&&t!=="vertical"||e==null||a==null||r==null||n==null||r.length===0||n.length===0||o==null)){var{data:f}=c,y;if(f&&f.length>0?y=f:y=d==null?void 0:d.slice(v,p+1),y!=null)return ei({layout:t,xAxis:e,yAxis:a,xAxisTicks:r,yAxisTicks:n,dataStartIndex:v,areaSettings:c,stackedData:i,displayedData:y,chartBaseValue:u,bandSize:o})}}),Rn=["id"],Kn=["activeDot","animationBegin","animationDuration","animationEasing","connectNulls","dot","fill","fillOpacity","hide","isAnimationActive","legendType","stroke","xAxisId","yAxisId"];function G(){return G=Object.assign?Object.assign.bind():function(t){for(var e=1;e<arguments.length;e++){var a=arguments[e];for(var r in a)({}).hasOwnProperty.call(a,r)&&(t[r]=a[r])}return t},G.apply(null,arguments)}function Ht(t,e){if(t==null)return{};var a,r,n=$n(t,e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(t);for(r=0;r<i.length;r++)a=i[r],e.indexOf(a)===-1&&{}.propertyIsEnumerable.call(t,a)&&(n[a]=t[a])}return n}function $n(t,e){if(t==null)return{};var a={};for(var r in t)if({}.hasOwnProperty.call(t,r)){if(e.indexOf(r)!==-1)continue;a[r]=t[r]}return a}function et(t,e){var a=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter(function(n){return Object.getOwnPropertyDescriptor(t,n).enumerable})),a.push.apply(a,r)}return a}function J(t){for(var e=1;e<arguments.length;e++){var a=arguments[e]!=null?arguments[e]:{};e%2?et(Object(a),!0).forEach(function(r){Wn(t,r,a[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(a)):et(Object(a)).forEach(function(r){Object.defineProperty(t,r,Object.getOwnPropertyDescriptor(a,r))})}return t}function Wn(t,e,a){return(e=Mn(e))in t?Object.defineProperty(t,e,{value:a,enumerable:!0,configurable:!0,writable:!0}):t[e]=a,t}function Mn(t){var e=Bn(t,"string");return typeof e=="symbol"?e:e+""}function Bn(t,e){if(typeof t!="object"||!t)return t;var a=t[Symbol.toPrimitive];if(a!==void 0){var r=a.call(t,e);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(t)}function me(t,e){return t&&t!=="none"?t:e}var zn=t=>{var{dataKey:e,name:a,stroke:r,fill:n,legendType:i,hide:s}=t;return[{inactive:s,dataKey:e,type:i,color:me(r,n),value:ee(a,e),payload:t}]},Fn=l.memo(t=>{var{dataKey:e,data:a,stroke:r,strokeWidth:n,fill:i,name:s,hide:o,unit:c,tooltipType:u,id:d}=t,v={dataDefinedOnItem:a,getPosition:Pt,settings:{stroke:r,strokeWidth:n,fill:i,dataKey:e,nameKey:void 0,name:ee(s,e),hide:o,type:u,color:me(r,i),unit:c,graphicalItemId:d}};return l.createElement(ke,{tooltipEntrySettings:v})});function Vn(t){var{clipPathId:e,points:a,props:r}=t,{needClip:n,dot:i,dataKey:s}=r,o=Q(r);return l.createElement(Tt,{points:a,dot:i,className:"recharts-area-dots",dotClassName:"recharts-area-dot",dataKey:s,baseProps:o,needClip:n,clipPathId:e})}function Gn(t){var{showLabels:e,children:a,points:r}=t,n=r.map(i=>{var s,o,c={x:(s=i.x)!==null&&s!==void 0?s:0,y:(o=i.y)!==null&&o!==void 0?o:0,width:0,lowerWidth:0,upperWidth:0,height:0};return J(J({},c),{},{value:i.value,payload:i.payload,parentViewBox:void 0,viewBox:c,fill:void 0})});return l.createElement(jt,{value:e?n:void 0},a)}function tt(t){var{points:e,baseLine:a,needClip:r,clipPathId:n,props:i}=t,{layout:s,type:o,stroke:c,connectNulls:u,isRange:d}=i,{id:v}=i,p=Ht(i,Rn),f=Q(p),y=wt(p);return l.createElement(l.Fragment,null,(e==null?void 0:e.length)>1&&l.createElement(K,{clipPath:r?"url(#clipPath-".concat(n,")"):void 0},l.createElement(se,G({},y,{id:v,points:e,connectNulls:u,type:o,baseLine:a,layout:s,stroke:"none",className:"recharts-area-area"})),c!=="none"&&l.createElement(se,G({},f,{className:"recharts-area-curve",layout:s,type:o,connectNulls:u,fill:"none",points:e})),c!=="none"&&d&&l.createElement(se,G({},f,{className:"recharts-area-curve",layout:s,type:o,connectNulls:u,fill:"none",points:a}))),l.createElement(Vn,{points:e,props:p,clipPathId:n}))}function Xn(t){var e,a,{alpha:r,baseLine:n,points:i,strokeWidth:s}=t,o=(e=i[0])===null||e===void 0?void 0:e.y,c=(a=i[i.length-1])===null||a===void 0?void 0:a.y;if(!ve(o)||!ve(c))return null;var u=r*Math.abs(o-c),d=Math.max(...i.map(v=>v.x||0));return M(n)?d=Math.max(n,d):n&&Array.isArray(n)&&n.length&&(d=Math.max(...n.map(v=>v.x||0),d)),M(d)?l.createElement("rect",{x:0,y:o<c?o:o-u,width:d+(s?parseInt("".concat(s),10):1),height:Math.floor(u)}):null}function Un(t){var e,a,{alpha:r,baseLine:n,points:i,strokeWidth:s}=t,o=(e=i[0])===null||e===void 0?void 0:e.x,c=(a=i[i.length-1])===null||a===void 0?void 0:a.x;if(!ve(o)||!ve(c))return null;var u=r*Math.abs(o-c),d=Math.max(...i.map(v=>v.y||0));return M(n)?d=Math.max(n,d):n&&Array.isArray(n)&&n.length&&(d=Math.max(...n.map(v=>v.y||0),d)),M(d)?l.createElement("rect",{x:o<c?o:o-u,y:0,width:u,height:Math.floor(d+(s?parseInt("".concat(s),10):1))}):null}function Yn(t){var{alpha:e,layout:a,points:r,baseLine:n,strokeWidth:i}=t;return a==="vertical"?l.createElement(Xn,{alpha:e,points:r,baseLine:n,strokeWidth:i}):l.createElement(Un,{alpha:e,points:r,baseLine:n,strokeWidth:i})}function Hn(t){var{needClip:e,clipPathId:a,props:r,previousPointsRef:n,previousBaselineRef:i}=t,{points:s,baseLine:o,isAnimationActive:c,animationBegin:u,animationDuration:d,animationEasing:v,onAnimationStart:p,onAnimationEnd:f}=r,y=l.useMemo(()=>({points:s,baseLine:o}),[s,o]),g=Le(y,"recharts-area-"),m=Ga(),[h,P]=l.useState(!1),b=!h,x=l.useCallback(()=>{typeof f=="function"&&f(),P(!1)},[f]),j=l.useCallback(()=>{typeof p=="function"&&p(),P(!0)},[p]);if(m==null)return null;var I=n.current,O=i.current;return l.createElement(Gn,{showLabels:b,points:s},r.children,l.createElement(Ne,{animationId:g,begin:u,duration:d,isActive:c,easing:v,onAnimationEnd:x,onAnimationStart:j,key:g},E=>{if(I){var D=I.length/s.length,C=E===1?s:s.map((w,N)=>{var T=Math.floor(N*D);if(I[T]){var _=I[T];return J(J({},w),{},{x:R(_.x,w.x,E),y:R(_.y,w.y,E)})}return w}),k;return M(o)?k=R(O,o,E):ue(o)||Xa(o)?k=R(O,0,E):k=o.map((w,N)=>{var T=Math.floor(N*D);if(Array.isArray(O)&&O[T]){var _=O[T];return J(J({},w),{},{x:R(_.x,w.x,E),y:R(_.y,w.y,E)})}return w}),E>0&&(n.current=C,i.current=k),l.createElement(tt,{points:C,baseLine:k,needClip:e,clipPathId:a,props:r})}return E>0&&(n.current=s,i.current=o),l.createElement(K,null,c&&l.createElement("defs",null,l.createElement("clipPath",{id:"animationClipPath-".concat(a)},l.createElement(Yn,{alpha:E,points:s,baseLine:o,layout:m,strokeWidth:r.strokeWidth}))),l.createElement(K,{clipPath:"url(#animationClipPath-".concat(a,")")},l.createElement(tt,{points:s,baseLine:o,needClip:e,clipPathId:a,props:r})))}),l.createElement(Te,{label:r.label}))}function qn(t){var{needClip:e,clipPathId:a,props:r}=t,n=l.useRef(null),i=l.useRef();return l.createElement(Hn,{needClip:e,clipPathId:a,props:r,previousPointsRef:n,previousBaselineRef:i})}class Zn extends l.PureComponent{render(){var{hide:e,dot:a,points:r,className:n,top:i,left:s,needClip:o,xAxisId:c,yAxisId:u,width:d,height:v,id:p,baseLine:f,zIndex:y}=this.props;if(e)return null;var g=X("recharts-area",n),m=p,{r:h,strokeWidth:P}=Wt(a),b=_e(a),x=h*2+P,j=o?"url(#clipPath-".concat(b?"":"dots-").concat(m,")"):void 0;return l.createElement(ae,{zIndex:y},l.createElement(K,{className:g},o&&l.createElement("defs",null,l.createElement(Ot,{clipPathId:m,xAxisId:c,yAxisId:u}),!b&&l.createElement("clipPath",{id:"clipPath-dots-".concat(m)},l.createElement("rect",{x:s-x/2,y:i-x/2,width:d+x,height:v+x}))),l.createElement(qn,{needClip:o,clipPathId:m,props:this.props})),l.createElement(je,{points:r,mainColor:me(this.props.stroke,this.props.fill),itemDataKey:this.props.dataKey,activeDot:this.props.activeDot,clipPath:j}),this.props.isRange&&Array.isArray(f)&&l.createElement(je,{points:f,mainColor:me(this.props.stroke,this.props.fill),itemDataKey:this.props.dataKey,activeDot:this.props.activeDot,clipPath:j}))}}var qt={activeDot:!0,animationBegin:0,animationDuration:1500,animationEasing:"ease",connectNulls:!1,dot:!1,fill:"#3182bd",fillOpacity:.6,hide:!1,isAnimationActive:"auto",legendType:"line",stroke:"#3182bd",strokeWidth:1,type:"linear",label:!1,xAxisId:0,yAxisId:0,zIndex:te.area};function Jn(t){var e,a=H(t,qt),{activeDot:r,animationBegin:n,animationDuration:i,animationEasing:s,connectNulls:o,dot:c,fill:u,fillOpacity:d,hide:v,isAnimationActive:p,legendType:f,stroke:y,xAxisId:g,yAxisId:m}=a,h=Ht(a,Kn),P=It(),b=Va(),{needClip:x}=At(g,m),j=ge(),{points:I,isRange:O,baseLine:E}=(e=F(T=>_n(T,t.id,j)))!==null&&e!==void 0?e:{},D=Et();if(P!=="horizontal"&&P!=="vertical"||D==null||b!=="AreaChart"&&b!=="ComposedChart")return null;var{height:C,width:k,x:w,y:N}=D;return!I||!I.length?null:l.createElement(Zn,G({},h,{activeDot:r,animationBegin:n,animationDuration:i,animationEasing:s,baseLine:E,connectNulls:o,dot:c,fill:u,fillOpacity:d,height:C,hide:v,layout:P,isAnimationActive:p==="auto"?!Ua.isSsr:p,isRange:O,legendType:f,needClip:x,points:I,stroke:y,width:k,left:w,top:N,xAxisId:g,yAxisId:m}))}var Qn=(t,e,a,r,n)=>{var i=a??e;if(M(i))return i;var s=t==="horizontal"?n:r,o=s.scale.domain();if(s.type==="number"){var c=Math.max(o[0],o[1]),u=Math.min(o[0],o[1]);return i==="dataMin"?u:i==="dataMax"||c<0?c:Math.max(Math.min(o[0],o[1]),0)}return i==="dataMin"?o[0]:i==="dataMax"?o[1]:o[0]};function ei(t){var{areaSettings:{connectNulls:e,baseValue:a,dataKey:r},stackedData:n,layout:i,chartBaseValue:s,xAxis:o,yAxis:c,displayedData:u,dataStartIndex:d,xAxisTicks:v,yAxisTicks:p,bandSize:f}=t,y=n&&n.length,g=Qn(i,s,a,o,c),m=i==="horizontal",h=!1,P=u.map((x,j)=>{var I,O,E,D;if(y)D=n[d+j];else{var C=$(x,r);Array.isArray(C)?(D=C,h=!0):D=[g,C]}var k=(I=(O=D)===null||O===void 0?void 0:O[1])!==null&&I!==void 0?I:null,w=k==null||y&&!e&&$(x,r)==null;if(m){var N;return{x:pe({axis:o,ticks:v,bandSize:f,entry:x,index:j}),y:w?null:(N=c.scale.map(k))!==null&&N!==void 0?N:null,value:D,payload:x}}return{x:w?null:(E=o.scale.map(k))!==null&&E!==void 0?E:null,y:pe({axis:c,ticks:p,bandSize:f,entry:x,index:j}),value:D,payload:x}}),b;return y||h?b=P.map(x=>{var j,I=Array.isArray(x.value)?x.value[0]:null;if(m){var O;return{x:x.x,y:I!=null&&x.y!=null&&(O=c.scale.map(I))!==null&&O!==void 0?O:null,payload:x.payload}}return{x:I!=null&&(j=o.scale.map(I))!==null&&j!==void 0?j:null,y:x.y,payload:x.payload}}):b=m?c.scale.map(g):o.scale.map(g),{points:P,baseLine:b??0,isRange:h}}function ti(t){var e=H(t,qt),a=ge();return l.createElement(Ce,{id:e.id,type:"area"},r=>l.createElement(l.Fragment,null,l.createElement(bt,{legendPayload:zn(e)}),l.createElement(Fn,{dataKey:e.dataKey,data:e.data,stroke:e.stroke,strokeWidth:e.strokeWidth,fill:e.fill,name:e.name,hide:e.hide,unit:e.unit,tooltipType:e.tooltipType,id:r}),l.createElement(xt,{type:"area",id:r,data:e.data,dataKey:e.dataKey,xAxisId:e.xAxisId,yAxisId:e.yAxisId,zAxisId:0,stackId:Fa(e.stackId),hide:e.hide,barSize:void 0,baseValue:e.baseValue,isPanorama:a,connectNulls:e.connectNulls}),l.createElement(Jn,G({},e,{id:r}))))}var Zt=l.memo(ti,gt);Zt.displayName="Area";var ai=["axis"],ri=l.forwardRef((t,e)=>l.createElement(Dt,{chartName:"LineChart",defaultTooltipEventType:"axis",validateTooltipEventTypes:ai,tooltipPayloadSearcher:We,categoricalChartProps:t,ref:e}));function ni(t){var e=Ya();return l.useEffect(()=>{e(Ha(t))},[e,t]),null}var ii=["layout"];function we(){return we=Object.assign?Object.assign.bind():function(t){for(var e=1;e<arguments.length;e++){var a=arguments[e];for(var r in a)({}).hasOwnProperty.call(a,r)&&(t[r]=a[r])}return t},we.apply(null,arguments)}function li(t,e){if(t==null)return{};var a,r,n=oi(t,e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(t);for(r=0;r<i.length;r++)a=i[r],e.indexOf(a)===-1&&{}.propertyIsEnumerable.call(t,a)&&(n[a]=t[a])}return n}function oi(t,e){if(t==null)return{};var a={};for(var r in t)if({}.hasOwnProperty.call(t,r)){if(e.indexOf(r)!==-1)continue;a[r]=t[r]}return a}var si={top:5,right:5,bottom:5,left:5},Jt={accessibilityLayer:!0,stackOffset:"none",barCategoryGap:"10%",barGap:4,margin:si,reverseStackOrder:!1,syncMethod:"index",layout:"radial",responsive:!1,cx:"50%",cy:"50%",innerRadius:0,outerRadius:"80%"},ci=l.forwardRef(function(e,a){var r,n=H(e.categoricalChartProps,Jt),{layout:i}=n,s=li(n,ii),{chartName:o,defaultTooltipEventType:c,validateTooltipEventTypes:u,tooltipPayloadSearcher:d}=e,v={chartName:o,defaultTooltipEventType:c,validateTooltipEventTypes:u,tooltipPayloadSearcher:d,eventEmitter:void 0};return l.createElement(qa,{preloadedState:{options:v},reduxStoreName:(r=n.id)!==null&&r!==void 0?r:o},l.createElement(Za,{chartData:n.data}),l.createElement(Ja,{layout:i,margin:n.margin}),l.createElement(Qa,{baseValue:void 0,accessibilityLayer:n.accessibilityLayer,barCategoryGap:n.barCategoryGap,maxBarSize:n.maxBarSize,stackOffset:n.stackOffset,barGap:n.barGap,barSize:n.barSize,syncId:n.syncId,syncMethod:n.syncMethod,className:n.className,reverseStackOrder:n.reverseStackOrder}),l.createElement(ni,{cx:n.cx,cy:n.cy,startAngle:n.startAngle,endAngle:n.endAngle,innerRadius:n.innerRadius,outerRadius:n.outerRadius}),l.createElement(er,we({},s,{ref:a})))});function at(t,e){var a=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter(function(n){return Object.getOwnPropertyDescriptor(t,n).enumerable})),a.push.apply(a,r)}return a}function rt(t){for(var e=1;e<arguments.length;e++){var a=arguments[e]!=null?arguments[e]:{};e%2?at(Object(a),!0).forEach(function(r){ui(t,r,a[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(a)):at(Object(a)).forEach(function(r){Object.defineProperty(t,r,Object.getOwnPropertyDescriptor(a,r))})}return t}function ui(t,e,a){return(e=di(e))in t?Object.defineProperty(t,e,{value:a,enumerable:!0,configurable:!0,writable:!0}):t[e]=a,t}function di(t){var e=pi(t,"string");return typeof e=="symbol"?e:e+""}function pi(t,e){if(typeof t!="object"||!t)return t;var a=t[Symbol.toPrimitive];if(a!==void 0){var r=a.call(t,e);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(t)}var vi=["item"],fi=rt(rt({},Jt),{},{layout:"centric",startAngle:0,endAngle:360}),nt=l.forwardRef((t,e)=>{var a=H(t,fi);return l.createElement(ci,{chartName:"PieChart",defaultTooltipEventType:"item",validateTooltipEventTypes:vi,tooltipPayloadSearcher:We,categoricalChartProps:a,ref:e})}),mi=["axis"],hi=l.forwardRef((t,e)=>l.createElement(Dt,{chartName:"AreaChart",defaultTooltipEventType:"axis",validateTooltipEventTypes:mi,tooltipPayloadSearcher:We,categoricalChartProps:t,ref:e}));const z=(...t)=>t.filter(Boolean).join(" "),yi={light:"",dark:".dark"},Qt=l.createContext(null);function ea(){const t=l.useContext(Qt);if(!t)throw new Error("useChart must be used within a <ChartContainer />");return t}function it({id:t,className:e,children:a,config:r,...n}){const i=l.useId(),s=`chart-${t||i.replace(/:/g,"")}`;return A.jsx(Qt.Provider,{value:{config:r},children:A.jsxs("div",{"data-slot":"chart","data-chart":s,className:z("flex w-full h-[350px] justify-center text-xs [&_.recharts-cartesian-axis-tick_text]:fill-muted-foreground",e),...n,children:[A.jsx(gi,{id:s,config:r}),A.jsx(rr,{width:"100%",height:"100%",children:a})]})})}const gi=({id:t,config:e})=>{const a=Object.entries(e).filter(([,r])=>r.theme||r.color);return a.length?A.jsx("style",{dangerouslySetInnerHTML:{__html:Object.entries(yi).map(([r,n])=>`
|
|
2
|
+
${n} [data-chart=${t}] {
|
|
3
|
+
${a.map(([i,s])=>{var c;const o=((c=s.theme)==null?void 0:c[r])||s.color;return o?` --color-${i}: ${o};`:null}).join(`
|
|
4
|
+
`)}
|
|
5
|
+
}
|
|
6
|
+
`).join(`
|
|
7
|
+
`)}}):null},lt=tr;function ot({active:t,payload:e,className:a,indicator:r="dot",hideLabel:n=!1,hideIndicator:i=!1,label:s,labelFormatter:o,labelClassName:c,formatter:u,color:d,nameKey:v,labelKey:p}){const{config:f}=ea(),y=l.useMemo(()=>{var x;if(n||!(e!=null&&e.length))return null;const[m]=e,h=`${p||(m==null?void 0:m.dataKey)||(m==null?void 0:m.name)||"value"}`,P=De(f,m,h),b=!p&&typeof s=="string"?((x=f[s])==null?void 0:x.label)||s:P==null?void 0:P.label;return o?A.jsx("div",{className:z("font-medium",c),children:o(b,e)}):b?A.jsx("div",{className:z("font-medium",c),children:b}):null},[s,o,e,n,c,f,p]);if(!t||!(e!=null&&e.length))return null;const g=e.length===1&&r!=="dot";return A.jsxs("div",{className:z("border-border/50 bg-background grid min-w-[8rem] items-start gap-1.5 rounded-lg border px-2.5 py-1.5 text-xs shadow-xl",a),children:[g?null:y,A.jsx("div",{className:"grid gap-1.5",children:e.filter(m=>m.type!=="none").map((m,h)=>{const P=`${v||m.name||m.dataKey||"value"}`,b=De(f,m,P),x=d||m.payload.fill||m.color;return A.jsx("div",{className:z("[&>svg]:text-muted-foreground flex w-full flex-wrap items-stretch gap-2 [&>svg]:h-2.5 [&>svg]:w-2.5",r==="dot"?"items-center":""),children:u&&(m==null?void 0:m.value)!==void 0&&m.name?u(m.value,m.name,m,h,m.payload):A.jsxs(A.Fragment,{children:[b!=null&&b.icon?A.jsx(b.icon,{}):!i&&A.jsx("div",{className:z("shrink-0 rounded-[2px] border-(--color-border) bg-(--color-bg)",r==="dot"?"h-2.5 w-2.5":"",r==="line"?"w-1":"",r==="dashed"?"w-0 border-[1.5px] border-dashed bg-transparent":"",g&&r==="dashed"?"my-0.5":""),style:{"--color-bg":x,"--color-border":x}}),A.jsxs("div",{className:z("flex flex-1 justify-between leading-none",g?"items-end":"items-center"),children:[A.jsxs("div",{className:"grid gap-1.5",children:[g?y:null,A.jsx("span",{className:"text-muted-foreground",children:(b==null?void 0:b.label)||m.name})]}),m.value&&A.jsx("span",{className:"text-foreground font-mono font-medium tabular-nums",children:m.value.toLocaleString()})]})]})},m.dataKey)})})]})}const st=ar;function ct({className:t,hideIcon:e=!1,payload:a,verticalAlign:r="bottom",nameKey:n}){const{config:i}=ea();return a!=null&&a.length?A.jsx("div",{className:z("flex items-center justify-center gap-4",r==="top"?"pb-3":"pt-3",t),children:a.filter(s=>s.type!=="none").map(s=>{const o=`${n||s.dataKey||"value"}`,c=De(i,s,o);return A.jsxs("div",{className:z("[&>svg]:text-muted-foreground flex items-center gap-1.5 [&>svg]:h-3 [&>svg]:w-3"),children:[c!=null&&c.icon&&!e?A.jsx(c.icon,{}):A.jsx("div",{className:"h-2 w-2 shrink-0 rounded-[2px]",style:{backgroundColor:s.color}}),c==null?void 0:c.label]},s.value)})}):null}function De(t,e,a){if(typeof e!="object"||e===null)return;const r="payload"in e&&typeof e.payload=="object"&&e.payload!==null?e.payload:void 0;let n=a;return a in e&&typeof e[a]=="string"?n=e[a]:r&&a in r&&typeof r[a]=="string"&&(n=r[a]),n in t?t[n]:t[a]}const bi="hsl(var(--primary))",xi={slate:"#64748b",gray:"#6b7280",zinc:"#71717a",neutral:"#737373",stone:"#78716c",red:"#ef4444",orange:"#f97316",amber:"#f59e0b",yellow:"#eab308",lime:"#84cc16",green:"#22c55e",emerald:"#10b981",teal:"#14b8a6",cyan:"#06b6d4",sky:"#0ea5e9",blue:"#3b82f6",indigo:"#6366f1",violet:"#8b5cf6",purple:"#a855f7",fuchsia:"#d946ef",pink:"#ec4899",rose:"#f43f5e"},ut=t=>xi[t]||t;function Ei({chartType:t="bar",data:e=[],config:a={},xAxisKey:r="name",series:n=[],className:i=""}){var o;const s={bar:Ge,line:ri,area:hi,pie:nt}[t]||Ge;return console.log("📈 Rendering Chart:",{chartType:t,dataLength:e.length,config:a,series:n,xAxisKey:r}),t==="pie"?A.jsx(it,{config:a,className:i,children:A.jsxs(nt,{children:[A.jsx(lt,{cursor:!1,content:A.jsx(ot,{hideLabel:!0})}),A.jsx(Nt,{data:e,dataKey:((o=n[0])==null?void 0:o.dataKey)||"value",nameKey:r||"name",innerRadius:60,strokeWidth:5,paddingAngle:2,outerRadius:80,children:e.map((c,u)=>{var v;let d=(v=a[c[r]])==null?void 0:v.color;if(!d){const p=["hsl(var(--chart-1))","hsl(var(--chart-2))","hsl(var(--chart-3))","hsl(var(--chart-4))","hsl(var(--chart-5))"];d=p[u%p.length]}return A.jsx(Se,{fill:ut(d)},`cell-${u}`)})}),A.jsx(st,{content:A.jsx(ct,{nameKey:r})})]})}):A.jsx(it,{config:a,className:i,children:A.jsxs(s,{data:e,children:[A.jsx(nr,{vertical:!1}),A.jsx(ir,{dataKey:r,tickLine:!1,tickMargin:10,axisLine:!1,tickFormatter:c=>c&&typeof c=="string"?c.slice(0,3):c}),A.jsx(lt,{content:A.jsx(ot,{})}),A.jsx(st,{content:A.jsx(ct,{})}),n.map(c=>{var d;const u=ut(((d=a[c.dataKey])==null?void 0:d.color)||bi);return t==="bar"?A.jsx(lr,{dataKey:c.dataKey,fill:u,radius:4},c.dataKey):t==="line"?A.jsx(zt,{type:"monotone",dataKey:c.dataKey,stroke:u,strokeWidth:2,dot:!1},c.dataKey):t==="area"?A.jsx(Zt,{type:"monotone",dataKey:c.dataKey,fill:u,stroke:u,fillOpacity:.4},c.dataKey):null})]})})}export{Ei as default};
|