@coinbase/cds-mobile 8.66.2 → 9.0.0-rc.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.
Files changed (733) hide show
  1. package/CHANGELOG.md +12 -0
  2. package/README.md +2 -3
  3. package/dts/accordion/AccordionHeader.d.ts +16 -18
  4. package/dts/accordion/AccordionHeader.d.ts.map +1 -1
  5. package/dts/accordion/AccordionItem.d.ts +2 -2
  6. package/dts/accordion/AccordionItem.d.ts.map +1 -1
  7. package/dts/accordion/AccordionPanel.d.ts +10 -12
  8. package/dts/accordion/AccordionPanel.d.ts.map +1 -1
  9. package/dts/alpha/carousel/Carousel.d.ts +27 -29
  10. package/dts/alpha/carousel/Carousel.d.ts.map +1 -1
  11. package/dts/alpha/carousel/useCarousel.d.ts +1 -1
  12. package/dts/alpha/carousel/useCarousel.d.ts.map +1 -1
  13. package/dts/alpha/combobox/Combobox.d.ts +1 -1
  14. package/dts/alpha/combobox/Combobox.d.ts.map +1 -1
  15. package/dts/alpha/combobox/DefaultComboboxControl.d.ts +1 -0
  16. package/dts/alpha/combobox/DefaultComboboxControl.d.ts.map +1 -1
  17. package/dts/alpha/data-card/DataCard.d.ts +15 -17
  18. package/dts/alpha/data-card/DataCard.d.ts.map +1 -1
  19. package/dts/alpha/select/DefaultSelectControl.d.ts +45 -49
  20. package/dts/alpha/select/DefaultSelectControl.d.ts.map +1 -1
  21. package/dts/alpha/select/DefaultSelectDropdown.d.ts.map +1 -1
  22. package/dts/alpha/select/DefaultSelectOption.d.ts.map +1 -1
  23. package/dts/alpha/select/types.d.ts +5 -4
  24. package/dts/alpha/select/types.d.ts.map +1 -1
  25. package/dts/animation/Lottie.d.ts +36 -38
  26. package/dts/animation/Lottie.d.ts.map +1 -1
  27. package/dts/animation/LottieStatusAnimation.d.ts +1 -1
  28. package/dts/animation/LottieStatusAnimation.d.ts.map +1 -1
  29. package/dts/animation/createLottie.d.ts +1 -1
  30. package/dts/animation/createLottie.d.ts.map +1 -1
  31. package/dts/banner/Banner.d.ts +120 -51
  32. package/dts/banner/Banner.d.ts.map +1 -1
  33. package/dts/buttons/AvatarButton.d.ts +90 -3
  34. package/dts/buttons/AvatarButton.d.ts.map +1 -1
  35. package/dts/buttons/Button.d.ts +63 -66
  36. package/dts/buttons/Button.d.ts.map +1 -1
  37. package/dts/buttons/DefaultSlideButtonBackground.d.ts +17 -19
  38. package/dts/buttons/DefaultSlideButtonBackground.d.ts.map +1 -1
  39. package/dts/buttons/DefaultSlideButtonHandle.d.ts +36 -28
  40. package/dts/buttons/DefaultSlideButtonHandle.d.ts.map +1 -1
  41. package/dts/buttons/IconButton.d.ts +22 -24
  42. package/dts/buttons/IconButton.d.ts.map +1 -1
  43. package/dts/buttons/IconCounterButton.d.ts +37 -25
  44. package/dts/buttons/IconCounterButton.d.ts.map +1 -1
  45. package/dts/buttons/SlideButton.d.ts +110 -106
  46. package/dts/buttons/SlideButton.d.ts.map +1 -1
  47. package/dts/cards/AnnouncementCard.d.ts +2 -6
  48. package/dts/cards/AnnouncementCard.d.ts.map +1 -1
  49. package/dts/cards/Card.d.ts +4 -0
  50. package/dts/cards/Card.d.ts.map +1 -1
  51. package/dts/cards/CardGroup.d.ts +17 -19
  52. package/dts/cards/CardGroup.d.ts.map +1 -1
  53. package/dts/cards/CardMedia.d.ts.map +1 -1
  54. package/dts/cards/CardRoot.d.ts +5 -7
  55. package/dts/cards/CardRoot.d.ts.map +1 -1
  56. package/dts/cards/ContentCard/ContentCard.d.ts +3 -5
  57. package/dts/cards/ContentCard/ContentCard.d.ts.map +1 -1
  58. package/dts/cards/ContentCard/ContentCardBody.d.ts +62 -65
  59. package/dts/cards/ContentCard/ContentCardBody.d.ts.map +1 -1
  60. package/dts/cards/ContentCard/ContentCardFooter.d.ts +21 -24
  61. package/dts/cards/ContentCard/ContentCardFooter.d.ts.map +1 -1
  62. package/dts/cards/ContentCard/ContentCardHeader.d.ts +50 -53
  63. package/dts/cards/ContentCard/ContentCardHeader.d.ts.map +1 -1
  64. package/dts/cards/DataCard.d.ts.map +1 -1
  65. package/dts/cards/FeatureEntryCard.d.ts +2 -6
  66. package/dts/cards/FeatureEntryCard.d.ts.map +1 -1
  67. package/dts/cards/FeedCard.d.ts +2 -10
  68. package/dts/cards/FeedCard.d.ts.map +1 -1
  69. package/dts/cards/LikeButton.d.ts +1 -1
  70. package/dts/cards/LikeButton.d.ts.map +1 -1
  71. package/dts/cards/MediaCard/index.d.ts +13 -15
  72. package/dts/cards/MediaCard/index.d.ts.map +1 -1
  73. package/dts/cards/MessagingCard/index.d.ts +8 -10
  74. package/dts/cards/MessagingCard/index.d.ts.map +1 -1
  75. package/dts/cards/NudgeCard.d.ts +5 -1
  76. package/dts/cards/NudgeCard.d.ts.map +1 -1
  77. package/dts/cards/UpsellCard.d.ts +6 -2
  78. package/dts/cards/UpsellCard.d.ts.map +1 -1
  79. package/dts/carousel/Carousel.d.ts +156 -167
  80. package/dts/carousel/Carousel.d.ts.map +1 -1
  81. package/dts/carousel/DefaultCarouselPagination.d.ts.map +1 -1
  82. package/dts/cells/Cell.d.ts +3 -2
  83. package/dts/cells/Cell.d.ts.map +1 -1
  84. package/dts/cells/ContentCellFallback.d.ts +4 -0
  85. package/dts/cells/ContentCellFallback.d.ts.map +1 -1
  86. package/dts/cells/ListCell.d.ts.map +1 -1
  87. package/dts/chips/Chip.d.ts +19 -21
  88. package/dts/chips/Chip.d.ts.map +1 -1
  89. package/dts/chips/ChipProps.d.ts +2 -6
  90. package/dts/chips/ChipProps.d.ts.map +1 -1
  91. package/dts/chips/InputChip.d.ts +21 -23
  92. package/dts/chips/InputChip.d.ts.map +1 -1
  93. package/dts/chips/MediaChip.d.ts +19 -21
  94. package/dts/chips/MediaChip.d.ts.map +1 -1
  95. package/dts/chips/SelectChip.d.ts +8 -10
  96. package/dts/chips/SelectChip.d.ts.map +1 -1
  97. package/dts/coachmark/Coachmark.d.ts +56 -59
  98. package/dts/coachmark/Coachmark.d.ts.map +1 -1
  99. package/dts/collapsible/Collapsible.d.ts +30 -32
  100. package/dts/collapsible/Collapsible.d.ts.map +1 -1
  101. package/dts/controls/CheckboxGroup.d.ts +2 -29
  102. package/dts/controls/CheckboxGroup.d.ts.map +1 -1
  103. package/dts/controls/HelperText.d.ts +7 -0
  104. package/dts/controls/HelperText.d.ts.map +1 -1
  105. package/dts/controls/InputIconButton.d.ts +18 -20
  106. package/dts/controls/InputIconButton.d.ts.map +1 -1
  107. package/dts/controls/InputStack.d.ts +10 -1
  108. package/dts/controls/InputStack.d.ts.map +1 -1
  109. package/dts/controls/NativeInput.d.ts +33 -35
  110. package/dts/controls/NativeInput.d.ts.map +1 -1
  111. package/dts/controls/RadioGroup.d.ts +2 -23
  112. package/dts/controls/RadioGroup.d.ts.map +1 -1
  113. package/dts/controls/SearchInput.d.ts +99 -101
  114. package/dts/controls/SearchInput.d.ts.map +1 -1
  115. package/dts/controls/Select.d.ts +23 -25
  116. package/dts/controls/Select.d.ts.map +1 -1
  117. package/dts/controls/SelectContext.d.ts +12 -0
  118. package/dts/controls/SelectContext.d.ts.map +1 -1
  119. package/dts/controls/SelectOption.d.ts +5 -2
  120. package/dts/controls/SelectOption.d.ts.map +1 -1
  121. package/dts/controls/Switch.d.ts +45 -5
  122. package/dts/controls/Switch.d.ts.map +1 -1
  123. package/dts/controls/TextInput.d.ts +82 -81
  124. package/dts/controls/TextInput.d.ts.map +1 -1
  125. package/dts/dates/Calendar.d.ts +63 -65
  126. package/dts/dates/Calendar.d.ts.map +1 -1
  127. package/dts/dates/DateInput.d.ts +8 -10
  128. package/dts/dates/DateInput.d.ts.map +1 -1
  129. package/dts/dates/DatePicker.d.ts +73 -75
  130. package/dts/dates/DatePicker.d.ts.map +1 -1
  131. package/dts/dots/DotCount.d.ts +12 -0
  132. package/dts/dots/DotCount.d.ts.map +1 -1
  133. package/dts/examples/ExampleScreen.d.ts +22 -22
  134. package/dts/examples/ExampleScreen.d.ts.map +1 -1
  135. package/dts/gradients/LinearGradient.d.ts +0 -8
  136. package/dts/gradients/LinearGradient.d.ts.map +1 -1
  137. package/dts/hooks/useA11y.d.ts +1 -1
  138. package/dts/hooks/useA11y.d.ts.map +1 -1
  139. package/dts/hooks/useAppState.d.ts.map +1 -1
  140. package/dts/hooks/useCellSpacing.d.ts +26 -26
  141. package/dts/hooks/useDimensions.d.ts +1 -1
  142. package/dts/hooks/useDimensions.d.ts.map +1 -1
  143. package/dts/hooks/useDotPinStyles.d.ts +24 -0
  144. package/dts/hooks/useDotPinStyles.d.ts.map +1 -1
  145. package/dts/hooks/useHasNotch.d.ts +4 -0
  146. package/dts/hooks/useHasNotch.d.ts.map +1 -1
  147. package/dts/hooks/useHorizontalScrollToTarget.d.ts +1 -1
  148. package/dts/hooks/useHorizontallyScrollingPressables.d.ts +1 -1
  149. package/dts/hooks/useStatusBarHeight.d.ts +2 -1
  150. package/dts/hooks/useStatusBarHeight.d.ts.map +1 -1
  151. package/dts/icons/Icon.d.ts +16 -1
  152. package/dts/icons/Icon.d.ts.map +1 -1
  153. package/dts/icons/TextIcon.d.ts.map +1 -1
  154. package/dts/layout/Box.d.ts +38 -36
  155. package/dts/layout/Box.d.ts.map +1 -1
  156. package/dts/layout/Fallback.d.ts +2 -1
  157. package/dts/layout/Fallback.d.ts.map +1 -1
  158. package/dts/layout/Group.d.ts +36 -38
  159. package/dts/layout/Group.d.ts.map +1 -1
  160. package/dts/layout/HStack.d.ts +3 -5
  161. package/dts/layout/HStack.d.ts.map +1 -1
  162. package/dts/layout/Spacer.d.ts.map +1 -1
  163. package/dts/layout/VStack.d.ts +3 -5
  164. package/dts/layout/VStack.d.ts.map +1 -1
  165. package/dts/media/Avatar.d.ts.map +1 -1
  166. package/dts/media/Carousel/Carousel.d.ts +12 -14
  167. package/dts/media/Carousel/Carousel.d.ts.map +1 -1
  168. package/dts/media/Carousel/useCarousel.d.ts +1 -1
  169. package/dts/media/Carousel/useCarousel.d.ts.map +1 -1
  170. package/dts/media/RemoteImage.d.ts +1 -1
  171. package/dts/media/RemoteImage.d.ts.map +1 -1
  172. package/dts/media/RemoteImageGroup.d.ts.map +1 -1
  173. package/dts/motion/ColorSurge.d.ts +8 -10
  174. package/dts/motion/ColorSurge.d.ts.map +1 -1
  175. package/dts/motion/Pulse.d.ts +21 -23
  176. package/dts/motion/Pulse.d.ts.map +1 -1
  177. package/dts/motion/Shake.d.ts +4 -6
  178. package/dts/motion/Shake.d.ts.map +1 -1
  179. package/dts/motion/convertMotionConfig.d.ts +8 -24
  180. package/dts/motion/convertMotionConfig.d.ts.map +1 -1
  181. package/dts/multi-content-module/MultiContentModule.d.ts +6 -8
  182. package/dts/multi-content-module/MultiContentModule.d.ts.map +1 -1
  183. package/dts/navigation/NavigationTitleSelect.d.ts.map +1 -1
  184. package/dts/numbers/RollingNumber/RollingNumber.d.ts +142 -144
  185. package/dts/numbers/RollingNumber/RollingNumber.d.ts.map +1 -1
  186. package/dts/numpad/Numpad.d.ts +10 -13
  187. package/dts/numpad/Numpad.d.ts.map +1 -1
  188. package/dts/overlays/Alert.d.ts +45 -47
  189. package/dts/overlays/Alert.d.ts.map +1 -1
  190. package/dts/overlays/PortalProvider.d.ts +20 -0
  191. package/dts/overlays/PortalProvider.d.ts.map +1 -1
  192. package/dts/overlays/Toast.d.ts +27 -30
  193. package/dts/overlays/Toast.d.ts.map +1 -1
  194. package/dts/overlays/drawer/Drawer.d.ts +83 -87
  195. package/dts/overlays/drawer/Drawer.d.ts.map +1 -1
  196. package/dts/overlays/drawer/DrawerStatusBar.d.ts +4 -0
  197. package/dts/overlays/drawer/DrawerStatusBar.d.ts.map +1 -1
  198. package/dts/overlays/modal/Modal.d.ts +20 -22
  199. package/dts/overlays/modal/Modal.d.ts.map +1 -1
  200. package/dts/overlays/modal/ModalFooter.d.ts.map +1 -1
  201. package/dts/overlays/overlay/Overlay.d.ts.map +1 -1
  202. package/dts/overlays/tooltip/useTooltipPosition.d.ts.map +1 -1
  203. package/dts/overlays/tray/Tray.d.ts +33 -37
  204. package/dts/overlays/tray/Tray.d.ts.map +1 -1
  205. package/dts/overlays/useModal.d.ts +1 -1
  206. package/dts/page/PageFooter.d.ts +31 -33
  207. package/dts/page/PageFooter.d.ts.map +1 -1
  208. package/dts/page/PageHeader.d.ts +50 -52
  209. package/dts/page/PageHeader.d.ts.map +1 -1
  210. package/dts/section-header/SectionHeader.d.ts +13 -15
  211. package/dts/section-header/SectionHeader.d.ts.map +1 -1
  212. package/dts/stepper/DefaultStepperHeaderHorizontal.d.ts.map +1 -1
  213. package/dts/stepper/DefaultStepperProgressHorizontal.d.ts.map +1 -1
  214. package/dts/stepper/DefaultStepperProgressVertical.d.ts.map +1 -1
  215. package/dts/stepper/Stepper.d.ts +22 -14
  216. package/dts/stepper/Stepper.d.ts.map +1 -1
  217. package/dts/sticky-footer/StickyFooter.d.ts +10 -12
  218. package/dts/sticky-footer/StickyFooter.d.ts.map +1 -1
  219. package/dts/styles/styleProps.d.ts +7 -3
  220. package/dts/styles/styleProps.d.ts.map +1 -1
  221. package/dts/system/AndroidNavigationBar.d.ts +17 -0
  222. package/dts/system/AndroidNavigationBar.d.ts.map +1 -1
  223. package/dts/system/Pressable.d.ts +35 -37
  224. package/dts/system/Pressable.d.ts.map +1 -1
  225. package/dts/system/ThemeProvider.d.ts +14 -8
  226. package/dts/system/ThemeProvider.d.ts.map +1 -1
  227. package/dts/tabs/DefaultTab.d.ts +15 -17
  228. package/dts/tabs/DefaultTab.d.ts.map +1 -1
  229. package/dts/tabs/TabIndicator.d.ts +11 -13
  230. package/dts/tabs/TabIndicator.d.ts.map +1 -1
  231. package/dts/tabs/Tabs.d.ts.map +1 -1
  232. package/dts/tabs/hooks/useDotAnimation.d.ts +30 -0
  233. package/dts/tabs/hooks/useDotAnimation.d.ts.map +1 -1
  234. package/dts/tag/Tag.d.ts +40 -42
  235. package/dts/tag/Tag.d.ts.map +1 -1
  236. package/dts/tour/DefaultTourMask.d.ts.map +1 -1
  237. package/dts/tour/DefaultTourStepArrow.d.ts +2 -2
  238. package/dts/tour/DefaultTourStepArrow.d.ts.map +1 -1
  239. package/dts/tour/Tour.d.ts.map +1 -1
  240. package/dts/tour/TourStep.d.ts.map +1 -1
  241. package/dts/typography/Text.d.ts +74 -64
  242. package/dts/typography/Text.d.ts.map +1 -1
  243. package/dts/typography/TextBody.d.ts +34 -24
  244. package/dts/typography/TextBody.d.ts.map +1 -1
  245. package/dts/typography/TextCaption.d.ts +34 -24
  246. package/dts/typography/TextCaption.d.ts.map +1 -1
  247. package/dts/typography/TextDisplay1.d.ts +34 -24
  248. package/dts/typography/TextDisplay1.d.ts.map +1 -1
  249. package/dts/typography/TextDisplay2.d.ts +34 -24
  250. package/dts/typography/TextDisplay2.d.ts.map +1 -1
  251. package/dts/typography/TextDisplay3.d.ts +34 -24
  252. package/dts/typography/TextDisplay3.d.ts.map +1 -1
  253. package/dts/typography/TextHeadline.d.ts +34 -24
  254. package/dts/typography/TextHeadline.d.ts.map +1 -1
  255. package/dts/typography/TextInherited.d.ts +34 -24
  256. package/dts/typography/TextInherited.d.ts.map +1 -1
  257. package/dts/typography/TextLabel1.d.ts +34 -24
  258. package/dts/typography/TextLabel1.d.ts.map +1 -1
  259. package/dts/typography/TextLabel2.d.ts +34 -24
  260. package/dts/typography/TextLabel2.d.ts.map +1 -1
  261. package/dts/typography/TextLegal.d.ts +34 -24
  262. package/dts/typography/TextLegal.d.ts.map +1 -1
  263. package/dts/typography/TextTitle1.d.ts +34 -24
  264. package/dts/typography/TextTitle1.d.ts.map +1 -1
  265. package/dts/typography/TextTitle2.d.ts +34 -24
  266. package/dts/typography/TextTitle2.d.ts.map +1 -1
  267. package/dts/typography/TextTitle3.d.ts +34 -24
  268. package/dts/typography/TextTitle3.d.ts.map +1 -1
  269. package/dts/typography/TextTitle4.d.ts +34 -24
  270. package/dts/typography/TextTitle4.d.ts.map +1 -1
  271. package/dts/utils/flattenAndJoinNodes.d.ts +13 -1
  272. package/dts/utils/flattenAndJoinNodes.d.ts.map +1 -1
  273. package/dts/utils/testHelpers.d.ts +5 -0
  274. package/dts/utils/testHelpers.d.ts.map +1 -1
  275. package/dts/visualizations/ProgressBar.d.ts +37 -39
  276. package/dts/visualizations/ProgressBar.d.ts.map +1 -1
  277. package/dts/visualizations/ProgressCircle.d.ts +54 -56
  278. package/dts/visualizations/ProgressCircle.d.ts.map +1 -1
  279. package/dts/visualizations/ProgressIndicator.d.ts +25 -28
  280. package/dts/visualizations/ProgressIndicator.d.ts.map +1 -1
  281. package/dts/visualizations/VisualizationContainer.d.ts +1 -1
  282. package/dts/visualizations/VisualizationContainer.d.ts.map +1 -1
  283. package/dts/visualizations/chart/CartesianChart.d.ts +204 -0
  284. package/dts/visualizations/chart/CartesianChart.d.ts.map +1 -0
  285. package/dts/visualizations/chart/ChartContextBridge.d.ts +28 -0
  286. package/dts/visualizations/chart/ChartContextBridge.d.ts.map +1 -0
  287. package/dts/visualizations/chart/ChartProvider.d.ts +9 -0
  288. package/dts/visualizations/chart/ChartProvider.d.ts.map +1 -0
  289. package/dts/visualizations/chart/Path.d.ts +122 -0
  290. package/dts/visualizations/chart/Path.d.ts.map +1 -0
  291. package/dts/visualizations/chart/PeriodSelector.d.ts +93 -0
  292. package/dts/visualizations/chart/PeriodSelector.d.ts.map +1 -0
  293. package/dts/visualizations/chart/area/Area.d.ts +83 -0
  294. package/dts/visualizations/chart/area/Area.d.ts.map +1 -0
  295. package/dts/visualizations/chart/area/AreaChart.d.ts +153 -0
  296. package/dts/visualizations/chart/area/AreaChart.d.ts.map +1 -0
  297. package/dts/visualizations/chart/area/DottedArea.d.ts +46 -0
  298. package/dts/visualizations/chart/area/DottedArea.d.ts.map +1 -0
  299. package/dts/visualizations/chart/area/GradientArea.d.ts +36 -0
  300. package/dts/visualizations/chart/area/GradientArea.d.ts.map +1 -0
  301. package/dts/visualizations/chart/area/SolidArea.d.ts +23 -0
  302. package/dts/visualizations/chart/area/SolidArea.d.ts.map +1 -0
  303. package/dts/visualizations/chart/area/index.d.ts +6 -0
  304. package/dts/visualizations/chart/area/index.d.ts.map +1 -0
  305. package/dts/visualizations/chart/axis/Axis.d.ts +174 -0
  306. package/dts/visualizations/chart/axis/Axis.d.ts.map +1 -0
  307. package/dts/visualizations/chart/axis/DefaultAxisTickLabel.d.ts +8 -0
  308. package/dts/visualizations/chart/axis/DefaultAxisTickLabel.d.ts.map +1 -0
  309. package/dts/visualizations/chart/axis/XAxis.d.ts +22 -0
  310. package/dts/visualizations/chart/axis/XAxis.d.ts.map +1 -0
  311. package/dts/visualizations/chart/axis/YAxis.d.ts +22 -0
  312. package/dts/visualizations/chart/axis/YAxis.d.ts.map +1 -0
  313. package/dts/visualizations/chart/axis/index.d.ts +5 -0
  314. package/dts/visualizations/chart/axis/index.d.ts.map +1 -0
  315. package/dts/visualizations/chart/bar/Bar.d.ts +100 -0
  316. package/dts/visualizations/chart/bar/Bar.d.ts.map +1 -0
  317. package/dts/visualizations/chart/bar/BarChart.d.ts +156 -0
  318. package/dts/visualizations/chart/bar/BarChart.d.ts.map +1 -0
  319. package/dts/visualizations/chart/bar/BarPlot.d.ts +31 -0
  320. package/dts/visualizations/chart/bar/BarPlot.d.ts.map +1 -0
  321. package/dts/visualizations/chart/bar/BarStack.d.ts +127 -0
  322. package/dts/visualizations/chart/bar/BarStack.d.ts.map +1 -0
  323. package/dts/visualizations/chart/bar/BarStackGroup.d.ts +37 -0
  324. package/dts/visualizations/chart/bar/BarStackGroup.d.ts.map +1 -0
  325. package/dts/visualizations/chart/bar/DefaultBar.d.ts +7 -0
  326. package/dts/visualizations/chart/bar/DefaultBar.d.ts.map +1 -0
  327. package/dts/visualizations/chart/bar/DefaultBarStack.d.ts +7 -0
  328. package/dts/visualizations/chart/bar/DefaultBarStack.d.ts.map +1 -0
  329. package/dts/visualizations/chart/bar/PercentageBarChart.d.ts +104 -0
  330. package/dts/visualizations/chart/bar/PercentageBarChart.d.ts.map +1 -0
  331. package/dts/visualizations/chart/bar/index.d.ts +9 -0
  332. package/dts/visualizations/chart/bar/index.d.ts.map +1 -0
  333. package/dts/visualizations/chart/gradient/Gradient.d.ts +41 -0
  334. package/dts/visualizations/chart/gradient/Gradient.d.ts.map +1 -0
  335. package/dts/visualizations/chart/gradient/index.d.ts +2 -0
  336. package/dts/visualizations/chart/gradient/index.d.ts.map +1 -0
  337. package/dts/visualizations/chart/index.d.ts +16 -0
  338. package/dts/visualizations/chart/index.d.ts.map +1 -0
  339. package/dts/visualizations/chart/legend/DefaultLegendEntry.d.ts +5 -0
  340. package/dts/visualizations/chart/legend/DefaultLegendEntry.d.ts.map +1 -0
  341. package/dts/visualizations/chart/legend/DefaultLegendShape.d.ts +5 -0
  342. package/dts/visualizations/chart/legend/DefaultLegendShape.d.ts.map +1 -0
  343. package/dts/visualizations/chart/legend/Legend.d.ts +166 -0
  344. package/dts/visualizations/chart/legend/Legend.d.ts.map +1 -0
  345. package/dts/visualizations/chart/legend/index.d.ts +4 -0
  346. package/dts/visualizations/chart/legend/index.d.ts.map +1 -0
  347. package/dts/visualizations/chart/line/DefaultReferenceLineLabel.d.ts +9 -0
  348. package/dts/visualizations/chart/line/DefaultReferenceLineLabel.d.ts.map +1 -0
  349. package/dts/visualizations/chart/line/DottedLine.d.ts +20 -0
  350. package/dts/visualizations/chart/line/DottedLine.d.ts.map +1 -0
  351. package/dts/visualizations/chart/line/Line.d.ts +122 -0
  352. package/dts/visualizations/chart/line/Line.d.ts.map +1 -0
  353. package/dts/visualizations/chart/line/LineChart.d.ts +133 -0
  354. package/dts/visualizations/chart/line/LineChart.d.ts.map +1 -0
  355. package/dts/visualizations/chart/line/ReferenceLine.d.ts +140 -0
  356. package/dts/visualizations/chart/line/ReferenceLine.d.ts.map +1 -0
  357. package/dts/visualizations/chart/line/SolidLine.d.ts +15 -0
  358. package/dts/visualizations/chart/line/SolidLine.d.ts.map +1 -0
  359. package/dts/visualizations/chart/line/index.d.ts +7 -0
  360. package/dts/visualizations/chart/line/index.d.ts.map +1 -0
  361. package/dts/visualizations/chart/point/DefaultPointLabel.d.ts +10 -0
  362. package/dts/visualizations/chart/point/DefaultPointLabel.d.ts.map +1 -0
  363. package/dts/visualizations/chart/point/Point.d.ts +144 -0
  364. package/dts/visualizations/chart/point/Point.d.ts.map +1 -0
  365. package/dts/visualizations/chart/point/index.d.ts +3 -0
  366. package/dts/visualizations/chart/point/index.d.ts.map +1 -0
  367. package/dts/visualizations/chart/scrubber/DefaultScrubberBeacon.d.ts +36 -0
  368. package/dts/visualizations/chart/scrubber/DefaultScrubberBeacon.d.ts.map +1 -0
  369. package/dts/visualizations/chart/scrubber/DefaultScrubberBeaconLabel.d.ts +12 -0
  370. package/dts/visualizations/chart/scrubber/DefaultScrubberBeaconLabel.d.ts.map +1 -0
  371. package/dts/visualizations/chart/scrubber/DefaultScrubberLabel.d.ts +12 -0
  372. package/dts/visualizations/chart/scrubber/DefaultScrubberLabel.d.ts.map +1 -0
  373. package/dts/visualizations/chart/scrubber/Scrubber.d.ts +300 -0
  374. package/dts/visualizations/chart/scrubber/Scrubber.d.ts.map +1 -0
  375. package/dts/visualizations/chart/scrubber/ScrubberAccessibilityView.d.ts +12 -0
  376. package/dts/visualizations/chart/scrubber/ScrubberAccessibilityView.d.ts.map +1 -0
  377. package/dts/visualizations/chart/scrubber/ScrubberBeaconGroup.d.ts +52 -0
  378. package/dts/visualizations/chart/scrubber/ScrubberBeaconGroup.d.ts.map +1 -0
  379. package/dts/visualizations/chart/scrubber/ScrubberBeaconLabelGroup.d.ts +46 -0
  380. package/dts/visualizations/chart/scrubber/ScrubberBeaconLabelGroup.d.ts.map +1 -0
  381. package/dts/visualizations/chart/scrubber/ScrubberProvider.d.ts +20 -0
  382. package/dts/visualizations/chart/scrubber/ScrubberProvider.d.ts.map +1 -0
  383. package/dts/visualizations/chart/scrubber/index.d.ts +5 -0
  384. package/dts/visualizations/chart/scrubber/index.d.ts.map +1 -0
  385. package/dts/visualizations/chart/text/ChartText.d.ts +164 -0
  386. package/dts/visualizations/chart/text/ChartText.d.ts.map +1 -0
  387. package/dts/visualizations/chart/text/ChartTextGroup.d.ts +61 -0
  388. package/dts/visualizations/chart/text/ChartTextGroup.d.ts.map +1 -0
  389. package/dts/visualizations/chart/text/index.d.ts +3 -0
  390. package/dts/visualizations/chart/text/index.d.ts.map +1 -0
  391. package/dts/visualizations/chart/utils/axis.d.ts +387 -0
  392. package/dts/visualizations/chart/utils/axis.d.ts.map +1 -0
  393. package/dts/visualizations/chart/utils/bar.d.ts +225 -0
  394. package/dts/visualizations/chart/utils/bar.d.ts.map +1 -0
  395. package/dts/visualizations/chart/utils/chart.d.ts +165 -0
  396. package/dts/visualizations/chart/utils/chart.d.ts.map +1 -0
  397. package/dts/visualizations/chart/utils/context.d.ts +131 -0
  398. package/dts/visualizations/chart/utils/context.d.ts.map +1 -0
  399. package/dts/visualizations/chart/utils/gradient.d.ts +129 -0
  400. package/dts/visualizations/chart/utils/gradient.d.ts.map +1 -0
  401. package/dts/visualizations/chart/utils/index.d.ts +11 -0
  402. package/dts/visualizations/chart/utils/index.d.ts.map +1 -0
  403. package/dts/visualizations/chart/utils/path.d.ts +189 -0
  404. package/dts/visualizations/chart/utils/path.d.ts.map +1 -0
  405. package/dts/visualizations/chart/utils/point.d.ts +146 -0
  406. package/dts/visualizations/chart/utils/point.d.ts.map +1 -0
  407. package/dts/visualizations/chart/utils/scale.d.ts +145 -0
  408. package/dts/visualizations/chart/utils/scale.d.ts.map +1 -0
  409. package/dts/visualizations/chart/utils/scrubber.d.ts +40 -0
  410. package/dts/visualizations/chart/utils/scrubber.d.ts.map +1 -0
  411. package/dts/visualizations/chart/utils/transition.d.ts +181 -0
  412. package/dts/visualizations/chart/utils/transition.d.ts.map +1 -0
  413. package/dts/visualizations/index.d.ts +2 -0
  414. package/dts/visualizations/index.d.ts.map +1 -1
  415. package/dts/visualizations/sparkline/Counter.d.ts +8 -0
  416. package/dts/visualizations/sparkline/Counter.d.ts.map +1 -0
  417. package/dts/visualizations/sparkline/Sparkline.d.ts +72 -0
  418. package/dts/visualizations/sparkline/Sparkline.d.ts.map +1 -0
  419. package/dts/visualizations/sparkline/SparklineArea.d.ts +15 -0
  420. package/dts/visualizations/sparkline/SparklineArea.d.ts.map +1 -0
  421. package/dts/visualizations/sparkline/SparklineAreaPattern.d.ts +14 -0
  422. package/dts/visualizations/sparkline/SparklineAreaPattern.d.ts.map +1 -0
  423. package/dts/visualizations/sparkline/SparklineGradient.d.ts +22 -0
  424. package/dts/visualizations/sparkline/SparklineGradient.d.ts.map +1 -0
  425. package/dts/visualizations/sparkline/__figma__/Sparkline.figma.d.ts +2 -0
  426. package/dts/visualizations/sparkline/__figma__/Sparkline.figma.d.ts.map +1 -0
  427. package/dts/visualizations/sparkline/generateSparklineWithId.d.ts +11 -0
  428. package/dts/visualizations/sparkline/generateSparklineWithId.d.ts.map +1 -0
  429. package/dts/visualizations/sparkline/index.d.ts +6 -0
  430. package/dts/visualizations/sparkline/index.d.ts.map +1 -0
  431. package/dts/visualizations/sparkline/sparkline-interactive/SparklineAccessibleView.d.ts +23 -0
  432. package/dts/visualizations/sparkline/sparkline-interactive/SparklineAccessibleView.d.ts.map +1 -0
  433. package/dts/visualizations/sparkline/sparkline-interactive/SparklineInteractive.d.ts +185 -0
  434. package/dts/visualizations/sparkline/sparkline-interactive/SparklineInteractive.d.ts.map +1 -0
  435. package/dts/visualizations/sparkline/sparkline-interactive/SparklineInteractiveAnimatedPath.d.ts +25 -0
  436. package/dts/visualizations/sparkline/sparkline-interactive/SparklineInteractiveAnimatedPath.d.ts.map +1 -0
  437. package/dts/visualizations/sparkline/sparkline-interactive/SparklineInteractiveHoverDate.d.ts +28 -0
  438. package/dts/visualizations/sparkline/sparkline-interactive/SparklineInteractiveHoverDate.d.ts.map +1 -0
  439. package/dts/visualizations/sparkline/sparkline-interactive/SparklineInteractiveLineVertical.d.ts +13 -0
  440. package/dts/visualizations/sparkline/sparkline-interactive/SparklineInteractiveLineVertical.d.ts.map +1 -0
  441. package/dts/visualizations/sparkline/sparkline-interactive/SparklineInteractiveMarkerDates.d.ts +17 -0
  442. package/dts/visualizations/sparkline/sparkline-interactive/SparklineInteractiveMarkerDates.d.ts.map +1 -0
  443. package/dts/visualizations/sparkline/sparkline-interactive/SparklineInteractiveMinMax.d.ts +11 -0
  444. package/dts/visualizations/sparkline/sparkline-interactive/SparklineInteractiveMinMax.d.ts.map +1 -0
  445. package/dts/visualizations/sparkline/sparkline-interactive/SparklineInteractivePanGestureHandler.d.ts +26 -0
  446. package/dts/visualizations/sparkline/sparkline-interactive/SparklineInteractivePanGestureHandler.d.ts.map +1 -0
  447. package/dts/visualizations/sparkline/sparkline-interactive/SparklineInteractivePaths.d.ts +25 -0
  448. package/dts/visualizations/sparkline/sparkline-interactive/SparklineInteractivePaths.d.ts.map +1 -0
  449. package/dts/visualizations/sparkline/sparkline-interactive/SparklineInteractivePeriodSelector.d.ts +25 -0
  450. package/dts/visualizations/sparkline/sparkline-interactive/SparklineInteractivePeriodSelector.d.ts.map +1 -0
  451. package/dts/visualizations/sparkline/sparkline-interactive/SparklineInteractiveProvider.d.ts +39 -0
  452. package/dts/visualizations/sparkline/sparkline-interactive/SparklineInteractiveProvider.d.ts.map +1 -0
  453. package/dts/visualizations/sparkline/sparkline-interactive/SparklineInteractiveTimeseriesPaths.d.ts +31 -0
  454. package/dts/visualizations/sparkline/sparkline-interactive/SparklineInteractiveTimeseriesPaths.d.ts.map +1 -0
  455. package/dts/visualizations/sparkline/sparkline-interactive/__figma__/SparklineInteractive.figma.d.ts +2 -0
  456. package/dts/visualizations/sparkline/sparkline-interactive/__figma__/SparklineInteractive.figma.d.ts.map +1 -0
  457. package/dts/visualizations/sparkline/sparkline-interactive/useInterruptiblePathAnimation.d.ts +13 -0
  458. package/dts/visualizations/sparkline/sparkline-interactive/useInterruptiblePathAnimation.d.ts.map +1 -0
  459. package/dts/visualizations/sparkline/sparkline-interactive/useMinMaxTransform.d.ts +16 -0
  460. package/dts/visualizations/sparkline/sparkline-interactive/useMinMaxTransform.d.ts.map +1 -0
  461. package/dts/visualizations/sparkline/sparkline-interactive/useOpacityAnimation.d.ts +6 -0
  462. package/dts/visualizations/sparkline/sparkline-interactive/useOpacityAnimation.d.ts.map +1 -0
  463. package/dts/visualizations/sparkline/sparkline-interactive/useSparklineInteractiveConstants.d.ts +22 -0
  464. package/dts/visualizations/sparkline/sparkline-interactive/useSparklineInteractiveConstants.d.ts.map +1 -0
  465. package/dts/visualizations/sparkline/sparkline-interactive/useSparklineInteractiveLineStyles.d.ts +34 -0
  466. package/dts/visualizations/sparkline/sparkline-interactive/useSparklineInteractiveLineStyles.d.ts.map +1 -0
  467. package/dts/visualizations/sparkline/sparkline-interactive-header/SparklineInteractiveHeader.d.ts +116 -0
  468. package/dts/visualizations/sparkline/sparkline-interactive-header/SparklineInteractiveHeader.d.ts.map +1 -0
  469. package/dts/visualizations/sparkline/sparkline-interactive-header/__figma__/SparklineInteractiveHeader.figma.d.ts +2 -0
  470. package/dts/visualizations/sparkline/sparkline-interactive-header/__figma__/SparklineInteractiveHeader.figma.d.ts.map +1 -0
  471. package/dts/visualizations/sparkline/sparkline-interactive-header/useSparklineInteractiveHeaderStyles.d.ts +29 -0
  472. package/dts/visualizations/sparkline/sparkline-interactive-header/useSparklineInteractiveHeaderStyles.d.ts.map +1 -0
  473. package/esm/alpha/combobox/Combobox.js +5 -7
  474. package/esm/alpha/combobox/DefaultComboboxControl.js +24 -24
  475. package/esm/alpha/data-card/__stories__/DataCard.stories.js +12 -4
  476. package/esm/alpha/select/DefaultSelectControl.js +31 -21
  477. package/esm/alpha/select/DefaultSelectDropdown.js +1 -0
  478. package/esm/alpha/select/DefaultSelectOption.js +0 -2
  479. package/esm/alpha/select/__stories__/AlphaSelect.stories.js +1 -1
  480. package/esm/animation/Lottie.js +10 -6
  481. package/esm/animation/LottieStatusAnimation.js +2 -2
  482. package/esm/banner/Banner.js +106 -86
  483. package/esm/buttons/AvatarButton.js +3 -3
  484. package/esm/buttons/Button.js +11 -24
  485. package/esm/buttons/DefaultSlideButtonBackground.js +8 -7
  486. package/esm/buttons/DefaultSlideButtonHandle.js +44 -34
  487. package/esm/buttons/IconButton.js +20 -41
  488. package/esm/buttons/IconCounterButton.js +21 -7
  489. package/esm/buttons/SlideButton.js +25 -25
  490. package/esm/buttons/__stories__/AvatarButton.stories.js +2 -1
  491. package/esm/buttons/__stories__/Button.stories.js +5 -2
  492. package/esm/buttons/__stories__/IconButton.stories.js +10 -19
  493. package/esm/buttons/__stories__/IconCounterButton.stories.js +6 -2
  494. package/esm/cards/AnnouncementCard.js +0 -5
  495. package/esm/cards/Card.js +5 -0
  496. package/esm/cards/CardMedia.js +6 -10
  497. package/esm/cards/DataCard.js +6 -6
  498. package/esm/cards/FeatureEntryCard.js +0 -5
  499. package/esm/cards/FeedCard.js +0 -10
  500. package/esm/cards/LikeButton.js +11 -5
  501. package/esm/cards/NudgeCard.js +28 -21
  502. package/esm/cards/UpsellCard.js +3 -1
  503. package/esm/cards/__figma__/UpsellCard.figma.js +3 -1
  504. package/esm/cards/__stories__/ContainedAssetCard.stories.js +4 -2
  505. package/esm/cards/__stories__/ContentCard.stories.js +7 -7
  506. package/esm/cards/__stories__/MediaCard.stories.js +6 -4
  507. package/esm/cards/__stories__/UpsellCard.stories.js +39 -13
  508. package/esm/carousel/Carousel.js +5 -3
  509. package/esm/carousel/DefaultCarouselPagination.js +3 -1
  510. package/esm/carousel/__figma__/Carousel.figma.js +0 -1
  511. package/esm/carousel/__stories__/Carousel.stories.js +2 -16
  512. package/esm/cells/Cell.js +49 -9
  513. package/esm/cells/CellAccessory.js +3 -2
  514. package/esm/cells/ContentCellFallback.js +4 -0
  515. package/esm/cells/ListCell.js +5 -2
  516. package/esm/cells/MediaFallback.js +4 -4
  517. package/esm/cells/__stories__/ListCell.stories.js +65 -2
  518. package/esm/chips/Chip.js +1 -0
  519. package/esm/coachmark/Coachmark.js +3 -2
  520. package/esm/controls/CheckboxGroup.js +0 -25
  521. package/esm/controls/HelperText.js +13 -5
  522. package/esm/controls/InputIconButton.js +1 -1
  523. package/esm/controls/InputStack.js +14 -9
  524. package/esm/controls/NativeInput.js +1 -0
  525. package/esm/controls/Radio.js +4 -3
  526. package/esm/controls/RadioGroup.js +0 -24
  527. package/esm/controls/SelectContext.js +14 -0
  528. package/esm/controls/SelectOption.js +5 -1
  529. package/esm/controls/Switch.js +14 -8
  530. package/esm/controls/TextInput.js +2 -1
  531. package/esm/controls/__stories__/InputIconButton.stories.js +4 -4
  532. package/esm/dates/DateInput.js +2 -3
  533. package/esm/dates/DatePicker.js +2 -3
  534. package/esm/dates/__stories__/DatePicker.stories.js +4 -4
  535. package/esm/dots/DotCount.js +14 -14
  536. package/esm/dots/DotSymbol.js +3 -2
  537. package/esm/examples/ExampleScreen.js +1 -1
  538. package/esm/gradients/LinearGradient.js +1 -2
  539. package/esm/gradients/__stories__/LinearGradient.stories.js +0 -14
  540. package/esm/hooks/useDimensions.js +4 -2
  541. package/esm/hooks/useDotPinStyles.js +25 -0
  542. package/esm/hooks/useHasNotch.js +6 -2
  543. package/esm/hooks/useScrollTo.js +1 -1
  544. package/esm/hooks/useStatusBarHeight.js +7 -30
  545. package/esm/icons/Icon.js +3 -1
  546. package/esm/icons/TextIcon.js +3 -1
  547. package/esm/jest.d.js +11 -2
  548. package/esm/layout/Box.js +11 -7
  549. package/esm/layout/Spacer.js +19 -17
  550. package/esm/media/Avatar.js +56 -8
  551. package/esm/media/Carousel/Carousel.js +3 -2
  552. package/esm/media/RemoteImage.js +10 -10
  553. package/esm/media/RemoteImageGroup.js +3 -1
  554. package/esm/media/__stories__/Avatar.stories.js +1 -0
  555. package/esm/navigation/NavigationTitleSelect.js +30 -22
  556. package/esm/navigation/TopNavBar.js +1 -1
  557. package/esm/overlays/Alert.js +1 -1
  558. package/esm/overlays/PortalProvider.js +22 -0
  559. package/esm/overlays/Toast.js +7 -5
  560. package/esm/overlays/__stories__/TrayPromotional.stories.js +3 -1
  561. package/esm/overlays/drawer/Drawer.js +14 -5
  562. package/esm/overlays/drawer/DrawerStatusBar.js +4 -0
  563. package/esm/overlays/modal/Modal.js +2 -1
  564. package/esm/overlays/modal/ModalFooter.js +5 -5
  565. package/esm/overlays/overlay/Overlay.js +7 -4
  566. package/esm/overlays/tooltip/__figma__/Tooltip.figma.js +5 -3
  567. package/esm/overlays/tooltip/useTooltipPosition.js +12 -3
  568. package/esm/overlays/useModal.js +1 -1
  569. package/esm/page/__stories__/PageFooterInPage.stories.js +3 -1
  570. package/esm/page/__stories__/PageHeader.stories.js +3 -1
  571. package/esm/page/__stories__/PageHeaderInErrorEmptyState.stories.js +1 -2
  572. package/esm/page/__stories__/PageHeaderInPage.stories.js +5 -4
  573. package/esm/stepper/DefaultStepperHeaderHorizontal.js +47 -31
  574. package/esm/stepper/DefaultStepperProgressHorizontal.js +18 -5
  575. package/esm/stepper/DefaultStepperProgressVertical.js +26 -22
  576. package/esm/stepper/DefaultStepperStepHorizontal.js +5 -5
  577. package/esm/stepper/DefaultStepperStepVertical.js +4 -4
  578. package/esm/stepper/Stepper.js +60 -70
  579. package/esm/stepper/__stories__/StepperHorizontal.stories.js +23 -0
  580. package/esm/stepper/__stories__/StepperVertical.stories.js +36 -0
  581. package/esm/styles/styleProps.js +5 -3
  582. package/esm/system/AndroidNavigationBar.js +18 -0
  583. package/esm/system/PressableOpacity.js +3 -2
  584. package/esm/system/ThemeProvider.js +32 -13
  585. package/esm/system/__stories__/AndroidNavigationBar.stories.js +61 -0
  586. package/esm/system/__stories__/Palette.stories.js +3 -1
  587. package/esm/system/__stories__/Pressable.stories.js +6 -2
  588. package/esm/system/__stories__/Spectrum.stories.js +6 -2
  589. package/esm/tabs/TabLabel.js +5 -5
  590. package/esm/tabs/Tabs.js +4 -1
  591. package/esm/tabs/__stories__/SegmentedTabs.stories.js +3 -5
  592. package/esm/tabs/hooks/useDotAnimation.js +53 -1
  593. package/esm/tag/Tag.js +6 -2
  594. package/esm/tour/DefaultTourMask.js +22 -7
  595. package/esm/tour/Tour.js +15 -3
  596. package/esm/tour/TourStep.js +5 -1
  597. package/esm/typography/Text.js +8 -3
  598. package/esm/typography/TextBody.js +14 -0
  599. package/esm/typography/TextCaption.js +14 -0
  600. package/esm/typography/TextDisplay1.js +14 -0
  601. package/esm/typography/TextDisplay2.js +14 -0
  602. package/esm/typography/TextDisplay3.js +14 -0
  603. package/esm/typography/TextHeadline.js +14 -0
  604. package/esm/typography/TextInherited.js +14 -0
  605. package/esm/typography/TextLabel1.js +14 -0
  606. package/esm/typography/TextLabel2.js +14 -0
  607. package/esm/typography/TextLegal.js +14 -0
  608. package/esm/typography/TextTitle1.js +14 -0
  609. package/esm/typography/TextTitle2.js +14 -0
  610. package/esm/typography/TextTitle3.js +14 -0
  611. package/esm/typography/TextTitle4.js +14 -0
  612. package/esm/typography/__stories__/Link.stories.js +2 -2
  613. package/esm/typography/__stories__/Text.stories.js +53 -39
  614. package/esm/utils/testHelpers.js +19 -1
  615. package/esm/visualizations/ProgressBar.js +3 -1
  616. package/esm/visualizations/chart/CartesianChart.js +455 -0
  617. package/esm/visualizations/chart/ChartContextBridge.js +159 -0
  618. package/esm/visualizations/chart/ChartProvider.js +10 -0
  619. package/esm/visualizations/chart/Path.js +247 -0
  620. package/esm/visualizations/chart/PeriodSelector.js +140 -0
  621. package/esm/visualizations/chart/__stories__/CartesianChart.stories.js +657 -0
  622. package/esm/visualizations/chart/__stories__/ChartAccessibility.stories.js +720 -0
  623. package/esm/visualizations/chart/__stories__/ChartTransitions.stories.js +693 -0
  624. package/esm/visualizations/chart/__stories__/PeriodSelector.stories.js +422 -0
  625. package/esm/visualizations/chart/area/Area.js +85 -0
  626. package/esm/visualizations/chart/area/AreaChart.js +153 -0
  627. package/esm/visualizations/chart/area/DottedArea.js +92 -0
  628. package/esm/visualizations/chart/area/GradientArea.js +63 -0
  629. package/esm/visualizations/chart/area/SolidArea.js +45 -0
  630. package/esm/visualizations/chart/area/__stories__/AreaChart.stories.js +328 -0
  631. package/esm/visualizations/chart/area/index.js +7 -0
  632. package/esm/visualizations/chart/axis/Axis.js +9 -0
  633. package/esm/visualizations/chart/axis/DefaultAxisTickLabel.js +11 -0
  634. package/esm/visualizations/chart/axis/XAxis.js +256 -0
  635. package/esm/visualizations/chart/axis/YAxis.js +255 -0
  636. package/esm/visualizations/chart/axis/__stories__/Axis.stories.js +552 -0
  637. package/esm/visualizations/chart/axis/index.js +6 -0
  638. package/esm/visualizations/chart/bar/Bar.js +71 -0
  639. package/esm/visualizations/chart/bar/BarChart.js +123 -0
  640. package/esm/visualizations/chart/bar/BarPlot.js +106 -0
  641. package/esm/visualizations/chart/bar/BarStack.js +173 -0
  642. package/esm/visualizations/chart/bar/BarStackGroup.js +89 -0
  643. package/esm/visualizations/chart/bar/DefaultBar.js +79 -0
  644. package/esm/visualizations/chart/bar/DefaultBarStack.js +68 -0
  645. package/esm/visualizations/chart/bar/PercentageBarChart.js +99 -0
  646. package/esm/visualizations/chart/bar/__stories__/BarChart.stories.js +1410 -0
  647. package/esm/visualizations/chart/bar/__stories__/PercentageBarChart.stories.js +832 -0
  648. package/esm/visualizations/chart/bar/index.js +10 -0
  649. package/esm/visualizations/chart/gradient/Gradient.js +147 -0
  650. package/esm/visualizations/chart/gradient/index.js +1 -0
  651. package/esm/visualizations/chart/index.js +17 -0
  652. package/esm/visualizations/chart/legend/DefaultLegendEntry.js +42 -0
  653. package/esm/visualizations/chart/legend/DefaultLegendShape.js +64 -0
  654. package/esm/visualizations/chart/legend/Legend.js +59 -0
  655. package/esm/visualizations/chart/legend/__stories__/Legend.stories.js +574 -0
  656. package/esm/visualizations/chart/legend/index.js +3 -0
  657. package/esm/visualizations/chart/line/DefaultReferenceLineLabel.js +66 -0
  658. package/esm/visualizations/chart/line/DottedLine.js +57 -0
  659. package/esm/visualizations/chart/line/Line.js +180 -0
  660. package/esm/visualizations/chart/line/LineChart.js +150 -0
  661. package/esm/visualizations/chart/line/ReferenceLine.js +132 -0
  662. package/esm/visualizations/chart/line/SolidLine.js +53 -0
  663. package/esm/visualizations/chart/line/__stories__/LineChart.stories.js +2029 -0
  664. package/esm/visualizations/chart/line/__stories__/ReferenceLine.stories.js +226 -0
  665. package/esm/visualizations/chart/line/index.js +8 -0
  666. package/esm/visualizations/chart/point/DefaultPointLabel.js +40 -0
  667. package/esm/visualizations/chart/point/Point.js +187 -0
  668. package/esm/visualizations/chart/point/index.js +2 -0
  669. package/esm/visualizations/chart/scrubber/DefaultScrubberBeacon.js +182 -0
  670. package/esm/visualizations/chart/scrubber/DefaultScrubberBeaconLabel.js +43 -0
  671. package/esm/visualizations/chart/scrubber/DefaultScrubberLabel.js +44 -0
  672. package/esm/visualizations/chart/scrubber/Scrubber.js +200 -0
  673. package/esm/visualizations/chart/scrubber/ScrubberAccessibilityView.js +177 -0
  674. package/esm/visualizations/chart/scrubber/ScrubberBeaconGroup.js +169 -0
  675. package/esm/visualizations/chart/scrubber/ScrubberBeaconLabelGroup.js +231 -0
  676. package/esm/visualizations/chart/scrubber/ScrubberProvider.js +140 -0
  677. package/esm/visualizations/chart/scrubber/__stories__/Scrubber.stories.js +945 -0
  678. package/esm/visualizations/chart/scrubber/index.js +4 -0
  679. package/esm/visualizations/chart/text/ChartText.js +305 -0
  680. package/esm/visualizations/chart/text/ChartTextGroup.js +211 -0
  681. package/esm/visualizations/chart/text/index.js +4 -0
  682. package/esm/visualizations/chart/utils/axis.js +664 -0
  683. package/esm/visualizations/chart/utils/bar.js +906 -0
  684. package/esm/visualizations/chart/utils/chart.js +329 -0
  685. package/esm/visualizations/chart/utils/context.js +22 -0
  686. package/esm/visualizations/chart/utils/gradient.js +319 -0
  687. package/esm/visualizations/chart/utils/index.js +12 -0
  688. package/esm/visualizations/chart/utils/path.js +307 -0
  689. package/esm/visualizations/chart/utils/point.js +282 -0
  690. package/esm/visualizations/chart/utils/scale.js +288 -0
  691. package/esm/visualizations/chart/utils/scrubber.js +146 -0
  692. package/esm/visualizations/chart/utils/transition.js +268 -0
  693. package/esm/visualizations/index.js +3 -1
  694. package/esm/visualizations/sparkline/Counter.js +45 -0
  695. package/esm/visualizations/sparkline/Sparkline.js +165 -0
  696. package/esm/visualizations/sparkline/SparklineArea.js +20 -0
  697. package/esm/visualizations/sparkline/SparklineAreaPattern.js +38 -0
  698. package/esm/visualizations/sparkline/SparklineGradient.js +77 -0
  699. package/esm/visualizations/sparkline/__figma__/Sparkline.figma.js +22 -0
  700. package/esm/visualizations/sparkline/__stories__/Sparkline.stories.js +124 -0
  701. package/esm/visualizations/sparkline/__stories__/SparklineGradient.stories.js +126 -0
  702. package/esm/visualizations/sparkline/generateSparklineWithId.js +7 -0
  703. package/esm/visualizations/sparkline/index.js +5 -0
  704. package/esm/visualizations/sparkline/sparkline-interactive/SparklineAccessibleView.js +75 -0
  705. package/esm/visualizations/sparkline/sparkline-interactive/SparklineInteractive.js +308 -0
  706. package/esm/visualizations/sparkline/sparkline-interactive/SparklineInteractiveAnimatedPath.js +116 -0
  707. package/esm/visualizations/sparkline/sparkline-interactive/SparklineInteractiveHoverDate.js +131 -0
  708. package/esm/visualizations/sparkline/sparkline-interactive/SparklineInteractiveLineVertical.js +99 -0
  709. package/esm/visualizations/sparkline/sparkline-interactive/SparklineInteractiveMarkerDates.js +83 -0
  710. package/esm/visualizations/sparkline/sparkline-interactive/SparklineInteractiveMinMax.js +104 -0
  711. package/esm/visualizations/sparkline/sparkline-interactive/SparklineInteractivePanGestureHandler.js +104 -0
  712. package/esm/visualizations/sparkline/sparkline-interactive/SparklineInteractivePaths.js +57 -0
  713. package/esm/visualizations/sparkline/sparkline-interactive/SparklineInteractivePeriodSelector.js +125 -0
  714. package/esm/visualizations/sparkline/sparkline-interactive/SparklineInteractiveProvider.js +80 -0
  715. package/esm/visualizations/sparkline/sparkline-interactive/SparklineInteractiveTimeseriesPaths.js +109 -0
  716. package/esm/visualizations/sparkline/sparkline-interactive/__figma__/SparklineInteractive.figma.js +85 -0
  717. package/esm/visualizations/sparkline/sparkline-interactive/__stories__/SparklineInteractive.stories.js +526 -0
  718. package/esm/visualizations/sparkline/sparkline-interactive/useInterruptiblePathAnimation.js +58 -0
  719. package/esm/visualizations/sparkline/sparkline-interactive/useInterruptiblePathAnimation.test.disable.js +37 -0
  720. package/esm/visualizations/sparkline/sparkline-interactive/useMinMaxTransform.js +56 -0
  721. package/esm/visualizations/sparkline/sparkline-interactive/useOpacityAnimation.js +23 -0
  722. package/esm/visualizations/sparkline/sparkline-interactive/useSparklineInteractiveConstants.js +47 -0
  723. package/esm/visualizations/sparkline/sparkline-interactive/useSparklineInteractiveLineStyles.js +34 -0
  724. package/esm/visualizations/sparkline/sparkline-interactive-header/SparklineInteractiveHeader.js +233 -0
  725. package/esm/visualizations/sparkline/sparkline-interactive-header/__figma__/SparklineInteractiveHeader.figma.js +104 -0
  726. package/esm/visualizations/sparkline/sparkline-interactive-header/__stories__/SparklineInteractiveHeader.stories.js +565 -0
  727. package/esm/visualizations/sparkline/sparkline-interactive-header/useSparklineInteractiveHeaderStyles.js +117 -0
  728. package/package.json +34 -28
  729. package/dts/system/__figma__/AndroidNavigationBar.figma.d.ts +0 -2
  730. package/dts/system/__figma__/AndroidNavigationBar.figma.d.ts.map +0 -1
  731. package/esm/media/__stories__/CarouselAlphaExample.js +0 -93
  732. package/esm/media/__stories__/CarouselMedia.stories.js +0 -180
  733. package/esm/system/__figma__/AndroidNavigationBar.figma.js +0 -24
@@ -0,0 +1,945 @@
1
+ const _excluded = ["seriesId", "color", "label"],
2
+ _excluded2 = ["seriesId", "color", "label"],
3
+ _excluded3 = ["seriesId", "color"];
4
+ function _objectWithoutPropertiesLoose(r, e) { if (null == r) return {}; var t = {}; for (var n in r) if ({}.hasOwnProperty.call(r, n)) { if (-1 !== e.indexOf(n)) continue; t[n] = r[n]; } return t; }
5
+ function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
6
+ import { memo, useCallback, useMemo, useRef, useState } from 'react';
7
+ import { useDerivedValue } from 'react-native-reanimated';
8
+ import { assets } from '@coinbase/cds-common/internal/data/assets';
9
+ import { FontWeight, Skia, TextAlign } from '@shopify/react-native-skia';
10
+ import { Button, IconButton } from '../../../../buttons';
11
+ import { Example, ExampleScreen } from '../../../../examples/ExampleScreen';
12
+ import { useTheme } from '../../../../index';
13
+ import { Box, HStack, VStack } from '../../../../layout';
14
+ import { Text } from '../../../../typography';
15
+ import { useCartesianChartContext } from '../../ChartProvider';
16
+ import { LineChart, SolidLine } from '../../line';
17
+ import { getLineData, unwrapAnimatedValue, useScrubberContext } from '../../utils';
18
+ import { DefaultScrubberBeacon, DefaultScrubberBeaconLabel, DefaultScrubberLabel, Scrubber } from '..';
19
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
20
+ const sampleData = [10, 22, 29, 45, 98, 45, 22, 52, 21, 4, 68, 20, 21, 58];
21
+ const chartAccessibilityLabel = "Price chart with " + sampleData.length + " data points. Swipe to navigate.";
22
+ const getScrubberAccessibilityLabel = index => "Point " + (index + 1) + ": " + sampleData[index];
23
+ const BasicScrubber = () => {
24
+ return /*#__PURE__*/_jsx(LineChart, {
25
+ enableScrubbing: true,
26
+ showArea: true,
27
+ showYAxis: true,
28
+ accessibilityLabel: chartAccessibilityLabel,
29
+ getScrubberAccessibilityLabel: getScrubberAccessibilityLabel,
30
+ height: 150,
31
+ series: [{
32
+ id: 'prices',
33
+ data: sampleData
34
+ }],
35
+ xAxis: {
36
+ range: _ref => {
37
+ let {
38
+ min,
39
+ max
40
+ } = _ref;
41
+ return {
42
+ min,
43
+ max: max - 8
44
+ };
45
+ }
46
+ },
47
+ yAxis: {
48
+ showGrid: true
49
+ },
50
+ children: /*#__PURE__*/_jsx(Scrubber, {
51
+ idlePulse: true
52
+ })
53
+ });
54
+ };
55
+ const seriesFilterData = {
56
+ top: [15, 28, 32, 44, 46, 36, 40, 45, 48, 38],
57
+ upperMiddle: [12, 23, 21, 29, 34, 28, 31, 38, 42, 35],
58
+ lowerMiddle: [8, 15, 14, 25, 20, 18, 22, 28, 24, 30],
59
+ bottom: [4, 8, 11, 15, 16, 14, 16, 10, 12, 14]
60
+ };
61
+ const SeriesFilter = () => {
62
+ const getScrubberAccessibilityLabel = useCallback(index => "Point " + (index + 1) + ": top " + seriesFilterData.top[index] + ", lowerMiddle " + seriesFilterData.lowerMiddle[index], []);
63
+ return /*#__PURE__*/_jsx(LineChart, {
64
+ enableScrubbing: true,
65
+ accessibilityLabel: "Chart with multiple series. Swipe to navigate.",
66
+ getScrubberAccessibilityLabel: getScrubberAccessibilityLabel,
67
+ height: 150,
68
+ series: [{
69
+ id: 'top',
70
+ data: seriesFilterData.top
71
+ }, {
72
+ id: 'upperMiddle',
73
+ data: seriesFilterData.upperMiddle,
74
+ color: '#ef4444',
75
+ type: 'dotted'
76
+ }, {
77
+ id: 'lowerMiddle',
78
+ data: seriesFilterData.lowerMiddle,
79
+ color: '#f59e0b',
80
+ curve: 'natural'
81
+ }, {
82
+ id: 'bottom',
83
+ data: seriesFilterData.bottom,
84
+ color: '#800080',
85
+ curve: 'step',
86
+ showArea: true
87
+ }],
88
+ children: /*#__PURE__*/_jsx(Scrubber, {
89
+ seriesIds: ['top', 'lowerMiddle']
90
+ })
91
+ });
92
+ };
93
+ const WithLabels = () => {
94
+ return /*#__PURE__*/_jsx(LineChart, {
95
+ enableScrubbing: true,
96
+ showArea: true,
97
+ accessibilityLabel: chartAccessibilityLabel,
98
+ getScrubberAccessibilityLabel: getScrubberAccessibilityLabel,
99
+ height: 150,
100
+ series: [{
101
+ id: 'prices',
102
+ data: sampleData,
103
+ label: 'Price'
104
+ }],
105
+ children: /*#__PURE__*/_jsx(Scrubber, {
106
+ label: dataIndex => "Day " + (dataIndex + 1)
107
+ })
108
+ });
109
+ };
110
+ const IdlePulse = () => {
111
+ const theme = useTheme();
112
+ return /*#__PURE__*/_jsx(LineChart, {
113
+ enableScrubbing: true,
114
+ showArea: true,
115
+ accessibilityLabel: chartAccessibilityLabel,
116
+ getScrubberAccessibilityLabel: getScrubberAccessibilityLabel,
117
+ height: 150,
118
+ series: [{
119
+ id: 'prices',
120
+ data: sampleData,
121
+ color: theme.color.fgPositive
122
+ }],
123
+ children: /*#__PURE__*/_jsx(Scrubber, {
124
+ idlePulse: true
125
+ })
126
+ });
127
+ };
128
+ const ImperativePulse = () => {
129
+ const scrubberRef = useRef(null);
130
+ return /*#__PURE__*/_jsxs(VStack, {
131
+ gap: 2,
132
+ children: [/*#__PURE__*/_jsx(LineChart, {
133
+ enableScrubbing: true,
134
+ showArea: true,
135
+ accessibilityLabel: chartAccessibilityLabel,
136
+ getScrubberAccessibilityLabel: getScrubberAccessibilityLabel,
137
+ height: 150,
138
+ series: [{
139
+ id: 'prices',
140
+ data: sampleData
141
+ }],
142
+ children: /*#__PURE__*/_jsx(Scrubber, {
143
+ ref: scrubberRef
144
+ })
145
+ }), /*#__PURE__*/_jsx(Button, {
146
+ onPress: () => {
147
+ var _scrubberRef$current;
148
+ return (_scrubberRef$current = scrubberRef.current) == null ? void 0 : _scrubberRef$current.pulse();
149
+ },
150
+ children: "Pulse"
151
+ })]
152
+ });
153
+ };
154
+ const BeaconStroke = () => {
155
+ const theme = useTheme();
156
+ const backgroundColor = "rgb(" + theme.spectrum.red40 + ")";
157
+ const foregroundColor = "rgb(" + theme.spectrum.gray0 + ")";
158
+ return /*#__PURE__*/_jsx(Box, {
159
+ borderRadius: 300,
160
+ padding: 2,
161
+ style: {
162
+ backgroundColor
163
+ },
164
+ children: /*#__PURE__*/_jsx(LineChart, {
165
+ enableScrubbing: true,
166
+ showArea: true,
167
+ accessibilityLabel: chartAccessibilityLabel,
168
+ getScrubberAccessibilityLabel: getScrubberAccessibilityLabel,
169
+ height: 150,
170
+ series: [{
171
+ id: 'prices',
172
+ data: sampleData,
173
+ color: foregroundColor
174
+ }],
175
+ children: /*#__PURE__*/_jsx(Scrubber, {
176
+ hideOverlay: true,
177
+ idlePulse: true,
178
+ beaconStroke: backgroundColor,
179
+ lineStroke: foregroundColor
180
+ })
181
+ })
182
+ });
183
+ };
184
+ const CustomBeacon = () => {
185
+ const theme = useTheme();
186
+ const InvertedBeacon = /*#__PURE__*/memo(props => /*#__PURE__*/_jsx(DefaultScrubberBeacon, _extends({}, props, {
187
+ color: theme.color.bg,
188
+ radius: 5,
189
+ stroke: theme.color.fg,
190
+ strokeWidth: 3
191
+ })));
192
+ return /*#__PURE__*/_jsx(LineChart, {
193
+ enableScrubbing: true,
194
+ showArea: true,
195
+ showYAxis: true,
196
+ accessibilityLabel: chartAccessibilityLabel,
197
+ getScrubberAccessibilityLabel: getScrubberAccessibilityLabel,
198
+ height: 150,
199
+ series: [{
200
+ id: 'prices',
201
+ data: sampleData,
202
+ color: theme.color.fg
203
+ }],
204
+ xAxis: {
205
+ range: _ref2 => {
206
+ let {
207
+ min,
208
+ max
209
+ } = _ref2;
210
+ return {
211
+ min,
212
+ max: max - 16
213
+ };
214
+ }
215
+ },
216
+ yAxis: {
217
+ showGrid: true,
218
+ domain: {
219
+ min: 0,
220
+ max: 100
221
+ }
222
+ },
223
+ children: /*#__PURE__*/_jsx(Scrubber, {
224
+ BeaconComponent: InvertedBeacon
225
+ })
226
+ });
227
+ };
228
+ const CustomBeaconLabel = () => {
229
+ const theme = useTheme();
230
+ const MyScrubberBeaconLabel = /*#__PURE__*/memo(_ref3 => {
231
+ let {
232
+ seriesId,
233
+ color,
234
+ label
235
+ } = _ref3,
236
+ props = _objectWithoutPropertiesLoose(_ref3, _excluded);
237
+ const {
238
+ getSeriesData,
239
+ series
240
+ } = useCartesianChartContext();
241
+ const {
242
+ scrubberPosition
243
+ } = useScrubberContext();
244
+ const seriesData = useMemo(() => getLineData(getSeriesData(seriesId)), [getSeriesData, seriesId]);
245
+ const dataLength = useMemo(() => {
246
+ var _series$reduce;
247
+ return (_series$reduce = series == null ? void 0 : series.reduce((max, s) => {
248
+ var _data$length;
249
+ const data = getSeriesData(s.id);
250
+ return Math.max(max, (_data$length = data == null ? void 0 : data.length) != null ? _data$length : 0);
251
+ }, 0)) != null ? _series$reduce : 0;
252
+ }, [series, getSeriesData]);
253
+ const dataIndex = useDerivedValue(() => {
254
+ var _scrubberPosition$val;
255
+ return (_scrubberPosition$val = scrubberPosition.value) != null ? _scrubberPosition$val : Math.max(0, dataLength - 1);
256
+ }, [scrubberPosition, dataLength]);
257
+ const percentageLabel = useDerivedValue(() => {
258
+ if (seriesData !== undefined) {
259
+ const dataAtPosition = seriesData[dataIndex.value];
260
+ return unwrapAnimatedValue(label) + " \xB7 " + dataAtPosition + "%";
261
+ }
262
+ return unwrapAnimatedValue(label);
263
+ }, [label, seriesData, dataIndex]);
264
+ return /*#__PURE__*/_jsx(DefaultScrubberBeaconLabel, _extends({}, props, {
265
+ background: color,
266
+ color: theme.color.bg,
267
+ label: percentageLabel,
268
+ seriesId: seriesId
269
+ }));
270
+ });
271
+ return /*#__PURE__*/_jsx(LineChart, {
272
+ enableScrubbing: true,
273
+ showArea: true,
274
+ showYAxis: true,
275
+ accessibilityLabel: "Temperature chart with 6 data points. Swipe to navigate.",
276
+ areaType: "dotted",
277
+ getScrubberAccessibilityLabel: index => "Point " + (index + 1) + ": " + [25, 30, 35, 45, 60, 100][index] + "\xB0F",
278
+ height: 150,
279
+ series: [{
280
+ id: 'Boston',
281
+ data: [25, 30, 35, 45, 60, 100],
282
+ color: "rgb(" + theme.spectrum.green40 + ")",
283
+ label: 'Boston'
284
+ }, {
285
+ id: 'Miami',
286
+ data: [20, 25, 30, 35, 20, 0],
287
+ color: "rgb(" + theme.spectrum.blue40 + ")",
288
+ label: 'Miami'
289
+ }, {
290
+ id: 'Denver',
291
+ data: [10, 15, 20, 25, 40, 0],
292
+ color: "rgb(" + theme.spectrum.orange40 + ")",
293
+ label: 'Denver'
294
+ }, {
295
+ id: 'Phoenix',
296
+ data: [15, 10, 5, 0, 0, 0],
297
+ color: "rgb(" + theme.spectrum.red40 + ")",
298
+ label: 'Phoenix'
299
+ }],
300
+ yAxis: {
301
+ showGrid: true
302
+ },
303
+ children: /*#__PURE__*/_jsx(Scrubber, {
304
+ BeaconLabelComponent: MyScrubberBeaconLabel
305
+ })
306
+ });
307
+ };
308
+ const PercentageBeaconLabels = () => {
309
+ const theme = useTheme();
310
+ const PercentageScrubberBeaconLabel = /*#__PURE__*/memo(_ref4 => {
311
+ let {
312
+ seriesId,
313
+ color,
314
+ label
315
+ } = _ref4,
316
+ props = _objectWithoutPropertiesLoose(_ref4, _excluded2);
317
+ const {
318
+ getSeriesData,
319
+ series,
320
+ fontProvider
321
+ } = useCartesianChartContext();
322
+ const {
323
+ scrubberPosition
324
+ } = useScrubberContext();
325
+ const seriesData = useMemo(() => getLineData(getSeriesData(seriesId)), [getSeriesData, seriesId]);
326
+ const dataLength = useMemo(() => {
327
+ var _series$reduce2;
328
+ return (_series$reduce2 = series == null ? void 0 : series.reduce((max, s) => {
329
+ var _data$length2;
330
+ const data = getSeriesData(s.id);
331
+ return Math.max(max, (_data$length2 = data == null ? void 0 : data.length) != null ? _data$length2 : 0);
332
+ }, 0)) != null ? _series$reduce2 : 0;
333
+ }, [series, getSeriesData]);
334
+ const dataIndex = useDerivedValue(() => {
335
+ var _scrubberPosition$val2;
336
+ return (_scrubberPosition$val2 = scrubberPosition.value) != null ? _scrubberPosition$val2 : Math.max(0, dataLength - 1);
337
+ }, [scrubberPosition, dataLength]);
338
+ const labelColor = "rgb(" + theme.spectrum.gray0 + ")";
339
+ const regularStyle = useMemo(() => ({
340
+ fontFamilies: ['Inter'],
341
+ fontSize: 14,
342
+ fontStyle: {
343
+ weight: FontWeight.Normal
344
+ },
345
+ color: Skia.Color(labelColor)
346
+ }), [labelColor]);
347
+ const boldStyle = useMemo(() => _extends({}, regularStyle, {
348
+ fontStyle: {
349
+ weight: FontWeight.Bold
350
+ }
351
+ }), [regularStyle]);
352
+ const percentageLabel = useDerivedValue(() => {
353
+ const labelValue = unwrapAnimatedValue(label);
354
+ if (seriesData !== undefined) {
355
+ const dataAtPosition = seriesData[dataIndex.value];
356
+ const builder = Skia.ParagraphBuilder.Make({
357
+ textAlign: TextAlign.Left
358
+ }, fontProvider);
359
+ builder.pushStyle(boldStyle);
360
+ builder.addText(dataAtPosition + "%");
361
+ builder.pushStyle(regularStyle);
362
+ builder.addText(" " + labelValue);
363
+ const para = builder.build();
364
+ para.layout(512);
365
+ return para;
366
+ }
367
+ return labelValue;
368
+ }, [label, seriesData, dataIndex, fontProvider, boldStyle, regularStyle]);
369
+ return /*#__PURE__*/_jsx(DefaultScrubberBeaconLabel, _extends({}, props, {
370
+ background: color,
371
+ label: percentageLabel,
372
+ seriesId: seriesId
373
+ }));
374
+ });
375
+ const isLightTheme = theme.activeColorScheme === 'light';
376
+ const background = isLightTheme ? "rgb(" + theme.spectrum.gray90 + ")" : "rgb(" + theme.spectrum.gray0 + ")";
377
+ const scrubberLineStroke = isLightTheme ? "rgb(" + theme.spectrum.gray0 + ")" : "rgb(" + theme.spectrum.gray90 + ")";
378
+ const seriesData = [{
379
+ id: 'prices2',
380
+ data: [90, 78, 71, 55, 2, 55, 78, 48, 79, 96, 32, 80, 79, 42],
381
+ color: "rgb(" + theme.spectrum.blue40 + ")",
382
+ label: 'ATL'
383
+ }, {
384
+ id: 'prices',
385
+ data: [10, 22, 29, 45, 98, 45, 22, 52, 21, 4, 68, 20, 21, 58],
386
+ color: "rgb(" + theme.spectrum.chartreuse40 + ")",
387
+ label: 'NYC'
388
+ }];
389
+ return /*#__PURE__*/_jsxs(VStack, {
390
+ gap: 4,
391
+ children: [/*#__PURE__*/_jsx(Box, {
392
+ borderRadius: 300,
393
+ padding: 2,
394
+ style: {
395
+ backgroundColor: background
396
+ },
397
+ children: /*#__PURE__*/_jsx(LineChart, {
398
+ enableScrubbing: true,
399
+ showArea: true,
400
+ accessibilityLabel: "NYC vs ATL comparison chart. Swipe to navigate.",
401
+ areaType: "dotted",
402
+ getScrubberAccessibilityLabel: index => "Point " + (index + 1),
403
+ height: 150,
404
+ inset: {
405
+ bottom: 8,
406
+ left: 8,
407
+ top: 8,
408
+ right: 0
409
+ },
410
+ series: seriesData,
411
+ xAxis: {
412
+ range: _ref5 => {
413
+ let {
414
+ min,
415
+ max
416
+ } = _ref5;
417
+ return {
418
+ min,
419
+ max: max - 92
420
+ };
421
+ }
422
+ },
423
+ children: /*#__PURE__*/_jsx(Scrubber, {
424
+ hideOverlay: true,
425
+ idlePulse: true,
426
+ BeaconLabelComponent: PercentageScrubberBeaconLabel,
427
+ beaconStroke: background,
428
+ lineStroke: scrubberLineStroke
429
+ })
430
+ })
431
+ }), /*#__PURE__*/_jsx(Box, {
432
+ borderRadius: 300,
433
+ padding: 2,
434
+ style: {
435
+ backgroundColor: background
436
+ },
437
+ children: /*#__PURE__*/_jsx(LineChart, {
438
+ enableScrubbing: true,
439
+ showArea: true,
440
+ accessibilityLabel: "NYC vs ATL comparison chart. Swipe to navigate.",
441
+ areaType: "dotted",
442
+ getScrubberAccessibilityLabel: index => "Point " + (index + 1),
443
+ height: 150,
444
+ inset: {
445
+ bottom: 8,
446
+ left: 8,
447
+ top: 8,
448
+ right: 0
449
+ },
450
+ series: seriesData,
451
+ xAxis: {
452
+ range: _ref6 => {
453
+ let {
454
+ min,
455
+ max
456
+ } = _ref6;
457
+ return {
458
+ min,
459
+ max: max - 92
460
+ };
461
+ }
462
+ },
463
+ children: /*#__PURE__*/_jsx(Scrubber, {
464
+ hideOverlay: true,
465
+ idlePulse: true,
466
+ BeaconLabelComponent: PercentageScrubberBeaconLabel,
467
+ beaconLabelPreferredSide: "left",
468
+ beaconStroke: background,
469
+ lineStroke: scrubberLineStroke
470
+ })
471
+ })
472
+ })]
473
+ });
474
+ };
475
+ const HideBeaconLabels = () => {
476
+ const theme = useTheme();
477
+ return /*#__PURE__*/_jsx(LineChart, {
478
+ enableScrubbing: true,
479
+ legend: true,
480
+ showArea: true,
481
+ accessibilityLabel: "Website visitors across 7 pages. Swipe to navigate.",
482
+ getScrubberAccessibilityLabel: index => "Page " + (index + 1) + ": " + [2400, 1398, 9800, 3908, 4800, 3800, 4300][index] + " views",
483
+ height: 200,
484
+ inset: {
485
+ top: 60
486
+ },
487
+ series: [{
488
+ id: 'pageViews',
489
+ data: [2400, 1398, 9800, 3908, 4800, 3800, 4300],
490
+ color: theme.color.accentBoldGreen,
491
+ label: 'Page Views'
492
+ }, {
493
+ id: 'uniqueVisitors',
494
+ data: [4000, 3000, 2000, 2780, 1890, 2390, 3490],
495
+ color: theme.color.accentBoldPurple,
496
+ label: 'Unique Visitors'
497
+ }],
498
+ children: /*#__PURE__*/_jsx(Scrubber, {
499
+ hideBeaconLabels: true,
500
+ labelElevated: true,
501
+ label: dataIndex => "Day " + (dataIndex + 1)
502
+ })
503
+ });
504
+ };
505
+ const LabelElevated = () => {
506
+ return /*#__PURE__*/_jsx(LineChart, {
507
+ enableScrubbing: true,
508
+ showArea: true,
509
+ accessibilityLabel: chartAccessibilityLabel,
510
+ getScrubberAccessibilityLabel: getScrubberAccessibilityLabel,
511
+ height: 200,
512
+ inset: {
513
+ top: 60
514
+ },
515
+ series: [{
516
+ id: 'prices',
517
+ data: sampleData
518
+ }],
519
+ children: /*#__PURE__*/_jsx(Scrubber, {
520
+ labelElevated: true,
521
+ label: dataIndex => "Day " + (dataIndex + 1)
522
+ })
523
+ });
524
+ };
525
+ const CustomLabelComponent = () => {
526
+ const theme = useTheme();
527
+ const MyLabelComponent = /*#__PURE__*/memo(props => {
528
+ const {
529
+ drawingArea
530
+ } = useCartesianChartContext();
531
+ if (!drawingArea) return null;
532
+ return /*#__PURE__*/_jsx(DefaultScrubberLabel, _extends({}, props, {
533
+ elevated: true,
534
+ background: theme.color.bgPrimary,
535
+ color: theme.color.bgPrimaryWash,
536
+ dy: 32,
537
+ fontWeight: FontWeight.Bold,
538
+ y: drawingArea.y + drawingArea.height
539
+ }));
540
+ });
541
+ return /*#__PURE__*/_jsx(LineChart, {
542
+ enableScrubbing: true,
543
+ showArea: true,
544
+ accessibilityLabel: chartAccessibilityLabel,
545
+ getScrubberAccessibilityLabel: getScrubberAccessibilityLabel,
546
+ height: 200,
547
+ inset: {
548
+ top: 16,
549
+ bottom: 64
550
+ },
551
+ series: [{
552
+ id: 'prices',
553
+ data: sampleData
554
+ }],
555
+ children: /*#__PURE__*/_jsx(Scrubber, {
556
+ LabelComponent: MyLabelComponent,
557
+ label: dataIndex => "Day " + (dataIndex + 1)
558
+ })
559
+ });
560
+ };
561
+ const ethData = [5, 15, 18, 30, 65, 30, 15, 35, 15, 2, 45, 12, 15, 40];
562
+ const LabelFonts = () => {
563
+ const getScrubberAccessibilityLabel = useCallback(index => "Day " + (index + 1) + ": BTC " + sampleData[index] + ", ETH " + ethData[index], []);
564
+ return /*#__PURE__*/_jsx(LineChart, {
565
+ enableScrubbing: true,
566
+ showArea: true,
567
+ showYAxis: true,
568
+ accessibilityLabel: "BTC and ETH comparison chart. Swipe to navigate.",
569
+ getScrubberAccessibilityLabel: getScrubberAccessibilityLabel,
570
+ height: 150,
571
+ series: [{
572
+ id: 'btc',
573
+ data: sampleData,
574
+ label: 'BTC',
575
+ color: assets.btc.color
576
+ }, {
577
+ id: 'eth',
578
+ data: ethData,
579
+ label: 'ETH',
580
+ color: assets.eth.color
581
+ }],
582
+ yAxis: {
583
+ showGrid: true
584
+ },
585
+ children: /*#__PURE__*/_jsx(Scrubber, {
586
+ beaconLabelFont: "legal",
587
+ label: dataIndex => "Day " + (dataIndex + 1),
588
+ labelFont: "legal"
589
+ })
590
+ });
591
+ };
592
+ const LabelBoundsInset = () => {
593
+ return /*#__PURE__*/_jsxs(VStack, {
594
+ gap: 4,
595
+ children: [/*#__PURE__*/_jsx(LineChart, {
596
+ enableScrubbing: true,
597
+ showArea: true,
598
+ accessibilityLabel: chartAccessibilityLabel,
599
+ getScrubberAccessibilityLabel: getScrubberAccessibilityLabel,
600
+ height: 150,
601
+ inset: {
602
+ left: 0,
603
+ right: 0
604
+ },
605
+ series: [{
606
+ id: 'prices',
607
+ data: sampleData
608
+ }],
609
+ children: /*#__PURE__*/_jsx(Scrubber, {
610
+ label: "Without bounds - text touches edge",
611
+ labelBoundsInset: 0
612
+ })
613
+ }), /*#__PURE__*/_jsx(LineChart, {
614
+ enableScrubbing: true,
615
+ showArea: true,
616
+ accessibilityLabel: chartAccessibilityLabel,
617
+ getScrubberAccessibilityLabel: getScrubberAccessibilityLabel,
618
+ height: 150,
619
+ inset: {
620
+ left: 0,
621
+ right: 0
622
+ },
623
+ series: [{
624
+ id: 'prices',
625
+ data: sampleData
626
+ }],
627
+ children: /*#__PURE__*/_jsx(Scrubber, {
628
+ label: "With bounds inset - text has space",
629
+ labelBoundsInset: {
630
+ top: 0,
631
+ bottom: 0,
632
+ left: 12,
633
+ right: 12
634
+ }
635
+ })
636
+ })]
637
+ });
638
+ };
639
+ const CustomLine = () => {
640
+ return /*#__PURE__*/_jsx(LineChart, {
641
+ enableScrubbing: true,
642
+ showArea: true,
643
+ accessibilityLabel: chartAccessibilityLabel,
644
+ getScrubberAccessibilityLabel: getScrubberAccessibilityLabel,
645
+ height: 150,
646
+ series: [{
647
+ id: 'prices',
648
+ data: sampleData
649
+ }],
650
+ children: /*#__PURE__*/_jsx(Scrubber, {
651
+ LineComponent: SolidLine
652
+ })
653
+ });
654
+ };
655
+ const HiddenScrubberWhenIdle = () => {
656
+ const MyScrubberBeacon = /*#__PURE__*/memo(props => {
657
+ const {
658
+ scrubberPosition
659
+ } = useScrubberContext();
660
+ const beaconOpacity = useDerivedValue(() => scrubberPosition.value !== undefined ? 1 : 0, [scrubberPosition]);
661
+ return /*#__PURE__*/_jsx(DefaultScrubberBeacon, _extends({}, props, {
662
+ opacity: beaconOpacity
663
+ }));
664
+ });
665
+ const MyScrubberBeaconLabel = /*#__PURE__*/memo(props => {
666
+ const {
667
+ scrubberPosition
668
+ } = useScrubberContext();
669
+ const labelOpacity = useDerivedValue(() => scrubberPosition.value !== undefined ? 1 : 0, [scrubberPosition]);
670
+ return /*#__PURE__*/_jsx(DefaultScrubberBeaconLabel, _extends({}, props, {
671
+ opacity: labelOpacity
672
+ }));
673
+ });
674
+ return /*#__PURE__*/_jsx(LineChart, {
675
+ enableScrubbing: true,
676
+ showArea: true,
677
+ accessibilityLabel: chartAccessibilityLabel,
678
+ getScrubberAccessibilityLabel: getScrubberAccessibilityLabel,
679
+ height: 150,
680
+ series: [{
681
+ id: 'prices',
682
+ data: sampleData,
683
+ label: 'Price'
684
+ }],
685
+ children: /*#__PURE__*/_jsx(Scrubber, {
686
+ BeaconComponent: MyScrubberBeacon,
687
+ BeaconLabelComponent: MyScrubberBeaconLabel
688
+ })
689
+ });
690
+ };
691
+ const HideOverlay = () => {
692
+ return /*#__PURE__*/_jsx(LineChart, {
693
+ enableScrubbing: true,
694
+ showArea: true,
695
+ accessibilityLabel: chartAccessibilityLabel,
696
+ getScrubberAccessibilityLabel: getScrubberAccessibilityLabel,
697
+ height: 150,
698
+ series: [{
699
+ id: 'prices',
700
+ data: sampleData
701
+ }],
702
+ children: /*#__PURE__*/_jsx(Scrubber, {
703
+ hideOverlay: true
704
+ })
705
+ });
706
+ };
707
+ const matchupBlueData = [47, 50, 51, 52, 53, 53, 53, 53, 52, 51, 51, 52, 53, 55, 57, 58, 59, 61, 63, 65, 64, 64, 64, 64, 64, 63, 63, 63, 64, 66, 68, 70, 71, 72, 74, 76, 76, 75, 74, 73, 74, 75, 75, 78];
708
+ const matchupRedData = matchupBlueData.map(value => 100 - value);
709
+ const matchupTeamLabels = {
710
+ blue: 'BLUE',
711
+ red: 'RED'
712
+ };
713
+ const MatchupBeaconLabels = () => {
714
+ const theme = useTheme();
715
+ const MatchupScrubberBeaconLabel = /*#__PURE__*/memo(_ref7 => {
716
+ var _matchupTeamLabels$se;
717
+ let {
718
+ seriesId,
719
+ color
720
+ } = _ref7,
721
+ props = _objectWithoutPropertiesLoose(_ref7, _excluded3);
722
+ const {
723
+ getSeriesData,
724
+ series,
725
+ fontProvider
726
+ } = useCartesianChartContext();
727
+ const {
728
+ scrubberPosition
729
+ } = useScrubberContext();
730
+ const seriesData = useMemo(() => getLineData(getSeriesData(seriesId)), [getSeriesData, seriesId]);
731
+ const dataLength = useMemo(() => {
732
+ var _series$reduce3;
733
+ return (_series$reduce3 = series == null ? void 0 : series.reduce((max, currentSeries) => {
734
+ var _data$length3;
735
+ const data = getSeriesData(currentSeries.id);
736
+ return Math.max(max, (_data$length3 = data == null ? void 0 : data.length) != null ? _data$length3 : 0);
737
+ }, 0)) != null ? _series$reduce3 : 0;
738
+ }, [series, getSeriesData]);
739
+ const dataIndex = useDerivedValue(() => {
740
+ var _scrubberPosition$val3;
741
+ return (_scrubberPosition$val3 = scrubberPosition.value) != null ? _scrubberPosition$val3 : Math.max(0, dataLength - 1);
742
+ }, [scrubberPosition, dataLength]);
743
+ const teamLabel = (_matchupTeamLabels$se = matchupTeamLabels[seriesId]) != null ? _matchupTeamLabels$se : String(seriesId).toUpperCase();
744
+ const labelColor = color != null ? color : theme.color.fgPrimary;
745
+ const legalFontSize = theme.fontSize.legal;
746
+ const title3FontSize = theme.fontSize.title3;
747
+ const teamStyle = useMemo(() => ({
748
+ fontFamilies: ['Inter'],
749
+ fontSize: legalFontSize,
750
+ fontStyle: {
751
+ weight: FontWeight.Normal
752
+ },
753
+ color: Skia.Color(labelColor)
754
+ }), [labelColor, legalFontSize]);
755
+ const percentageStyle = useMemo(() => ({
756
+ fontFamilies: ['Inter'],
757
+ fontSize: title3FontSize,
758
+ fontStyle: {
759
+ weight: FontWeight.Bold
760
+ },
761
+ color: Skia.Color(labelColor)
762
+ }), [title3FontSize, labelColor]);
763
+ const matchupLabel = useDerivedValue(() => {
764
+ if (seriesData === undefined) {
765
+ return teamLabel;
766
+ }
767
+ const value = seriesData[dataIndex.value];
768
+ const builder = Skia.ParagraphBuilder.Make({
769
+ textAlign: TextAlign.Left
770
+ }, fontProvider);
771
+ builder.pushStyle(teamStyle);
772
+ builder.addText(teamLabel);
773
+ builder.addText('\n');
774
+ builder.pushStyle(percentageStyle);
775
+ builder.addText(value + "%");
776
+ const paragraph = builder.build();
777
+ paragraph.layout(240);
778
+ return paragraph;
779
+ }, [dataIndex, fontProvider, percentageStyle, seriesData, teamLabel, teamStyle]);
780
+ return /*#__PURE__*/_jsx(DefaultScrubberBeaconLabel, _extends({}, props, {
781
+ background: "transparent",
782
+ color: labelColor,
783
+ elevated: false,
784
+ inset: 0,
785
+ label: matchupLabel,
786
+ seriesId: seriesId
787
+ }));
788
+ });
789
+ const getScrubberAccessibilityLabel = useCallback(index => "Point " + (index + 1) + ": BLUE " + matchupBlueData[index] + "%, RED " + matchupRedData[index] + "%", []);
790
+ return /*#__PURE__*/_jsx(LineChart, {
791
+ enableScrubbing: true,
792
+ showArea: true,
793
+ accessibilityLabel: "BLUE vs RED matchup chart. Swipe to navigate.",
794
+ areaType: "dotted",
795
+ getScrubberAccessibilityLabel: getScrubberAccessibilityLabel,
796
+ height: 300,
797
+ inset: {
798
+ bottom: 8,
799
+ left: 8,
800
+ top: 8,
801
+ right: 0
802
+ },
803
+ series: [{
804
+ id: 'blue',
805
+ data: matchupBlueData,
806
+ color: "rgb(" + theme.spectrum.blue50 + ")",
807
+ label: 'BLUE'
808
+ }, {
809
+ id: 'red',
810
+ data: matchupRedData,
811
+ color: "rgb(" + theme.spectrum.red50 + ")",
812
+ label: 'RED'
813
+ }],
814
+ xAxis: {
815
+ range: _ref8 => {
816
+ let {
817
+ min,
818
+ max
819
+ } = _ref8;
820
+ return {
821
+ min,
822
+ max: max - 64
823
+ };
824
+ }
825
+ },
826
+ yAxis: {
827
+ domain: {
828
+ min: 0,
829
+ max: 100
830
+ }
831
+ },
832
+ children: /*#__PURE__*/_jsx(Scrubber, {
833
+ idlePulse: true,
834
+ BeaconLabelComponent: MatchupScrubberBeaconLabel,
835
+ beaconLabelHorizontalOffset: 16,
836
+ beaconLabelPreferredSide: "right"
837
+ })
838
+ });
839
+ };
840
+ const ExampleNavigator = () => {
841
+ const [currentIndex, setCurrentIndex] = useState(0);
842
+ const examples = useMemo(() => [{
843
+ title: 'Basic',
844
+ component: /*#__PURE__*/_jsx(BasicScrubber, {})
845
+ }, {
846
+ title: 'Series Filter',
847
+ component: /*#__PURE__*/_jsx(SeriesFilter, {})
848
+ }, {
849
+ title: 'With Labels',
850
+ component: /*#__PURE__*/_jsx(WithLabels, {})
851
+ }, {
852
+ title: 'Idle Pulse',
853
+ component: /*#__PURE__*/_jsx(IdlePulse, {})
854
+ }, {
855
+ title: 'Imperative Pulse',
856
+ component: /*#__PURE__*/_jsx(ImperativePulse, {})
857
+ }, {
858
+ title: 'Beacon Stroke',
859
+ component: /*#__PURE__*/_jsx(BeaconStroke, {})
860
+ }, {
861
+ title: 'Custom Beacon',
862
+ component: /*#__PURE__*/_jsx(CustomBeacon, {})
863
+ }, {
864
+ title: 'Custom Beacon Label',
865
+ component: /*#__PURE__*/_jsx(CustomBeaconLabel, {})
866
+ }, {
867
+ title: 'Percentage Beacon Labels',
868
+ component: /*#__PURE__*/_jsx(PercentageBeaconLabels, {})
869
+ }, {
870
+ title: 'Hide Beacon Labels',
871
+ component: /*#__PURE__*/_jsx(HideBeaconLabels, {})
872
+ }, {
873
+ title: 'Label Elevated',
874
+ component: /*#__PURE__*/_jsx(LabelElevated, {})
875
+ }, {
876
+ title: 'Custom Label Component',
877
+ component: /*#__PURE__*/_jsx(CustomLabelComponent, {})
878
+ }, {
879
+ title: 'Label Fonts',
880
+ component: /*#__PURE__*/_jsx(LabelFonts, {})
881
+ }, {
882
+ title: 'Label Bounds Inset',
883
+ component: /*#__PURE__*/_jsx(LabelBoundsInset, {})
884
+ }, {
885
+ title: 'Custom Line',
886
+ component: /*#__PURE__*/_jsx(CustomLine, {})
887
+ }, {
888
+ title: 'Hidden Scrubber When Idle',
889
+ component: /*#__PURE__*/_jsx(HiddenScrubberWhenIdle, {})
890
+ }, {
891
+ title: 'Hide Overlay',
892
+ component: /*#__PURE__*/_jsx(HideOverlay, {})
893
+ }, {
894
+ title: 'Matchup Beacon Labels',
895
+ component: /*#__PURE__*/_jsx(MatchupBeaconLabels, {})
896
+ }], []);
897
+ const currentExample = examples[currentIndex];
898
+ const isFirstExample = currentIndex === 0;
899
+ const isLastExample = currentIndex === examples.length - 1;
900
+ const handlePrevious = useCallback(() => {
901
+ setCurrentIndex(prev => Math.max(0, prev - 1));
902
+ }, []);
903
+ const handleNext = useCallback(() => {
904
+ setCurrentIndex(prev => Math.min(examples.length - 1, prev + 1));
905
+ }, [examples.length]);
906
+ return /*#__PURE__*/_jsx(ExampleScreen, {
907
+ children: /*#__PURE__*/_jsxs(VStack, {
908
+ gap: 4,
909
+ children: [/*#__PURE__*/_jsxs(HStack, {
910
+ alignItems: "center",
911
+ justifyContent: "space-between",
912
+ paddingY: 2,
913
+ children: [/*#__PURE__*/_jsx(IconButton, {
914
+ accessibilityHint: "Navigate to previous example",
915
+ accessibilityLabel: "Previous",
916
+ disabled: isFirstExample,
917
+ name: "arrowLeft",
918
+ onPress: handlePrevious,
919
+ variant: "secondary"
920
+ }), /*#__PURE__*/_jsxs(VStack, {
921
+ alignItems: "center",
922
+ gap: 1,
923
+ children: [/*#__PURE__*/_jsx(Text, {
924
+ font: "title3",
925
+ children: currentExample.title
926
+ }), /*#__PURE__*/_jsxs(Text, {
927
+ color: "fgMuted",
928
+ font: "label1",
929
+ children: [currentIndex + 1, " / ", examples.length]
930
+ })]
931
+ }), /*#__PURE__*/_jsx(IconButton, {
932
+ accessibilityHint: "Navigate to next example",
933
+ accessibilityLabel: "Next",
934
+ disabled: isLastExample,
935
+ name: "arrowRight",
936
+ onPress: handleNext,
937
+ variant: "secondary"
938
+ })]
939
+ }), /*#__PURE__*/_jsx(Example, {
940
+ children: currentExample.component
941
+ })]
942
+ })
943
+ });
944
+ };
945
+ export default ExampleNavigator;