@sckyzo/cosmos-charts 0.2.0 → 0.3.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/CHANGELOG.md +91 -0
- package/README.md +107 -22
- package/THIRD_PARTY_NOTICES.md +81 -0
- package/dist/BarChart.cjs +137 -0
- package/dist/BarChart.cjs.map +1 -0
- package/dist/BarChart.js +135 -0
- package/dist/BarChart.js.map +1 -0
- package/dist/BoxPlotChart.cjs +214 -0
- package/dist/BoxPlotChart.cjs.map +1 -0
- package/dist/BoxPlotChart.js +212 -0
- package/dist/BoxPlotChart.js.map +1 -0
- package/dist/BumpChart.cjs +328 -0
- package/dist/BumpChart.cjs.map +1 -0
- package/dist/BumpChart.js +326 -0
- package/dist/BumpChart.js.map +1 -0
- package/dist/CalendarChart.cjs +216 -0
- package/dist/CalendarChart.cjs.map +1 -0
- package/dist/CalendarChart.js +214 -0
- package/dist/CalendarChart.js.map +1 -0
- package/dist/DonutChart.cjs +122 -0
- package/dist/DonutChart.cjs.map +1 -0
- package/dist/DonutChart.js +120 -0
- package/dist/DonutChart.js.map +1 -0
- package/dist/FunnelChart.cjs +422 -0
- package/dist/FunnelChart.cjs.map +1 -0
- package/dist/FunnelChart.js +420 -0
- package/dist/FunnelChart.js.map +1 -0
- package/dist/GradientRadial.cjs +51 -0
- package/dist/GradientRadial.cjs.map +1 -0
- package/dist/GradientRadial.js +49 -0
- package/dist/GradientRadial.js.map +1 -0
- package/dist/HeatmapChart.cjs +146 -0
- package/dist/HeatmapChart.cjs.map +1 -0
- package/dist/HeatmapChart.js +144 -0
- package/dist/HeatmapChart.js.map +1 -0
- package/dist/LineAreaChart.cjs +98 -0
- package/dist/LineAreaChart.cjs.map +1 -0
- package/dist/LineAreaChart.js +96 -0
- package/dist/LineAreaChart.js.map +1 -0
- package/dist/MixedChart.cjs +195 -0
- package/dist/MixedChart.cjs.map +1 -0
- package/dist/MixedChart.js +193 -0
- package/dist/MixedChart.js.map +1 -0
- package/dist/RadarChart.cjs +109 -0
- package/dist/RadarChart.cjs.map +1 -0
- package/dist/RadarChart.js +107 -0
- package/dist/RadarChart.js.map +1 -0
- package/dist/RadialBarChart.cjs +99 -0
- package/dist/RadialBarChart.cjs.map +1 -0
- package/dist/RadialBarChart.js +97 -0
- package/dist/RadialBarChart.js.map +1 -0
- package/dist/RangeBarChart.cjs +218 -0
- package/dist/RangeBarChart.cjs.map +1 -0
- package/dist/RangeBarChart.js +216 -0
- package/dist/RangeBarChart.js.map +1 -0
- package/dist/RealtimeChart.cjs +173 -0
- package/dist/RealtimeChart.cjs.map +1 -0
- package/dist/RealtimeChart.js +171 -0
- package/dist/RealtimeChart.js.map +1 -0
- package/dist/ScatterChart.cjs +134 -0
- package/dist/ScatterChart.cjs.map +1 -0
- package/dist/ScatterChart.js +131 -0
- package/dist/ScatterChart.js.map +1 -0
- package/dist/SemiCircleGauge.cjs +142 -0
- package/dist/SemiCircleGauge.cjs.map +1 -0
- package/dist/SemiCircleGauge.js +140 -0
- package/dist/SemiCircleGauge.js.map +1 -0
- package/dist/Sparkline.cjs +117 -0
- package/dist/Sparkline.cjs.map +1 -0
- package/dist/Sparkline.js +115 -0
- package/dist/Sparkline.js.map +1 -0
- package/dist/StrokedGauge.cjs +94 -0
- package/dist/StrokedGauge.cjs.map +1 -0
- package/dist/StrokedGauge.js +92 -0
- package/dist/StrokedGauge.js.map +1 -0
- package/dist/TreemapChart.cjs +263 -0
- package/dist/TreemapChart.cjs.map +1 -0
- package/dist/TreemapChart.js +261 -0
- package/dist/TreemapChart.js.map +1 -0
- package/dist/WaterfallChart.cjs +235 -0
- package/dist/WaterfallChart.cjs.map +1 -0
- package/dist/WaterfallChart.js +233 -0
- package/dist/WaterfallChart.js.map +1 -0
- package/dist/WorldMap.cjs +2088 -0
- package/dist/WorldMap.cjs.map +1 -0
- package/dist/WorldMap.js +603 -0
- package/dist/WorldMap.js.map +1 -0
- package/dist/chunk-3N43QT36.js +60 -0
- package/dist/chunk-3N43QT36.js.map +1 -0
- package/dist/chunk-5C2RLJYZ.js +11 -0
- package/dist/chunk-5C2RLJYZ.js.map +1 -0
- package/dist/chunk-6ALKZLN2.js +127 -0
- package/dist/chunk-6ALKZLN2.js.map +1 -0
- package/dist/chunk-6BKLL7LZ.cjs +30 -0
- package/dist/chunk-6BKLL7LZ.cjs.map +1 -0
- package/dist/chunk-6NRRABPF.cjs +64 -0
- package/dist/chunk-6NRRABPF.cjs.map +1 -0
- package/dist/chunk-AAYHG7YK.cjs +30 -0
- package/dist/chunk-AAYHG7YK.cjs.map +1 -0
- package/dist/chunk-AOSO5QHL.js +19 -0
- package/dist/chunk-AOSO5QHL.js.map +1 -0
- package/dist/chunk-BFEDLXVW.js +12 -0
- package/dist/chunk-BFEDLXVW.js.map +1 -0
- package/dist/chunk-DBZQI4HM.cjs +14 -0
- package/dist/chunk-DBZQI4HM.cjs.map +1 -0
- package/dist/chunk-F2PMFYJ5.cjs +40 -0
- package/dist/chunk-F2PMFYJ5.cjs.map +1 -0
- package/dist/chunk-FUZW3H5X.js +38 -0
- package/dist/chunk-FUZW3H5X.js.map +1 -0
- package/dist/chunk-GDZLYYL2.js +27 -0
- package/dist/chunk-GDZLYYL2.js.map +1 -0
- package/dist/chunk-GVTMZYOM.cjs +30 -0
- package/dist/chunk-GVTMZYOM.cjs.map +1 -0
- package/dist/chunk-GZRMVE4X.cjs +131 -0
- package/dist/chunk-GZRMVE4X.cjs.map +1 -0
- package/dist/chunk-HMH6DI7U.js +27 -0
- package/dist/chunk-HMH6DI7U.js.map +1 -0
- package/dist/chunk-ICL5K2CW.js +280 -0
- package/dist/chunk-ICL5K2CW.js.map +1 -0
- package/dist/chunk-IW6EWB26.cjs +21 -0
- package/dist/chunk-IW6EWB26.cjs.map +1 -0
- package/dist/chunk-K3R7JGOW.cjs +18 -0
- package/dist/chunk-K3R7JGOW.cjs.map +1 -0
- package/dist/chunk-LT3UC65O.cjs +68 -0
- package/dist/chunk-LT3UC65O.cjs.map +1 -0
- package/dist/chunk-MN4CDVOS.cjs +63 -0
- package/dist/chunk-MN4CDVOS.cjs.map +1 -0
- package/dist/chunk-OCD6JIIX.js +23 -0
- package/dist/chunk-OCD6JIIX.js.map +1 -0
- package/dist/chunk-RILUG7JB.js +44 -0
- package/dist/chunk-RILUG7JB.js.map +1 -0
- package/dist/chunk-RLHGPHC7.cjs +51 -0
- package/dist/chunk-RLHGPHC7.cjs.map +1 -0
- package/dist/chunk-SGG7XKOY.js +58 -0
- package/dist/chunk-SGG7XKOY.js.map +1 -0
- package/dist/chunk-T3K6Q34U.cjs +82 -0
- package/dist/chunk-T3K6Q34U.cjs.map +1 -0
- package/dist/chunk-TPH5T3DA.cjs +282 -0
- package/dist/chunk-TPH5T3DA.cjs.map +1 -0
- package/dist/chunk-TYQWZR3S.cjs +13 -0
- package/dist/chunk-TYQWZR3S.cjs.map +1 -0
- package/dist/chunk-UATB2IRY.js +51 -0
- package/dist/chunk-UATB2IRY.js.map +1 -0
- package/dist/chunk-UJIV5PVI.js +13 -0
- package/dist/chunk-UJIV5PVI.js.map +1 -0
- package/dist/chunk-URNXLVSK.js +44 -0
- package/dist/chunk-URNXLVSK.js.map +1 -0
- package/dist/chunk-VIOSQN4Z.js +79 -0
- package/dist/chunk-VIOSQN4Z.js.map +1 -0
- package/dist/chunk-X3YZP5WF.cjs +46 -0
- package/dist/chunk-X3YZP5WF.cjs.map +1 -0
- package/dist/chunk-YWYF5CCJ.js +61 -0
- package/dist/chunk-YWYF5CCJ.js.map +1 -0
- package/dist/chunk-Z4LZFMDH.cjs +60 -0
- package/dist/chunk-Z4LZFMDH.cjs.map +1 -0
- package/dist/index.cjs +154 -1166
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +470 -80
- package/dist/index.d.ts +470 -80
- package/dist/index.js +23 -1144
- package/dist/index.js.map +1 -1
- package/dist/theme.cjs +88 -0
- package/dist/theme.cjs.map +1 -0
- package/dist/theme.js +84 -0
- package/dist/theme.js.map +1 -0
- package/package.json +23 -12
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { clampTo, gaugeName } from './chunk-OCD6JIIX.js';
|
|
3
|
+
import { CenterText } from './chunk-URNXLVSK.js';
|
|
4
|
+
import { ANIMATION } from './chunk-5C2RLJYZ.js';
|
|
5
|
+
import { frameProps } from './chunk-3N43QT36.js';
|
|
6
|
+
import { TRACK } from './chunk-UATB2IRY.js';
|
|
7
|
+
import { RadialBarChart, PolarAngleAxis, RadialBar } from 'recharts';
|
|
8
|
+
import { jsxs, jsx } from 'react/jsx-runtime';
|
|
9
|
+
|
|
10
|
+
var RadialGauge = ({
|
|
11
|
+
value,
|
|
12
|
+
label,
|
|
13
|
+
min,
|
|
14
|
+
max,
|
|
15
|
+
text,
|
|
16
|
+
ariaLabel,
|
|
17
|
+
hollow,
|
|
18
|
+
fill,
|
|
19
|
+
shape,
|
|
20
|
+
defs,
|
|
21
|
+
children,
|
|
22
|
+
height,
|
|
23
|
+
width
|
|
24
|
+
}) => /* @__PURE__ */ jsxs(
|
|
25
|
+
RadialBarChart,
|
|
26
|
+
{
|
|
27
|
+
...frameProps({
|
|
28
|
+
height,
|
|
29
|
+
width,
|
|
30
|
+
ariaLabel: gaugeName(ariaLabel ?? (label || "Gauge"), text),
|
|
31
|
+
keyboard: false
|
|
32
|
+
}),
|
|
33
|
+
data: [{ name: label, value: clampTo(value, min, max) }],
|
|
34
|
+
startAngle: 90,
|
|
35
|
+
endAngle: -270,
|
|
36
|
+
innerRadius: hollow,
|
|
37
|
+
outerRadius: "100%",
|
|
38
|
+
barCategoryGap: 0,
|
|
39
|
+
margin: { top: 0, right: 0, bottom: 0, left: 0 },
|
|
40
|
+
children: [
|
|
41
|
+
defs && /* @__PURE__ */ jsx("defs", { children: defs }),
|
|
42
|
+
/* @__PURE__ */ jsx(PolarAngleAxis, { type: "number", domain: [min, max], tick: false, axisLine: false }),
|
|
43
|
+
/* @__PURE__ */ jsx(
|
|
44
|
+
RadialBar,
|
|
45
|
+
{
|
|
46
|
+
dataKey: "value",
|
|
47
|
+
fill,
|
|
48
|
+
shape,
|
|
49
|
+
background: shape ? false : { fill: TRACK },
|
|
50
|
+
...ANIMATION
|
|
51
|
+
}
|
|
52
|
+
),
|
|
53
|
+
/* @__PURE__ */ jsx(CenterText, { value: text, label, valueSize: "var(--text-3xl, 1.875rem)" }),
|
|
54
|
+
children
|
|
55
|
+
]
|
|
56
|
+
}
|
|
57
|
+
);
|
|
58
|
+
|
|
59
|
+
export { RadialGauge };
|
|
60
|
+
//# sourceMappingURL=chunk-YWYF5CCJ.js.map
|
|
61
|
+
//# sourceMappingURL=chunk-YWYF5CCJ.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/core/RadialGauge.tsx"],"names":[],"mappings":";;;;;;;;;AAkCO,IAAM,cAAc,CAAC;AAAA,EAC1B,KAAA;AAAA,EACA,KAAA;AAAA,EACA,GAAA;AAAA,EACA,GAAA;AAAA,EACA,IAAA;AAAA,EACA,SAAA;AAAA,EACA,MAAA;AAAA,EACA,IAAA;AAAA,EACA,KAAA;AAAA,EACA,IAAA;AAAA,EACA,QAAA;AAAA,EACA,MAAA;AAAA,EACA;AACF,CAAA,qBACE,IAAA;AAAA,EAAC,cAAA;AAAA,EAAA;AAAA,IACE,GAAG,UAAA,CAAW;AAAA,MACb,MAAA;AAAA,MACA,KAAA;AAAA,MACA,SAAA,EAAW,SAAA,CAAU,SAAA,KAAc,KAAA,IAAS,UAAU,IAAI,CAAA;AAAA,MAC1D,QAAA,EAAU;AAAA,KACX,CAAA;AAAA,IACD,IAAA,EAAM,CAAC,EAAE,IAAA,EAAM,KAAA,EAAO,KAAA,EAAO,OAAA,CAAQ,KAAA,EAAO,GAAA,EAAK,GAAG,CAAA,EAAG,CAAA;AAAA,IACvD,UAAA,EAAY,EAAA;AAAA,IACZ,QAAA,EAAU,IAAA;AAAA,IACV,WAAA,EAAa,MAAA;AAAA,IACb,WAAA,EAAY,MAAA;AAAA,IAEZ,cAAA,EAAgB,CAAA;AAAA,IAChB,MAAA,EAAQ,EAAE,GAAA,EAAK,CAAA,EAAG,OAAO,CAAA,EAAG,MAAA,EAAQ,CAAA,EAAG,IAAA,EAAM,CAAA,EAAE;AAAA,IAE9C,QAAA,EAAA;AAAA,MAAA,IAAA,oBAAQ,GAAA,CAAC,UAAM,QAAA,EAAA,IAAA,EAAK,CAAA;AAAA,sBACrB,GAAA,CAAC,cAAA,EAAA,EAAe,IAAA,EAAK,QAAA,EAAS,MAAA,EAAQ,CAAC,GAAA,EAAK,GAAG,CAAA,EAAG,IAAA,EAAM,KAAA,EAAO,QAAA,EAAU,KAAA,EAAO,CAAA;AAAA,sBAChF,GAAA;AAAA,QAAC,SAAA;AAAA,QAAA;AAAA,UACC,OAAA,EAAQ,OAAA;AAAA,UACR,IAAA;AAAA,UACA,KAAA;AAAA,UAGA,UAAA,EAAY,KAAA,GAAQ,KAAA,GAAQ,EAAE,MAAM,KAAA,EAAM;AAAA,UACzC,GAAG;AAAA;AAAA,OACN;AAAA,0BACC,UAAA,EAAA,EAAW,KAAA,EAAO,IAAA,EAAM,KAAA,EAAc,WAAU,2BAAA,EAA4B,CAAA;AAAA,MAC5E;AAAA;AAAA;AACH","file":"chunk-YWYF5CCJ.js","sourcesContent":["import type { ReactElement, ReactNode } from 'react';\nimport { PolarAngleAxis, RadialBar, RadialBarChart } from 'recharts';\nimport type { SectorProps } from 'recharts';\nimport { ANIMATION } from './animation';\nimport { TRACK } from './colors';\nimport { frameProps } from './frame';\nimport { clampTo, gaugeName } from './gauge';\nimport { CenterText } from './radial';\nimport type { ChartSize } from '../types';\n\ntype RadialGaugeProps = ChartSize & {\n value: number;\n label: string;\n min: number;\n max: number;\n /** The value, formatted: the text in the middle and the end of the name. */\n text: string;\n ariaLabel?: string;\n /** The share of the radius the ring leaves empty in the middle. */\n hollow: string;\n /** The fill of the arc: a color, or a `url(#…)` to what `defs` defines. */\n fill?: string;\n /** Draws the arc, and the track under it, in place of the filled sectors. */\n shape?: (props: SectorProps) => ReactElement;\n /** What the chart defines for `fill`, such as a gradient. */\n defs?: ReactNode;\n children?: ReactNode;\n};\n\n/**\n * A full circle with one arc from the top, clockwise, on a neutral track, the\n * value in the middle over its label: the frame of `GradientRadial` and\n * `StrokedGauge`, which draw the arc and the track their own way. It is an image (out of the tab order) named by its value.\n */\nexport const RadialGauge = ({\n value,\n label,\n min,\n max,\n text,\n ariaLabel,\n hollow,\n fill,\n shape,\n defs,\n children,\n height,\n width,\n}: RadialGaugeProps) => (\n <RadialBarChart\n {...frameProps({\n height,\n width,\n ariaLabel: gaugeName(ariaLabel ?? (label || 'Gauge'), text),\n keyboard: false,\n })}\n data={[{ name: label, value: clampTo(value, min, max) }]}\n startAngle={90}\n endAngle={-270}\n innerRadius={hollow}\n outerRadius=\"100%\"\n // The arc is as thick as the ring: no gap between the bar and its band.\n barCategoryGap={0}\n margin={{ top: 0, right: 0, bottom: 0, left: 0 }}\n >\n {defs && <defs>{defs}</defs>}\n <PolarAngleAxis type=\"number\" domain={[min, max]} tick={false} axisLine={false} />\n <RadialBar\n dataKey=\"value\"\n fill={fill}\n shape={shape}\n // Recharts draws a background sector of its own and cannot restyle it: a\n // `shape` that draws the track too hides it.\n background={shape ? false : { fill: TRACK }}\n {...ANIMATION}\n />\n <CenterText value={text} label={label} valueSize=\"var(--text-3xl, 1.875rem)\" />\n {children}\n </RadialBarChart>\n);\n"]}
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
'use strict';
|
|
3
|
+
|
|
4
|
+
var chunkRLHGPHC7_cjs = require('./chunk-RLHGPHC7.cjs');
|
|
5
|
+
var chunkLT3UC65O_cjs = require('./chunk-LT3UC65O.cjs');
|
|
6
|
+
var recharts = require('recharts');
|
|
7
|
+
var jsxRuntime = require('react/jsx-runtime');
|
|
8
|
+
|
|
9
|
+
var DASH = "6 4";
|
|
10
|
+
var BAND_LAYER = 50;
|
|
11
|
+
var labelOf = (value, position) => ({
|
|
12
|
+
value,
|
|
13
|
+
position,
|
|
14
|
+
className: "recharts-reference-label",
|
|
15
|
+
fill: chunkLT3UC65O_cjs.MUTED,
|
|
16
|
+
style: { fontSize: chunkRLHGPHC7_cjs.TEXT_SIZE }
|
|
17
|
+
});
|
|
18
|
+
var referenceMarks = ({
|
|
19
|
+
referenceLines = [],
|
|
20
|
+
referenceBands = [],
|
|
21
|
+
axis = "y",
|
|
22
|
+
axisId
|
|
23
|
+
}) => {
|
|
24
|
+
const onAxis = axisId === void 0 ? {} : { [`${axis}AxisId`]: axisId };
|
|
25
|
+
return [
|
|
26
|
+
...referenceBands.map((band, i) => {
|
|
27
|
+
const [low, high] = [Math.min(band.from, band.to), Math.max(band.from, band.to)];
|
|
28
|
+
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
29
|
+
recharts.ReferenceArea,
|
|
30
|
+
{
|
|
31
|
+
...{ [`${axis}1`]: low, [`${axis}2`]: high },
|
|
32
|
+
...onAxis,
|
|
33
|
+
fill: chunkLT3UC65O_cjs.INTENT_COLORS[band.intent ?? "neutral"],
|
|
34
|
+
fillOpacity: 0.14,
|
|
35
|
+
ifOverflow: "extendDomain",
|
|
36
|
+
zIndex: BAND_LAYER,
|
|
37
|
+
label: band.label ? labelOf(band.label, "insideTopLeft") : void 0
|
|
38
|
+
},
|
|
39
|
+
`band-${i}`
|
|
40
|
+
);
|
|
41
|
+
}),
|
|
42
|
+
...referenceLines.map((line, i) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
43
|
+
recharts.ReferenceLine,
|
|
44
|
+
{
|
|
45
|
+
...{ [axis]: line.value },
|
|
46
|
+
...onAxis,
|
|
47
|
+
stroke: chunkLT3UC65O_cjs.INTENT_COLORS[line.intent ?? "neutral"],
|
|
48
|
+
strokeWidth: 1.5,
|
|
49
|
+
strokeDasharray: line.dashed ? DASH : void 0,
|
|
50
|
+
ifOverflow: "extendDomain",
|
|
51
|
+
label: line.label ? labelOf(line.label, "insideTopRight") : void 0
|
|
52
|
+
},
|
|
53
|
+
`line-${i}`
|
|
54
|
+
))
|
|
55
|
+
];
|
|
56
|
+
};
|
|
57
|
+
|
|
58
|
+
exports.referenceMarks = referenceMarks;
|
|
59
|
+
//# sourceMappingURL=chunk-Z4LZFMDH.cjs.map
|
|
60
|
+
//# sourceMappingURL=chunk-Z4LZFMDH.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/core/reference.tsx"],"names":["MUTED","TEXT_SIZE","jsx","ReferenceArea","INTENT_COLORS","ReferenceLine"],"mappings":";;;;;;;;AAYA,IAAM,IAAA,GAAO,KAAA;AAEb,IAAM,UAAA,GAAa,EAAA;AAInB,IAAM,OAAA,GAAU,CAAC,KAAA,EAAe,QAAA,MAAkD;AAAA,EAChF,KAAA;AAAA,EACA,QAAA;AAAA,EACA,SAAA,EAAW,0BAAA;AAAA,EACX,IAAA,EAAMA,uBAAA;AAAA,EACN,KAAA,EAAO,EAAE,QAAA,EAAUC,2BAAA;AACrB,CAAA,CAAA;AASO,IAAM,iBAAiB,CAAC;AAAA,EAC7B,iBAAiB,EAAC;AAAA,EAClB,iBAAiB,EAAC;AAAA,EAClB,IAAA,GAAO,GAAA;AAAA,EACP;AACF,CAAA,KAAwB;AACtB,EAAA,MAAM,MAAA,GAAS,MAAA,KAAW,MAAA,GAAY,EAAC,GAAI,EAAE,CAAC,CAAA,EAAG,IAAI,CAAA,MAAA,CAAQ,GAAG,MAAA,EAAO;AACvE,EAAA,OAAO;AAAA,IACL,GAAG,cAAA,CAAe,GAAA,CAAI,CAAC,MAAM,CAAA,KAAM;AACjC,MAAA,MAAM,CAAC,GAAA,EAAK,IAAI,IAAI,CAAC,IAAA,CAAK,IAAI,IAAA,CAAK,IAAA,EAAM,IAAA,CAAK,EAAE,GAAG,IAAA,CAAK,GAAA,CAAI,KAAK,IAAA,EAAM,IAAA,CAAK,EAAE,CAAC,CAAA;AAC/E,MAAA,uBACEC,cAAA;AAAA,QAACC,sBAAA;AAAA,QAAA;AAAA,UAEE,GAAG,EAAE,CAAC,CAAA,EAAG,IAAI,CAAA,CAAA,CAAG,GAAG,GAAA,EAAK,CAAC,CAAA,EAAG,IAAI,CAAA,CAAA,CAAG,GAAG,IAAA,EAAK;AAAA,UAC3C,GAAG,MAAA;AAAA,UACJ,IAAA,EAAMC,+BAAA,CAAc,IAAA,CAAK,MAAA,IAAU,SAAS,CAAA;AAAA,UAC5C,WAAA,EAAa,IAAA;AAAA,UACb,UAAA,EAAW,cAAA;AAAA,UACX,MAAA,EAAQ,UAAA;AAAA,UACR,OAAO,IAAA,CAAK,KAAA,GAAQ,QAAQ,IAAA,CAAK,KAAA,EAAO,eAAe,CAAA,GAAI;AAAA,SAAA;AAAA,QAPtD,QAAQ,CAAC,CAAA;AAAA,OAQhB;AAAA,IAEJ,CAAC,CAAA;AAAA,IACD,GAAG,cAAA,CAAe,GAAA,CAAI,CAAC,MAAM,CAAA,qBAC3BF,cAAA;AAAA,MAACG,sBAAA;AAAA,MAAA;AAAA,QAEE,GAAG,EAAE,CAAC,IAAI,GAAG,KAAK,KAAA,EAAM;AAAA,QACxB,GAAG,MAAA;AAAA,QACJ,MAAA,EAAQD,+BAAA,CAAc,IAAA,CAAK,MAAA,IAAU,SAAS,CAAA;AAAA,QAC9C,WAAA,EAAa,GAAA;AAAA,QACb,eAAA,EAAiB,IAAA,CAAK,MAAA,GAAS,IAAA,GAAO,MAAA;AAAA,QACtC,UAAA,EAAW,cAAA;AAAA,QACX,OAAO,IAAA,CAAK,KAAA,GAAQ,QAAQ,IAAA,CAAK,KAAA,EAAO,gBAAgB,CAAA,GAAI;AAAA,OAAA;AAAA,MAPvD,QAAQ,CAAC,CAAA;AAAA,KASjB;AAAA,GACH;AACF","file":"chunk-Z4LZFMDH.cjs","sourcesContent":["import { ReferenceArea, ReferenceLine } from 'recharts';\nimport type { ChartReferenceProps } from '../types';\nimport { TEXT_SIZE } from './axes';\nimport { INTENT_COLORS, MUTED } from './colors';\n\ntype ReferenceOptions = ChartReferenceProps & {\n /** The axis the values are read on: `y` (default), or `x` on a chart of horizontal bars. */\n axis?: 'x' | 'y';\n /** The id of that axis, when the chart has several. */\n axisId?: string;\n};\n\nconst DASH = '6 4';\n// Behind the series (an area is at 100, a bar at 300) and above the grid.\nconst BAND_LAYER = 50;\n\n// Plain SVG text in the muted color: an amber or red label would not read on\n// the card in every theme, so the line and the band carry the intent.\nconst labelOf = (value: string, position: 'insideTopRight' | 'insideTopLeft') => ({\n value,\n position,\n className: 'recharts-reference-label',\n fill: MUTED,\n style: { fontSize: TEXT_SIZE },\n});\n\n/**\n * The `ReferenceArea`s then the `ReferenceLine`s of a chart's `referenceBands`\n * and `referenceLines`, to render inside it, before `children`. A mark outside\n * the data makes the axis reach it (`ifOverflow=\"extendDomain\"`) instead of\n * vanishing. Colors come from `INTENT_COLORS`, so a theme switch repaints\n * them; labels are text, not markup.\n */\nexport const referenceMarks = ({\n referenceLines = [],\n referenceBands = [],\n axis = 'y',\n axisId,\n}: ReferenceOptions) => {\n const onAxis = axisId === undefined ? {} : { [`${axis}AxisId`]: axisId };\n return [\n ...referenceBands.map((band, i) => {\n const [low, high] = [Math.min(band.from, band.to), Math.max(band.from, band.to)];\n return (\n <ReferenceArea\n key={`band-${i}`}\n {...{ [`${axis}1`]: low, [`${axis}2`]: high }}\n {...onAxis}\n fill={INTENT_COLORS[band.intent ?? 'neutral']}\n fillOpacity={0.14}\n ifOverflow=\"extendDomain\"\n zIndex={BAND_LAYER}\n label={band.label ? labelOf(band.label, 'insideTopLeft') : undefined}\n />\n );\n }),\n ...referenceLines.map((line, i) => (\n <ReferenceLine\n key={`line-${i}`}\n {...{ [axis]: line.value }}\n {...onAxis}\n stroke={INTENT_COLORS[line.intent ?? 'neutral']}\n strokeWidth={1.5}\n strokeDasharray={line.dashed ? DASH : undefined}\n ifOverflow=\"extendDomain\"\n label={line.label ? labelOf(line.label, 'insideTopRight') : undefined}\n />\n )),\n ];\n};\n"]}
|