@coinbase/cds-mobile-visualization 3.4.0-beta.9 → 3.6.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 +150 -0
- package/dts/chart/CartesianChart.d.ts +92 -7
- package/dts/chart/CartesianChart.d.ts.map +1 -1
- package/dts/chart/ChartContextBridge.d.ts.map +1 -1
- package/dts/chart/ChartProvider.d.ts +3 -0
- package/dts/chart/ChartProvider.d.ts.map +1 -1
- package/dts/chart/Path.d.ts +43 -13
- package/dts/chart/Path.d.ts.map +1 -1
- package/dts/chart/PeriodSelector.d.ts +20 -5
- package/dts/chart/PeriodSelector.d.ts.map +1 -1
- package/dts/chart/area/Area.d.ts +14 -11
- package/dts/chart/area/Area.d.ts.map +1 -1
- package/dts/chart/area/AreaChart.d.ts +33 -9
- package/dts/chart/area/AreaChart.d.ts.map +1 -1
- package/dts/chart/area/DottedArea.d.ts.map +1 -1
- package/dts/chart/area/GradientArea.d.ts.map +1 -1
- package/dts/chart/area/SolidArea.d.ts.map +1 -1
- package/dts/chart/axis/Axis.d.ts +22 -42
- package/dts/chart/axis/Axis.d.ts.map +1 -1
- package/dts/chart/axis/XAxis.d.ts +6 -0
- package/dts/chart/axis/XAxis.d.ts.map +1 -1
- package/dts/chart/axis/YAxis.d.ts +1 -0
- package/dts/chart/axis/YAxis.d.ts.map +1 -1
- package/dts/chart/bar/Bar.d.ts +59 -51
- package/dts/chart/bar/Bar.d.ts.map +1 -1
- package/dts/chart/bar/BarChart.d.ts +56 -11
- package/dts/chart/bar/BarChart.d.ts.map +1 -1
- package/dts/chart/bar/BarPlot.d.ts +2 -1
- package/dts/chart/bar/BarPlot.d.ts.map +1 -1
- package/dts/chart/bar/BarStack.d.ts +45 -20
- package/dts/chart/bar/BarStack.d.ts.map +1 -1
- package/dts/chart/bar/BarStackGroup.d.ts +2 -1
- package/dts/chart/bar/BarStackGroup.d.ts.map +1 -1
- package/dts/chart/bar/DefaultBar.d.ts.map +1 -1
- package/dts/chart/bar/DefaultBarStack.d.ts.map +1 -1
- package/dts/chart/bar/PercentageBarChart.d.ts +106 -0
- package/dts/chart/bar/PercentageBarChart.d.ts.map +1 -0
- package/dts/chart/bar/index.d.ts +1 -0
- package/dts/chart/bar/index.d.ts.map +1 -1
- package/dts/chart/gradient/Gradient.d.ts +5 -0
- package/dts/chart/gradient/Gradient.d.ts.map +1 -1
- package/dts/chart/index.d.ts +1 -0
- package/dts/chart/index.d.ts.map +1 -1
- package/dts/chart/legend/DefaultLegendEntry.d.ts +5 -0
- package/dts/chart/legend/DefaultLegendEntry.d.ts.map +1 -0
- package/dts/chart/legend/DefaultLegendShape.d.ts +5 -0
- package/dts/chart/legend/DefaultLegendShape.d.ts.map +1 -0
- package/dts/chart/legend/Legend.d.ts +168 -0
- package/dts/chart/legend/Legend.d.ts.map +1 -0
- package/dts/chart/legend/index.d.ts +4 -0
- package/dts/chart/legend/index.d.ts.map +1 -0
- package/dts/chart/line/DottedLine.d.ts.map +1 -1
- package/dts/chart/line/Line.d.ts +23 -19
- package/dts/chart/line/Line.d.ts.map +1 -1
- package/dts/chart/line/LineChart.d.ts +26 -9
- package/dts/chart/line/LineChart.d.ts.map +1 -1
- package/dts/chart/line/ReferenceLine.d.ts +1 -0
- package/dts/chart/line/ReferenceLine.d.ts.map +1 -1
- package/dts/chart/line/SolidLine.d.ts.map +1 -1
- package/dts/chart/point/Point.d.ts +26 -2
- package/dts/chart/point/Point.d.ts.map +1 -1
- package/dts/chart/scrubber/DefaultScrubberBeacon.d.ts +32 -2
- package/dts/chart/scrubber/DefaultScrubberBeacon.d.ts.map +1 -1
- package/dts/chart/scrubber/DefaultScrubberLabel.d.ts +2 -1
- package/dts/chart/scrubber/DefaultScrubberLabel.d.ts.map +1 -1
- package/dts/chart/scrubber/Scrubber.d.ts +86 -17
- package/dts/chart/scrubber/Scrubber.d.ts.map +1 -1
- package/dts/chart/scrubber/ScrubberAccessibilityView.d.ts +12 -0
- package/dts/chart/scrubber/ScrubberAccessibilityView.d.ts.map +1 -0
- package/dts/chart/scrubber/ScrubberBeaconGroup.d.ts +10 -0
- package/dts/chart/scrubber/ScrubberBeaconGroup.d.ts.map +1 -1
- package/dts/chart/scrubber/ScrubberBeaconLabelGroup.d.ts +16 -1
- package/dts/chart/scrubber/ScrubberBeaconLabelGroup.d.ts.map +1 -1
- package/dts/chart/scrubber/ScrubberProvider.d.ts.map +1 -1
- package/dts/chart/utils/axis.d.ts +45 -10
- package/dts/chart/utils/axis.d.ts.map +1 -1
- package/dts/chart/utils/bar.d.ts +195 -0
- package/dts/chart/utils/bar.d.ts.map +1 -1
- package/dts/chart/utils/chart.d.ts +32 -0
- package/dts/chart/utils/chart.d.ts.map +1 -1
- package/dts/chart/utils/context.d.ts +21 -6
- package/dts/chart/utils/context.d.ts.map +1 -1
- package/dts/chart/utils/gradient.d.ts +3 -1
- package/dts/chart/utils/gradient.d.ts.map +1 -1
- package/dts/chart/utils/path.d.ts +26 -0
- package/dts/chart/utils/path.d.ts.map +1 -1
- package/dts/chart/utils/point.d.ts +24 -12
- package/dts/chart/utils/point.d.ts.map +1 -1
- package/dts/chart/utils/scale.d.ts +11 -0
- package/dts/chart/utils/scale.d.ts.map +1 -1
- package/dts/chart/utils/scrubber.d.ts +2 -1
- package/dts/chart/utils/scrubber.d.ts.map +1 -1
- package/dts/chart/utils/transition.d.ts +63 -22
- package/dts/chart/utils/transition.d.ts.map +1 -1
- package/dts/sparkline/Sparkline.d.ts +2 -1
- package/dts/sparkline/Sparkline.d.ts.map +1 -1
- package/dts/sparkline/SparklineArea.d.ts +2 -1
- package/dts/sparkline/SparklineArea.d.ts.map +1 -1
- package/dts/sparkline/SparklineGradient.d.ts +2 -1
- package/dts/sparkline/SparklineGradient.d.ts.map +1 -1
- package/dts/sparkline/sparkline-interactive/SparklineInteractive.d.ts +2 -1
- package/dts/sparkline/sparkline-interactive/SparklineInteractive.d.ts.map +1 -1
- package/esm/chart/CartesianChart.js +176 -82
- package/esm/chart/ChartContextBridge.js +14 -3
- package/esm/chart/ChartProvider.js +2 -2
- package/esm/chart/Path.js +68 -31
- package/esm/chart/PeriodSelector.js +5 -1
- package/esm/chart/__stories__/CartesianChart.stories.js +16 -80
- package/esm/chart/__stories__/ChartAccessibility.stories.js +721 -0
- package/esm/chart/__stories__/ChartTransitions.stories.js +625 -0
- package/esm/chart/__stories__/PeriodSelector.stories.js +99 -1
- package/esm/chart/area/Area.js +21 -9
- package/esm/chart/area/AreaChart.js +18 -13
- package/esm/chart/area/DottedArea.js +28 -18
- package/esm/chart/area/GradientArea.js +14 -7
- package/esm/chart/area/SolidArea.js +6 -2
- package/esm/chart/area/__stories__/AreaChart.stories.js +47 -5
- package/esm/chart/axis/Axis.js +5 -41
- package/esm/chart/axis/XAxis.js +116 -47
- package/esm/chart/axis/YAxis.js +105 -26
- package/esm/chart/axis/__stories__/Axis.stories.js +324 -48
- package/esm/chart/bar/Bar.js +17 -15
- package/esm/chart/bar/BarChart.js +38 -33
- package/esm/chart/bar/BarPlot.js +40 -45
- package/esm/chart/bar/BarStack.js +92 -475
- package/esm/chart/bar/BarStackGroup.js +37 -27
- package/esm/chart/bar/DefaultBar.js +41 -18
- package/esm/chart/bar/DefaultBarStack.js +25 -9
- package/esm/chart/bar/PercentageBarChart.js +99 -0
- package/esm/chart/bar/__stories__/BarChart.stories.js +721 -54
- package/esm/chart/bar/__stories__/PercentageBarChart.stories.js +833 -0
- package/esm/chart/bar/index.js +1 -0
- package/esm/chart/gradient/Gradient.js +2 -1
- package/esm/chart/index.js +1 -0
- package/esm/chart/legend/DefaultLegendEntry.js +42 -0
- package/esm/chart/legend/DefaultLegendShape.js +64 -0
- package/esm/chart/legend/Legend.js +59 -0
- package/esm/chart/legend/__stories__/Legend.stories.js +574 -0
- package/esm/chart/legend/index.js +3 -0
- package/esm/chart/line/DottedLine.js +6 -2
- package/esm/chart/line/Line.js +42 -38
- package/esm/chart/line/LineChart.js +36 -12
- package/esm/chart/line/SolidLine.js +6 -2
- package/esm/chart/line/__stories__/LineChart.stories.js +236 -590
- package/esm/chart/line/__stories__/ReferenceLine.stories.js +95 -1
- package/esm/chart/point/Point.js +35 -36
- package/esm/chart/scrubber/DefaultScrubberBeacon.js +41 -38
- package/esm/chart/scrubber/DefaultScrubberLabel.js +26 -10
- package/esm/chart/scrubber/Scrubber.js +67 -35
- package/esm/chart/scrubber/ScrubberAccessibilityView.js +177 -0
- package/esm/chart/scrubber/ScrubberBeaconGroup.js +30 -22
- package/esm/chart/scrubber/ScrubberBeaconLabelGroup.js +35 -8
- package/esm/chart/scrubber/ScrubberProvider.js +29 -24
- package/esm/chart/scrubber/__stories__/Scrubber.stories.js +946 -0
- package/esm/chart/utils/axis.js +88 -44
- package/esm/chart/utils/bar.js +829 -0
- package/esm/chart/utils/chart.js +34 -7
- package/esm/chart/utils/context.js +7 -0
- package/esm/chart/utils/gradient.js +8 -4
- package/esm/chart/utils/path.js +91 -61
- package/esm/chart/utils/point.js +92 -39
- package/esm/chart/utils/scale.js +13 -2
- package/esm/chart/utils/scrubber.js +12 -5
- package/esm/chart/utils/transition.js +116 -60
- package/esm/sparkline/Sparkline.js +2 -1
- package/esm/sparkline/SparklineArea.js +2 -1
- package/esm/sparkline/SparklineGradient.js +2 -1
- package/esm/sparkline/__figma__/Sparkline.figma.js +1 -1
- package/esm/sparkline/sparkline-interactive/SparklineInteractive.js +2 -1
- package/esm/sparkline/sparkline-interactive/__figma__/SparklineInteractive.figma.js +1 -1
- package/esm/sparkline/sparkline-interactive-header/__figma__/SparklineInteractiveHeader.figma.js +1 -1
- package/esm/sparkline/sparkline-interactive-header/__stories__/SparklineInteractiveHeader.stories.js +2 -0
- package/package.json +5 -6
- package/esm/chart/__stories__/Chart.stories.js +0 -77
|
@@ -1,8 +1,38 @@
|
|
|
1
|
+
import { type Transition } from '../utils/transition';
|
|
1
2
|
import type { ScrubberBeaconProps, ScrubberBeaconRef } from './Scrubber';
|
|
2
|
-
export type DefaultScrubberBeaconProps = ScrubberBeaconProps
|
|
3
|
+
export type DefaultScrubberBeaconProps = ScrubberBeaconProps & {
|
|
4
|
+
/**
|
|
5
|
+
* Radius of the beacon circle.
|
|
6
|
+
* @default 5
|
|
7
|
+
*/
|
|
8
|
+
radius?: number;
|
|
9
|
+
/**
|
|
10
|
+
* Stroke width of the beacon circle.
|
|
11
|
+
* @default 2
|
|
12
|
+
*/
|
|
13
|
+
strokeWidth?: number;
|
|
14
|
+
};
|
|
3
15
|
export declare const DefaultScrubberBeacon: import('react').MemoExoticComponent<
|
|
4
16
|
import('react').ForwardRefExoticComponent<
|
|
5
|
-
|
|
17
|
+
import('./Scrubber').ScrubberBeaconBaseProps & {
|
|
18
|
+
transitions?: {
|
|
19
|
+
enter?: Transition | null;
|
|
20
|
+
update?: Transition | null;
|
|
21
|
+
pulse?: Transition;
|
|
22
|
+
pulseRepeatDelay?: number;
|
|
23
|
+
};
|
|
24
|
+
} & {
|
|
25
|
+
/**
|
|
26
|
+
* Radius of the beacon circle.
|
|
27
|
+
* @default 5
|
|
28
|
+
*/
|
|
29
|
+
radius?: number;
|
|
30
|
+
/**
|
|
31
|
+
* Stroke width of the beacon circle.
|
|
32
|
+
* @default 2
|
|
33
|
+
*/
|
|
34
|
+
strokeWidth?: number;
|
|
35
|
+
} & import('react').RefAttributes<ScrubberBeaconRef>
|
|
6
36
|
>
|
|
7
37
|
>;
|
|
8
38
|
//# sourceMappingURL=DefaultScrubberBeacon.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DefaultScrubberBeacon.d.ts","sourceRoot":"","sources":["../../../src/chart/scrubber/DefaultScrubberBeacon.tsx"],"names":[],"mappings":"AAkBA,OAAO,KAAK,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAkBzE,MAAM,MAAM,0BAA0B,GAAG,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"DefaultScrubberBeacon.d.ts","sourceRoot":"","sources":["../../../src/chart/scrubber/DefaultScrubberBeacon.tsx"],"names":[],"mappings":"AAkBA,OAAO,EAIL,KAAK,UAAU,EAChB,MAAM,qBAAqB,CAAC;AAE7B,OAAO,KAAK,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAkBzE,MAAM,MAAM,0BAA0B,GAAG,mBAAmB,GAAG;IAC7D;;;OAGG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB;;;OAGG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB,CAAC;AAEF,eAAO,MAAM,qBAAqB;;aAmD1B,CAAC;cAGI,CAAC;aAIE,CAAC;wBAEe,CAAC;;;IAxE/B;;;OAGG;aACM,MAAM;IACf;;;OAGG;kBACW,MAAM;sDAsMrB,CAAC"}
|
|
@@ -3,7 +3,8 @@ export type DefaultScrubberLabelProps = ScrubberLabelProps;
|
|
|
3
3
|
/**
|
|
4
4
|
* DefaultScrubberLabel is the default label component for the scrubber line.
|
|
5
5
|
* It will automatically add padding around the label when elevated to fit within chart bounds to prevent shadow from being cutoff.
|
|
6
|
-
*
|
|
6
|
+
* In vertical layout, it positions the label above the scrubber line.
|
|
7
|
+
* In horizontal layout, it centers the label in the chart's right inset.
|
|
7
8
|
*/
|
|
8
9
|
export declare const DefaultScrubberLabel: import('react').NamedExoticComponent<
|
|
9
10
|
import('..').ReferenceLineLabelComponentProps
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DefaultScrubberLabel.d.ts","sourceRoot":"","sources":["../../../src/chart/scrubber/DefaultScrubberLabel.tsx"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAErD,MAAM,MAAM,yBAAyB,GAAG,kBAAkB,CAAC;AAE3D
|
|
1
|
+
{"version":3,"file":"DefaultScrubberLabel.d.ts","sourceRoot":"","sources":["../../../src/chart/scrubber/DefaultScrubberLabel.tsx"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAErD,MAAM,MAAM,yBAAyB,GAAG,kBAAkB,CAAC;AAE3D;;;;;GAKG;AACH,eAAO,MAAM,oBAAoB,qFAuBhC,CAAC"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import { type AnimatedProp, type SkParagraph } from '@shopify/react-native-skia';
|
|
3
3
|
import { type ReferenceLineBaseProps, type ReferenceLineLabelComponentProps } from '../line';
|
|
4
|
-
import type { ChartTextProps } from '../text';
|
|
4
|
+
import type { ChartTextChildren, ChartTextProps } from '../text';
|
|
5
5
|
import { type ChartInset, type Series } from '../utils';
|
|
6
6
|
import type { Transition } from '../utils/transition';
|
|
7
7
|
import {
|
|
@@ -20,7 +20,7 @@ export type ScrubberBeaconRef = {
|
|
|
20
20
|
*/
|
|
21
21
|
pulse: () => void;
|
|
22
22
|
};
|
|
23
|
-
export type
|
|
23
|
+
export type ScrubberBeaconBaseProps = {
|
|
24
24
|
/**
|
|
25
25
|
* Id of the series.
|
|
26
26
|
*/
|
|
@@ -31,10 +31,14 @@ export type ScrubberBeaconProps = {
|
|
|
31
31
|
color?: AnimatedProp<string>;
|
|
32
32
|
/**
|
|
33
33
|
* X coordinate in data space.
|
|
34
|
+
* In vertical layout this is the scrubber index-axis value.
|
|
35
|
+
* In horizontal layout this is the series value.
|
|
34
36
|
*/
|
|
35
37
|
dataX: AnimatedProp<number>;
|
|
36
38
|
/**
|
|
37
39
|
* Y coordinate in data space.
|
|
40
|
+
* In vertical layout this is the series value.
|
|
41
|
+
* In horizontal layout this is the scrubber index-axis value.
|
|
38
42
|
*/
|
|
39
43
|
dataY: AnimatedProp<number>;
|
|
40
44
|
/**
|
|
@@ -43,25 +47,45 @@ export type ScrubberBeaconProps = {
|
|
|
43
47
|
isIdle: AnimatedProp<boolean>;
|
|
44
48
|
/**
|
|
45
49
|
* Pulse the beacon while it is at rest.
|
|
50
|
+
*
|
|
51
|
+
* @note Only has an effect when `isIdle` is `true`. Pulse animations work
|
|
52
|
+
* regardless of the chart's `animate` prop.
|
|
46
53
|
*/
|
|
47
54
|
idlePulse?: boolean;
|
|
48
55
|
/**
|
|
49
|
-
* Whether animations are enabled.
|
|
50
|
-
* @default
|
|
56
|
+
* Whether position animations are enabled.
|
|
57
|
+
* @default to ChartContext's animate value
|
|
51
58
|
*/
|
|
52
59
|
animate?: boolean;
|
|
60
|
+
/**
|
|
61
|
+
* Opacity of the beacon.
|
|
62
|
+
* @default 1
|
|
63
|
+
*/
|
|
64
|
+
opacity?: AnimatedProp<number>;
|
|
65
|
+
/**
|
|
66
|
+
* Stroke color of the beacon circle.
|
|
67
|
+
* @default theme.color.bg
|
|
68
|
+
*/
|
|
69
|
+
stroke?: string;
|
|
70
|
+
};
|
|
71
|
+
export type ScrubberBeaconProps = ScrubberBeaconBaseProps & {
|
|
53
72
|
/**
|
|
54
73
|
* Transition configuration for beacon animations.
|
|
55
74
|
*/
|
|
56
75
|
transitions?: {
|
|
57
76
|
/**
|
|
58
|
-
* Transition
|
|
59
|
-
*
|
|
77
|
+
* Transition for the initial enter/reveal animation.
|
|
78
|
+
* Set to `null` to disable.
|
|
60
79
|
*/
|
|
61
|
-
|
|
80
|
+
enter?: Transition | null;
|
|
81
|
+
/**
|
|
82
|
+
* Transition for subsequent data update animations.
|
|
83
|
+
* Set to `null` to disable.
|
|
84
|
+
*/
|
|
85
|
+
update?: Transition | null;
|
|
62
86
|
/**
|
|
63
87
|
* Transition used for the pulse animation.
|
|
64
|
-
* @default { type: 'timing', duration: 1600, easing: Easing.bezier(0.0, 0.0, 0.0, 1.0) }
|
|
88
|
+
* @default transition { type: 'timing', duration: 1600, easing: Easing.bezier(0.0, 0.0, 0.0, 1.0) }
|
|
65
89
|
*/
|
|
66
90
|
pulse?: Transition;
|
|
67
91
|
/**
|
|
@@ -71,11 +95,6 @@ export type ScrubberBeaconProps = {
|
|
|
71
95
|
*/
|
|
72
96
|
pulseRepeatDelay?: number;
|
|
73
97
|
};
|
|
74
|
-
/**
|
|
75
|
-
* Opacity of the beacon.
|
|
76
|
-
* @default 1
|
|
77
|
-
*/
|
|
78
|
-
opacity?: AnimatedProp<number>;
|
|
79
98
|
};
|
|
80
99
|
export type ScrubberBeaconComponent = React.FC<
|
|
81
100
|
ScrubberBeaconProps & {
|
|
@@ -90,7 +109,7 @@ export type ScrubberBeaconLabelProps = Pick<Series, 'color'> &
|
|
|
90
109
|
/**
|
|
91
110
|
* Label for the series.
|
|
92
111
|
*/
|
|
93
|
-
label:
|
|
112
|
+
label: ChartTextChildren;
|
|
94
113
|
/**
|
|
95
114
|
* Id of the series.
|
|
96
115
|
*/
|
|
@@ -108,6 +127,12 @@ export type ScrubberBaseProps = Pick<ScrubberBeaconGroupBaseProps, 'idlePulse'>
|
|
|
108
127
|
* By default, all series will be highlighted.
|
|
109
128
|
*/
|
|
110
129
|
seriesIds?: string[];
|
|
130
|
+
/**
|
|
131
|
+
* Hides the beacon labels while keeping the line label visible (if provided).
|
|
132
|
+
* @default true in horizontal layout, false in vertical layout.
|
|
133
|
+
* @note Beacon labels are always hidden in horizontal layout, and cannot be overridden.
|
|
134
|
+
*/
|
|
135
|
+
hideBeaconLabels?: boolean;
|
|
111
136
|
/**
|
|
112
137
|
* Hides the scrubber line.
|
|
113
138
|
* @note This hides Scrubber's ReferenceLine including the label.
|
|
@@ -133,6 +158,12 @@ export type ScrubberBaseProps = Pick<ScrubberBeaconGroupBaseProps, 'idlePulse'>
|
|
|
133
158
|
* Measured in pixels.
|
|
134
159
|
*/
|
|
135
160
|
beaconLabelHorizontalOffset?: ScrubberBeaconLabelGroupBaseProps['labelHorizontalOffset'];
|
|
161
|
+
/**
|
|
162
|
+
* Preferred side for beacon labels.
|
|
163
|
+
* @note labels will switch to the opposite side if there's not enough space on the preferred side.
|
|
164
|
+
* @default 'right'
|
|
165
|
+
*/
|
|
166
|
+
beaconLabelPreferredSide?: ScrubberBeaconLabelGroupBaseProps['labelPreferredSide'];
|
|
136
167
|
/**
|
|
137
168
|
* Label text displayed above the scrubber line.
|
|
138
169
|
* Can be a static string or a function that receives the current dataIndex.
|
|
@@ -156,11 +187,24 @@ export type ScrubberBaseProps = Pick<ScrubberBeaconGroupBaseProps, 'idlePulse'>
|
|
|
156
187
|
*/
|
|
157
188
|
lineStroke?: ReferenceLineBaseProps['stroke'];
|
|
158
189
|
/**
|
|
159
|
-
*
|
|
190
|
+
* Stroke color of the scrubber beacon circle.
|
|
191
|
+
* @default theme.color.bg
|
|
160
192
|
*/
|
|
161
|
-
|
|
193
|
+
beaconStroke?: string;
|
|
162
194
|
};
|
|
163
|
-
export type ScrubberProps = ScrubberBaseProps
|
|
195
|
+
export type ScrubberProps = ScrubberBaseProps & {
|
|
196
|
+
/**
|
|
197
|
+
* Transition configuration for the scrubber.
|
|
198
|
+
* Controls enter, update, and pulse animations for beacons and beacon labels.
|
|
199
|
+
*/
|
|
200
|
+
transitions?: ScrubberBeaconProps['transitions'];
|
|
201
|
+
/**
|
|
202
|
+
* Transition configuration for the scrubber beacon.
|
|
203
|
+
* @deprecated Use `transitions` instead. This will be removed in a future major release.
|
|
204
|
+
* @deprecationExpectedRemoval v4
|
|
205
|
+
*/
|
|
206
|
+
beaconTransitions?: ScrubberBeaconProps['transitions'];
|
|
207
|
+
};
|
|
164
208
|
export type ScrubberRef = ScrubberBeaconGroupRef;
|
|
165
209
|
/**
|
|
166
210
|
* Unified component that manages all scrubber elements (beacons, line, labels).
|
|
@@ -176,6 +220,12 @@ export declare const Scrubber: React.MemoExoticComponent<
|
|
|
176
220
|
* By default, all series will be highlighted.
|
|
177
221
|
*/
|
|
178
222
|
seriesIds?: string[];
|
|
223
|
+
/**
|
|
224
|
+
* Hides the beacon labels while keeping the line label visible (if provided).
|
|
225
|
+
* @default true in horizontal layout, false in vertical layout.
|
|
226
|
+
* @note Beacon labels are always hidden in horizontal layout, and cannot be overridden.
|
|
227
|
+
*/
|
|
228
|
+
hideBeaconLabels?: boolean;
|
|
179
229
|
/**
|
|
180
230
|
* Hides the scrubber line.
|
|
181
231
|
* @note This hides Scrubber's ReferenceLine including the label.
|
|
@@ -201,6 +251,12 @@ export declare const Scrubber: React.MemoExoticComponent<
|
|
|
201
251
|
* Measured in pixels.
|
|
202
252
|
*/
|
|
203
253
|
beaconLabelHorizontalOffset?: ScrubberBeaconLabelGroupBaseProps['labelHorizontalOffset'];
|
|
254
|
+
/**
|
|
255
|
+
* Preferred side for beacon labels.
|
|
256
|
+
* @note labels will switch to the opposite side if there's not enough space on the preferred side.
|
|
257
|
+
* @default 'right'
|
|
258
|
+
*/
|
|
259
|
+
beaconLabelPreferredSide?: ScrubberBeaconLabelGroupBaseProps['labelPreferredSide'];
|
|
204
260
|
/**
|
|
205
261
|
* Label text displayed above the scrubber line.
|
|
206
262
|
* Can be a static string or a function that receives the current dataIndex.
|
|
@@ -223,8 +279,21 @@ export declare const Scrubber: React.MemoExoticComponent<
|
|
|
223
279
|
* Stroke color for the scrubber line.
|
|
224
280
|
*/
|
|
225
281
|
lineStroke?: ReferenceLineBaseProps['stroke'];
|
|
282
|
+
/**
|
|
283
|
+
* Stroke color of the scrubber beacon circle.
|
|
284
|
+
* @default theme.color.bg
|
|
285
|
+
*/
|
|
286
|
+
beaconStroke?: string;
|
|
287
|
+
} & {
|
|
288
|
+
/**
|
|
289
|
+
* Transition configuration for the scrubber.
|
|
290
|
+
* Controls enter, update, and pulse animations for beacons and beacon labels.
|
|
291
|
+
*/
|
|
292
|
+
transitions?: ScrubberBeaconProps['transitions'];
|
|
226
293
|
/**
|
|
227
294
|
* Transition configuration for the scrubber beacon.
|
|
295
|
+
* @deprecated Use `transitions` instead. This will be removed in a future major release.
|
|
296
|
+
* @deprecationExpectedRemoval v4
|
|
228
297
|
*/
|
|
229
298
|
beaconTransitions?: ScrubberBeaconProps['transitions'];
|
|
230
299
|
} & React.RefAttributes<ScrubberBeaconGroupRef>
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Scrubber.d.ts","sourceRoot":"","sources":["../../../src/chart/scrubber/Scrubber.tsx"],"names":[],"mappings":"AAAA,OAAO,KAON,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"Scrubber.d.ts","sourceRoot":"","sources":["../../../src/chart/scrubber/Scrubber.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
export type ScrubberAccessibilityViewProps = {
|
|
3
|
+
accessibilityLabel?: (dataIndex: number) => string;
|
|
4
|
+
accessibilityStep?: number;
|
|
5
|
+
};
|
|
6
|
+
export declare const ScrubberAccessibilityView: React.MemoExoticComponent<
|
|
7
|
+
({
|
|
8
|
+
accessibilityLabel,
|
|
9
|
+
accessibilityStep,
|
|
10
|
+
}: ScrubberAccessibilityViewProps) => import('react/jsx-runtime').JSX.Element | undefined
|
|
11
|
+
>;
|
|
12
|
+
//# sourceMappingURL=ScrubberAccessibilityView.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ScrubberAccessibilityView.d.ts","sourceRoot":"","sources":["../../../src/chart/scrubber/ScrubberAccessibilityView.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAqC,MAAM,OAAO,CAAC;AAqI1D,MAAM,MAAM,8BAA8B,GAAG;IAC3C,kBAAkB,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,MAAM,CAAC;IACnD,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B,CAAC;AAEF,eAAO,MAAM,yBAAyB,wEACQ,8BAA8B,yDAmH3E,CAAC"}
|
|
@@ -25,6 +25,11 @@ export type ScrubberBeaconGroupProps = ScrubberBeaconGroupBaseProps & {
|
|
|
25
25
|
* @default DefaultScrubberBeacon
|
|
26
26
|
*/
|
|
27
27
|
BeaconComponent?: ScrubberBeaconComponent;
|
|
28
|
+
/**
|
|
29
|
+
* Stroke color of the beacon circle.
|
|
30
|
+
* @default theme.color.bg
|
|
31
|
+
*/
|
|
32
|
+
stroke?: string;
|
|
28
33
|
};
|
|
29
34
|
export declare const ScrubberBeaconGroup: import('react').MemoExoticComponent<
|
|
30
35
|
import('react').ForwardRefExoticComponent<
|
|
@@ -38,6 +43,11 @@ export declare const ScrubberBeaconGroup: import('react').MemoExoticComponent<
|
|
|
38
43
|
* @default DefaultScrubberBeacon
|
|
39
44
|
*/
|
|
40
45
|
BeaconComponent?: ScrubberBeaconComponent;
|
|
46
|
+
/**
|
|
47
|
+
* Stroke color of the beacon circle.
|
|
48
|
+
* @default theme.color.bg
|
|
49
|
+
*/
|
|
50
|
+
stroke?: string;
|
|
41
51
|
} & import('react').RefAttributes<ScrubberBeaconGroupRef>
|
|
42
52
|
>
|
|
43
53
|
>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ScrubberBeaconGroup.d.ts","sourceRoot":"","sources":["../../../src/chart/scrubber/ScrubberBeaconGroup.tsx"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,uBAAuB,EAAE,mBAAmB,EAAqB,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"ScrubberBeaconGroup.d.ts","sourceRoot":"","sources":["../../../src/chart/scrubber/ScrubberBeaconGroup.tsx"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,uBAAuB,EAAE,mBAAmB,EAAqB,MAAM,YAAY,CAAC;AA4HlG,MAAM,MAAM,sBAAsB,GAAG;IACnC;;OAEG;IACH,KAAK,EAAE,MAAM,IAAI,CAAC;CACnB,CAAC;AAEF,MAAM,MAAM,4BAA4B,GAAG;IACzC;;OAEG;IACH,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB;;OAEG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB,CAAC;AAEF,MAAM,MAAM,wBAAwB,GAAG,4BAA4B,GAAG;IACpE;;OAEG;IACH,WAAW,CAAC,EAAE,mBAAmB,CAAC,aAAa,CAAC,CAAC;IACjD;;;OAGG;IACH,eAAe,CAAC,EAAE,uBAAuB,CAAC;IAC1C;;;OAGG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,eAAO,MAAM,mBAAmB;IAhB9B;;OAEG;kBACW,mBAAmB,CAAC,aAAa,CAAC;IAChD;;;OAGG;sBACe,uBAAuB;IACzC;;;OAGG;aACM,MAAM;2DAkFhB,CAAC"}
|
|
@@ -1,5 +1,10 @@
|
|
|
1
1
|
import type { ChartTextProps } from '../text';
|
|
2
|
-
import
|
|
2
|
+
import { type ScrubberLabelPosition } from '../utils/scrubber';
|
|
3
|
+
import type {
|
|
4
|
+
ScrubberBeaconLabelComponent,
|
|
5
|
+
ScrubberBeaconLabelProps,
|
|
6
|
+
ScrubberBeaconProps,
|
|
7
|
+
} from './Scrubber';
|
|
3
8
|
export type ScrubberBeaconLabelGroupBaseProps = {
|
|
4
9
|
/**
|
|
5
10
|
* Labels to be displayed.
|
|
@@ -19,6 +24,12 @@ export type ScrubberBeaconLabelGroupBaseProps = {
|
|
|
19
24
|
* Font style for the beacon labels.
|
|
20
25
|
*/
|
|
21
26
|
labelFont?: ChartTextProps['font'];
|
|
27
|
+
/**
|
|
28
|
+
* Preferred side for labels.
|
|
29
|
+
* @note labels will switch to the opposite side if there's not enough space on the preferred side.
|
|
30
|
+
* @default 'right'
|
|
31
|
+
*/
|
|
32
|
+
labelPreferredSide?: ScrubberLabelPosition;
|
|
22
33
|
};
|
|
23
34
|
export type ScrubberBeaconLabelGroupProps = ScrubberBeaconLabelGroupBaseProps & {
|
|
24
35
|
/**
|
|
@@ -26,6 +37,10 @@ export type ScrubberBeaconLabelGroupProps = ScrubberBeaconLabelGroupBaseProps &
|
|
|
26
37
|
* @default DefaultScrubberBeaconLabel
|
|
27
38
|
*/
|
|
28
39
|
BeaconLabelComponent?: ScrubberBeaconLabelComponent;
|
|
40
|
+
/**
|
|
41
|
+
* Transition configuration for beacon label animations.
|
|
42
|
+
*/
|
|
43
|
+
transitions?: ScrubberBeaconProps['transitions'];
|
|
29
44
|
};
|
|
30
45
|
export declare const ScrubberBeaconLabelGroup: import('react').NamedExoticComponent<ScrubberBeaconLabelGroupProps>;
|
|
31
46
|
//# sourceMappingURL=ScrubberBeaconLabelGroup.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ScrubberBeaconLabelGroup.d.ts","sourceRoot":"","sources":["../../../src/chart/scrubber/ScrubberBeaconLabelGroup.tsx"],"names":[],"mappings":"AAMA,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"ScrubberBeaconLabelGroup.d.ts","sourceRoot":"","sources":["../../../src/chart/scrubber/ScrubberBeaconLabelGroup.tsx"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAqB,cAAc,EAAE,MAAM,SAAS,CAAC;AAEjE,OAAO,EAKL,KAAK,qBAAqB,EAC3B,MAAM,mBAAmB,CAAC;AAS3B,OAAO,KAAK,EACV,4BAA4B,EAC5B,wBAAwB,EACxB,mBAAmB,EACpB,MAAM,YAAY,CAAC;AAsFpB,MAAM,MAAM,iCAAiC,GAAG;IAC9C;;OAEG;IACH,MAAM,EAAE,KAAK,CAAC,IAAI,CAAC,wBAAwB,EAAE,UAAU,GAAG,OAAO,GAAG,OAAO,CAAC,CAAC,CAAC;IAC9E;;;OAGG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;;OAGG;IACH,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B;;OAEG;IACH,SAAS,CAAC,EAAE,cAAc,CAAC,MAAM,CAAC,CAAC;IACnC;;;;OAIG;IACH,kBAAkB,CAAC,EAAE,qBAAqB,CAAC;CAC5C,CAAC;AAEF,MAAM,MAAM,6BAA6B,GAAG,iCAAiC,GAAG;IAC9E;;;OAGG;IACH,oBAAoB,CAAC,EAAE,4BAA4B,CAAC;IACpD;;OAEG;IACH,WAAW,CAAC,EAAE,mBAAmB,CAAC,aAAa,CAAC,CAAC;CAClD,CAAC;AAEF,eAAO,MAAM,wBAAwB,qEAoMpC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ScrubberProvider.d.ts","sourceRoot":"","sources":["../../../src/chart/scrubber/ScrubberProvider.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA+B,MAAM,OAAO,CAAC;AAOpD,OAAO,EAA4C,KAAK,oBAAoB,EAAE,MAAM,UAAU,CAAC;AAG/F,MAAM,MAAM,qBAAqB,GAAG,OAAO,CAAC,IAAI,CAAC,oBAAoB,EAAE,iBAAiB,CAAC,CAAC,GAAG;IAC3F,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B;;OAEG;IACH,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAChC;;;OAGG;IACH,wBAAwB,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,KAAK,IAAI,CAAC;CAChE,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,gBAAgB,EAAE,KAAK,CAAC,EAAE,CAAC,qBAAqB,
|
|
1
|
+
{"version":3,"file":"ScrubberProvider.d.ts","sourceRoot":"","sources":["../../../src/chart/scrubber/ScrubberProvider.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA+B,MAAM,OAAO,CAAC;AAOpD,OAAO,EAA4C,KAAK,oBAAoB,EAAE,MAAM,UAAU,CAAC;AAG/F,MAAM,MAAM,qBAAqB,GAAG,OAAO,CAAC,IAAI,CAAC,oBAAoB,EAAE,iBAAiB,CAAC,CAAC,GAAG;IAC3F,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B;;OAEG;IACH,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAChC;;;OAGG;IACH,wBAAwB,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,KAAK,IAAI,CAAC;CAChE,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,gBAAgB,EAAE,KAAK,CAAC,EAAE,CAAC,qBAAqB,CA+J5D,CAAC"}
|
|
@@ -1,9 +1,28 @@
|
|
|
1
1
|
import type React from 'react';
|
|
2
2
|
import type { Rect } from '@coinbase/cds-common/types';
|
|
3
3
|
import { type AxisBounds, type Series } from './chart';
|
|
4
|
-
import
|
|
4
|
+
import type { CartesianChartLayout } from './context';
|
|
5
|
+
import { type ChartAxisScaleType, type ChartScaleFunction, type PointAnchor } from './scale';
|
|
5
6
|
export declare const defaultAxisId = 'DEFAULT_AXIS_ID';
|
|
6
7
|
export declare const defaultAxisScaleType = 'linear';
|
|
8
|
+
/**
|
|
9
|
+
* Position options for band scale axis elements (grid lines, tick marks, labels).
|
|
10
|
+
*
|
|
11
|
+
* - `'start'` - At the start of each step (before bar padding)
|
|
12
|
+
* - `'middle'` - At the center of each band
|
|
13
|
+
* - `'end'` - At the end of each step (after bar padding)
|
|
14
|
+
* - `'edges'` - At start of each tick, plus end for the last tick (encloses the chart)
|
|
15
|
+
*
|
|
16
|
+
* @note These properties only apply when using a band scale (`scaleType: 'band'`).
|
|
17
|
+
*/
|
|
18
|
+
export type AxisBandPlacement = 'start' | 'middle' | 'end' | 'edges';
|
|
19
|
+
/**
|
|
20
|
+
* Converts an AxisBandPlacement to the corresponding PointAnchor for use with getPointOnScale.
|
|
21
|
+
*
|
|
22
|
+
* @param placement - The axis placement value
|
|
23
|
+
* @returns The corresponding PointAnchor for scale calculations
|
|
24
|
+
*/
|
|
25
|
+
export declare const toPointAnchor: (placement: AxisBandPlacement) => PointAnchor;
|
|
7
26
|
/**
|
|
8
27
|
* Axis configuration with computed bounds
|
|
9
28
|
*/
|
|
@@ -38,7 +57,7 @@ export type AxisConfig = {
|
|
|
38
57
|
/**
|
|
39
58
|
* Axis configuration without computed bounds (used for input)
|
|
40
59
|
*/
|
|
41
|
-
export type
|
|
60
|
+
export type CartesianAxisConfigProps = Omit<AxisConfig, 'domain' | 'range'> & {
|
|
42
61
|
/**
|
|
43
62
|
* Unique identifier for this axis.
|
|
44
63
|
*/
|
|
@@ -66,8 +85,14 @@ export type AxisConfigProps = Omit<AxisConfig, 'domain' | 'range'> & {
|
|
|
66
85
|
*/
|
|
67
86
|
range?: Partial<AxisBounds> | ((bounds: AxisBounds) => AxisBounds);
|
|
68
87
|
};
|
|
88
|
+
export type CartesianAxisConfig = AxisConfig & {
|
|
89
|
+
/**
|
|
90
|
+
* Domain limit type for numeric scales
|
|
91
|
+
*/
|
|
92
|
+
domainLimit?: 'nice' | 'strict';
|
|
93
|
+
};
|
|
69
94
|
/**
|
|
70
|
-
* Gets a D3 scale based on the axis configuration.
|
|
95
|
+
* Gets a D3 scale based on the cartesian axis configuration.
|
|
71
96
|
* Handles both numeric (linear/log) and categorical (band) scales.
|
|
72
97
|
*
|
|
73
98
|
* For numeric scales, the domain limit controls whether bounds are "nice" (human-friendly)
|
|
@@ -77,16 +102,18 @@ export type AxisConfigProps = Omit<AxisConfig, 'domain' | 'range'> & {
|
|
|
77
102
|
* @returns The D3 scale function
|
|
78
103
|
* @throws An Error if bounds are invalid
|
|
79
104
|
*/
|
|
80
|
-
export declare const
|
|
105
|
+
export declare const getCartesianAxisScale: ({
|
|
81
106
|
config,
|
|
82
107
|
type,
|
|
83
108
|
range,
|
|
84
109
|
dataDomain,
|
|
110
|
+
layout,
|
|
85
111
|
}: {
|
|
86
|
-
config?:
|
|
112
|
+
config?: CartesianAxisConfig;
|
|
87
113
|
type: 'x' | 'y';
|
|
88
114
|
range: AxisBounds;
|
|
89
115
|
dataDomain: AxisBounds;
|
|
116
|
+
layout?: CartesianChartLayout;
|
|
90
117
|
}) => ChartScaleFunction;
|
|
91
118
|
/**
|
|
92
119
|
* Formats the array of user-provided axis configs with default values and validates axis ids.
|
|
@@ -101,10 +128,10 @@ export declare const getAxisScale: ({
|
|
|
101
128
|
*/
|
|
102
129
|
export declare const getAxisConfig: (
|
|
103
130
|
type: 'x' | 'y',
|
|
104
|
-
axes: Partial<
|
|
131
|
+
axes: Partial<CartesianAxisConfigProps> | Partial<CartesianAxisConfigProps>[] | undefined,
|
|
105
132
|
defaultId?: string,
|
|
106
133
|
defaultScaleType?: ChartAxisScaleType,
|
|
107
|
-
) =>
|
|
134
|
+
) => CartesianAxisConfigProps[];
|
|
108
135
|
/**
|
|
109
136
|
* Calculates the data domain for an axis based on its configuration and series data.
|
|
110
137
|
* Handles both x and y axes, categorical data, custom domain configurations, and stacking.
|
|
@@ -112,12 +139,14 @@ export declare const getAxisConfig: (
|
|
|
112
139
|
* @param axisParam - The axis configuration
|
|
113
140
|
* @param series - Array of series objects (for stacking support)
|
|
114
141
|
* @param axisType - Whether this is an 'x' or 'y' axis
|
|
142
|
+
* @param layout - The chart layout orientation
|
|
115
143
|
* @returns The calculated axis bounds
|
|
116
144
|
*/
|
|
117
|
-
export declare const
|
|
118
|
-
axisParam:
|
|
145
|
+
export declare const getCartesianAxisDomain: (
|
|
146
|
+
axisParam: CartesianAxisConfigProps,
|
|
119
147
|
series: Series[],
|
|
120
148
|
axisType: 'x' | 'y',
|
|
149
|
+
layout?: CartesianChartLayout,
|
|
121
150
|
) => AxisBounds;
|
|
122
151
|
/**
|
|
123
152
|
* Calculates the visual range for an axis based on the chart rectangle and configuration.
|
|
@@ -129,7 +158,7 @@ export declare const getAxisDomain: (
|
|
|
129
158
|
* @returns The calculated axis range bounds
|
|
130
159
|
*/
|
|
131
160
|
export declare const getAxisRange: (
|
|
132
|
-
axisParam:
|
|
161
|
+
axisParam: CartesianAxisConfigProps,
|
|
133
162
|
chartRect: Rect,
|
|
134
163
|
axisType: 'x' | 'y',
|
|
135
164
|
) => AxisBounds;
|
|
@@ -154,6 +183,12 @@ type TickGenerationOptions = {
|
|
|
154
183
|
* @default 4
|
|
155
184
|
*/
|
|
156
185
|
minTickCount?: number;
|
|
186
|
+
/**
|
|
187
|
+
* Anchor position for band/categorical scales.
|
|
188
|
+
* Controls where tick labels are positioned within each band.
|
|
189
|
+
* @default 'middle'
|
|
190
|
+
*/
|
|
191
|
+
anchor?: PointAnchor;
|
|
157
192
|
};
|
|
158
193
|
export type GetAxisTicksDataProps = {
|
|
159
194
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"axis.d.ts","sourceRoot":"","sources":["../../../src/chart/utils/axis.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,4BAA4B,CAAC;AAEvD,OAAO,EACL,KAAK,UAAU,EAIf,KAAK,MAAM,EACZ,MAAM,SAAS,CAAC;AACjB,OAAO,EACL,KAAK,kBAAkB,EACvB,KAAK,kBAAkB,
|
|
1
|
+
{"version":3,"file":"axis.d.ts","sourceRoot":"","sources":["../../../src/chart/utils/axis.ts"],"names":[],"mappings":"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"}
|