@coinbase/cds-mcp-server 8.21.8 → 8.22.2
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 +12 -0
- package/mcp-docs/mobile/components/AreaChart.txt +39 -37
- package/mcp-docs/mobile/components/Avatar.txt +18 -18
- package/mcp-docs/mobile/components/AvatarButton.txt +19 -19
- package/mcp-docs/mobile/components/Banner.txt +62 -23
- package/mcp-docs/mobile/components/BarChart.txt +37 -35
- package/mcp-docs/mobile/components/Box.txt +18 -18
- package/mcp-docs/mobile/components/BrowserBar.txt +18 -18
- package/mcp-docs/mobile/components/Button.txt +19 -19
- package/mcp-docs/mobile/components/Carousel.txt +18 -18
- package/mcp-docs/mobile/components/CartesianChart.txt +75 -44
- package/mcp-docs/mobile/components/CheckboxCell.txt +19 -19
- package/mcp-docs/mobile/components/Chip.txt +20 -20
- package/mcp-docs/mobile/components/Coachmark.txt +18 -18
- package/mcp-docs/mobile/components/ContentCard.txt +18 -18
- package/mcp-docs/mobile/components/ContentCardBody.txt +18 -18
- package/mcp-docs/mobile/components/ContentCardFooter.txt +18 -18
- package/mcp-docs/mobile/components/ContentCardHeader.txt +18 -18
- package/mcp-docs/mobile/components/ContentCell.txt +18 -18
- package/mcp-docs/mobile/components/ControlGroup.txt +18 -18
- package/mcp-docs/mobile/components/DatePicker.txt +1 -1
- package/mcp-docs/mobile/components/Divider.txt +18 -18
- package/mcp-docs/mobile/components/DotCount.txt +1 -1
- package/mcp-docs/mobile/components/DotSymbol.txt +2 -2
- package/mcp-docs/mobile/components/Fallback.txt +18 -18
- package/mcp-docs/mobile/components/HStack.txt +18 -18
- package/mcp-docs/mobile/components/Icon.txt +6 -0
- package/mcp-docs/mobile/components/IconButton.txt +19 -19
- package/mcp-docs/mobile/components/InputChip.txt +20 -20
- package/mcp-docs/mobile/components/Interactable.txt +19 -19
- package/mcp-docs/mobile/components/LineChart.txt +1608 -898
- package/mcp-docs/mobile/components/Link.txt +18 -18
- package/mcp-docs/mobile/components/ListCell.txt +37 -19
- package/mcp-docs/mobile/components/Lottie.txt +18 -18
- package/mcp-docs/mobile/components/MediaChip.txt +20 -20
- package/mcp-docs/mobile/components/MultiContentModule.txt +18 -18
- package/mcp-docs/mobile/components/NavigationTitle.txt +18 -18
- package/mcp-docs/mobile/components/NavigationTitleSelect.txt +18 -18
- package/mcp-docs/mobile/components/Numpad.txt +18 -18
- package/mcp-docs/mobile/components/Overlay.txt +18 -18
- package/mcp-docs/mobile/components/PageFooter.txt +17 -17
- package/mcp-docs/mobile/components/PageHeader.txt +17 -17
- package/mcp-docs/mobile/components/PeriodSelector.txt +26 -26
- package/mcp-docs/mobile/components/Point.txt +203 -98
- package/mcp-docs/mobile/components/Pressable.txt +19 -19
- package/mcp-docs/mobile/components/ProgressBar.txt +1 -1
- package/mcp-docs/mobile/components/ProgressBarWithFixedLabels.txt +1 -1
- package/mcp-docs/mobile/components/ProgressBarWithFloatLabel.txt +1 -1
- package/mcp-docs/mobile/components/ProgressCircle.txt +1 -1
- package/mcp-docs/mobile/components/RadioCell.txt +19 -19
- package/mcp-docs/mobile/components/ReferenceLine.txt +197 -54
- package/mcp-docs/mobile/components/RollingNumber.txt +18 -18
- package/mcp-docs/mobile/components/Scrubber.txt +597 -79
- package/mcp-docs/mobile/components/SegmentedTabs.txt +18 -18
- package/mcp-docs/mobile/components/SelectAlpha.txt +1 -1
- package/mcp-docs/mobile/components/SelectChip.txt +20 -20
- package/mcp-docs/mobile/components/SlideButton.txt +19 -19
- package/mcp-docs/mobile/components/Spacer.txt +6 -6
- package/mcp-docs/mobile/components/SparklineInteractive.txt +3 -3
- package/mcp-docs/mobile/components/Spinner.txt +1 -1
- package/mcp-docs/mobile/components/Stepper.txt +18 -18
- package/mcp-docs/mobile/components/TabLabel.txt +18 -18
- package/mcp-docs/mobile/components/TabNavigation.txt +18 -18
- package/mcp-docs/mobile/components/TabbedChips.txt +18 -18
- package/mcp-docs/mobile/components/TabbedChipsAlpha.txt +1 -1
- package/mcp-docs/mobile/components/Tabs.txt +18 -18
- package/mcp-docs/mobile/components/Tag.txt +18 -18
- package/mcp-docs/mobile/components/Text.txt +18 -18
- package/mcp-docs/mobile/components/Toast.txt +18 -18
- package/mcp-docs/mobile/components/Tooltip.txt +17 -1
- package/mcp-docs/mobile/components/TopNavBar.txt +18 -18
- package/mcp-docs/mobile/components/VStack.txt +18 -18
- package/mcp-docs/mobile/components/XAxis.txt +86 -24
- package/mcp-docs/mobile/components/YAxis.txt +75 -17
- package/mcp-docs/mobile/routes.txt +1 -1
- package/mcp-docs/web/components/AreaChart.txt +523 -301
- package/mcp-docs/web/components/Avatar.txt +27 -27
- package/mcp-docs/web/components/AvatarButton.txt +28 -28
- package/mcp-docs/web/components/Banner.txt +71 -32
- package/mcp-docs/web/components/BarChart.txt +182 -313
- package/mcp-docs/web/components/Box.txt +28 -28
- package/mcp-docs/web/components/Button.txt +28 -28
- package/mcp-docs/web/components/Calendar.txt +27 -27
- package/mcp-docs/web/components/Carousel.txt +27 -27
- package/mcp-docs/web/components/CartesianChart.txt +62 -309
- package/mcp-docs/web/components/CheckboxCell.txt +25 -25
- package/mcp-docs/web/components/Chip.txt +27 -27
- package/mcp-docs/web/components/Coachmark.txt +27 -27
- package/mcp-docs/web/components/ContainedAssetCard.txt +27 -27
- package/mcp-docs/web/components/ContentCard.txt +28 -28
- package/mcp-docs/web/components/ContentCardBody.txt +28 -28
- package/mcp-docs/web/components/ContentCardFooter.txt +28 -28
- package/mcp-docs/web/components/ContentCardHeader.txt +28 -28
- package/mcp-docs/web/components/ContentCell.txt +28 -28
- package/mcp-docs/web/components/ControlGroup.txt +27 -27
- package/mcp-docs/web/components/Divider.txt +27 -27
- package/mcp-docs/web/components/Fallback.txt +28 -28
- package/mcp-docs/web/components/FloatingAssetCard.txt +27 -27
- package/mcp-docs/web/components/Grid.txt +28 -28
- package/mcp-docs/web/components/GridColumn.txt +27 -27
- package/mcp-docs/web/components/HStack.txt +28 -28
- package/mcp-docs/web/components/Icon.txt +27 -27
- package/mcp-docs/web/components/IconButton.txt +28 -28
- package/mcp-docs/web/components/InputChip.txt +27 -27
- package/mcp-docs/web/components/Interactable.txt +28 -28
- package/mcp-docs/web/components/LineChart.txt +1598 -1116
- package/mcp-docs/web/components/Link.txt +28 -28
- package/mcp-docs/web/components/ListCell.txt +48 -30
- package/mcp-docs/web/components/Lottie.txt +27 -27
- package/mcp-docs/web/components/MediaChip.txt +27 -27
- package/mcp-docs/web/components/Modal.txt +27 -27
- package/mcp-docs/web/components/ModalBody.txt +27 -27
- package/mcp-docs/web/components/ModalFooter.txt +27 -27
- package/mcp-docs/web/components/ModalHeader.txt +27 -27
- package/mcp-docs/web/components/MultiContentModule.txt +28 -28
- package/mcp-docs/web/components/NavigationBar.txt +5 -5
- package/mcp-docs/web/components/NudgeCard.txt +27 -27
- package/mcp-docs/web/components/Overlay.txt +27 -27
- package/mcp-docs/web/components/PageFooter.txt +26 -26
- package/mcp-docs/web/components/PageHeader.txt +26 -26
- package/mcp-docs/web/components/Pagination.txt +27 -27
- package/mcp-docs/web/components/PeriodSelector.txt +49 -49
- package/mcp-docs/web/components/Point.txt +228 -79
- package/mcp-docs/web/components/Pressable.txt +28 -28
- package/mcp-docs/web/components/RadioCell.txt +25 -25
- package/mcp-docs/web/components/ReferenceLine.txt +208 -60
- package/mcp-docs/web/components/RemoteImage.txt +26 -26
- package/mcp-docs/web/components/RollingNumber.txt +28 -28
- package/mcp-docs/web/components/Scrubber.txt +463 -68
- package/mcp-docs/web/components/SectionHeader.txt +27 -27
- package/mcp-docs/web/components/SegmentedTabs.txt +27 -27
- package/mcp-docs/web/components/SelectChip.txt +27 -27
- package/mcp-docs/web/components/SelectOption.txt +27 -27
- package/mcp-docs/web/components/Sidebar.txt +27 -27
- package/mcp-docs/web/components/SidebarItem.txt +27 -27
- package/mcp-docs/web/components/Spacer.txt +34 -34
- package/mcp-docs/web/components/SparklineInteractive.txt +1 -1
- package/mcp-docs/web/components/Spinner.txt +27 -27
- package/mcp-docs/web/components/Stepper.txt +27 -27
- package/mcp-docs/web/components/TabLabel.txt +27 -27
- package/mcp-docs/web/components/TabNavigation.txt +26 -26
- package/mcp-docs/web/components/TabbedChips.txt +26 -26
- package/mcp-docs/web/components/TabbedChipsAlpha.txt +1 -1
- package/mcp-docs/web/components/Tabs.txt +27 -27
- package/mcp-docs/web/components/Tag.txt +27 -27
- package/mcp-docs/web/components/Text.txt +28 -28
- package/mcp-docs/web/components/TileButton.txt +28 -28
- package/mcp-docs/web/components/Toast.txt +27 -27
- package/mcp-docs/web/components/Tooltip.txt +17 -1
- package/mcp-docs/web/components/VStack.txt +28 -28
- package/mcp-docs/web/components/XAxis.txt +86 -22
- package/mcp-docs/web/components/YAxis.txt +133 -89
- package/package.json +1 -1
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# Point
|
|
2
2
|
|
|
3
|
-
Visual markers that highlight specific data values on a chart. Points can be customized with different colors, sizes, and
|
|
3
|
+
Visual markers that highlight specific data values on a chart. Points can be customized with different colors, sizes, and labels.
|
|
4
4
|
|
|
5
5
|
## Import
|
|
6
6
|
|
|
@@ -14,29 +14,70 @@ import { Point } from '@coinbase/cds-mobile-visualization'
|
|
|
14
14
|
|
|
15
15
|
Points are visual markers that highlight specific data values on a chart. They can be used to emphasize important data points, show discrete values, or provide interactive elements.
|
|
16
16
|
|
|
17
|
+
You can add points using `points` on Line or [LineChart](/components/graphs/LineChart).
|
|
18
|
+
|
|
17
19
|
```jsx
|
|
18
20
|
<LineChart
|
|
19
21
|
enableScrubbing
|
|
20
|
-
|
|
22
|
+
showArea
|
|
23
|
+
showYAxis
|
|
24
|
+
height={200}
|
|
25
|
+
points
|
|
21
26
|
series={[
|
|
22
27
|
{
|
|
23
28
|
id: 'prices',
|
|
24
29
|
data: [10, 22, 29, 45, 98, 45, 22, 52, 21, 4, 68, 20, 21, 58],
|
|
25
30
|
},
|
|
26
31
|
]}
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
32
|
+
xAxis={{
|
|
33
|
+
/* This prevents points close to the right edge from awkward cutoff when scrubbing */
|
|
34
|
+
range: ({ min, max }) => ({ min, max: max - 8 }),
|
|
35
|
+
}}
|
|
30
36
|
yAxis={{
|
|
31
37
|
showGrid: true,
|
|
32
38
|
}}
|
|
33
|
-
renderPoints={() => true}
|
|
34
39
|
>
|
|
35
40
|
<Scrubber />
|
|
36
41
|
</LineChart>
|
|
37
42
|
```
|
|
38
43
|
|
|
39
|
-
|
|
44
|
+
You can also add Points directly to a chart.
|
|
45
|
+
|
|
46
|
+
```jsx
|
|
47
|
+
function MyChart() {
|
|
48
|
+
const prices = [10, 22, 29, 45, 98, 45, 22, 52, 21, 4, 68, 20, 21, 58];
|
|
49
|
+
|
|
50
|
+
return (
|
|
51
|
+
<CartesianChart
|
|
52
|
+
height={200}
|
|
53
|
+
series={[
|
|
54
|
+
{
|
|
55
|
+
id: 'prices',
|
|
56
|
+
data: prices,
|
|
57
|
+
},
|
|
58
|
+
]}
|
|
59
|
+
inset={{
|
|
60
|
+
// Overriding the right offset gives us more space to place this
|
|
61
|
+
right: 32,
|
|
62
|
+
}}
|
|
63
|
+
>
|
|
64
|
+
<YAxis showGrid position="left" tickLabelFormatter={(value) => `$${value}`} />
|
|
65
|
+
{prices.map((price, index) => (
|
|
66
|
+
<Point
|
|
67
|
+
seriesId="prices"
|
|
68
|
+
key={index}
|
|
69
|
+
dataX={index}
|
|
70
|
+
dataY={price}
|
|
71
|
+
label={`$${price}`}
|
|
72
|
+
labelPosition="right"
|
|
73
|
+
/>
|
|
74
|
+
))}
|
|
75
|
+
</CartesianChart>
|
|
76
|
+
);
|
|
77
|
+
}
|
|
78
|
+
```
|
|
79
|
+
|
|
80
|
+
#### Conditional
|
|
40
81
|
|
|
41
82
|
You can conditionally render points to highlight specific values in your data, such as maximum/minimum values or outliers.
|
|
42
83
|
|
|
@@ -56,102 +97,46 @@ function AssetPriceWithMinMax() {
|
|
|
56
97
|
|
|
57
98
|
return (
|
|
58
99
|
<LineChart
|
|
59
|
-
series={[
|
|
60
|
-
{
|
|
61
|
-
id: 'btc',
|
|
62
|
-
data: data,
|
|
63
|
-
color: assets.btc.color,
|
|
64
|
-
},
|
|
65
|
-
]}
|
|
66
100
|
showArea
|
|
67
101
|
areaType="dotted"
|
|
68
|
-
height={
|
|
69
|
-
|
|
70
|
-
renderPoints={({ dataX, dataY }) => {
|
|
102
|
+
height={200}
|
|
103
|
+
points={({ dataX, dataY }: PointBaseProps) => {
|
|
71
104
|
const isMin = dataY === minPrice;
|
|
72
105
|
const isMax = dataY === maxPrice;
|
|
73
106
|
|
|
74
107
|
if (isMin) {
|
|
75
|
-
return { label: formatPrice(dataY),
|
|
108
|
+
return { label: formatPrice(dataY), labelPosition: 'bottom' };
|
|
76
109
|
}
|
|
77
110
|
|
|
78
111
|
if (isMax) {
|
|
79
|
-
return { label: formatPrice(dataY),
|
|
112
|
+
return { label: formatPrice(dataY), labelPosition: 'top' };
|
|
80
113
|
}
|
|
81
114
|
}}
|
|
115
|
+
series={[
|
|
116
|
+
{
|
|
117
|
+
id: 'btc',
|
|
118
|
+
data: data,
|
|
119
|
+
color: assets.btc.color,
|
|
120
|
+
},
|
|
121
|
+
]}
|
|
82
122
|
/>
|
|
83
123
|
);
|
|
84
124
|
};
|
|
85
125
|
```
|
|
86
126
|
|
|
87
|
-
###
|
|
88
|
-
|
|
89
|
-
Points can be made interactive by adding click handlers, allowing users to explore data in more detail.
|
|
90
|
-
|
|
91
|
-
```jsx
|
|
92
|
-
<LineChart
|
|
93
|
-
height={{ base: 150, tablet: 200, desktop: 250 }}
|
|
94
|
-
series={[
|
|
95
|
-
{
|
|
96
|
-
id: 'sales',
|
|
97
|
-
data: [120, 132, 101, 134, 90, 230, 210, 120, 180, 190, 210, 176],
|
|
98
|
-
},
|
|
99
|
-
]}
|
|
100
|
-
curve="monotone"
|
|
101
|
-
showYAxis
|
|
102
|
-
showArea
|
|
103
|
-
yAxis={{
|
|
104
|
-
showGrid: true,
|
|
105
|
-
label: 'Sales (units)',
|
|
106
|
-
}}
|
|
107
|
-
renderPoints={({ dataX, dataY }) => {
|
|
108
|
-
const months = [
|
|
109
|
-
'Jan',
|
|
110
|
-
'Feb',
|
|
111
|
-
'Mar',
|
|
112
|
-
'Apr',
|
|
113
|
-
'May',
|
|
114
|
-
'Jun',
|
|
115
|
-
'Jul',
|
|
116
|
-
'Aug',
|
|
117
|
-
'Sep',
|
|
118
|
-
'Oct',
|
|
119
|
-
'Nov',
|
|
120
|
-
'Dec',
|
|
121
|
-
];
|
|
122
|
-
return {
|
|
123
|
-
radius: 4,
|
|
124
|
-
onClick: () => alert(`${months[dataX]}: ${dataY} units sold`),
|
|
125
|
-
accessibilityLabel: `${months[dataX]} sales: ${dataY} units`,
|
|
126
|
-
};
|
|
127
|
-
}}
|
|
128
|
-
/>
|
|
129
|
-
```
|
|
130
|
-
|
|
131
|
-
### Customization
|
|
127
|
+
### Styling
|
|
132
128
|
|
|
133
|
-
Points support
|
|
129
|
+
Points support customization through various properties including colors, sizes, and labels.
|
|
134
130
|
|
|
135
131
|
```jsx
|
|
136
132
|
function CustomizedPoints() {
|
|
137
133
|
const theme = useTheme();
|
|
138
134
|
return (
|
|
139
135
|
<LineChart
|
|
140
|
-
height={{ base: 150, tablet: 200, desktop: 250 }}
|
|
141
|
-
series={[
|
|
142
|
-
{
|
|
143
|
-
id: 'performance',
|
|
144
|
-
data: [65, 70, 72, 85, 88, 92, 78, 82, 90, 95, 91, 94],
|
|
145
|
-
},
|
|
146
|
-
]}
|
|
147
|
-
curve="monotone"
|
|
148
|
-
showYAxis
|
|
149
136
|
showArea
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
}}
|
|
154
|
-
renderPoints={({ dataX, dataY }) => {
|
|
137
|
+
showYAxis
|
|
138
|
+
height={200}
|
|
139
|
+
points={({ dataX, dataY }) => {
|
|
155
140
|
const isHighPerformance = dataY >= 90;
|
|
156
141
|
const isLowPerformance = dataY < 75;
|
|
157
142
|
|
|
@@ -165,40 +150,160 @@ function CustomizedPoints() {
|
|
|
165
150
|
strokeWidth: 2,
|
|
166
151
|
stroke: theme.color.bg,
|
|
167
152
|
label: isHighPerformance || isLowPerformance ? `${dataY}%` : undefined,
|
|
168
|
-
|
|
169
|
-
verticalAlignment: isHighPerformance ? 'bottom' : 'top',
|
|
170
|
-
dy: isHighPerformance ? -10 : 10,
|
|
171
|
-
color: isHighPerformance
|
|
172
|
-
? theme.color.fgPositive
|
|
173
|
-
: isLowPerformance
|
|
174
|
-
? theme.color.fgNegative
|
|
175
|
-
: undefined,
|
|
176
|
-
},
|
|
153
|
+
labelPosition: isHighPerformance ? 'top' : 'bottom',
|
|
177
154
|
};
|
|
178
155
|
}}
|
|
156
|
+
series={[
|
|
157
|
+
{
|
|
158
|
+
id: 'performance',
|
|
159
|
+
data: [65, 70, 72, 85, 88, 92, 78, 82, 90, 95, 91, 94],
|
|
160
|
+
},
|
|
161
|
+
]}
|
|
162
|
+
yAxis={{
|
|
163
|
+
showGrid: true,
|
|
164
|
+
label: 'Performance Score',
|
|
165
|
+
}}
|
|
179
166
|
/>
|
|
180
167
|
);
|
|
181
168
|
}
|
|
182
169
|
```
|
|
183
170
|
|
|
171
|
+
#### Labels
|
|
172
|
+
|
|
173
|
+
You can use `labelPosition`, `labelOffset`, and `labelFont` to adjust Point's label.
|
|
174
|
+
|
|
175
|
+
```jsx
|
|
176
|
+
function Scatterplot() {
|
|
177
|
+
const dataPoints = [
|
|
178
|
+
{ x: 20, y: 30, label: 'A' },
|
|
179
|
+
{ x: 40, y: 65, label: 'B' },
|
|
180
|
+
{ x: 60, y: 45, label: 'C' },
|
|
181
|
+
{ x: 75, y: 80, label: 'D' },
|
|
182
|
+
];
|
|
183
|
+
|
|
184
|
+
return (
|
|
185
|
+
<CartesianChart
|
|
186
|
+
height={250}
|
|
187
|
+
xAxis={{
|
|
188
|
+
domain: { min: 0, max: 100 },
|
|
189
|
+
}}
|
|
190
|
+
yAxis={{
|
|
191
|
+
domain: { min: 0, max: 100 },
|
|
192
|
+
}}
|
|
193
|
+
>
|
|
194
|
+
<XAxis showLine showTickMarks showGrid />
|
|
195
|
+
<YAxis position="left" showLine showTickMarks showGrid />
|
|
196
|
+
{dataPoints.map((point, index) => (
|
|
197
|
+
<Point
|
|
198
|
+
key={index}
|
|
199
|
+
dataX={point.x}
|
|
200
|
+
dataY={point.y}
|
|
201
|
+
label={point.label}
|
|
202
|
+
labelPosition="top"
|
|
203
|
+
labelOffset={6}
|
|
204
|
+
labelFont="title3"
|
|
205
|
+
/>
|
|
206
|
+
))}
|
|
207
|
+
</CartesianChart>
|
|
208
|
+
);
|
|
209
|
+
}
|
|
210
|
+
```
|
|
211
|
+
|
|
212
|
+
#### Custom Label Position
|
|
213
|
+
|
|
214
|
+
You can also use `LabelComponent` to create custom label components.
|
|
215
|
+
|
|
216
|
+
```jsx
|
|
217
|
+
function ScatterplotWithCustomLabels() {
|
|
218
|
+
const theme = useTheme();
|
|
219
|
+
const dataPoints = [
|
|
220
|
+
{ x: 12, y: 34, label: 'A', color: theme.color.fgAccent },
|
|
221
|
+
{ x: 28, y: 67, label: 'B', color: theme.color.fgAccent },
|
|
222
|
+
{ x: 45, y: 23, label: 'C', color: theme.color.fgAccent },
|
|
223
|
+
{ x: 67, y: 89, label: 'D', color: theme.color.bgPositive },
|
|
224
|
+
{ x: 82, y: 76, label: 'E', color: theme.color.bgPositive },
|
|
225
|
+
{ x: 34, y: 91, label: 'F', color: theme.color.bgPositive },
|
|
226
|
+
{ x: 56, y: 45, label: 'G', color: theme.color.bgPositive },
|
|
227
|
+
{ x: 19, y: 12, label: 'H', color: theme.color.fgWarning },
|
|
228
|
+
{ x: 73, y: 28, label: 'I', color: theme.color.fgWarning },
|
|
229
|
+
{ x: 91, y: 54, label: 'J', color: theme.color.fgWarning },
|
|
230
|
+
{ x: 15, y: 58, label: 'K', color: theme.color.fgPrimary },
|
|
231
|
+
{ x: 39, y: 72, label: 'L', color: theme.color.fgPrimary },
|
|
232
|
+
{ x: 88, y: 15, label: 'M', color: theme.color.fgPrimary },
|
|
233
|
+
{ x: 52, y: 82, label: 'N', color: theme.color.fgPrimary },
|
|
234
|
+
];
|
|
235
|
+
|
|
236
|
+
// Calculate domain based on data
|
|
237
|
+
const xValues = dataPoints.map((p) => p.x);
|
|
238
|
+
const yValues = dataPoints.map((p) => p.y);
|
|
239
|
+
const xMin = Math.min(...xValues);
|
|
240
|
+
const xMax = Math.max(...xValues);
|
|
241
|
+
const yMin = Math.min(...yValues);
|
|
242
|
+
const yMax = Math.max(...yValues);
|
|
243
|
+
|
|
244
|
+
// Custom label component that places labels to the top-right
|
|
245
|
+
const TopRightPointLabel = ({ x, y, offset = 0, children }) => {
|
|
246
|
+
return (
|
|
247
|
+
<ChartText
|
|
248
|
+
horizontalAlignment="left"
|
|
249
|
+
verticalAlignment="bottom"
|
|
250
|
+
x={x + offset}
|
|
251
|
+
y={y - offset}
|
|
252
|
+
>
|
|
253
|
+
{children}
|
|
254
|
+
</ChartText>
|
|
255
|
+
);
|
|
256
|
+
};
|
|
257
|
+
|
|
258
|
+
return (
|
|
259
|
+
<CartesianChart
|
|
260
|
+
height={300}
|
|
261
|
+
xAxis={{
|
|
262
|
+
domain: { min: xMin, max: xMax },
|
|
263
|
+
domainLimit: 'nice',
|
|
264
|
+
}}
|
|
265
|
+
yAxis={{
|
|
266
|
+
domain: { min: yMin, max: yMax },
|
|
267
|
+
domainLimit: 'nice',
|
|
268
|
+
}}
|
|
269
|
+
>
|
|
270
|
+
<XAxis showLine showTickMarks showGrid />
|
|
271
|
+
<YAxis position="left" showLine showTickMarks showGrid />
|
|
272
|
+
{dataPoints.map((point, index) => (
|
|
273
|
+
<Point
|
|
274
|
+
key={index}
|
|
275
|
+
dataX={point.x}
|
|
276
|
+
dataY={point.y}
|
|
277
|
+
label={point.label}
|
|
278
|
+
labelOffset={8}
|
|
279
|
+
fill={point.color}
|
|
280
|
+
radius={5}
|
|
281
|
+
LabelComponent={TopRightPointLabel}
|
|
282
|
+
/>
|
|
283
|
+
))}
|
|
284
|
+
</CartesianChart>
|
|
285
|
+
);
|
|
286
|
+
}
|
|
287
|
+
```
|
|
288
|
+
|
|
184
289
|
## Props
|
|
185
290
|
|
|
186
291
|
| Prop | Type | Required | Default | Description |
|
|
187
292
|
| --- | --- | --- | --- | --- |
|
|
188
293
|
| `dataX` | `number` | Yes | `-` | X coordinate in data space (not pixel coordinates). |
|
|
189
294
|
| `dataY` | `number` | Yes | `-` | Y coordinate in data space (not pixel coordinates). |
|
|
190
|
-
| `
|
|
191
|
-
| `
|
|
192
|
-
| `
|
|
193
|
-
| `
|
|
194
|
-
| `
|
|
195
|
-
| `
|
|
295
|
+
| `LabelComponent` | `ComponentClass<PointLabelProps, any> \| FunctionComponent<PointLabelProps>` | No | `DefaultPointLabel` | Custom component to render the label. |
|
|
296
|
+
| `animate` | `boolean` | No | `-` | When set, overrides the charts animation setting for this specific point. |
|
|
297
|
+
| `fill` | `string` | No | `theme.color.fgPrimary` | The fill color of the point. |
|
|
298
|
+
| `label` | `string \| SkParagraph \| { value: string \| SkParagraph; }` | No | `-` | Simple text label to display at the point position. If provided, a label component will be automatically rendered. |
|
|
299
|
+
| `labelFont` | `display1 \| display2 \| display3 \| title1 \| title2 \| title3 \| title4 \| headline \| body \| label1 \| label2 \| caption \| legal` | No | `-` | Font style for the label text. |
|
|
300
|
+
| `labelOffset` | `number` | No | `2 * radius` | Distance in pixels to offset the label from the point. |
|
|
301
|
+
| `labelPosition` | `top \| bottom \| left \| right \| center` | No | `'center'` | Position of the label relative to the point. |
|
|
196
302
|
| `opacity` | `number` | No | `-` | Opacity of the point. |
|
|
197
|
-
| `
|
|
198
|
-
| `radius` | `number` | No | `4` | Radius of the point. |
|
|
303
|
+
| `radius` | `number` | No | `5` | Radius of the point. |
|
|
199
304
|
| `stroke` | `string` | No | `theme.color.bg` | Color of the outer stroke around the point. |
|
|
200
305
|
| `strokeWidth` | `number` | No | `2` | Outer stroke width of the point. Set to 0 to remove the stroke. |
|
|
201
|
-
| `
|
|
202
|
-
| `yAxisId` | `string` | No |
|
|
306
|
+
| `transition` | `{ type: timing; } & TimingConfig \| { type: spring; } & { stiffness?: number \| undefined; overshootClamping?: boolean \| undefined; restDisplacementThreshold?: number \| undefined; restSpeedThreshold?: number \| undefined; velocity?: number \| undefined; reduceMotion?: ReduceMotion \| undefined; } & { mass?: number \| undefined; damping?: number \| undefined; duration?: undefined; dampingRatio?: undefined; clamp?: undefined; } \| { type: spring; } & { stiffness?: number \| undefined; overshootClamping?: boolean \| undefined; restDisplacementThreshold?: number \| undefined; restSpeedThreshold?: number \| undefined; velocity?: number \| undefined; reduceMotion?: ReduceMotion \| undefined; } & { mass?: undefined; damping?: undefined; duration?: number \| undefined; dampingRatio?: number \| undefined; clamp?: { min?: number \| undefined; max?: number \| undefined; } \| undefined; }` | No | `-` | Transition configuration for point animations. Defines how the point transitions when position or color changes. |
|
|
307
|
+
| `yAxisId` | `string` | No | `first y-axis defined in chart props.` | Optional Y-axis id to specify which axis to plot along. |
|
|
203
308
|
|
|
204
309
|
|
|
@@ -109,8 +109,8 @@ On web, all [ARIA attributes](https://developer.mozilla.org/en-US/docs/Web/Acces
|
|
|
109
109
|
| `cancelable` | `boolean \| null` | No | `-` | Whether a press gesture can be interrupted by a parent gesture such as a scroll event. Defaults to true. |
|
|
110
110
|
| `children` | `((string \| number \| boolean \| ReactElement<any, string \| JSXElementConstructor<any>> \| Iterable<ReactNode> \| ReactPortal) & (string \| number \| boolean \| ReactElement<any, string \| JSXElementConstructor<any>> \| Iterable<ReactNode> \| ReactPortal \| ((state: PressableStateCallbackType) => ReactNode))) \| null` | No | `-` | Either children or a render prop that receives a boolean reflecting whether the component is currently pressed. |
|
|
111
111
|
| `color` | `currentColor \| fg \| fgMuted \| fgInverse \| fgPrimary \| fgWarning \| fgPositive \| fgNegative \| bg \| bgAlternate \| bgInverse \| bgOverlay \| bgElevation1 \| bgElevation2 \| bgPrimary \| bgPrimaryWash \| bgSecondary \| bgTertiary \| bgSecondaryWash \| bgNegative \| bgNegativeWash \| bgPositive \| bgPositiveWash \| bgWarning \| bgWarningWash \| bgLine \| bgLineHeavy \| bgLineInverse \| bgLinePrimary \| bgLinePrimarySubtle \| accentSubtleRed \| accentBoldRed \| accentSubtleGreen \| accentBoldGreen \| accentSubtleBlue \| accentBoldBlue \| accentSubtlePurple \| accentBoldPurple \| accentSubtleYellow \| accentBoldYellow \| accentSubtleGray \| accentBoldGray \| transparent` | No | `-` | - |
|
|
112
|
-
| `columnGap` | `0 \| 1 \| 2 \|
|
|
113
|
-
| `contentStyle` | `null \| false \| ViewStyle \| RegisteredStyle<ViewStyle> \| RecursiveArray<
|
|
112
|
+
| `columnGap` | `0 \| 1 \| 2 \| 0.25 \| 0.5 \| 0.75 \| 1.5 \| 3 \| 4 \| 5 \| 6 \| 7 \| 8 \| 9 \| 10` | No | `-` | - |
|
|
113
|
+
| `contentStyle` | `null \| false \| ViewStyle \| RegisteredStyle<ViewStyle> \| RecursiveArray<ViewStyle \| Falsy \| RegisteredStyle<ViewStyle>>` | No | `-` | Apply animated styles to the inner container. |
|
|
114
114
|
| `dangerouslySetBackground` | `string` | No | `-` | - |
|
|
115
115
|
| `debounceTime` | `number` | No | `500` | The amount of time to wait (in milliseconds) before invoking the debounced function. This prop is used in conjunction with the disableDebounce prop. The debounce function is configured to be invoked as soon as its called, but subsequent calls within the debounceTime period will be ignored. |
|
|
116
116
|
| `delayHoverIn` | `number \| null` | No | `-` | Duration to wait after hover in before calling onHoverIn. |
|
|
@@ -130,7 +130,7 @@ On web, all [ARIA attributes](https://developer.mozilla.org/en-US/docs/Web/Acces
|
|
|
130
130
|
| `fontFamily` | `inherit \| FontFamily` | No | `-` | - |
|
|
131
131
|
| `fontSize` | `inherit \| FontSize` | No | `-` | - |
|
|
132
132
|
| `fontWeight` | `inherit \| FontWeight` | No | `-` | - |
|
|
133
|
-
| `gap` | `0 \| 1 \| 2 \|
|
|
133
|
+
| `gap` | `0 \| 1 \| 2 \| 0.25 \| 0.5 \| 0.75 \| 1.5 \| 3 \| 4 \| 5 \| 6 \| 7 \| 8 \| 9 \| 10` | No | `-` | - |
|
|
134
134
|
| `height` | `string \| number` | No | `-` | - |
|
|
135
135
|
| `hitSlop` | `number \| Insets \| null` | No | `-` | Additional distance outside of this view in which a press is detected. |
|
|
136
136
|
| `justifyContent` | `flex-start \| flex-end \| center \| space-between \| space-around \| space-evenly` | No | `-` | - |
|
|
@@ -138,13 +138,13 @@ On web, all [ARIA attributes](https://developer.mozilla.org/en-US/docs/Web/Acces
|
|
|
138
138
|
| `left` | `string \| number` | No | `-` | - |
|
|
139
139
|
| `lineHeight` | `inherit \| LineHeight` | No | `-` | - |
|
|
140
140
|
| `loading` | `boolean` | No | `-` | Is the element currenty loading. When set to true, will disable element from press and keyboard events Is the element currenty loading. |
|
|
141
|
-
| `margin` | `0 \| -1 \| -2 \| -
|
|
142
|
-
| `marginBottom` | `0 \| -1 \| -2 \| -
|
|
143
|
-
| `marginEnd` | `0 \| -1 \| -2 \| -
|
|
144
|
-
| `marginStart` | `0 \| -1 \| -2 \| -
|
|
145
|
-
| `marginTop` | `0 \| -1 \| -2 \| -
|
|
146
|
-
| `marginX` | `0 \| -1 \| -2 \| -
|
|
147
|
-
| `marginY` | `0 \| -1 \| -2 \| -
|
|
141
|
+
| `margin` | `0 \| -1 \| -2 \| -0.25 \| -0.5 \| -0.75 \| -1.5 \| -3 \| -4 \| -5 \| -6 \| -7 \| -8 \| -9 \| -10` | No | `-` | - |
|
|
142
|
+
| `marginBottom` | `0 \| -1 \| -2 \| -0.25 \| -0.5 \| -0.75 \| -1.5 \| -3 \| -4 \| -5 \| -6 \| -7 \| -8 \| -9 \| -10` | No | `-` | - |
|
|
143
|
+
| `marginEnd` | `0 \| -1 \| -2 \| -0.25 \| -0.5 \| -0.75 \| -1.5 \| -3 \| -4 \| -5 \| -6 \| -7 \| -8 \| -9 \| -10` | No | `-` | - |
|
|
144
|
+
| `marginStart` | `0 \| -1 \| -2 \| -0.25 \| -0.5 \| -0.75 \| -1.5 \| -3 \| -4 \| -5 \| -6 \| -7 \| -8 \| -9 \| -10` | No | `-` | - |
|
|
145
|
+
| `marginTop` | `0 \| -1 \| -2 \| -0.25 \| -0.5 \| -0.75 \| -1.5 \| -3 \| -4 \| -5 \| -6 \| -7 \| -8 \| -9 \| -10` | No | `-` | - |
|
|
146
|
+
| `marginX` | `0 \| -1 \| -2 \| -0.25 \| -0.5 \| -0.75 \| -1.5 \| -3 \| -4 \| -5 \| -6 \| -7 \| -8 \| -9 \| -10` | No | `-` | - |
|
|
147
|
+
| `marginY` | `0 \| -1 \| -2 \| -0.25 \| -0.5 \| -0.75 \| -1.5 \| -3 \| -4 \| -5 \| -6 \| -7 \| -8 \| -9 \| -10` | No | `-` | - |
|
|
148
148
|
| `maxHeight` | `string \| number` | No | `-` | - |
|
|
149
149
|
| `maxWidth` | `string \| number` | No | `-` | - |
|
|
150
150
|
| `minHeight` | `string \| number` | No | `-` | - |
|
|
@@ -177,19 +177,19 @@ On web, all [ARIA attributes](https://developer.mozilla.org/en-US/docs/Web/Acces
|
|
|
177
177
|
| `onTouchStart` | `((event: GestureResponderEvent) => void)` | No | `-` | - |
|
|
178
178
|
| `opacity` | `number \| AnimatedNode` | No | `-` | - |
|
|
179
179
|
| `overflow` | `visible \| hidden \| scroll` | No | `-` | - |
|
|
180
|
-
| `padding` | `0 \| 1 \| 2 \|
|
|
181
|
-
| `paddingBottom` | `0 \| 1 \| 2 \|
|
|
182
|
-
| `paddingEnd` | `0 \| 1 \| 2 \|
|
|
183
|
-
| `paddingStart` | `0 \| 1 \| 2 \|
|
|
184
|
-
| `paddingTop` | `0 \| 1 \| 2 \|
|
|
185
|
-
| `paddingX` | `0 \| 1 \| 2 \|
|
|
186
|
-
| `paddingY` | `0 \| 1 \| 2 \|
|
|
180
|
+
| `padding` | `0 \| 1 \| 2 \| 0.25 \| 0.5 \| 0.75 \| 1.5 \| 3 \| 4 \| 5 \| 6 \| 7 \| 8 \| 9 \| 10` | No | `-` | - |
|
|
181
|
+
| `paddingBottom` | `0 \| 1 \| 2 \| 0.25 \| 0.5 \| 0.75 \| 1.5 \| 3 \| 4 \| 5 \| 6 \| 7 \| 8 \| 9 \| 10` | No | `-` | - |
|
|
182
|
+
| `paddingEnd` | `0 \| 1 \| 2 \| 0.25 \| 0.5 \| 0.75 \| 1.5 \| 3 \| 4 \| 5 \| 6 \| 7 \| 8 \| 9 \| 10` | No | `-` | - |
|
|
183
|
+
| `paddingStart` | `0 \| 1 \| 2 \| 0.25 \| 0.5 \| 0.75 \| 1.5 \| 3 \| 4 \| 5 \| 6 \| 7 \| 8 \| 9 \| 10` | No | `-` | - |
|
|
184
|
+
| `paddingTop` | `0 \| 1 \| 2 \| 0.25 \| 0.5 \| 0.75 \| 1.5 \| 3 \| 4 \| 5 \| 6 \| 7 \| 8 \| 9 \| 10` | No | `-` | - |
|
|
185
|
+
| `paddingX` | `0 \| 1 \| 2 \| 0.25 \| 0.5 \| 0.75 \| 1.5 \| 3 \| 4 \| 5 \| 6 \| 7 \| 8 \| 9 \| 10` | No | `-` | - |
|
|
186
|
+
| `paddingY` | `0 \| 1 \| 2 \| 0.25 \| 0.5 \| 0.75 \| 1.5 \| 3 \| 4 \| 5 \| 6 \| 7 \| 8 \| 9 \| 10` | No | `-` | - |
|
|
187
187
|
| `pin` | `top \| bottom \| left \| right \| all` | No | `-` | Direction in which to absolutely pin the box. |
|
|
188
|
-
| `position` | `
|
|
188
|
+
| `position` | `static \| relative \| fixed \| absolute \| sticky` | No | `-` | - |
|
|
189
189
|
| `pressRetentionOffset` | `number \| Insets \| null` | No | `-` | Additional distance outside of this view in which a touch is considered a press before onPressOut is triggered. |
|
|
190
190
|
| `ref` | `((instance: View \| null) => void) \| RefObject<View> \| null` | No | `-` | - |
|
|
191
191
|
| `right` | `string \| number` | No | `-` | - |
|
|
192
|
-
| `rowGap` | `0 \| 1 \| 2 \|
|
|
192
|
+
| `rowGap` | `0 \| 1 \| 2 \| 0.25 \| 0.5 \| 0.75 \| 1.5 \| 3 \| 4 \| 5 \| 6 \| 7 \| 8 \| 9 \| 10` | No | `-` | - |
|
|
193
193
|
| `style` | `StyleProp<ViewStyle> \| ((state: PressableStateCallbackType) => StyleProp<ViewStyle>)` | No | `-` | Either view styles or a function that receives a boolean reflecting whether the component is currently pressed and returns view styles. |
|
|
194
194
|
| `testID` | `string` | No | `-` | Used to locate this element in unit and end-to-end tests. Used to locate this view in end-to-end tests. |
|
|
195
195
|
| `testOnly_pressed` | `boolean \| null` | No | `-` | Used only for documentation or testing (e.g. snapshot testing). |
|
|
@@ -121,7 +121,7 @@ function Example() {
|
|
|
121
121
|
| `onAnimationEnd` | `(() => void)` | No | `-` | Callback fired when the progress animation ends. |
|
|
122
122
|
| `onAnimationStart` | `(() => void)` | No | `-` | Callback fired when the progress animation starts. |
|
|
123
123
|
| `ref` | `((instance: View \| null) => void) \| RefObject<View> \| null` | No | `-` | - |
|
|
124
|
-
| `style` | `null \| false \| ViewStyle \| RegisteredStyle<ViewStyle> \| RecursiveArray<
|
|
124
|
+
| `style` | `null \| false \| ViewStyle \| RegisteredStyle<ViewStyle> \| RecursiveArray<ViewStyle \| Falsy \| RegisteredStyle<ViewStyle>>` | No | `-` | Custom styles for the progress bar root. |
|
|
125
125
|
| `styles` | `{ root?: StyleProp<ViewStyle>; progress?: StyleProp<ViewStyle>; }` | No | `-` | Custom styles for the progress bar. |
|
|
126
126
|
| `testID` | `string` | No | `-` | Used to locate this element in unit and end-to-end tests. Under the hood, testID translates to data-testid on Web. On Mobile, testID stays the same - testID |
|
|
127
127
|
| `weight` | `normal \| heavy \| thin \| semiheavy` | No | `normal` | Toggle used to change thickness of progress visualization |
|
|
@@ -153,7 +153,7 @@ You can customize the appearance of the progress bar and labels using the `style
|
|
|
153
153
|
| `endLabel` | `number \| { value: number; render: (num: number, disabled?: boolean \| undefined) => ReactNode; }` | No | `-` | Label that is pinned to the end of the container. If a number is used then it will format it as a percentage. |
|
|
154
154
|
| `labelPlacement` | `above \| below \| beside` | No | `beside` | Position of label relative to the bar |
|
|
155
155
|
| `startLabel` | `number \| { value: number; render: (num: number, disabled?: boolean \| undefined) => ReactNode; }` | No | `-` | Label that is pinned to the start of the container. If a number is used then it will format it as a percentage. |
|
|
156
|
-
| `style` | `null \| false \| ViewStyle \| RegisteredStyle<ViewStyle> \| RecursiveArray<
|
|
156
|
+
| `style` | `null \| false \| ViewStyle \| RegisteredStyle<ViewStyle> \| RecursiveArray<ViewStyle \| Falsy \| RegisteredStyle<ViewStyle>>` | No | `-` | Custom styles for the progress bar with fixed labels root. |
|
|
157
157
|
| `styles` | `{ root?: StyleProp<ViewStyle>; labelContainer?: StyleProp<ViewStyle>; startLabel?: StyleProp<TextStyle>; endLabel?: StyleProp<TextStyle>; }` | No | `-` | Custom styles for the progress bar with fixed labels. |
|
|
158
158
|
| `testID` | `string` | No | `-` | Used to locate this element in unit and end-to-end tests. Under the hood, testID translates to data-testid on Web. On Mobile, testID stays the same - testID |
|
|
159
159
|
|
|
@@ -130,7 +130,7 @@ You can customize the appearance of the progress bar and float label using the `
|
|
|
130
130
|
| `progress` | `number` | Yes | `-` | Number between 0-1 representing the progress percentage |
|
|
131
131
|
| `disabled` | `boolean` | No | `false` | Toggle used to show a disabled progress visualization |
|
|
132
132
|
| `labelPlacement` | `above \| below` | No | `above` | Position of label relative to the bar |
|
|
133
|
-
| `style` | `null \| false \| ViewStyle \| RegisteredStyle<ViewStyle> \| RecursiveArray<
|
|
133
|
+
| `style` | `null \| false \| ViewStyle \| RegisteredStyle<ViewStyle> \| RecursiveArray<ViewStyle \| Falsy \| RegisteredStyle<ViewStyle>>` | No | `-` | Custom styles for the progress bar with float label root. |
|
|
134
134
|
| `styles` | `{ root?: StyleProp<ViewStyle>; labelContainer?: StyleProp<ViewStyle>; label?: StyleProp<TextStyle>; }` | No | `-` | Custom styles for the progress bar with float label. |
|
|
135
135
|
| `testID` | `string` | No | `-` | Used to locate this element in unit and end-to-end tests. Under the hood, testID translates to data-testid on Web. On Mobile, testID stays the same - testID |
|
|
136
136
|
|
|
@@ -228,7 +228,7 @@ function Example() {
|
|
|
228
228
|
| `onAnimationStart` | `(() => void)` | No | `-` | Callback fired when the progress animation starts. |
|
|
229
229
|
| `ref` | `((instance: View \| null) => void) \| RefObject<View> \| null` | No | `-` | - |
|
|
230
230
|
| `size` | `number` | No | `-` | Optional size in px for the visualization. This is useful if the visualization is used in an HStack. If this is omitted the visualization will fill the parent width or height. Since its a circular visualization it will fill the smaller of the parent width or height |
|
|
231
|
-
| `style` | `null \| false \| ViewStyle \| RegisteredStyle<ViewStyle> \| RecursiveArray<
|
|
231
|
+
| `style` | `null \| false \| ViewStyle \| RegisteredStyle<ViewStyle> \| RecursiveArray<ViewStyle \| Falsy \| RegisteredStyle<ViewStyle>>` | No | `-` | Custom styles for the progress circle root. |
|
|
232
232
|
| `styles` | `{ root?: StyleProp<ViewStyle>; svgContainer?: StyleProp<ViewStyle>; svg?: StyleProp<ViewStyle>; textContainer?: StyleProp<ViewStyle>; progress?: Partial<CircleProps>; circle?: Partial<CircleProps> \| undefined; } \| undefined` | No | `-` | Custom styles for the progress circle. |
|
|
233
233
|
| `testID` | `string` | No | `-` | Used to locate this element in unit and end-to-end tests. Under the hood, testID translates to data-testid on Web. On Mobile, testID stays the same - testID |
|
|
234
234
|
| `weight` | `normal \| heavy \| thin \| semiheavy` | No | `normal` | Toggle used to change thickness of progress visualization |
|
|
@@ -113,8 +113,8 @@ function CustomRadioCellExample() {
|
|
|
113
113
|
| `bottom` | `string \| number` | No | `-` | - |
|
|
114
114
|
| `checked` | `boolean` | No | `-` | Set the control to selected/on. |
|
|
115
115
|
| `color` | `currentColor \| fg \| fgMuted \| fgInverse \| fgPrimary \| fgWarning \| fgPositive \| fgNegative \| bg \| bgAlternate \| bgInverse \| bgOverlay \| bgElevation1 \| bgElevation2 \| bgPrimary \| bgPrimaryWash \| bgSecondary \| bgTertiary \| bgSecondaryWash \| bgNegative \| bgNegativeWash \| bgPositive \| bgPositiveWash \| bgWarning \| bgWarningWash \| bgLine \| bgLineHeavy \| bgLineInverse \| bgLinePrimary \| bgLinePrimarySubtle \| accentSubtleRed \| accentBoldRed \| accentSubtleGreen \| accentBoldGreen \| accentSubtleBlue \| accentBoldBlue \| accentSubtlePurple \| accentBoldPurple \| accentSubtleYellow \| accentBoldYellow \| accentSubtleGray \| accentBoldGray \| transparent` | No | `-` | - |
|
|
116
|
-
| `columnGap` | `0 \| 1 \| 2 \|
|
|
117
|
-
| `contentStyle` | `null \| false \| ViewStyle \| RegisteredStyle<ViewStyle> \| RecursiveArray<
|
|
116
|
+
| `columnGap` | `0 \| 1 \| 2 \| 0.25 \| 0.5 \| 0.75 \| 1.5 \| 3 \| 4 \| 5 \| 6 \| 7 \| 8 \| 9 \| 10` | No | `-` | - |
|
|
117
|
+
| `contentStyle` | `null \| false \| ViewStyle \| RegisteredStyle<ViewStyle> \| RecursiveArray<ViewStyle \| Falsy \| RegisteredStyle<ViewStyle>>` | No | `-` | Apply animated styles to the inner container. |
|
|
118
118
|
| `controlColor` | `currentColor \| fg \| fgMuted \| fgInverse \| fgPrimary \| fgWarning \| fgPositive \| fgNegative \| bg \| bgAlternate \| bgInverse \| bgOverlay \| bgElevation1 \| bgElevation2 \| bgPrimary \| bgPrimaryWash \| bgSecondary \| bgTertiary \| bgSecondaryWash \| bgNegative \| bgNegativeWash \| bgPositive \| bgPositiveWash \| bgWarning \| bgWarningWash \| bgLine \| bgLineHeavy \| bgLineInverse \| bgLinePrimary \| bgLinePrimarySubtle \| accentSubtleRed \| accentBoldRed \| accentSubtleGreen \| accentBoldGreen \| accentSubtleBlue \| accentBoldBlue \| accentSubtlePurple \| accentBoldPurple \| accentSubtleYellow \| accentBoldYellow \| accentSubtleGray \| accentBoldGray \| transparent` | No | `bgPrimary` | Sets the checked/active color of the control. |
|
|
119
119
|
| `dangerouslySetBackground` | `string` | No | `-` | - |
|
|
120
120
|
| `debounceTime` | `number` | No | `500` | The amount of time to wait (in milliseconds) before invoking the debounced function. This prop is used in conjunction with the disableDebounce prop. The debounce function is configured to be invoked as soon as its called, but subsequent calls within the debounceTime period will be ignored. |
|
|
@@ -133,20 +133,20 @@ function CustomRadioCellExample() {
|
|
|
133
133
|
| `fontFamily` | `inherit \| FontFamily` | No | `-` | - |
|
|
134
134
|
| `fontSize` | `inherit \| FontSize` | No | `-` | - |
|
|
135
135
|
| `fontWeight` | `inherit \| FontWeight` | No | `-` | - |
|
|
136
|
-
| `gap` | `0 \| 1 \| 2 \|
|
|
136
|
+
| `gap` | `0 \| 1 \| 2 \| 0.25 \| 0.5 \| 0.75 \| 1.5 \| 3 \| 4 \| 5 \| 6 \| 7 \| 8 \| 9 \| 10` | No | `-` | - |
|
|
137
137
|
| `height` | `string \| number` | No | `-` | - |
|
|
138
138
|
| `indeterminate` | `boolean` | No | `-` | Enable indeterminate state. Useful when you want to indicate that sub-items of a control are partially filled. |
|
|
139
139
|
| `justifyContent` | `flex-start \| flex-end \| center \| space-between \| space-around \| space-evenly` | No | `-` | - |
|
|
140
140
|
| `left` | `string \| number` | No | `-` | - |
|
|
141
141
|
| `lineHeight` | `inherit \| LineHeight` | No | `-` | - |
|
|
142
142
|
| `loading` | `boolean` | No | `-` | Is the element currenty loading. When set to true, will disable element from press and keyboard events Is the element currenty loading. |
|
|
143
|
-
| `margin` | `0 \| -1 \| -2 \| -
|
|
144
|
-
| `marginBottom` | `0 \| -1 \| -2 \| -
|
|
145
|
-
| `marginEnd` | `0 \| -1 \| -2 \| -
|
|
146
|
-
| `marginStart` | `0 \| -1 \| -2 \| -
|
|
147
|
-
| `marginTop` | `0 \| -1 \| -2 \| -
|
|
148
|
-
| `marginX` | `0 \| -1 \| -2 \| -
|
|
149
|
-
| `marginY` | `0 \| -1 \| -2 \| -
|
|
143
|
+
| `margin` | `0 \| -1 \| -2 \| -0.25 \| -0.5 \| -0.75 \| -1.5 \| -3 \| -4 \| -5 \| -6 \| -7 \| -8 \| -9 \| -10` | No | `-` | - |
|
|
144
|
+
| `marginBottom` | `0 \| -1 \| -2 \| -0.25 \| -0.5 \| -0.75 \| -1.5 \| -3 \| -4 \| -5 \| -6 \| -7 \| -8 \| -9 \| -10` | No | `-` | - |
|
|
145
|
+
| `marginEnd` | `0 \| -1 \| -2 \| -0.25 \| -0.5 \| -0.75 \| -1.5 \| -3 \| -4 \| -5 \| -6 \| -7 \| -8 \| -9 \| -10` | No | `-` | - |
|
|
146
|
+
| `marginStart` | `0 \| -1 \| -2 \| -0.25 \| -0.5 \| -0.75 \| -1.5 \| -3 \| -4 \| -5 \| -6 \| -7 \| -8 \| -9 \| -10` | No | `-` | - |
|
|
147
|
+
| `marginTop` | `0 \| -1 \| -2 \| -0.25 \| -0.5 \| -0.75 \| -1.5 \| -3 \| -4 \| -5 \| -6 \| -7 \| -8 \| -9 \| -10` | No | `-` | - |
|
|
148
|
+
| `marginX` | `0 \| -1 \| -2 \| -0.25 \| -0.5 \| -0.75 \| -1.5 \| -3 \| -4 \| -5 \| -6 \| -7 \| -8 \| -9 \| -10` | No | `-` | - |
|
|
149
|
+
| `marginY` | `0 \| -1 \| -2 \| -0.25 \| -0.5 \| -0.75 \| -1.5 \| -3 \| -4 \| -5 \| -6 \| -7 \| -8 \| -9 \| -10` | No | `-` | - |
|
|
150
150
|
| `maxHeight` | `string \| number` | No | `-` | - |
|
|
151
151
|
| `maxWidth` | `string \| number` | No | `-` | - |
|
|
152
152
|
| `minHeight` | `string \| number` | No | `-` | - |
|
|
@@ -167,21 +167,21 @@ function CustomRadioCellExample() {
|
|
|
167
167
|
| `onPress` | `((event: GestureResponderEvent) => void) \| null` | No | `-` | Called when a single tap gesture is detected. |
|
|
168
168
|
| `opacity` | `number \| AnimatedNode` | No | `-` | - |
|
|
169
169
|
| `overflow` | `visible \| hidden \| scroll` | No | `-` | - |
|
|
170
|
-
| `padding` | `0 \| 1 \| 2 \|
|
|
171
|
-
| `paddingBottom` | `0 \| 1 \| 2 \|
|
|
172
|
-
| `paddingEnd` | `0 \| 1 \| 2 \|
|
|
173
|
-
| `paddingStart` | `0 \| 1 \| 2 \|
|
|
174
|
-
| `paddingTop` | `0 \| 1 \| 2 \|
|
|
175
|
-
| `paddingX` | `0 \| 1 \| 2 \|
|
|
176
|
-
| `paddingY` | `0 \| 1 \| 2 \|
|
|
170
|
+
| `padding` | `0 \| 1 \| 2 \| 0.25 \| 0.5 \| 0.75 \| 1.5 \| 3 \| 4 \| 5 \| 6 \| 7 \| 8 \| 9 \| 10` | No | `-` | - |
|
|
171
|
+
| `paddingBottom` | `0 \| 1 \| 2 \| 0.25 \| 0.5 \| 0.75 \| 1.5 \| 3 \| 4 \| 5 \| 6 \| 7 \| 8 \| 9 \| 10` | No | `-` | - |
|
|
172
|
+
| `paddingEnd` | `0 \| 1 \| 2 \| 0.25 \| 0.5 \| 0.75 \| 1.5 \| 3 \| 4 \| 5 \| 6 \| 7 \| 8 \| 9 \| 10` | No | `-` | - |
|
|
173
|
+
| `paddingStart` | `0 \| 1 \| 2 \| 0.25 \| 0.5 \| 0.75 \| 1.5 \| 3 \| 4 \| 5 \| 6 \| 7 \| 8 \| 9 \| 10` | No | `-` | - |
|
|
174
|
+
| `paddingTop` | `0 \| 1 \| 2 \| 0.25 \| 0.5 \| 0.75 \| 1.5 \| 3 \| 4 \| 5 \| 6 \| 7 \| 8 \| 9 \| 10` | No | `-` | - |
|
|
175
|
+
| `paddingX` | `0 \| 1 \| 2 \| 0.25 \| 0.5 \| 0.75 \| 1.5 \| 3 \| 4 \| 5 \| 6 \| 7 \| 8 \| 9 \| 10` | No | `-` | - |
|
|
176
|
+
| `paddingY` | `0 \| 1 \| 2 \| 0.25 \| 0.5 \| 0.75 \| 1.5 \| 3 \| 4 \| 5 \| 6 \| 7 \| 8 \| 9 \| 10` | No | `-` | - |
|
|
177
177
|
| `pin` | `top \| bottom \| left \| right \| all` | No | `-` | Direction in which to absolutely pin the box. |
|
|
178
|
-
| `position` | `
|
|
178
|
+
| `position` | `static \| relative \| fixed \| absolute \| sticky` | No | `-` | - |
|
|
179
179
|
| `pressedBorderColor` | `currentColor \| fg \| fgMuted \| fgInverse \| fgPrimary \| fgWarning \| fgPositive \| fgNegative \| bg \| bgAlternate \| bgInverse \| bgOverlay \| bgElevation1 \| bgElevation2 \| bgPrimary \| bgPrimaryWash \| bgSecondary \| bgTertiary \| bgSecondaryWash \| bgNegative \| bgNegativeWash \| bgPositive \| bgPositiveWash \| bgWarning \| bgWarningWash \| bgLine \| bgLineHeavy \| bgLineInverse \| bgLinePrimary \| bgLinePrimarySubtle \| accentSubtleRed \| accentBoldRed \| accentSubtleGreen \| accentBoldGreen \| accentSubtleBlue \| accentBoldBlue \| accentSubtlePurple \| accentBoldPurple \| accentSubtleYellow \| accentBoldYellow \| accentSubtleGray \| accentBoldGray \| transparent` | No | `-` | - |
|
|
180
180
|
| `pressedBorderWidth` | `0 \| 100 \| 200 \| 300 \| 400 \| 500` | No | `-` | - |
|
|
181
181
|
| `readOnly` | `boolean` | No | `-` | Set the control to ready-only. Similar effect as disabled. |
|
|
182
182
|
| `ref` | `null \| (instance: View \| null) => void \| MutableRefObject<View \| null>` | No | `-` | - |
|
|
183
183
|
| `right` | `string \| number` | No | `-` | - |
|
|
184
|
-
| `rowGap` | `0 \| 1 \| 2 \|
|
|
184
|
+
| `rowGap` | `0 \| 1 \| 2 \| 0.25 \| 0.5 \| 0.75 \| 1.5 \| 3 \| 4 \| 5 \| 6 \| 7 \| 8 \| 9 \| 10` | No | `-` | - |
|
|
185
185
|
| `styles` | `{ root?: StyleProp<ViewStyle>; radioContainer?: StyleProp<ViewStyle>; contentContainer?: StyleProp<ViewStyle>; title?: StyleProp<TextStyle>; description?: StyleProp<TextStyle>; }` | No | `-` | - |
|
|
186
186
|
| `testID` | `string` | No | `-` | Used to locate this view in end-to-end tests. Used to locate this element in unit and end-to-end tests. |
|
|
187
187
|
| `textAlign` | `left \| right \| auto \| center \| justify` | No | `-` | - |
|