@razorpay/blade 11.39.0 → 12.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (647) hide show
  1. package/build/lib/native/components/Accordion/Accordion.js +2 -2
  2. package/build/lib/native/components/Accordion/Accordion.js.map +1 -1
  3. package/build/lib/native/components/Accordion/AccordionButton.native.js +8 -10
  4. package/build/lib/native/components/Accordion/AccordionButton.native.js.map +1 -1
  5. package/build/lib/native/components/Accordion/AccordionItemBody.js +7 -8
  6. package/build/lib/native/components/Accordion/AccordionItemBody.js.map +1 -1
  7. package/build/lib/native/components/Accordion/AccordionItemHeader.js +3 -8
  8. package/build/lib/native/components/Accordion/AccordionItemHeader.js.map +1 -1
  9. package/build/lib/native/components/Accordion/commonStyles.js +1 -1
  10. package/build/lib/native/components/Accordion/commonStyles.js.map +1 -1
  11. package/build/lib/native/components/ActionList/ActionList.js +1 -1
  12. package/build/lib/native/components/ActionList/ActionList.js.map +1 -1
  13. package/build/lib/native/components/ActionList/ActionListItem.js +9 -8
  14. package/build/lib/native/components/ActionList/ActionListItem.js.map +1 -1
  15. package/build/lib/native/components/ActionList/ActionListNoResults.js +2 -1
  16. package/build/lib/native/components/ActionList/ActionListNoResults.js.map +1 -1
  17. package/build/lib/native/components/Alert/Alert.js +4 -3
  18. package/build/lib/native/components/Alert/Alert.js.map +1 -1
  19. package/build/lib/native/components/Amount/Amount.js +4 -2
  20. package/build/lib/native/components/Amount/Amount.js.map +1 -1
  21. package/build/lib/native/components/AnimateInteractions/AnimateInteractions.native.js +11 -0
  22. package/build/lib/native/components/AnimateInteractions/AnimateInteractions.native.js.map +1 -0
  23. package/build/lib/native/components/Badge/Badge.js +10 -9
  24. package/build/lib/native/components/Badge/Badge.js.map +1 -1
  25. package/build/lib/native/components/BaseHeaderFooter/BaseHeader.js +11 -10
  26. package/build/lib/native/components/BaseHeaderFooter/BaseHeader.js.map +1 -1
  27. package/build/lib/native/components/BaseMenu/BaseMenuItem/BaseMenuItem.js +8 -6
  28. package/build/lib/native/components/BaseMenu/BaseMenuItem/BaseMenuItem.js.map +1 -1
  29. package/build/lib/native/components/BottomNav/BottomNav.native.js +4 -10
  30. package/build/lib/native/components/BottomNav/BottomNav.native.js.map +1 -1
  31. package/build/lib/native/components/Box/BaseBox/types/propsTypes.js.map +1 -1
  32. package/build/lib/native/components/Box/Box.js +1 -1
  33. package/build/lib/native/components/Box/Box.js.map +1 -1
  34. package/build/lib/native/components/Button/BaseButton/BaseButton.js +1 -1
  35. package/build/lib/native/components/Button/BaseButton/BaseButton.js.map +1 -1
  36. package/build/lib/native/components/Card/Card.js +1 -1
  37. package/build/lib/native/components/Card/Card.js.map +1 -1
  38. package/build/lib/native/components/Card/CardFooter.js +4 -8
  39. package/build/lib/native/components/Card/CardFooter.js.map +1 -1
  40. package/build/lib/native/components/Card/CardHeader.js +5 -9
  41. package/build/lib/native/components/Card/CardHeader.js.map +1 -1
  42. package/build/lib/native/components/Card/CardRoot.native.js +1 -1
  43. package/build/lib/native/components/Card/CardRoot.native.js.map +1 -1
  44. package/build/lib/native/components/Carousel/Carousel.native.js +1 -1
  45. package/build/lib/native/components/Carousel/Carousel.native.js.map +1 -1
  46. package/build/lib/native/components/Carousel/Indicators/StyledIndicatorButton.native.js +1 -1
  47. package/build/lib/native/components/Carousel/Indicators/StyledIndicatorButton.native.js.map +1 -1
  48. package/build/lib/native/components/Carousel/Indicators/getIndicatorButtonStyles.js +1 -1
  49. package/build/lib/native/components/Carousel/Indicators/getIndicatorButtonStyles.js.map +1 -1
  50. package/build/lib/native/components/Carousel/NavigationButton/getNavigationButtonStyles.js +1 -1
  51. package/build/lib/native/components/Carousel/NavigationButton/getNavigationButtonStyles.js.map +1 -1
  52. package/build/lib/native/components/Checkbox/Checkbox.js +6 -4
  53. package/build/lib/native/components/Checkbox/Checkbox.js.map +1 -1
  54. package/build/lib/native/components/Checkbox/CheckboxIcon/Fade.native.js +1 -1
  55. package/build/lib/native/components/Checkbox/CheckboxIcon/Fade.native.js.map +1 -1
  56. package/build/lib/native/components/Chip/Chip.js +5 -3
  57. package/build/lib/native/components/Chip/Chip.js.map +1 -1
  58. package/build/lib/native/components/Chip/ChipGroup.js +4 -3
  59. package/build/lib/native/components/Chip/ChipGroup.js.map +1 -1
  60. package/build/lib/native/components/Chip/chipTokens.js +1 -1
  61. package/build/lib/native/components/Chip/chipTokens.js.map +1 -1
  62. package/build/lib/native/components/Collapsible/Collapsible.js +2 -2
  63. package/build/lib/native/components/Collapsible/Collapsible.js.map +1 -1
  64. package/build/lib/native/components/Collapsible/commonStyles.js +1 -1
  65. package/build/lib/native/components/Collapsible/commonStyles.js.map +1 -1
  66. package/build/lib/native/components/Counter/Counter.js +13 -12
  67. package/build/lib/native/components/Counter/Counter.js.map +1 -1
  68. package/build/lib/native/components/Divider/Divider.js +2 -2
  69. package/build/lib/native/components/Divider/Divider.js.map +1 -1
  70. package/build/lib/native/components/Drawer/Drawer.native.js +4 -10
  71. package/build/lib/native/components/Drawer/Drawer.native.js.map +1 -1
  72. package/build/lib/native/components/Drawer/DrawerSubcomponents.native.js +4 -9
  73. package/build/lib/native/components/Drawer/DrawerSubcomponents.native.js.map +1 -1
  74. package/build/lib/native/components/Dropdown/Dropdown.js +2 -1
  75. package/build/lib/native/components/Dropdown/Dropdown.js.map +1 -1
  76. package/build/lib/native/components/Fade/Fade.native.js +11 -0
  77. package/build/lib/native/components/Fade/Fade.native.js.map +1 -0
  78. package/build/lib/native/components/Form/CharacterCounter/CharacterCounter.js +3 -9
  79. package/build/lib/native/components/Form/CharacterCounter/CharacterCounter.js.map +1 -1
  80. package/build/lib/native/components/Form/FormLabel.js +10 -10
  81. package/build/lib/native/components/Indicator/Indicator.js +7 -6
  82. package/build/lib/native/components/Indicator/Indicator.js.map +1 -1
  83. package/build/lib/native/components/Input/BaseInput/AnimatedBaseInputWrapper.native.js +1 -1
  84. package/build/lib/native/components/Input/BaseInput/AnimatedBaseInputWrapper.native.js.map +1 -1
  85. package/build/lib/native/components/Input/BaseInput/BaseInput.js +2 -1
  86. package/build/lib/native/components/Input/BaseInput/BaseInput.js.map +1 -1
  87. package/build/lib/native/components/Input/BaseInput/BaseInputTagSlot.native.js +3 -3
  88. package/build/lib/native/components/Input/BaseInput/BaseInputVisuals.js +8 -10
  89. package/build/lib/native/components/Input/BaseInput/BaseInputVisuals.js.map +1 -1
  90. package/build/lib/native/components/Input/BaseInput/StyledBaseInput.native.js +9 -8
  91. package/build/lib/native/components/Input/BaseInput/StyledBaseInput.native.js.map +1 -1
  92. package/build/lib/native/components/Input/BaseInput/baseInputTokens.js +1 -1
  93. package/build/lib/native/components/Input/BaseInput/baseInputTokens.js.map +1 -1
  94. package/build/lib/native/components/Link/BaseLink/BaseLink.js +1 -1
  95. package/build/lib/native/components/Link/BaseLink/BaseLink.js.map +1 -1
  96. package/build/lib/native/components/List/List.js +1 -1
  97. package/build/lib/native/components/List/List.js.map +1 -1
  98. package/build/lib/native/components/List/ListItem.js +8 -10
  99. package/build/lib/native/components/List/ListItem.js.map +1 -1
  100. package/build/lib/native/components/List/ListItemCode.js +3 -9
  101. package/build/lib/native/components/List/ListItemCode.js.map +1 -1
  102. package/build/lib/native/components/List/ListItemText.js +3 -8
  103. package/build/lib/native/components/List/ListItemText.js.map +1 -1
  104. package/build/lib/native/components/Menu/Menu.native.js +4 -10
  105. package/build/lib/native/components/Menu/Menu.native.js.map +1 -1
  106. package/build/lib/native/components/Menu/MenuItem.native.js +4 -10
  107. package/build/lib/native/components/Menu/MenuItem.native.js.map +1 -1
  108. package/build/lib/native/components/Menu/MenuOverlay.native.js +4 -10
  109. package/build/lib/native/components/Menu/MenuOverlay.native.js.map +1 -1
  110. package/build/lib/native/components/Menu/VisualSubComponents/MenuDivider.native.js +4 -10
  111. package/build/lib/native/components/Menu/VisualSubComponents/MenuDivider.native.js.map +1 -1
  112. package/build/lib/native/components/Menu/VisualSubComponents/MenuHeaderFooter.native.js +4 -10
  113. package/build/lib/native/components/Menu/VisualSubComponents/MenuHeaderFooter.native.js.map +1 -1
  114. package/build/lib/native/components/Modal/Modal.native.js +4 -9
  115. package/build/lib/native/components/Modal/Modal.native.js.map +1 -1
  116. package/build/lib/native/components/Modal/ModalBody.native.js +3 -8
  117. package/build/lib/native/components/Modal/ModalBody.native.js.map +1 -1
  118. package/build/lib/native/components/Modal/ModalFooter.native.js +3 -8
  119. package/build/lib/native/components/Modal/ModalFooter.native.js.map +1 -1
  120. package/build/lib/native/components/Modal/ModalHeader.native.js +3 -8
  121. package/build/lib/native/components/Modal/ModalHeader.native.js.map +1 -1
  122. package/build/lib/native/components/Morph/Morph.native.js +11 -0
  123. package/build/lib/native/components/Morph/Morph.native.js.map +1 -0
  124. package/build/lib/native/components/Move/Move.native.js +11 -0
  125. package/build/lib/native/components/Move/Move.native.js.map +1 -0
  126. package/build/lib/native/components/Popover/PopoverContent.js +6 -8
  127. package/build/lib/native/components/Popover/PopoverContent.js.map +1 -1
  128. package/build/lib/native/components/Popover/PopoverContentWrapper.native.js +1 -1
  129. package/build/lib/native/components/Popover/PopoverContentWrapper.native.js.map +1 -1
  130. package/build/lib/native/components/ProgressBar/CircularProgressBar.native.js +7 -9
  131. package/build/lib/native/components/ProgressBar/CircularProgressBar.native.js.map +1 -1
  132. package/build/lib/native/components/ProgressBar/CircularProgressLabel.js +3 -8
  133. package/build/lib/native/components/ProgressBar/CircularProgressLabel.js.map +1 -1
  134. package/build/lib/native/components/ProgressBar/ProgressBar.js +2 -2
  135. package/build/lib/native/components/ProgressBar/ProgressBar.js.map +1 -1
  136. package/build/lib/native/components/Radio/Radio.js +2 -1
  137. package/build/lib/native/components/Radio/Radio.js.map +1 -1
  138. package/build/lib/native/components/Radio/RadioIcon/Fade.native.js +1 -1
  139. package/build/lib/native/components/Radio/RadioIcon/Fade.native.js.map +1 -1
  140. package/build/lib/native/components/Radio/RadioIcon/RadioIconWrapperStyles.js +1 -1
  141. package/build/lib/native/components/Radio/RadioIcon/RadioIconWrapperStyles.js.map +1 -1
  142. package/build/lib/native/components/Scale/Scale.native.js +11 -0
  143. package/build/lib/native/components/Scale/Scale.native.js.map +1 -0
  144. package/build/lib/native/components/SideNav/SideNav.native.js +4 -10
  145. package/build/lib/native/components/SideNav/SideNav.native.js.map +1 -1
  146. package/build/lib/native/components/SideNav/SideNavBody.native.js +4 -10
  147. package/build/lib/native/components/SideNav/SideNavBody.native.js.map +1 -1
  148. package/build/lib/native/components/SideNav/SideNavFooter.native.js +4 -10
  149. package/build/lib/native/components/SideNav/SideNavFooter.native.js.map +1 -1
  150. package/build/lib/native/components/SideNav/SideNavItems/SideNavItem.native.js +4 -10
  151. package/build/lib/native/components/SideNav/SideNavItems/SideNavItem.native.js.map +1 -1
  152. package/build/lib/native/components/SideNav/SideNavItems/SideNavLink.native.js +4 -10
  153. package/build/lib/native/components/SideNav/SideNavItems/SideNavLink.native.js.map +1 -1
  154. package/build/lib/native/components/SideNav/SideNavLevel.native.js +4 -10
  155. package/build/lib/native/components/SideNav/SideNavLevel.native.js.map +1 -1
  156. package/build/lib/native/components/SideNav/SideNavSection.native.js +4 -10
  157. package/build/lib/native/components/SideNav/SideNavSection.native.js.map +1 -1
  158. package/build/lib/native/components/SideNav/tokens.js.map +1 -1
  159. package/build/lib/native/components/Skeleton/PulseAnimation.native.js +1 -1
  160. package/build/lib/native/components/Skeleton/PulseAnimation.native.js.map +1 -1
  161. package/build/lib/native/components/Skeleton/Skeleton.js +2 -2
  162. package/build/lib/native/components/Skeleton/Skeleton.js.map +1 -1
  163. package/build/lib/native/components/Slide/Slide.native.js +11 -0
  164. package/build/lib/native/components/Slide/Slide.native.js.map +1 -0
  165. package/build/lib/native/components/Spinner/BaseSpinner/BaseSpinner.js +4 -3
  166. package/build/lib/native/components/Spinner/BaseSpinner/BaseSpinner.js.map +1 -1
  167. package/build/lib/native/components/Spinner/BaseSpinner/spinnerTokens.js +1 -1
  168. package/build/lib/native/components/Spinner/BaseSpinner/spinnerTokens.js.map +1 -1
  169. package/build/lib/native/components/Spinner/Spinner/Spinner.js +2 -1
  170. package/build/lib/native/components/Spinner/Spinner/Spinner.js.map +1 -1
  171. package/build/lib/native/components/Stagger/Stagger.native.js +11 -0
  172. package/build/lib/native/components/Stagger/Stagger.native.js.map +1 -0
  173. package/build/lib/native/components/StepGroup/StepGroup.native.js +4 -10
  174. package/build/lib/native/components/StepGroup/StepGroup.native.js.map +1 -1
  175. package/build/lib/native/components/StepGroup/StepItem.native.js +4 -10
  176. package/build/lib/native/components/StepGroup/StepItem.native.js.map +1 -1
  177. package/build/lib/native/components/Switch/Switch.js +2 -1
  178. package/build/lib/native/components/Switch/Switch.js.map +1 -1
  179. package/build/lib/native/components/Switch/getTrackStyles.js +1 -1
  180. package/build/lib/native/components/Switch/getTrackStyles.js.map +1 -1
  181. package/build/lib/native/components/Switch/switchTokens.js +1 -1
  182. package/build/lib/native/components/Switch/switchTokens.js.map +1 -1
  183. package/build/lib/native/components/Table/Table.native.js +4 -9
  184. package/build/lib/native/components/Table/Table.native.js.map +1 -1
  185. package/build/lib/native/components/Table/TableBody.native.js +3 -8
  186. package/build/lib/native/components/Table/TableBody.native.js.map +1 -1
  187. package/build/lib/native/components/Table/TableEditableCell.native.js +3 -9
  188. package/build/lib/native/components/Table/TableEditableCell.native.js.map +1 -1
  189. package/build/lib/native/components/Table/TableFooter.native.js +3 -8
  190. package/build/lib/native/components/Table/TableFooter.native.js.map +1 -1
  191. package/build/lib/native/components/Table/TableHeader.native.js +3 -8
  192. package/build/lib/native/components/Table/TableHeader.native.js.map +1 -1
  193. package/build/lib/native/components/Table/TablePagination.native.js +3 -8
  194. package/build/lib/native/components/Table/TablePagination.native.js.map +1 -1
  195. package/build/lib/native/components/Table/TableToolbar.native.js +3 -8
  196. package/build/lib/native/components/Table/TableToolbar.native.js.map +1 -1
  197. package/build/lib/native/components/Table/tokens.js.map +1 -1
  198. package/build/lib/native/components/Tabs/Tabs.native.js +6 -8
  199. package/build/lib/native/components/Tabs/Tabs.native.js.map +1 -1
  200. package/build/lib/native/components/Tag/AnimatedTag.native.js +1 -1
  201. package/build/lib/native/components/Tag/AnimatedTag.native.js.map +1 -1
  202. package/build/lib/native/components/Tag/Tag.js +3 -2
  203. package/build/lib/native/components/Tag/Tag.js.map +1 -1
  204. package/build/lib/native/components/Tooltip/TooltipContent.js +8 -8
  205. package/build/lib/native/components/Tooltip/TooltipContentWrapper.native.js +1 -1
  206. package/build/lib/native/components/Tooltip/TooltipContentWrapper.native.js.map +1 -1
  207. package/build/lib/native/components/TopNav/TabNav/TabNav.native.js +4 -10
  208. package/build/lib/native/components/TopNav/TabNav/TabNav.native.js.map +1 -1
  209. package/build/lib/native/components/TopNav/TabNav/TabNavItem.native.js +4 -10
  210. package/build/lib/native/components/TopNav/TabNav/TabNavItem.native.js.map +1 -1
  211. package/build/lib/native/components/TopNav/TopNav.native.js +4 -10
  212. package/build/lib/native/components/TopNav/TopNav.native.js.map +1 -1
  213. package/build/lib/native/components/Typography/Code/Code.js +1 -1
  214. package/build/lib/native/components/Typography/Code/Code.js.map +1 -1
  215. package/build/lib/native/components/Typography/Display/Display.js +2 -2
  216. package/build/lib/native/components/Typography/Display/Display.js.map +1 -1
  217. package/build/lib/native/components/Typography/Heading/Heading.js +2 -2
  218. package/build/lib/native/components/Typography/Heading/Heading.js.map +1 -1
  219. package/build/lib/native/components/Typography/Text/Text.js +2 -2
  220. package/build/lib/native/components/Typography/Text/Text.js.map +1 -1
  221. package/build/lib/native/components/index.js +7 -0
  222. package/build/lib/native/components/index.js.map +1 -1
  223. package/build/lib/native/tokens/global/motion.js +1 -1
  224. package/build/lib/native/tokens/global/motion.js.map +1 -1
  225. package/build/lib/native/utils/getMotionRefs.js +4 -0
  226. package/build/lib/native/utils/getMotionRefs.js.map +1 -0
  227. package/build/lib/web/development/components/Accordion/Accordion.js +6 -3
  228. package/build/lib/web/development/components/Accordion/Accordion.js.map +1 -1
  229. package/build/lib/web/development/components/Accordion/commonStyles.js +1 -1
  230. package/build/lib/web/development/components/Accordion/commonStyles.js.map +1 -1
  231. package/build/lib/web/development/components/ActionList/ActionList.js +3 -0
  232. package/build/lib/web/development/components/ActionList/ActionList.js.map +1 -1
  233. package/build/lib/web/development/components/Alert/Alert.js +6 -3
  234. package/build/lib/web/development/components/Alert/Alert.js.map +1 -1
  235. package/build/lib/web/development/components/Amount/Amount.js +3 -2
  236. package/build/lib/web/development/components/Amount/Amount.js.map +1 -1
  237. package/build/lib/web/development/components/AnimateInteractions/AnimateInteractions.web.js +37 -0
  238. package/build/lib/web/development/components/AnimateInteractions/AnimateInteractions.web.js.map +1 -0
  239. package/build/lib/web/development/components/AnimateInteractions/AnimateInteractionsProvider.js +12 -0
  240. package/build/lib/web/development/components/AnimateInteractions/AnimateInteractionsProvider.js.map +1 -0
  241. package/build/lib/web/development/components/AnimateInteractions/index.js +2 -0
  242. package/build/lib/web/development/components/AnimateInteractions/index.js.map +1 -0
  243. package/build/lib/web/development/components/AnimateInteractions/useFocusWithin.js +30 -0
  244. package/build/lib/web/development/components/AnimateInteractions/useFocusWithin.js.map +1 -0
  245. package/build/lib/web/development/components/Badge/Badge.js +4 -2
  246. package/build/lib/web/development/components/Badge/Badge.js.map +1 -1
  247. package/build/lib/web/development/components/BaseMotion/BaseMotion.js +123 -0
  248. package/build/lib/web/development/components/BaseMotion/BaseMotion.js.map +1 -0
  249. package/build/lib/web/development/components/BaseMotion/baseMotionUtils.js +60 -0
  250. package/build/lib/web/development/components/BaseMotion/baseMotionUtils.js.map +1 -0
  251. package/build/lib/web/development/components/BaseMotion/index.js +3 -0
  252. package/build/lib/web/development/components/BaseMotion/index.js.map +1 -0
  253. package/build/lib/web/development/components/BaseMotion/types.js +2 -0
  254. package/build/lib/web/development/components/BaseMotion/types.js.map +1 -0
  255. package/build/lib/web/development/components/BottomNav/BottomNav.web.js +4 -2
  256. package/build/lib/web/development/components/BottomNav/BottomNav.web.js.map +1 -1
  257. package/build/lib/web/development/components/BottomSheet/BottomSheet.web.js +1 -1
  258. package/build/lib/web/development/components/BottomSheet/BottomSheet.web.js.map +1 -1
  259. package/build/lib/web/development/components/BottomSheet/BottomSheetBackdrop.web.js +1 -1
  260. package/build/lib/web/development/components/BottomSheet/BottomSheetBackdrop.web.js.map +1 -1
  261. package/build/lib/web/development/components/Box/BaseBox/types/propsTypes.js.map +1 -1
  262. package/build/lib/web/development/components/Box/Box.js +2 -2
  263. package/build/lib/web/development/components/Box/Box.js.map +1 -1
  264. package/build/lib/web/development/components/Breadcrumb/Breadcrumb.web.js +3 -1
  265. package/build/lib/web/development/components/Breadcrumb/Breadcrumb.web.js.map +1 -1
  266. package/build/lib/web/development/components/Button/BaseButton/BaseButton.js +1 -1
  267. package/build/lib/web/development/components/Button/BaseButton/BaseButton.js.map +1 -1
  268. package/build/lib/web/development/components/Button/IconButton/StyledIconButton.web.js +1 -1
  269. package/build/lib/web/development/components/Button/IconButton/StyledIconButton.web.js.map +1 -1
  270. package/build/lib/web/development/components/ButtonGroup/ButtonGroup.web.js +3 -2
  271. package/build/lib/web/development/components/ButtonGroup/ButtonGroup.web.js.map +1 -1
  272. package/build/lib/web/development/components/Card/Card.js +3 -1
  273. package/build/lib/web/development/components/Card/Card.js.map +1 -1
  274. package/build/lib/web/development/components/Card/CardRoot.web.js +6 -4
  275. package/build/lib/web/development/components/Card/CardRoot.web.js.map +1 -1
  276. package/build/lib/web/development/components/Carousel/Carousel.web.js +6 -3
  277. package/build/lib/web/development/components/Carousel/Carousel.web.js.map +1 -1
  278. package/build/lib/web/development/components/Carousel/Indicators/getIndicatorButtonStyles.js +1 -1
  279. package/build/lib/web/development/components/Carousel/Indicators/getIndicatorButtonStyles.js.map +1 -1
  280. package/build/lib/web/development/components/Carousel/NavigationButton/getNavigationButtonStyles.js +1 -1
  281. package/build/lib/web/development/components/Carousel/NavigationButton/getNavigationButtonStyles.js.map +1 -1
  282. package/build/lib/web/development/components/Checkbox/Checkbox.js +13 -3
  283. package/build/lib/web/development/components/Checkbox/Checkbox.js.map +1 -1
  284. package/build/lib/web/development/components/Checkbox/CheckboxIcon/Fade.web.js +2 -2
  285. package/build/lib/web/development/components/Checkbox/CheckboxIcon/Fade.web.js.map +1 -1
  286. package/build/lib/web/development/components/Chip/Chip.js +11 -2
  287. package/build/lib/web/development/components/Chip/Chip.js.map +1 -1
  288. package/build/lib/web/development/components/Chip/ChipGroup.js +5 -2
  289. package/build/lib/web/development/components/Chip/ChipGroup.js.map +1 -1
  290. package/build/lib/web/development/components/Chip/chipTokens.js +1 -1
  291. package/build/lib/web/development/components/Chip/chipTokens.js.map +1 -1
  292. package/build/lib/web/development/components/Collapsible/Collapsible.js +6 -3
  293. package/build/lib/web/development/components/Collapsible/Collapsible.js.map +1 -1
  294. package/build/lib/web/development/components/Collapsible/commonStyles.js +2 -2
  295. package/build/lib/web/development/components/Collapsible/commonStyles.js.map +1 -1
  296. package/build/lib/web/development/components/Counter/Counter.js +4 -2
  297. package/build/lib/web/development/components/Counter/Counter.js.map +1 -1
  298. package/build/lib/web/development/components/Divider/Divider.js +4 -2
  299. package/build/lib/web/development/components/Divider/Divider.js.map +1 -1
  300. package/build/lib/web/development/components/Drawer/Drawer.web.js +4 -4
  301. package/build/lib/web/development/components/Drawer/Drawer.web.js.map +1 -1
  302. package/build/lib/web/development/components/Dropdown/Dropdown.js +4 -3
  303. package/build/lib/web/development/components/Dropdown/Dropdown.js.map +1 -1
  304. package/build/lib/web/development/components/Fade/Fade.web.js +62 -0
  305. package/build/lib/web/development/components/Fade/Fade.web.js.map +1 -0
  306. package/build/lib/web/development/components/Fade/index.js +2 -0
  307. package/build/lib/web/development/components/Fade/index.js.map +1 -0
  308. package/build/lib/web/development/components/FileUpload/FileUpload.web.js +11 -2
  309. package/build/lib/web/development/components/FileUpload/FileUpload.web.js.map +1 -1
  310. package/build/lib/web/development/components/FileUpload/fileUploadTokens.js +1 -1
  311. package/build/lib/web/development/components/FileUpload/fileUploadTokens.js.map +1 -1
  312. package/build/lib/web/development/components/Form/Selector/SelectorInput.web.js +1 -1
  313. package/build/lib/web/development/components/Form/Selector/SelectorInput.web.js.map +1 -1
  314. package/build/lib/web/development/components/Indicator/Indicator.js +4 -2
  315. package/build/lib/web/development/components/Indicator/Indicator.js.map +1 -1
  316. package/build/lib/web/development/components/Input/BaseInput/AnimatedBaseInputWrapper.web.js +3 -3
  317. package/build/lib/web/development/components/Input/BaseInput/AnimatedBaseInputWrapper.web.js.map +1 -1
  318. package/build/lib/web/development/components/Input/BaseInput/BaseInput.js +21 -7
  319. package/build/lib/web/development/components/Input/BaseInput/BaseInput.js.map +1 -1
  320. package/build/lib/web/development/components/Input/BaseInput/baseInputTokens.js +2 -2
  321. package/build/lib/web/development/components/Input/BaseInput/baseInputTokens.js.map +1 -1
  322. package/build/lib/web/development/components/Link/BaseLink/BaseLink.js +1 -1
  323. package/build/lib/web/development/components/Link/BaseLink/BaseLink.js.map +1 -1
  324. package/build/lib/web/development/components/List/List.js +5 -3
  325. package/build/lib/web/development/components/List/List.js.map +1 -1
  326. package/build/lib/web/development/components/Modal/Modal.web.js +2 -2
  327. package/build/lib/web/development/components/Modal/Modal.web.js.map +1 -1
  328. package/build/lib/web/development/components/Modal/ModalBackdrop.js +2 -2
  329. package/build/lib/web/development/components/Modal/ModalBackdrop.js.map +1 -1
  330. package/build/lib/web/development/components/Morph/Morph.web.js +48 -0
  331. package/build/lib/web/development/components/Morph/Morph.web.js.map +1 -0
  332. package/build/lib/web/development/components/Morph/index.js +2 -0
  333. package/build/lib/web/development/components/Morph/index.js.map +1 -0
  334. package/build/lib/web/development/components/Move/Move.web.js +66 -0
  335. package/build/lib/web/development/components/Move/Move.web.js.map +1 -0
  336. package/build/lib/web/development/components/Move/index.js +2 -0
  337. package/build/lib/web/development/components/Move/index.js.map +1 -0
  338. package/build/lib/web/development/components/ProgressBar/CircularProgressBar.web.js +1 -1
  339. package/build/lib/web/development/components/ProgressBar/CircularProgressBar.web.js.map +1 -1
  340. package/build/lib/web/development/components/ProgressBar/ProgressBar.js +8 -4
  341. package/build/lib/web/development/components/ProgressBar/ProgressBar.js.map +1 -1
  342. package/build/lib/web/development/components/Radio/Radio.js +13 -3
  343. package/build/lib/web/development/components/Radio/Radio.js.map +1 -1
  344. package/build/lib/web/development/components/Radio/RadioIcon/Fade.web.js +3 -3
  345. package/build/lib/web/development/components/Radio/RadioIcon/Fade.web.js.map +1 -1
  346. package/build/lib/web/development/components/Radio/RadioIcon/RadioIconWrapperStyles.js +1 -1
  347. package/build/lib/web/development/components/Radio/RadioIcon/RadioIconWrapperStyles.js.map +1 -1
  348. package/build/lib/web/development/components/Scale/Scale.web.js +47 -0
  349. package/build/lib/web/development/components/Scale/Scale.web.js.map +1 -0
  350. package/build/lib/web/development/components/Scale/index.js +2 -0
  351. package/build/lib/web/development/components/Scale/index.js.map +1 -0
  352. package/build/lib/web/development/components/SideNav/SideNav.web.js +7 -5
  353. package/build/lib/web/development/components/SideNav/SideNav.web.js.map +1 -1
  354. package/build/lib/web/development/components/SideNav/tokens.js +1 -1
  355. package/build/lib/web/development/components/SideNav/tokens.js.map +1 -1
  356. package/build/lib/web/development/components/Skeleton/PulseAnimation.web.js +1 -1
  357. package/build/lib/web/development/components/Skeleton/PulseAnimation.web.js.map +1 -1
  358. package/build/lib/web/development/components/Skeleton/Skeleton.js +4 -1
  359. package/build/lib/web/development/components/Skeleton/Skeleton.js.map +1 -1
  360. package/build/lib/web/development/components/Slide/Slide.web.js +119 -0
  361. package/build/lib/web/development/components/Slide/Slide.web.js.map +1 -0
  362. package/build/lib/web/development/components/Slide/index.js +2 -0
  363. package/build/lib/web/development/components/Slide/index.js.map +1 -0
  364. package/build/lib/web/development/components/Spinner/BaseSpinner/BaseSpinner.js +6 -3
  365. package/build/lib/web/development/components/Spinner/BaseSpinner/BaseSpinner.js.map +1 -1
  366. package/build/lib/web/development/components/Spinner/BaseSpinner/spinnerTokens.js +1 -1
  367. package/build/lib/web/development/components/Spinner/BaseSpinner/spinnerTokens.js.map +1 -1
  368. package/build/lib/web/development/components/Spinner/Spinner/Spinner.js +4 -1
  369. package/build/lib/web/development/components/Spinner/Spinner/Spinner.js.map +1 -1
  370. package/build/lib/web/development/components/SpotlightPopoverTour/TourMask.web.js +2 -2
  371. package/build/lib/web/development/components/SpotlightPopoverTour/TourMask.web.js.map +1 -1
  372. package/build/lib/web/development/components/Stagger/Stagger.web.js +73 -0
  373. package/build/lib/web/development/components/Stagger/Stagger.web.js.map +1 -0
  374. package/build/lib/web/development/components/Stagger/StaggerProvider.js +13 -0
  375. package/build/lib/web/development/components/Stagger/StaggerProvider.js.map +1 -0
  376. package/build/lib/web/development/components/Stagger/index.js +2 -0
  377. package/build/lib/web/development/components/Stagger/index.js.map +1 -0
  378. package/build/lib/web/development/components/StepGroup/StepGroup.web.js +5 -3
  379. package/build/lib/web/development/components/StepGroup/StepGroup.web.js.map +1 -1
  380. package/build/lib/web/development/components/StepGroup/StepItem.web.js +1 -1
  381. package/build/lib/web/development/components/StepGroup/StepItem.web.js.map +1 -1
  382. package/build/lib/web/development/components/Switch/AnimatedThumbIcon.web.js +1 -1
  383. package/build/lib/web/development/components/Switch/AnimatedThumbIcon.web.js.map +1 -1
  384. package/build/lib/web/development/components/Switch/Switch.js +13 -3
  385. package/build/lib/web/development/components/Switch/Switch.js.map +1 -1
  386. package/build/lib/web/development/components/Switch/getTrackStyles.js +1 -1
  387. package/build/lib/web/development/components/Switch/getTrackStyles.js.map +1 -1
  388. package/build/lib/web/development/components/Switch/switchTokens.js +6 -6
  389. package/build/lib/web/development/components/Switch/switchTokens.js.map +1 -1
  390. package/build/lib/web/development/components/Table/Table.web.js +4 -2
  391. package/build/lib/web/development/components/Table/Table.web.js.map +1 -1
  392. package/build/lib/web/development/components/Table/tokens.js +2 -2
  393. package/build/lib/web/development/components/Table/tokens.js.map +1 -1
  394. package/build/lib/web/development/components/Tabs/TabIndicator.web.js +1 -1
  395. package/build/lib/web/development/components/Tabs/TabIndicator.web.js.map +1 -1
  396. package/build/lib/web/development/components/Tabs/TabItem.web.js +2 -2
  397. package/build/lib/web/development/components/Tabs/TabItem.web.js.map +1 -1
  398. package/build/lib/web/development/components/Tabs/Tabs.web.js +34 -1
  399. package/build/lib/web/development/components/Tabs/Tabs.web.js.map +1 -1
  400. package/build/lib/web/development/components/Tag/AnimatedTag.web.js +2 -2
  401. package/build/lib/web/development/components/Tag/AnimatedTag.web.js.map +1 -1
  402. package/build/lib/web/development/components/Tag/Tag.js +31 -29
  403. package/build/lib/web/development/components/Tag/Tag.js.map +1 -1
  404. package/build/lib/web/development/components/Toast/Toast.web.js +2 -2
  405. package/build/lib/web/development/components/Toast/Toast.web.js.map +1 -1
  406. package/build/lib/web/development/components/Toast/ToastContainer.web.js +1 -1
  407. package/build/lib/web/development/components/Toast/ToastContainer.web.js.map +1 -1
  408. package/build/lib/web/development/components/TopNav/TabNav/TabNavItem.web.js +2 -2
  409. package/build/lib/web/development/components/TopNav/TabNav/TabNavItem.web.js.map +1 -1
  410. package/build/lib/web/development/components/TopNav/TopNav.web.js +4 -2
  411. package/build/lib/web/development/components/TopNav/TopNav.web.js.map +1 -1
  412. package/build/lib/web/development/components/Typography/Code/Code.js +30 -27
  413. package/build/lib/web/development/components/Typography/Code/Code.js.map +1 -1
  414. package/build/lib/web/development/components/Typography/Display/Display.js +6 -2
  415. package/build/lib/web/development/components/Typography/Display/Display.js.map +1 -1
  416. package/build/lib/web/development/components/Typography/Heading/Heading.js +4 -1
  417. package/build/lib/web/development/components/Typography/Heading/Heading.js.map +1 -1
  418. package/build/lib/web/development/components/Typography/Text/Text.js +6 -10
  419. package/build/lib/web/development/components/Typography/Text/Text.js.map +1 -1
  420. package/build/lib/web/development/components/index.js +14 -0
  421. package/build/lib/web/development/components/index.js.map +1 -1
  422. package/build/lib/web/development/tokens/global/motion.js +22 -28
  423. package/build/lib/web/development/tokens/global/motion.js.map +1 -1
  424. package/build/lib/web/development/utils/cssBezierToArray.js +12 -0
  425. package/build/lib/web/development/utils/cssBezierToArray.js.map +1 -0
  426. package/build/lib/web/development/utils/getFocusRingStyles/getFocusRingStyles.web.js +1 -1
  427. package/build/lib/web/development/utils/getFocusRingStyles/getFocusRingStyles.web.js.map +1 -1
  428. package/build/lib/web/development/utils/getMotionRefs.js +86 -0
  429. package/build/lib/web/development/utils/getMotionRefs.js.map +1 -0
  430. package/build/lib/web/development/utils/msToSeconds.js +6 -0
  431. package/build/lib/web/development/utils/msToSeconds.js.map +1 -0
  432. package/build/lib/web/production/components/Accordion/Accordion.js +6 -3
  433. package/build/lib/web/production/components/Accordion/Accordion.js.map +1 -1
  434. package/build/lib/web/production/components/Accordion/commonStyles.js +1 -1
  435. package/build/lib/web/production/components/Accordion/commonStyles.js.map +1 -1
  436. package/build/lib/web/production/components/ActionList/ActionList.js +3 -0
  437. package/build/lib/web/production/components/ActionList/ActionList.js.map +1 -1
  438. package/build/lib/web/production/components/Alert/Alert.js +6 -3
  439. package/build/lib/web/production/components/Alert/Alert.js.map +1 -1
  440. package/build/lib/web/production/components/Amount/Amount.js +3 -2
  441. package/build/lib/web/production/components/Amount/Amount.js.map +1 -1
  442. package/build/lib/web/production/components/AnimateInteractions/AnimateInteractions.web.js +37 -0
  443. package/build/lib/web/production/components/AnimateInteractions/AnimateInteractions.web.js.map +1 -0
  444. package/build/lib/web/production/components/AnimateInteractions/AnimateInteractionsProvider.js +12 -0
  445. package/build/lib/web/production/components/AnimateInteractions/AnimateInteractionsProvider.js.map +1 -0
  446. package/build/lib/web/production/components/AnimateInteractions/index.js +2 -0
  447. package/build/lib/web/production/components/AnimateInteractions/index.js.map +1 -0
  448. package/build/lib/web/production/components/AnimateInteractions/useFocusWithin.js +30 -0
  449. package/build/lib/web/production/components/AnimateInteractions/useFocusWithin.js.map +1 -0
  450. package/build/lib/web/production/components/Badge/Badge.js +4 -2
  451. package/build/lib/web/production/components/Badge/Badge.js.map +1 -1
  452. package/build/lib/web/production/components/BaseMotion/BaseMotion.js +123 -0
  453. package/build/lib/web/production/components/BaseMotion/BaseMotion.js.map +1 -0
  454. package/build/lib/web/production/components/BaseMotion/baseMotionUtils.js +60 -0
  455. package/build/lib/web/production/components/BaseMotion/baseMotionUtils.js.map +1 -0
  456. package/build/lib/web/production/components/BaseMotion/index.js +3 -0
  457. package/build/lib/web/production/components/BaseMotion/index.js.map +1 -0
  458. package/build/lib/web/production/components/BaseMotion/types.js +2 -0
  459. package/build/lib/web/production/components/BaseMotion/types.js.map +1 -0
  460. package/build/lib/web/production/components/BottomNav/BottomNav.web.js +4 -2
  461. package/build/lib/web/production/components/BottomNav/BottomNav.web.js.map +1 -1
  462. package/build/lib/web/production/components/BottomSheet/BottomSheet.web.js +1 -1
  463. package/build/lib/web/production/components/BottomSheet/BottomSheet.web.js.map +1 -1
  464. package/build/lib/web/production/components/BottomSheet/BottomSheetBackdrop.web.js +1 -1
  465. package/build/lib/web/production/components/BottomSheet/BottomSheetBackdrop.web.js.map +1 -1
  466. package/build/lib/web/production/components/Box/BaseBox/types/propsTypes.js.map +1 -1
  467. package/build/lib/web/production/components/Box/Box.js +2 -2
  468. package/build/lib/web/production/components/Box/Box.js.map +1 -1
  469. package/build/lib/web/production/components/Breadcrumb/Breadcrumb.web.js +3 -1
  470. package/build/lib/web/production/components/Breadcrumb/Breadcrumb.web.js.map +1 -1
  471. package/build/lib/web/production/components/Button/BaseButton/BaseButton.js +1 -1
  472. package/build/lib/web/production/components/Button/BaseButton/BaseButton.js.map +1 -1
  473. package/build/lib/web/production/components/Button/IconButton/StyledIconButton.web.js +1 -1
  474. package/build/lib/web/production/components/Button/IconButton/StyledIconButton.web.js.map +1 -1
  475. package/build/lib/web/production/components/ButtonGroup/ButtonGroup.web.js +3 -2
  476. package/build/lib/web/production/components/ButtonGroup/ButtonGroup.web.js.map +1 -1
  477. package/build/lib/web/production/components/Card/Card.js +3 -1
  478. package/build/lib/web/production/components/Card/Card.js.map +1 -1
  479. package/build/lib/web/production/components/Card/CardRoot.web.js +6 -4
  480. package/build/lib/web/production/components/Card/CardRoot.web.js.map +1 -1
  481. package/build/lib/web/production/components/Carousel/Carousel.web.js +6 -3
  482. package/build/lib/web/production/components/Carousel/Carousel.web.js.map +1 -1
  483. package/build/lib/web/production/components/Carousel/Indicators/getIndicatorButtonStyles.js +1 -1
  484. package/build/lib/web/production/components/Carousel/Indicators/getIndicatorButtonStyles.js.map +1 -1
  485. package/build/lib/web/production/components/Carousel/NavigationButton/getNavigationButtonStyles.js +1 -1
  486. package/build/lib/web/production/components/Carousel/NavigationButton/getNavigationButtonStyles.js.map +1 -1
  487. package/build/lib/web/production/components/Checkbox/Checkbox.js +13 -3
  488. package/build/lib/web/production/components/Checkbox/Checkbox.js.map +1 -1
  489. package/build/lib/web/production/components/Checkbox/CheckboxIcon/Fade.web.js +2 -2
  490. package/build/lib/web/production/components/Checkbox/CheckboxIcon/Fade.web.js.map +1 -1
  491. package/build/lib/web/production/components/Chip/Chip.js +11 -2
  492. package/build/lib/web/production/components/Chip/Chip.js.map +1 -1
  493. package/build/lib/web/production/components/Chip/ChipGroup.js +5 -2
  494. package/build/lib/web/production/components/Chip/ChipGroup.js.map +1 -1
  495. package/build/lib/web/production/components/Chip/chipTokens.js +1 -1
  496. package/build/lib/web/production/components/Chip/chipTokens.js.map +1 -1
  497. package/build/lib/web/production/components/Collapsible/Collapsible.js +6 -3
  498. package/build/lib/web/production/components/Collapsible/Collapsible.js.map +1 -1
  499. package/build/lib/web/production/components/Collapsible/commonStyles.js +2 -2
  500. package/build/lib/web/production/components/Collapsible/commonStyles.js.map +1 -1
  501. package/build/lib/web/production/components/Counter/Counter.js +4 -2
  502. package/build/lib/web/production/components/Counter/Counter.js.map +1 -1
  503. package/build/lib/web/production/components/Divider/Divider.js +4 -2
  504. package/build/lib/web/production/components/Divider/Divider.js.map +1 -1
  505. package/build/lib/web/production/components/Drawer/Drawer.web.js +4 -4
  506. package/build/lib/web/production/components/Drawer/Drawer.web.js.map +1 -1
  507. package/build/lib/web/production/components/Dropdown/Dropdown.js +4 -3
  508. package/build/lib/web/production/components/Dropdown/Dropdown.js.map +1 -1
  509. package/build/lib/web/production/components/Fade/Fade.web.js +62 -0
  510. package/build/lib/web/production/components/Fade/Fade.web.js.map +1 -0
  511. package/build/lib/web/production/components/Fade/index.js +2 -0
  512. package/build/lib/web/production/components/Fade/index.js.map +1 -0
  513. package/build/lib/web/production/components/FileUpload/FileUpload.web.js +11 -2
  514. package/build/lib/web/production/components/FileUpload/FileUpload.web.js.map +1 -1
  515. package/build/lib/web/production/components/FileUpload/fileUploadTokens.js +1 -1
  516. package/build/lib/web/production/components/FileUpload/fileUploadTokens.js.map +1 -1
  517. package/build/lib/web/production/components/Form/Selector/SelectorInput.web.js +1 -1
  518. package/build/lib/web/production/components/Form/Selector/SelectorInput.web.js.map +1 -1
  519. package/build/lib/web/production/components/Indicator/Indicator.js +4 -2
  520. package/build/lib/web/production/components/Indicator/Indicator.js.map +1 -1
  521. package/build/lib/web/production/components/Input/BaseInput/AnimatedBaseInputWrapper.web.js +3 -3
  522. package/build/lib/web/production/components/Input/BaseInput/AnimatedBaseInputWrapper.web.js.map +1 -1
  523. package/build/lib/web/production/components/Input/BaseInput/BaseInput.js +21 -7
  524. package/build/lib/web/production/components/Input/BaseInput/BaseInput.js.map +1 -1
  525. package/build/lib/web/production/components/Input/BaseInput/baseInputTokens.js +2 -2
  526. package/build/lib/web/production/components/Input/BaseInput/baseInputTokens.js.map +1 -1
  527. package/build/lib/web/production/components/Link/BaseLink/BaseLink.js +1 -1
  528. package/build/lib/web/production/components/Link/BaseLink/BaseLink.js.map +1 -1
  529. package/build/lib/web/production/components/List/List.js +5 -3
  530. package/build/lib/web/production/components/List/List.js.map +1 -1
  531. package/build/lib/web/production/components/Modal/Modal.web.js +2 -2
  532. package/build/lib/web/production/components/Modal/Modal.web.js.map +1 -1
  533. package/build/lib/web/production/components/Modal/ModalBackdrop.js +2 -2
  534. package/build/lib/web/production/components/Modal/ModalBackdrop.js.map +1 -1
  535. package/build/lib/web/production/components/Morph/Morph.web.js +48 -0
  536. package/build/lib/web/production/components/Morph/Morph.web.js.map +1 -0
  537. package/build/lib/web/production/components/Morph/index.js +2 -0
  538. package/build/lib/web/production/components/Morph/index.js.map +1 -0
  539. package/build/lib/web/production/components/Move/Move.web.js +66 -0
  540. package/build/lib/web/production/components/Move/Move.web.js.map +1 -0
  541. package/build/lib/web/production/components/Move/index.js +2 -0
  542. package/build/lib/web/production/components/Move/index.js.map +1 -0
  543. package/build/lib/web/production/components/ProgressBar/CircularProgressBar.web.js +1 -1
  544. package/build/lib/web/production/components/ProgressBar/CircularProgressBar.web.js.map +1 -1
  545. package/build/lib/web/production/components/ProgressBar/ProgressBar.js +8 -4
  546. package/build/lib/web/production/components/ProgressBar/ProgressBar.js.map +1 -1
  547. package/build/lib/web/production/components/Radio/Radio.js +13 -3
  548. package/build/lib/web/production/components/Radio/Radio.js.map +1 -1
  549. package/build/lib/web/production/components/Radio/RadioIcon/Fade.web.js +3 -3
  550. package/build/lib/web/production/components/Radio/RadioIcon/Fade.web.js.map +1 -1
  551. package/build/lib/web/production/components/Radio/RadioIcon/RadioIconWrapperStyles.js +1 -1
  552. package/build/lib/web/production/components/Radio/RadioIcon/RadioIconWrapperStyles.js.map +1 -1
  553. package/build/lib/web/production/components/Scale/Scale.web.js +47 -0
  554. package/build/lib/web/production/components/Scale/Scale.web.js.map +1 -0
  555. package/build/lib/web/production/components/Scale/index.js +2 -0
  556. package/build/lib/web/production/components/Scale/index.js.map +1 -0
  557. package/build/lib/web/production/components/SideNav/SideNav.web.js +7 -5
  558. package/build/lib/web/production/components/SideNav/SideNav.web.js.map +1 -1
  559. package/build/lib/web/production/components/SideNav/tokens.js +1 -1
  560. package/build/lib/web/production/components/SideNav/tokens.js.map +1 -1
  561. package/build/lib/web/production/components/Skeleton/PulseAnimation.web.js +1 -1
  562. package/build/lib/web/production/components/Skeleton/PulseAnimation.web.js.map +1 -1
  563. package/build/lib/web/production/components/Skeleton/Skeleton.js +4 -1
  564. package/build/lib/web/production/components/Skeleton/Skeleton.js.map +1 -1
  565. package/build/lib/web/production/components/Slide/Slide.web.js +119 -0
  566. package/build/lib/web/production/components/Slide/Slide.web.js.map +1 -0
  567. package/build/lib/web/production/components/Slide/index.js +2 -0
  568. package/build/lib/web/production/components/Slide/index.js.map +1 -0
  569. package/build/lib/web/production/components/Spinner/BaseSpinner/BaseSpinner.js +6 -3
  570. package/build/lib/web/production/components/Spinner/BaseSpinner/BaseSpinner.js.map +1 -1
  571. package/build/lib/web/production/components/Spinner/BaseSpinner/spinnerTokens.js +1 -1
  572. package/build/lib/web/production/components/Spinner/BaseSpinner/spinnerTokens.js.map +1 -1
  573. package/build/lib/web/production/components/Spinner/Spinner/Spinner.js +4 -1
  574. package/build/lib/web/production/components/Spinner/Spinner/Spinner.js.map +1 -1
  575. package/build/lib/web/production/components/SpotlightPopoverTour/TourMask.web.js +2 -2
  576. package/build/lib/web/production/components/SpotlightPopoverTour/TourMask.web.js.map +1 -1
  577. package/build/lib/web/production/components/Stagger/Stagger.web.js +73 -0
  578. package/build/lib/web/production/components/Stagger/Stagger.web.js.map +1 -0
  579. package/build/lib/web/production/components/Stagger/StaggerProvider.js +13 -0
  580. package/build/lib/web/production/components/Stagger/StaggerProvider.js.map +1 -0
  581. package/build/lib/web/production/components/Stagger/index.js +2 -0
  582. package/build/lib/web/production/components/Stagger/index.js.map +1 -0
  583. package/build/lib/web/production/components/StepGroup/StepGroup.web.js +5 -3
  584. package/build/lib/web/production/components/StepGroup/StepGroup.web.js.map +1 -1
  585. package/build/lib/web/production/components/StepGroup/StepItem.web.js +1 -1
  586. package/build/lib/web/production/components/StepGroup/StepItem.web.js.map +1 -1
  587. package/build/lib/web/production/components/Switch/AnimatedThumbIcon.web.js +1 -1
  588. package/build/lib/web/production/components/Switch/AnimatedThumbIcon.web.js.map +1 -1
  589. package/build/lib/web/production/components/Switch/Switch.js +13 -3
  590. package/build/lib/web/production/components/Switch/Switch.js.map +1 -1
  591. package/build/lib/web/production/components/Switch/getTrackStyles.js +1 -1
  592. package/build/lib/web/production/components/Switch/getTrackStyles.js.map +1 -1
  593. package/build/lib/web/production/components/Switch/switchTokens.js +6 -6
  594. package/build/lib/web/production/components/Switch/switchTokens.js.map +1 -1
  595. package/build/lib/web/production/components/Table/Table.web.js +4 -2
  596. package/build/lib/web/production/components/Table/Table.web.js.map +1 -1
  597. package/build/lib/web/production/components/Table/tokens.js +2 -2
  598. package/build/lib/web/production/components/Table/tokens.js.map +1 -1
  599. package/build/lib/web/production/components/Tabs/TabIndicator.web.js +1 -1
  600. package/build/lib/web/production/components/Tabs/TabIndicator.web.js.map +1 -1
  601. package/build/lib/web/production/components/Tabs/TabItem.web.js +2 -2
  602. package/build/lib/web/production/components/Tabs/TabItem.web.js.map +1 -1
  603. package/build/lib/web/production/components/Tabs/Tabs.web.js +34 -1
  604. package/build/lib/web/production/components/Tabs/Tabs.web.js.map +1 -1
  605. package/build/lib/web/production/components/Tag/AnimatedTag.web.js +2 -2
  606. package/build/lib/web/production/components/Tag/AnimatedTag.web.js.map +1 -1
  607. package/build/lib/web/production/components/Tag/Tag.js +31 -29
  608. package/build/lib/web/production/components/Tag/Tag.js.map +1 -1
  609. package/build/lib/web/production/components/Toast/Toast.web.js +2 -2
  610. package/build/lib/web/production/components/Toast/Toast.web.js.map +1 -1
  611. package/build/lib/web/production/components/Toast/ToastContainer.web.js +1 -1
  612. package/build/lib/web/production/components/Toast/ToastContainer.web.js.map +1 -1
  613. package/build/lib/web/production/components/TopNav/TabNav/TabNavItem.web.js +2 -2
  614. package/build/lib/web/production/components/TopNav/TabNav/TabNavItem.web.js.map +1 -1
  615. package/build/lib/web/production/components/TopNav/TopNav.web.js +4 -2
  616. package/build/lib/web/production/components/TopNav/TopNav.web.js.map +1 -1
  617. package/build/lib/web/production/components/Typography/Code/Code.js +30 -27
  618. package/build/lib/web/production/components/Typography/Code/Code.js.map +1 -1
  619. package/build/lib/web/production/components/Typography/Display/Display.js +6 -2
  620. package/build/lib/web/production/components/Typography/Display/Display.js.map +1 -1
  621. package/build/lib/web/production/components/Typography/Heading/Heading.js +4 -1
  622. package/build/lib/web/production/components/Typography/Heading/Heading.js.map +1 -1
  623. package/build/lib/web/production/components/Typography/Text/Text.js +6 -10
  624. package/build/lib/web/production/components/Typography/Text/Text.js.map +1 -1
  625. package/build/lib/web/production/components/index.js +14 -0
  626. package/build/lib/web/production/components/index.js.map +1 -1
  627. package/build/lib/web/production/tokens/global/motion.js +22 -28
  628. package/build/lib/web/production/tokens/global/motion.js.map +1 -1
  629. package/build/lib/web/production/utils/cssBezierToArray.js +12 -0
  630. package/build/lib/web/production/utils/cssBezierToArray.js.map +1 -0
  631. package/build/lib/web/production/utils/getFocusRingStyles/getFocusRingStyles.web.js +1 -1
  632. package/build/lib/web/production/utils/getFocusRingStyles/getFocusRingStyles.web.js.map +1 -1
  633. package/build/lib/web/production/utils/getMotionRefs.js +86 -0
  634. package/build/lib/web/production/utils/getMotionRefs.js.map +1 -0
  635. package/build/lib/web/production/utils/msToSeconds.js +6 -0
  636. package/build/lib/web/production/utils/msToSeconds.js.map +1 -0
  637. package/build/types/components/index.d.ts +18052 -5479
  638. package/build/types/components/index.native.d.ts +8077 -2278
  639. package/build/types/tokens/index.d.ts +103 -93
  640. package/build/types/tokens/index.native.d.ts +103 -93
  641. package/build/types/utils/index.d.ts +84 -71
  642. package/build/types/utils/index.native.d.ts +84 -71
  643. package/codemods/migrate-motion-tokens/transformers/__tests__/migrate-motion-tokens.test.ts +130 -0
  644. package/codemods/migrate-motion-tokens/transformers/index.ts +1 -0
  645. package/codemods/migrate-motion-tokens/transformers/migrate-motion.ts +24 -0
  646. package/codemods/migrate-motion-tokens/transformers/motionTokenMapping.json +11 -0
  647. package/package.json +3 -1
@@ -45,6 +45,9 @@ var _ActionList = function _ActionList(_ref) {
45
45
  sectionData = _React$useMemo.sectionData,
46
46
  childrenWithId = _React$useMemo.childrenWithId,
47
47
  actionListOptions = _React$useMemo.actionListOptions;
48
+ console.log({
49
+ actionListOptions: actionListOptions
50
+ });
48
51
  React__default.useEffect(function () {
49
52
  setOptions(actionListOptions);
50
53
  // eslint-disable-next-line react-hooks/exhaustive-deps
@@ -1 +1 @@
1
- {"version":3,"file":"ActionList.js","sources":["../../../../../../src/components/ActionList/ActionList.tsx"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-explicit-any */\nimport React from 'react';\nimport { getActionListContainerRole, getActionListItemWrapperRole } from './getA11yRoles';\nimport { getActionListProperties } from './actionListUtils';\nimport { ActionListBox } from './ActionListBox';\nimport { componentIds } from './componentIds';\nimport { ActionListNoResults } from './ActionListNoResults';\nimport { useDropdown } from '~components/Dropdown/useDropdown';\nimport { useBottomSheetContext } from '~components/BottomSheet/BottomSheetContext';\nimport { makeAccessible } from '~utils/makeAccessible';\nimport { assignWithoutSideEffects } from '~utils/assignWithoutSideEffects';\nimport type { DataAnalyticsAttribute, TestID } from '~utils/types';\nimport BaseBox from '~components/Box/BaseBox';\nimport { metaAttribute, MetaConstants } from '~utils/metaAttribute';\nimport { dropdownComponentIds } from '~components/Dropdown/dropdownComponentIds';\nimport { makeAnalyticsAttribute } from '~utils/makeAnalyticsAttribute';\n\ntype ActionListProps = {\n children: React.ReactNode[];\n} & TestID &\n DataAnalyticsAttribute;\n\nconst _ActionList = ({ children, testID, ...rest }: ActionListProps): React.ReactElement => {\n const {\n setOptions,\n actionListItemRef,\n selectionType,\n dropdownBaseId,\n dropdownTriggerer,\n hasFooterAction,\n filteredValues,\n } = useDropdown();\n\n const { isInBottomSheet } = useBottomSheetContext();\n\n const { sectionData, childrenWithId, actionListOptions } = React.useMemo(\n () => getActionListProperties(children),\n [children],\n );\n\n React.useEffect(() => {\n setOptions(actionListOptions);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [actionListOptions]);\n\n if (\n filteredValues.length <= 0 &&\n dropdownTriggerer === dropdownComponentIds.triggers.AutoComplete\n ) {\n return <ActionListNoResults />;\n }\n\n const actionListContainerRole = getActionListContainerRole(hasFooterAction, dropdownTriggerer);\n const actionListItemWrapperRole = getActionListItemWrapperRole(\n hasFooterAction,\n dropdownTriggerer,\n );\n const isMultiSelectable = selectionType === 'multiple';\n\n // If we are inside BottomSheet, we don't render The StyledActionList wrapper\n // This is to ensure:\n // 1. We don't render the box wrapper styles which includes shadows, padding, border etc\n // 2. to ensure GorhomBottomSheetSectionList works as expected, if we add extra wrappers GorhomBottomSheet won't render the content inside\n // NOTE: That this also means inside BottomSheet, ActionList won't render any ActionListHeader or Footer.\n return isInBottomSheet ? (\n <ActionListBox\n isInBottomSheet={isInBottomSheet}\n actionListItemWrapperRole={actionListItemWrapperRole}\n childrenWithId={childrenWithId}\n sectionData={sectionData}\n isMultiSelectable={isMultiSelectable}\n ref={actionListItemRef as any}\n {...makeAnalyticsAttribute(rest)}\n />\n ) : (\n <BaseBox\n id={`${dropdownBaseId}-actionlist`}\n {...makeAccessible({\n role: actionListContainerRole,\n multiSelectable: actionListContainerRole === 'listbox' ? isMultiSelectable : undefined,\n labelledBy: `${dropdownBaseId}-label`,\n })}\n {...metaAttribute({ name: MetaConstants.ActionList, testID })}\n {...makeAnalyticsAttribute(rest)}\n >\n <ActionListBox\n isInBottomSheet={isInBottomSheet}\n actionListItemWrapperRole={actionListItemWrapperRole}\n childrenWithId={childrenWithId}\n sectionData={sectionData}\n isMultiSelectable={isMultiSelectable}\n ref={actionListItemRef as any}\n />\n </BaseBox>\n );\n};\n\n/**\n * ### ActionList\n *\n * List of multiple actionable items. Can be used as menu items inside `Dropdown`,\n * `BottomSheet` and as selectable items when combined with `SelectInput`\n *\n * #### Usage\n *\n * ```jsx\n * <Dropdown>\n * <SelectInput label=\"Select Action\" />\n * <DropdownOverlay>\n * <DropdownHeader title=\"Header Title\" />\n * <ActionList>\n * <ActionListItem\n * title=\"Home\"\n * value=\"home\"\n * leading={<ActionListItemIcon icon={HomeIcon} />}\n * />\n * <ActionListItem\n * title=\"Pricing\"\n * value=\"pricing\"\n * leading={<ActionListItemAsset src=\"https://flagcdn.com/w20/in.png\" alt=\"India Flag\" />}\n * />\n * </ActionList>\n * <DropdownFooter><Button>Apply</Button></DropdownFooter>\n * </DropdownOverlay>\n * </Dropdown>\n * ```\n *\n */\nconst ActionList = assignWithoutSideEffects(React.memo(_ActionList), {\n displayName: componentIds.ActionList,\n componentId: componentIds.ActionList,\n});\n\nexport type { ActionListProps };\nexport { ActionList };\n"],"names":["_ActionList","_ref","children","testID","rest","_objectWithoutProperties","_excluded","_useDropdown","useDropdown","setOptions","actionListItemRef","selectionType","dropdownBaseId","dropdownTriggerer","hasFooterAction","filteredValues","_useBottomSheetContex","useBottomSheetContext","isInBottomSheet","_React$useMemo","React","useMemo","getActionListProperties","sectionData","childrenWithId","actionListOptions","useEffect","length","dropdownComponentIds","triggers","AutoComplete","_jsx","ActionListNoResults","actionListContainerRole","getActionListContainerRole","actionListItemWrapperRole","getActionListItemWrapperRole","isMultiSelectable","ActionListBox","_objectSpread","ref","makeAnalyticsAttribute","BaseBox","id","concat","makeAccessible","role","multiSelectable","undefined","labelledBy","metaAttribute","name","MetaConstants","ActionList","assignWithoutSideEffects","memo","displayName","componentIds","componentId"],"mappings":"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"}
1
+ {"version":3,"file":"ActionList.js","sources":["../../../../../../src/components/ActionList/ActionList.tsx"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-explicit-any */\nimport React from 'react';\nimport { getActionListContainerRole, getActionListItemWrapperRole } from './getA11yRoles';\nimport { getActionListProperties } from './actionListUtils';\nimport { ActionListBox } from './ActionListBox';\nimport { componentIds } from './componentIds';\nimport { ActionListNoResults } from './ActionListNoResults';\nimport { useDropdown } from '~components/Dropdown/useDropdown';\nimport { useBottomSheetContext } from '~components/BottomSheet/BottomSheetContext';\nimport { makeAccessible } from '~utils/makeAccessible';\nimport { assignWithoutSideEffects } from '~utils/assignWithoutSideEffects';\nimport type { DataAnalyticsAttribute, TestID } from '~utils/types';\nimport BaseBox from '~components/Box/BaseBox';\nimport { metaAttribute, MetaConstants } from '~utils/metaAttribute';\nimport { dropdownComponentIds } from '~components/Dropdown/dropdownComponentIds';\nimport { makeAnalyticsAttribute } from '~utils/makeAnalyticsAttribute';\n\ntype ActionListProps = {\n children: React.ReactNode[];\n} & TestID &\n DataAnalyticsAttribute;\n\nconst _ActionList = ({ children, testID, ...rest }: ActionListProps): React.ReactElement => {\n const {\n setOptions,\n actionListItemRef,\n selectionType,\n dropdownBaseId,\n dropdownTriggerer,\n hasFooterAction,\n filteredValues,\n } = useDropdown();\n\n const { isInBottomSheet } = useBottomSheetContext();\n\n const { sectionData, childrenWithId, actionListOptions } = React.useMemo(\n () => getActionListProperties(children),\n [children],\n );\n\n console.log({ actionListOptions });\n\n React.useEffect(() => {\n setOptions(actionListOptions);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [actionListOptions]);\n\n if (\n filteredValues.length <= 0 &&\n dropdownTriggerer === dropdownComponentIds.triggers.AutoComplete\n ) {\n return <ActionListNoResults />;\n }\n\n const actionListContainerRole = getActionListContainerRole(hasFooterAction, dropdownTriggerer);\n const actionListItemWrapperRole = getActionListItemWrapperRole(\n hasFooterAction,\n dropdownTriggerer,\n );\n const isMultiSelectable = selectionType === 'multiple';\n\n // If we are inside BottomSheet, we don't render The StyledActionList wrapper\n // This is to ensure:\n // 1. We don't render the box wrapper styles which includes shadows, padding, border etc\n // 2. to ensure GorhomBottomSheetSectionList works as expected, if we add extra wrappers GorhomBottomSheet won't render the content inside\n // NOTE: That this also means inside BottomSheet, ActionList won't render any ActionListHeader or Footer.\n return isInBottomSheet ? (\n <ActionListBox\n isInBottomSheet={isInBottomSheet}\n actionListItemWrapperRole={actionListItemWrapperRole}\n childrenWithId={childrenWithId}\n sectionData={sectionData}\n isMultiSelectable={isMultiSelectable}\n ref={actionListItemRef as any}\n {...makeAnalyticsAttribute(rest)}\n />\n ) : (\n <BaseBox\n id={`${dropdownBaseId}-actionlist`}\n {...makeAccessible({\n role: actionListContainerRole,\n multiSelectable: actionListContainerRole === 'listbox' ? isMultiSelectable : undefined,\n labelledBy: `${dropdownBaseId}-label`,\n })}\n {...metaAttribute({ name: MetaConstants.ActionList, testID })}\n {...makeAnalyticsAttribute(rest)}\n >\n <ActionListBox\n isInBottomSheet={isInBottomSheet}\n actionListItemWrapperRole={actionListItemWrapperRole}\n childrenWithId={childrenWithId}\n sectionData={sectionData}\n isMultiSelectable={isMultiSelectable}\n ref={actionListItemRef as any}\n />\n </BaseBox>\n );\n};\n\n/**\n * ### ActionList\n *\n * List of multiple actionable items. Can be used as menu items inside `Dropdown`,\n * `BottomSheet` and as selectable items when combined with `SelectInput`\n *\n * #### Usage\n *\n * ```jsx\n * <Dropdown>\n * <SelectInput label=\"Select Action\" />\n * <DropdownOverlay>\n * <DropdownHeader title=\"Header Title\" />\n * <ActionList>\n * <ActionListItem\n * title=\"Home\"\n * value=\"home\"\n * leading={<ActionListItemIcon icon={HomeIcon} />}\n * />\n * <ActionListItem\n * title=\"Pricing\"\n * value=\"pricing\"\n * leading={<ActionListItemAsset src=\"https://flagcdn.com/w20/in.png\" alt=\"India Flag\" />}\n * />\n * </ActionList>\n * <DropdownFooter><Button>Apply</Button></DropdownFooter>\n * </DropdownOverlay>\n * </Dropdown>\n * ```\n *\n */\nconst ActionList = assignWithoutSideEffects(React.memo(_ActionList), {\n displayName: componentIds.ActionList,\n componentId: componentIds.ActionList,\n});\n\nexport type { ActionListProps };\nexport { ActionList };\n"],"names":["_ActionList","_ref","children","testID","rest","_objectWithoutProperties","_excluded","_useDropdown","useDropdown","setOptions","actionListItemRef","selectionType","dropdownBaseId","dropdownTriggerer","hasFooterAction","filteredValues","_useBottomSheetContex","useBottomSheetContext","isInBottomSheet","_React$useMemo","React","useMemo","getActionListProperties","sectionData","childrenWithId","actionListOptions","console","log","useEffect","length","dropdownComponentIds","triggers","AutoComplete","_jsx","ActionListNoResults","actionListContainerRole","getActionListContainerRole","actionListItemWrapperRole","getActionListItemWrapperRole","isMultiSelectable","ActionListBox","_objectSpread","ref","makeAnalyticsAttribute","BaseBox","id","concat","makeAccessible","role","multiSelectable","undefined","labelledBy","metaAttribute","name","MetaConstants","ActionList","assignWithoutSideEffects","memo","displayName","componentIds","componentId"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAsBA,IAAMA,WAAW,GAAG,SAAdA,WAAWA,CAAAC,IAAA,EAA2E;AAAA,EAAA,IAArEC,QAAQ,GAAAD,IAAA,CAARC,QAAQ;IAAEC,MAAM,GAAAF,IAAA,CAANE,MAAM;AAAKC,IAAAA,IAAI,GAAAC,wBAAA,CAAAJ,IAAA,EAAAK,SAAA,CAAA,CAAA;AAC9C,EAAA,IAAAC,YAAA,GAQIC,WAAW,EAAE;IAPfC,UAAU,GAAAF,YAAA,CAAVE,UAAU;IACVC,iBAAiB,GAAAH,YAAA,CAAjBG,iBAAiB;IACjBC,aAAa,GAAAJ,YAAA,CAAbI,aAAa;IACbC,cAAc,GAAAL,YAAA,CAAdK,cAAc;IACdC,iBAAiB,GAAAN,YAAA,CAAjBM,iBAAiB;IACjBC,eAAe,GAAAP,YAAA,CAAfO,eAAe;IACfC,cAAc,GAAAR,YAAA,CAAdQ,cAAc,CAAA;AAGhB,EAAA,IAAAC,qBAAA,GAA4BC,qBAAqB,EAAE;IAA3CC,eAAe,GAAAF,qBAAA,CAAfE,eAAe,CAAA;AAEvB,EAAA,IAAAC,cAAA,GAA2DC,cAAK,CAACC,OAAO,CACtE,YAAA;MAAA,OAAMC,uBAAuB,CAACpB,QAAQ,CAAC,CAAA;KACvC,EAAA,CAACA,QAAQ,CACX,CAAC;IAHOqB,WAAW,GAAAJ,cAAA,CAAXI,WAAW;IAAEC,cAAc,GAAAL,cAAA,CAAdK,cAAc;IAAEC,iBAAiB,GAAAN,cAAA,CAAjBM,iBAAiB,CAAA;EAKtDC,OAAO,CAACC,GAAG,CAAC;AAAEF,IAAAA,iBAAiB,EAAjBA,iBAAAA;AAAkB,GAAC,CAAC,CAAA;EAElCL,cAAK,CAACQ,SAAS,CAAC,YAAM;IACpBnB,UAAU,CAACgB,iBAAiB,CAAC,CAAA;AAC7B;AACF,GAAC,EAAE,CAACA,iBAAiB,CAAC,CAAC,CAAA;AAEvB,EAAA,IACEV,cAAc,CAACc,MAAM,IAAI,CAAC,IAC1BhB,iBAAiB,KAAKiB,oBAAoB,CAACC,QAAQ,CAACC,YAAY,EAChE;AACA,IAAA,oBAAOC,GAAA,CAACC,mBAAmB,EAAA,EAAE,CAAC,CAAA;AAChC,GAAA;AAEA,EAAA,IAAMC,uBAAuB,GAAGC,0BAA0B,CAACtB,eAAe,EAAED,iBAAiB,CAAC,CAAA;AAC9F,EAAA,IAAMwB,yBAAyB,GAAGC,4BAA4B,CAC5DxB,eAAe,EACfD,iBACF,CAAC,CAAA;AACD,EAAA,IAAM0B,iBAAiB,GAAG5B,aAAa,KAAK,UAAU,CAAA;;AAEtD;AACA;AACA;AACA;AACA;AACA,EAAA,OAAOO,eAAe,gBACpBe,GAAA,CAACO,aAAa,EAAAC,aAAA,CAAA;AACZvB,IAAAA,eAAe,EAAEA,eAAgB;AACjCmB,IAAAA,yBAAyB,EAAEA,yBAA0B;AACrDb,IAAAA,cAAc,EAAEA,cAAe;AAC/BD,IAAAA,WAAW,EAAEA,WAAY;AACzBgB,IAAAA,iBAAiB,EAAEA,iBAAkB;AACrCG,IAAAA,GAAG,EAAEhC,iBAAAA;AAAyB,GAAA,EAC1BiC,sBAAsB,CAACvC,IAAI,CAAC,CACjC,CAAC,gBAEF6B,GAAA,CAACW,OAAO,EAAAH,aAAA,CAAAA,aAAA,CAAAA,aAAA,CAAAA,aAAA,CAAA;IACNI,EAAE,EAAA,EAAA,CAAAC,MAAA,CAAKlC,cAAc,EAAA,aAAA,CAAA;AAAc,GAAA,EAC/BmC,cAAc,CAAC;AACjBC,IAAAA,IAAI,EAAEb,uBAAuB;AAC7Bc,IAAAA,eAAe,EAAEd,uBAAuB,KAAK,SAAS,GAAGI,iBAAiB,GAAGW,SAAS;IACtFC,UAAU,EAAA,EAAA,CAAAL,MAAA,CAAKlC,cAAc,EAAA,QAAA,CAAA;GAC9B,CAAC,CACEwC,EAAAA,aAAa,CAAC;IAAEC,IAAI,EAAEC,aAAa,CAACC,UAAU;AAAEpD,IAAAA,MAAM,EAANA,MAAAA;AAAO,GAAC,CAAC,CAAA,EACzDwC,sBAAsB,CAACvC,IAAI,CAAC,CAAA,EAAA,EAAA,EAAA;IAAAF,QAAA,eAEhC+B,GAAA,CAACO,aAAa,EAAA;AACZtB,MAAAA,eAAe,EAAEA,eAAgB;AACjCmB,MAAAA,yBAAyB,EAAEA,yBAA0B;AACrDb,MAAAA,cAAc,EAAEA,cAAe;AAC/BD,MAAAA,WAAW,EAAEA,WAAY;AACzBgB,MAAAA,iBAAiB,EAAEA,iBAAkB;AACrCG,MAAAA,GAAG,EAAEhC,iBAAAA;KACN,CAAA;AAAC,GAAA,CACK,CACV,CAAA;AACH,CAAC,CAAA;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACM6C,IAAAA,UAAU,gBAAGC,wBAAwB,eAACpC,cAAK,CAACqC,IAAI,CAACzD,WAAW,CAAC,EAAE;EACnE0D,WAAW,EAAEC,YAAY,CAACJ,UAAU;EACpCK,WAAW,EAAED,YAAY,CAACJ,UAAAA;AAC5B,CAAC;;;;"}
@@ -1,7 +1,7 @@
1
1
  import _defineProperty from '@babel/runtime/helpers/defineProperty';
2
2
  import _slicedToArray from '@babel/runtime/helpers/slicedToArray';
3
3
  import _objectWithoutProperties from '@babel/runtime/helpers/objectWithoutProperties';
4
- import { Fragment, useState } from 'react';
4
+ import { Fragment, useState, forwardRef } from 'react';
5
5
  import { StyledAlert } from './StyledAlert.js';
6
6
  import '../Icons/index.js';
7
7
  import '../../utils/index.js';
@@ -50,7 +50,7 @@ var intentIconMap = {
50
50
  neutral: InfoIcon,
51
51
  notice: AlertTriangleIcon
52
52
  };
53
- var Alert = function Alert(_ref) {
53
+ var _Alert = function _Alert(_ref, ref) {
54
54
  var description = _ref.description,
55
55
  title = _ref.title,
56
56
  _ref$isDismissible = _ref.isDismissible,
@@ -204,7 +204,9 @@ var Alert = function Alert(_ref) {
204
204
  if (!isVisible) {
205
205
  return null;
206
206
  }
207
- return /*#__PURE__*/jsx(BaseBox, _objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread({}, a11yProps), metaAttribute({
207
+ return /*#__PURE__*/jsx(BaseBox, _objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread({
208
+ ref: ref
209
+ }, a11yProps), metaAttribute({
208
210
  name: MetaConstants.Alert,
209
211
  testID: testID
210
212
  })), getStyledProps(rest)), makeAnalyticsAttribute(rest)), {}, {
@@ -223,6 +225,7 @@ var Alert = function Alert(_ref) {
223
225
  })
224
226
  }));
225
227
  };
228
+ var Alert = /*#__PURE__*/forwardRef(_Alert);
226
229
 
227
230
  export { Alert };
228
231
  //# sourceMappingURL=Alert.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Alert.js","sources":["../../../../../../src/components/Alert/Alert.tsx"],"sourcesContent":["import type { ReactChild, ReactElement } from 'react';\nimport { Fragment, useState } from 'react';\n\nimport { StyledAlert } from './StyledAlert';\nimport type { IconComponent } from '~components/Icons';\nimport {\n AlertOctagonIcon,\n AlertTriangleIcon,\n CheckCircleIcon,\n CloseIcon,\n InfoIcon,\n} from '~components/Icons';\nimport { castNativeType, castWebType, useBreakpoint, getPlatformType } from '~utils';\nimport { metaAttribute, MetaConstants } from '~utils/metaAttribute';\nimport { getStyledProps } from '~components/Box/styledProps';\nimport type { StyledPropsBlade } from '~components/Box/styledProps';\nimport { IconButton } from '~components/Button/IconButton';\nimport BaseBox from '~components/Box/BaseBox';\nimport { Text } from '~components/Typography';\nimport BaseButton from '~components/Button/BaseButton';\nimport { BaseLink } from '~components/Link/BaseLink';\nimport type { FeedbackColors, SubtleOrIntense } from '~tokens/theme/theme';\nimport { useTheme } from '~components/BladeProvider';\nimport type { DataAnalyticsAttribute, DotNotationSpacingStringToken, TestID } from '~utils/types';\nimport { makeAccessible } from '~utils/makeAccessible';\nimport { makeAnalyticsAttribute } from '~utils/makeAnalyticsAttribute';\n\ntype PrimaryAction = {\n text: string;\n onClick: () => void;\n};\n\ntype SecondaryActionButton = {\n text: string;\n onClick: () => void;\n};\n\ntype SecondaryActionLinkButton = {\n text: string;\n href: string;\n onClick?: () => void;\n target?: string;\n /**\n * When `target` is set to `_blank` this is automatically set to `noopener noreferrer`\n */\n rel?: string;\n};\n\ntype SecondaryAction = SecondaryActionButton | SecondaryActionLinkButton;\n\ntype AlertProps = {\n /**\n * Body content, pass text or JSX. Avoid passing components except `Link` to customize the content.\n */\n description: ReactChild;\n\n /**\n * A brief heading\n */\n title?: string;\n\n /**\n * Shows a dismiss button\n *\n * @default true\n */\n isDismissible?: boolean;\n\n /**\n * A callback when the dismiss button is clicked\n */\n onDismiss?: () => void;\n\n /**\n * Can be used to render custom icon\n */\n icon?: IconComponent;\n\n /**\n * Can be set to `high` for a more prominent look. Not to be confused with a11y emphasis.\n *\n * @default subtle\n */\n emphasis?: SubtleOrIntense;\n\n /**\n * Makes the Alert span the entire container width, instead of the default max width of `584px`.\n * This also makes the alert borderless, useful for creating full bleed layouts.\n *\n * @default false\n */\n isFullWidth?: boolean;\n\n /**\n * Sets the color tone\n */\n color?: FeedbackColors;\n\n /**\n * Renders a primary action button and a secondary action link button\n */\n actions?: {\n /**\n * Renders a button (should **always** be present if `secondary` action is being used)\n */\n primary?: PrimaryAction;\n /**\n * Renders a Link button\n */\n secondary?: SecondaryAction;\n };\n} & TestID &\n StyledPropsBlade &\n DataAnalyticsAttribute;\n\nconst isReactNative = getPlatformType() === 'react-native';\n\n// Need extra wrappers on React Native only for alignment\nconst CloseButtonWrapper = isReactNative ? BaseBox : Fragment;\n\nconst intentIconMap = {\n positive: CheckCircleIcon,\n negative: AlertOctagonIcon,\n information: InfoIcon,\n neutral: InfoIcon,\n notice: AlertTriangleIcon,\n};\n\nconst Alert = ({\n description,\n title,\n isDismissible = true,\n onDismiss,\n emphasis = 'subtle',\n isFullWidth = false,\n color = 'neutral',\n actions,\n testID,\n icon,\n ...rest\n}: AlertProps): ReactElement | null => {\n const { theme } = useTheme();\n const { matchedDeviceType } = useBreakpoint({ breakpoints: theme.breakpoints });\n const [isVisible, setIsVisible] = useState(true);\n\n const isDesktop = matchedDeviceType === 'desktop';\n const isMobile = !isDesktop;\n\n const Icon = icon ?? intentIconMap[color];\n let iconOffset: DotNotationSpacingStringToken = 'spacing.1';\n\n // certain special cases below needs special care for near perfect alignment\n if (isReactNative) {\n if (isFullWidth && !title) {\n iconOffset = 'spacing.1';\n } else if (!isFullWidth && !title) {\n iconOffset = 'spacing.0';\n } else if (!isFullWidth && title) {\n iconOffset = 'spacing.2';\n }\n } else if (isMobile) {\n if (!isFullWidth && title) {\n iconOffset = 'spacing.2';\n } else if (isFullWidth && !title) {\n iconOffset = 'spacing.2';\n }\n } else if (isFullWidth) {\n iconOffset = 'spacing.1';\n }\n\n const shouldCenterAlign = isFullWidth && !title;\n let alignment: 'center' | 'flex-start' = 'flex-start';\n if (!isFullWidth) alignment = 'flex-start';\n if (shouldCenterAlign) alignment = 'center';\n\n const leadingIcon = (\n <BaseBox display=\"flex\" alignSelf={alignment} marginTop={iconOffset}>\n <Icon\n color={\n emphasis === 'intense'\n ? 'surface.icon.staticWhite.normal'\n : `feedback.icon.${color}.${emphasis === 'subtle' ? 'intense' : 'subtle'}`\n }\n size=\"medium\"\n />\n </BaseBox>\n );\n\n const textColor =\n emphasis === 'intense' ? 'surface.text.staticWhite.normal' : 'surface.text.gray.subtle';\n const _title = title ? (\n <BaseBox marginBottom=\"spacing.2\">\n <Text color={textColor} size=\"medium\" weight=\"semibold\">\n {title}\n </Text>\n </BaseBox>\n ) : null;\n\n const _description = (\n <BaseBox marginTop={title || isReactNative ? 'spacing.0' : 'spacing.1'}>\n <Text color={textColor} size=\"small\">\n {description}\n </Text>\n </BaseBox>\n );\n\n const primaryAction = actions?.primary ? (\n <BaseBox\n marginRight=\"spacing.5\"\n display={isReactNative ? castNativeType('flex') : castWebType('inline-flex')}\n >\n <BaseButton\n size=\"small\"\n onClick={actions.primary.onClick}\n color={emphasis === 'intense' ? 'white' : color}\n variant=\"secondary\"\n >\n {actions.primary.text}\n </BaseButton>\n </BaseBox>\n ) : null;\n\n const secondaryActionParams: Partial<SecondaryActionLinkButton> | null = actions?.secondary\n ? {\n onClick: actions.secondary.onClick,\n }\n : null;\n\n /**\n * TS assumes only common properties to be present for `SecondaryAction` union type\n * We add a type guard that checks if href is present on secondary action:\n * - If yes, then TS can assume it to be `SecondaryActionLinkButton` (href being a required property)\n * - If no, then it would be `SecondaryActionButton` (and link properties wouldn't be needed)\n */\n if (actions?.secondary && secondaryActionParams && 'href' in actions.secondary) {\n secondaryActionParams.href = actions.secondary.href;\n secondaryActionParams.target = actions.secondary.target;\n secondaryActionParams.rel = actions.secondary.rel;\n }\n\n const secondaryAction = actions?.secondary ? (\n <BaseBox marginRight=\"spacing.4\" display={(isReactNative ? 'flex' : 'inline-flex') as never}>\n <BaseLink\n size=\"small\"\n color={emphasis === 'intense' ? 'white' : color}\n {...secondaryActionParams}\n >\n {actions.secondary.text}\n </BaseLink>\n </BaseBox>\n ) : null;\n\n // For certain cases we wish to render actions inline with text content\n const showActionsHorizontal = isFullWidth && isDesktop;\n\n const actionsHorizontal =\n showActionsHorizontal && (primaryAction || secondaryAction) ? (\n <BaseBox flexDirection=\"row\" alignItems=\"center\">\n {primaryAction}\n {secondaryAction}\n </BaseBox>\n ) : null;\n\n const actionsVertical =\n !showActionsHorizontal && (primaryAction || secondaryAction) ? (\n <BaseBox marginTop=\"spacing.4\" flexDirection=\"row\" alignItems=\"center\">\n {primaryAction}\n {secondaryAction}\n </BaseBox>\n ) : null;\n\n const onClickDismiss = (): void => {\n if (onDismiss) {\n onDismiss();\n }\n setIsVisible(false);\n };\n const closeButton = isDismissible ? (\n <CloseButtonWrapper>\n <IconButton\n accessibilityLabel=\"Dismiss alert\"\n onClick={onClickDismiss}\n emphasis={emphasis === 'intense' ? 'subtle' : 'intense'}\n size=\"large\"\n icon={CloseIcon}\n />\n </CloseButtonWrapper>\n ) : null;\n\n const a11yProps = makeAccessible({\n // React Native doesn't has status as role\n role: isReactNative || color === 'negative' || color === 'notice' ? 'alert' : 'status',\n // override the implicit live region of role `alert`\n ...(color === 'notice' && { liveRegion: 'polite' }),\n });\n\n if (!isVisible) {\n return null;\n }\n\n return (\n <BaseBox\n {...a11yProps}\n {...metaAttribute({ name: MetaConstants.Alert, testID })}\n {...getStyledProps(rest)}\n {...makeAnalyticsAttribute(rest)}\n >\n <StyledAlert\n color={color}\n emphasis={emphasis}\n isFullWidth={isFullWidth}\n isDesktop={isDesktop}\n textAlign={'left' as never}\n >\n {leadingIcon}\n <BaseBox\n flex={1}\n paddingLeft={isFullWidth ? 'spacing.4' : 'spacing.3'}\n paddingRight={showActionsHorizontal ? 'spacing.4' : 'spacing.2'}\n >\n {_title}\n {_description}\n {actionsVertical}\n </BaseBox>\n {actionsHorizontal}\n {closeButton}\n </StyledAlert>\n </BaseBox>\n );\n};\n\nexport type { AlertProps };\nexport { Alert };\n"],"names":["isReactNative","getPlatformType","CloseButtonWrapper","BaseBox","Fragment","intentIconMap","positive","CheckCircleIcon","negative","AlertOctagonIcon","information","InfoIcon","neutral","notice","AlertTriangleIcon","Alert","_ref","description","title","_ref$isDismissible","isDismissible","onDismiss","_ref$emphasis","emphasis","_ref$isFullWidth","isFullWidth","_ref$color","color","actions","testID","icon","rest","_objectWithoutProperties","_excluded","_useTheme","useTheme","theme","_useBreakpoint","useBreakpoint","breakpoints","matchedDeviceType","_useState","useState","_useState2","_slicedToArray","isVisible","setIsVisible","isDesktop","isMobile","Icon","iconOffset","shouldCenterAlign","alignment","leadingIcon","_jsx","display","alignSelf","marginTop","children","concat","size","textColor","_title","marginBottom","Text","weight","_description","primaryAction","primary","marginRight","castNativeType","castWebType","BaseButton","onClick","variant","text","secondaryActionParams","secondary","href","target","rel","secondaryAction","BaseLink","_objectSpread","showActionsHorizontal","actionsHorizontal","_jsxs","flexDirection","alignItems","actionsVertical","onClickDismiss","closeButton","IconButton","accessibilityLabel","CloseIcon","a11yProps","makeAccessible","role","liveRegion","metaAttribute","name","MetaConstants","getStyledProps","makeAnalyticsAttribute","StyledAlert","textAlign","flex","paddingLeft","paddingRight"],"mappings":"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"}
1
+ {"version":3,"file":"Alert.js","sources":["../../../../../../src/components/Alert/Alert.tsx"],"sourcesContent":["import type { ReactChild, ReactElement } from 'react';\nimport React, { Fragment, useState, forwardRef } from 'react';\n\nimport { StyledAlert } from './StyledAlert';\nimport type { IconComponent } from '~components/Icons';\nimport {\n AlertOctagonIcon,\n AlertTriangleIcon,\n CheckCircleIcon,\n CloseIcon,\n InfoIcon,\n} from '~components/Icons';\nimport { castNativeType, castWebType, useBreakpoint, getPlatformType } from '~utils';\nimport { metaAttribute, MetaConstants } from '~utils/metaAttribute';\nimport { getStyledProps } from '~components/Box/styledProps';\nimport type { StyledPropsBlade } from '~components/Box/styledProps';\nimport { IconButton } from '~components/Button/IconButton';\nimport BaseBox from '~components/Box/BaseBox';\nimport { Text } from '~components/Typography';\nimport BaseButton from '~components/Button/BaseButton';\nimport { BaseLink } from '~components/Link/BaseLink';\nimport type { FeedbackColors, SubtleOrIntense } from '~tokens/theme/theme';\nimport { useTheme } from '~components/BladeProvider';\nimport type {\n DataAnalyticsAttribute,\n BladeElementRef,\n DotNotationSpacingStringToken,\n TestID,\n} from '~utils/types';\nimport { makeAccessible } from '~utils/makeAccessible';\nimport { makeAnalyticsAttribute } from '~utils/makeAnalyticsAttribute';\n\ntype PrimaryAction = {\n text: string;\n onClick: () => void;\n};\n\ntype SecondaryActionButton = {\n text: string;\n onClick: () => void;\n};\n\ntype SecondaryActionLinkButton = {\n text: string;\n href: string;\n onClick?: () => void;\n target?: string;\n /**\n * When `target` is set to `_blank` this is automatically set to `noopener noreferrer`\n */\n rel?: string;\n};\n\ntype SecondaryAction = SecondaryActionButton | SecondaryActionLinkButton;\n\ntype AlertProps = {\n /**\n * Body content, pass text or JSX. Avoid passing components except `Link` to customize the content.\n */\n description: ReactChild;\n\n /**\n * A brief heading\n */\n title?: string;\n\n /**\n * Shows a dismiss button\n *\n * @default true\n */\n isDismissible?: boolean;\n\n /**\n * A callback when the dismiss button is clicked\n */\n onDismiss?: () => void;\n\n /**\n * Can be used to render custom icon\n */\n icon?: IconComponent;\n\n /**\n * Can be set to `high` for a more prominent look. Not to be confused with a11y emphasis.\n *\n * @default subtle\n */\n emphasis?: SubtleOrIntense;\n\n /**\n * Makes the Alert span the entire container width, instead of the default max width of `584px`.\n * This also makes the alert borderless, useful for creating full bleed layouts.\n *\n * @default false\n */\n isFullWidth?: boolean;\n\n /**\n * Sets the color tone\n */\n color?: FeedbackColors;\n\n /**\n * Renders a primary action button and a secondary action link button\n */\n actions?: {\n /**\n * Renders a button (should **always** be present if `secondary` action is being used)\n */\n primary?: PrimaryAction;\n /**\n * Renders a Link button\n */\n secondary?: SecondaryAction;\n };\n} & TestID &\n StyledPropsBlade &\n DataAnalyticsAttribute;\n\nconst isReactNative = getPlatformType() === 'react-native';\n\n// Need extra wrappers on React Native only for alignment\nconst CloseButtonWrapper = isReactNative ? BaseBox : Fragment;\n\nconst intentIconMap = {\n positive: CheckCircleIcon,\n negative: AlertOctagonIcon,\n information: InfoIcon,\n neutral: InfoIcon,\n notice: AlertTriangleIcon,\n};\n\nconst _Alert = (\n {\n description,\n title,\n isDismissible = true,\n onDismiss,\n emphasis = 'subtle',\n isFullWidth = false,\n color = 'neutral',\n actions,\n testID,\n icon,\n ...rest\n }: AlertProps,\n ref: React.Ref<BladeElementRef>,\n): ReactElement | null => {\n const { theme } = useTheme();\n const { matchedDeviceType } = useBreakpoint({ breakpoints: theme.breakpoints });\n const [isVisible, setIsVisible] = useState(true);\n\n const isDesktop = matchedDeviceType === 'desktop';\n const isMobile = !isDesktop;\n\n const Icon = icon ?? intentIconMap[color];\n let iconOffset: DotNotationSpacingStringToken = 'spacing.1';\n\n // certain special cases below needs special care for near perfect alignment\n if (isReactNative) {\n if (isFullWidth && !title) {\n iconOffset = 'spacing.1';\n } else if (!isFullWidth && !title) {\n iconOffset = 'spacing.0';\n } else if (!isFullWidth && title) {\n iconOffset = 'spacing.2';\n }\n } else if (isMobile) {\n if (!isFullWidth && title) {\n iconOffset = 'spacing.2';\n } else if (isFullWidth && !title) {\n iconOffset = 'spacing.2';\n }\n } else if (isFullWidth) {\n iconOffset = 'spacing.1';\n }\n\n const shouldCenterAlign = isFullWidth && !title;\n let alignment: 'center' | 'flex-start' = 'flex-start';\n if (!isFullWidth) alignment = 'flex-start';\n if (shouldCenterAlign) alignment = 'center';\n\n const leadingIcon = (\n <BaseBox display=\"flex\" alignSelf={alignment} marginTop={iconOffset}>\n <Icon\n color={\n emphasis === 'intense'\n ? 'surface.icon.staticWhite.normal'\n : `feedback.icon.${color}.${emphasis === 'subtle' ? 'intense' : 'subtle'}`\n }\n size=\"medium\"\n />\n </BaseBox>\n );\n\n const textColor =\n emphasis === 'intense' ? 'surface.text.staticWhite.normal' : 'surface.text.gray.subtle';\n const _title = title ? (\n <BaseBox marginBottom=\"spacing.2\">\n <Text color={textColor} size=\"medium\" weight=\"semibold\">\n {title}\n </Text>\n </BaseBox>\n ) : null;\n\n const _description = (\n <BaseBox marginTop={title || isReactNative ? 'spacing.0' : 'spacing.1'}>\n <Text color={textColor} size=\"small\">\n {description}\n </Text>\n </BaseBox>\n );\n\n const primaryAction = actions?.primary ? (\n <BaseBox\n marginRight=\"spacing.5\"\n display={isReactNative ? castNativeType('flex') : castWebType('inline-flex')}\n >\n <BaseButton\n size=\"small\"\n onClick={actions.primary.onClick}\n color={emphasis === 'intense' ? 'white' : color}\n variant=\"secondary\"\n >\n {actions.primary.text}\n </BaseButton>\n </BaseBox>\n ) : null;\n\n const secondaryActionParams: Partial<SecondaryActionLinkButton> | null = actions?.secondary\n ? {\n onClick: actions.secondary.onClick,\n }\n : null;\n\n /**\n * TS assumes only common properties to be present for `SecondaryAction` union type\n * We add a type guard that checks if href is present on secondary action:\n * - If yes, then TS can assume it to be `SecondaryActionLinkButton` (href being a required property)\n * - If no, then it would be `SecondaryActionButton` (and link properties wouldn't be needed)\n */\n if (actions?.secondary && secondaryActionParams && 'href' in actions.secondary) {\n secondaryActionParams.href = actions.secondary.href;\n secondaryActionParams.target = actions.secondary.target;\n secondaryActionParams.rel = actions.secondary.rel;\n }\n\n const secondaryAction = actions?.secondary ? (\n <BaseBox marginRight=\"spacing.4\" display={(isReactNative ? 'flex' : 'inline-flex') as never}>\n <BaseLink\n size=\"small\"\n color={emphasis === 'intense' ? 'white' : color}\n {...secondaryActionParams}\n >\n {actions.secondary.text}\n </BaseLink>\n </BaseBox>\n ) : null;\n\n // For certain cases we wish to render actions inline with text content\n const showActionsHorizontal = isFullWidth && isDesktop;\n\n const actionsHorizontal =\n showActionsHorizontal && (primaryAction || secondaryAction) ? (\n <BaseBox flexDirection=\"row\" alignItems=\"center\">\n {primaryAction}\n {secondaryAction}\n </BaseBox>\n ) : null;\n\n const actionsVertical =\n !showActionsHorizontal && (primaryAction || secondaryAction) ? (\n <BaseBox marginTop=\"spacing.4\" flexDirection=\"row\" alignItems=\"center\">\n {primaryAction}\n {secondaryAction}\n </BaseBox>\n ) : null;\n\n const onClickDismiss = (): void => {\n if (onDismiss) {\n onDismiss();\n }\n setIsVisible(false);\n };\n const closeButton = isDismissible ? (\n <CloseButtonWrapper>\n <IconButton\n accessibilityLabel=\"Dismiss alert\"\n onClick={onClickDismiss}\n emphasis={emphasis === 'intense' ? 'subtle' : 'intense'}\n size=\"large\"\n icon={CloseIcon}\n />\n </CloseButtonWrapper>\n ) : null;\n\n const a11yProps = makeAccessible({\n // React Native doesn't has status as role\n role: isReactNative || color === 'negative' || color === 'notice' ? 'alert' : 'status',\n // override the implicit live region of role `alert`\n ...(color === 'notice' && { liveRegion: 'polite' }),\n });\n\n if (!isVisible) {\n return null;\n }\n\n return (\n <BaseBox\n ref={ref as never}\n {...a11yProps}\n {...metaAttribute({ name: MetaConstants.Alert, testID })}\n {...getStyledProps(rest)}\n {...makeAnalyticsAttribute(rest)}\n >\n <StyledAlert\n color={color}\n emphasis={emphasis}\n isFullWidth={isFullWidth}\n isDesktop={isDesktop}\n textAlign={'left' as never}\n >\n {leadingIcon}\n <BaseBox\n flex={1}\n paddingLeft={isFullWidth ? 'spacing.4' : 'spacing.3'}\n paddingRight={showActionsHorizontal ? 'spacing.4' : 'spacing.2'}\n >\n {_title}\n {_description}\n {actionsVertical}\n </BaseBox>\n {actionsHorizontal}\n {closeButton}\n </StyledAlert>\n </BaseBox>\n );\n};\n\nconst Alert = forwardRef(_Alert);\n\nexport type { AlertProps };\nexport { Alert };\n"],"names":["isReactNative","getPlatformType","CloseButtonWrapper","BaseBox","Fragment","intentIconMap","positive","CheckCircleIcon","negative","AlertOctagonIcon","information","InfoIcon","neutral","notice","AlertTriangleIcon","_Alert","_ref","ref","description","title","_ref$isDismissible","isDismissible","onDismiss","_ref$emphasis","emphasis","_ref$isFullWidth","isFullWidth","_ref$color","color","actions","testID","icon","rest","_objectWithoutProperties","_excluded","_useTheme","useTheme","theme","_useBreakpoint","useBreakpoint","breakpoints","matchedDeviceType","_useState","useState","_useState2","_slicedToArray","isVisible","setIsVisible","isDesktop","isMobile","Icon","iconOffset","shouldCenterAlign","alignment","leadingIcon","_jsx","display","alignSelf","marginTop","children","concat","size","textColor","_title","marginBottom","Text","weight","_description","primaryAction","primary","marginRight","castNativeType","castWebType","BaseButton","onClick","variant","text","secondaryActionParams","secondary","href","target","rel","secondaryAction","BaseLink","_objectSpread","showActionsHorizontal","actionsHorizontal","_jsxs","flexDirection","alignItems","actionsVertical","onClickDismiss","closeButton","IconButton","accessibilityLabel","CloseIcon","a11yProps","makeAccessible","role","liveRegion","metaAttribute","name","MetaConstants","Alert","getStyledProps","makeAnalyticsAttribute","StyledAlert","textAlign","flex","paddingLeft","paddingRight","forwardRef"],"mappings":"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"}
@@ -181,7 +181,7 @@ var getAmountByParts = function getAmountByParts(_ref7) {
181
181
  };
182
182
  }
183
183
  };
184
- var _Amount = function _Amount(_ref8) {
184
+ var _Amount = function _Amount(_ref8, ref) {
185
185
  var _renderedValue$isPref, _renderedValue$curren;
186
186
  var value = _ref8.value,
187
187
  _ref8$suffix = _ref8.suffix,
@@ -255,6 +255,7 @@ var _Amount = function _Amount(_ref8) {
255
255
  var currencyFontSize = isAffixSubtle ? subtleFontSizes[type][size] : normalAmountSizes[type][size];
256
256
  var isReactNative = getPlatformType() === 'react-native';
257
257
  return /*#__PURE__*/jsx(BaseBox, _objectSpread(_objectSpread(_objectSpread(_objectSpread({
258
+ ref: ref,
258
259
  display: isReactNative ? 'flex' : 'inline-flex',
259
260
  flexDirection: "row"
260
261
  }, metaAttribute({
@@ -317,7 +318,7 @@ var _Amount = function _Amount(_ref8) {
317
318
  })
318
319
  }));
319
320
  };
320
- var Amount = /*#__PURE__*/assignWithoutSideEffects(_Amount, {
321
+ var Amount = /*#__PURE__*/assignWithoutSideEffects( /*#__PURE__*/React__default.forwardRef(_Amount), {
321
322
  displayName: 'Amount',
322
323
  componentId: 'Amount'
323
324
  });
@@ -1 +1 @@
1
- {"version":3,"file":"Amount.js","sources":["../../../../../../src/components/Amount/Amount.tsx"],"sourcesContent":["import type { ReactElement } from 'react';\nimport React from 'react';\nimport type { CurrencyCodeType } from '@razorpay/i18nify-js/currency';\nimport { formatNumberByParts } from '@razorpay/i18nify-js/currency';\nimport type { AmountTypeProps } from './amountTokens';\nimport { normalAmountSizes, subtleFontSizes, amountLineHeights } from './amountTokens';\nimport type { BaseTextProps } from '~components/Typography/BaseText/types';\nimport BaseBox from '~components/Box/BaseBox';\nimport type { DataAnalyticsAttribute, TestID } from '~utils/types';\nimport { getPlatformType } from '~utils';\nimport { metaAttribute, MetaConstants } from '~utils/metaAttribute';\nimport { getStyledProps } from '~components/Box/styledProps';\nimport type { StyledPropsBlade } from '~components/Box/styledProps';\nimport { assignWithoutSideEffects } from '~utils/assignWithoutSideEffects';\nimport { throwBladeError } from '~utils/logger';\nimport { objectKeysWithType } from '~utils/objectKeysWithType';\nimport { BaseText } from '~components/Typography/BaseText';\nimport { Text } from '~components/Typography';\nimport { opacity } from '~tokens/global';\nimport type { FontFamily } from '~tokens/global';\nimport { makeAnalyticsAttribute } from '~utils/makeAnalyticsAttribute';\n\n/**\n * Pollyfill function to get around the node 18 error\n *\n * This function is maintained by i18nify team. Reach out to them for any change regarding this.\n */\nconst stripTrailingZerosFromParts = (\n parts: ReturnType<typeof formatNumberByParts>,\n): ReturnType<typeof formatNumberByParts> => {\n const decimalPart = parts.rawParts\n .filter(({ type }) => type === 'fraction')\n .map(({ value }) => value)\n .join('');\n\n const hasFraction = parts.rawParts.some(({ type }) => type === 'fraction');\n\n if (hasFraction && /^0+$/.test(decimalPart)) {\n delete parts.decimal;\n delete parts.fraction;\n parts.rawParts = parts.rawParts.filter(({ type }) => type !== 'decimal' && type !== 'fraction');\n }\n\n return parts;\n};\n\n/**\n * Wrapper that uses pollyfill of i18nify team\n */\nconst pollyfilledFormatNumberByParts: typeof formatNumberByParts = (value, options) => {\n const parts = formatNumberByParts(value, options);\n\n if (options?.intlOptions?.trailingZeroDisplay === 'stripIfInteger') {\n return stripTrailingZerosFromParts(parts);\n }\n\n return parts;\n};\n\ntype AmountCommonProps = {\n /**\n * The value to be rendered within the component.\n *\n */\n value: number;\n /**\n * Sets the color of the amount.\n *\n * @default undefined\n */\n color?: BaseTextProps['color'];\n /**\n * Indicates what the suffix of amount should be\n *\n * @default 'decimals'\n */\n suffix?: 'decimals' | 'none' | 'humanize';\n /**\n * Makes the currency indicator(currency symbol/code) and decimal digits small and faded\n *\n * @default true\n */\n isAffixSubtle?: true | false;\n /**\n * Determines the visual representation of the currency, choose between displaying the currency symbol or code.\n *\n * Note: Currency symbol and code is determined by the locale set in user's browser or set via @razorpay/i18nify-react library.\n *\n * @default 'currency-symbol'\n */\n currencyIndicator?: 'currency-symbol' | 'currency-code';\n /**\n * The currency of the amount. Note that this component\n * only displays the provided value in the specified currency, it does not perform any currency conversion.\n *\n * @default 'INR'\n * */\n currency?: CurrencyCodeType;\n /**\n * If true, the amount text will have a line through it.\n *\n * @default false\n */\n isStrikethrough?: boolean;\n} & TestID &\n DataAnalyticsAttribute &\n StyledPropsBlade;\n\ntype ColorProps = {\n amountValueColor: BaseTextProps['color'];\n};\n\ntype AmountProps = AmountTypeProps & AmountCommonProps;\n\nconst getTextColorProps = ({ color }: { color: AmountProps['color'] }): ColorProps => {\n const props: ColorProps = {\n amountValueColor: 'surface.text.gray.normal',\n };\n if (!color) return props;\n props.amountValueColor = color;\n return props;\n};\n\ntype AmountType = Partial<ReturnType<typeof formatNumberByParts>>;\n\ninterface AmountValue extends Omit<AmountProps, 'value'> {\n amountValueColor: BaseTextProps['color'];\n amount: AmountType;\n size: Exclude<AmountProps['size'], undefined>;\n}\n\nconst AmountValue = ({\n amount,\n size = 'medium',\n type = 'body',\n weight = 'regular',\n amountValueColor,\n isAffixSubtle,\n suffix,\n}: AmountValue): ReactElement => {\n const isReactNative = getPlatformType() === 'react-native';\n const affixFontSize = isAffixSubtle ? subtleFontSizes[type][size] : normalAmountSizes[type][size];\n const numberFontFamily: keyof FontFamily = type === 'body' ? 'text' : 'heading';\n if (suffix === 'decimals' && isAffixSubtle) {\n // Native does not support alignItems of Text inside a div, instead we need to wrap is in a Text\n const AmountWrapper = isReactNative ? Text : React.Fragment;\n\n return (\n <AmountWrapper>\n <BaseText\n fontSize={normalAmountSizes[type][size]}\n fontWeight={weight}\n lineHeight={amountLineHeights[type][size]}\n color={amountValueColor}\n fontFamily={numberFontFamily}\n as={isReactNative ? undefined : 'span'}\n >\n {amount.integer}\n </BaseText>\n <BaseText\n fontWeight={weight}\n fontSize={affixFontSize}\n fontFamily={numberFontFamily}\n color={amountValueColor}\n as={isReactNative ? undefined : 'span'}\n opacity={isAffixSubtle ? opacity[800] : 1}\n >\n {amount.decimal}\n {amount.fraction}\n </BaseText>\n </AmountWrapper>\n );\n }\n\n return (\n <BaseText\n fontSize={normalAmountSizes[type][size]}\n fontWeight={weight}\n fontFamily={numberFontFamily}\n color={amountValueColor}\n lineHeight={amountLineHeights[type][size]}\n >\n {amount.integer}\n {amount.decimal}\n {amount.fraction}\n {amount.compact}\n </BaseText>\n );\n};\n\ntype FormatAmountWithSuffixType = {\n suffix: AmountProps['suffix'];\n value: number;\n currency: AmountProps['currency'];\n};\n\n/**\n * Returns a parsed object based on the suffix passed in parameters\n * === Logic ===\n * value = 12500.45 \n * if suffix === 'decimals' => {\n \"integer\": \"12,500\",\n \"decimal\": \".\",\n \"fraction\": \"45\",\n \"compact\": \"K\",\n \"isPrefixSymbol\": false,\n \"rawParts\": [{\"type\": \"integer\",\"value\": \"12\"},{\"type\": \"group\",\"value\": \",\"},{\"type\": \"integer\",\"value\": \"500\"},{\"type\": \"decimal\",\"value\": \".\"},{\"type\": \"fraction\",\"value\": \"45\"}]\n}\n * @returns {AmountType}\n */\nexport const getAmountByParts = ({\n suffix,\n value,\n currency,\n}: FormatAmountWithSuffixType): AmountType => {\n try {\n switch (suffix) {\n case 'decimals': {\n const options = {\n intlOptions: {\n maximumFractionDigits: 2,\n minimumFractionDigits: 2,\n },\n currency,\n } as const;\n return pollyfilledFormatNumberByParts(value, options);\n }\n case 'humanize': {\n const options = {\n intlOptions: {\n notation: 'compact',\n maximumFractionDigits: 2,\n trailingZeroDisplay: 'stripIfInteger',\n },\n currency,\n } as const;\n return pollyfilledFormatNumberByParts(value, options);\n }\n\n default: {\n const options = {\n intlOptions: {\n maximumFractionDigits: 0,\n roundingMode: 'floor',\n },\n currency,\n } as const;\n return pollyfilledFormatNumberByParts(value, options);\n }\n }\n } catch (err: unknown) {\n return {\n integer: `${value}`,\n currency,\n };\n }\n};\n\nconst _Amount = ({\n value,\n suffix = 'decimals',\n type = 'body',\n size = 'medium',\n weight = 'regular',\n isAffixSubtle = true,\n isStrikethrough = false,\n color,\n currencyIndicator = 'currency-symbol',\n currency = 'INR',\n testID,\n ...rest\n}: AmountProps): ReactElement => {\n if (__DEV__) {\n if (typeof value !== 'number') {\n throwBladeError({\n message: '`value` prop must be of type `number` for Amount.',\n moduleName: 'Amount',\n });\n }\n // @ts-expect-error neutral color should throw error\n if (color === 'neutral') {\n throwBladeError({\n message: '`neutral` color is not supported.',\n moduleName: 'Amount',\n });\n }\n\n const bodySizes = objectKeysWithType(normalAmountSizes.body);\n if ((type === 'body' || !type) && !bodySizes.includes(size)) {\n throwBladeError({\n message: `size=\"${size}\" is not allowed with type=\"body\"`,\n moduleName: 'Amount',\n });\n }\n\n const displaySizes = objectKeysWithType(normalAmountSizes.display);\n if (type === 'display' && !displaySizes.includes(size)) {\n throwBladeError({\n message: `size=\"${size}\" is not allowed with type=\"display\"`,\n moduleName: 'Amount',\n });\n }\n\n const headingSizes = objectKeysWithType(normalAmountSizes.heading);\n if (type === 'heading' && !headingSizes.includes(size)) {\n throwBladeError({\n message: `size=\"${size}\" is not allowed with type=\"heading\"`,\n moduleName: 'Amount',\n });\n }\n }\n\n const { amountValueColor } = getTextColorProps({\n color,\n });\n\n const renderedValue = getAmountByParts({ suffix, value, currency });\n const isPrefixSymbol = renderedValue.isPrefixSymbol ?? true;\n const currencySymbol = renderedValue.currency ?? currency;\n\n const currencyPosition = isPrefixSymbol ? 'left' : 'right';\n const currencySymbolOrCode = currencyIndicator === 'currency-symbol' ? currencySymbol : currency;\n\n const currencyFontSize = isAffixSubtle\n ? subtleFontSizes[type][size]\n : normalAmountSizes[type][size];\n const isReactNative = getPlatformType() === 'react-native';\n\n return (\n <BaseBox\n display={(isReactNative ? 'flex' : 'inline-flex') as never}\n flexDirection=\"row\"\n {...metaAttribute({ name: MetaConstants.Amount, testID })}\n {...getStyledProps(rest)}\n {...makeAnalyticsAttribute(rest)}\n >\n <BaseBox\n display={(isReactNative ? 'flex' : 'inline-flex') as never}\n alignItems=\"baseline\"\n flexDirection=\"row\"\n position=\"relative\"\n >\n {renderedValue.minusSign ? (\n <BaseText\n fontSize={normalAmountSizes[type][size]}\n fontWeight={weight}\n lineHeight={amountLineHeights[type][size]}\n color={amountValueColor}\n as={isReactNative ? undefined : 'span'}\n marginX=\"spacing.2\"\n >\n {renderedValue.minusSign}\n </BaseText>\n ) : null}\n {currencyPosition === 'left' && (\n <BaseText\n marginRight=\"spacing.1\"\n fontWeight={weight}\n fontSize={currencyFontSize}\n color={amountValueColor}\n as={isReactNative ? undefined : 'span'}\n opacity={isAffixSubtle ? opacity[800] : 1}\n >\n {currencySymbolOrCode}\n </BaseText>\n )}\n <AmountValue\n amount={renderedValue}\n amountValueColor={amountValueColor}\n type={type}\n weight={weight}\n size={size}\n isAffixSubtle={isAffixSubtle}\n suffix={suffix}\n currency={currency}\n />\n {currencyPosition === 'right' && (\n <BaseText\n marginLeft=\"spacing.1\"\n fontWeight={weight}\n fontSize={currencyFontSize}\n color={amountValueColor}\n as={isReactNative ? undefined : 'span'}\n opacity={isAffixSubtle ? opacity[800] : 1}\n >\n {currencySymbolOrCode}\n </BaseText>\n )}\n {isStrikethrough && (\n // eslint-disable-next-line @typescript-eslint/prefer-ts-expect-error\n // @ts-ignore: the borderBottomColor error below is thrown here as well\n <BaseBox\n // eslint-disable-next-line @typescript-eslint/prefer-ts-expect-error\n // @ts-ignore- intentionally setting the border color to the color prop for this hacky strikethrough\n borderBottomColor={amountValueColor}\n borderBottomWidth={type === 'body' ? 'thin' : 'thicker'}\n borderBottomStyle=\"solid\"\n position=\"absolute\"\n width=\"100%\"\n top=\"50%\"\n />\n )}\n </BaseBox>\n </BaseBox>\n );\n};\n\nconst Amount = assignWithoutSideEffects(_Amount, {\n displayName: 'Amount',\n componentId: 'Amount',\n});\n\nexport type { AmountProps };\nexport { Amount };\n"],"names":["stripTrailingZerosFromParts","parts","decimalPart","rawParts","filter","_ref","type","map","_ref2","value","join","hasFraction","some","_ref3","test","decimal","fraction","_ref4","pollyfilledFormatNumberByParts","options","_options$intlOptions","formatNumberByParts","intlOptions","trailingZeroDisplay","getTextColorProps","_ref5","color","props","amountValueColor","AmountValue","_ref6","amount","_ref6$size","size","_ref6$type","_ref6$weight","weight","isAffixSubtle","suffix","isReactNative","getPlatformType","affixFontSize","subtleFontSizes","normalAmountSizes","numberFontFamily","AmountWrapper","Text","React","Fragment","_jsxs","children","_jsx","BaseText","fontSize","fontWeight","lineHeight","amountLineHeights","fontFamily","as","undefined","integer","opacity","compact","getAmountByParts","_ref7","currency","maximumFractionDigits","minimumFractionDigits","notation","roundingMode","err","concat","_Amount","_ref8","_renderedValue$isPref","_renderedValue$curren","_ref8$suffix","_ref8$type","_ref8$size","_ref8$weight","_ref8$isAffixSubtle","_ref8$isStrikethrough","isStrikethrough","_ref8$currencyIndicat","currencyIndicator","_ref8$currency","testID","rest","_objectWithoutProperties","_excluded","throwBladeError","message","moduleName","bodySizes","objectKeysWithType","body","includes","displaySizes","display","headingSizes","heading","_getTextColorProps","renderedValue","isPrefixSymbol","currencySymbol","currencyPosition","currencySymbolOrCode","currencyFontSize","BaseBox","_objectSpread","flexDirection","metaAttribute","name","MetaConstants","Amount","getStyledProps","makeAnalyticsAttribute","alignItems","position","minusSign","marginX","marginRight","marginLeft","borderBottomColor","borderBottomWidth","borderBottomStyle","width","top","assignWithoutSideEffects","displayName","componentId"],"mappings":"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"}
1
+ {"version":3,"file":"Amount.js","sources":["../../../../../../src/components/Amount/Amount.tsx"],"sourcesContent":["import type { ReactElement } from 'react';\nimport React from 'react';\nimport type { CurrencyCodeType } from '@razorpay/i18nify-js/currency';\nimport { formatNumberByParts } from '@razorpay/i18nify-js/currency';\nimport type { AmountTypeProps } from './amountTokens';\nimport { normalAmountSizes, subtleFontSizes, amountLineHeights } from './amountTokens';\nimport type { BaseTextProps } from '~components/Typography/BaseText/types';\nimport BaseBox from '~components/Box/BaseBox';\nimport type { DataAnalyticsAttribute, BladeElementRef, TestID } from '~utils/types';\nimport { getPlatformType } from '~utils';\nimport { metaAttribute, MetaConstants } from '~utils/metaAttribute';\nimport { getStyledProps } from '~components/Box/styledProps';\nimport type { StyledPropsBlade } from '~components/Box/styledProps';\nimport { assignWithoutSideEffects } from '~utils/assignWithoutSideEffects';\nimport { throwBladeError } from '~utils/logger';\nimport { objectKeysWithType } from '~utils/objectKeysWithType';\nimport { BaseText } from '~components/Typography/BaseText';\nimport { Text } from '~components/Typography';\nimport { opacity } from '~tokens/global';\nimport type { FontFamily } from '~tokens/global';\nimport { makeAnalyticsAttribute } from '~utils/makeAnalyticsAttribute';\n\n/**\n * Pollyfill function to get around the node 18 error\n *\n * This function is maintained by i18nify team. Reach out to them for any change regarding this.\n */\nconst stripTrailingZerosFromParts = (\n parts: ReturnType<typeof formatNumberByParts>,\n): ReturnType<typeof formatNumberByParts> => {\n const decimalPart = parts.rawParts\n .filter(({ type }) => type === 'fraction')\n .map(({ value }) => value)\n .join('');\n\n const hasFraction = parts.rawParts.some(({ type }) => type === 'fraction');\n\n if (hasFraction && /^0+$/.test(decimalPart)) {\n delete parts.decimal;\n delete parts.fraction;\n parts.rawParts = parts.rawParts.filter(({ type }) => type !== 'decimal' && type !== 'fraction');\n }\n\n return parts;\n};\n\n/**\n * Wrapper that uses pollyfill of i18nify team\n */\nconst pollyfilledFormatNumberByParts: typeof formatNumberByParts = (value, options) => {\n const parts = formatNumberByParts(value, options);\n\n if (options?.intlOptions?.trailingZeroDisplay === 'stripIfInteger') {\n return stripTrailingZerosFromParts(parts);\n }\n\n return parts;\n};\n\ntype AmountCommonProps = {\n /**\n * The value to be rendered within the component.\n *\n */\n value: number;\n /**\n * Sets the color of the amount.\n *\n * @default undefined\n */\n color?: BaseTextProps['color'];\n /**\n * Indicates what the suffix of amount should be\n *\n * @default 'decimals'\n */\n suffix?: 'decimals' | 'none' | 'humanize';\n /**\n * Makes the currency indicator(currency symbol/code) and decimal digits small and faded\n *\n * @default true\n */\n isAffixSubtle?: true | false;\n /**\n * Determines the visual representation of the currency, choose between displaying the currency symbol or code.\n *\n * Note: Currency symbol and code is determined by the locale set in user's browser or set via @razorpay/i18nify-react library.\n *\n * @default 'currency-symbol'\n */\n currencyIndicator?: 'currency-symbol' | 'currency-code';\n /**\n * The currency of the amount. Note that this component\n * only displays the provided value in the specified currency, it does not perform any currency conversion.\n *\n * @default 'INR'\n * */\n currency?: CurrencyCodeType;\n /**\n * If true, the amount text will have a line through it.\n *\n * @default false\n */\n isStrikethrough?: boolean;\n} & TestID &\n DataAnalyticsAttribute &\n StyledPropsBlade;\n\ntype ColorProps = {\n amountValueColor: BaseTextProps['color'];\n};\n\ntype AmountProps = AmountTypeProps & AmountCommonProps;\n\nconst getTextColorProps = ({ color }: { color: AmountProps['color'] }): ColorProps => {\n const props: ColorProps = {\n amountValueColor: 'surface.text.gray.normal',\n };\n if (!color) return props;\n props.amountValueColor = color;\n return props;\n};\n\ntype AmountType = Partial<ReturnType<typeof formatNumberByParts>>;\n\ninterface AmountValue extends Omit<AmountProps, 'value'> {\n amountValueColor: BaseTextProps['color'];\n amount: AmountType;\n size: Exclude<AmountProps['size'], undefined>;\n}\n\nconst AmountValue = ({\n amount,\n size = 'medium',\n type = 'body',\n weight = 'regular',\n amountValueColor,\n isAffixSubtle,\n suffix,\n}: AmountValue): ReactElement => {\n const isReactNative = getPlatformType() === 'react-native';\n const affixFontSize = isAffixSubtle ? subtleFontSizes[type][size] : normalAmountSizes[type][size];\n const numberFontFamily: keyof FontFamily = type === 'body' ? 'text' : 'heading';\n if (suffix === 'decimals' && isAffixSubtle) {\n // Native does not support alignItems of Text inside a div, instead we need to wrap is in a Text\n const AmountWrapper = isReactNative ? Text : React.Fragment;\n\n return (\n <AmountWrapper>\n <BaseText\n fontSize={normalAmountSizes[type][size]}\n fontWeight={weight}\n lineHeight={amountLineHeights[type][size]}\n color={amountValueColor}\n fontFamily={numberFontFamily}\n as={isReactNative ? undefined : 'span'}\n >\n {amount.integer}\n </BaseText>\n <BaseText\n fontWeight={weight}\n fontSize={affixFontSize}\n fontFamily={numberFontFamily}\n color={amountValueColor}\n as={isReactNative ? undefined : 'span'}\n opacity={isAffixSubtle ? opacity[800] : 1}\n >\n {amount.decimal}\n {amount.fraction}\n </BaseText>\n </AmountWrapper>\n );\n }\n\n return (\n <BaseText\n fontSize={normalAmountSizes[type][size]}\n fontWeight={weight}\n fontFamily={numberFontFamily}\n color={amountValueColor}\n lineHeight={amountLineHeights[type][size]}\n >\n {amount.integer}\n {amount.decimal}\n {amount.fraction}\n {amount.compact}\n </BaseText>\n );\n};\n\ntype FormatAmountWithSuffixType = {\n suffix: AmountProps['suffix'];\n value: number;\n currency: AmountProps['currency'];\n};\n\n/**\n * Returns a parsed object based on the suffix passed in parameters\n * === Logic ===\n * value = 12500.45 \n * if suffix === 'decimals' => {\n \"integer\": \"12,500\",\n \"decimal\": \".\",\n \"fraction\": \"45\",\n \"compact\": \"K\",\n \"isPrefixSymbol\": false,\n \"rawParts\": [{\"type\": \"integer\",\"value\": \"12\"},{\"type\": \"group\",\"value\": \",\"},{\"type\": \"integer\",\"value\": \"500\"},{\"type\": \"decimal\",\"value\": \".\"},{\"type\": \"fraction\",\"value\": \"45\"}]\n}\n * @returns {AmountType}\n */\nexport const getAmountByParts = ({\n suffix,\n value,\n currency,\n}: FormatAmountWithSuffixType): AmountType => {\n try {\n switch (suffix) {\n case 'decimals': {\n const options = {\n intlOptions: {\n maximumFractionDigits: 2,\n minimumFractionDigits: 2,\n },\n currency,\n } as const;\n return pollyfilledFormatNumberByParts(value, options);\n }\n case 'humanize': {\n const options = {\n intlOptions: {\n notation: 'compact',\n maximumFractionDigits: 2,\n trailingZeroDisplay: 'stripIfInteger',\n },\n currency,\n } as const;\n return pollyfilledFormatNumberByParts(value, options);\n }\n\n default: {\n const options = {\n intlOptions: {\n maximumFractionDigits: 0,\n roundingMode: 'floor',\n },\n currency,\n } as const;\n return pollyfilledFormatNumberByParts(value, options);\n }\n }\n } catch (err: unknown) {\n return {\n integer: `${value}`,\n currency,\n };\n }\n};\n\nconst _Amount = (\n {\n value,\n suffix = 'decimals',\n type = 'body',\n size = 'medium',\n weight = 'regular',\n isAffixSubtle = true,\n isStrikethrough = false,\n color,\n currencyIndicator = 'currency-symbol',\n currency = 'INR',\n testID,\n ...rest\n }: AmountProps,\n ref: React.Ref<BladeElementRef>,\n): ReactElement => {\n if (__DEV__) {\n if (typeof value !== 'number') {\n throwBladeError({\n message: '`value` prop must be of type `number` for Amount.',\n moduleName: 'Amount',\n });\n }\n // @ts-expect-error neutral color should throw error\n if (color === 'neutral') {\n throwBladeError({\n message: '`neutral` color is not supported.',\n moduleName: 'Amount',\n });\n }\n\n const bodySizes = objectKeysWithType(normalAmountSizes.body);\n if ((type === 'body' || !type) && !bodySizes.includes(size)) {\n throwBladeError({\n message: `size=\"${size}\" is not allowed with type=\"body\"`,\n moduleName: 'Amount',\n });\n }\n\n const displaySizes = objectKeysWithType(normalAmountSizes.display);\n if (type === 'display' && !displaySizes.includes(size)) {\n throwBladeError({\n message: `size=\"${size}\" is not allowed with type=\"display\"`,\n moduleName: 'Amount',\n });\n }\n\n const headingSizes = objectKeysWithType(normalAmountSizes.heading);\n if (type === 'heading' && !headingSizes.includes(size)) {\n throwBladeError({\n message: `size=\"${size}\" is not allowed with type=\"heading\"`,\n moduleName: 'Amount',\n });\n }\n }\n\n const { amountValueColor } = getTextColorProps({\n color,\n });\n\n const renderedValue = getAmountByParts({ suffix, value, currency });\n const isPrefixSymbol = renderedValue.isPrefixSymbol ?? true;\n const currencySymbol = renderedValue.currency ?? currency;\n\n const currencyPosition = isPrefixSymbol ? 'left' : 'right';\n const currencySymbolOrCode = currencyIndicator === 'currency-symbol' ? currencySymbol : currency;\n\n const currencyFontSize = isAffixSubtle\n ? subtleFontSizes[type][size]\n : normalAmountSizes[type][size];\n const isReactNative = getPlatformType() === 'react-native';\n\n return (\n <BaseBox\n ref={ref as never}\n display={(isReactNative ? 'flex' : 'inline-flex') as never}\n flexDirection=\"row\"\n {...metaAttribute({ name: MetaConstants.Amount, testID })}\n {...getStyledProps(rest)}\n {...makeAnalyticsAttribute(rest)}\n >\n <BaseBox\n display={(isReactNative ? 'flex' : 'inline-flex') as never}\n alignItems=\"baseline\"\n flexDirection=\"row\"\n position=\"relative\"\n >\n {renderedValue.minusSign ? (\n <BaseText\n fontSize={normalAmountSizes[type][size]}\n fontWeight={weight}\n lineHeight={amountLineHeights[type][size]}\n color={amountValueColor}\n as={isReactNative ? undefined : 'span'}\n marginX=\"spacing.2\"\n >\n {renderedValue.minusSign}\n </BaseText>\n ) : null}\n {currencyPosition === 'left' && (\n <BaseText\n marginRight=\"spacing.1\"\n fontWeight={weight}\n fontSize={currencyFontSize}\n color={amountValueColor}\n as={isReactNative ? undefined : 'span'}\n opacity={isAffixSubtle ? opacity[800] : 1}\n >\n {currencySymbolOrCode}\n </BaseText>\n )}\n <AmountValue\n amount={renderedValue}\n amountValueColor={amountValueColor}\n type={type}\n weight={weight}\n size={size}\n isAffixSubtle={isAffixSubtle}\n suffix={suffix}\n currency={currency}\n />\n {currencyPosition === 'right' && (\n <BaseText\n marginLeft=\"spacing.1\"\n fontWeight={weight}\n fontSize={currencyFontSize}\n color={amountValueColor}\n as={isReactNative ? undefined : 'span'}\n opacity={isAffixSubtle ? opacity[800] : 1}\n >\n {currencySymbolOrCode}\n </BaseText>\n )}\n {isStrikethrough && (\n // eslint-disable-next-line @typescript-eslint/prefer-ts-expect-error\n // @ts-ignore: the borderBottomColor error below is thrown here as well\n <BaseBox\n // eslint-disable-next-line @typescript-eslint/prefer-ts-expect-error\n // @ts-ignore- intentionally setting the border color to the color prop for this hacky strikethrough\n borderBottomColor={amountValueColor}\n borderBottomWidth={type === 'body' ? 'thin' : 'thicker'}\n borderBottomStyle=\"solid\"\n position=\"absolute\"\n width=\"100%\"\n top=\"50%\"\n />\n )}\n </BaseBox>\n </BaseBox>\n );\n};\n\nconst Amount = assignWithoutSideEffects(React.forwardRef(_Amount), {\n displayName: 'Amount',\n componentId: 'Amount',\n});\n\nexport type { AmountProps };\nexport { Amount };\n"],"names":["stripTrailingZerosFromParts","parts","decimalPart","rawParts","filter","_ref","type","map","_ref2","value","join","hasFraction","some","_ref3","test","decimal","fraction","_ref4","pollyfilledFormatNumberByParts","options","_options$intlOptions","formatNumberByParts","intlOptions","trailingZeroDisplay","getTextColorProps","_ref5","color","props","amountValueColor","AmountValue","_ref6","amount","_ref6$size","size","_ref6$type","_ref6$weight","weight","isAffixSubtle","suffix","isReactNative","getPlatformType","affixFontSize","subtleFontSizes","normalAmountSizes","numberFontFamily","AmountWrapper","Text","React","Fragment","_jsxs","children","_jsx","BaseText","fontSize","fontWeight","lineHeight","amountLineHeights","fontFamily","as","undefined","integer","opacity","compact","getAmountByParts","_ref7","currency","maximumFractionDigits","minimumFractionDigits","notation","roundingMode","err","concat","_Amount","_ref8","ref","_renderedValue$isPref","_renderedValue$curren","_ref8$suffix","_ref8$type","_ref8$size","_ref8$weight","_ref8$isAffixSubtle","_ref8$isStrikethrough","isStrikethrough","_ref8$currencyIndicat","currencyIndicator","_ref8$currency","testID","rest","_objectWithoutProperties","_excluded","throwBladeError","message","moduleName","bodySizes","objectKeysWithType","body","includes","displaySizes","display","headingSizes","heading","_getTextColorProps","renderedValue","isPrefixSymbol","currencySymbol","currencyPosition","currencySymbolOrCode","currencyFontSize","BaseBox","_objectSpread","flexDirection","metaAttribute","name","MetaConstants","Amount","getStyledProps","makeAnalyticsAttribute","alignItems","position","minusSign","marginX","marginRight","marginLeft","borderBottomColor","borderBottomWidth","borderBottomStyle","width","top","assignWithoutSideEffects","forwardRef","displayName","componentId"],"mappings":"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"}
@@ -0,0 +1,37 @@
1
+ import React__default from 'react';
2
+ import { useAnimation } from 'framer-motion';
3
+ import { AnimateInteractionsContext } from './AnimateInteractionsProvider.js';
4
+ import { useFocusWithin } from './useFocusWithin.js';
5
+ import '../BaseMotion/index.js';
6
+ import { jsx } from 'react/jsx-runtime';
7
+ import { BaseMotionEnhancerBox } from '../BaseMotion/BaseMotion.js';
8
+
9
+ var AnimateInteractions = function AnimateInteractions(_ref) {
10
+ var children = _ref.children,
11
+ _ref$motionTriggers = _ref.motionTriggers,
12
+ motionTriggers = _ref$motionTriggers === void 0 ? ['hover'] : _ref$motionTriggers;
13
+ var baseMotionRef = React__default.useRef(null);
14
+ var controls = useAnimation();
15
+ useFocusWithin(baseMotionRef, {
16
+ onFocusWithin: function onFocusWithin() {
17
+ void controls.start('animate');
18
+ },
19
+ onBlurWithin: function onBlurWithin() {
20
+ void controls.start('exit');
21
+ }
22
+ });
23
+ return /*#__PURE__*/jsx(AnimateInteractionsContext.Provider, {
24
+ value: {
25
+ isInsideAnimateInteractionsContainer: true
26
+ },
27
+ children: /*#__PURE__*/jsx(BaseMotionEnhancerBox, {
28
+ ref: baseMotionRef,
29
+ motionTriggers: motionTriggers,
30
+ animate: controls,
31
+ children: children
32
+ })
33
+ });
34
+ };
35
+
36
+ export { AnimateInteractions };
37
+ //# sourceMappingURL=AnimateInteractions.web.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AnimateInteractions.web.js","sources":["../../../../../../src/components/AnimateInteractions/AnimateInteractions.web.tsx"],"sourcesContent":["import React from 'react';\nimport { useAnimation } from 'framer-motion';\nimport { AnimateInteractionsContext } from './AnimateInteractionsProvider';\nimport { useFocusWithin } from './useFocusWithin';\nimport type { AnimateInteractionsProps } from './types';\nimport { BaseMotionEnhancerBox } from '~components/BaseMotion';\n\n/**\n * ## AnimateInteractions\n *\n * AnimateInteractions is the utility preset that we offer to help you animate children when the parent is interacted.\n *\n * This is in a way equivalent to following CSS-\n * ```css\n * .parent:hover .child { }\n * ```\n *\n * ### Usage\n *\n * ```jsx\n * <AnimateInteractions\n * motionTriggers={['hover']}\n * > // <-- When this is hovered\n * <Box>\n * <Move\n * motionTriggers={['on-animate-interactions']}\n * > // <-- this animates in\n * <Box />\n * </Move>\n * </Box>\n * </AnimateInteractions>\n * ```\n */\nconst AnimateInteractions = ({\n children,\n motionTriggers = ['hover'],\n}: AnimateInteractionsProps): React.ReactElement => {\n const baseMotionRef = React.useRef<HTMLDivElement | null>(null);\n const controls = useAnimation();\n\n useFocusWithin(baseMotionRef, {\n onFocusWithin: () => {\n void controls.start('animate');\n },\n onBlurWithin: () => {\n void controls.start('exit');\n },\n });\n\n return (\n <AnimateInteractionsContext.Provider value={{ isInsideAnimateInteractionsContainer: true }}>\n <BaseMotionEnhancerBox ref={baseMotionRef} motionTriggers={motionTriggers} animate={controls}>\n {children}\n </BaseMotionEnhancerBox>\n </AnimateInteractionsContext.Provider>\n );\n};\n\nexport { AnimateInteractions };\n"],"names":["AnimateInteractions","_ref","children","_ref$motionTriggers","motionTriggers","baseMotionRef","React","useRef","controls","useAnimation","useFocusWithin","onFocusWithin","start","onBlurWithin","_jsx","AnimateInteractionsContext","Provider","value","isInsideAnimateInteractionsContainer","BaseMotionEnhancerBox","ref","animate"],"mappings":";;;;;;;;AAiCA,IAAMA,mBAAmB,GAAG,SAAtBA,mBAAmBA,CAAAC,IAAA,EAG2B;AAAA,EAAA,IAFlDC,QAAQ,GAAAD,IAAA,CAARC,QAAQ;IAAAC,mBAAA,GAAAF,IAAA,CACRG,cAAc;AAAdA,IAAAA,cAAc,GAAAD,mBAAA,KAAA,KAAA,CAAA,GAAG,CAAC,OAAO,CAAC,GAAAA,mBAAA,CAAA;AAE1B,EAAA,IAAME,aAAa,GAAGC,cAAK,CAACC,MAAM,CAAwB,IAAI,CAAC,CAAA;AAC/D,EAAA,IAAMC,QAAQ,GAAGC,YAAY,EAAE,CAAA;EAE/BC,cAAc,CAACL,aAAa,EAAE;IAC5BM,aAAa,EAAE,SAAAA,aAAAA,GAAM;AACnB,MAAA,KAAKH,QAAQ,CAACI,KAAK,CAAC,SAAS,CAAC,CAAA;KAC/B;IACDC,YAAY,EAAE,SAAAA,YAAAA,GAAM;AAClB,MAAA,KAAKL,QAAQ,CAACI,KAAK,CAAC,MAAM,CAAC,CAAA;AAC7B,KAAA;AACF,GAAC,CAAC,CAAA;AAEF,EAAA,oBACEE,GAAA,CAACC,0BAA0B,CAACC,QAAQ,EAAA;AAACC,IAAAA,KAAK,EAAE;AAAEC,MAAAA,oCAAoC,EAAE,IAAA;KAAO;IAAAhB,QAAA,eACzFY,GAAA,CAACK,qBAAqB,EAAA;AAACC,MAAAA,GAAG,EAAEf,aAAc;AAACD,MAAAA,cAAc,EAAEA,cAAe;AAACiB,MAAAA,OAAO,EAAEb,QAAS;AAAAN,MAAAA,QAAA,EAC1FA,QAAAA;KACoB,CAAA;AAAC,GACW,CAAC,CAAA;AAE1C;;;;"}
@@ -0,0 +1,12 @@
1
+ import React__default from 'react';
2
+
3
+ var AnimateInteractionsContext = /*#__PURE__*/React__default.createContext({
4
+ isInsideAnimateInteractionsContainer: false
5
+ });
6
+ var useAnimateInteractions = function useAnimateInteractions() {
7
+ var animateInteractionsContextValue = React__default.useContext(AnimateInteractionsContext);
8
+ return animateInteractionsContextValue;
9
+ };
10
+
11
+ export { AnimateInteractionsContext, useAnimateInteractions };
12
+ //# sourceMappingURL=AnimateInteractionsProvider.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AnimateInteractionsProvider.js","sources":["../../../../../../src/components/AnimateInteractions/AnimateInteractionsProvider.tsx"],"sourcesContent":["import React from 'react';\n\ntype AnimateInteractionsContextType = {\n isInsideAnimateInteractionsContainer: boolean;\n};\n\nconst AnimateInteractionsContext = React.createContext<AnimateInteractionsContextType>({\n isInsideAnimateInteractionsContainer: false,\n});\n\nconst useAnimateInteractions = (): AnimateInteractionsContextType => {\n const animateInteractionsContextValue = React.useContext(AnimateInteractionsContext);\n return animateInteractionsContextValue;\n};\n\nexport { useAnimateInteractions, AnimateInteractionsContext };\n"],"names":["AnimateInteractionsContext","React","createContext","isInsideAnimateInteractionsContainer","useAnimateInteractions","animateInteractionsContextValue","useContext"],"mappings":";;AAMA,IAAMA,0BAA0B,gBAAGC,cAAK,CAACC,aAAa,CAAiC;AACrFC,EAAAA,oCAAoC,EAAE,KAAA;AACxC,CAAC,EAAC;AAEF,IAAMC,sBAAsB,GAAG,SAAzBA,sBAAsBA,GAAyC;AACnE,EAAA,IAAMC,+BAA+B,GAAGJ,cAAK,CAACK,UAAU,CAACN,0BAA0B,CAAC,CAAA;AACpF,EAAA,OAAOK,+BAA+B,CAAA;AACxC;;;;"}
@@ -0,0 +1,2 @@
1
+ export { AnimateInteractions } from './AnimateInteractions.web.js';
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
@@ -0,0 +1,30 @@
1
+ import { useEffect } from 'react';
2
+
3
+ var useFocusWithin = function useFocusWithin(ref, _ref) {
4
+ var onFocusWithin = _ref.onFocusWithin,
5
+ onBlurWithin = _ref.onBlurWithin;
6
+ useEffect(function () {
7
+ var element = ref.current;
8
+ if (!element) return;
9
+ var handleFocusIn = function handleFocusIn() {
10
+ onFocusWithin === null || onFocusWithin === void 0 ? void 0 : onFocusWithin();
11
+ };
12
+ var handleFocusOut = function handleFocusOut(event) {
13
+ // Ensure that focus is not still within the container
14
+ if (element && !element.contains(event.relatedTarget)) {
15
+ onBlurWithin === null || onBlurWithin === void 0 ? void 0 : onBlurWithin();
16
+ }
17
+ };
18
+ element.addEventListener('focusin', handleFocusIn);
19
+ element.addEventListener('focusout', handleFocusOut);
20
+
21
+ // eslint-disable-next-line consistent-return
22
+ return function () {
23
+ element.removeEventListener('focusin', handleFocusIn);
24
+ element.removeEventListener('focusout', handleFocusOut);
25
+ };
26
+ }, [ref, onFocusWithin, onBlurWithin]);
27
+ };
28
+
29
+ export { useFocusWithin };
30
+ //# sourceMappingURL=useFocusWithin.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useFocusWithin.js","sources":["../../../../../../src/components/AnimateInteractions/useFocusWithin.ts"],"sourcesContent":["import { useEffect } from 'react';\n\ntype FocusWithinHandlers = {\n onFocusWithin?: () => void;\n onBlurWithin?: () => void;\n};\n\nexport const useFocusWithin = <T extends HTMLElement>(\n ref: React.RefObject<T>,\n { onFocusWithin, onBlurWithin }: FocusWithinHandlers,\n): void => {\n useEffect(() => {\n const element = ref.current;\n if (!element) return;\n\n const handleFocusIn = (): void => {\n onFocusWithin?.();\n };\n\n const handleFocusOut = (event: FocusEvent): void => {\n // Ensure that focus is not still within the container\n if (element && !element.contains(event.relatedTarget as Node)) {\n onBlurWithin?.();\n }\n };\n\n element.addEventListener('focusin', handleFocusIn);\n element.addEventListener('focusout', handleFocusOut);\n\n // eslint-disable-next-line consistent-return\n return () => {\n element.removeEventListener('focusin', handleFocusIn);\n element.removeEventListener('focusout', handleFocusOut);\n };\n }, [ref, onFocusWithin, onBlurWithin]);\n};\n"],"names":["useFocusWithin","ref","_ref","onFocusWithin","onBlurWithin","useEffect","element","current","handleFocusIn","handleFocusOut","event","contains","relatedTarget","addEventListener","removeEventListener"],"mappings":";;AAOO,IAAMA,cAAc,GAAG,SAAjBA,cAAcA,CACzBC,GAAuB,EAAAC,IAAA,EAEd;AAAA,EAAA,IADPC,aAAa,GAAAD,IAAA,CAAbC,aAAa;IAAEC,YAAY,GAAAF,IAAA,CAAZE,YAAY,CAAA;AAE7BC,EAAAA,SAAS,CAAC,YAAM;AACd,IAAA,IAAMC,OAAO,GAAGL,GAAG,CAACM,OAAO,CAAA;IAC3B,IAAI,CAACD,OAAO,EAAE,OAAA;AAEd,IAAA,IAAME,aAAa,GAAG,SAAhBA,aAAaA,GAAe;AAChCL,MAAAA,aAAa,KAAbA,IAAAA,IAAAA,aAAa,KAAbA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,aAAa,EAAI,CAAA;KAClB,CAAA;AAED,IAAA,IAAMM,cAAc,GAAG,SAAjBA,cAAcA,CAAIC,KAAiB,EAAW;AAClD;MACA,IAAIJ,OAAO,IAAI,CAACA,OAAO,CAACK,QAAQ,CAACD,KAAK,CAACE,aAAqB,CAAC,EAAE;AAC7DR,QAAAA,YAAY,KAAZA,IAAAA,IAAAA,YAAY,KAAZA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,YAAY,EAAI,CAAA;AAClB,OAAA;KACD,CAAA;AAEDE,IAAAA,OAAO,CAACO,gBAAgB,CAAC,SAAS,EAAEL,aAAa,CAAC,CAAA;AAClDF,IAAAA,OAAO,CAACO,gBAAgB,CAAC,UAAU,EAAEJ,cAAc,CAAC,CAAA;;AAEpD;AACA,IAAA,OAAO,YAAM;AACXH,MAAAA,OAAO,CAACQ,mBAAmB,CAAC,SAAS,EAAEN,aAAa,CAAC,CAAA;AACrDF,MAAAA,OAAO,CAACQ,mBAAmB,CAAC,UAAU,EAAEL,cAAc,CAAC,CAAA;KACxD,CAAA;GACF,EAAE,CAACR,GAAG,EAAEE,aAAa,EAAEC,YAAY,CAAC,CAAC,CAAA;AACxC;;;;"}
@@ -1,5 +1,6 @@
1
1
  import _defineProperty from '@babel/runtime/helpers/defineProperty';
2
2
  import _objectWithoutProperties from '@babel/runtime/helpers/objectWithoutProperties';
3
+ import React__default from 'react';
3
4
  import { StyledBadge } from './StyledBadge.web.js';
4
5
  import { badgeHeight, horizontalPadding, iconPadding, iconSize } from './badgeTokens.js';
5
6
  import '../Box/BaseBox/index.js';
@@ -48,7 +49,7 @@ var getColorProps = function getColorProps(_ref) {
48
49
  }
49
50
  return props;
50
51
  };
51
- var _Badge = function _Badge(_ref2) {
52
+ var _Badge = function _Badge(_ref2, ref) {
52
53
  var children = _ref2.children,
53
54
  _ref2$emphasis = _ref2.emphasis,
54
55
  emphasis = _ref2$emphasis === void 0 ? 'subtle' : _ref2$emphasis,
@@ -90,6 +91,7 @@ var _Badge = function _Badge(_ref2) {
90
91
  }
91
92
  };
92
93
  return /*#__PURE__*/jsx(BaseBox, _objectSpread(_objectSpread(_objectSpread(_objectSpread({
94
+ ref: ref,
93
95
  display: isReactNative() ? 'flex' : 'inline-flex'
94
96
  }, metaAttribute({
95
97
  name: MetaConstants.Badge,
@@ -124,7 +126,7 @@ var _Badge = function _Badge(_ref2) {
124
126
  })
125
127
  }));
126
128
  };
127
- var Badge = /*#__PURE__*/assignWithoutSideEffects(_Badge, {
129
+ var Badge = /*#__PURE__*/assignWithoutSideEffects( /*#__PURE__*/React__default.forwardRef(_Badge), {
128
130
  displayName: 'Badge',
129
131
  componentId: 'Badge'
130
132
  });
@@ -1 +1 @@
1
- {"version":3,"file":"Badge.js","sources":["../../../../../../src/components/Badge/Badge.tsx"],"sourcesContent":["import type { ReactElement } from 'react';\nimport type { StyledBadgeProps } from './types';\nimport { StyledBadge } from './StyledBadge';\nimport { iconPadding, iconSize, horizontalPadding, badgeHeight } from './badgeTokens';\nimport type { IconComponent, IconProps } from '~components/Icons';\nimport BaseBox from '~components/Box/BaseBox';\nimport type { FeedbackColors, SubtleOrIntense } from '~tokens/theme/theme';\nimport type { BaseTextProps } from '~components/Typography/BaseText/types';\nimport { Text } from '~components/Typography';\nimport { metaAttribute, MetaConstants } from '~utils/metaAttribute';\nimport { getStyledProps } from '~components/Box/styledProps';\nimport type { StyledPropsBlade } from '~components/Box/styledProps';\nimport type { DataAnalyticsAttribute, StringChildrenType, TestID } from '~utils/types';\nimport { getStringFromReactText } from '~src/utils/getStringChildren';\nimport { assignWithoutSideEffects } from '~utils/assignWithoutSideEffects';\nimport { isReactNative, makeSize } from '~utils';\nimport { throwBladeError } from '~utils/logger';\nimport { makeAnalyticsAttribute } from '~utils/makeAnalyticsAttribute';\n\ntype BadgeProps = {\n /**\n * Sets the label for the badge.\n *\n */\n children: StringChildrenType;\n /**\n * Sets the color of the badge.\n *\n * @default 'neutral'\n */\n color?: FeedbackColors | 'primary';\n /**\n * Sets the contrast of the badge.\n *\n * @default 'subtle'\n */\n emphasis?: SubtleOrIntense;\n /**\n * Sets the size of the badge.\n *\n * @default 'medium'\n */\n size?: 'small' | 'medium' | 'large';\n /**\n * Icon to be displayed in the badge.\n * Accepts a component of type `IconComponent` from Blade.\n *\n */\n icon?: IconComponent;\n} & TestID &\n StyledPropsBlade &\n DataAnalyticsAttribute;\n\ntype ColorProps = {\n iconColor: IconProps['color'];\n textColor: BaseTextProps['color'];\n backgroundColor: StyledBadgeProps['backgroundColor'];\n};\n\nconst getColorProps = ({\n color,\n emphasis,\n}: {\n color: NonNullable<BadgeProps['color']>;\n emphasis: NonNullable<BadgeProps['emphasis']>;\n}): ColorProps => {\n const props: ColorProps = {\n iconColor: 'feedback.icon.neutral.intense',\n textColor: 'feedback.text.neutral.intense',\n backgroundColor: 'feedback.background.neutral.subtle',\n };\n\n if (color === 'primary') {\n // primary color badge\n props.textColor =\n emphasis === 'intense' ? `surface.text.staticWhite.normal` : `surface.text.primary.normal`;\n props.iconColor =\n emphasis === 'intense' ? `surface.icon.staticWhite.normal` : `surface.icon.primary.normal`;\n props.backgroundColor = `surface.background.primary.${emphasis}`;\n } else {\n // feedback colors badge\n props.textColor =\n emphasis === 'intense' ? `surface.text.staticWhite.normal` : `feedback.text.${color}.intense`;\n props.iconColor =\n emphasis === 'intense' ? `surface.icon.staticWhite.normal` : `feedback.icon.${color}.intense`;\n props.backgroundColor = `feedback.background.${color}.${emphasis}`;\n }\n\n return props;\n};\n\nconst _Badge = ({\n children,\n emphasis = 'subtle',\n icon: Icon,\n size = 'medium',\n color = 'neutral',\n testID,\n ...props\n}: BadgeProps): ReactElement => {\n const childrenString = getStringFromReactText(children);\n if (__DEV__) {\n if (!childrenString?.trim()) {\n throwBladeError({\n message: 'Text as children is required for Badge.',\n moduleName: 'Badge',\n });\n }\n }\n\n const { backgroundColor, iconColor, textColor } = getColorProps({\n color,\n emphasis,\n });\n\n const badgeTextSizes = {\n small: {\n variant: 'body',\n size: 'xsmall',\n },\n medium: {\n variant: 'body',\n size: 'small',\n },\n large: {\n variant: 'body',\n size: 'small',\n },\n } as const;\n\n return (\n <BaseBox\n display={(isReactNative() ? 'flex' : 'inline-flex') as never}\n {...metaAttribute({ name: MetaConstants.Badge, testID })}\n {...getStyledProps(props)}\n {...makeAnalyticsAttribute(props)}\n >\n <StyledBadge\n height={makeSize(badgeHeight[size])}\n backgroundColor={backgroundColor}\n size={size}\n textAlign={'left' as never}\n >\n <BaseBox\n paddingX={horizontalPadding[size]}\n display=\"flex\"\n flexDirection=\"row\"\n justifyContent=\"center\"\n alignItems=\"center\"\n overflow=\"hidden\"\n >\n {Icon ? (\n <BaseBox paddingRight={Boolean(Icon) ? iconPadding[size] : 'spacing.0'} display=\"flex\">\n <Icon color={iconColor} size={iconSize[size]} />\n </BaseBox>\n ) : null}\n <Text {...badgeTextSizes[size]} weight=\"medium\" truncateAfterLines={1} color={textColor}>\n {children}\n </Text>\n </BaseBox>\n </StyledBadge>\n </BaseBox>\n );\n};\n\nconst Badge = assignWithoutSideEffects(_Badge, {\n displayName: 'Badge',\n componentId: 'Badge',\n});\n\nexport type { BadgeProps };\nexport { Badge };\n"],"names":["getColorProps","_ref","color","emphasis","props","iconColor","textColor","backgroundColor","concat","_Badge","_ref2","children","_ref2$emphasis","Icon","icon","_ref2$size","size","_ref2$color","testID","_objectWithoutProperties","_excluded","childrenString","getStringFromReactText","trim","throwBladeError","message","moduleName","_getColorProps","badgeTextSizes","small","variant","medium","large","_jsx","BaseBox","_objectSpread","display","isReactNative","metaAttribute","name","MetaConstants","Badge","getStyledProps","makeAnalyticsAttribute","StyledBadge","height","makeSize","badgeHeight","textAlign","_jsxs","paddingX","horizontalPadding","flexDirection","justifyContent","alignItems","overflow","paddingRight","Boolean","iconPadding","iconSize","Text","weight","truncateAfterLines","assignWithoutSideEffects","displayName","componentId"],"mappings":"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"}
1
+ {"version":3,"file":"Badge.js","sources":["../../../../../../src/components/Badge/Badge.tsx"],"sourcesContent":["import React from 'react';\nimport type { ReactElement } from 'react';\nimport type { StyledBadgeProps } from './types';\nimport { StyledBadge } from './StyledBadge';\nimport { iconPadding, iconSize, horizontalPadding, badgeHeight } from './badgeTokens';\nimport type { IconComponent, IconProps } from '~components/Icons';\nimport BaseBox from '~components/Box/BaseBox';\nimport type { FeedbackColors, SubtleOrIntense } from '~tokens/theme/theme';\nimport type { BaseTextProps } from '~components/Typography/BaseText/types';\nimport { Text } from '~components/Typography';\nimport { metaAttribute, MetaConstants } from '~utils/metaAttribute';\nimport { getStyledProps } from '~components/Box/styledProps';\nimport type { StyledPropsBlade } from '~components/Box/styledProps';\nimport type {\n DataAnalyticsAttribute,\n BladeElementRef,\n StringChildrenType,\n TestID,\n} from '~utils/types';\nimport { getStringFromReactText } from '~src/utils/getStringChildren';\nimport { assignWithoutSideEffects } from '~utils/assignWithoutSideEffects';\nimport { isReactNative, makeSize } from '~utils';\nimport { throwBladeError } from '~utils/logger';\nimport { makeAnalyticsAttribute } from '~utils/makeAnalyticsAttribute';\n\ntype BadgeProps = {\n /**\n * Sets the label for the badge.\n *\n */\n children: StringChildrenType;\n /**\n * Sets the color of the badge.\n *\n * @default 'neutral'\n */\n color?: FeedbackColors | 'primary';\n /**\n * Sets the contrast of the badge.\n *\n * @default 'subtle'\n */\n emphasis?: SubtleOrIntense;\n /**\n * Sets the size of the badge.\n *\n * @default 'medium'\n */\n size?: 'small' | 'medium' | 'large';\n /**\n * Icon to be displayed in the badge.\n * Accepts a component of type `IconComponent` from Blade.\n *\n */\n icon?: IconComponent;\n} & TestID &\n StyledPropsBlade &\n DataAnalyticsAttribute;\n\ntype ColorProps = {\n iconColor: IconProps['color'];\n textColor: BaseTextProps['color'];\n backgroundColor: StyledBadgeProps['backgroundColor'];\n};\n\nconst getColorProps = ({\n color,\n emphasis,\n}: {\n color: NonNullable<BadgeProps['color']>;\n emphasis: NonNullable<BadgeProps['emphasis']>;\n}): ColorProps => {\n const props: ColorProps = {\n iconColor: 'feedback.icon.neutral.intense',\n textColor: 'feedback.text.neutral.intense',\n backgroundColor: 'feedback.background.neutral.subtle',\n };\n\n if (color === 'primary') {\n // primary color badge\n props.textColor =\n emphasis === 'intense' ? `surface.text.staticWhite.normal` : `surface.text.primary.normal`;\n props.iconColor =\n emphasis === 'intense' ? `surface.icon.staticWhite.normal` : `surface.icon.primary.normal`;\n props.backgroundColor = `surface.background.primary.${emphasis}`;\n } else {\n // feedback colors badge\n props.textColor =\n emphasis === 'intense' ? `surface.text.staticWhite.normal` : `feedback.text.${color}.intense`;\n props.iconColor =\n emphasis === 'intense' ? `surface.icon.staticWhite.normal` : `feedback.icon.${color}.intense`;\n props.backgroundColor = `feedback.background.${color}.${emphasis}`;\n }\n\n return props;\n};\n\nconst _Badge = (\n {\n children,\n emphasis = 'subtle',\n icon: Icon,\n size = 'medium',\n color = 'neutral',\n testID,\n ...props\n }: BadgeProps,\n ref: React.Ref<BladeElementRef>,\n): ReactElement => {\n const childrenString = getStringFromReactText(children);\n if (__DEV__) {\n if (!childrenString?.trim()) {\n throwBladeError({\n message: 'Text as children is required for Badge.',\n moduleName: 'Badge',\n });\n }\n }\n\n const { backgroundColor, iconColor, textColor } = getColorProps({\n color,\n emphasis,\n });\n\n const badgeTextSizes = {\n small: {\n variant: 'body',\n size: 'xsmall',\n },\n medium: {\n variant: 'body',\n size: 'small',\n },\n large: {\n variant: 'body',\n size: 'small',\n },\n } as const;\n\n return (\n <BaseBox\n ref={ref as never}\n display={(isReactNative() ? 'flex' : 'inline-flex') as never}\n {...metaAttribute({ name: MetaConstants.Badge, testID })}\n {...getStyledProps(props)}\n {...makeAnalyticsAttribute(props)}\n >\n <StyledBadge\n height={makeSize(badgeHeight[size])}\n backgroundColor={backgroundColor}\n size={size}\n textAlign={'left' as never}\n >\n <BaseBox\n paddingX={horizontalPadding[size]}\n display=\"flex\"\n flexDirection=\"row\"\n justifyContent=\"center\"\n alignItems=\"center\"\n overflow=\"hidden\"\n >\n {Icon ? (\n <BaseBox paddingRight={Boolean(Icon) ? iconPadding[size] : 'spacing.0'} display=\"flex\">\n <Icon color={iconColor} size={iconSize[size]} />\n </BaseBox>\n ) : null}\n <Text {...badgeTextSizes[size]} weight=\"medium\" truncateAfterLines={1} color={textColor}>\n {children}\n </Text>\n </BaseBox>\n </StyledBadge>\n </BaseBox>\n );\n};\n\nconst Badge = assignWithoutSideEffects(React.forwardRef(_Badge), {\n displayName: 'Badge',\n componentId: 'Badge',\n});\n\nexport type { BadgeProps };\nexport { Badge };\n"],"names":["getColorProps","_ref","color","emphasis","props","iconColor","textColor","backgroundColor","concat","_Badge","_ref2","ref","children","_ref2$emphasis","Icon","icon","_ref2$size","size","_ref2$color","testID","_objectWithoutProperties","_excluded","childrenString","getStringFromReactText","trim","throwBladeError","message","moduleName","_getColorProps","badgeTextSizes","small","variant","medium","large","_jsx","BaseBox","_objectSpread","display","isReactNative","metaAttribute","name","MetaConstants","Badge","getStyledProps","makeAnalyticsAttribute","StyledBadge","height","makeSize","badgeHeight","textAlign","_jsxs","paddingX","horizontalPadding","flexDirection","justifyContent","alignItems","overflow","paddingRight","Boolean","iconPadding","iconSize","Text","weight","truncateAfterLines","assignWithoutSideEffects","React","forwardRef","displayName","componentId"],"mappings":"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"}