@coinbase/cds-common 0.0.0 → 8.13.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 (695) hide show
  1. package/CHANGELOG.md +37 -0
  2. package/README.md +3 -0
  3. package/dts/accordion/AccordionProvider.d.ts +30 -0
  4. package/dts/accordion/AccordionProvider.d.ts.map +1 -0
  5. package/dts/animation/accordion.d.ts +4 -0
  6. package/dts/animation/accordion.d.ts.map +1 -0
  7. package/dts/animation/border.d.ts +10 -0
  8. package/dts/animation/border.d.ts.map +1 -0
  9. package/dts/animation/carousel.d.ts +8 -0
  10. package/dts/animation/carousel.d.ts.map +1 -0
  11. package/dts/animation/collapsible.d.ts +15 -0
  12. package/dts/animation/collapsible.d.ts.map +1 -0
  13. package/dts/animation/dot.d.ts +6 -0
  14. package/dts/animation/dot.d.ts.map +1 -0
  15. package/dts/animation/drawer.d.ts +20 -0
  16. package/dts/animation/drawer.d.ts.map +1 -0
  17. package/dts/animation/dropdown.d.ts +27 -0
  18. package/dts/animation/dropdown.d.ts.map +1 -0
  19. package/dts/animation/fullscreenModal.d.ts +12 -0
  20. package/dts/animation/fullscreenModal.d.ts.map +1 -0
  21. package/dts/animation/likeButton.d.ts +6 -0
  22. package/dts/animation/likeButton.d.ts.map +1 -0
  23. package/dts/animation/menu.d.ts +29 -0
  24. package/dts/animation/menu.d.ts.map +1 -0
  25. package/dts/animation/modal.d.ts +10 -0
  26. package/dts/animation/modal.d.ts.map +1 -0
  27. package/dts/animation/overlay.d.ts +6 -0
  28. package/dts/animation/overlay.d.ts.map +1 -0
  29. package/dts/animation/paddle.d.ts +7 -0
  30. package/dts/animation/paddle.d.ts.map +1 -0
  31. package/dts/animation/progress.d.ts +3 -0
  32. package/dts/animation/progress.d.ts.map +1 -0
  33. package/dts/animation/rotate.d.ts +3 -0
  34. package/dts/animation/rotate.d.ts.map +1 -0
  35. package/dts/animation/select.d.ts +4 -0
  36. package/dts/animation/select.d.ts.map +1 -0
  37. package/dts/animation/sparkline.d.ts +7 -0
  38. package/dts/animation/sparkline.d.ts.map +1 -0
  39. package/dts/animation/tabs.d.ts +5 -0
  40. package/dts/animation/tabs.d.ts.map +1 -0
  41. package/dts/animation/toast.d.ts +12 -0
  42. package/dts/animation/toast.d.ts.map +1 -0
  43. package/dts/animation/tooltip.d.ts +21 -0
  44. package/dts/animation/tooltip.d.ts.map +1 -0
  45. package/dts/cards/getCardBodySpacingProps.d.ts +17 -0
  46. package/dts/cards/getCardBodySpacingProps.d.ts.map +1 -0
  47. package/dts/color/blendColors.d.ts +24 -0
  48. package/dts/color/blendColors.d.ts.map +1 -0
  49. package/dts/color/colorToHex.d.ts +7 -0
  50. package/dts/color/colorToHex.d.ts.map +1 -0
  51. package/dts/color/darkenColor.d.ts +2 -0
  52. package/dts/color/darkenColor.d.ts.map +1 -0
  53. package/dts/color/getAccessibleForegroundGradient.d.ts +18 -0
  54. package/dts/color/getAccessibleForegroundGradient.d.ts.map +1 -0
  55. package/dts/color/getBlendedColor.d.ts +121 -0
  56. package/dts/color/getBlendedColor.d.ts.map +1 -0
  57. package/dts/color/getContrastRatio.d.ts +6 -0
  58. package/dts/color/getContrastRatio.d.ts.map +1 -0
  59. package/dts/color/getLuminance.d.ts +13 -0
  60. package/dts/color/getLuminance.d.ts.map +1 -0
  61. package/dts/color/isAccessibleColor.d.ts +23 -0
  62. package/dts/color/isAccessibleColor.d.ts.map +1 -0
  63. package/dts/color/isLightOrDarkColor.d.ts +2 -0
  64. package/dts/color/isLightOrDarkColor.d.ts.map +1 -0
  65. package/dts/color/overrideAlpha.d.ts +8 -0
  66. package/dts/color/overrideAlpha.d.ts.map +1 -0
  67. package/dts/core/theme.d.ts +285 -0
  68. package/dts/core/theme.d.ts.map +1 -0
  69. package/dts/dates/DateInputValidationError.d.ts +6 -0
  70. package/dts/dates/DateInputValidationError.d.ts.map +1 -0
  71. package/dts/dates/IntlDateFormat.d.ts +42 -0
  72. package/dts/dates/IntlDateFormat.d.ts.map +1 -0
  73. package/dts/dates/generateCalendarMonth.d.ts +5 -0
  74. package/dts/dates/generateCalendarMonth.d.ts.map +1 -0
  75. package/dts/dates/getISOStringLocal.d.ts +5 -0
  76. package/dts/dates/getISOStringLocal.d.ts.map +1 -0
  77. package/dts/dates/getMidnightDate.d.ts +5 -0
  78. package/dts/dates/getMidnightDate.d.ts.map +1 -0
  79. package/dts/dates/getTimesFromDatesAndRanges.d.ts +7 -0
  80. package/dts/dates/getTimesFromDatesAndRanges.d.ts.map +1 -0
  81. package/dts/dates/useDateInput.d.ts +39 -0
  82. package/dts/dates/useDateInput.d.ts.map +1 -0
  83. package/dts/dates/useDateInputValidation.d.ts +55 -0
  84. package/dts/dates/useDateInputValidation.d.ts.map +1 -0
  85. package/dts/hooks/useEventHandler.d.ts +12 -0
  86. package/dts/hooks/useEventHandler.d.ts.map +1 -0
  87. package/dts/hooks/useFallbackShape.d.ts +14 -0
  88. package/dts/hooks/useFallbackShape.d.ts.map +1 -0
  89. package/dts/hooks/useGroupToggler.d.ts +26 -0
  90. package/dts/hooks/useGroupToggler.d.ts.map +1 -0
  91. package/dts/hooks/useHasMounted.d.ts +2 -0
  92. package/dts/hooks/useHasMounted.d.ts.map +1 -0
  93. package/dts/hooks/useIndexCounter.d.ts +25 -0
  94. package/dts/hooks/useIndexCounter.d.ts.map +1 -0
  95. package/dts/hooks/useInputVariant.d.ts +3 -0
  96. package/dts/hooks/useInputVariant.d.ts.map +1 -0
  97. package/dts/hooks/useLogo.d.ts +26 -0
  98. package/dts/hooks/useLogo.d.ts.map +1 -0
  99. package/dts/hooks/useMergeRefs.d.ts +4 -0
  100. package/dts/hooks/useMergeRefs.d.ts.map +1 -0
  101. package/dts/hooks/usePrefixedId.d.ts +18 -0
  102. package/dts/hooks/usePrefixedId.d.ts.map +1 -0
  103. package/dts/hooks/usePreviousValue.d.ts +2 -0
  104. package/dts/hooks/usePreviousValue.d.ts.map +1 -0
  105. package/dts/hooks/usePreviousValues.d.ts +5 -0
  106. package/dts/hooks/usePreviousValues.d.ts.map +1 -0
  107. package/dts/hooks/useRefMap.d.ts +15 -0
  108. package/dts/hooks/useRefMap.d.ts.map +1 -0
  109. package/dts/hooks/useSort.d.ts +19 -0
  110. package/dts/hooks/useSort.d.ts.map +1 -0
  111. package/dts/hooks/useSubBrandLogo.d.ts +70 -0
  112. package/dts/hooks/useSubBrandLogo.d.ts.map +1 -0
  113. package/dts/hooks/useTimer.d.ts +7 -0
  114. package/dts/hooks/useTimer.d.ts.map +1 -0
  115. package/dts/hooks/useToggler.d.ts +10 -0
  116. package/dts/hooks/useToggler.d.ts.map +1 -0
  117. package/dts/hooks/useValueChanges.d.ts +8 -0
  118. package/dts/hooks/useValueChanges.d.ts.map +1 -0
  119. package/dts/index.d.ts +8 -0
  120. package/dts/index.d.ts.map +1 -0
  121. package/dts/internal/data/accounts.d.ts +369 -0
  122. package/dts/internal/data/accounts.d.ts.map +1 -0
  123. package/dts/internal/data/announcementCards.d.ts +10 -0
  124. package/dts/internal/data/announcementCards.d.ts.map +1 -0
  125. package/dts/internal/data/asset.d.ts +171 -0
  126. package/dts/internal/data/asset.d.ts.map +1 -0
  127. package/dts/internal/data/assets.d.ts +81 -0
  128. package/dts/internal/data/assets.d.ts.map +1 -0
  129. package/dts/internal/data/avatars.d.ts +6 -0
  130. package/dts/internal/data/avatars.d.ts.map +1 -0
  131. package/dts/internal/data/dataCards.d.ts +27 -0
  132. package/dts/internal/data/dataCards.d.ts.map +1 -0
  133. package/dts/internal/data/featureEntryCards.d.ts +20 -0
  134. package/dts/internal/data/featureEntryCards.d.ts.map +1 -0
  135. package/dts/internal/data/feedImages.d.ts +2 -0
  136. package/dts/internal/data/feedImages.d.ts.map +1 -0
  137. package/dts/internal/data/iconData.d.ts +2 -0
  138. package/dts/internal/data/iconData.d.ts.map +1 -0
  139. package/dts/internal/data/loremIpsum.d.ts +3 -0
  140. package/dts/internal/data/loremIpsum.d.ts.map +1 -0
  141. package/dts/internal/data/navigation.d.ts +7 -0
  142. package/dts/internal/data/navigation.d.ts.map +1 -0
  143. package/dts/internal/data/prices.d.ts +7 -0
  144. package/dts/internal/data/prices.d.ts.map +1 -0
  145. package/dts/internal/data/product.d.ts +33 -0
  146. package/dts/internal/data/product.d.ts.map +1 -0
  147. package/dts/internal/data/tabs.d.ts +18 -0
  148. package/dts/internal/data/tabs.d.ts.map +1 -0
  149. package/dts/internal/data/users.d.ts +13 -0
  150. package/dts/internal/data/users.d.ts.map +1 -0
  151. package/dts/internal/utils/storyBuilder.d.ts +154 -0
  152. package/dts/internal/utils/storyBuilder.d.ts.map +1 -0
  153. package/dts/internal/visualizations/SparklineInteractiveData.d.ts +13 -0
  154. package/dts/internal/visualizations/SparklineInteractiveData.d.ts.map +1 -0
  155. package/dts/jest/timeTravel.d.ts +15 -0
  156. package/dts/jest/timeTravel.d.ts.map +1 -0
  157. package/dts/lottie/lottieUtils.d.ts +14 -0
  158. package/dts/lottie/lottieUtils.d.ts.map +1 -0
  159. package/dts/lottie/useStatusAnimationPoller.d.ts +35 -0
  160. package/dts/lottie/useStatusAnimationPoller.d.ts.map +1 -0
  161. package/dts/media/getAvatarFallbackColor.d.ts +9 -0
  162. package/dts/media/getAvatarFallbackColor.d.ts.map +1 -0
  163. package/dts/media/remoteImageFallbackSrc.d.ts +8 -0
  164. package/dts/media/remoteImageFallbackSrc.d.ts.map +1 -0
  165. package/dts/motion/animatedCaret.d.ts +3 -0
  166. package/dts/motion/animatedCaret.d.ts.map +1 -0
  167. package/dts/motion/checkbox.d.ts +89 -0
  168. package/dts/motion/checkbox.d.ts.map +1 -0
  169. package/dts/motion/dot.d.ts +89 -0
  170. package/dts/motion/dot.d.ts.map +1 -0
  171. package/dts/motion/hint.d.ts +52 -0
  172. package/dts/motion/hint.d.ts.map +1 -0
  173. package/dts/motion/switch.d.ts +7 -0
  174. package/dts/motion/switch.d.ts.map +1 -0
  175. package/dts/motion/tokens.d.ts +904 -0
  176. package/dts/motion/tokens.d.ts.map +1 -0
  177. package/dts/motion/utils.d.ts +33 -0
  178. package/dts/motion/utils.d.ts.map +1 -0
  179. package/dts/numbers/IntlNumberFormat.d.ts +129 -0
  180. package/dts/numbers/IntlNumberFormat.d.ts.map +1 -0
  181. package/dts/numbers/subscript.d.ts +7 -0
  182. package/dts/numbers/subscript.d.ts.map +1 -0
  183. package/dts/overlays/ModalContext.d.ts +25 -0
  184. package/dts/overlays/ModalContext.d.ts.map +1 -0
  185. package/dts/overlays/OverlayContentContext.d.ts +13 -0
  186. package/dts/overlays/OverlayContentContext.d.ts.map +1 -0
  187. package/dts/overlays/PortalContext.d.ts +8 -0
  188. package/dts/overlays/PortalContext.d.ts.map +1 -0
  189. package/dts/overlays/ToastProvider.d.ts +82 -0
  190. package/dts/overlays/ToastProvider.d.ts.map +1 -0
  191. package/dts/overlays/useAlert.d.ts +8 -0
  192. package/dts/overlays/useAlert.d.ts.map +1 -0
  193. package/dts/overlays/useModal.d.ts +8 -0
  194. package/dts/overlays/useModal.d.ts.map +1 -0
  195. package/dts/overlays/useOverlay.d.ts +6 -0
  196. package/dts/overlays/useOverlay.d.ts.map +1 -0
  197. package/dts/overlays/usePortal.d.ts +2 -0
  198. package/dts/overlays/usePortal.d.ts.map +1 -0
  199. package/dts/overlays/usePortalState.d.ts +24 -0
  200. package/dts/overlays/usePortalState.d.ts.map +1 -0
  201. package/dts/overlays/useToastQueue.d.ts +11 -0
  202. package/dts/overlays/useToastQueue.d.ts.map +1 -0
  203. package/dts/stepper/useStepper.d.ts +45 -0
  204. package/dts/stepper/useStepper.d.ts.map +1 -0
  205. package/dts/stepper/utils.d.ts +29 -0
  206. package/dts/stepper/utils.d.ts.map +1 -0
  207. package/dts/system/EventHandlerProvider.d.ts +33 -0
  208. package/dts/system/EventHandlerProvider.d.ts.map +1 -0
  209. package/dts/system/LocaleProvider.d.ts +15 -0
  210. package/dts/system/LocaleProvider.d.ts.map +1 -0
  211. package/dts/system/RefMapContext.d.ts +10 -0
  212. package/dts/system/RefMapContext.d.ts.map +1 -0
  213. package/dts/tabs/TabsContext.d.ts +5 -0
  214. package/dts/tabs/TabsContext.d.ts.map +1 -0
  215. package/dts/tabs/useTabs.d.ts +34 -0
  216. package/dts/tabs/useTabs.d.ts.map +1 -0
  217. package/dts/tokens/accordion.d.ts +7 -0
  218. package/dts/tokens/accordion.d.ts.map +1 -0
  219. package/dts/tokens/appSwitcher.d.ts +4 -0
  220. package/dts/tokens/appSwitcher.d.ts.map +1 -0
  221. package/dts/tokens/avatar.d.ts +14 -0
  222. package/dts/tokens/avatar.d.ts.map +1 -0
  223. package/dts/tokens/banner.d.ts +15 -0
  224. package/dts/tokens/banner.d.ts.map +1 -0
  225. package/dts/tokens/borderRadius.d.ts +3 -0
  226. package/dts/tokens/borderRadius.d.ts.map +1 -0
  227. package/dts/tokens/button.d.ts +65 -0
  228. package/dts/tokens/button.d.ts.map +1 -0
  229. package/dts/tokens/card.d.ts +29 -0
  230. package/dts/tokens/card.d.ts.map +1 -0
  231. package/dts/tokens/cell.d.ts +30 -0
  232. package/dts/tokens/cell.d.ts.map +1 -0
  233. package/dts/tokens/chip.d.ts +2 -0
  234. package/dts/tokens/chip.d.ts.map +1 -0
  235. package/dts/tokens/dot.d.ts +12 -0
  236. package/dts/tokens/dot.d.ts.map +1 -0
  237. package/dts/tokens/drawer.d.ts +12 -0
  238. package/dts/tokens/drawer.d.ts.map +1 -0
  239. package/dts/tokens/illustrations.d.ts +28 -0
  240. package/dts/tokens/illustrations.d.ts.map +1 -0
  241. package/dts/tokens/input.d.ts +6 -0
  242. package/dts/tokens/input.d.ts.map +1 -0
  243. package/dts/tokens/interactable.d.ts +5 -0
  244. package/dts/tokens/interactable.d.ts.map +1 -0
  245. package/dts/tokens/interactableHeight.d.ts +5 -0
  246. package/dts/tokens/interactableHeight.d.ts.map +1 -0
  247. package/dts/tokens/menu.d.ts +3 -0
  248. package/dts/tokens/menu.d.ts.map +1 -0
  249. package/dts/tokens/multiContentModule.d.ts +2 -0
  250. package/dts/tokens/multiContentModule.d.ts.map +1 -0
  251. package/dts/tokens/navigation.d.ts +2 -0
  252. package/dts/tokens/navigation.d.ts.map +1 -0
  253. package/dts/tokens/overlays.d.ts +3 -0
  254. package/dts/tokens/overlays.d.ts.map +1 -0
  255. package/dts/tokens/page.d.ts +3 -0
  256. package/dts/tokens/page.d.ts.map +1 -0
  257. package/dts/tokens/select.d.ts +7 -0
  258. package/dts/tokens/select.d.ts.map +1 -0
  259. package/dts/tokens/sidebar.d.ts +3 -0
  260. package/dts/tokens/sidebar.d.ts.map +1 -0
  261. package/dts/tokens/sizing.d.ts +3 -0
  262. package/dts/tokens/sizing.d.ts.map +1 -0
  263. package/dts/tokens/sparkline.d.ts +11 -0
  264. package/dts/tokens/sparkline.d.ts.map +1 -0
  265. package/dts/tokens/tags.d.ts +18 -0
  266. package/dts/tokens/tags.d.ts.map +1 -0
  267. package/dts/tokens/tile.d.ts +4 -0
  268. package/dts/tokens/tile.d.ts.map +1 -0
  269. package/dts/tokens/toast.d.ts +5 -0
  270. package/dts/tokens/toast.d.ts.map +1 -0
  271. package/dts/tokens/tooltip.d.ts +4 -0
  272. package/dts/tokens/tooltip.d.ts.map +1 -0
  273. package/dts/tokens/zIndex.d.ts +14 -0
  274. package/dts/tokens/zIndex.d.ts.map +1 -0
  275. package/dts/tour/TourContext.d.ts +6 -0
  276. package/dts/tour/TourContext.d.ts.map +1 -0
  277. package/dts/tour/useTour.d.ts +104 -0
  278. package/dts/tour/useTour.d.ts.map +1 -0
  279. package/dts/types/AvatarBaseProps.d.ts +6 -0
  280. package/dts/types/AvatarBaseProps.d.ts.map +1 -0
  281. package/dts/types/AvatarSize.d.ts +2 -0
  282. package/dts/types/AvatarSize.d.ts.map +1 -0
  283. package/dts/types/BannerBaseProps.d.ts +3 -0
  284. package/dts/types/BannerBaseProps.d.ts.map +1 -0
  285. package/dts/types/BoxBaseProps.d.ts +75 -0
  286. package/dts/types/BoxBaseProps.d.ts.map +1 -0
  287. package/dts/types/ButtonBaseProps.d.ts +8 -0
  288. package/dts/types/ButtonBaseProps.d.ts.map +1 -0
  289. package/dts/types/CardHeaderProps.d.ts +12 -0
  290. package/dts/types/CardHeaderProps.d.ts.map +1 -0
  291. package/dts/types/CardMediaProps.d.ts +33 -0
  292. package/dts/types/CardMediaProps.d.ts.map +1 -0
  293. package/dts/types/CardRemoteImageProps.d.ts +22 -0
  294. package/dts/types/CardRemoteImageProps.d.ts.map +1 -0
  295. package/dts/types/CdsPlatform.d.ts +2 -0
  296. package/dts/types/CdsPlatform.d.ts.map +1 -0
  297. package/dts/types/CellBaseProps.d.ts +8 -0
  298. package/dts/types/CellBaseProps.d.ts.map +1 -0
  299. package/dts/types/Chart.d.ts +29 -0
  300. package/dts/types/Chart.d.ts.map +1 -0
  301. package/dts/types/CollapsibleBaseProps.d.ts +2 -0
  302. package/dts/types/CollapsibleBaseProps.d.ts.map +1 -0
  303. package/dts/types/Color.d.ts +6 -0
  304. package/dts/types/Color.d.ts.map +1 -0
  305. package/dts/types/ComponentEventHandlerProps.d.ts +6 -0
  306. package/dts/types/ComponentEventHandlerProps.d.ts.map +1 -0
  307. package/dts/types/DimensionStyles.d.ts +24 -0
  308. package/dts/types/DimensionStyles.d.ts.map +1 -0
  309. package/dts/types/Display.d.ts +9 -0
  310. package/dts/types/Display.d.ts.map +1 -0
  311. package/dts/types/DotBaseProps.d.ts +5 -0
  312. package/dts/types/DotBaseProps.d.ts.map +1 -0
  313. package/dts/types/DotCountBaseProps.d.ts +5 -0
  314. package/dts/types/DotCountBaseProps.d.ts.map +1 -0
  315. package/dts/types/ElevationLevels.d.ts +7 -0
  316. package/dts/types/ElevationLevels.d.ts.map +1 -0
  317. package/dts/types/FallbackBaseProps.d.ts +10 -0
  318. package/dts/types/FallbackBaseProps.d.ts.map +1 -0
  319. package/dts/types/Grid.d.ts +2 -0
  320. package/dts/types/Grid.d.ts.map +1 -0
  321. package/dts/types/Helpers.d.ts +8 -0
  322. package/dts/types/Helpers.d.ts.map +1 -0
  323. package/dts/types/IconButtonBaseProps.d.ts +3 -0
  324. package/dts/types/IconButtonBaseProps.d.ts.map +1 -0
  325. package/dts/types/IconName.d.ts +3 -0
  326. package/dts/types/IconName.d.ts.map +1 -0
  327. package/dts/types/IconSize.d.ts +3 -0
  328. package/dts/types/IconSize.d.ts.map +1 -0
  329. package/dts/types/IllustrationNames.d.ts +19 -0
  330. package/dts/types/IllustrationNames.d.ts.map +1 -0
  331. package/dts/types/IllustrationProps.d.ts +27 -0
  332. package/dts/types/IllustrationProps.d.ts.map +1 -0
  333. package/dts/types/InputBaseProps.d.ts +25 -0
  334. package/dts/types/InputBaseProps.d.ts.map +1 -0
  335. package/dts/types/LottiePlayer.d.ts +12 -0
  336. package/dts/types/LottiePlayer.d.ts.map +1 -0
  337. package/dts/types/LottieSource.d.ts +30 -0
  338. package/dts/types/LottieSource.d.ts.map +1 -0
  339. package/dts/types/LottieStatusAnimationProps.d.ts +30 -0
  340. package/dts/types/LottieStatusAnimationProps.d.ts.map +1 -0
  341. package/dts/types/Motion.d.ts +71 -0
  342. package/dts/types/Motion.d.ts.map +1 -0
  343. package/dts/types/OverlayLifecycleProps.d.ts +19 -0
  344. package/dts/types/OverlayLifecycleProps.d.ts.map +1 -0
  345. package/dts/types/Palette.d.ts +5 -0
  346. package/dts/types/Palette.d.ts.map +1 -0
  347. package/dts/types/Placement.d.ts +3 -0
  348. package/dts/types/Placement.d.ts.map +1 -0
  349. package/dts/types/Position.d.ts +2 -0
  350. package/dts/types/Position.d.ts.map +1 -0
  351. package/dts/types/ProgressContainerWithButtonsProps.d.ts +8 -0
  352. package/dts/types/ProgressContainerWithButtonsProps.d.ts.map +1 -0
  353. package/dts/types/PulseBaseProps.d.ts +2 -0
  354. package/dts/types/PulseBaseProps.d.ts.map +1 -0
  355. package/dts/types/React.d.ts +3 -0
  356. package/dts/types/React.d.ts.map +1 -0
  357. package/dts/types/Rect.d.ts +8 -0
  358. package/dts/types/Rect.d.ts.map +1 -0
  359. package/dts/types/Responsive.d.ts +10 -0
  360. package/dts/types/Responsive.d.ts.map +1 -0
  361. package/dts/types/ResponsiveProps.d.ts +31 -0
  362. package/dts/types/ResponsiveProps.d.ts.map +1 -0
  363. package/dts/types/SectionHeaderProps.d.ts +20 -0
  364. package/dts/types/SectionHeaderProps.d.ts.map +1 -0
  365. package/dts/types/Shape.d.ts +3 -0
  366. package/dts/types/Shape.d.ts.map +1 -0
  367. package/dts/types/SharedAccessibilityProps.d.ts +34 -0
  368. package/dts/types/SharedAccessibilityProps.d.ts.map +1 -0
  369. package/dts/types/SharedProps.d.ts +9 -0
  370. package/dts/types/SharedProps.d.ts.map +1 -0
  371. package/dts/types/SpacingProps.d.ts +46 -0
  372. package/dts/types/SpacingProps.d.ts.map +1 -0
  373. package/dts/types/SparklineInteractiveHeaderBaseProps.d.ts +8 -0
  374. package/dts/types/SparklineInteractiveHeaderBaseProps.d.ts.map +1 -0
  375. package/dts/types/SpreadPropsSafely.d.ts +28 -0
  376. package/dts/types/SpreadPropsSafely.d.ts.map +1 -0
  377. package/dts/types/StickyFooterProps.d.ts +24 -0
  378. package/dts/types/StickyFooterProps.d.ts.map +1 -0
  379. package/dts/types/TagBaseProps.d.ts +7 -0
  380. package/dts/types/TagBaseProps.d.ts.map +1 -0
  381. package/dts/types/TextBaseProps.d.ts +10 -0
  382. package/dts/types/TextBaseProps.d.ts.map +1 -0
  383. package/dts/types/TooltipBaseProps.d.ts +2 -0
  384. package/dts/types/TooltipBaseProps.d.ts.map +1 -0
  385. package/dts/types/TypeOrNumber.d.ts +3 -0
  386. package/dts/types/TypeOrNumber.d.ts.map +1 -0
  387. package/dts/types/Visibility.d.ts +5 -0
  388. package/dts/types/Visibility.d.ts.map +1 -0
  389. package/dts/types/Weight.d.ts +2 -0
  390. package/dts/types/Weight.d.ts.map +1 -0
  391. package/dts/types/index.d.ts +57 -0
  392. package/dts/types/index.d.ts.map +1 -0
  393. package/dts/utils/cell.d.ts +6 -0
  394. package/dts/utils/cell.d.ts.map +1 -0
  395. package/dts/utils/chart.d.ts +2 -0
  396. package/dts/utils/chart.d.ts.map +1 -0
  397. package/dts/utils/circle.d.ts +4 -0
  398. package/dts/utils/circle.d.ts.map +1 -0
  399. package/dts/utils/convertDimensionToAspectRatio.d.ts +14 -0
  400. package/dts/utils/convertDimensionToAspectRatio.d.ts.map +1 -0
  401. package/dts/utils/convertDimensionToSize.d.ts +8 -0
  402. package/dts/utils/convertDimensionToSize.d.ts.map +1 -0
  403. package/dts/utils/convertSizeWithMultiplier.d.ts +12 -0
  404. package/dts/utils/convertSizeWithMultiplier.d.ts.map +1 -0
  405. package/dts/utils/debounce.d.ts +5 -0
  406. package/dts/utils/debounce.d.ts.map +1 -0
  407. package/dts/utils/delay.d.ts +5 -0
  408. package/dts/utils/delay.d.ts.map +1 -0
  409. package/dts/utils/flattenNodes.d.ts +9 -0
  410. package/dts/utils/flattenNodes.d.ts.map +1 -0
  411. package/dts/utils/formatCount.d.ts +26 -0
  412. package/dts/utils/formatCount.d.ts.map +1 -0
  413. package/dts/utils/getAccessibleColor.d.ts +33 -0
  414. package/dts/utils/getAccessibleColor.d.ts.map +1 -0
  415. package/dts/utils/getButtonSpacingProps.d.ts +19 -0
  416. package/dts/utils/getButtonSpacingProps.d.ts.map +1 -0
  417. package/dts/utils/getDefaultAspectRatioForIllustration.d.ts +11 -0
  418. package/dts/utils/getDefaultAspectRatioForIllustration.d.ts.map +1 -0
  419. package/dts/utils/getDefaultSizeObjectForIllustration.d.ts +6 -0
  420. package/dts/utils/getDefaultSizeObjectForIllustration.d.ts.map +1 -0
  421. package/dts/utils/getRectWidthVariant.d.ts +5 -0
  422. package/dts/utils/getRectWidthVariant.d.ts.map +1 -0
  423. package/dts/utils/getWidthInEm.d.ts +6 -0
  424. package/dts/utils/getWidthInEm.d.ts.map +1 -0
  425. package/dts/utils/join.d.ts +9 -0
  426. package/dts/utils/join.d.ts.map +1 -0
  427. package/dts/utils/mergeProps.d.ts +3 -0
  428. package/dts/utils/mergeProps.d.ts.map +1 -0
  429. package/dts/utils/mockUtils.d.ts +2 -0
  430. package/dts/utils/mockUtils.d.ts.map +1 -0
  431. package/dts/utils/modulate.d.ts +12 -0
  432. package/dts/utils/modulate.d.ts.map +1 -0
  433. package/dts/utils/parseDotCountMaxOverflow.d.ts +3 -0
  434. package/dts/utils/parseDotCountMaxOverflow.d.ts.map +1 -0
  435. package/dts/visualizations/getProgressCircleParams.d.ts +19 -0
  436. package/dts/visualizations/getProgressCircleParams.d.ts.map +1 -0
  437. package/dts/visualizations/getSparklineRange.d.ts +13 -0
  438. package/dts/visualizations/getSparklineRange.d.ts.map +1 -0
  439. package/dts/visualizations/getSparklineTransform.d.ts +8 -0
  440. package/dts/visualizations/getSparklineTransform.d.ts.map +1 -0
  441. package/dts/visualizations/largestTriangleThreeBucket.d.ts +16 -0
  442. package/dts/visualizations/largestTriangleThreeBucket.d.ts.map +1 -0
  443. package/dts/visualizations/useCounter.d.ts +11 -0
  444. package/dts/visualizations/useCounter.d.ts.map +1 -0
  445. package/dts/visualizations/useDateLookup.d.ts +12 -0
  446. package/dts/visualizations/useDateLookup.d.ts.map +1 -0
  447. package/dts/visualizations/useProgressSize.d.ts +3 -0
  448. package/dts/visualizations/useProgressSize.d.ts.map +1 -0
  449. package/dts/visualizations/useSparklineArea.d.ts +3 -0
  450. package/dts/visualizations/useSparklineArea.d.ts.map +1 -0
  451. package/dts/visualizations/useSparklineAreaOpacity.d.ts +2 -0
  452. package/dts/visualizations/useSparklineAreaOpacity.d.ts.map +1 -0
  453. package/dts/visualizations/useSparklineCoordinates.d.ts +28 -0
  454. package/dts/visualizations/useSparklineCoordinates.d.ts.map +1 -0
  455. package/dts/visualizations/useSparklinePath.d.ts +3 -0
  456. package/dts/visualizations/useSparklinePath.d.ts.map +1 -0
  457. package/dts/visualizations/useSparklinePathGenerator.d.ts +24 -0
  458. package/dts/visualizations/useSparklinePathGenerator.d.ts.map +1 -0
  459. package/dts/visualizations/useTimeseriesPaths.d.ts +11 -0
  460. package/dts/visualizations/useTimeseriesPaths.d.ts.map +1 -0
  461. package/dts/visualizations/useVisualizationDimensions.d.ts +20 -0
  462. package/dts/visualizations/useVisualizationDimensions.d.ts.map +1 -0
  463. package/esm/accordion/AccordionProvider.js +38 -0
  464. package/esm/animation/accordion.js +3 -0
  465. package/esm/animation/border.js +10 -0
  466. package/esm/animation/carousel.js +21 -0
  467. package/esm/animation/collapsible.js +75 -0
  468. package/esm/animation/dot.js +15 -0
  469. package/esm/animation/drawer.js +19 -0
  470. package/esm/animation/dropdown.js +31 -0
  471. package/esm/animation/fullscreenModal.js +39 -0
  472. package/esm/animation/likeButton.js +18 -0
  473. package/esm/animation/menu.js +31 -0
  474. package/esm/animation/modal.js +32 -0
  475. package/esm/animation/overlay.js +16 -0
  476. package/esm/animation/paddle.js +17 -0
  477. package/esm/animation/progress.js +4 -0
  478. package/esm/animation/rotate.js +5 -0
  479. package/esm/animation/select.js +16 -0
  480. package/esm/animation/sparkline.js +8 -0
  481. package/esm/animation/tabs.js +5 -0
  482. package/esm/animation/toast.js +36 -0
  483. package/esm/animation/tooltip.js +87 -0
  484. package/esm/cards/getCardBodySpacingProps.js +25 -0
  485. package/esm/color/blendColors.js +44 -0
  486. package/esm/color/colorToHex.js +11 -0
  487. package/esm/color/darkenColor.js +5 -0
  488. package/esm/color/getAccessibleForegroundGradient.js +32 -0
  489. package/esm/color/getBlendedColor.js +202 -0
  490. package/esm/color/getContrastRatio.js +11 -0
  491. package/esm/color/getLuminance.js +28 -0
  492. package/esm/color/isAccessibleColor.js +31 -0
  493. package/esm/color/isLightOrDarkColor.js +21 -0
  494. package/esm/color/overrideAlpha.js +15 -0
  495. package/esm/core/theme.js +26 -0
  496. package/esm/dates/DateInputValidationError.js +7 -0
  497. package/esm/dates/IntlDateFormat.js +66 -0
  498. package/esm/dates/generateCalendarMonth.js +22 -0
  499. package/esm/dates/getISOStringLocal.js +8 -0
  500. package/esm/dates/getMidnightDate.js +4 -0
  501. package/esm/dates/getTimesFromDatesAndRanges.js +16 -0
  502. package/esm/dates/useDateInput.js +105 -0
  503. package/esm/dates/useDateInputValidation.js +50 -0
  504. package/esm/hooks/useEventHandler.js +54 -0
  505. package/esm/hooks/useFallbackShape.js +29 -0
  506. package/esm/hooks/useGroupToggler.js +105 -0
  507. package/esm/hooks/useHasMounted.js +6 -0
  508. package/esm/hooks/useIndexCounter.js +47 -0
  509. package/esm/hooks/useInputVariant.js +4 -0
  510. package/esm/hooks/useLogo.js +60 -0
  511. package/esm/hooks/useMergeRefs.js +14 -0
  512. package/esm/hooks/usePrefixedId.js +25 -0
  513. package/esm/hooks/usePreviousValue.js +16 -0
  514. package/esm/hooks/usePreviousValues.js +26 -0
  515. package/esm/hooks/useRefMap.js +17 -0
  516. package/esm/hooks/useSort.js +26 -0
  517. package/esm/hooks/useSubBrandLogo.js +244 -0
  518. package/esm/hooks/useTimer.js +51 -0
  519. package/esm/hooks/useToggler.js +24 -0
  520. package/esm/hooks/useValueChanges.js +15 -0
  521. package/esm/index.js +7 -0
  522. package/esm/internal/data/accounts.js +1838 -0
  523. package/esm/internal/data/announcementCards.js +23 -0
  524. package/esm/internal/data/asset.js +6345 -0
  525. package/esm/internal/data/assets.js +82 -0
  526. package/esm/internal/data/avatars.js +2 -0
  527. package/esm/internal/data/dataCards.js +22 -0
  528. package/esm/internal/data/featureEntryCards.js +28 -0
  529. package/esm/internal/data/feedImages.js +1 -0
  530. package/esm/internal/data/iconData.js +1 -0
  531. package/esm/internal/data/loremIpsum.js +1 -0
  532. package/esm/internal/data/navigation.js +11 -0
  533. package/esm/internal/data/prices.js +7 -0
  534. package/esm/internal/data/product.js +24 -0
  535. package/esm/internal/data/tabs.js +58 -0
  536. package/esm/internal/data/users.js +9 -0
  537. package/esm/internal/utils/storyBuilder.js +102 -0
  538. package/esm/internal/visualizations/SparklineInteractiveData.js +67 -0
  539. package/esm/jest/timeTravel.js +42 -0
  540. package/esm/lottie/lottieUtils.js +20 -0
  541. package/esm/lottie/lottieUtils.test.js +44 -0
  542. package/esm/lottie/useStatusAnimationPoller.js +67 -0
  543. package/esm/media/getAvatarFallbackColor.js +50 -0
  544. package/esm/media/remoteImageFallbackSrc.js +11 -0
  545. package/esm/motion/animatedCaret.js +6 -0
  546. package/esm/motion/checkbox.js +9 -0
  547. package/esm/motion/dot.js +9 -0
  548. package/esm/motion/hint.js +19 -0
  549. package/esm/motion/switch.js +8 -0
  550. package/esm/motion/tokens.js +71 -0
  551. package/esm/motion/utils.js +17 -0
  552. package/esm/numbers/IntlNumberFormat.js +204 -0
  553. package/esm/numbers/subscript.js +53 -0
  554. package/esm/overlays/ModalContext.js +8 -0
  555. package/esm/overlays/OverlayContentContext.js +24 -0
  556. package/esm/overlays/PortalContext.js +6 -0
  557. package/esm/overlays/ToastProvider.js +51 -0
  558. package/esm/overlays/useAlert.js +8 -0
  559. package/esm/overlays/useModal.js +16 -0
  560. package/esm/overlays/useOverlay.js +28 -0
  561. package/esm/overlays/usePortal.js +10 -0
  562. package/esm/overlays/usePortalState.js +55 -0
  563. package/esm/overlays/useToastQueue.js +67 -0
  564. package/esm/stepper/useStepper.js +124 -0
  565. package/esm/stepper/utils.js +45 -0
  566. package/esm/system/EventHandlerProvider.js +24 -0
  567. package/esm/system/LocaleProvider.js +19 -0
  568. package/esm/system/RefMapContext.js +7 -0
  569. package/esm/tabs/TabsContext.js +7 -0
  570. package/esm/tabs/useTabs.js +43 -0
  571. package/esm/tokens/accordion.js +6 -0
  572. package/esm/tokens/appSwitcher.js +3 -0
  573. package/esm/tokens/avatar.js +13 -0
  574. package/esm/tokens/banner.js +39 -0
  575. package/esm/tokens/borderRadius.js +7 -0
  576. package/esm/tokens/button.js +64 -0
  577. package/esm/tokens/card.js +29 -0
  578. package/esm/tokens/cell.js +40 -0
  579. package/esm/tokens/chip.js +1 -0
  580. package/esm/tokens/dot.js +31 -0
  581. package/esm/tokens/drawer.js +11 -0
  582. package/esm/tokens/illustrations.js +28 -0
  583. package/esm/tokens/input.js +5 -0
  584. package/esm/tokens/interactable.js +4 -0
  585. package/esm/tokens/interactableHeight.js +4 -0
  586. package/esm/tokens/menu.js +2 -0
  587. package/esm/tokens/multiContentModule.js +1 -0
  588. package/esm/tokens/navigation.js +1 -0
  589. package/esm/tokens/overlays.js +1 -0
  590. package/esm/tokens/page.js +2 -0
  591. package/esm/tokens/select.js +26 -0
  592. package/esm/tokens/sidebar.js +2 -0
  593. package/esm/tokens/sizing.js +2 -0
  594. package/esm/tokens/sparkline.js +24 -0
  595. package/esm/tokens/tags.js +66 -0
  596. package/esm/tokens/tile.js +9 -0
  597. package/esm/tokens/toast.js +4 -0
  598. package/esm/tokens/tooltip.js +5 -0
  599. package/esm/tokens/zIndex.js +15 -0
  600. package/esm/tour/TourContext.js +7 -0
  601. package/esm/tour/useTour.js +84 -0
  602. package/esm/types/AvatarBaseProps.js +1 -0
  603. package/esm/types/AvatarSize.js +1 -0
  604. package/esm/types/BannerBaseProps.js +1 -0
  605. package/esm/types/BoxBaseProps.js +1 -0
  606. package/esm/types/ButtonBaseProps.js +1 -0
  607. package/esm/types/CardHeaderProps.js +1 -0
  608. package/esm/types/CardMediaProps.js +1 -0
  609. package/esm/types/CardRemoteImageProps.js +1 -0
  610. package/esm/types/CdsPlatform.js +1 -0
  611. package/esm/types/CellBaseProps.js +1 -0
  612. package/esm/types/Chart.js +1 -0
  613. package/esm/types/CollapsibleBaseProps.js +1 -0
  614. package/esm/types/Color.js +1 -0
  615. package/esm/types/ComponentEventHandlerProps.js +1 -0
  616. package/esm/types/DimensionStyles.js +1 -0
  617. package/esm/types/Display.js +1 -0
  618. package/esm/types/DotBaseProps.js +1 -0
  619. package/esm/types/DotCountBaseProps.js +1 -0
  620. package/esm/types/ElevationLevels.js +1 -0
  621. package/esm/types/FallbackBaseProps.js +1 -0
  622. package/esm/types/Grid.js +1 -0
  623. package/esm/types/Helpers.js +1 -0
  624. package/esm/types/IconButtonBaseProps.js +1 -0
  625. package/esm/types/IconName.js +1 -0
  626. package/esm/types/IconSize.js +1 -0
  627. package/esm/types/IllustrationNames.js +1 -0
  628. package/esm/types/IllustrationProps.js +1 -0
  629. package/esm/types/InputBaseProps.js +1 -0
  630. package/esm/types/LottiePlayer.js +1 -0
  631. package/esm/types/LottieSource.js +1 -0
  632. package/esm/types/LottieStatusAnimationProps.js +1 -0
  633. package/esm/types/Motion.js +1 -0
  634. package/esm/types/OverlayLifecycleProps.js +1 -0
  635. package/esm/types/Palette.js +1 -0
  636. package/esm/types/Placement.js +1 -0
  637. package/esm/types/Position.js +1 -0
  638. package/esm/types/ProgressContainerWithButtonsProps.js +1 -0
  639. package/esm/types/PulseBaseProps.js +1 -0
  640. package/esm/types/React.js +1 -0
  641. package/esm/types/Rect.js +6 -0
  642. package/esm/types/Responsive.js +1 -0
  643. package/esm/types/ResponsiveProps.js +1 -0
  644. package/esm/types/SectionHeaderProps.js +1 -0
  645. package/esm/types/Shape.js +1 -0
  646. package/esm/types/SharedAccessibilityProps.js +1 -0
  647. package/esm/types/SharedProps.js +1 -0
  648. package/esm/types/SpacingProps.js +1 -0
  649. package/esm/types/SparklineInteractiveHeaderBaseProps.js +1 -0
  650. package/esm/types/SpreadPropsSafely.js +1 -0
  651. package/esm/types/StickyFooterProps.js +1 -0
  652. package/esm/types/TagBaseProps.js +1 -0
  653. package/esm/types/TextBaseProps.js +1 -0
  654. package/esm/types/TooltipBaseProps.js +1 -0
  655. package/esm/types/TypeOrNumber.js +1 -0
  656. package/esm/types/Visibility.js +1 -0
  657. package/esm/types/Weight.js +1 -0
  658. package/esm/types/index.js +58 -0
  659. package/esm/utils/cell.js +5 -0
  660. package/esm/utils/chart.js +14 -0
  661. package/esm/utils/circle.js +12 -0
  662. package/esm/utils/convertDimensionToAspectRatio.js +5 -0
  663. package/esm/utils/convertDimensionToSize.js +9 -0
  664. package/esm/utils/convertSizeWithMultiplier.js +7 -0
  665. package/esm/utils/debounce.js +16 -0
  666. package/esm/utils/delay.js +6 -0
  667. package/esm/utils/flattenNodes.js +33 -0
  668. package/esm/utils/formatCount.js +43 -0
  669. package/esm/utils/getAccessibleColor.js +50 -0
  670. package/esm/utils/getButtonSpacingProps.js +24 -0
  671. package/esm/utils/getDefaultAspectRatioForIllustration.js +6 -0
  672. package/esm/utils/getDefaultSizeObjectForIllustration.js +7 -0
  673. package/esm/utils/getRectWidthVariant.js +1 -0
  674. package/esm/utils/getWidthInEm.js +13 -0
  675. package/esm/utils/join.js +11 -0
  676. package/esm/utils/mergeProps.js +25 -0
  677. package/esm/utils/mockUtils.js +1 -0
  678. package/esm/utils/modulate.js +32 -0
  679. package/esm/utils/parseDotCountMaxOverflow.js +7 -0
  680. package/esm/visualizations/getProgressCircleParams.js +18 -0
  681. package/esm/visualizations/getSparklineRange.js +13 -0
  682. package/esm/visualizations/getSparklineTransform.js +19 -0
  683. package/esm/visualizations/largestTriangleThreeBucket.js +57 -0
  684. package/esm/visualizations/useCounter.js +52 -0
  685. package/esm/visualizations/useDateLookup.js +18 -0
  686. package/esm/visualizations/useProgressSize.js +15 -0
  687. package/esm/visualizations/useSparklineArea.js +30 -0
  688. package/esm/visualizations/useSparklineAreaOpacity.js +3 -0
  689. package/esm/visualizations/useSparklineCoordinates.js +73 -0
  690. package/esm/visualizations/useSparklinePath.js +22 -0
  691. package/esm/visualizations/useSparklinePathGenerator.js +38 -0
  692. package/esm/visualizations/useTimeseriesPaths.js +41 -0
  693. package/esm/visualizations/useVisualizationDimensions.js +27 -0
  694. package/package.json +62 -6
  695. package/index.js +0 -1
@@ -0,0 +1,54 @@
1
+ import { useCallback, useContext } from 'react';
2
+ import isEmpty from 'lodash/isEmpty';
3
+ import { EventHandlerContext } from '../system/EventHandlerProvider';
4
+ const noOp = () => {};
5
+ export const useEventHandler = (component, action, eventConfig, analyticsId) => {
6
+ const config = useContext(EventHandlerContext);
7
+ return useCallback(() => {
8
+ var _actionMapping$action, _handler$convertedAct;
9
+ if (!config.handlers || !(eventConfig !== null && eventConfig !== void 0 && eventConfig.actions.length) && !analyticsId) {
10
+ return noOp();
11
+ }
12
+ const handler = config === null || config === void 0 ? void 0 : config.handlers[component];
13
+ if (!handler) {
14
+ return noOp();
15
+ }
16
+ const {
17
+ actionMapping
18
+ } = config;
19
+
20
+ /**
21
+ * Handler can provide an actionMapping object that maps
22
+ * CDS events (onClick, onHover) to its event names.
23
+ * If actionMapping is provided we convert CDS action into the handler one
24
+ * if the mapping between the two values exists
25
+ */
26
+ const convertedAction = (_actionMapping$action = actionMapping === null || actionMapping === void 0 ? void 0 : actionMapping[action]) !== null && _actionMapping$action !== void 0 ? _actionMapping$action : action;
27
+ const callback = (_handler$convertedAct = handler[convertedAction]) !== null && _handler$convertedAct !== void 0 ? _handler$convertedAct : noOp;
28
+ const params = {};
29
+
30
+ /**
31
+ * AnalyticsId is a generic way of autologging events without any meta
32
+ * information besides the ID, giving a way to log events without having
33
+ * engineers to manually include any contextual information. AnalyticsId
34
+ * would be used to identify the component that fires the event.
35
+ * Providing an analyticsId would take precendence over eventConfig
36
+ */
37
+ if (analyticsId) {
38
+ params.analyticsId = analyticsId;
39
+ }
40
+
41
+ /**
42
+ * the component event config provides a list of actions to track.
43
+ * If the current action is not listed we return a noOp
44
+ */
45
+ if (eventConfig !== null && eventConfig !== void 0 && eventConfig.actions.includes(convertedAction)) {
46
+ params.componentName = eventConfig.componentName;
47
+ params.data = eventConfig.data;
48
+ }
49
+ if (isEmpty(params)) {
50
+ return noOp();
51
+ }
52
+ return callback(params);
53
+ }, [action, component, config, eventConfig, analyticsId]);
54
+ };
@@ -0,0 +1,29 @@
1
+ import { useMemo } from 'react';
2
+ import { shapeBorderRadius } from '../tokens/borderRadius';
3
+ const WIDTH_MODIFIERS = [0.5, 0, 0.6, 0.8, 0.1, 0.9, 0.4, 0.2, 0.7, 0.3];
4
+ export function useFallbackShape(shape, baseWidth, options) {
5
+ const width = useMemo(() => {
6
+ // When rectangle, lets vary the width a bit so things are
7
+ // a little less... uniform. Variety is nice.
8
+ if (shape === 'rectangle' && typeof baseWidth === 'number' && (!(options !== null && options !== void 0 && options.disableRandomRectWidth) || (options === null || options === void 0 ? void 0 : options.rectWidthVariant) !== undefined)) {
9
+ const modifier = (options === null || options === void 0 ? void 0 : options.rectWidthVariant) !== undefined ? WIDTH_MODIFIERS[options.rectWidthVariant % WIDTH_MODIFIERS.length] : Math.random();
10
+ const quarter = Math.round(baseWidth / 4);
11
+ const min = Math.max(baseWidth - quarter, 1);
12
+ const max = baseWidth + quarter;
13
+ return Math.floor(modifier * (max - min + 1)) + min;
14
+ }
15
+
16
+ // All other shapes need a fixed aspect ratio
17
+ return baseWidth;
18
+ }, [baseWidth, options, shape]);
19
+ const borderRadius = useMemo(() => {
20
+ if (shape === 'circle' && Number.isInteger(width)) {
21
+ return Number(width) / 2;
22
+ }
23
+ return shape === 'squircle' ? shapeBorderRadius.squircle : 0;
24
+ }, [shape, width]);
25
+ return useMemo(() => ({
26
+ borderRadius,
27
+ width
28
+ }), [borderRadius, width]);
29
+ }
@@ -0,0 +1,105 @@
1
+ // internal to CDS, each platform customizes on top of this hook.
2
+ import { useCallback, useEffect, useMemo, useRef, useState } from 'react';
3
+ /**
4
+ *
5
+ * @param values - An array of all possible options. Make sure the array doesn't change if it's the same values so that the handlers will also stay the same.
6
+ * @param initialState - Initial checked option values.
7
+ * @returns [
8
+ * selectedValues,
9
+ {
10
+ select,
11
+ unselect,
12
+ toggle,
13
+ isAllSelected,
14
+ }
15
+ ]
16
+ */
17
+
18
+ /** @deprecated Do not use this. */
19
+ export const useGroupToggler = (values, initialState) => {
20
+ // The function inside useState will still run on every render.
21
+ // This makes sure that we are not creating new Sets on every render
22
+ // and just throwing it away immediately.
23
+ const initialStateSet = useMemo(() => new Set(initialState), [initialState]);
24
+ const [state, setState] = useState(initialStateSet);
25
+ const lastMixedStateRef = useRef();
26
+ useEffect(() => {
27
+ const isStateMixed = state.size !== 0 && state.size !== values.length;
28
+ if (isStateMixed) {
29
+ lastMixedStateRef.current = state;
30
+ }
31
+ }, [state, values.length, lastMixedStateRef]);
32
+ const select = useCallback(value => {
33
+ setState(prevState => {
34
+ if (!value) {
35
+ // select all
36
+ return new Set(values);
37
+ }
38
+ const nextState = new Set(prevState).add(value);
39
+ if (nextState.size === values.length) {
40
+ lastMixedStateRef.current = undefined;
41
+ }
42
+ return nextState;
43
+ });
44
+ }, [setState, values]);
45
+ const unselect = useCallback(value => {
46
+ setState(prevState => {
47
+ if (!value) {
48
+ // unselect all
49
+ return new Set();
50
+ }
51
+ const nextState = new Set(prevState);
52
+ if (nextState.size === 0) {
53
+ lastMixedStateRef.current = undefined;
54
+ }
55
+ return nextState;
56
+ });
57
+ }, [setState]);
58
+ const toggle = useCallback(value => {
59
+ setState(prevState => {
60
+ // group
61
+ if (!value) {
62
+ const isAllSelected = prevState.size === values.length;
63
+ const isAllUnSelected = prevState.size === 0;
64
+ if (isAllSelected) {
65
+ return new Set();
66
+ }
67
+ if (isAllUnSelected) {
68
+ // last mixed values if any
69
+ return lastMixedStateRef.current ? lastMixedStateRef.current : new Set(values);
70
+ }
71
+ // mixed
72
+ return new Set(values);
73
+ }
74
+
75
+ // individual value
76
+ const nextState = new Set(prevState);
77
+ if (nextState.delete(value)) {
78
+ if (nextState.size === 0) {
79
+ lastMixedStateRef.current = undefined;
80
+ }
81
+ return nextState;
82
+ }
83
+ nextState.add(value);
84
+ if (nextState.size === values.length) {
85
+ lastMixedStateRef.current = undefined;
86
+ }
87
+ return nextState;
88
+ });
89
+ }, [setState, values]);
90
+ const isAllSelected = useMemo(() => {
91
+ if (state.size === 0) {
92
+ return false;
93
+ }
94
+ if (state.size === values.length) {
95
+ return true;
96
+ }
97
+ return 'mixed';
98
+ }, [state, values.length]);
99
+ return [state, {
100
+ select,
101
+ unselect,
102
+ toggle,
103
+ isAllSelected
104
+ }];
105
+ };
@@ -0,0 +1,6 @@
1
+ import { useEffect, useState } from 'react';
2
+ export const useHasMounted = () => {
3
+ const [hasMounted, setHasMounted] = useState(false);
4
+ useEffect(() => setHasMounted(true), []);
5
+ return hasMounted;
6
+ };
@@ -0,0 +1,47 @@
1
+ import { useCallback, useMemo, useState } from 'react';
2
+ import { noop } from '@coinbase/cds-utils';
3
+ export function useIndexCounter(_ref) {
4
+ let {
5
+ length,
6
+ startIndex = 0,
7
+ onDecrement = noop,
8
+ onIncrement = noop,
9
+ onMinDecrement = noop,
10
+ onMaxIncrement = noop
11
+ } = _ref;
12
+ const [activeIndex, setActiveIndex] = useState(startIndex);
13
+ const isAtMin = activeIndex === 0;
14
+ const isAtMax = activeIndex === length - 1;
15
+ const handleDecrement = useCallback(() => {
16
+ if (isAtMin) {
17
+ onMinDecrement();
18
+ } else {
19
+ setActiveIndex(curr => {
20
+ const newactiveIndex = curr - 1;
21
+ onDecrement(newactiveIndex);
22
+ return newactiveIndex;
23
+ });
24
+ }
25
+ }, [isAtMin, onDecrement, onMinDecrement]);
26
+ const handleIncrement = useCallback(() => {
27
+ if (isAtMax) {
28
+ onMaxIncrement();
29
+ } else {
30
+ setActiveIndex(curr => {
31
+ const newactiveIndex = curr + 1;
32
+ onIncrement(newactiveIndex);
33
+ return newactiveIndex;
34
+ });
35
+ }
36
+ }, [isAtMax, onMaxIncrement, onIncrement]);
37
+ return useMemo(() => {
38
+ return {
39
+ activeIndex,
40
+ setActiveIndex,
41
+ isAtMin,
42
+ isAtMax,
43
+ handleDecrement,
44
+ handleIncrement
45
+ };
46
+ }, [activeIndex, handleDecrement, handleIncrement, isAtMin, isAtMax]);
47
+ }
@@ -0,0 +1,4 @@
1
+ import { useMemo } from 'react';
2
+ export const useInputVariant = (focused, variant) => {
3
+ return useMemo(() => focused && variant !== 'positive' && variant !== 'negative' ? 'primary' : variant, [focused, variant]);
4
+ };
@@ -0,0 +1,60 @@
1
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
2
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
3
+ function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
4
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
5
+ function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
6
+ import { useMemo } from 'react';
7
+ export const blue = '#0052FF';
8
+ export const black = '#0A0B0D';
9
+ export const white = '#FFFFFF';
10
+ const logoMarkData = {
11
+ 16: {
12
+ viewBox: '0 0 16 16',
13
+ path: 'M8,12c-2.21,0-4-1.79-4-4c0-2.21,1.79-4,4-4c1.86,0,3.41,1.28,3.86,3h4.07C15.44,3.05,12.08,0,8,0 C3.58,0,0,3.58,0,8c0,4.42,3.58,8,8,8c4.08,0,7.44-3.05,7.93-7h-4.07C11.41,10.72,9.86,12,8,12z'
14
+ },
15
+ 24: {
16
+ viewBox: '0 0 24 24',
17
+ path: 'M12.0225 18C8.70131 18 6.01127 15.315 6.01127 12C6.01127 8.685 8.70131 6 12.0225 6C14.9981 6 17.4678 8.165 17.9436 11H24C23.489 4.84 18.3244 0 12.0225 0C5.3851 0 0 5.375 0 12C0 18.625 5.3851 24 12.0225 24C18.3244 24 23.489 19.16 24 13H17.9436C17.4678 15.835 14.9981 18 12.0225 18Z'
18
+ },
19
+ 32: {
20
+ viewBox: '0 0 48 48',
21
+ path: 'M24,36c-6.63,0-12-5.37-12-12s5.37-12,12-12c5.94,0,10.87,4.33,11.82,10h12.09C46.89,9.68,36.58,0,24,0 C10.75,0,0,10.75,0,24s10.75,24,24,24c12.58,0,22.89-9.68,23.91-22H35.82C34.87,31.67,29.94,36,24,36z'
22
+ }
23
+ };
24
+ const wordmarkData = {
25
+ viewBox: '0 0 688 123',
26
+ path: 'M138.857 34.3392C113.863 34.3392 94.3343 53.3277 94.3343 78.7477C94.3343 104.168 113.37 122.994 138.857 122.994C164.343 122.994 183.71 103.843 183.71 78.5852C183.71 53.4902 164.674 34.3392 138.857 34.3392ZM139.025 104.674C124.792 104.674 114.363 93.611 114.363 78.754C114.363 63.7282 124.624 52.6714 138.857 52.6714C153.258 52.6714 163.681 63.897 163.681 78.754C163.681 93.611 153.258 104.674 139.025 104.674ZM189.168 53.659H201.584V121.35H221.443V35.9893H189.168V53.659ZM44.3536 52.6652C54.7832 52.6652 63.0581 59.103 66.1995 68.6785H87.2209C83.4113 48.2087 66.5305 34.3392 44.5223 34.3392C19.5288 34.3392 0 53.3277 0 78.754C0 104.18 19.0355 123 44.5223 123C66.0371 123 83.249 109.131 87.0586 88.492H66.1995C63.2205 98.0675 54.9456 104.674 44.516 104.674C30.1145 104.674 20.0222 93.611 20.0222 78.754C20.0285 63.7282 29.9584 52.6652 44.3536 52.6652ZM566.518 70.4973L551.954 68.3535C545.003 67.3659 540.038 65.0533 540.038 59.603C540.038 53.659 546.495 50.6901 555.264 50.6901C564.863 50.6901 570.989 54.8153 572.313 61.5844H591.511C589.357 44.4148 576.117 34.3455 555.763 34.3455C534.742 34.3455 520.84 45.0773 520.84 60.2656C520.84 74.7913 529.946 83.2167 548.313 85.8544L562.877 87.9982C569.996 88.9858 573.968 91.7984 573.968 97.0799C573.968 103.849 567.017 106.655 557.418 106.655C545.665 106.655 539.045 101.868 538.052 94.6048H518.523C520.347 111.281 533.418 123 557.25 123C578.933 123 593.328 113.093 593.328 96.0861C593.328 80.8979 582.905 72.9725 566.518 70.4973ZM211.514 0.825042C204.232 0.825042 198.767 6.10656 198.767 13.3694C198.767 20.6323 204.225 25.9138 211.514 25.9138C218.796 25.9138 224.26 20.6323 224.26 13.3694C224.26 6.10656 218.796 0.825042 211.514 0.825042ZM502.966 65.2158C502.966 46.7274 491.712 34.3455 467.88 34.3455C445.373 34.3455 432.795 45.7398 430.309 63.2407H450.007C451 56.4716 456.296 50.8588 467.549 50.8588C477.648 50.8588 482.613 55.3153 482.613 60.7656C482.613 67.866 473.507 69.6785 462.253 70.8349C447.028 72.4849 428.161 77.7664 428.161 97.58C428.161 112.937 439.583 122.837 457.788 122.837C472.021 122.837 480.958 116.893 485.43 107.48C486.092 115.9 492.38 121.35 501.155 121.35H512.74V103.687H502.972V65.2158H502.966ZM483.437 86.6794C483.437 98.0737 473.507 106.493 461.423 106.493C453.972 106.493 447.683 103.355 447.683 96.7549C447.683 88.3357 457.782 86.0231 467.05 85.0356C475.987 84.2105 480.952 82.2292 483.437 78.429V86.6794ZM378.012 34.3392C366.92 34.3392 357.652 38.9645 351.032 46.7211V0H331.172V121.35H350.701V110.124C357.321 118.212 366.758 123 378.012 123C401.843 123 419.886 104.18 419.886 78.754C419.886 53.3277 401.512 34.3392 378.012 34.3392ZM375.033 104.674C360.8 104.674 350.37 93.611 350.37 78.754C350.37 63.897 360.962 52.6714 375.195 52.6714C389.596 52.6714 399.689 63.7345 399.689 78.754C399.689 93.611 389.265 104.674 375.033 104.674ZM283.671 34.3392C270.762 34.3392 262.319 39.6208 257.354 47.0524V35.9893H237.656V121.344H257.516V74.9538C257.516 61.9094 265.791 52.6652 278.038 52.6652C289.46 52.6652 296.574 60.7531 296.574 72.4787V121.35H316.434V70.9974C316.44 49.5275 305.354 34.3392 283.671 34.3392ZM688 75.9476C688 51.5151 670.126 34.3455 646.126 34.3455C620.639 34.3455 601.934 53.4965 601.934 78.754C601.934 105.337 621.963 123 646.457 123C667.147 123 683.366 110.781 687.5 93.4485H666.81C663.831 101.043 656.549 105.337 646.781 105.337C634.035 105.337 624.436 97.4112 622.288 83.5417H687.994V75.9476H688ZM623.449 69.341C626.597 57.4529 635.534 51.6776 645.795 51.6776C657.049 51.6776 665.655 58.1155 667.641 69.341H623.449Z'
27
+ };
28
+ export const useLogoWordmark = _ref => {
29
+ let {
30
+ foreground,
31
+ colorScheme
32
+ } = _ref;
33
+ const color = colorScheme === 'dark' ? white : foreground ? black : blue;
34
+ return useMemo(() => {
35
+ return _objectSpread(_objectSpread({}, wordmarkData), {}, {
36
+ color
37
+ });
38
+ }, [color]);
39
+ };
40
+ export const useLogoMark = _ref2 => {
41
+ let {
42
+ size = 32,
43
+ foreground,
44
+ colorScheme
45
+ } = _ref2;
46
+ const {
47
+ viewBox,
48
+ path
49
+ } = logoMarkData[size];
50
+ const color = colorScheme === 'dark' ? white : foreground ? black : blue;
51
+ return useMemo(() => {
52
+ return {
53
+ color,
54
+ path,
55
+ viewBox,
56
+ width: size,
57
+ height: size
58
+ };
59
+ }, [color, path, size, viewBox]);
60
+ };
@@ -0,0 +1,14 @@
1
+ export const useMergeRefs = function () {
2
+ for (var _len = arguments.length, refs = new Array(_len), _key = 0; _key < _len; _key++) {
3
+ refs[_key] = arguments[_key];
4
+ }
5
+ return value => {
6
+ refs.forEach(ref => {
7
+ if (typeof ref === 'function') {
8
+ ref(value);
9
+ } else if (ref != null) {
10
+ ref.current = value;
11
+ }
12
+ });
13
+ };
14
+ };
@@ -0,0 +1,25 @@
1
+ import { useId } from 'react';
2
+
3
+ // We use generics to ensure the return type is inferred correctly
4
+
5
+ /**
6
+ * Returns a prefixed id or array of prefixed ids from React.useId
7
+ * that are SSR safe and unique across the application.
8
+ * @param IdentifierPrefix - A string or array of strings to prefix the id with (optional).
9
+ * @link https://react.dev/reference/react/useId#useid
10
+ * @returns string | string[]
11
+ */
12
+ export const usePrefixedId = identifierPrefix => {
13
+ const id = useId();
14
+
15
+ // If no prefix is provided, return a random id
16
+ if (!identifierPrefix) return id;
17
+
18
+ // If the prefix is a string, return a single prefixed id
19
+ if (typeof identifierPrefix === 'string') {
20
+ return "".concat(identifierPrefix, "-").concat(id);
21
+ }
22
+
23
+ // If the prefix is an array of strings, return an array of prefixed ids
24
+ return identifierPrefix.map(prefix => "".concat(prefix, "-").concat(id));
25
+ };
@@ -0,0 +1,16 @@
1
+ import { useEffect, useRef } from 'react';
2
+ export const usePreviousValue = value => {
3
+ // The ref object is a generic container whose current property is mutable ...
4
+ // ... and can hold any value, similar to an instance property on a class
5
+ const ref = useRef();
6
+ // Store current value in ref
7
+ useEffect(() => {
8
+ ref.current = value;
9
+ // Cleanup on unmount
10
+ return () => {
11
+ ref.current = undefined;
12
+ };
13
+ }, [value]); // Only re-run if value changes
14
+ // Return previous value (happens before update in useEffect above)
15
+ return ref.current;
16
+ };
@@ -0,0 +1,26 @@
1
+ import { useCallback, useRef } from 'react';
2
+
3
+ // keeps track of all unique previous values
4
+ // it's up to the user to add previous values
5
+ export function usePreviousValues() {
6
+ let initialValues = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
7
+ const previousValues = useRef(initialValues !== null && initialValues !== void 0 ? initialValues : []);
8
+ const addPreviousValue = useCallback(newValue => {
9
+ if (previousValues.current.length === 0 || previousValues.current[previousValues.current.length - 1] !== newValue) {
10
+ previousValues.current = [...previousValues.current, newValue];
11
+ }
12
+ }, [previousValues]);
13
+ const getPreviousValue = useCallback(allowDuplicates => {
14
+ if (previousValues.current.length > 1 && !allowDuplicates) {
15
+ return previousValues.current[previousValues.current.length - 2];
16
+ }
17
+ if (previousValues.current.length > 0) {
18
+ return previousValues.current[previousValues.current.length - 1];
19
+ }
20
+ return undefined;
21
+ }, [previousValues]);
22
+ return {
23
+ addPreviousValue,
24
+ getPreviousValue
25
+ };
26
+ }
@@ -0,0 +1,17 @@
1
+ import { useCallback, useMemo, useRef } from 'react';
2
+ export const useRefMap = function () {
3
+ let {
4
+ initialRefMap = {}
5
+ } = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
6
+ const refs = useRef(initialRefMap);
7
+ const getRef = useCallback(id => id in refs.current ? refs.current[id] : null, []);
8
+ const registerRef = useCallback((id, ref) => {
9
+ refs.current[id] = ref;
10
+ }, []);
11
+ const api = useMemo(() => ({
12
+ refs: refs.current,
13
+ getRef,
14
+ registerRef
15
+ }), [refs, getRef, registerRef]);
16
+ return api;
17
+ };
@@ -0,0 +1,26 @@
1
+ import { useMemo } from 'react';
2
+ import get from 'lodash/get';
3
+ export const useSort = _ref => {
4
+ let {
5
+ data,
6
+ sortBy,
7
+ sortDirection
8
+ } = _ref;
9
+ // TODO remove in the next major bump
10
+ // @ts-expect-error ensure old implementations don't fail
11
+ if (sortDirection === 'ASC') sortDirection = 'ascending';
12
+ // @ts-expect-error ensure old implementations don't fail
13
+ if (sortDirection === 'DESC') sortDirection = 'descending';
14
+ return useMemo(() => {
15
+ // Spread to avoid overwriting in place
16
+ return [...data].sort((a, b) => {
17
+ // Descending
18
+ if (sortDirection === 'descending') {
19
+ return (sortBy ? get(a, sortBy) : a) > (sortBy ? get(b, sortBy) : b) ? -1 : 1;
20
+ }
21
+
22
+ // Ascending (Default)
23
+ return (sortBy ? get(b, sortBy) : b) > (sortBy ? get(a, sortBy) : a) ? -1 : 1;
24
+ });
25
+ }, [data, sortDirection, sortBy]);
26
+ };